Example #1
0
 function addLog($type, $description, $idcible = '')
 {
     if ($description != "Configuration|cron" and $description != "Importation") {
         $date = new clDate();
         $data['idapplication'] = IDAPPLICATION;
         if (isset($session)) {
             $data['iduser'] = $this->xham->user->getLogin();
         } elseif (is_object($this->xham) && is_object($this->xham->user)) {
             $data['iduser'] = $this->xham->user->getLogin();
         } else {
             $data['iduser'] = $_SESSION['informations']['iduser'] ? $_SESSION['informations']['iduser'] : "******";
         }
         $data['idcible'] = $idcible;
         // print $this->logSup ;
         $data['type'] = $type;
         $data['ip'] = $_SERVER['REMOTE_ADDR'];
         $data['date'] = $date->getDatetime();
         $data['description'] = $description;
         $finTemps = XhamTools::temps();
         $tpPage = $finTemps - $this->xham->debTemps;
         $data['tempsPage'] = $tpPage;
         $data['tempsSQL'] = $this->xham->tpRequetes;
         $data['nombreSQL'] = $this->xham->nbRequetes + 1;
         // Appel de la classe Requete.
         $req = new XhamRequete(BASEXHAM, TABLELOGS, $data);
         // Exécution de la requete.
         $res = $req->addRecord();
         // print affTab ( $res ) ;
         // Limitation du nombre de lignes dans la table logs... Désactivé, mais fonctionne parfaitement.
         //$mini = $res['cur_id'] - 150 ;
         //$res = $requete->delRecord ( "idlog<=$mini" ) ;
     }
 }
Example #2
0
 function majNote()
 {
     if ($this->droit) {
         // $session->setLogSup ( 'Mise à jour du bloc-notes' ) ;
         $data['note'] = utf8_decode(stripslashes($_REQUEST['note']));
         $requete = new XhamRequete(BASEXHAM, 'notes', $data);
         $requete->uoiRecord("ids='" . $this->xham->getNavi(2) . "'");
     }
 }
Example #3
0
 function checkDroit($droit, $description)
 {
     // Récupération de tous les droits existants.
     $param['cw'] = "WHERE libelle='{$droit}' AND idapplication='" . IDAPPLICATION . "'";
     $restous = $this->xham->Execute("Fichier", "getDroitsTous", $param, "ResultQuery");
     if (!$restous['INDIC_SVC'][2]) {
         $param2['idgroupe'] = 0;
         $param2['idapplication'] = IDAPPLICATION;
         $param2['libelle'] = $droit;
         $param2['descriptiondroit'] = addslashes($description);
         $requete = new XhamRequete(BASEXHAM, TABLEDROITS, $param2);
         $sql = $requete->addRecord();
     }
 }
 function supprimerUtilisateur()
 {
     if ($this->xham->getNavi(2) == "ValiderSupprimer") {
         $requete = new XhamRequete(BASEXHAM, TABLEUSERS);
         $requete->delRecord("idutilisateur=" . $_POST['iduser']);
         $_POST['iduser'] = "";
     } else {
         // Chargement du template ModeliXe.
         $mod = new ModeliXe("FormConfirmation.mxt");
         $mod->SetModeliXe();
         $mod->MxText("question", "Cet utilisateur sera définitivement supprimé. Etes vous certain de vouloir continuer ?");
         // Variable de navigation.
         $mod->MxHidden("hidden", "navi=" . $this->xham->genNavi($this->xham->getNavi(0), $this->xham->getNavi(1), "ValiderSupprimer") . "&iduser="******"1");
     }
 }
Example #5
0
 static function execSQLFromFile($file, $bdd, $host, $user, $pass)
 {
     $sql = utf8_decode(file_get_contents($file));
     $tabSQL = explode(';', $sql);
     $req = new XhamRequete($bdd, '', '', $host, $user, $pass);
     while (list($key, $val) = each($tabSQL)) {
         $rql = trim($val);
         if ($rql) {
             //print "REQUEEEEEEEEEEEEEEEETE".$rql."<br/><br/>" ;
             $res = $req->exec_requete($rql, 'resultquery');
         }
     }
     return $res;
 }
