Subversion Repositories Applications.papyrus

Rev

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

Rev 150 Rev 155
Line 19... Line 19...
19
// |                                                                                                      |
19
// |                                                                                                      |
20
// | You should have received a copy of the GNU General Public License                                    |
20
// | You should have received a copy of the GNU General Public License                                    |
21
// | along with Foobar; if not, write to the Free Software                                                |
21
// | along with Foobar; if not, write to the Free Software                                                |
22
// | Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA                            |
22
// | Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA                            |
23
// +------------------------------------------------------------------------------------------------------+
23
// +------------------------------------------------------------------------------------------------------+
24
// CVS : $Id: adme_menu_commun.fonct.php,v 1.6 2004-11-10 17:26:07 jpm Exp $
24
// CVS : $Id: adme_menu_commun.fonct.php,v 1.7 2004-11-15 16:51:12 jpm Exp $
25
/**
25
/**
26
* Application de gestion des menus communs
26
* Application de gestion des menus communs
27
*
27
*
28
* Permet de lister, d'ajouter, de modifier, et de déplacer des menus communs.
28
* Permet de lister, d'ajouter, de modifier, et de déplacer des menus communs.
29
* Par menus communs, nous entendons tous les menus devant paraitre sur l'ensemble des pages de plusieurs site,
29
* Par menus communs, nous entendons tous les menus devant paraitre sur l'ensemble des pages de plusieurs site,
Line 35... Line 35...
35
*@author        Laurent COUDOUNEAU <lc@gsite.org>
35
*@author        Laurent COUDOUNEAU <lc@gsite.org>
36
//Autres auteurs :
36
//Autres auteurs :
37
*@author        Alexandre GRANIER <alexandre@tela-botanica.org>
37
*@author        Alexandre GRANIER <alexandre@tela-botanica.org>
38
*@author        Jean-Pascal MILCENT <jpm@tela-botanica.org>
38
*@author        Jean-Pascal MILCENT <jpm@tela-botanica.org>
39
*@copyright     Tela-Botanica 2000-2004
39
*@copyright     Tela-Botanica 2000-2004
40
*@version       $Revision: 1.6 $ $Date: 2004-11-10 17:26:07 $
40
*@version       $Revision: 1.7 $ $Date: 2004-11-15 16:51:12 $
41
// +------------------------------------------------------------------------------------------------------+
41
// +------------------------------------------------------------------------------------------------------+
42
*/
42
*/
Line 43... Line 43...
43
 
43
 
44
// +------------------------------------------------------------------------------------------------------+
44
// +------------------------------------------------------------------------------------------------------+
Line 622... Line 622...
622
 
622
 
