Subversion Repositories Applications.papyrus

Rev

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

Rev 72 Rev 75
Line 18... Line 18...
18
// |                                                                                                      |
18
// |                                                                                                      |
19
// | You should have received a copy of the GNU Lesser General Public                                     |
19
// | You should have received a copy of the GNU Lesser General Public                                     |
20
// | License along with this library; if not, write to the Free Software                                  |
20
// | License along with this library; if not, write to the Free Software                                  |
21
// | Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA                            |
21
// | Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA                            |
22
// +------------------------------------------------------------------------------------------------------+
22
// +------------------------------------------------------------------------------------------------------+
23
// CVS : $Id: adsi_site.fonct.php,v 1.4 2004-10-18 18:27:41 jpm Exp $
23
// CVS : $Id: adsi_site.fonct.php,v 1.5 2004-10-19 15:57:55 jpm Exp $
24
/**
24
/**
25
* Bibliothèque de fonctions d'admininistration des projets
25
* Bibliothèque de fonctions d'admininistration des projets
26
*
26
*
27
* Contient un ensemble de fonctions permettant à l'application Administrateur de Papyrus, de modifier des informations
27
* Contient un ensemble de fonctions permettant à l'application Administrateur de Papyrus, de modifier des informations
28
* sur les projets (=sites gérés par Papyrus).
28
* sur les projets (=sites gérés par Papyrus).
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.4 $ $Date: 2004-10-18 18:27:41 $
38
*@version       $Revision: 1.5 $ $Date: 2004-10-19 15:57:55 $
39
// +------------------------------------------------------------------------------------------------------+
39
// +------------------------------------------------------------------------------------------------------+
40
*/
40
*/
Line 41... Line 41...
41
 
41
 
42
// +------------------------------------------------------------------------------------------------------+
42
// +------------------------------------------------------------------------------------------------------+
Line 45... Line 45...
45
 
45
 
46
/** Inclusion de la classe Formulaire.
46
/** Inclusion de la classe Formulaire.
47
* Elle permet la création rapide de formulaire basé sur les tables Mysql.
47
* Elle permet la création rapide de formulaire basé sur les tables Mysql.
48
*/
48
*/
49
require_once ADSI_CHEMIN_BIBLIOTHEQUE_API.'formulaire_1.0/FORM_Form.class.php';
49
require_once ADSI_CHEMIN_BIBLIOTHEQUE_API.'formulaire_1.0/FORM_Form.class.php';
50
if (GEN_SAFE_MODE) {
50
if (GEN_FTP_UTILISE) {
51
    /** Inclusion bibliothèque de PEAR gérant le FTP.*/
51
    /** Inclusion bibliothèque de PEAR gérant le FTP.*/
52
    require_once ADSI_CHEMIN_BIBLIOTHEQUE_PEAR.'Net/FTP.php';
52
    require_once ADSI_CHEMIN_BIBLIOTHEQUE_PEAR.'Net/FTP.php';
Line 53... Line 53...
53
}
53
}
Line 253... Line 253...
253
    
253
    
254
    // En modification nous affichons la liste des squelettes disponiblent dans
254
    // En modification nous affichons la liste des squelettes disponiblent dans
255
    // le dossier du site.
255
    // le dossier du site.