Example #6
0
 function delDroit($libelle)
 {
     if ($this->xham->getDroit("Configuration_Droits", "a")) {
         $param['cw'] = "WHERE idapplication='" . IDAPPLICATION . "' AND idgroupe=0 AND libelle='" . $libelle . "'";
         $res = $this->xham->Execute("Fichier", "getDroitsTous", $param, "ResultQuery");
         if ($res['lectureseule'][0]) {
             $this->erreurs .= "C'est un droit système, il est impossible de le supprimer.";
         } else {
             if (isset($_POST['Supprimer']) or isset($_POST['Supprimer_x'])) {
                 // Appel de la classe Requete.
                 $requete = new XhamRequete(BASEXHAM, TABLEDROITS);
                 // Exécution de la requete.
                 $rs = $requete->delRecord("libelle='{$libelle}' AND idapplication=" . IDAPPLICATION);
                 if (!isset($rs[1]) or !$rs[1]) {
                     $this->infos .= "Le droit '" . $res['libelle'][0] . "' a bien été supprimé.";
                 }
             } else {
                 $mod = new ModeliXe("FormConfirmation.mxt");
                 $mod->SetModeliXe();
                 $param['cw'] = "WHERE d.idgroupe=g.idgroupe AND d.libelle='{$libelle}' AND idapplication='" . IDAPPLICATION . "' ORDER BY g.nomgroupe";
                 $ras = $this->xham->Execute("Fichier", "getDroits", $param, "ResultQuery");
                 for ($i = 0; isset($ras['nomgroupe'][$i]); $i++) {
                     if (isset($groupes) and $ras['nomgroupe'][$i]) {
                         $groupes .= ", " . $ras['nomgroupe'][$i];
                     } elseif ($ras['nomgroupe'][$i]) {
                         $groupes = $ras['nomgroupe'][$i];
                     }
                 }
                 if (!$ras['INDIC_SVC'][2]) {
                     $groupes = "Aucun groupe";
                 }
                 $mod->MxText("question", "Confirmez-vous la suppression du droit '" . $res['libelle'][0] . "' ?<br/>(Ce droit est utilisé par : {$groupes})");
                 $mod->MxHidden("hidden", "navi=" . $this->xham->genNavi($this->xham->getNavi(0), $this->xham->getNavi(1), $this->xham->getNavi(2), $this->xham->getNavi(3), stripslashes($libelle)) . "&idgroupe=" . $_POST['idgroupe'] . "&action=" . $_POST['action']);
                 return $mod->MxWrite("1");
             }
         }
     }
 }
Example #7
0
 public function truncate()
 {
     $requete = new XhamRequete($this->getBDD(), $this->nomTable, '', $this->getHost(), $this->getUser(), $this->getPass());
     return $requete->exec_requete('TRUNCATE TABLE `' . $this->nomTable . '`');
 }
 function addItem($nomListe)
 {
     // On vérifie qu'un item ne porte pas déjà ce nom.
     $param['cw'] = "WHERE nomitem='" . addslashes(stripslashes($_POST['nomItemF'])) . "' AND nomliste='" . addslashes(stripslashes($nomListe)) . "'";
     $res = $this->xham->Execute("Fichier", "getListesItems", $param, "ResultQuery");
     // On signale l'erreur si le nom est déjà pris.
     if ($res['INDIC_SVC'][2] > 0) {
         $this->erreurs .= "Dans la liste \"{$nomListe}\", un item portant ce nom (\"" . $_POST['nomItemF'] . "\") existe déjà. La création est annulée.";
     } else {
         // Nouveau nom correct.
         if (eregi("[0-9a-zA-Z]", $_POST['nomItemF'])) {
             if ($this->xham->getOption($nomListe . " Id") and !eregi("[0-9a-zA-Z]", $_POST['libreF'])) {
                 $this->erreurs .= "L'identifiant est un champ obligatoire.";
             } else {
                 // On positionne correctement le nouvel item et on déplace les autres.
                 if ($this->xham->getOption(stripslashes($nomListe)) != "Manuel") {
                     $rang = 1;
                 } else {
                     $param['cw'] = "WHERE iditem='" . $_POST['placerF'] . "' and nomliste='" . addslashes(stripslashes($nomListe)) . "'";
                     $res2 = $this->xham->Execute("Fichier", "getListesItems", $param, "ResultQuery");
                     $rang = (isset($res2['rang'][0]) ? $res2['rang'][0] : 0) + 1;
                 }
                 $param['cw'] = "WHERE rang>='{$rang}' AND nomliste='" . addslashes($nomListe) . "'";
                 $res = $this->xham->Execute("Fichier", "getListesItems", $param, "ResultQuery");
                 for ($i = 0; isset($res['iditem'][$i]); $i++) {
                     $data2['rang'] = $res['rang'][$i] + 1;
                     $requete = new XhamRequete(BASEXHAM, "listes", $data2);
                     $requete->updRecord("iditem='" . $res['iditem'][$i] . "'");
                 }
                 // Insertion du nouveau item.
                 $data['categorie'] = "ListesGenerales";
                 $data['nomliste'] = $nomListe;
                 $data['nomitem'] = $_POST['nomItemF'];
                 $data['rang'] = $rang;
                 $data['valide'] = 1;
                 $data['localisation'] = isset($_POST['typeF']) ? $_POST['typeF'] : '';
                 $data['libre'] = isset($_POST['libreF']) ? $_POST['libreF'] : '';
                 $data['idapplication'] = IDAPPLICATION;
                 $requete = new XhamRequete(BASEXHAM, "listes", $data);
                 $requete->addRecord();
                 // Message d'information.
                 $this->infos .= "L'item \"" . $_POST['nomItemF'] . "\" a été ajouté dans la liste \"" . stripslashes($nomListe) . "\".";
             }
         } else {
             $this->erreurs .= "Le nom choisi ne doit pas être vide.";
         }
     }
 }
