Ejemplo n.º 1
0
 static function genMenuSelection($prefix, $ids)
 {
     global $formxSession;
     if (!is_object($formxSession)) {
         $formxSession = new formxSession();
     }
     $mod = new ModeliXe("FX_selectNew.mxt");
     $mod->SetModeliXe();
     $dos = opendir(FORMX_LOCATION);
     // Met le pointeur de lecture sur le dossier courant.
     $tabAllForms = array();
     while ($fich = readdir($dos)) {
         if (ereg("^.*\\.xml\$", $fich)) {
             //on ouvre le fichier pour en trouver les caracteristiques principales
             $xml = simplexml_load_file(FORMX_LOCATION . $fich);
             if (!$xml) {
                 eko("pb chargement de l'instance");
             } else {
                 if ($xml['hide'] == 'y') {
                     continue;
                 }
                 if ($xml['access']) {
                     $droit = $formxSession->getDroit(utf8_decode((string) $xml['access']), 'w');
                 } else {
                     $droit = $formxSession->getDroit(DROITGENFORMX, 'w');
                 }
                 if (!$droit) {
                     continue;
                 }
                 $infos = array("id" => $xml['id'], 'titre' => (string) $xml->Libelle, 'objet' => (string) $xml->Objet);
                 if ((string) $xml->Groupe) {
                     $tabAllForms[(string) $xml->Groupe][] = $infos;
                 } else {
                     $tabAllForms[utf8_encode("Général")][] = $infos;
                 }
             }
         }
     }
     foreach ($tabAllForms as $groupe => $tabGroupe) {
         $mod->MxText('groupe.titregroupe', $groupe);
         $mod->MxAttribut("groupe.id_head", "head_" . $groupe);
         $mod->MxAttribut("groupe.id_body", "body_" . $groupe);
         $mod->MxAttribut("groupe.codeOnClick", "document.getElementById('body_{$groupe}').style.display='block';");
         $mod->MxAttribut("groupe.codeOnClickClose", "document.getElementById('body_{$groupe}').style.display='none';");
         $mod->MxAttribut("groupe.codeOnClickCheckAll", "checkAllIn('body_{$groupe}');");
         foreach ($tabGroupe as $infoGroupe) {
             $mod->MxText('groupe.SQUELETTE.titre', $infoGroupe['titre']);
             $mod->MxText('groupe.SQUELETTE.id', $infoGroupe['id']);
             $mod->MxText('groupe.SQUELETTE.objet', $infoGroupe['objet']);
             $mod->MxCheckerField('groupe.SQUELETTE.check', 'checkbox', $prefix . "chooseNew[]", $infoGroupe['id'], '', "class=\"casechoi\"");
             $mod->MxBloc('groupe.SQUELETTE', 'loop');
         }
         $mod->MxBloc('groupe', 'loop');
     }
     $mod->MxFormField("selCancel", "image", $prefix . "selCancel", "on", "value='on' src=\"" . FX_URLIMGANNMINI . "\"");
     $mod->MxFormField("selValid", "image", $prefix . "selValid", "on", "value='on' src=\"" . FX_URLIMGVAL . "\"");
     //fermeture de fen�tre
     if ($formxSession->infos['mode'] != 'iframe') {
         $mod->MxFormField("windowClose", "image", $prefix . "close", "on", "value='on'  src=\"" . FX_URLIMGCLO . "\"");
     }
     //navigation
     $mod->MxHidden("hidden1", "navi=" . $formxSession->genNavi($formxSession->getNavi(0), $formxSession->getNavi(1), $formxSession->getNavi(2), $formxSession->getNavi(3)));
     //ids
     $mod->MxHidden("hidden2", "ids=" . $ids);
     return $mod->MxWrite("1");
 }