Subversion Repositories Applications.papyrus

Rev

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

Rev 152 Rev 155
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: adme_menu_classique.fonct.php,v 1.11 2004-11-10 19:41:14 jpm Exp $
22
// CVS : $Id: adme_menu_classique.fonct.php,v 1.12 2004-11-15 16:51:12 jpm Exp $
23
/**
23
/**
24
* Fonctions de gestion des menus classiques
24
* Fonctions de gestion des menus classiques
25
*
25
*
26
* Permet de lister, d'ajouter, de modifier, et de déplacer des menus classiques.
26
* Permet de lister, d'ajouter, de modifier, et de déplacer des menus classiques.
27
* Par menus classiques nous entendons tous les menus devant paraitre dans l'arborescences 
27
* Par menus classiques nous entendons tous les menus devant paraitre dans l'arborescences 
Line 33... Line 33...
33
*@author        Laurent COUDOUNEAU <lc@gsite.org>
33
*@author        Laurent COUDOUNEAU <lc@gsite.org>
34
//Autres auteurs :
34
//Autres auteurs :
35
*@author        Alexandre GRANIER <alexandre@tela-botanica.org>
35
*@author        Alexandre GRANIER <alexandre@tela-botanica.org>
36
*@author        Jean-Pascal MILCENT <jpm@tela-botanica.org>
36
*@author        Jean-Pascal MILCENT <jpm@tela-botanica.org>
37
*@copyright     Tela-Botanica 2000-2004
37
*@copyright     Tela-Botanica 2000-2004
38
*@version       $Revision: 1.11 $ $Date: 2004-11-10 19:41:14 $
38
*@version       $Revision: 1.12 $ $Date: 2004-11-15 16:51:12 $
39
// +------------------------------------------------------------------------------------------------------+
39
// +------------------------------------------------------------------------------------------------------+
40
*/
40
*/
Line 41... Line 41...
41
 
41
 