Example #9
0
 function updateSession($idSession = '')
 {
     $date = new clDate();
     // On met à jour la session actuelle.
     $data['nombre'] = "nombre+1";
     $data['last'] = $date->getDatetime();
     $data['localisation'] = $this->xham->genNaviFull();
     $data['idapplication'] = IDAPPLICATION;
     // Appel de la classe Requete.
     $requete = new XhamRequete(BASEXHAM, TABLESACTU, $data);
     // Exécution de la requete.
     $res = $requete->updRecord("idsession='" . $idSession . "'");
     return $res['affected_rows'];
 }
Example #10
0
 function checkOptionListe($option, $complexe = '')
 {
     $param['cw'] = "WHERE libelle='" . addslashes(stripslashes($option)) . "' AND idapplication=" . IDAPPLICATION;
     $res = $this->xham->Execute("Fichier", "getOptions", $param, "ResultQuery");
     if (!$res['INDIC_SVC'][2]) {
         if ($complexe) {
             $data['libelle'] = $option;
             $data['description'] = "Classement de la liste '{$option}'.";
             $data['type'] = "combobox";
             $data['choix'] = "Manuel|Alphabétique|Alphabétique inversé";
             $data['valeur'] = "Manuel";
             $data['categorie'] = $option;
             $data['idapplication'] = IDAPPLICATION;
             $req = new XhamRequete(BASEXHAM, TABLEOPTS, $data);
             $ris = $req->addRecord();
             $data['libelle'] = "Catégories " . $option;
             $data['description'] = "Classement de la liste des catégories de '{$option}'.";
             $data['type'] = "combobox";
             $data['choix'] = "Manuel|Alphabétique|Alphabétique inversé";
             $data['valeur'] = "Manuel";
             $data['categorie'] = $option;
             $data['idapplication'] = IDAPPLICATION;
             $req = new XhamRequete(BASEXHAM, TABLEOPTS, $data);
             $ris = $req->addRecord();
             $data['libelle'] = "Lignes " . $option;
             $data['description'] = "Nombre de lignes dans les listes de gestion de '{$option}'.";
             $data['type'] = "combobox";
             $data['choix'] = "5|10|15|20|25|30";
             $data['valeur'] = "15";
             $data['categorie'] = $option;
             $data['idapplication'] = IDAPPLICATION;
             $req = new XhamRequete(BASEXHAM, TABLEOPTS, $data);
             $ris = $req->addRecord();
         } else {
             switch ($option) {
                 case 'LignesParListe':
                     $data['libelle'] = "LignesParListe";
                     $data['description'] = "Nombre de lignes par liste dans la partie administration.";
                     $data['type'] = "combobox";
                     $data['choix'] = "3|4|5|6|7|8|9";
                     $data['valeur'] = "8";
                     $data['categorie'] = "Listes Générales";
                     $data['idapplication'] = IDAPPLICATION;
                     $req = new XhamRequete(BASEXHAM, TABLEOPTS, $data);
                     $ris = $req->addRecord();
                     break;
                 case 'ListesParLigne':
                     $data['libelle'] = "ListesParLigne";
                     $data['description'] = "Nombre de listes par ligne dans la partie administration.";
                     $data['type'] = "combobox";
                     $data['choix'] = "3|4|5";
                     $data['valeur'] = "4";
                     $data['categorie'] = "Listes Générales";
                     $data['idapplication'] = IDAPPLICATION;
                     $req = new XhamRequete(BASEXHAM, TABLEOPTS, $data);
                     $ris = $req->addRecord();
                     break;
                 default:
                     $data['libelle'] = $option;
                     $data['description'] = "Classement de la liste des '{$option}'.";
                     $data['type'] = "combobox";
                     $data['choix'] = "Manuel|Alphabétique|Alphabétique inversé";
                     $data['valeur'] = "Manuel";
                     $data['categorie'] = "Listes Générales";
                     $data['idapplication'] = IDAPPLICATION;
                     $req = new XhamRequete(BASEXHAM, TABLEOPTS, $data);
                     $ris = $req->addRecord();
                     $data['libelle'] = $option . " Id";
                     $data['description'] = "Gestion d'un code rattaché aux items de la liste '{$option}'.";
                     $data['type'] = "bool";
                     $data['choix'] = "";
                     $data['valeur'] = "0";
                     $data['categorie'] = "Listes Générales";
                     $data['idapplication'] = IDAPPLICATION;
                     $req = new XhamRequete(BASEXHAM, TABLEOPTS, $data);
                     $ris = $req->addRecord();
                     break;
             }
         }
     }
 }
