Line 17... |
Line 17... |
17 |
// | |
|
17 |
// | |
|
18 |
// | You should have received a copy of the GNU Lesser General Public |
|
18 |
// | You should have received a copy of the GNU Lesser General Public |
|
19 |
// | License along with this library; if not, write to the Free Software |
|
19 |
// | License along with this library; if not, write to the Free Software |
|
20 |
// | Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
|
20 |
// | Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
|
21 |
// +------------------------------------------------------------------------------------------------------+
|
21 |
// +------------------------------------------------------------------------------------------------------+
|
22 |
// CVS : $Id: pap_menu.fonct.php,v 1.31.2.2 2007-11-22 17:22:30 jp_milcent Exp $
|
22 |
// CVS : $Id: pap_menu.fonct.php,v 1.31.2.3 2008-08-08 14:45:59 jp_milcent Exp $
|
23 |
/**
|
23 |
/**
|
24 |
* Bibliothèque de fonction sur le rendu.
|
24 |
* Bibliothèque de fonction sur le rendu.
|
25 |
*
|
25 |
*
|
26 |
* Cette bibliothèque contient des fonctions utilisé par le rendu des pages de Papyrus.
|
26 |
* Cette bibliothèque contient des fonctions utilisé par le rendu des pages de Papyrus.
|
27 |
*
|
27 |
*
|
Line 30... |
Line 30... |
30 |
//Auteur original :
|
30 |
//Auteur original :
|
31 |
*@author Jean-Pascal MILCENT <jpm@tela-botanica.org>
|
31 |
*@author Jean-Pascal MILCENT <jpm@tela-botanica.org>
|
32 |
//Autres auteurs :
|
32 |
//Autres auteurs :
|
33 |
*@author Alexandre GRANIER <alexadandre@tela-botanica.org>
|
33 |
*@author Alexandre GRANIER <alexadandre@tela-botanica.org>
|
34 |
*@copyright Tela-Botanica 2000-2004
|
34 |
*@copyright Tela-Botanica 2000-2004
|
35 |
*@version $Revision: 1.31.2.2 $ $Date: 2007-11-22 17:22:30 $
|
35 |
*@version $Revision: 1.31.2.3 $ $Date: 2008-08-08 14:45:59 $
|
36 |
// +------------------------------------------------------------------------------------------------------+
|
36 |
// +------------------------------------------------------------------------------------------------------+
|
37 |
*/
|
37 |
*/
|
Line 38... |
Line 38... |
38 |
|
38 |
|
39 |
// +------------------------------------------------------------------------------------------------------+
|
39 |
// +------------------------------------------------------------------------------------------------------+
|
Line 48... |
Line 48... |
48 |
* en partant du menu racine d'un site gmr_id_menu_02 = 0.
|
48 |
* en partant du menu racine d'un site gmr_id_menu_02 = 0.
|
49 |
* C'est une fonction récursive.
|
49 |
* C'est une fonction récursive.
|
50 |
* Noter que la variable $prof est statique.
|
50 |
* Noter que la variable $prof est statique.
|
51 |
*
|
51 |
*
|
52 |
* @param integer identifiant du site sur lequel la profondeur est calculé.
|
52 |
* @param integer identifiant du site sur lequel la profondeur est calculé.
|
53 |
* @param integer identifiant du menu à partir delaquelle on souhaite calculer la profondeur.
|
53 |
* @param integer identifiant du menu à partir duquel on souhaite calculer la profondeur.
|
54 |
* @return integer le nombre de niveau de menu.
|
54 |
* @return integer le nombre de niveau de menu.
|
55 |
*/
|
55 |
*/
|
56 |
function GEN_donnerProfondeurMax($id_site, $id_menu)
|
56 |
function GEN_donnerProfondeurMax($id_site, $id_menu)
|
57 |
{
|
57 |
{
|
58 |
global $db;
|
58 |
global $db;
|
Line 78... |
Line 78... |
78 |
$prof = GEN_donnerProfondeurMax($id_site, $ligne->gmr_id_menu_01);
|
78 |
$prof = GEN_donnerProfondeurMax($id_site, $ligne->gmr_id_menu_01);
|
79 |
}
|
79 |
}
|
80 |
return $prof;
|
80 |
return $prof;
|
81 |
}
|
81 |
}
|
Line -... |
Line 82... |
- |
|
82 |
|
- |
|
83 |
/** Fonction GEN_donnerProfondeur() - Renvoie le niveau du menu.
|
- |
|
84 |
*
|
- |
|
85 |
* Cette fonction calcule, pour un menu donné, son niveau par rapport à la racine.
|
- |
|
86 |
* C'est une fonction récursive.
|
- |
|
87 |
* Noter que la variable $prof est statique.
|
- |
|
88 |
*
|
- |
|
89 |
* @param integer identifiant du site sur lequel la profondeur est calculé.
|
- |
|
90 |
* @param integer identifiant du menu dont on souhaite connaître la profondeur.
|
- |
|
91 |
* @param integer profondeur de départ (par défaut 0). Ne devrait pas être modifié...
|
- |
|
92 |
* @return integer le nombre de niveau de menu.
|
- |
|
93 |
*/
|
- |
|
94 |
function GEN_donnerProfondeur($id_site, $id_menu, $prof = 0)
|
- |
|
95 |
{
|
- |
|
96 |
global $db;
|
- |
|
97 |
|
- |
|
98 |
// Requête sur les relations de type "avoir père" entre menus
|
- |
|
99 |
$requete = 'SELECT gmr_id_menu_02 '.
|
- |
|
100 |
'FROM gen_menu, gen_menu_relation '.
|
- |
|
101 |
'WHERE gmr_id_menu_01 = '.$id_menu.' '.
|
- |
|
102 |
'AND gmr_id_menu_01 = gm_id_menu '.
|
- |
|
103 |
'AND gm_ce_site = '.$id_site.' '.
|
- |
|
104 |
'AND gmr_id_valeur = 1 '.
|
- |
|
105 |
'ORDER BY gmr_ordre ASC';
|
- |
|
106 |
|
- |
|
107 |
$resultat = $db->query($requete);
|
- |
|
108 |
(DB::isError($resultat)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) : '';
|
- |
|
109 |
|
- |
|
110 |
if ($resultat->numRows() != 0) {
|
- |
|
111 |
while ($ligne = $resultat->fetchRow(DB_FETCHMODE_OBJECT)) {
|
- |
|
112 |
$prof = GEN_donnerProfondeur($id_site, $ligne->gmr_id_menu_02, ++$prof);
|
- |
|
113 |
}
|
- |
|
114 |
}
|
- |
|
115 |
return $prof;
|
- |
|
116 |
}
|
82 |
|
117 |
|
83 |
/** Fonction GEN_donnerDernierFreres() - Renvoie l'id du dernier menu frère.
|
118 |
/** Fonction GEN_donnerDernierFreres() - Renvoie l'id du dernier menu frère.
|
84 |
*
|
119 |
*
|
85 |
* Cette fonction regarde si un menu donné possède au moins un frère dans l'arbre
|
120 |
* Cette fonction regarde si un menu donné possède au moins un frère dans l'arbre
|
86 |
* des menus. Elle retourne l'id du dernier menu frére en utilisant gmr_ordre.
|
121 |
* des menus. Elle retourne l'id du dernier menu frére en utilisant gmr_ordre.
|
Line 998... |
Line 1033... |
998 |
|
1033 |
|
999 |
|
1034 |
|
- |
|
1035 |
|
- |
|
1036 |
/* +--Fin du code ---------------------------------------------------------------------------------------+
|
- |
|
1037 |
* $Log: not supported by cvs2svn $
|
- |
|
1038 |
* Revision 1.34 2008-08-08 14:42:14 jp_milcent
|
- |
|
1039 |
* Ajout d'une fonction donnant la profondeur d'un menu par rapport à la racine.
|
- |
|
1040 |
*
|
- |
|
1041 |
* Revision 1.33 2007-11-22 17:24:09 jp_milcent
|
- |
|
1042 |
* Fusion avec la livraison AHA : 22 novembre 2007
|
- |
|
1043 |
*
|
1000 |
|
1044 |
* Revision 1.31.2.2 2007-11-22 17:22:30 jp_milcent
|
1001 |
/* +--Fin du code ---------------------------------------------------------------------------------------+
|
1045 |
* Ajout d'un trie par date sur la requêtre retournant les menus de la même catégorie.
|
1002 |
* $Log: not supported by cvs2svn $
|
1046 |
*
|
1003 |
* Revision 1.31.2.1 2007-11-19 10:20:23 ddelon
|
1047 |
* Revision 1.31.2.1 2007-11-19 10:20:23 ddelon
|
1004 |
* Gestion des menus reservés à une langue
|
1048 |
* Gestion des menus reservés à une langue
|