$value) { if (preg_match('/^(pgs|grs|ord)_([a-z]+)$/', $key, $matches)) { if (in_array($matches[2], $pg_allowed_modes)) { $opt_name = 'pg_'.$matches[1]; switch ($matches[1]) { case 'ord' : { if (!empty($value)) { ${$opt_name}[$matches[2]] = $value; } break; } default : { $nb = (integer)$value; if ($nb > 0) { ${$opt_name}[$matches[2]] = $nb; } break; } } } } elseif (in_array($key, $pg_base_options)) { $opt_name = 'pg_'.$key; switch ($key) { case 'nav_class' : { $classname = trim(strtolower($value)); if (!empty($classname) && class_exists($classname)) { $$opt_name = $classname; } break; } case 'pagesize' : case 'groupsize' : { $nb = (integer)$value; if ($nb > 0) { $$opt_name = $nb; } break; } case 'modes' : { $pg_modes = explode(';',$value); break; } } } } } ?>