Example #11
0
 function addNewOption()
 {
     $data['libelle'] = stripslashes($_POST['libelle']);
     $data['description'] = stripslashes($_POST['description']);
     $data['type'] = $_POST['type'];
     $data['choix'] = isset($_POST['choix']) ? stripslashes($_POST['choix']) : '';
     $data['categorie'] = $_POST['nouvelle'] ? stripslashes($_POST['nouvelle']) : stripslashes($_POST['categorie']);
     $data['idapplication'] = IDAPPLICATION;
     $data['administrateur'] = (isset($_POST['administrateur']) and $_POST['administrateur']) ? 1 : 0;
     $req = new XhamRequete(BASEXHAM, TABLEOPTS, $data);
     $ris = $req->addRecord();
 }
Example #12
0
 function genListeTodo()
 {
     $req = new XhamRequete(BASEXHAM, 'todo', array(), MYSQL_HOST, MYSQL_USER, MYSQL_PASS);
     switch ($this->xham->getr('Categorie')) {
         case 'all':
             $filtreCates = "1=1";
             break;
         case '#':
             $filtreCates = "categorie=''";
             break;
         default:
             $filtreCates = "categorie='" . utf8_decode($this->xham->getr('Categorie')) . "'";
             break;
     }
     switch ($this->xham->getr('idUser')) {
         case 'all':
             $filtreUsers = "(idUser='******' OR public=1)";
             break;
         case '#':
             $filtreUsers = "idUser='******'";
             break;
         default:
             $filtreUsers = "idUser='******'idUser') . "'";
             break;
     }
     switch ($this->xham->getr('Mode')) {
         default:
             $filtreModes = "etat like '" . $this->xham->getr('Mode') . "'";
             break;
     }
     $filtre = " {$filtreCates} and {$filtreUsers} and {$filtreModes} ";
     $res = $req->getGen("{$filtre} order by etat, date", "resultQuery");
     $ras = $req->getGen("{$filtreCates} and {$filtreUsers} and etat='afaire' order by etat", "resultQuery", 'sum(importance) nbHeures');
     $rus = $req->getGen("{$filtreCates} and {$filtreUsers} and etat='encours' order by etat", "resultQuery", 'sum(importance) nbHeures');
     $ris = $req->getGen("{$filtreCates} and {$filtreUsers} and etat='termines' order by etat", "resultQuery", 'sum(importance) nbHeures');
     //print affTab ( $ras['INDIC_SVC'] ) ;
     $mod = new ModeliXe("TodoListe.html");
     $mod->SetModeliXe();
     $mod->MxText('recap', 'A faire : ' . ($ras['nbHeures'][0] ? $ras['nbHeures'][0] : '0') . 'h - En cours : ' . ($rus['nbHeures'][0] ? $rus['nbHeures'][0] : '0') . 'h - Terminés : ' . ($ris['nbHeures'][0] ? $ris['nbHeures'][0] : '0') . 'h');
     $date = new clDate();
     if ($res['INDIC_SVC'][2] == 0) {
         $mod->MxBloc('todo', 'replace', '<td colspan="6">Aucun todo.</td>');
     } else {
         for ($i = 0; isset($res['idTodo'][$i]); $i++) {
             $js = XhamTools::genAjax('onClick', 'refreshTodo', 'ajax=changeStatus&amp;idTodo=' . $res['idTodo'][$i] . '&amp;navi=' . $this->xham->genNaviFull());
             /*
             if ( $res['etat'][$i] != 'termines' ) $mod -> MxText ( 'todo.js', $js ) ;
             else $mod -> MxText ( 'todo.js', '' ) ;
             */
             $mod->MxText('todo.js', $js);
             $mod->MxText('todo.class', $res['etat'][$i]);
             $mod->MxText('todo.idUser', $res['idUser'][$i]);
             $mod->MxText('todo.categorie', $res['categorie'][$i]);
             $mod->MxText('todo.nom', $res['nom'][$i]);
             $date->setDate($res['date'][$i]);
             $mod->MxText('todo.date', $date->getDate('Y-m-d H:i:s'));
             if ($res['dateLimite'][$i] != '0000-00-00 00:00:00') {
                 $date->setDate($res['dateLimite'][$i]);
                 $mod->MxText('todo.dateLimite', $date->getDate('Y-m-d'));
             } else {
                 $mod->MxText('todo.dateLimite', VIDEDEFAUT);
             }
             $mod->MxText('todo.importance', $res['importance'][$i]);
             $mod->MxBloc('todo', 'loop');
         }
     }
     $af = $mod->MxWrite("1");
     if ($this->ajax) {
         $this->af .= $af;
     } else {
         return $af;
     }
 }