256
    if ($aso_valeurs['modification']) {
256
    if ($aso_valeurs['modification']) {
257
        $aso_options = array();
257
        $aso_options = array();
258
        if (!GEN_SAFE_MODE) {
258
        if (!GEN_FTP_UTILISE) {
259
            $chemin_squelettes =    PAP_CHEMIN_RACINE.GEN_CHEMIN_SITES.$aso_valeurs['gs_code_alpha'].GEN_SEP.
259
            $chemin_squelettes =    PAP_CHEMIN_RACINE.GEN_CHEMIN_SITES.$aso_valeurs['gs_code_alpha'].GEN_SEP.
260
                                    $aso_valeurs['gs_ce_i18n'].GEN_SEP.GEN_DOSSIER_SQUELETTE.GEN_SEP;
260
                                    $aso_valeurs['gs_ce_i18n'].GEN_SEP.GEN_DOSSIER_SQUELETTE.GEN_SEP;
261
            $dossier = opendir($chemin_squelettes);
261
            $dossier = opendir($chemin_squelettes);
262
            while(($fichier = readdir($dossier)) !== false) {
262
            while(($fichier = readdir($dossier)) !== false) {
Line 428... Line 428...
428
        $message .= '<p class="genesia_erreur">Le champ "Nom" ne doit pas être vide.</p>';
428
        $message .= '<p class="genesia_erreur">Le champ "Nom" ne doit pas être vide.</p>';
429
    }
429
    }
430
    if (empty($aso_valeurs['gs_code_alpha'])) {
430
    if (empty($aso_valeurs['gs_code_alpha'])) {
431
        $message .= '<p class="genesia_erreur">Le champ "Code alphanumérique" ne doit pas être vide.</p>';
431
        $message .= '<p class="genesia_erreur">Le champ "Code alphanumérique" ne doit pas être vide.</p>';
432
    }
432
    }
433
    if (empty($aso_valeurs['gs_code_num'])) {
433
    if ($aso_valeurs['gs_code_num'] == '') {
-
 
434
        // Note: ne pas utilisez empty() car si on veut saisir 0, cela est conscidéré comme vide!
434
        $message .= '<p class="genesia_erreur">Le champ "Code numérique" ne doit pas être vide.</p>';
435
        $message .= '<p class="genesia_erreur">Le champ "Code numérique" ne doit pas être vide.</p>';
435
    }
436
    }
436
    if (preg_match('/^[0-9]+$/',$aso_valeurs['gs_code_num']) == 0) {
437
    if (preg_match('/^[0-9]+$/',$aso_valeurs['gs_code_num']) == 0) {
437
        $message .= '<p class="genesia_erreur">Le champ "Code numérique" doit contenir un nombre.</p>';
438
        $message .= '<p class="genesia_erreur">Le champ "Code numérique" doit contenir un nombre.</p>';
438
    }
439
    }
Line 561... Line 562...
561
        if (DB::isError($resultat)) {
562
        if (DB::isError($resultat)) {
562
            die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete));
563
            die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete));
563
        }
564
        }
564
    }
565
    }
565
    // Ajout des répertoires du site soit par manipulation de fichier soit par FTP en fonction de l'activation du safe_mode ou pas
566
    // Ajout des répertoires du site soit par manipulation de fichier soit par FTP en fonction de l'activation du safe_mode ou pas
-
 
567
    $tab_rep_langue = array(GEN_DOSSIER_GENERIQUE, $aso_valeurs['gs_ce_i18n']);
566
    $tableau_repertoires = array(   GEN_DOSSIER_IMAGE,
568
    $tab_rep_site = array(  GEN_DOSSIER_IMAGE,
567
                                        GEN_DOSSIER_STYLE,
569
                            GEN_DOSSIER_STYLE,
568
                                        GEN_DOSSIER_SCRIPT,
570
                            GEN_DOSSIER_SCRIPT,
569
                                        GEN_DOSSIER_SQUELETTE,
571
                            GEN_DOSSIER_SQUELETTE,
570
                                        GEN_DOSSIER_DOC);
572
                            GEN_DOSSIER_DOC);
