<?php /* ------------------------------------------------ ACQUISITION DES DROITS D'ACCES DE intranet.agis.fr ------------------------------------------------ */ //Création des variables globales de tous les droits d'acces de l'intranet //$timestart = time(); $nom_droits_acces = Lib::isDefined('nom_droits_acces'); $id_user = Lib::isDefined('id_user'); //Requête retournant tous les droits d'accès de l'intranet pour l'utilisateur en cours $array = DatabaseOperation::convertSqlStatementWithoutKeyToArray('SELECT ' . IntranetDroitsAccesModel::TABLENAME . '.' . IntranetDroitsAccesModel::FIELDNAME_ID_USER . ', ' . IntranetDroitsAccesModel::TABLENAME . '.' . IntranetDroitsAccesModel::FIELDNAME_NIVEAU_INTRANET_DROITS_ACCES . ', ' . IntranetModulesModel::TABLENAME . '.' . IntranetModulesModel::FIELDNAME_NOM_INTRANET_MODULES . ', ' . IntranetActionsModel::TABLENAME . '.' . IntranetActionsModel::FIELDNAME_NOM_INTRANET_ACTIONS . ' FROM ' . IntranetActionsModel::TABLENAME . ', ' . IntranetDroitsAccesModel::TABLENAME . ', ' . IntranetModulesModel::TABLENAME . ' WHERE ( ' . IntranetActionsModel::TABLENAME . '.' . IntranetActionsModel::KEYNAME . ' = ' . IntranetDroitsAccesModel::TABLENAME . '.' . IntranetDroitsAccesModel::FIELDNAME_ID_INTRANET_ACTIONS . ' AND ' . IntranetDroitsAccesModel::TABLENAME . '.' . IntranetDroitsAccesModel::FIELDNAME_ID_INTRANET_MODULES . ' = ' . IntranetModulesModel::TABLENAME . '.' . IntranetModulesModel::KEYNAME . ' AND ' . IntranetDroitsAccesModel::TABLENAME . '.' . IntranetDroitsAccesModel::FIELDNAME_ID_USER . ' = ' . $id_user . ') ' . ' ORDER BY ' . IntranetModulesModel::TABLENAME . '.' . IntranetModulesModel::FIELDNAME_NOM_INTRANET_MODULES . ' ASC, ' . IntranetActionsModel::TABLENAME . '.' . IntranetActionsModel::FIELDNAME_NOM_INTRANET_ACTIONS . ' ASC '); if ($array) { foreach ($array as $rows) { //Déclaration du droit d'accès $nom_droits_acces = $rows['nom_intranet_modules'] . '_' . $rows['nom_intranet_actions']; //Affectation du niveau du droit d'accès // $$nom_droits_acces = $rows["niveau_intranet_droits_acces"]; //Vérification //echo $nom_droits_acces.'='.$$nom_droits_acces.'<br>'; //Enregistrement du droits d'accès dans les variables de session PHP Acl::setAccesRightsValues($nom_droits_acces, $rows["niveau_intranet_droits_acces"]); // $_SESSION["$nom_droits_acces"] = $$nom_droits_acces; //Réinitialisation pour préaparer la nouvelle boucle // $nom_droits_acces = ""; // $$nom_droits_acces = 0; } } else { $titre = 'Attention'; $message = 'Votre compte utilisateur n\'est pas déclaré dans l\'Intranet.<br>' . 'Veuillez contacter votre service informatique.<br>'; $redirection = false; afficher_message($titre, $message, $redirection);
/* Récupération des données MySQL */ $id_fta = Lib::getParameterFromRequest(FtaModel::KEYNAME); $id_fta_composant = Lib::getParameterFromRequest(FtaComposantModel::KEYNAME); $id_fta_chapitre = Lib::getParameterFromRequest('id_fta_chapitre_encours'); $idFtaRole = Lib::getParameterFromRequest(FtaRoleModel::KEYNAME); $idFtaEtat = Lib::getParameterFromRequest(FtaEtatModel::KEYNAME); $abreviationFtaEtat = Lib::getParameterFromRequest(FtaEtatModel::FIELDNAME_ABREVIATION); $comeback = Lib::getParameterFromRequest('comeback'); $syntheseAction = Lib::getParameterFromRequest('synthese_action'); $globalConfig = new GlobalConfig(); UserModel::checkUserSessionExpired($globalConfig); $id_user = $globalConfig->getAuthenticatedUser()->getKeyValue(); $proprietaire = Lib::getParameterFromRequest('proprietaire'); $checkCreation = Lib::isDefined('checkCreation'); //Bouton Valider if ($proprietaire) { $editable = TRUE; $action = "valider"; $bouton_valider = "\n <input type=\"checkbox\" name=\"valider_saisie\" value=1 />Valider et revenir sur la FTA<br>\n <input type=submit name=Traitement value='" . FtaComposantModel::ENREGISTRER_LES_MODIFICATIONS . "'>\n "; $bouton_allergene = "<input type=submit name=Traitement value='" . FtaComposantModel::MISE_EN_EVIDENCE_ALLERGENES . "'>"; } else { $editable = FALSE; $action = "consulter"; $bouton_valider = "\n <input name=Traitement type=submit value='" . FtaComposantModel::REVENIR_SURE_LA_FTA . "'>"; } //Mode Création/Modification d'une nomenclature /* if ($id_fta_composition) {
<?php include '../inc/php.php'; //$autologin = null; //$enable_autologin = false; $autologin = Lib::isDefined('autologin'); $enable_autologin = Lib::isDefined('autologin'); $num_log = Lib::isDefined('num_log'); $globalConfig = new GlobalConfig(); //if ($conf->exec_debug) { // echo '<h3>Mode Debugger</h3>'; //} //Autologin if (!$autologin and $enable_autologin == 1) { $autologin = $_GET['autologin']; $enable_autologin = $_GET['enable_autologin']; echo ' Pour accéder à l\'intranet en mode <b>Authentification automatique</b>, veuillez configurer votre navigateur Internet Explorer de la manière suivante:<br> <br> 1. Aller dans Outils > Options Internet > Sécurité:<br> 2. Sélectionner \'Sites de confiance\'<br> 3. Cliquez sur le bouton \'Sites\'<br> 4. Ajouter *.agis.fr<br> 5. Décochez \'Exiger un serveur sécurisé (https) pour tous les sites de cette zone\'<br> 6. Validez en cliquant sur le bouton \'Fermer\'<br> 7. Cliquez sur \'personnaliser le niveau\'<br> 8. Aller dans \'Contrôles ActiveX et plug-ins\'<br> 9. Activer \'Contrôles d\'initialisation et de scripts ActiveX non marqué comme sécurisés pour l\'écriture de script\'<br> 10. Fermer et réouvrir le navigateur.<br> <br> <br>
<?php /* * ToDo: Page à ne plus utiliser */ require_once '../inc/main.php'; print_page_begin(Lib::isDefined("disable_full_page"), Lib::isDefined("menu_file"));
function mysql_table_operation($nom_table, $operation) { /* Dictionnaire des variables: * ************************** */ //$bdd = $_SESSION["mysql_database_name"]; //Variable Globale definit dans /lib/session.php et $globalConfig = new GlobalConfig(); //$conf = $_SESSION["globalConfig"]; $bdd = $globalConfig->getConf()->getMysqlDatabaseName(); //$bdd = $conf->mysql_database_name; //represente le nom de la base de donnees $nom_table; //Nom de la table e charger $operation; //update, delete, rewrite, copy, clone ou insert $premiere_virgule_update = 1; //Permet de supprimer les virgules en trop dans la //construction des requetes UPDATE $premiere_virgule_insert = 1; //Permet de supprimer les virgules en trop dans la //construction des requetes INSERT et REWRITE $premiere_operateur_where = 1; //Permet de supprimer les AND en trop dans la //construction des WHERE $premiere_operateur_retour = 1; //Permet de supprimer le '&' en trop dans la //construction du retour de la fonction $return = ''; //Valeur que renvoi la fonction $nom_id = ""; //$list_key_field = array(); //liste des noms des champs étant des clefs /* Corps de la fonction * ******************* */ //Initialisation des requetes $req_update = "UPDATE `" . $nom_table . "` SET "; $req_where = " WHERE "; $req_delete = "DELETE FROM `" . $nom_table . "`"; $req_insert = "INSERT INTO `" . $nom_table . "` ("; $req_insert_values = "VALUES ("; $req_rewrite = $req_delete; $req_copy = $req_insert; $req_copy_values = $req_insert_values; $req_clone; //Reste e creer //Recupération des variables $fields = mysql_list_fields($bdd, $nom_table); $propriete = DatabaseOperation::query("DESC {$nom_table}"); $num_fields = mysql_num_fields($fields); //Recherche des clefs de la table while ($rows1 = mysql_fetch_array($propriete)) { //Creation de la variable potentiellement PRIMARY KEY $primary_key = $rows1["Field"]; //$$primary_key=$_SESSION["$primary_key"]; //Comment récupérer ce qui vient de l'URL ? ${$primary_key} = Lib::isDefined($primary_key); if ($rows1["Key"] == "PRI") { //Enregistrement de la clef (gestion multi-clef non-supporté) $nom_id = $primary_key; } //Est-ce que ce champ est une clef et qu'une variable est definit if ($rows1["Key"] == "PRI" and ${$primary_key} != null) { //$list_key_field[]=$nom_id; //Enregistrement du nom de la clef dans la listes des clefs //Affectation de la valeur de la variables Key if ($operation == 'copy') { $_SESSION["{$primary_key}"] = ''; //$$primary_key = ''; } ${$primary_key} = $_SESSION["{$primary_key}"]; //Intégration de la clef PRIMAIRE dans les requetes $operateur = " AND "; if ($premiere_operateur_where) { $operateur = ''; } $premiere_operateur_where = 0; $req_where .= $operateur . "`" . $primary_key . "`" . "=" . "'" . ${$primary_key} . "'"; //Construction du lien de retour de fonction $operateur = "&"; if ($premiere_operateur_retour) { $operateur = ''; } $premiere_operateur_retour = 0; $return .= $operateur . $primary_key . "=" . ${$primary_key}; //Effacement des clefs pour eviter de les retrouver dans la suite des requetes switch ($operation) { case 'insert': case 'copy': ${$primary_key} = ''; break; } } //Fin de Recherche de la clef sur ce champ } //Fin de recherche des clefs //Integration des variables dans les requetes for ($i = 0; $i < $num_fields; $i++) { //Recuperation du nom des variables $nom_variable = mysql_field_name($fields, $i); //$valeur_variable = "test"; //Verification de la declaration de cette variable, //$valeur_variable=$_SESSION["$nom_variable"]; //Comment récupérer ce qui vient de l'URL ? //$valeur_variable=Lib::isDefined($nom_variable); $valeur_variable = $_SESSION[$nom_variable]; if ($valeur_variable != null) { //Formatage des données pour préparation à intégration dans MySQL // 2009-05-11 BS - Fait planter la duplication d'une FTA: $$nom_variable = "\"" . $GLOBALS[$nom_variable] . "\""; // 2011-04-01 BS - Tentative pour enregistrer dans la base des données "propre": // $valeur_variable = "'" . addslashes($valeur_variable) . "'"; $valeur_variable = DatabaseOperation::convertDataForQuery($valeur_variable); //$$nom_variable = "'" . htmlentities($GLOBALS[$nom_variable]) . "'"; //Le champs peut-il etre NULL $rechercher_not_null = mysql_field_flags($fields, $i); $trouver_not_null = stristr($rechercher_not_null, 'not_null'); if (!$trouver_not_null and $valeur_variable == "''") { $valeur_variable = "NULL"; } //Construction des requetes //Requete UPDATE $virgule = ", "; if ($premiere_virgule_update) { $virgule = ''; } $premiere_virgule_update = 0; $req_update .= $virgule . "`" . $nom_variable . "`=" . $valeur_variable; //Requete INSERT, REWRITE et COPY $virgule = ", "; if ($premiere_virgule_insert) { $virgule = ''; } $premiere_virgule_insert = 0; $req_insert .= $virgule . "`" . $nom_variable . "`"; $req_insert_values .= $virgule . $valeur_variable; } } //Fin de la construction des requetes //Finalisation des requetes //Requete UPDATE: $req_update .= $req_where; //Requete DELETE: $req_delete .= $req_where; //Requete INSERT: $req_insert .= ")" . $req_insert_values . ");"; $req_insert . "<br>"; //Requete REWRITE: // un DELETE, puis un INSERT //Requete COPY: $req_copy = $req_insert; //Requete CLONE: $req_clone; //Execution des requetes switch ($operation) { case 'update': DatabaseOperation::query($req_update); //echo $req_update."<br>"; break; case 'delete': DatabaseOperation::query($req_delete); break; case 'insert': DatabaseOperation::query($req_insert); //echo $req_insert."<br>"; break; case 'rewrite': DatabaseOperation::query($req_delete); DatabaseOperation::query($req_insert); break; case 'copy': DatabaseOperation::query($req_copy); break; case 'clone': DatabaseOperation::query($req_clone); break; } //Renvoi de la fonction switch ($operation) { case 'copy': case 'insert': //$id = "id_" . $nom_table; $id = $nom_id; //Externalisation de la variable (pour une table e 1 clef) $_SESSION[$id] = mysql_insert_id(); $return = $id . "=" . $_SESSION[$id]; break; default: $return; break; } return $return; }
function arborescence_construction($table, $champ_valeur, $champ_id_fils, $champ_id_pere, $id_racine, $sql_where, $extension) { $table = 'classification_arborescence_article,classification_arborescence_article_categorie_contenu,classification_fta'; //nom de la table contenant l'association "Père" / "Fils" $champ_valeur = 'nom_classification_arborescence_article_categorie_contenu'; //nom du champ contenant la valeur à afficher (sans le "underscore" et le nom de la table) $champ_fta = 'classification_arborescence_article_categorie_contenu'; //nom du champ contenant la valeur à afficher (sans le "underscore" et le nom de la table) $champ_id_fils = 'id_classification_arborescence_article'; //nom du champ fils contenant l'id (sans le "underscore" et le nom de la table) $champ_id_pere = 'ascendant_classification_arborescence_article_categorie_contenu'; //nom du champ père contenant l'id (sans le "underscore" et le nom de la table) $id_racine = 1; //Identifiant de l'enregistrement père racine (le premier) if (!$liste_id) { $liste_id = "," . $id_racine . ","; } if ($add_id) { $liste_id .= $add_id . ","; } //echo $liste_id; //echo $_GET; // print_r(parse_url($url)); $sql_where = "classification_arborescence_article.id_classification_arborescence_article_categorie_contenu=classification_arborescence_article_categorie_contenu.id_classification_arborescence_article_categorie_contenu"; //Permet de personnaliser la clause SQL "WHERE" comme pour insérer une jointure par exemple // Déclaration des variables: /// $table='matiere_premiere_composant'; //nom de la table contenant l'association "Père" / "Fils" // $champ_valeur='nom_matiere_premiere_composant'; //nom du champ contenant la valeur à afficher (sans le "underscore" et le nom de la table) // $champ_id_fils='id_matiere_premiere_composant'; //nom du champ fils contenant l'id (sans le "underscore" et le nom de la table) // $champ_id_pere='id_ascendant_matiere_premiere_composant'; //nom du champ père contenant l'id (sans le "underscore" et le nom de la table) $table; //nom de la table contenant l'association "Père" / "Fils" //Peux aussi être une liste de table séparé par une virgule ex: "table1,table2" $champ_valeur; //nom du champ contenant la valeur à afficher $champ_id_fils; //nom du champ fils contenant l'id $champ_id_pere; //nom du champ père contenant l'id $id_racine; //Identifiant de l'enregistrement père racine (le premier) $id_recherche = $id_racine; //Identifiant en cours de recherche $id_fils; //Identifiant du fils en cours de traitement $id_pere; //Identifiant du pre en cours de traitement $tab; //Nombre de tabulation permettant un affichage en cascade de l'arborescence $tab_init = ' '; //Representation de la tabulation $sql_where; //Permet de personnaliser la clause SQL "WHERE" comme pour insérer une jointure par exemple $return = ''; //Valeur retourne par la fonction //$return[1] --> liste de éléments séparé par une virgule //$return[2] --> Réprésentation de l'arborescence au format texte $extension = Lib::isDefined("extension"); //Tableau d'argument optionnelle de la fonction // $extension[0]; //Code HTML qui sera ajouter à la fin de la valeur dans la représentation graphique // $extension[1]; //0 ou 1. Permet de terminer le code HTML créé par $extension[0] avec l'id de l'objet en cours // $extension[2]; //Ordre tri: 0=Valeur, 1=Clefs Fils et 2=Clef Père // $extension[3]; //Liste des id à développer, si NULL, alors tout est développé // $extension[4]; //Lien lorqu'on clic sur un élément de l'arborescence (terminé par l'id) $tri; //Champ à trier /* Initialisation des variables */ //$champ_valeur .= "_".$table; //$champ_id_fils.= "_".$table; //$champ_id_pere.= "_".$table; $id_pere = $id_racine; if ($sql_where) { $sql_where = "WHERE " . $sql_where; } if (!$extension[2]) { $extension[2] = 1; //Tri par défaut } //Configuration du tri de l'arborescence switch ($extension[2]) { case 0: $tri = $champ_valeur; break; case 1: $tri = $champ_id_fils; break; case 2: $tri = $champ_id_pere; break; } $requete_principale = "SELECT {$champ_id_pere}, {$champ_id_fils}, {$champ_valeur} FROM {$table} " . "{$sql_where} " . "ORDER BY {$tri} ASC "; //echo $requete_principale; $resultat = DatabaseOperation::query($requete_principale); $nombre_ligne = mysql_num_rows($resultat); /* Corps de la fonction */ //Lancement de la fonction //Appel recursif de la fonction $i = 1; //Affiche le niveau dans lequel on est $return = recursif($resultat, $id_recherche, $champ_id_pere, $champ_id_fils, $champ_valeur, $tab_fils, $tab_arborescence, $tab_espace, $return, $nombre_ligne, $extension); //var_dump($return); return $return; }
function recherche_element_classification_fta($id_fta, $id_element, $extension) { /* Dictionnaire des variables: */ $id_fta; //Identifiant de la Fiche Technique Article $id_element; //Identifiant du contenu de la catégorie de la classification à rechercher //(cf classification_arborescence_article_categorie_contenu) $extension; //Tableau de variables optionnelles $extension[0]; //Si 0, Alors $id_element correspond à un contenu et la fonction retourne les éléments de la classification //Si 1, Alors $id_element correspond à une catégorie et la fonction retourne les éléments des contenus $return = Lib::isDefined("return"); $return[0]; //0 ou 1: dit si l'élément a été touvé $return[1]; //Retourne la liste des clefs trouvées $return[2]; //Retourne la liste des valeurs trouvées $sql_where = Lib::isDefined("sql_where"); $liste_recherche = Lib::isDefined("liste_recherche"); //Liste des éléments trouver dans l'ensemble des chemins switch ($extension[0]) { case 0: $champ_recherche = "classification_arborescence_article_categorie_contenu.id_classification_arborescence_article_categorie_contenu"; break; case 1: $champ_recherche = "classification_arborescence_article_categorie.id_classification_arborescence_article_categorie"; break; } /* Corps de la fonction */ //echo $id_fta; if (!$id_fta) { //L'ID FTA est obligatoire return 0; } //Recherche des chemins de classification de l'Article $req = "SELECT id_classification_arborescence_article_categorie_contenu, classification_fta.id_classification_arborescence_article " . " FROM classification_fta, classification_arborescence_article " . " WHERE id_fta=" . $id_fta . " AND classification_fta.id_classification_arborescence_article=classification_arborescence_article.id_classification_arborescence_article "; $array = DatabaseOperation::convertSqlStatementWithoutKeyToArray($req); if (!$array) { //Vérification de l'existance de chemin de classifications //L'article n'a pas de classification $titre = "Classification de l'article"; $message = "Cet article n'a pas de classification"; $redirection; //afficher_message($titre, $message, $redirection); } else { //Récupération de toutes les classifications foreach ($array as $rows) { $table = "classification_arborescence_article"; $champ_valeur = "id_classification_arborescence_article_categorie_contenu"; $champ_id_fils = "ascendant_classification_arborescence_article_categorie_contenu"; $champ_id_pere = "id_classification_arborescence_article"; $id_racine = $rows["id_classification_arborescence_article"]; $extension; $recup = arborescence_construction($table, $champ_valeur, $champ_id_fils, $champ_id_pere, $id_racine, $sql_where, $extension); $liste_recherche .= $recup[1]; } //var_dump($liste_recherche); //Transformation de la liste de recherche sous forme de tableau $tableau_recherche = explode(",", $liste_recherche); //Construction de la requête de recherche $req = "SELECT * " . "FROM classification_arborescence_article, classification_arborescence_article_categorie, classification_arborescence_article_categorie_contenu " . "WHERE classification_arborescence_article_categorie.id_classification_arborescence_article_categorie=classification_arborescence_article_categorie_contenu.id_classification_arborescence_article_categorie " . "AND classification_arborescence_article.id_classification_arborescence_article_categorie_contenu=classification_arborescence_article_categorie_contenu.id_classification_arborescence_article_categorie_contenu " . "AND {$champ_recherche}={$id_element} " . "AND "; //Intégration dans la reqûete les éléments trouvés $tableau_recherche; $first_OR = 0; foreach ($tableau_recherche as $id_classification_arborescence_article) { if ($first_OR) { $req .= "OR "; } else { $req .= "( "; } $req .= "classification_arborescence_article.id_classification_arborescence_article={$id_classification_arborescence_article} "; $first_OR = 1; } $req .= ") "; //Recupération des données $result = DatabaseOperation::convertSqlStatementWithoutKeyToArray($req); //echo $req; //Si il y a des résultat if ($result) { //Il y a au moins 1 résultat $return[0] = 1; $virg_enable = 0; $return[1] = ""; $return[2] = ""; foreach ($result as $rows) { if ($rows["id_classification_arborescence_article_categorie_contenu"] != 0) { if ($virg_enable) { $virg = ","; } else { $virg_enable = 1; } $return[1] .= $virg . $rows["id_classification_arborescence_article_categorie_contenu"]; $return[2] .= $virg . $rows["nom_classification_arborescence_article_categorie_contenu"]; } } } else { //Pas d'occurence $return[0] = 0; } } //Fin de la vérification de l'existance de chemin de classification de l'article return $return; }
/** * Non fonctionnelle * @param type $table * @param type $champ_valeur * @param type $champ_id_fils * @param type $champ_id_pere * @param type $id_racine * @param string $sql_where * @param type $extension * @return type */ public static function getClassificationName($table, $champ_valeur, $champ_id_fils, $champ_id_pere, $id_racine, $sql_where, $extension) { /* Déclaration des variables: */ /* $table='matiere_premiere_composant'; //nom de la table contenant l'association 'Père' / 'Fils' $champ_valeur='nom_matiere_premiere_composant'; //nom du champ contenant la valeur à afficher (sans le 'underscore' et le nom de la table) $champ_id_fils='id_matiere_premiere_composant'; //nom du champ fils contenant l'id (sans le 'underscore' et le nom de la table) $champ_id_pere='id_ascendant_matiere_premiere_composant'; //nom du champ père contenant l'id (sans le 'underscore' et le nom de la table) */ $table; //nom de la table contenant l'association 'Père' / 'Fils' //Peux aussi être une liste de table séparé par une virgule ex: 'table1,table2' $champ_valeur; //nom du champ contenant la valeur à afficher $champ_id_fils; //nom du champ fils contenant l'id $champ_id_pere; //nom du champ père contenant l'id $id_racine; //Identifiant de l'enregistrement père racine (le premier) $id_recherche = $id_racine; //Identifiant en cours de recherche $id_fils; //Identifiant du fils en cours de traitement $id_pere; //Identifiant du pre en cours de traitement $tab; //Nombre de tabulation permettant un affichage en cascade de l'arborescence $tab_init = ' '; //Representation de la tabulation $sql_where; //Permet de personnaliser la clause SQL 'WHERE' comme pour insérer une jointure par exemple $return = ''; //Valeur retourne par la fonction //$return[1] --> liste de éléments séparé par une virgule //$return[2] --> Réprésentation de l'arborescence au format texte $extension = Lib::isDefined('extension'); //Tableau d'argument optionnelle de la fonction // $extension[0]; //Code HTML qui sera ajouter à la fin de la valeur dans la représentation graphique // $extension[1]; //0 ou 1. Permet de terminer le code HTML créé par $extension[0] avec l'id de l'objet en cours // $extension[2]; //Ordre tri: 0=Valeur, 1=Clefs Fils et 2=Clef Père // $extension[3]; //Liste des id à développer, si NULL, alors tout est développé // $extension[4]; //Lien lorqu'on clic sur un élément de l'arborescence (terminé par l'id) $tri; //Champ à trier /* Initialisation des variables */ //$champ_valeur .= '_'.$table; //$champ_id_fils.= '_'.$table; //$champ_id_pere.= '_'.$table; $id_pere = $id_racine; $tab_arborescence = '|'; //Signe Nouvelle Arborescence $tab_fils = '---> '; //Signe Nouveau Fils $tab_espace = '----->'; //Espace de décalage if ($sql_where) { $sql_where = 'WHERE ' . $sql_where; } if (!$extension[2]) { $extension[2] = 1; //Tri par défaut } //Configuration du tri de l'arborescence switch ($extension[2]) { case 0: $tri = $champ_valeur; break; case 1: $tri = $champ_id_fils; break; case 2: $tri = $champ_id_pere; break; } $requete_principale = 'SELECT ' . $champ_id_pere . ',' . $champ_id_fils . ',' . $champ_valeur . ' FROM ' . $table . $sql_where . ' ORDER BY ' . $tri . ' ASC '; $array = DatabaseOperation::convertSqlStatementWithoutKeyToArray($requete_principale); if ($array) { $nombre_ligne = count($array); } else { $nombre_ligne = '0'; } /* Corps de la fonction */ //Lancement de la fonction //Appel recursif de la fonction $i = 1; //Affiche le niveau dans lequel on est $return = recursif($resultat, $id_recherche, $champ_id_pere, $champ_id_fils, $champ_valeur, $tab_fils, $tab_arborescence, $tab_espace, $return, $nombre_ligne, $extension); //var_dump($return); return $return; }
// { //en variable // include ("./$menu"); // } // else // { // //include ("./popup-mysql_field_desc-menu_principal.inc"); //Sinon, menu par défaut // } // //}//Fin de la sélection du mode d'affichage de la page /* * *********** Début Code PHP * *********** */ /* Initialisation des variables */ $default_message = Lib::isDefined("default_message"); $popup_name = Lib::getParameterFromRequest("popup_name"); $popup_content = $_SESSION[$popup_name]; $edit_allow = Lib::getParameterFromRequest("edit_allow"); $title = Lib::getParameterFromRequest("title"); $special_page = Lib::getParameterFromRequest("special_page"); $page_default = substr(strrchr($_SERVER["PHP_SELF"], '/'), '1', '-4'); $page_action = $page_default . ".php" . "?edit_allow={$edit_allow}" . "&default_message={$default_message}" . "&disable_full_page=1"; //$page_pdf = $page_default . "_pdf.php"; //$action = ''; //Action proposée à la page _post.php $method = 'POST'; //Pour une url > 2000 caractères, ne pas utiliser utiliser GET $html_table = "table " . "border=1 " . "width=100% " . "class=contenu "; $edit_mode; //Si =1, alors mode edition de l'aide en ligne //$edit_allow = $GLOBALS{$module . "_" . $nom_intranet_actions}; //L'utilisateur a-t-il la permission de modifier le manuel ?
} /* Modules sous droits d'accès utilisateur * ************************************** */ if ($id_user) { //Si l'utilisateur est connecté //Requête selectionnant les modules de l'intranet visible par l'utilisateur pouvant consulter le droit d'accès: $arrayModule = DatabaseOperation::convertSqlStatementWithoutKeyToArray(' SELECT ' . IntranetModulesModel::FIELDNAME_NOM_INTRANET_MODULES . ',' . IntranetModulesModel::FIELDNAME_NOM_USUEL_INTRANET_MODULES . ' FROM ' . IntranetModulesModel::TABLENAME . ', ' . IntranetDroitsAccesModel::TABLENAME . ' WHERE (' . IntranetModulesModel::TABLENAME . '.' . IntranetModulesModel::KEYNAME . '=' . IntranetDroitsAccesModel::TABLENAME . '.' . IntranetDroitsAccesModel::FIELDNAME_ID_INTRANET_MODULES . ' AND ' . IntranetModulesModel::FIELDNAME_VISIBLE_INTRANET_MODULES . '=' . '1' . ' AND ' . IntranetDroitsAccesModel::FIELDNAME_ID_INTRANET_ACTIONS . '=' . '1' . ' AND ' . IntranetDroitsAccesModel::TABLENAME . '.' . IntranetDroitsAccesModel::FIELDNAME_ID_USER . '=' . $id_user . ' ' . ' AND ' . IntranetDroitsAccesModel::TABLENAME . '.' . IntranetDroitsAccesModel::FIELDNAME_NIVEAU_INTRANET_DROITS_ACCES . '=' . IntranetNiveauAccesModel::NIVEAU_GENERIC_TRUE . ') ' . ' ORDER BY ' . IntranetModulesModel::FIELDNAME_CLASSEMENT_INTRANET_MODULES . ' DESC'); foreach ($arrayModule as $rowsModule) { $nom_intranet_modules = $rowsModule[IntranetModulesModel::FIELDNAME_NOM_INTRANET_MODULES]; $nom_usuel_intranet_modules = $rowsModule[IntranetModulesModel::FIELDNAME_NOM_USUEL_INTRANET_MODULES]; if ($i > $limite_colonne) { echo '</tr>'; $i = 1; } //Personalisation Mediawiki en fonction du portail de l'utilisateur $portail_wiki_salaries = Lib::isDefined('portail_wiki_salaries'); if ($portail_wiki_salaries and $nom_intranet_modules == 'mediawiki') { $additional_ref = '/index.php/' . $portail_wiki_salaries; } else { $additional_ref = ''; } echo '<td align=center>'; echo '<a href=' . $globalConfig->getConf()->getUrlFullRoot() . '/' . $nom_intranet_modules . '/' . '' . $additional_ref . ' target=_top>'; echo '<img src=' . $globalConfig->getConf()->getUrlFullRoot() . '/' . $nom_intranet_modules . '/images/bouton_module.png width=34 height=34 border=0 alt=' . $nom_usuel_intranet_modules . '>'; echo '</a>'; echo '</td>'; $i = $i + 1; } } echo '</tr>'; echo '</table>';
//$module=trim($module); /* Si la page peut être appelée depuis n'importe quel module, décommentez la ligne suivante */ // $module='fta'; /* * ******* Inclusions * ******* */ //include ("../lib/session.php"); //Récupération des variables de sessions //include ("../lib/debut_page.php"); //Affichage des éléments commun à l'Intranet require_once '../inc/main.php'; print_page_begin($disable_full_page, $menu_file); $periode_debut = Lib::isDefined('periode_debut'); $periode_fin = Lib::isDefined('periode_fin'); $all_classification = Lib::isDefined('all_classification'); //if (isset($menu)) //Si existant, utilisation du menu demandé // {include ("./$menu");} //en variable //else // {include ("./menu_principal.inc");} //Sinon, menu par défaut /* * *********** Début Code PHP * *********** */ /* Initialisation des variables */ $page_default = substr(strrchr($_SERVER["PHP_SELF"], '/'), '1', '-4'); $page_action = $page_default . ".php"; // $page_action="transiter_post.php"; $page_pdf = $page_default . "_pdf.php"; $action = 'valider';
<?php /* Module d'appartenance (valeur obligatoire) Par défaut, le nom du module est le répertoire courant */ // $module=substr(strrchr(`pwd`, '/'), 1); // $module=trim($module); require_once '../inc/main.php'; print_page_begin($disable_full_page, $menu_file); flush(); $planning_presence_modification = Acl::getValueAccesRights('planning_presence_modification'); $id_groupe = Lib::isDefined('id_groupe'); $selection_semaine_en_cours = Lib::isDefined('selection_semaine_en_cours'); $semaine_en_cours = Lib::isDefined('semaine_en_cours'); $annee_en_cours = Lib::isDefined('annee_en_cours'); /* Si la page peut être appelée depuis n'importe quel module, décommentez la ligne suivante */ // $module=''; //Inclusions //Sélection du mode de visualisation de la page //switch($output) //{ // // case 'visualiser': // //Inclusions // include ("../lib/session.php"); //Récupération des variables de sessions // include ("../lib/functions.php"); //On inclus seulement les fonctions sans construire de page // include ("functions.php"); //Fonctions du module
function rapide1($id_user, $service, $titou) { if ($id_user) { //Si l'utilisateur est connecté, il voit les articles en rapport avec son niveau //Chargement des données utilisateurs $recordSalaries = new DatabaseRecord("salaries", $id_user); $date_creation_salaries = $recordSalaries->date_creation_salaries; //echo $_SESSION["date_creation_salaries"]; /* systeme d'exclusion ou non des infos deja lu */ // $result2 ="SELECT * FROM modes, articles left join lu on (articles.num_article = lu.id_art) and (lu.id_user = $id_user) WHERE lu.id_art is null and (modes.id_user = $id_user)"; $result2 = "SELECT * FROM articles left join lu on (articles.num_article = lu.id_art) and (lu.id_user = {$id_user}) WHERE lu.id_art is null "; /* retrouver le niveau du user dans la table mode et sortir les articles en fonction de ce nivo modes */ //$result2 .= "and (articles.id_art_serv = '$service')"; //$result2 .= "and (articles.id_art_serv = modes.id_service)"; //$result2 .= "and (articles.nivo_conf <= modes.serv_conf)"; $result2 .= "and (articles.publica != 0)"; $result2 .= "and (articles.diffusion = '')" . "and (articles.date_modif>'" . $date_creation_salaries . "') "; /* rajouter dans l'order l'ordre souhaité par l'utilisateur */ $result2 .= "order by date_modif desc"; } else { ////Si il est déconnecté, il ne voit seulement que les articles de niveau 1 des deux derniers mois { $date_limite = date("Y-m-d", mktime(0, 0, 0, date("m") - 4, date("d"), date("Y"))); /* systeme d'exclusion ou non des infos deja lu */ $result2 = "SELECT * FROM articles WHERE "; /* retrouver le niveau du user dans la table mode et sortir les articles en fonction de ce nivo modes */ //$result2 .= "(articles.id_art_serv = '$service')"; //$result2 .= "and (articles.id_art_serv = modes.id_service)"; //$result2 .= "and (articles.nivo_conf = '1') "; $result2 .= " (articles.nivo_conf = '1') "; $result2 .= "and (articles.publica != 0) "; $result2 .= "and (articles.diffusion = '') "; $result2 .= "and (articles.date_modif > '{$date_limite} 00:00:00' )"; /* rajouter dans l'order l'ordre souhaité par l'utilisateur */ $result2 .= "order by date_modif desc"; } //echo $result2; $requete = DatabaseOperation::query("{$result2}"); $total = mysql_num_rows($requete); echo "<table width=\"100%\" border=\"0\" cellspacing=\"4\"><tr>"; if ($requete = @DatabaseOperation::query("{$result2}")) { while ($rows = mysql_fetch_array($requete)) { echo "<tr bgcolor=\"#FF3333\" class=\"logFFCC66\">"; /* affichage unique du service */ $variable = Lib::isDefined("variable", 0); if ($variable != 1) { $variable = 1; $servik = DatabaseOperation::query("select * from services where id_service = '{$rows['id_art_serv']}'"); $rok = mysql_fetch_array($servik); echo "{$rok['intitule_ser']}"; } /* ------------ formatage date ------------- */ $date = $rows["date_crea"]; $jour = substr($date, 8, 2); $mois = substr($date, 5, 2); $annee = substr($date, 0, 4); $date = $jour . "/" . $mois . "/" . $annee; $titre_art = stripslashes($rows["titre_art"]); $sujet = stripslashes($rows["sujet"]); echo "<td class=\"titrtabl\" width=\"60\" bgcolor=\"#FFFFCC\">{$date}</td>"; echo "<td class=\"titrtabl\" width=\"43%\" bgcolor=\"#FFFFCC\">{$titre_art}</td>"; echo "<td class=\"titrtabl\" width=\"10%\" bgcolor=\"#FFFFCC\">"; $ab = DatabaseOperation::query("select * from salaries where id_user='******'"); $ligne = mysql_fetch_array($ab); echo $ligne["nom"] . " " . $ligne["prenom"] . "</td>"; echo "<td class=\"titrtabl\" width=\"30%\" bgcolor=\"#FFFFCC\">{$sujet}<br>"; $nva = "nouveaute"; taille2($rows["taille"], $rows["num_article"], "", $nva); echo "lien sur l'article</a></td>"; echo "<td class=\"titrtabl\" width=\"5%\" bgcolor=\"#FFFFCC\">" . $rows["nivo_conf"] . "</td>"; echo "<td align=\"center\" bgcolor=\"#FFFFCC\" width=\"2%\"><input type=\"checkbox\" name=\"" . $rows["num_article"] . "\" value=\"1\"></td>"; echo "<input type=hidden name=\"ids[]\" value=\"" . $rows["num_article"] . "\">"; } } echo "</tr></table>"; return $total; }
private static function recuperationDesDonneesDeRecherche($module, $url_page_depart, $module_table, $champ_retour, $nb_limite_resultat, $nbligne, $nbcol, $champ_recherche, $operateur_recherche, $texte_recherche, $champ_courant, $operateur_courant, $texte_courant, $nb_col_courant, $nb_ligne_courant, $ajout_col) { // Dictionnaire des variables $nbligne; // Nombre de lignes totales $nbcol; // nombre de colonnes de la ligne courante $champ_recherche; //tableau des identifiants des champs choisis $operateur_recherche; //tableau des identifiants des operateurs choisis $texte_recherche; //table au des valeurs entrées par l'utilisateur $champ_courant; // Valeur de l'identifiant du champ qui vient juste d'etre saisie par l'utilisateur $operateur_courant; // Valeur de l'identifiant de l'operateur qui vient juste d'etre saisie par l'utilisateur $texte_courant; // Valeur du texte qui vient juste d'etre saisie par l'utilisateur $nb_col_courant; // numero de la colonne courante $nb_ligne_courant; // numero de la ligne courante $ajout_col; //si $ajout_col = 1 : ajout d'une colonne dans la ligne courante $champ_retour; $champ_retour; // Initialisation du nombre de lignes et de colones à 1 si il n'est pas déjà défini $tableau_affichage = Lib::isDefined("tableau_affichage"); $name_operateur_recherche = Lib::isDefined("name_operateur_recherche"); $return = Lib::isDefined("return"); // Initialisation du nombre de lignes et de colones à 1 //si il n'est pas déjà défini if (!isset($nbligne) || $nbligne == '') { $nbligne = 1; } if (!isset($nbcol) || $nbcol == '') { $nbcol = 1; } $url = substr($url_page_depart, 1); $url = substr($url, 0, strlen($url) - 1); // Découpage des tableaux //Les lignes étant séparées par || et les colonnes par ;; $champ_recherche = explode('||', $champ_recherche); $operateur_recherche = explode('||', $operateur_recherche); $texte_recherche = explode('||', $texte_recherche); for ($i = 0; $i < $nbligne; $i++) { $champ_recherche[$i] = explode(';;', $champ_recherche[$i]); $operateur_recherche[$i] = explode(';;', $operateur_recherche[$i]); $texte_recherche[$i] = explode(';;', $texte_recherche[$i]); } // insertion de la valeur choisie par l'utilisateur dans une //des listes déroulantes if ($champ_courant != '') { $champ_recherche[$nb_ligne_courant][$nb_col_courant] = $champ_courant; } if ($operateur_courant != '') { $operateur_recherche[$nb_ligne_courant][$nb_col_courant] = $operateur_courant; } // Transformation des tableaux en une chaine de caratères //Les lignes étant séparées par || et les colonnes par ;; // on les stoke dans des tableaux auxiliaires if ($nbligne == 1) { // Si une seule ligne if ($champ_recherche[0][0] != '') { $champ_recherche_aux = implode(';;', $champ_recherche[0]); } if ($operateur_recherche[0][0] != '') { $operateur_recherche_aux = implode(';;', $operateur_recherche[0]); } if ($texte_recherche[0][0] != '') { $texte_recherche_aux = implode(';;', $texte_recherche[0]); } } else { for ($i = 0; $i < $nbligne; $i++) { $champ_recherche_aux .= implode(';;', $champ_recherche[$i]); $champ_recherche_aux .= '||'; $operateur_recherche_aux .= implode(';;', $operateur_recherche[$i]); $operateur_recherche_aux .= '||'; $texte_recherche_aux .= implode(';;', $texte_recherche[$i]); $texte_recherche_aux .= '||'; } } // Initialisation des compteurs pour les lignes et pour les colonnes $cpt_col = 0; // compteur sur les colonnes $cpt_ligne = 0; // compteur sur les lignes while ($cpt_ligne < $nbligne) { // parcours des lignes // Calcul du nombre de colones de la ligne courante $nbcol = count($champ_recherche[$cpt_ligne]); if ($cpt_ligne == $nb_ligne_courant) { $nbcol = count($champ_recherche[$cpt_ligne]) + $ajout_col; } if (!isset($nbcol) || $nbcol == '') { $nbcol = 1; } while ($cpt_col < $nbcol) { // parcours des colonnes $tableau_affichage[$cpt_ligne][$cpt_col] = ""; // Nom du formulaire courant $name_form = 'recherche_' . $cpt_ligne . '_' . $cpt_col; // creation du formulaire $tableau_affichage[$cpt_ligne][$cpt_col] .= "<form name={$name_form} method=post action=../lib/action.php>"; // nom de la premiere liste deroulante $name_champ_recherche = "selection_champ_recherche_" . $cpt_ligne . '_' . $cpt_col; // $liste_champ = "<select name=$name_champ_recherche onChange=lien_selection('$name_form','$name_champ_recherche')>"; // creation de la liste déroulante $liste_champ = "<select name={$name_champ_recherche} onChange=lien_selection('{$name_form}','{$name_champ_recherche}','{$name_operateur_recherche}')>"; // nom de la table ou sont repertorié les champs possibles de recherches $t = $module_table; $t .= '_moteur_de_recherche'; // pour les champs avec priorité haute $desc = " SELECT * FROM " . $t . " WHERE priorite_moteur_de_recherche = 1" . " ORDER BY nom_champ_usuel_moteur_de_recherche "; $resultat = DatabaseOperation::convertSqlStatementKeyAndOneFieldToArray($desc) or die('Erreur SQL !' . $desc . '<br>' . PDO::errorInfo()); if (!strstr($url_page_depart, '?')) { $lien = $url . "?url_page_depart={$url_page_depart}&nb_limite_resultat={$nb_limite_resultat}&champ_recherche='{$champ_recherche_aux}'&operateur_recherche='{$operateur_recherche_aux}'&texte_recherche='{$texte_recherche_aux}'&nbligne={$nbligne}&nbcol={$nbcol}&nb_col_courant={$cpt_col}&nb_ligne_courant={$cpt_ligne}&champ_courant="; } else { $lien = $url . "&url_page_depart={$url_page_depart}&nb_limite_resultat={$nb_limite_resultat}&champ_recherche='{$champ_recherche_aux}'&operateur_recherche='{$operateur_recherche_aux}'&texte_recherche='{$texte_recherche_aux}'&nbligne={$nbligne}&nbcol={$nbcol}&nb_col_courant={$cpt_col}&nb_ligne_courant={$cpt_ligne}&champ_courant="; } // remplissage de la première liste déroulante $liste_champ .= "<option value" . $lien; $liste_champ .= "=>Selectionnez </option>"; foreach ($resultat as $enr) { if ($champ_recherche[$cpt_ligne][$cpt_col] != '') { // Si la categorie est déja selectionnée if ($enr[0] == $champ_recherche[$cpt_ligne][$cpt_col]) { $selected = 'selected'; } else { $selected = ''; } } $liste_champ .= "<option value=" . $lien . $enr[0] . " " . $selected; $liste_champ .= ">{$enr['3']}</option>"; } $liste_champ .= "<option value=" . $lien; $liste_champ .= ">==================================</option>"; // pour les autres champs $desc = " SELECT *\n FROM {$t}\n WHERE priorite_moteur_de_recherche = 0\n order by nom_champ_usuel_moteur_de_recherche"; $resultat = DatabaseOperation::convertSqlStatementKeyAndOneFieldToArray($desc) or die('Erreur SQL !' . $desc . '<br>' . PDO::errorInfo()); foreach ($resultat as $enr) { if ($champ_recherche[$cpt_ligne][$cpt_col] != '') { // Si la categorie est déja selectionnée if ($enr[0] == $champ_recherche[$cpt_ligne][$cpt_col]) { $selected = 'selected'; } else { $selected = ''; } } if (!strstr($url_page_depart, '?')) { $lien = $url . "?url_page_depart={$url_page_depart}&nb_limite_resultat={$nb_limite_resultat}&champ_recherche={$champ_recherche_aux}&operateur_recherche={$operateur_recherche_aux}&texte_recherche={$texte_recherche_aux}&nbligne={$nbligne}&nbcol={$nbcol}&nb_col_courant={$cpt_col}&nb_ligne_courant={$cpt_ligne}&champ_courant="; } else { $lien = $url . "&url_page_depart={$url_page_depart}&nb_limite_resultat={$nb_limite_resultat}&champ_recherche={$champ_recherche_aux}&operateur_recherche={$operateur_recherche_aux}&texte_recherche={$texte_recherche_aux}&nbligne={$nbligne}&nbcol={$nbcol}&nb_col_courant={$cpt_col}&nb_ligne_courant={$cpt_ligne}&champ_courant="; } $liste_champ .= "<option value=" . $lien . $enr[0] . " " . $selected; $liste_champ .= ">{$enr['3']}</option>"; } $liste_champ .= "</select>"; $tableau_affichage[$cpt_ligne][$cpt_col] .= $liste_champ; // Création de la deuxieme liste deroulante en fonction de la première // Elle va contenir les operateurs de recherches // nom de la liste deroulante $name_operateur_recherche = "selection_operateur_recherche_" . $cpt_ligne . '_' . $cpt_col; // creation de la liste $liste_operateur = "<select name={$name_operateur_recherche} onChange=lien_selection('{$name_form}','{$name_operateur_recherche}')>"; $liste_operateur .= "<option value=''>Selectionnez </option>"; if ($champ_recherche[$cpt_ligne][$cpt_col] != '') { // si une valeur a ete saisie dans la premiere liste // recuperation du nom de la table et du nom du champ // sur lequel on veut faire la recherche $t = $module_table; $t .= '_moteur_de_recherche'; $aux = 'table_'; //$aux.=$t; $aux .= 'moteur_de_recherche'; $aux2 = 'nom_champ_'; //$aux2.=$t; $aux2 .= 'moteur_de_recherche'; $aux3 = 'id_'; //$aux3.=$t; $aux3 .= 'moteur_de_recherche'; $aux4 = str_replace("'", "", $champ_recherche[$cpt_ligne][$cpt_col]); $desc5 = " SELECT " . $aux . "," . $aux2 . " FROM " . $t . " WHERE " . $aux3 . " = " . $aux4 . ""; $result1 = DatabaseOperation::convertSqlStatementKeyAndOneFieldToArray($desc5) or die('Erreur SQL !' . $desc5 . '<br>' . PDO::errorInfo()); foreach ($result1 as $rows1) { $aux5 = $rows1; } $nom_table = $aux5[0]; $nom_champ = $aux5[1]; // Chercher le type de $nom_champ dans $nom_table $rech_type = " SELECT " . $nom_champ . " FROM " . $nom_table; $rech_type_res = DatabaseOperation::queryPDO($rech_type) or die('Erreur SQL !' . $rech_type . '<br>' . PDO::errorInfo()); // type du champ sur lequel on fait la recherche $type = $rech_type_res->getColumnMeta(0); /** * le type de champs diffère entre PDO et Mysql modifier la table intranet_moteur_de_recherche_type_de_champ */ // recherche de l'identifiant du type : $rech_id_type = " SELECT id_intranet_moteur_de_recherche_type_de_champ\nFROM intranet_moteur_de_recherche_type_de_champ\nWHERE type_intranet_moteur_de_recherche_type_de_champ = '" . $type["native_type"] . "'"; $rech_id_type_res = DatabaseOperation::convertSqlStatementKeyAndOneFieldToArray($rech_id_type) or die('Erreur SQL !' . $rech_id_type . '<br>' . PDO::errorInfo()); foreach ($rech_id_type_res as $rowsrech_id_type_res) { $tmp = $rowsrech_id_type_res; } // identifiant du type du champ sur lequel on fait la recheche $id_type = $tmp[0]; // en fonction du type du champ recherche des operateurs de recherche // possibles $sql = " SELECT op_intranet_moteur_de_recherche_association_type_operateur\nFROM intranet_moteur_de_recherche_association_type_operateur\nWHERE type_intranet_moteur_de_recherche_association_type_operateur = '{$id_type}'"; $resultat2 = DatabaseOperation::convertSqlStatementKeyAndOneFieldToArray($sql) or die('Erreur SQL !' . $sql . '<br>' . PDO::errorInfo()); foreach ($resultat2 as $enr2) { $sql2 = " SELECT intranet_moteur_de_recherche_operateur_sur_champ.*\nFROM intranet_moteur_de_recherche_operateur_sur_champ\nWHERE id_intranet_moteur_de_recherche_operateur_sur_champ = '{$enr2['0']}'"; $resultat3 = DatabaseOperation::convertSqlStatementKeyAndOneFieldToArray($sql2) or die('Erreur SQL !' . $sql2 . '<br>' . PDO::errorInfo()); foreach ($resultat3 as $enr3) { if ($operateur_recherche[$cpt_ligne][$cpt_col] != '') { if ($enr3[0] == $operateur_recherche[$cpt_ligne][$cpt_col]) { $selected = 'selected'; } else { $selected = ''; } } } // remplissage de la deuxieme liste deroulante if (!strstr($url_page_depart, '?')) { $lien = $url . "?url_page_depart=" . $url_page_depart . "&nb_limite_resultat=" . $nb_limite_resultat . "&champ_recherche=" . $champ_recherche_aux . "&operateur_recherche=" . $operateur_recherche_aux . "&texte_recherche=" . $texte_recherche_aux . "&nbligne=" . $nbligne . "&nbcol=" . $nbcol . "&nb_col_courant=" . $cpt_col . "&nb_ligne_courant=" . $cpt_ligne . "&operateur_courant="; } else { $lien = $url . "&url_page_depart=" . $url_page_depart . "&nb_limite_resultat=" . $nb_limite_resultat . "&champ_recherche=" . $champ_recherche_aux . "&operateur_recherche=" . $operateur_recherche_aux . "&texte_recherche=" . $texte_recherche_aux . "&nbligne=" . $nbligne . "&nbcol =" . $nbcol . "&nb_col_courant=" . $cpt_col . "&nb_ligne_courant=" . $cpt_ligne . "&operateur_courant="; } $liste_operateur .= "<option value = '" . $lien . $enr3[0] . "' " . $selected; $liste_operateur .= " >{$enr3['1']}</option>"; } //création de l'espace de saisie // nom de l'espace de saisie $name_val = 'val_' . $cpt_ligne . '_' . $cpt_col; // si on a deja saisie une valeur : $temp = $texte_recherche[$cpt_ligne][$cpt_col]; // on regarde si c'est une date if (strchr($temp, '-')) { $a = substr($temp, 0, 4); $mois = substr($temp, 5, -3); $j = substr($temp, 8, 10); } switch (TRUE) { case $operateur_recherche[$cpt_ligne][$cpt_col] == 9: //Liste $req_temp = "SELECT DISTINCT {$nom_champ} FROM {$nom_table} ORDER BY {$nom_champ}"; $result_temp = DatabaseOperation::convertSqlStatementKeyAndOneFieldToArray($req_temp); $saisie_utilisateur = "<select size = 1 name = {$name_val} value = {$temp}>"; $verrou = 0; $oui_non = 1; foreach ($result_temp as $rows) { if ($rows[0] == $temp) { //echo "$temp"; $select = "selected"; } else { $select = ""; } if ($rows[0] != "1" and $rows[0] != "0") { $oui_non = 0; } //Vérification de la tailles des entées if (strlen($rows[0]) < 50) { if ($rows[0] != "") { $saisie_utilisateur .= "<option value = {$rows['0']} {$select}> {$rows['0']} </option>"; } } else { $verrou = 1; } } $saisie_utilisateur .= "</select>"; if ($verrou) { $saisie_utilisateur .= "<img src = images/exclamation.png title = 'Certaines données ne peuvent pas être affichées car trop grandes' width = 20 height = 20 border = 0 />"; } //Bouton radio Oui/Non if ($oui_non) { switch ($temp) { case 0: $checked_oui = ""; $checked_non = "selected"; break; case 01: $checked_oui = "selected"; $checked_non = ""; break; } $saisie_utilisateur = "<select size = 1 name = {$name_val} value = {$temp}>" . "<option value = 1 {$checked_oui}>Oui</option>" . "<option value = 0 {$checked_non}>Non</option>" . "</select>"; } break; case $id_type == "5": // si le type du champ choisi dans la premiere liste deroulante // est une date on affiche 3 cases pour la saisie $name_val_j = $name_val . '_jour'; $saisie_utilisateur = "<INPUT type = 'text' size = 2 maxlength = 2 name = '{$name_val_j}'value = {$j}>"; $saisie_utilisateur .= "/"; $name_val_m = $name_val . '_mois'; $saisie_utilisateur .= "<INPUT type = 'text' size = 2 maxlength = 2 name = '{$name_val_m}'value = {$mois}>"; $saisie_utilisateur .= "/"; $name_val_a = $name_val . '_annee'; $saisie_utilisateur .= "<INPUT type = 'text' size = 4 maxlength = 4 name = '{$name_val_a}'value = {$a}>"; break; default: // sinon on affiche un champ de texte $saisie_utilisateur = "<INPUT type = 'text' size = 10 name = '{$name_val}' value = '{$temp}'>"; } } $liste_operateur .= "</select>"; $tableau_affichage[$cpt_ligne][$cpt_col] .= $liste_operateur; $tableau_affichage[$cpt_ligne][$cpt_col] .= $saisie_utilisateur; $tableau_affichage[$cpt_ligne][$cpt_col] .= "<br>"; $action = 'ajout'; $tableau_affichage[$cpt_ligne][$cpt_col] .= "<input type = hidden name = url_page_depart value = {$url_page_depart}>"; $tableau_affichage[$cpt_ligne][$cpt_col] .= "<input type = hidden name = module value = {$module}>"; $tableau_affichage[$cpt_ligne][$cpt_col] .= "<input type = hidden name = module_table value = {$module_table}>"; $tableau_affichage[$cpt_ligne][$cpt_col] .= "<input type = hidden name = champ_retour value = {$champ_retour}>"; $tableau_affichage[$cpt_ligne][$cpt_col] .= "<input type = hidden name = action value = {$action}>"; $tableau_affichage[$cpt_ligne][$cpt_col] .= "<input type = hidden name = champ_recherche value = {$champ_recherche_aux}>"; $tableau_affichage[$cpt_ligne][$cpt_col] .= "<input type = hidden name = operateur_recherche value = {$operateur_recherche_aux}>"; $tableau_affichage[$cpt_ligne][$cpt_col] .= "<input type = hidden name = texte_recherche value = {$texte_recherche_aux}>"; $tableau_affichage[$cpt_ligne][$cpt_col] .= "<input type = hidden name = nb_ligne_courant value = {$cpt_ligne}>"; $tableau_affichage[$cpt_ligne][$cpt_col] .= "<input type = hidden name = nb_col_courant value = {$cpt_col}>"; $tableau_affichage[$cpt_ligne][$cpt_col] .= "<input type = hidden name = texte_courant value = {$texte_courant}>"; $tableau_affichage[$cpt_ligne][$cpt_col] .= "<input type = hidden name = nbligne value = {$nbligne}>"; $tableau_affichage[$cpt_ligne][$cpt_col] .= "<input type = hidden name = nbcol value = {$nbcol}>"; $tableau_affichage[$cpt_ligne][$cpt_col] .= "<input type = hidden name = name_val value = {$name_val}>"; $tableau_affichage[$cpt_ligne][$cpt_col] .= "<input type = hidden name = nb_limite_resultat value = {$nb_limite_resultat}>"; // creation des boutons de choix une fois la saisie de la recherche terminée $tableau_affichage[$cpt_ligne][$cpt_col] .= "<input type = radio value = et name = boutton_operateur>Et<br>"; $tableau_affichage[$cpt_ligne][$cpt_col] .= "<input type = radio value = ou name = boutton_operateur >Ou<br>"; $tableau_affichage[$cpt_ligne][$cpt_col] .= "<input type = radio value = Ou_avec name = boutton_operateur >Ou (avec recopie)<br>"; $tableau_affichage[$cpt_ligne][$cpt_col] .= "<input type = radio value = 'Suppr'name = boutton_operateur >Supprimer<br>"; $tableau_affichage[$cpt_ligne][$cpt_col] .= "<input type = radio value = fin name = boutton_operateur checked>Fin de saisie<br>"; $tableau_affichage[$cpt_ligne][$cpt_col] .= "<input type = submit value = Ok name = ok>"; $tableau_affichage[$cpt_ligne][$cpt_col] .= "</form>"; $cpt_col++; } $cpt_col = 0; $cpt_ligne++; } //$tableau_affichage[$cpt_ligne][$cpt_col].= '</form>'; $tableau_affichage[$cpt_ligne][$cpt_col] = '</form>'; /* Création de l'interface HTML */ // affichage du formulaire $return .= '<table class=contenu>'; for ($i = 0; $i < $nbligne; $i++) { $return .= '<tr>'; for ($j = 0; $j < count($tableau_affichage[$i]); $j++) { $return .= '<td>'; $return .= $tableau_affichage[$i][$j]; $return .= "</td>"; if ($j < count($tableau_affichage[$i]) - 1) { $op = 'ET'; $return .= '<td>'; $return .= "<img src = ../lib/moteur_de_recherche_image.php?op = {$op}>"; $return .= '</td>'; } } $return .= '</tr>'; if ($i < $nbligne - 1) { $op = 'OU'; $return .= '<td>'; $return .= "<img src = ../lib/moteur_de_recherche_image.php?op = {$op}><br><br>"; $return .= '</td>'; } } $return .= '</table>'; return $return; }
<?php //include ("../lib/securite.php"); require_once "../inc/main.php"; //require_once ("../lib/session.php"); //echo "<meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf8\">"; //header('Content-type: text/html; charset=utf-8'); //header('Content-type: text/html; charset=iso-8859-1'); $action = Lib::isDefined("action"); $id_user = Lib::isDefined("id_user"); $service = Lib::isDefined("service"); $compte = Lib::isDefined("compte"); $nva = Lib::isDefined("nva"); if ($action == "vitelu") { $existe = DatabaseOperation::query("select * from lu where ((id_art='{$ids[$i]}') and (id_user='******'))"); $nb1 = mysql_numrows($existe); if (!$nb1) { for ($i = 0; $i < count($ids); $i++) { if (isset(${$ids[$i]})) { DatabaseOperation::query("INSERT INTO lu(id_art ,id_user, date) VALUES ('{$ids[$i]}','{$id_user}', NOW())"); } } } else { for ($i = 0; $i < count($ids); $i++) { if (isset(${$ids[$i]})) { DatabaseOperation::query("update lu set date = now() where ((id_art='{$ids[$i]}') and (id_user='******'))"); } } } } ?>
<?php $id_user = Lib::isDefined('id_user'); $repere = Lib::isDefined('repere'); $prenom = Lib::isDefined('prenom'); $lieu_geo = Lib::isDefined('lieu_geo'); $globalConfig = new GlobalConfig(); $message = $globalConfig->getConf()->getApplicationLogoMessage(); $logo = $globalConfig->getConf()->getApplicationLogo(); /** * @TODO A quoi sert cette partie ? */ if ($repere != '') { $position = $repere; } /** * Personnalisation selon la société de rattachement. */ if ($globalConfig->getConf()->getExecEnvironment() == EnvironmentConf::ENV_PRD) { switch ($lieu_geo) { case 11: $logo = 'logo_exploitation_ati.png'; break; case 12: $logo = 'logo_exploitation_epc.png'; break; } } //Pour les grandes occasions !! //if (0) { // //Joyeux Noel
// include ("../lib/debut_page.php"); //Construction d'une nouvelle // if (isset($menu)) //Si existant, utilisation du menu demandé // { //en variable // include ("./$menu"); // } // else // { // include ("./menu_principal.inc"); //Sinon, menu par défaut // } require_once '../inc/main.php'; print_page_begin($disable_full_page, $menu_file); flush(); } //Fin de la sélection du mode d'affichage de la page $planning_presence_modification = Acl::getValueAccesRights('planning_presence_modification'); $selection_semaine_en_cours = Lib::isDefined('selection_semaine_en_cours'); /* Si la page peut être appelée depuis n'importe quel module, décommentez la ligne suivante */ // $module=''; //Inclusions //Sélection du mode de visualisation de la page /* switch ($output) { case 'visualiser': //Inclusions include ("../lib/session.php"); //Récupération des variables de sessions include ("../lib/functions.php"); //On inclus seulement les fonctions sans construire de page include ("functions.php"); //Fonctions du module
// include ("../lib/debut_page.php"); //Construction d'une nouvelle // if (isset($menu)) //Si existant, utilisation du menu demandé // { //en variable // include ("./$menu"); // } // else // { // include ("./menu_principal.inc"); //Sinon, menu par défaut // } require_once '../inc/main.php'; print_page_begin($disable_full_page, $menu_file); flush(); } //Fin de la sélection du mode d'affichage de la page $planning_presence_modification = Acl::getValueAccesRights('planning_presence_modification'); $id_groupe = Lib::isDefined('id_groupe'); //Autorisation de d'accéder à cette page: if ($planning_presence_modification == 0) { header("Location: none.php"); } //Requête donnant la dernière semaine saisie $req1 = "SELECT * FROM planning_presence_semaine_visible "; $req1 .= "ORDER BY annee_planning_presence_semaine_visible DESC "; $req1 .= ", id_planning_presence_semaine_visible DESC"; $result1 = mysql_query($req1); if (mysql_num_rows($result1)) { $derniere_semaine = mysql_result($result1, 0, id_planning_presence_semaine_visible); $derniere_annee = mysql_result($result1, 0, annee_planning_presence_semaine_visible); } else { $derniere_semaine = '0'; $derniere_annee = '2003';
public static function getColumnInfoLabelWithHelp($table_name, $field_name, $show_help = true) { /* Dictionnaire des variables: * ************************** */ //$conf = new conf(); //$conf = $_SESSION["globalConfig"]; $bdd = $_SESSION["globalConfig"]->mysql_database_name; //Variable Globale definissant le nom de la base de donnees MySQL $module = $_SESSION["module"]; $nom_intranet_actions = Lib::isDefined("nom_intranet_actions"); $comment = ""; $show_help; //0=Pas d'aide, 1=Aide HTML popup activée $nom_table = $table_name; //Nom de la table du champ à charger $nom_variable = $field_name; //Nom du champ à charger $href_popup = "../lib/popup-mysql_field_desc.php"; $href_javascript_begin = "javascript:; onClick=MM_openBrWindow('"; $href_javascript_end = "','pop','scrollbars=no,width=510,height=550')"; $default_message = "Aucune explication communiquée par le responsable de cette information."; //Corps de la fonction $id_intranet_description = DatabaseDescription::getColumnHelpId($nom_table, $nom_variable); $comment = DatabaseDescription::getColumnLabel($nom_table, $nom_variable); //Recherche des informations d'aide en ligne (format Pop-up)F $result_explication = DatabaseDescription::getColumnHelp($nom_table, $nom_variable); if ($result_explication == "") { //Génération du manuel $explication_intranet_description = $default_message; $request = "UPDATE " . $nom_table . " SET `explication_intranet_column_info`='" . $explication_intranet_description . "' " . " WHERE `id_intranet_column_info`='" . $id_intranet_description . "' "; DatabaseOperation::execute($request); } //Ajout des liens hypertextes $return .= "<a title=\"" . $explication_intranet_description . "\" " . "href=" . $href_javascript_begin . $href_popup . "?id_intranet_description=" . $id_intranet_description . "&disable_full_page=1" . "&nom_intranet_actions=" . $nom_intranet_actions . "&module=" . $module . "&champ_intranet_description=" . $nom_variable . $href_javascript_end . " CLASS=link1 />" . $comment . "</a>"; return $return; }
if ($globalConfig->getAuthenticatedUser()) { $id_user = $globalConfig->getAuthenticatedUser()->getKeyValue(); } $fta_modification = Acl::getValueAccesRights('fta_modification'); $recherche = Lib::getParameterFromRequest("recherche"); if ($recherche == "0") { $message = UserInterfaceMessage::FR_WARNING_RECHERE . ModuleConfig::VALUE_MAX_PAR_PAGE; $redirection = "recherche.php"; Lib::showMessage("Erreur", $message, $redirection); } $type_recherche = Lib::getParameterFromRequest("type_recherche"); $search_table = Lib::isDefined("search_table"); $search_id = Lib::isDefined("search_id"); $search_req = Lib::isDefined("search_req"); $operateur_recherche = Lib::isDefined("operateur_recherche"); $champ_recherche = Lib::isDefined("champ_recherche"); $idFtaRoleEncoursDefault = FtaRoleModel::getKeyNameOfFirstRoleByIdUser($id_user); if ($fta_modification) { } else { $synthese_action = FtaEtatModel::ETAT_AVANCEMENT_VALUE_ALL; $idFtaRoleEncoursDefault = '0'; } $idFtaRole = Lib::getParameterFromRequest(FtaRoleModel::KEYNAME, $idFtaRoleEncoursDefault); //$environnementConf = new EnvironmentConf(); //$dossierUrL = $environnementConf->getUrlRoot(); //if(!$dossierUrL){ $dossierUrL = $globalConfig->getConf()->getUrlRoot(); //} /* ----------------- ACTION A TRAITER
//$module_consultation = $_SESSION['module'] . '_consultation'; ////Sécurisation du chapitre Tarif //if ($module_consultation <> 1 and $nom_fta_chapitre_encours == 'tarif') { // include ('../lib/acces_interdit.php'); //} if ($idFta) { /** * Récupérations des paramètres */ $checkArcadiaData = Fta2ArcadiaTransactionModel::isIdArcadiaTransactionActif($idFta); $id_fta_chapitre_encours = Lib::getParameterFromRequest('id_fta_chapitre_encours', '1'); $synthese_action = Lib::isDefined('synthese_action'); $comeback = Lib::isDefined('comeback'); $idFtaEtat = Lib::isDefined(FtaEtatModel::KEYNAME); $abreviationFtaEtat = Lib::isDefined(FtaEtatModel::FIELDNAME_ABREVIATION); $idFtaRole = Lib::isDefined(FtaRoleModel::KEYNAME); $ftaModification = Acl::getValueAccesRights('fta_modification'); $id_fta_chapitre = $id_fta_chapitre_encours; /** * Initilisation */ $ftaModel = new FtaModel($idFta); //Rien ne garantie que l'utilisateur est mis un idFta existant $idWorkflowFtaEncours = $ftaModel->getDataField(FtaModel::FIELDNAME_WORKFLOW)->getFieldValue(); $idSiteDeProduction = $ftaModel->getDataField(FtaModel::FIELDNAME_SITE_PRODUCTION)->getFieldValue(); /** * Ticket 49823 en 3.1 activation/désactivation d'un workflow */ // FtaWorkflowModel::checkActifWorkflow($idWorkflowFtaEncours); /** * Verification des droits d'accès sur une Fta en modification
//Page qui a demandé l'authentification $_SERVER['REQUEST_METHOD']; //Méthode d'envoi des informations: la méthode GET n'est pas recommandée car //on voit le login et le mot de passe dans la barre d'adresse !! //Variables envoyées par la page d'appel $globalConfig = new GlobalConfig(); $bdd = $globalConfig->getConf()->getMysqlDatabaseName(); $id_user = Lib::isDefined('id_user'); $login = Lib::isDefined('login'); $num_log = Lib::isDefined('num_log'); $pass = Lib::isDefined('pass'); $position = Lib::isDefined('position'); $session = Lib::isDefined('session'); $session_id = session_id(); $tentative = Lib::isDefined('tentative'); $identite = Lib::isDefined('identite'); $mysql_table_authentification = $globalConfig->getConf()->getMysqlDatabaseAuthentificationTableName(); //Démarrage de la session si celle-ci n'a pas été démarrée. if (empty($session_id)) { session_start(); } /* --------------------------------- destruction de la session --------------------------------- */ if ($session == 'logout') { if ($id_user) { // DatabaseOperation::execute( // 'UPDATE ' . LogModel::TABLENAME . ' SET ' . LogModel::FIELDNAME_DATE . ' = now()' // . ' WHERE ((' . LogModel::KEYNAME . '=\'' . $num_log . '\')' // . ' AND (' . LogModel::FIELDNAME_ID_USER . '=' . $id_user . '))' // );
<?php // require ("../lib/session.php"); // require("../lib/functions.php"); require_once "../inc/main.php"; $login = Lib::isDefined('login'); $pass = Lib::isDefined('pass'); $id_user = Lib::isDefined('id_user'); $insertion = Lib::isDefined('insertion'); $lien_1_type = Lib::isDefined('lien_1_type'); $lien_2_type = Lib::isDefined('lien_2_type'); $lien_3_type = Lib::isDefined('lien_3_type'); $id_service = Lib::isDefined('id_service'); $choixconf = Lib::isDefined('choixconf'); identification1("salaries", $login, $pass); // require ("functions.php"); // require ("functions.js"); if ($insertion == 'insertion') { // Recherche du plus grand numéro d'article dans la table afin de pouvoir // differencier l'article que l'on vient d'inserer.*/ $req = "select max(num_article) from articles"; $result = DatabaseOperation::query($req); if ($result != false) { $max = mysql_result($result, 0, 0); } /* Insertion dans la table article */ if ($lien_1_type == 'rien') { $lien_1_cont = null; $lien_1_txt = null; } if ($lien_2_type == 'rien') {
<?php $id_service = Lib::isDefined("id_service"); require_once '../inc/php.php'; $globalConfig = new GlobalConfig(); $logo = $globalConfig->getConf()->getApplicationLogo(); ?> <TABLE WIDTH="150" BORDER="0" CELLPADDING="0" CELLSPACING="0" valign="top" bgcolor="FFE5B2"> <TR bgcolor="FFCC66"> <TD WIDTH="10" HEIGHT="1" bgcolor="FFCC66"><img src=../lib/images/espaceur.gif width="1" height="1" > </TD> <TD WIDTH="29" HEIGHT="1"><img src=../lib/images/espaceur.gif width="1" height="1"> </TD> <TD WIDTH="65" HEIGHT="1"> </TD> <TD WIDTH="36" HEIGHT="1"><img src=../lib/images/espaceur.gif width="1" height="1"> </TD> <TD WIDTH="11" HEIGHT="1"><img src=../lib/images/espaceur.gif width="1" height="1"> </TD> </TR> <tr bgcolor="FFCC66"> <td width="10" height="1" bgcolor="FFCC66"><img src=../lib/images/espaceur.gif width="1" height="1"> </td> <td width="29" height="1" bgcolor="FFCC66"><img src=../lib/images/espaceur.gif width="1" height="1"> </td> <td width="65" height="1" bgcolor="FFCC66"> </td> <td width="36" height="1" bgcolor="FFCC66"><img src=../lib/images/espaceur.gif width="1" height="1"> </td> <td width="10" height="1" bgcolor="FFCC66"><img src=../lib/images/espaceur.gif width="1" height="1"> </td> </tr>
<?php //Inclusions //include ("../lib/session.php"); //include ("../lib/functions.php"); //include ("./functions.php"); require_once '../inc/main.php'; $planning_presence_modification = Acl::getValueAccesRights('planning_presence_modification'); $id_salaries = Lib::isDefined('id_salaries'); $id_groupe = Lib::getParameterFromRequest('id_groupe'); $semaine_en_cours = Lib::getParameterFromRequest('semaine_en_cours'); $annee_en_cours = Lib::getParameterFromRequest('annee_en_cours'); $action = Lib::getParameterFromRequest('action'); $radio_type_jour = Lib::isDefined('radio_type_jour'); $liste_id_user = Lib::getParameterFromRequest('liste_id_user'); $id_jour = Lib::getParameterFromRequest('id_jour'); $lieu = Lib::getParameterFromRequest('lieu'); $lieu1 = Lib::getParameterFromRequest('lieu1'); $lieu2 = Lib::getParameterFromRequest('lieu2'); $toute_semaine = Lib::getParameterFromRequest('toute_semaine'); $supprimer = Lib::getParameterFromRequest('supprimer'); $etat_semaine_visible = Lib::getParameterFromRequest('etat_semaine_visible'); $recuperer_liste_utilisateur = Lib::getParameterFromRequest('recuperer_liste_utilisateur'); $recuperer_planning_utilisateur = Lib::getParameterFromRequest('recuperer_planning_utilisateur'); $selection_semaine_en_cours = Lib::getParameterFromRequest('selection_semaine_en_cours'); $annee_a_creer = Lib::getParameterFromRequest('annee_a_creer'); $semaine_a_creer = Lib::getParameterFromRequest('semaine_a_creer'); /* ----------------- ACTION A TRAITER -----------------