$content = $content[0];
$post[$name] = $content;
}
+ //select boxes
+ $selectboxes = explode("<select ", $html);
+ for($j = 1; $j < count($selectboxes); $j++) {
+ $exp = explode(">", $selectboxes[$j], 2);
+ $name = explode("name=\"", $exp[0]);
+ $name = explode("\"", $name[1]);
+ $name = $name[0];
+ $content = explode("</select", $exp[1]);
+ $content = $content[0];
+ preg_match_all("<option ([^\>]*)>", $content, $matches);
+ foreach($matches[0] as $input) {
+ $fields = array(0 => "");
+ $esc = false; $str = false;
+ $fieldid = 0;
+ for($i = 0; $i < strlen($input); $i++) {
+ if($esc) {
+ $esc = false;
+ $fields[$fieldid] .= $input[$i];
+ continue;
+ }
+ if($input[$i] == "\\") {
+ $esc = true;
+ }
+ if($input[$i] == "\"") {
+ $str = !$str;
+ continue;
+ }
+ if($input[$i] == " " && !$str) {
+ $fields[++$fieldid] = "";
+ continue;
+ }
+ $fields[$fieldid] .= $input[$i];
+ }
+ $cfields = array();
+ foreach($fields as $field) {
+ $fieldexp = explode("=", $field, 2);
+ if(count($fieldexp) != 2) continue;
+ $cfields[$fieldexp[0]] = $fieldexp[1];
+ }
+ if(!$post[$name] || $cfields['selected']) {
+ $post[$name] = $cfields['value'];
+ }
+ }
+ }
}
public function editZNC($username, $password = NULL, $new_servers = NULL, $add_modules = NULL, $del_modules = NULL, $others = NULL) {