Subversion Repositories Applications.papyrus

Rev

Rev 127 | Rev 146 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 127 Rev 129
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.5 2004-11-04 12:51:45 jpm Exp $
22
// CVS : $Id: pap_menu.fonct.php,v 1.6 2004-11-08 17:39:32 jpm 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 31... Line 31...
31
*@author        Laurent COUDOUNEAU <laurent.coudouneau@ema.fr>
31
*@author        Laurent COUDOUNEAU <laurent.coudouneau@ema.fr>
32
//Autres auteurs :
32
//Autres auteurs :
33
*@author        Alexandre GRANIER <alexadandre@tela-botanica.org>
33
*@author        Alexandre GRANIER <alexadandre@tela-botanica.org>
34
*@author        Jean-Pascal MILCENT <jpm@tela-botanica.org>
34
*@author        Jean-Pascal MILCENT <jpm@tela-botanica.org>
35
*@copyright     Tela-Botanica 2000-2004
35
*@copyright     Tela-Botanica 2000-2004
36
*@version       $Revision: 1.5 $ $Date: 2004-11-04 12:51:45 $
36
*@version       $Revision: 1.6 $ $Date: 2004-11-08 17:39:32 $
37
// +------------------------------------------------------------------------------------------------------+
37
// +------------------------------------------------------------------------------------------------------+
38
*/
38
*/
Line 39... Line 39...
39
 
39
 
40
// +------------------------------------------------------------------------------------------------------+
40
// +------------------------------------------------------------------------------------------------------+
Line 194... Line 194...
194
    } else {
194
    } else {
195
        return GEN_etreAncetre($id_menu_1, $ligne->gmr_id_menu_02);
195
        return GEN_etreAncetre($id_menu_1, $ligne->gmr_id_menu_02);
196
    }
196
    }
197
}
197
}
Line 198... Line -...
198
 
-
 
199
/** Fonction GEN_etreFils() - Renvoie vrai si le premier argument (identifiant de menu) est un fils du second.
-
 
200
*
-
 
201
* Nous récupérons l'identifiant du père du menu passé en argument numéro 2. Puis,
-
 
202
* nous le comparons à l'argument 1. Si c'est les même on retourne faux. Sinon on rapelle
-
 
203
* la fonction avec l'identifiant du père trouvé pour l'argument 1. Ainsi de suite jusqu'a
-
 
204
* renvoyé vrai où tomber sur un menu racine (idetifiant du père = 0).
-
 
205
* Si les variable sont null nous retournons false.
-
 
206
* C'est une fonction récursive.
-
 
207
*
-
 
208
* @param integer identifiant d'un menu numéro 1.
-
 
209
* @param integer identifiant d'un menu numéro 2.
-
 
210
* @return boolean vrai si le menu numéro 1 est fils du second.
-
 
211
*/
-
 
212
function GEN_etreFils($id_menu_1, $id_menu_2)
-
 
213
{
-
 
214
    //Test erreur
-
 
215
    if (is_null($id_menu_1) || is_null($id_menu_2)) {
-
 
216
        return false;
-
 
217
    }
-
 
218
    
-
 
219
    // Initialisation des variables.
-
 
220
    global $db;
-
 
221
    
-
 
222
    $requete =  'SELECT gmr_id_menu_01 '.
-
 
223
                'FROM gen_menu_relation '.
-
 
224
                'WHERE gmr_id_menu_02 = '.$id_menu_2.' '.
-
 
225
                'AND gmr_id_valeur = 1 ';
-
 
226
    
-
 
227
    $resultat = $db->query($requete);
-
 
228
    (DB::isError($resultat)) ? die (BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) : '';
-
 
229
    
-
 
230
    $ligne = $resultat->fetchRow(DB_FETCHMODE_OBJECT);
-
 
231
    $resultat->free();
-
 
232
    if ($ligne->gmr_id_menu_01 == 0) {
-
 
233
        return false;
-
 
234
    } else if ($ligne->gmr_id_menu_01 == $id_menu_1) {
-
 
235
        return true;
-
 
236
    } else {
-
 
237
        return GEN_etreFils($id_menu_1, $ligne->gmr_id_menu_01);
-
 
238
    }
-
 
239
}
-
 
240
 
198
 
241
/** Fonction GEN_lireIdentifiantMenuAncetre() - Renvoie l'identifiant du menu ancètre du menu passé en paramètre.
199
/** Fonction GEN_lireIdentifiantMenuAncetre() - Renvoie l'identifiant du menu ancètre du menu passé en paramètre.
242
*
200
*
243
*   Cette fonction parcours la table gen_menu_relation et retourne l'identifiant du
201
*   Cette fonction parcours la table gen_menu_relation et retourne l'identifiant du
244
*   menu dont le père est le menu racine (identifiant = 0) pour le menu passé en paramètre.
202
*   menu dont le père est le menu racine (identifiant = 0) pour le menu passé en paramètre.
Line 477... Line 435...
477
    return id_ancetre_niveau($id_site, $id_langue, $ligne->gm_ce_menu_pere, $niveau);
435
    return id_ancetre_niveau($id_site, $id_langue, $ligne->gm_ce_menu_pere, $niveau);
478
}
436
}
Line 479... Line 437...
479
 
437
 
480
/* +--Fin du code ---------------------------------------------------------------------------------------+
438
/* +--Fin du code ---------------------------------------------------------------------------------------+
-
 
439
* $Log: not supported by cvs2svn $
-
 
440
* Revision 1.5  2004/11/04 12:51:45  jpm
-
 
441
* Suppression de message de débogage.
481
* $Log: not supported by cvs2svn $
442
*
482
* Revision 1.4  2004/11/04 12:23:50  jpm
443
* Revision 1.4  2004/11/04 12:23:50  jpm
483
* Nouvelles fonctions sur les menus frères.
444
* Nouvelles fonctions sur les menus frères.
484
*
445
*
485
* Revision 1.3  2004/10/25 14:16:21  jpm
446
* Revision 1.3  2004/10/25 14:16:21  jpm