Example #13
0
 function delGroupe()
 {
     if (stripslashes($_POST['idGroupe']) == "Invité" or stripslashes($_POST['idGroupe']) == "HOPI") {
         $this->erreurs .= "Ce groupe ne peut être supprimé, il est nécessaire au fonctionnement de l'application.";
     } else {
         // Appel de la classe Requete.
         $requete = new XhamRequete(BASEXHAM, "groupes");
         // Exécution de la requete.
         $res = $requete->delRecord("nomgroupe=\"" . $_POST['idGroupe'] . "\"");
         // Gestion des messages d'erreurs ou d'informations.
         if ($res['error']) {
             $this->erreurs .= "Une erreur a été rencontré lors de la tentative de suppression du groupe \"" . stripslashes($_POST['idGroupe']) . "\".<br/>Le problème a été signalé à l'administrateur.";
         } else {
             $this->infos .= "Le groupe \"" . stripslashes($_POST['idGroupe']) . "\" a été supprimé.";
         }
     }
 }
Example #14
0
 function delMenu($idmenu, $type)
 {
     if ($this->xham->getDroit("Configuration_Navigation", "d")) {
         $param['cw'] = "WHERE idunique='{$idmenu}'" . " AND idapplication=" . IDAPPLICATION;
         $res = $this->xham->Execute("Fichier", "getMenus", $param, "ResultQuery");
         if ($type == "menu") {
             $param['cw'] = "WHERE menuparent='{$idmenu}'" . " AND idapplication=" . IDAPPLICATION;
             $ras = $this->xham->Execute("Fichier", "getMenus", $param, "ResultQuery");
         }
         if ($res['lectureseule'][0]) {
             $this->erreurs .= "C'est un menu système, il est impossible de le supprimer.";
         } elseif (isset($ras) and $ras['INDIC_SVC'][2]) {
             $this->erreurs .= "Ce menu contient des items, il est impossible de le supprimer.";
         } else {
             if (isset($_POST['Supprimer']) or isset($_POST['Supprimer_x'])) {
                 // Appel de la classe Requete.
                 $requete = new XhamRequete(BASEXHAM, TABLENAVI);
                 // Exécution de la requete.
                 $requete->delRecord("idunique='{$idmenu}'");
                 $this->infos .= "Le menu '" . $res['libelle'][0] . "' a bien été supprimé.";
                 if ($type == "menu") {
                     $this->majRangs($res['rang'][0]);
                 } else {
                     $this->majRangs($res['rang'][0], $res['menuparent'][0]);
                 }
             } else {
                 $mod = new ModeliXe("FormConfirmation.mxt");
                 $mod->SetModeliXe();
                 $mod->MxText("question", "Confirmez-vous la suppression du menu '" . $res['libelle'][0] . "' ?");
                 $mod->MxHidden("hidden", "navi=" . $this->xham->genNavi($this->xham->getNavi(0), $this->xham->getNavi(1), $this->xham->getNavi(2), $this->xham->getNavi(3)));
                 return $mod->MxWrite("1");
             }
         }
     }
 }