Ejemplo n.º 1
0
 public static function ChooseNetwork($network, $app)
 {
     $app->response->headers->set('Content-Type', 'application/json');
     // l'url du html à récupérer
     $html = file_get_contents($app->rootUri . "network/edit/" . $network);
     // on créé un élément DOM
     $dom = new \DOMDocument();
     // on rempli le DOM avec le HTML précèdemment récupéré
     libxml_use_internal_errors(true);
     $dom->loadHTML($html);
     libxml_clear_errors();
     // on créé un objet Xpath avec le DOM, Xpath permet de jouer plus facilement avec les nodes
     $xpath = new \DOMXpath($dom);
     function getFormValue($query, $xpath)
     {
         $objDom = $xpath->query($query);
         $i = 0;
         $tmp = null;
         while ($i < $objDom->length) {
             $param = explode(":", trim($objDom[$i]->textContent));
             $tmp[$i]["name"] = $param[0];
             $tmp[$i]["value"] = $param[1];
             $i++;
         }
         return $tmp;
     }
     function getSelectValue($query, $xpath)
     {
         $objDom = $xpath->query($query);
         $i = 0;
         $tmp = null;
         while ($i < $objDom->length) {
             if ($objDom->length > 1) {
                 $tmp[$i] = $objDom[$i]->textContent;
             } else {
                 $tmp = $objDom[$i]->textContent;
             }
             $i++;
         }
         return $tmp;
     }
     //Network interfaces
     $tab["NetworkInterface"] = getFormValue('//table[@id="nic-details"]/tbody/*', $xpath);
     //Config interfaces
     $tab["ConfigInterfaces"] = getSelectValue('//select[@id="dhcp"]/*', $xpath);
     $tab["ConfigInterfaces"]["select"] = getSelectValue('//select[@id="dhcp"]/option[@selected=\'selected\']', $xpath);
     $app->response->setStatus(200);
     echo json_encode(array("HTTP" => 200, "message" => $tab));
 }
$t = nuRunQuery("SELECT * FROM zzsys_object WHERE sob_zzsys_form_id = '{$f}'");
$dq = '"';
print "<html>\n";
print "<head>\n";
print "<meta http-equiv='Content-Type' content='text/html;'/>\n";
print "<title></title>\n";
print "<script type='text/javascript' src='common.js' language='javascript'></script>\n";
print "<!-- Form Functions -->\n";
print "<script type='text/javascript'>\n";
print "/* <![CDATA[ */\n\n";
print "function checkDuplicate(){\n";
while ($r = db_fetch_array($t)) {
    if ($r['sob_' . $r['sob_all_type'] . '_no_duplicates'] == '1') {
        // eg 'sob_dropdown_no_duplicates'
        $field = $r['sob_all_name'];
        $value = getFormValue($sessionID, $r['sob_all_name']);
        if (isDuplicate($sessionID, $form, $recordID, $field, $value[0])) {
            $T = nuRunQuery("SELECT sob_all_title FROM zzsys_object WHERE zzsys_object_id = '" . $r['zzsys_object_id'] . "'");
            $R = db_fetch_object($T);
            $S = "'there is already a record with a {$R->sob_all_title} of {$dq}" . str_replace('"', '', $value[0]) . "{$dq}'";
            print "   alert({$S});\n";
            print "   return;\n";
        }
    }
}
print "   parent.frames['main'].document.forms[0]['beenedited'].value = '0';\n";
print "   parent.frames['main'].document.forms[0].action = 'formupdate.php?x=1&r={$recordID}&f={$formID}';\n";
print "   parent.frames['main'].document.forms[0].submit();\n";
print "}\n";
print "/* ]]> */ ";
print "</script>";
$dq = '"';
print "<html>\n";
print "<head>\n";
print "<meta http-equiv='Content-Type' content='text/html'/>\n";
print "<title></title>\n";
print "<script type='text/javascript' src='common.js' language='javascript'></script>\n";
print "<!-- Form Functions -->\n";
print "<script type='text/javascript'>\n";
print "/* <![CDATA[ */\n\n";
print "function checkDuplicate(){\n";
while ($r = db_fetch_array($t)) {
    if ($r['sob_' . $r['sob_all_type'] . '_no_duplicates'] == '1') {
        // eg 'sob_dropdown_no_duplicates'
        $field = $r['sob_all_name'];
        //		$value         = getFormValue($sessionID, $r['sob_all_name']);
        $value = getFormValue($form_ses, $r['sob_all_name']);
        $newvalue = $value[0];
        if ($r['sob_' . $r['sob_all_type'] . '_format'] != '') {
            $newvalue = reformatField($value[0], $r['sob_' . $r['sob_all_type'] . '_format'], false);
        }
        if (isDuplicate($sessionID, $form, $recordID, $field, $newvalue)) {
            $T = nuRunQuery("SELECT sob_all_title FROM zzsys_object WHERE zzsys_object_id = '" . $r['zzsys_object_id'] . "'");
            $R = db_fetch_object($T);
            $S = "'there is already a record with a {$R->sob_all_title} of {$dq}" . str_replace('"', '', $value[0]) . "{$dq}'";
            print "   alert({$S});\n";
            print "   return;\n";
        }
    }
}
print "   parent.frames['main'].document.forms[0]['beenedited'].value = '0';\n";
print "   parent.frames['main'].document.forms[0].action = 'formupdate.php?x=1&r={$recordID}&dir={$dir}&ses={$ses}&f={$formID}&debug={$debug}';\n";