Subversion Repositories Applications.papyrus

Compare Revisions

Ignore whitespace Rev 406 → Rev 407

/trunk/papyrus/bibliotheque/fonctions/pap_menu.fonct.php
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().
*