571
    if (!GEN_SAFE_MODE) {
573
    if (!GEN_FTP_UTILISE) {
572
        foreach ($tableau_repertoires as $nom_repertoire) {
574
        foreach ($tab_rep_langue as $nom_rep_langue) {
-
 
575
            foreach ($tab_rep_site as $nom_rep_site) {
573
            $chemin_repertoire = PAP_CHEMIN_RACINE.GEN_CHEMIN_SITES.$aso_valeurs['gs_code_alpha'].GEN_SEP.$aso_valeurs['gs_ce_i18n'].GEN_SEP.$nom_repertoire;
576
                $chemin_repertoire =    PAP_CHEMIN_RACINE.GEN_CHEMIN_SITES.$aso_valeurs['gs_code_alpha'].GEN_SEP.
-
 
577
                                        $nom_rep_langue.GEN_SEP.$nom_rep_site;
574
            $vieux_umask = umask(0);
578
                $vieux_umask = umask(0);
575
            $resultat = creerDossier($chemin_repertoire, 0777, GEN_SEP);
579
                $resultat = creerDossier($chemin_repertoire, 0755, GEN_SEP);
576
            umask($vieux_umask);
580
                umask($vieux_umask);
577
            if ($resultat == false) {
581
                if ($resultat == false) {
578
                $message =  '<p class="genesia_erreur"> ERREUR Papyrus admin : impossible de créer le répertoire.<br />'.
582
                    $message =  '<p class="genesia_erreur"> ERREUR Papyrus admin : impossible de créer le répertoire.<br />'.
579
                            'Répertoire : '. $chemin_repertoire .'<br />'.
583
                                'Répertoire : '. $chemin_repertoire .'<br />'.
580
                            'Ligne n° : '. __LINE__ .'<br />'.
584
                                'Ligne n° : '. __LINE__ .'<br />'.
581
                            'Fichier n° : '. __FILE__ .'<br /></p>';
585
                                'Fichier n° : '. __FILE__ .'<br /></p>';
582
                return $message;
586
                    return $message;
-
 
587
                }
583
            }
588
            }
584
        }
589
        }
585
        $chemin_squelette_defaut =  PAP_CHEMIN_RACINE.GEN_CHEMIN_COMMUN.GEN_DOSSIER_GENERIQUE.GEN_SEP.
590
        $chemin_squelette_defaut =  PAP_CHEMIN_RACINE.GEN_CHEMIN_COMMUN.GEN_DOSSIER_GENERIQUE.GEN_SEP.
586
                                    GEN_DOSSIER_SQUELETTE.GEN_SEP.GEN_FICHIER_SQUELETTE;
591
                                    GEN_DOSSIER_SQUELETTE.GEN_SEP.GEN_FICHIER_SQUELETTE;
587
        $chemin_squelette_site =    PAP_CHEMIN_RACINE.GEN_CHEMIN_SITES.$aso_valeurs['gs_code_alpha'].GEN_SEP.
592
        $chemin_squelette_site =    PAP_CHEMIN_RACINE.GEN_CHEMIN_SITES.$aso_valeurs['gs_code_alpha'].GEN_SEP.
588
                                    $aso_valeurs['gs_ce_i18n'].GEN_SEP.GEN_DOSSIER_SQUELETTE.GEN_SEP.GEN_FICHIER_SQUELETTE;
593
                                    $aso_valeurs['gs_ce_i18n'].GEN_SEP.GEN_DOSSIER_SQUELETTE.GEN_SEP.GEN_FICHIER_SQUELETTE;
589
        if (!copy($chemin_squelette_defaut, $chemin_squelette_site)) {
594
        if (!copy($chemin_squelette_defaut, $chemin_squelette_site)) {
590
            $message =  '<p class="genesia_erreur"> ERREUR Papyrus admin : impossible de créer le fichier de squellete par défaut.<br />'.
595
            $message =  '<p class="genesia_erreur"> ERREUR Papyrus admin : impossible de créer le fichier de squellete par défaut.<br />'.
591
                        'Fichier : '. $$chemin_squelette_site .'<br />'.
596
                        'Fichier : '. $chemin_squelette_site .'<br />'.
592
                        'Ligne n° : '. __LINE__ .'<br />'.
597
                        'Ligne n° : '. __LINE__ .'<br />'.
593
                        'Fichier n° : '. __FILE__ .'<br /></p>';
598
                        'Fichier n° : '. __FILE__ .'<br /></p>';
594
            return $message;
599
            return $message;
595
        }
600
        }
596
        $chemin_style_defaut =  PAP_CHEMIN_RACINE.GEN_CHEMIN_COMMUN.GEN_DOSSIER_GENERIQUE.GEN_SEP.
601
        $chemin_style_defaut =  PAP_CHEMIN_RACINE.GEN_CHEMIN_COMMUN.GEN_DOSSIER_GENERIQUE.GEN_SEP.
597
                                GEN_DOSSIER_STYLE.GEN_SEP.GEN_FICHIER_STYLE;
602
                                GEN_DOSSIER_STYLE.GEN_SEP.GEN_FICHIER_STYLE;
598
        $chemin_style_site =    PAP_CHEMIN_RACINE.GEN_CHEMIN_SITES.$aso_valeurs['gs_code_alpha'].GEN_SEP.
603
        $chemin_style_site =    PAP_CHEMIN_RACINE.GEN_CHEMIN_SITES.$aso_valeurs['gs_code_alpha'].GEN_SEP.
599
                                $aso_valeurs['gs_ce_i18n'].GEN_SEP.GEN_DOSSIER_STYLE.GEN_SEP.GEN_FICHIER_STYLE;
604
                                $aso_valeurs['gs_ce_i18n'].GEN_SEP.GEN_DOSSIER_STYLE.GEN_SEP.GEN_FICHIER_STYLE;
600
        if (!copy($chemin_style_defaut, $chemin_style_site)) {
605
        if (!copy($chemin_style_defaut, $chemin_style_site)) {
601
            $message =  '<p class="genesia_erreur"> ERREUR Papyrus admin : impossible de créer le fichier de style par défaut.<br />'.
606
            $message =  '<p class="genesia_erreur"> ERREUR Papyrus admin : impossible de créer le fichier de style par défaut.<br />'.
602
                        'Fichier : '. $$chemin_style_site .'<br />'.
607
                        'Fichier : '. $chemin_style_site .'<br />'.
603
                        'Ligne n° : '. __LINE__ .'<br />'.
608
                        'Ligne n° : '. __LINE__ .'<br />'.
604
                        'Fichier n° : '. __FILE__ .'<br /></p>';
609
                        'Fichier n° : '. __FILE__ .'<br /></p>';
605
            return $message;
610
            return $message;
606
        }
611
        }
607
    } else {
612
    } else {
Line 623... Line 628...
623
                        'Erreur login : '.$ftp_login_result->getMessage().'<br />'.
628
                        'Erreur login : '.$ftp_login_result->getMessage().'<br />'.
624
                        'Ligne n° : '. __LINE__ .'<br />'.
629
                        'Ligne n° : '. __LINE__ .'<br />'.
625
                        'Fichier n° : '. __FILE__ .'<br /><p>';
630
                        'Fichier n° : '. __FILE__ .'<br /><p>';
626
            return $message;
631
            return $message;
627
        }
632
        }