623
/** Fonction ADME_validerFormAjouterMenuCommun() - Valide les données issues du formulaire pour gen_menu.
623
/** Fonction ADME_validerFormAjouterMenuCommun() - Valide les données issues du formulaire pour gen_menu.
624
*
624
*
625
* Cette fonction valide les données à ajouter dans la table gen_menu.
625
* Cette fonction valide les données à ajouter dans la table gen_menu.
626
*
626
*
627
* @param  string   l'objet pear de connexion à la base de données.
627
* @param  PEAR:DB   l'objet pear de connexion à la base de données.
628
* @param  string   le tableau contenant les valeurs du formulaire.
628
* @param  string   le tableau contenant les valeurs du formulaire.
629
* @return string   retourne les messages d'erreurs sinon rien.
629
* @return string   retourne les messages d'erreurs sinon rien.
630
*/
630
*/
631
function ADME_validerFormAjouterMenuCommun($db, $aso_valeurs)
631
function ADME_validerFormAjouterMenuCommun($db, $aso_valeurs)
Line 707... Line 707...
707
*
707
*
708
* Permet de déplacer un menu dans la hiérarchie des menus communs.
708
* Permet de déplacer un menu dans la hiérarchie des menus communs.
709
* Ancien nom : moveUpper()
709
* Ancien nom : moveUpper()
710
*
710
*
711
* @param  PEAR::DB objet Pear DB de connexion à la base de données.
711
* @param  PEAR::DB objet Pear DB de connexion à la base de données.
712
* @param  string   identifiant du site administré.
712
* @param  integer   identifiant du site administré.
713
* @param  integer  identifiant du menu à déplacer.
713
* @param  integer  identifiant du menu à déplacer.
714
* @param  boolean  indique si on veut monter le menu (true) ou le descendre (false).
714
* @param  boolean  indique si on veut monter le menu (true) ou le descendre (false).
715
* @return void     modifie la base de données.
715
* @return void     modifie la base de données.
716
*/
716
*/
717
function ADME_deplacerMenuCommun($db, $adme_site_id, $adme_menu_id, $bln_monter)
717
function ADME_deplacerMenuCommun($db, $adme_site_id, $adme_menu_id, $bln_monter)
Line 792... Line 792...
792
* Supprime de la base de données de Génésia toutes les traces du menu classiques
792
* Supprime de la base de données de Génésia toutes les traces du menu classiques
793
* passé en paramètre.
793
* passé en paramètre.
794
* Ancien nom : deleteUpper()
794
* Ancien nom : deleteUpper()
795
*
795
*
796
* @param  PEAR::DB l'objet Pear DB de connexion à la base de données.
796
* @param  PEAR::DB l'objet Pear DB de connexion à la base de données.
797
* @param  string   l'identifiant du menu à supprimer
797
* @param  integer   l'identifiant du menu à supprimer
798
* @return void     le menu classique est supprimé de la base de données.
798
* @return void     le menu classique est supprimé de la base de données.
799
*/
799
*/
800
function ADME_supprimerMenuCommun($db, $id_menu_a_supprimer)
800
function ADME_supprimerMenuCommun($db, $id_menu_a_supprimer)
801
{
801
{
802
    //-------------------------------------------------------------------------------------------------------------------
802
    //-------------------------------------------------------------------------------------------------------------------
Line 815... Line 815...
815
    if ($ligne && ($ligne->compte > 0)) {
815
    if ($ligne && ($ligne->compte > 0)) {
816
        return ADME_LG_ERREUR_EXISTE_SOUS_MENU;
816
        return ADME_LG_ERREUR_EXISTE_SOUS_MENU;
817
    }
817
    }
Line 818... Line 818...
818
    
818
    
-
 
819
    //-------------------------------------------------------------------------------------------------------------------
-
 
820
    // Mise à jour de l'ordre des menus
-
 
821
    $ligne_menu_supr_relation = GEN_lireInfoMenuRelation($db, $id_menu_a_supprimer, '1'); // 1 = relation "avoir père"
-
 
822
    $requete =  'SELECT GMR01.gmr_id_menu_01, GMR01.gmr_ordre '.
-
 
823
                'FROM gen_menu, gen_menu_relation AS GMR01, gen_menu_relation AS GMR02 '.
-
 
824
                'WHERE GMR02.gmr_id_menu_01 = GMR01.gmr_id_menu_01 '.
-
 
825
                'AND GMR01.gmr_id_menu_01 = gm_id_menu './/jonction avec la table GEN_MENU
-
 
826
                'AND gm_ce_site = 0 '.// les menus communs ne sont pas liés à un site!
-
 
827
                'AND GMR02.gmr_id_valeur = 102 '.// 102 = menu type "commun"
-
 
828
                'AND GMR01.gmr_id_menu_02 = '.$ligne_menu_supr_relation->gmr_id_menu_02.' '.
-
 
829
                'AND GMR01.gmr_id_valeur = 1 '.// 1 = relation menu "père"
-
 
830
                'AND GMR01.gmr_ordre > '.$ligne_menu_supr_relation->gmr_ordre.' '.
-
 
831
                'ORDER BY GMR01.gmr_ordre ASC';
-
 
832
    $resultat = $db->query($requete);
-
 
833
    while ($ligne = $resultat->fetchRow(DB_FETCHMODE_OBJECT)) {
-
 
834
        // Mise à jour des relations hiérarchiques du menu courant
-
 
835
        $requete_maj =  'UPDATE gen_menu_relation SET '.
-
 
836
                        'gmr_ordre = '.($ligne->gmr_ordre - 1).' '.
-
 
837
                        'WHERE gmr_id_menu_01 = '.$ligne->gmr_id_menu_01.' '.
-
 
838
                        'AND gmr_id_valeur = 1';// 1 = relation menu "père"
-
 
839
        
-
 
840
        $resultat_maj = $db->query($requete_maj);
-
 
841
        (DB::isError($resultat_maj)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat_maj->getMessage(), $requete_maj)) : '';
-
 
842
    }
-
 
843
    $resultat->free();
-
 
844
    
819
    //-------------------------------------------------------------------------------------------------------------------
845
    //-------------------------------------------------------------------------------------------------------------------
820
    // S'il n'y a plus de sous niveau, on supprime le menu
846
    // S'il n'y a plus de sous niveau, on supprime le menu
821
    $requete =  'DELETE FROM gen_menu '.
847
    $requete =  'DELETE FROM gen_menu '.
Line 822... Line 848...
822
                'WHERE gm_id_menu = '.$id_menu_a_supprimer;
848
                'WHERE gm_id_menu = '.$id_menu_a_supprimer;
Line 829... Line 855...
829
    $requete =  'DELETE FROM gen_menu_relation '.
855
    $requete =  'DELETE FROM gen_menu_relation '.
830
                'WHERE gmr_id_menu_01 = '.$id_menu_a_supprimer;
856
                'WHERE gmr_id_menu_01 = '.$id_menu_a_supprimer;
Line 831... Line 857...
831
    
857
    
832
    $resultat = $db->query($requete);
858
    $resultat = $db->query($requete);
-
 
859
    (DB::isError($resultat)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) : '';
833
    (DB::isError($resultat)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) : '';
860
    
Line 834... Line 861...
834
}
861
}
Line 842... Line 869...
842
 
869
 
843
 
870
 
844
/* +--Fin du code ----------------------------------------------------------------------------------------+
871
/* +--Fin du code ----------------------------------------------------------------------------------------+
-
 
872
*
-
 
873
* $Log: not supported by cvs2svn $
-
 
874
* Revision 1.6  2004/11/10 17:26:07  jpm
845
*
875
* Fin gestion de la traduction.
846
* $Log: not supported by cvs2svn $
876
*
847
* Revision 1.5  2004/11/09 17:48:35  jpm
877
* Revision 1.5  2004/11/09 17:48:35  jpm
848
* Gestion de différentes interfaces d'administration.
878
* Gestion de différentes interfaces d'administration.
849
*
879
*