19,7 → 19,7 |
// | License along with this library; if not, write to the Free Software | |
// | Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | |
// +------------------------------------------------------------------------------------------------------+ |
// CVS : $Id: pap_menu.fonct.php,v 1.21 2005-06-08 19:11:43 jpm Exp $ |
// CVS : $Id: pap_menu.fonct.php,v 1.22 2005-07-08 15:16:37 alexandre_tb Exp $ |
/** |
* Bibliothèque de fonction sur le rendu. |
* |
33,7 → 33,7 |
*@author Alexandre GRANIER <alexadandre@tela-botanica.org> |
*@author Laurent COUDOUNEAU <laurent.coudouneau@ema.fr> |
*@copyright Tela-Botanica 2000-2004 |
*@version $Revision: 1.21 $ $Date: 2005-06-08 19:11:43 $ |
*@version $Revision: 1.22 $ $Date: 2005-07-08 15:16:37 $ |
// +------------------------------------------------------------------------------------------------------+ |
*/ |
|
268,10 → 268,8 |
*/ |
function GEN_lireInfoMenu(&$db, $id_menu, $mode = DB_FETCHMODE_OBJECT) |
{ |
|
//---------------------------------------------------------------------------- |
// Gestion des erreurs |
|
//---------------------------------------------------------------------------- |
// Recherche des informations sur le menu |
$requete = 'SELECT * '. |
'FROM gen_menu '. |
531,6 → 529,49 |
|
return $aso_info; |
} |
|
/** Fonction GEN_lireInfoMenuMeta() - Renvoie un objet ou un tableau contenant des lignes de la table gen_menu |
* |
* Renvoie un objet ou un tableau contenant une ligne de la table gen_menu en fonction des mots clés, |
* catégories, id_menu, |
* la table gen_menu. |
* |
* @param mixed Une instance de la classse PEAR_DB |
* @param array un tableau de mots clés. |
* @param string la condition séparant chaque rechercher de mots-clés (AND ou OR). |
* @param string l'ordre d'affichage des Menus (ASC ou DESC). |
* @param string le mode dans Pear DB dans lequel on veut recevoir les infos du menu. |
* @param boolean true pour grouper les résultats (voir Pear DB : getAssoc() ) sinon false. |
* @return mixed un objet ou tableau résultat Pear DB, ou false en cas d'erreur. |
*/ |
function GEN_lireInfoMenuMeta(&$db, $tab_mots, $tab_cat, $condition = 'OR', $condition2="OR", $ordre = 'ASC', $mode = DB_FETCHMODE_OBJECT, $groupe = false) |
{ |
//---------------------------------------------------------------------------- |
// Recherche des informations sur les menus en fonctions des mots clés |
$requete = 'SELECT DISTINCT * '. |
'FROM gen_menu '. |
'WHERE '; |
for ($i = 0; $i < count($tab_mots); $i++) { |
if ($i == 0) { |
$requete .= 'gm_mots_cles LIKE "%'.$tab_mots[$i].'%" '; |
} else { |
$requete .= $condition.' gm_mots_cles LIKE "%'.$tab_mots[$i].'%" '; |
} |
} |
if (count($tab_mots) != 0) $requete .= 'AND ' ; |
for ($i = 0; $i < count($tab_cat); $i++) { |
if ($i == 0) { |
$requete .= 'gm_categorie LIKE "%'.$tab_cat[$i].'%" '; |
} else { |
$requete .= $condition2.' gm_categorie LIKE "%'.$tab_cat[$i].'%" '; |
} |
} |
$requete .= 'ORDER BY gm_date_creation '.$ordre; |
$aso_info =& $db->getAssoc($requete, false, array(), $mode, $groupe); |
(PEAR::isError($aso_info)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $aso_info->getMessage(), $requete)) : ''; |
|
return $aso_info; |
} |
/** Fonction GEN_lireInfoMenuCategorie() - Renvoie un objet ou un tableau contenant des lignes de la table gen_menu |
* |
* Renvoie un objet ou un tableau contenant une ligne de la table gen_menu en fonction des catégories présentes dans |
573,7 → 614,7 |
* @param boolean true pour grouper les résultats (voir Pear DB : getAssoc() ) sinon false. |
* @return mixed un objet ou tableau résultat Pear DB, ou false en cas d'erreur. |
*/ |
function GEN_lireInfoMenuContenuDate(&$db, $type_modif = '', $site = '', $mode = DB_FETCHMODE_OBJECT, $groupe = false) |
function GEN_lireInfoMenuContenuDate(&$db, $type_modif = '', $site = '', $categorie='', $mode = DB_FETCHMODE_OBJECT, $groupe = false) |
{ |
$type_modif_sql = 'AND gmc_ce_type_modification IN (%s) '; |
if (!empty($type_modif)) { |
587,6 → 628,12 |
} else { |
$site = ''; |
} |
|
if (!empty($categorie)) { |
$categorie = 'AND gm_categorie like "%'.$categorie.'%"' ; |
} else { |
$categorie = ''; |
} |
// Recherche des informations sur les menus en fonctions des mots clés |
$requete = 'SELECT DISTINCT gen_menu.*, gs_code_alpha, gmc_date_modification, gmc_resume_modification, gmc_ce_type_modification '. |
'FROM gen_site, gen_menu, gen_menu_contenu '. |
596,9 → 643,10 |
'AND gmc_bool_dernier = 1 '. |
$site. |
$type_modif. |
$categorie. |
'ORDER BY gmc_date_modification DESC'; |
|
$aso_info =& $db->getAssoc($requete, false, array(), $mode, $groupe); |
$aso_info =& $db->getAssoc($requete, false, array(), $mode, $groupe);echo $requete; |
(PEAR::isError($aso_info)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $aso_info->getMessage(), $requete)) : ''; |
|
return $aso_info; |
641,6 → 689,9 |
} |
/* +--Fin du code ---------------------------------------------------------------------------------------+ |
* $Log: not supported by cvs2svn $ |
* Revision 1.21 2005/06/08 19:11:43 jpm |
* Ajout de ordre et condition pour la fonction de lecture des infos sur les menus. |
* |
* Revision 1.20 2005/05/26 08:00:51 jpm |
* Correction dans la fonction GEN_retournerTableauMenusSiteCodeAlpha(). |
* |