628
        foreach ($tableau_repertoires as $nom_repertoire) {
633
        foreach ($tab_rep_langue as $nom_rep_langue) {
-
 
634
            foreach ($tab_rep_site as $nom_rep_site) {
629
            $chemin_repertoire =    PAP_FTP_RACINE.GEN_CHEMIN_SITES.$aso_valeurs['gs_code_alpha'].GEN_SEP.
635
                $chemin_repertoire =    PAP_FTP_RACINE.GEN_CHEMIN_SITES.$aso_valeurs['gs_code_alpha'].GEN_SEP.
630
                                    $aso_valeurs['gs_ce_i18n'].GEN_SEP.$nom_repertoire.GEN_SEP;
636
                                        $nom_rep_langue.GEN_SEP.$nom_rep_site.GEN_SEP;
631
            $resultat = $objet_pear_ftp->mkdir($chemin_repertoire, true) ;
637
                $resultat = $objet_pear_ftp->mkdir($chemin_repertoire, true) ;
632
            if (PEAR::isError($resultat)) {
638
                if (PEAR::isError($resultat)) {
633
                $message =  '<p class="pap_erreur"> ERREUR Papyrus admin : impossible de créer le répertoire par ftp.<br />'.
639
                    $message =  '<p class="pap_erreur"> ERREUR Papyrus admin : impossible de créer le répertoire par ftp.<br />'.
634
                            'Répertoire : '. $chemin_repertoire .'<br />'.
640
                                'Répertoire : '. $chemin_repertoire .'<br />'.
635
                            'Erreur origine : '. $resultat->getMessage() .'<br />'.
641
                                'Erreur origine : '. $resultat->getMessage() .'<br />'.
636
                            'Ligne n° : '. __LINE__ .'<br />'.
642
                                'Ligne n° : '. __LINE__ .'<br />'.
637
                            'Fichier n° : '. __FILE__ .'<br /></p>';
643
                                'Fichier n° : '. __FILE__ .'<br /></p>';
638
                return $message;
644
                    return $message;
-
 
645
                }
639
            }
646
            }
640
        }
647
        }
