/** * @name getMenuSuperZeybu() * @return MenuResponse * @desc Retourne le menu d'un SuperZeybu */ public function getMenuSuperZeybu() { $lMenu = new MenuVO(); $lListeModule = ModuleManager::selectAll(); foreach ($lListeModule as $lModule) { // Si c'est un module admin if ($lModule->getAdmin() == 1) { $lMenuModule = new MenuModuleVO(); $lMenuModule->setModuleNom($lModule->getNom()); $lMenuModule->setNom($lModule->getNom()); $lMenuModule->setLabel($lModule->getLabel()); $lMenuModule->setVues(VueManager::selectByIdModule($lModule->getId())); $lMenu->addModules($lMenuModule); } } $lResponse = new MenuResponse(); $lResponse->setMenu($lMenu); return $lResponse; }
/** * @name getMenuAdherent() * @return MenuResponse * @desc Retourne le menu d'un adhérent */ public function getMenuAdherent() { $lListeModule = MenuViewManager::select($_SESSION[DROIT_ID]); $lMenu = new MenuVO(); $lAdmin = false; foreach ($lListeModule as $lModule) { // N'affiche que les modules non admin if ($lModule->getModAdmin() == 1) { $lAdmin = true; } else { // Si c'est le module non admin -> traitement spécial if ($lModule->getModId() == 1 || $lModule->getModId() == 3) { $lVues = VueManager::selectByIdModule($lModule->getModId()); foreach ($lVues as $lVue) { $lMenuModule = new MenuModuleVO(); $lMenuModule->setModuleNom($lModule->getModNom()); $lMenuModule->setNom($lVue->getNom()); $lMenuModule->setLabel($lVue->getLabel()); $lMenu->addModules($lMenuModule); } } else { $lMenuModule = new MenuModuleVO(); $lMenuModule->setModuleNom($lModule->getModNom()); $lMenuModule->setNom($lModule->getModNom()); $lMenuModule->setLabel($lModule->getModLabel()); $lMenuModule->setVues(VueManager::selectByIdModule($lModule->getModId())); $lMenu->addModules($lMenuModule); } } } $lResponse = new MenuResponse(); $lResponse->setMenu($lMenu); if ($lAdmin) { $lResponse->setAdmin(true); } return $lResponse; }
/** * @name recherche( $pTypeRecherche, $pTypeCritere, $pCritereRecherche, $pTypeTri, $pCritereTri ) * @param string nom de la table * @param string Le type de critère de recherche * @param array(string) champs à récupérer dans la table * @param array(array(string, object)) Dictionnaire(champ, valeur)) contenant les champs à filtrer ainsi que la valeur du filtre * @param array(array(string, string)) Dictionnaire(champ, sens) contenant les tris à appliquer * @return array(VueVO) * @desc Récupères les lignes de la table selon le critère de recherche puis trie et renvoie la liste de résultat sous forme d'une collection de VueVO */ public static function recherche($pTypeRecherche, $pTypeCritere, $pCritereRecherche, $pTypeTri, $pCritereTri) { // Initialisation du Logger $lLogger =& Log::singleton('file', CHEMIN_FICHIER_LOGS); $lLogger->setMask(Log::MAX(LOG_LEVEL)); // Préparation de la requète $lChamps = array(VueManager::CHAMP_VUE_ID . "," . VueManager::CHAMP_VUE_ID_MODULE . "," . VueManager::CHAMP_VUE_NOM . "," . VueManager::CHAMP_VUE_LABEL . "," . VueManager::CHAMP_VUE_ORDRE . "," . VueManager::CHAMP_VUE_VISIBLE); // Préparation de la requète de recherche $lRequete = DbUtils::prepareRequeteRecherche(VueManager::TABLE_VUE, $lChamps, $pTypeRecherche, $pTypeCritere, $pCritereRecherche, $pTypeTri, $pCritereTri); $lListeVue = array(); if ($lRequete !== false) { $lLogger->log("Execution de la requete : " . $lRequete, PEAR_LOG_DEBUG); // Maj des logs $lSql = Dbutils::executerRequete($lRequete); if (mysql_num_rows($lSql) > 0) { while ($lLigne = mysql_fetch_assoc($lSql)) { array_push($lListeVue, VueManager::remplirVue($lLigne[VueManager::CHAMP_VUE_ID], $lLigne[VueManager::CHAMP_VUE_ID_MODULE], $lLigne[VueManager::CHAMP_VUE_NOM], $lLigne[VueManager::CHAMP_VUE_LABEL], $lLigne[VueManager::CHAMP_VUE_ORDRE], $lLigne[VueManager::CHAMP_VUE_VISIBLE])); } } else { $lListeVue[0] = new VueVO(); } return $lListeVue; } $lListeVue[0] = new VueVO(); return $lListeVue; }