42
// +------------------------------------------------------------------------------------------------------+
42
// +------------------------------------------------------------------------------------------------------+
Line 147... Line 147...
147
* @param  object objet Pear de connection à la base de données.
147
* @param  object objet Pear de connection à la base de données.
148
* @param  object objet Pear représentant l'url de base.
148
* @param  object objet Pear représentant l'url de base.
149
* @param  integer l'identifiant du site à administrer.
149
* @param  integer l'identifiant du site à administrer.
150
* @param  integer l'identifiant du menu à administrer.
150
* @param  integer l'identifiant du menu à administrer.
151
* @param  integer 0 indique que le menu ne possède pas de fils, 1 qu'il faut afficher un - et 2 un +.
151
* @param  integer 0 indique que le menu ne possède pas de fils, 1 qu'il faut afficher un - et 2 un +.
152
* @return  string une ligne de liste XHTML
152
* @return string une ligne de liste XHTML
153
*/
153
*/
154
function ADME_retournerXhtmlMenuClassique($db, $url, $adme_site_id, $adme_menu_id, $int_deplier)
154
function ADME_retournerXhtmlMenuClassique($db, $url, $adme_site_id, $adme_menu_id, $int_deplier)
155
{
155
{
156
    //-------------------------------------------------------------------------------------------------------------------
156
    //-------------------------------------------------------------------------------------------------------------------
157
    // Initialisation des variables
157
    // Initialisation des variables
Line 627... Line 627...
627
 
627
 
628
/** Fonction ADME_validerFormAjouterMenuClassique() - Valide les données issues du formulaire pour gen_menu.
628
/** Fonction ADME_validerFormAjouterMenuClassique() - Valide les données issues du formulaire pour gen_menu.
629
*
629
*
630
* Cette fonction valide les données à ajouter dans la table gen_menu.
630
* Cette fonction valide les données à ajouter dans la table gen_menu.
631
*
631
*
632
* @param  string   l'objet pear de connexion à la base de données.
632
* @param  PEAR::DB   l'objet pear de connexion à la base de données.
633
* @param  string   le tableau contenant les valeurs du formulaire.
633
* @param  string   le tableau contenant les valeurs du formulaire.
634
* @return string   retourne les messages d'erreurs sinon rien.
634
* @return string   retourne les messages d'erreurs sinon rien.
635
*/
635
*/
636
function ADME_validerFormAjouterMenuClassique($db, $aso_valeurs)
636
function ADME_validerFormAjouterMenuClassique($db, $aso_valeurs)
Line 749... Line 749...
749
*
749
*
750
* Permet de déplacer un menu dans la hiérarchie des menus classiques.
750
* Permet de déplacer un menu dans la hiérarchie des menus classiques.
751
* Ancien nom : moveMenu()
751
* Ancien nom : moveMenu()
752
*
752
*
753
* @param  mixed   objet Pear DB de connexion à la base de données.
753
* @param  mixed   objet Pear DB de connexion à la base de données.
754
* @param  string  identifiant du site administré.
754
* @param  integer  identifiant du site administré.
755
* @param  integer identifiant du menu à déplacer.
755
* @param  integer identifiant du menu à déplacer.
756
* @param  boolean indique si on veut monter le menu (true) ou le descendre (false).
756
* @param  boolean indique si on veut monter le menu (true) ou le descendre (false).
757
* @return void    modifie la base de données.
757
* @return void    modifie la base de données.
758
*/
758
*/
759
function ADME_deplacerMenuClassique($db, $adme_site_id, $adme_menu_id, $bln_monter)
759
function ADME_deplacerMenuClassique($db, $adme_site_id, $adme_menu_id, $bln_monter)
Line 839... Line 839...
839
* Supprime de la base de données de Génésia toutes les traces du menu classiques
839
* Supprime de la base de données de Génésia toutes les traces du menu classiques
840
* passé en paramètre.
840
* passé en paramètre.
841
* Ancien nom : deleteMenu()
841
* Ancien nom : deleteMenu()
842
*
842
*
843
* @param  mixed  l'objet Pear DB de connexion à la base de données.
843
* @param  mixed  l'objet Pear DB de connexion à la base de données.
-
 
844
* @param  integer l'identifiant du site du menu à supprimer
844
* @param  string l'identifiant du menu à supprimer
845
* @param  integer l'identifiant du menu à supprimer
845
* @return void   le menu classique est supprimé de la base de données.
846
* @return void   le menu classique est supprimé de la base de données.
846
*/
847
*/
847
function ADME_supprimerMenuClassique($db, $id_menu_a_supprimer)
848
function ADME_supprimerMenuClassique($db, $adme_id_site, $id_menu_a_supprimer)
848
{
849
{
849
    //----------------------------------------------------------------------------
850
    //----------------------------------------------------------------------------
850
    // Y a t'il des sous_menus
851
    // Y a t'il des sous_menus
851
    $requete =  'SELECT COUNT(gm_id_menu) AS compte '.
852
    $requete =  'SELECT COUNT(gm_id_menu) AS compte '.
852
                'FROM gen_menu, gen_menu_relation '.
853
                'FROM gen_menu, gen_menu_relation '.
Line 861... Line 862...
861
    
862
    
862
    if ($ligne && ($ligne->compte > 0)) {
863
    if ($ligne && ($ligne->compte > 0)) {
863
        return ADME_LG_ERREUR_EXISTE_SOUS_MENU;
864
        return ADME_LG_ERREUR_EXISTE_SOUS_MENU;
Line -... Line 865...
-
 
865
    }
-
 
866
    
-
 
867
    //-------------------------------------------------------------------------------------------------------------------
-
 
868
    // Mise à jour de l'ordre des menus
-
 
869
    $ligne_menu_supr_relation = GEN_lireInfoMenuRelation($db, $id_menu_a_supprimer, '1'); // 1 = relation "avoir père"
-
 
870
    $requete =  'SELECT GMR01.gmr_id_menu_01, GMR01.gmr_ordre '.
-
 
871
                'FROM gen_menu, gen_menu_relation AS GMR01, gen_menu_relation AS GMR02 '.
-
 
872
                'WHERE GMR02.gmr_id_menu_01 = GMR01.gmr_id_menu_01 '.
-
 
873
                'AND GMR01.gmr_id_menu_01 = gm_id_menu './/jonction avec la table GEN_MENU
-
 
874
                'AND gm_ce_site = '.$adme_id_site.' '.// le site du menu!
-
 
875
                'AND GMR02.gmr_id_valeur = 100 '.// 100 = menu type "classique"
-
 
876
                'AND GMR01.gmr_id_menu_02 = '.$ligne_menu_supr_relation->gmr_id_menu_02.' '.
-
 
877
                'AND GMR01.gmr_id_valeur = 1 '.// 1 = relation menu "père"
-
 
878
                'AND GMR01.gmr_ordre > '.$ligne_menu_supr_relation->gmr_ordre.' '.
-
 
879
                'ORDER BY GMR01.gmr_ordre ASC';
-
 
880
    $resultat = $db->query($requete);
-
 
881
    while ($ligne = $resultat->fetchRow(DB_FETCHMODE_OBJECT)) {
-
 
882
        // Mise à jour des relations hiérarchiques du menu courant
-
 
883
        $requete_maj =  'UPDATE gen_menu_relation SET '.
-
 
884
                        'gmr_ordre = '.($ligne->gmr_ordre - 1).' '.
-
 
885
                        'WHERE gmr_id_menu_01 = '.$ligne->gmr_id_menu_01.' '.
-
 
886
                        'AND gmr_id_valeur = 1';// 1 = relation menu "père"
-
 
887
        
-
 
888
        $resultat_maj = $db->query($requete_maj);
-
 
889
        (DB::isError($resultat_maj)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat_maj->getMessage(), $requete_maj)) : '';
-
 
890
    }
864
    }
891
    $resultat->free();
865
    
892
    
866
    //----------------------------------------------------------------------------
893
    //----------------------------------------------------------------------------
867
    // S'il n'y a plus de sous niveau, on supprime le menu
894
    // S'il n'y a plus de sous niveau, on supprime le menu
Line 886... Line 913...
886
 
913
 
887
 
914
 
888
/* +--Fin du code ----------------------------------------------------------------------------------------+
915
/* +--Fin du code ----------------------------------------------------------------------------------------+
-
 
916
*
-
 
917
* $Log: not supported by cvs2svn $
-
 
918
* Revision 1.11  2004/11/10 19:41:14  jpm
889
*
919
* Correction bogue.
890
* $Log: not supported by cvs2svn $
920
*
891
* Revision 1.10  2004/11/10 17:26:07  jpm
921
* Revision 1.10  2004/11/10 17:26:07  jpm
892
* Fin gestion de la traduction.
922
* Fin gestion de la traduction.
893
*
923
*