641
        $chemin_squelette_defaut =  PAP_CHEMIN_RACINE.GEN_CHEMIN_COMMUN.GEN_DOSSIER_GENERIQUE.GEN_SEP.
648
        $chemin_squelette_defaut =  PAP_CHEMIN_RACINE.GEN_CHEMIN_COMMUN.GEN_DOSSIER_GENERIQUE.GEN_SEP.
642
                                    GEN_DOSSIER_SQUELETTE.GEN_SEP.GEN_FICHIER_SQUELETTE;
649
                                    GEN_DOSSIER_SQUELETTE.GEN_SEP.GEN_FICHIER_SQUELETTE;
643
        $chemin_squelette_site =    PAP_FTP_RACINE.GEN_CHEMIN_SITES.$aso_valeurs['gs_code_alpha'].GEN_SEP.
650
        $chemin_squelette_site =    PAP_FTP_RACINE.GEN_CHEMIN_SITES.$aso_valeurs['gs_code_alpha'].GEN_SEP.
Line 682... Line 689...
682
* @param  int      identifiant de l'administrateur réalisant cette modification.
689
* @param  int      identifiant de l'administrateur réalisant cette modification.
683
* @return string retourne un message en cas de succès ou d'échec.
690
* @return string retourne un message en cas de succès ou d'échec.
684
*/
691
*/
685
function ADMIN_modifierSite($db, $aso_valeurs, $id_admin)
692
function ADMIN_modifierSite($db, $aso_valeurs, $id_admin)
686
{
693
{
-
 
694
    // Récupération de l'ancien code alphanumérique
-
 
695
    $requete =  'SELECT gs_code_alpha '.
-
 
696
                'FROM gen_site '.
-
 
697
                'WHERE gs_id_site = '.$aso_valeurs['gs_id_site'];
-
 
698
    $ancien_code_alphnum = $db->getOne($requete);
-
 
699
    if (DB::isError($ancien_code_alphnum)) {
-
 
700
        die( BOG_afficherErreurSql(__FILE__, __LINE__, $ancien_code_alphnum->getMessage(), $requete) );
-
 
701
    }
-
 
702
    if ($aso_valeurs['gs_code_alpha'] != $ancien_code_alphnum) {
-
 
703
        if (!GEN_FTP_UTILISE) {
-
 
704
            $chemin_site_ancien = PAP_CHEMIN_RACINE.GEN_CHEMIN_SITES.$ancien_code_alphnum.GEN_SEP;
-
 
705
            $chemin_site_nouveau = PAP_CHEMIN_RACINE.GEN_CHEMIN_SITES.$aso_valeurs['gs_code_alpha'].GEN_SEP;
-
 
706
            if (!rename($chemin_site_ancien, $chemin_site_nouveau)) {
-
 
707
                $message =  '<p class="pap_erreur"> ERREUR Papyrus admin : impossible de changer le nom du dossier du site.<br />'.
-
 
708
                            'Ancien nom : '. $chemin_site_ancien .'<br />'.
-
 
709
                            'Nouveau nom : '. $chemin_site_nouveau .'<br />'.
-
 
710
                            'Ligne n° : '. __LINE__ .'<br />'.
-
 
711
                            'Fichier n° : '. __FILE__ .'<br /></p>';
-
 
712
                return $message;
-
 
713
            }
-
 
714
        } else {
-
 
715
            $chemin_site_ancien = PAP_CHEMIN_RACINE.GEN_CHEMIN_SITES.$ancien_code_alphnum.GEN_SEP;
-
 
716
            $chemin_site_nouveau = PAP_FTP_RACINE.GEN_CHEMIN_SITES.$aso_valeurs['gs_code_alpha'].GEN_SEP;
-
 
717
            // Création d'une connection ftp avec Net_FTP de PEAR
-
 
718
            // voir http://pear.php.net/manual/fr/package.networking.net-ftp.php
-
 
719
            // création de l'objet pear ftp
-
 
720
            $objet_pear_ftp = new Net_FTP(PAP_FTP_SERVEUR, PAP_FTP_PORT);
-
 
721
            // création de la connexion
-
 
722
            $ftp_conn = $objet_pear_ftp->connect(PAP_FTP_SERVEUR, PAP_FTP_PORT);
-
 
723
            // identification
-
 
724
            $ftp_login_result = $objet_pear_ftp->login(PAP_FTP_UTILISATEUR, PAP_FTP_MOT_DE_PASSE);
-
 
725
            // Gestion des erreurs ftp
-
 
726
            if ((PEAR::isError($ftp_conn) || PEAR::isError($ftp_login_result))) {
-
 
727
                $message =  '<p class="pap_erreur"> ERREUR Papyrus admin : impossible de se connecter par ftp.<br />'.
-
 
728
                            'Serveur : '. PAP_FTP_SERVEUR .'<br />'.
-
 
729
                            'Utilisateur : '. PAP_FTP_UTILISATEUR .'<br />'.
-
 
730
                            'Erreur connexion : '.$ftp_conn->getMessage().'<br />'.
-
 
731
                            'Erreur login : '.$ftp_login_result->getMessage().'<br />'.
-
 
732
                            'Ligne n° : '. __LINE__ .'<br />'.
-
 
733
                            'Fichier n° : '. __FILE__ .'<br /><p>';
-
 
734
                return $message;
-
 
735
            }
-
 
736
            $resultat = $objet_pear_ftp->putRecursive($chemin_site_ancien, $chemin_site_nouveau, false, FTP_BINARY);
-
 
737
            if (PEAR::isError($resultat)) {
-
 
738
                $message =  '<p class="pap_erreur"> ERREUR Papyrus admin : impossible de copier l\'ancien dossier du site.<br />'.
-
 
739
                            'Dossier site ancien : '. $chemin_site_ancien .'<br />'.
-
 
740
                            'Dossier site nouveau : '. $chemin_site_nouveau .'<br />'.
-
 
741
                            'Erreur origine : '. $resultat->getMessage() .'<br />'.
-
 
742
                            'Ligne n° : '. __LINE__ .'<br />'.
-
 
743
                            'Fichier n° : '. __FILE__ .'<br /></p>';
-
 
744
                    return $message;
-
 
745
            }
-
 
746
            // On utilise la racine FTP pour rm
-
 
747
            $chemin_site_ancien = PAP_FTP_RACINE.GEN_CHEMIN_SITES.$ancien_code_alphnum.GEN_SEP;
-
 
748
            // Changement du niveau d'erreur pour éviter les Notices PHP dues à Net_FTP
-
 
749
            error_reporting(E_PARSE);
-
 
750
            $resultat = $objet_pear_ftp->rm($chemin_site_ancien, true);
-
 
751
            if (PEAR::isError($resultat)) {
-
 
752
                $message =  '<p class="pap_erreur"> ERREUR Papyrus admin : impossible de supprimer l\'ancien dossier du site.<br />'.
-
 
753
                            'Dossier site ancien : '. $chemin_site_ancien .'<br />'.
-
 
754
                            'Erreur origine : '. $resultat->getMessage() .'<br />'.
-
 
755
                            'Ligne n° : '. __LINE__ .'<br />'.
-
 
756
                            'Fichier n° : '. __FILE__ .'<br /></p>';
-
 
757
                    return $message;
-
 
758
            }
-
 
759
            // Retour au niveau d'erreur définit dans le fichier de config de Papyrus
-
 
760
            error_reporting(GEN_DEBOGAGE_NIVEAU);
-
 
761
            $objet_pear_ftp->disconnect();
-
 
762
        }
-
 
763
    }
687
    // Requete de mise à jour des infos d'un site dans gen_site
764
    // Requete de mise à jour des infos d'un site dans gen_site
688
    $requete =  'UPDATE gen_site '.
765
    $requete =  'UPDATE gen_site '.
689
                'SET gs_ce_i18n = "'.$aso_valeurs['gs_ce_i18n'].'", '.
766
                'SET gs_ce_i18n = "'.$aso_valeurs['gs_ce_i18n'].'", '.
690
                'gs_ce_auth = '.$aso_valeurs['gs_ce_auth'].', '.
767
                'gs_ce_auth = '.$aso_valeurs['gs_ce_auth'].', '.
691
                'gs_fichier_squelette = "'.$aso_valeurs['gs_fichier_squelette'].'", '.
768
                'gs_fichier_squelette = "'.$aso_valeurs['gs_fichier_squelette'].'", '.
Line 750... Line 827...
750
    $code_alpha_site_principal = $db->getOne($requete);
827
    $code_alpha_site_principal = $db->getOne($requete);
751
    if (DB::isError($code_alpha_site_principal)) {
828
    if (DB::isError($code_alpha_site_principal)) {
752
        die(BOG_afficherErreurSql(__FILE__, __LINE__, $code_alpha_site_principal->getMessage(), $requete));
829
        die(BOG_afficherErreurSql(__FILE__, __LINE__, $code_alpha_site_principal->getMessage(), $requete));
753
    }
830
    }
Line -... Line 831...
-
 
831
    
-
 
832
    // Nous vérifions que le site n'a pas le code alphanum correspondant au site par défaut d'administration (admin).
-
 
833
    if ($code_alpha_site_principal == GEN_SITE_DEFAUT) {
-
 
834
        $message =  '<p class="pap_erreur">Si vous voulez vraiment supprimer le site d\'administration par défaut de '.
-
 
835
                    'Papyrus, veuillez commencer par changer la valeur de son code alphanumérique. Vous pourrez '.
-
 
836
                    'ensuite le supprimer via cette interface.</p>';
-
 
837
        return $message;
-
 
838
    }
754
    
839
    
755
    // Recherche des différents sites liés à celui que l'on veut détruire
840
    // Recherche des différents sites liés à celui que l'on veut détruire
756
    // Cela comprend le site à détruire lui méme car il posséde la relations
841
    // Cela comprend le site à détruire lui méme car il posséde la relations
757
    // sur lui meme "site principale".
842
    // sur lui meme "site principale".
758
    $requete =  'SELECT gs_id_site '.
843
    $requete =  'SELECT gs_id_site '.
Line 824... Line 909...
824
        $resultat_menu->free();
909
        $resultat_menu->free();
825
    }
910
    }
826
    $resultat->free();
911
    $resultat->free();
Line 827... Line 912...
827
    
912
    
828
    // Suppression des répertoires du site
913
    // Suppression des répertoires du site
829
    if (!GEN_SAFE_MODE) {
914
    if (!GEN_FTP_UTILISE) {
830
        $chemin_repertoire = PAP_CHEMIN_RACINE.GEN_CHEMIN_SITES.$code_alpha_site_principal;
915
        $chemin_repertoire = PAP_CHEMIN_RACINE.GEN_CHEMIN_SITES.$code_alpha_site_principal;
831
        $resultat = supprimerDossier($chemin_repertoire, GEN_SEP);
916
        $resultat = supprimerDossier($chemin_repertoire, GEN_SEP);
832
        if (!$resultat) {
917
        if (!$resultat) {
833
            $message =  '<p class="pap_erreur"> ERREUR Papyrus admin : impossible de supprimer le répertoire.<br />'.
918
            $message =  '<p class="pap_erreur"> ERREUR Papyrus admin : impossible de supprimer le répertoire.<br />'.
Line 843... Line 928...
843
        // création de l'objet pear ftp
928
        // création de l'objet pear ftp
844
        $objet_pear_ftp = new Net_FTP(PAP_FTP_SERVEUR, PAP_FTP_PORT);
929
        $objet_pear_ftp = new Net_FTP(PAP_FTP_SERVEUR, PAP_FTP_PORT);
845
        // création de la connexion
930
        // création de la connexion
846
        $ftp_conn = $objet_pear_ftp->connect(PAP_FTP_SERVEUR, PAP_FTP_PORT);
931
        $ftp_conn = $objet_pear_ftp->connect(PAP_FTP_SERVEUR, PAP_FTP_PORT);
847
        // identification
932
        // identification
848
        $ftp_login_result = $objet_pear_ftp->login(PAP_FTP_UTILISATEUR, PAP_FTP_MOT_DE_PASSE);;
933
        $ftp_login_result = $objet_pear_ftp->login(PAP_FTP_UTILISATEUR, PAP_FTP_MOT_DE_PASSE);
849
        // Gestion des erreurs ftp
934
        // Gestion des erreurs ftp
850
        if ((PEAR::isError($ftp_conn) || PEAR::isError($ftp_login_result))) {
935
        if ((PEAR::isError($ftp_conn) || PEAR::isError($ftp_login_result))) {
851
            $message =  '<p class="pap_erreur"> ERREUR Papyrus admin : impossible de se connecter par ftp.<br />'.
936
            $message =  '<p class="pap_erreur"> ERREUR Papyrus admin : impossible de se connecter par ftp.<br />'.
852
                        'Erreur connexion : '.$ftp_conn->getMessage().'<br />'.
937
                        'Erreur connexion : '.$ftp_conn->getMessage().'<br />'.
853
                        'Erreur login : '.$ftp_login_result->getMessage().'<br />'.
938
                        'Erreur login : '.$ftp_login_result->getMessage().'<br />'.
Line 878... Line 963...
878
}
963
}
Line 879... Line 964...
879
 
964
 
880
// +- Fin du code source  --------------------------------------------------------------------------------+
965
// +- Fin du code source  --------------------------------------------------------------------------------+
881
/*
966
/*
-
 
967
* $Log: not supported by cvs2svn $
-
 
968
* Revision 1.4  2004/10/18 18:27:41  jpm
-
 
969
* Correction problèmes FTP et manipulation de fichiers.
882
* $Log: not supported by cvs2svn $
970
*
883
* Revision 1.3  2004/09/23 16:51:27  jpm
971
* Revision 1.3  2004/09/23 16:51:27  jpm
884
* Ajout d'informations supplémentaires sur les messages d'erreur.
972
* Ajout d'informations supplémentaires sur les messages d'erreur.
885
*
973
*
886
* Revision 1.2  2004/07/06 17:08:01  jpm
974
* Revision 1.2  2004/07/06 17:08:01  jpm