| 2075 | 
           Jean-Pasca | 
           1 | 
           <?php
  | 
        
        
            | 
            | 
           2 | 
           /*vim: set expandtab tabstop=4 shiftwidth=4: */
  | 
        
        
            | 
            | 
           3 | 
           // +------------------------------------------------------------------------------------------------------+
  | 
        
        
            | 
            | 
           4 | 
           // | PHP version 4.1                                                                                      |
  | 
        
        
            | 
            | 
           5 | 
           // +------------------------------------------------------------------------------------------------------+
  | 
        
        
            | 
            | 
           6 | 
           // | Copyright (C) 2004 Tela Botanica (accueil@tela-botanica.org)                                         |
  | 
        
        
            | 
            | 
           7 | 
           // +------------------------------------------------------------------------------------------------------+
  | 
        
        
            | 
            | 
           8 | 
           // | This library is free software; you can redistribute it and/or                                        |
  | 
        
        
            | 
            | 
           9 | 
           // | modify it under the terms of the GNU Lesser General Public                                           |
  | 
        
        
            | 
            | 
           10 | 
           // | License as published by the Free Software Foundation; either                                         |
  | 
        
        
            | 
            | 
           11 | 
           // | version 2.1 of the License, or (at your option) any later version.                                   |
  | 
        
        
            | 
            | 
           12 | 
           // |                                                                                                      |
  | 
        
        
            | 
            | 
           13 | 
           // | This library is distributed in the hope that it will be useful,                                      |
  | 
        
        
            | 
            | 
           14 | 
           // | but WITHOUT ANY WARRANTY; without even the implied warranty of                                       |
  | 
        
        
            | 
            | 
           15 | 
           // | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU                                    |
  | 
        
        
            | 
            | 
           16 | 
           // | Lesser General Public License for more details.                                                      |
  | 
        
        
            | 
            | 
           17 | 
           // |                                                                                                      |
  | 
        
        
            | 
            | 
           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                                  |
  | 
        
        
            | 
            | 
           20 | 
           // | Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA                            |
  | 
        
        
            | 
            | 
           21 | 
           // +------------------------------------------------------------------------------------------------------+
  | 
        
        
            | 
            | 
           22 | 
           // CVS : $Id: adsi_site.fonct.php,v 1.42 2007-10-23 13:31:22 ddelon Exp $
  | 
        
        
            | 
            | 
           23 | 
           /**
  | 
        
        
            | 
            | 
           24 | 
           * Bibliotheque de fonctions d'admininistration des projets
  | 
        
        
            | 
            | 
           25 | 
           *
  | 
        
        
            | 
            | 
           26 | 
           * Contient un ensemble de fonctions permettant a l'application Administrateur de Papyrus, de modifier des informations
  | 
        
        
            | 
            | 
           27 | 
           * sur les projets (=sites geres par Papyrus).
  | 
        
        
            | 
            | 
           28 | 
           *
  | 
        
        
            | 
            | 
           29 | 
           *@package Admin_site
  | 
        
        
            | 
            | 
           30 | 
           *@subpackage Fonctions
  | 
        
        
            | 
            | 
           31 | 
           //Auteur original :
  | 
        
        
            | 
            | 
           32 | 
           *@author        Jean-Pascal MILCENT <jpm@tela-botanica.org>
  | 
        
        
            | 
            | 
           33 | 
           //Autres auteurs :
  | 
        
        
            | 
            | 
           34 | 
           *@author        Alexandre GRANIER <alexandre@tela-botanica.org>
  | 
        
        
            | 
            | 
           35 | 
           *@author        Laurent COUDOUNEAU <lc@gsite.org>
  | 
        
        
            | 
            | 
           36 | 
           *@copyright     Tela-Botanica 2000-2004
  | 
        
        
            | 
            | 
           37 | 
           *@version       $Revision: 1.42 $ $Date: 2007-10-23 13:31:22 $
  | 
        
        
            | 
            | 
           38 | 
           // +------------------------------------------------------------------------------------------------------+
  | 
        
        
            | 
            | 
           39 | 
           */
  | 
        
        
            | 
            | 
           40 | 
              | 
        
        
            | 
            | 
           41 | 
           // +------------------------------------------------------------------------------------------------------+
  | 
        
        
            | 
            | 
           42 | 
           // |                                            ENT�TE du PROGRAMME                                       |
  | 
        
        
            | 
            | 
           43 | 
           // +------------------------------------------------------------------------------------------------------+
  | 
        
        
            | 
            | 
           44 | 
           if (GEN_FTP_UTILISE) {
  | 
        
        
            | 
            | 
           45 | 
               /** Inclusion bibliotheque de PEAR gerant le FTP.*/
  | 
        
        
            | 
            | 
           46 | 
               require_once ADSI_CHEMIN_BIBLIOTHEQUE_PEAR.'Net/FTP.php';
  | 
        
        
            | 
            | 
           47 | 
           }
  | 
        
        
            | 
            | 
           48 | 
              | 
        
        
            | 
            | 
           49 | 
           // +------------------------------------------------------------------------------------------------------+
  | 
        
        
            | 
            | 
           50 | 
           // |                                            CORPS du PROGRAMME                                        |
  | 
        
        
            | 
            | 
           51 | 
           // +------------------------------------------------------------------------------------------------------+
  | 
        
        
            | 
            | 
           52 | 
           /** Fonction ADMIN_afficherListeSites()- Genere le xhtml permettant de choisir un site parmis une liste.
  | 
        
        
            | 
            | 
           53 | 
           *
  | 
        
        
            | 
            | 
           54 | 
           * Cette fonction fournie une liste des sites principaux geres par papyrus.
  | 
        
        
            | 
            | 
           55 | 
           *
  | 
        
        
            | 
            | 
           56 | 
           * @param  string   l'objet Pear DB.
  | 
        
        
            | 
            | 
           57 | 
           * @param  string   l'url de la page � laquelle renvoyer le formulaire.
  | 
        
        
            | 
            | 
           58 | 
           * @param  string   un message important � destination de l'utilisateur.
  | 
        
        
            | 
            | 
           59 | 
           * return  string   le code XHTML a retourner.
  | 
        
        
            | 
            | 
           60 | 
           */
  | 
        
        
            | 
            | 
           61 | 
           function ADMIN_afficherFormListeSites(&$db, $url, $message = '')
  | 
        
        
            | 
            | 
           62 | 
           {
  | 
        
        
            | 
            | 
           63 | 
              | 
        
        
            | 
            | 
           64 | 
           	$id_langue = $GLOBALS['_GEN_commun']['i18n']; //identifiant de la langue choisie
  | 
        
        
            | 
            | 
           65 | 
              | 
        
        
            | 
            | 
           66 | 
           	// Langue en cours : langue choisie ou langue par defaut (principale)
  | 
        
        
            | 
            | 
           67 | 
              | 
        
        
            | 
            | 
           68 | 
           	if (isset($id_langue) && ($id_langue!='')) {
  | 
        
        
            | 
            | 
           69 | 
           		$langue_test=$id_langue;
  | 
        
        
            | 
            | 
           70 | 
           	} else {
  | 
        
        
            | 
            | 
           71 | 
           		$langue_test=GEN_I18N_ID_DEFAUT;
  | 
        
        
            | 
            | 
           72 | 
           	}
  | 
        
        
            | 
            | 
           73 | 
              | 
        
        
            | 
            | 
           74 | 
               // Liste des sites principaux :
  | 
        
        
            | 
            | 
           75 | 
               // Recherche de tous les sites langue en cours
  | 
        
        
            | 
            | 
           76 | 
              | 
        
        
            | 
            | 
           77 | 
               $requete =  'SELECT * '.
  | 
        
        
            | 
            | 
           78 | 
                           'FROM gen_site, gen_site_relation '.
  | 
        
        
            | 
            | 
           79 | 
                           'WHERE gsr_id_site_01 = gsr_id_site_02 '.
  | 
        
        
            | 
            | 
           80 | 
                           'AND gsr_id_site_01 = gs_id_site '.
  | 
        
        
            | 
            | 
           81 | 
                           'AND gsr_id_valeur IN (102, 103) '.
  | 
        
        
            | 
            | 
           82 | 
                           'AND gs_ce_i18n = "'.$langue_test.'" '.
  | 
        
        
            | 
            | 
           83 | 
                           'ORDER BY gsr_ordre';
  | 
        
        
            | 
            | 
           84 | 
              | 
        
        
            | 
            | 
           85 | 
              | 
        
        
            | 
            | 
           86 | 
               $resultat = $db->query($requete);
  | 
        
        
            | 
            | 
           87 | 
               (DB::isError($resultat)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) : '' ;
  | 
        
        
            | 
            | 
           88 | 
              | 
        
        
            | 
            | 
           89 | 
               $liste_site=array();
  | 
        
        
            | 
            | 
           90 | 
               while ($ligne = $resultat->fetchRow(DB_FETCHMODE_OBJECT)) {
  | 
        
        
            | 
            | 
           91 | 
              | 
        
        
            | 
            | 
           92 | 
               		if ($langue_test == GEN_I18N_ID_DEFAUT) {
  | 
        
        
            | 
            | 
           93 | 
              | 
        
        
            | 
            | 
           94 | 
               		  $requete_est_traduction =   'SELECT gsr_id_site_01 '.
  | 
        
        
            | 
            | 
           95 | 
           	                       'FROM  gen_site_relation '.
  | 
        
        
            | 
            | 
           96 | 
           	                       'WHERE '.$ligne->gs_id_site.' = gsr_id_site_02 ' .
  | 
        
        
            | 
            | 
           97 | 
           	                  	   'AND  gsr_id_site_01 <> gsr_id_site_02 ' .
  | 
        
        
            | 
            | 
           98 | 
           	                       'AND gsr_id_valeur = 1 ';// 1 = "avoir traduction"
  | 
        
        
            | 
            | 
           99 | 
              | 
        
        
            | 
            | 
           100 | 
              | 
        
        
            | 
            | 
           101 | 
           	            $resultat_est_traduction = $db->query($requete_est_traduction);
  | 
        
        
            | 
            | 
           102 | 
           	            (DB::isError($resultat_est_traduction))
  | 
        
        
            | 
            | 
           103 | 
           	                ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat_est_traduction->getMessage(), $requete_est_traduction))
  | 
        
        
            | 
            | 
           104 | 
           	                : '';
  | 
        
        
            | 
            | 
           105 | 
              | 
        
        
            | 
            | 
           106 | 
           	   			if ( $resultat_est_traduction->numRows() == 0 ) {
  | 
        
        
            | 
            | 
           107 | 
               	 			$liste_site[]=$ligne;
  | 
        
        
            | 
            | 
           108 | 
           	            }
  | 
        
        
            | 
            | 
           109 | 
               		}
  | 
        
        
            | 
            | 
           110 | 
               		else {
  | 
        
        
            | 
            | 
           111 | 
               			   $liste_site[]=$ligne;
  | 
        
        
            | 
            | 
           112 | 
               		}
  | 
        
        
            | 
            | 
           113 | 
               }
  | 
        
        
            | 
            | 
           114 | 
               $resultat->free();
  | 
        
        
            | 
            | 
           115 | 
              | 
        
        
            | 
            | 
           116 | 
               // Si la langue en cours n'est pas la langue par defaut, recherche des sites ayant comme langue
  | 
        
        
            | 
            | 
           117 | 
               // la langue par defaut, non traduits dans la langue en cours et n'etant pas des traductions
  | 
        
        
            | 
            | 
           118 | 
              | 
        
        
            | 
            | 
           119 | 
              | 
        
        
            | 
            | 
           120 | 
           	if ($langue_test != GEN_I18N_ID_DEFAUT) {
  | 
        
        
            | 
            | 
           121 | 
              | 
        
        
            | 
            | 
           122 | 
              | 
        
        
            | 
            | 
           123 | 
           	    $requete =  'SELECT * '.
  | 
        
        
            | 
            | 
           124 | 
           	                'FROM gen_site, gen_site_relation '.
  | 
        
        
            | 
            | 
           125 | 
           	                'WHERE gsr_id_site_01 = gsr_id_site_02 '.
  | 
        
        
            | 
            | 
           126 | 
           	                'AND gs_id_site = gsr_id_site_01 '.
  | 
        
        
            | 
            | 
           127 | 
           	                'AND gsr_id_valeur IN (102, 103) '.
  | 
        
        
            | 
            | 
           128 | 
           	                'AND gs_ce_i18n = "'.GEN_I18N_ID_DEFAUT.'" '.
  | 
        
        
            | 
            | 
           129 | 
           	                'ORDER BY gs_code_num ASC';// 102 = site "principal" et 103 = site "externe"
  | 
        
        
            | 
            | 
           130 | 
              | 
        
        
            | 
            | 
           131 | 
           	    $resultat = $db->query($requete);
  | 
        
        
            | 
            | 
           132 | 
           	    (DB::isError($resultat)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) : '';
  | 
        
        
            | 
            | 
           133 | 
              | 
        
        
            | 
            | 
           134 | 
              | 
        
        
            | 
            | 
           135 | 
              | 
        
        
            | 
            | 
           136 | 
              | 
        
        
            | 
            | 
           137 | 
           	    // Recherche de tous les sites de la langue principale  qui ne sont pas traduits dans la langue en cours
  | 
        
        
            | 
            | 
           138 | 
              | 
        
        
            | 
            | 
           139 | 
           	    while ($ligne = $resultat->fetchRow(DB_FETCHMODE_OBJECT)) {
  | 
        
        
            | 
            | 
           140 | 
              | 
        
        
            | 
            | 
           141 | 
           	    		$requete_est_traduction =   'SELECT gsr_id_site_01 '.
  | 
        
        
            | 
            | 
           142 | 
           	                                'FROM  gen_site_relation '.
  | 
        
        
            | 
            | 
           143 | 
           	                                'WHERE '.$ligne->gs_id_site.' = gsr_id_site_02 ' .
  | 
        
        
            | 
            | 
           144 | 
           	                                'AND  gsr_id_site_01 <> gsr_id_site_02 ' .
  | 
        
        
            | 
            | 
           145 | 
           	                                'AND gsr_id_valeur = 1 ';// 1 = "avoir traduction"
  | 
        
        
            | 
            | 
           146 | 
              | 
        
        
            | 
            | 
           147 | 
              | 
        
        
            | 
            | 
           148 | 
           	            $resultat_est_traduction = $db->query($requete_est_traduction);
  | 
        
        
            | 
            | 
           149 | 
           	            (DB::isError($resultat_est_traduction))
  | 
        
        
            | 
            | 
           150 | 
           	                ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat_est_traduction->getMessage(), $requete_est_traduction))
  | 
        
        
            | 
            | 
           151 | 
           	                : '';
  | 
        
        
            | 
            | 
           152 | 
              | 
        
        
            | 
            | 
           153 | 
           	            if ( $resultat_est_traduction->numRows() == 0 ) {
  | 
        
        
            | 
            | 
           154 | 
              | 
        
        
            | 
            | 
           155 | 
              | 
        
        
            | 
            | 
           156 | 
           					if (isset($id_langue) && ($id_langue!='')) {
  | 
        
        
            | 
            | 
           157 | 
           						$langue_test=$id_langue;
  | 
        
        
            | 
            | 
           158 | 
           					} else {
  | 
        
        
            | 
            | 
           159 | 
           						$langue_test=GEN_I18N_ID_DEFAUT;
  | 
        
        
            | 
            | 
           160 | 
           					}
  | 
        
        
            | 
            | 
           161 | 
              | 
        
        
            | 
            | 
           162 | 
           		    		$requete_traduction =   'SELECT gsr_id_site_01 '.
  | 
        
        
            | 
            | 
           163 | 
           		                                    'FROM  gen_site_relation, gen_site '.
  | 
        
        
            | 
            | 
           164 | 
           		                                    'WHERE '.$ligne->gs_id_site.' = gsr_id_site_01 ' .
  | 
        
        
            | 
            | 
           165 | 
           		                                    'AND gsr_id_site_02 = gs_id_site '.
  | 
        
        
            | 
            | 
           166 | 
           		                                    'AND gs_ce_i18n = "'.$langue_test.'" '.
  | 
        
        
            | 
            | 
           167 | 
           		                                    'AND gsr_id_valeur = 1 ';// 1 = "avoir traduction"
  | 
        
        
            | 
            | 
           168 | 
              | 
        
        
            | 
            | 
           169 | 
           		            $resultat_traduction = $db->query($requete_traduction);
  | 
        
        
            | 
            | 
           170 | 
           		            (DB::isError($resultat_traduction))
  | 
        
        
            | 
            | 
           171 | 
           		                ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat_traduction->getMessage(), $requete_traduction))
  | 
        
        
            | 
            | 
           172 | 
           		                : '';
  | 
        
        
            | 
            | 
           173 | 
              | 
        
        
            | 
            | 
           174 | 
           		            if ( $resultat_traduction->numRows() == 0 ) {
  | 
        
        
            | 
            | 
           175 | 
           		            	$liste_site []=$ligne;
  | 
        
        
            | 
            | 
           176 | 
           		            }
  | 
        
        
            | 
            | 
           177 | 
              | 
        
        
            | 
            | 
           178 | 
           		            $resultat_traduction->free();
  | 
        
        
            | 
            | 
           179 | 
              | 
        
        
            | 
            | 
           180 | 
           	            }
  | 
        
        
            | 
            | 
           181 | 
           	               $resultat_est_traduction->free();
  | 
        
        
            | 
            | 
           182 | 
              | 
        
        
            | 
            | 
           183 | 
           	    }
  | 
        
        
            | 
            | 
           184 | 
           	    $resultat->free();
  | 
        
        
            | 
            | 
           185 | 
           	}
  | 
        
        
            | 
            | 
           186 | 
              | 
        
        
            | 
            | 
           187 | 
              | 
        
        
            | 
            | 
           188 | 
              | 
        
        
            | 
            | 
           189 | 
               //----------------------------------------------------------------------------
  | 
        
        
            | 
            | 
           190 | 
               // Cr�ation du formulaire
  | 
        
        
            | 
            | 
           191 | 
               $form =& new HTML_QuickForm('form_sites', 'post', str_replace('&', '&', $url));
  | 
        
        
            | 
            | 
           192 | 
               $tab_index = 1000;
  | 
        
        
            | 
            | 
           193 | 
               $squelette =& $form->defaultRenderer();
  | 
        
        
            | 
            | 
           194 | 
               $squelette->setFormTemplate("\n".'<form{attributes}>'."\n".'{content}'."\n".'</form>'."\n");
  | 
        
        
            | 
            | 
           195 | 
               $squelette->setElementTemplate( '<li>'."\n".'{label}'."\n".'{element}'."\n".
  | 
        
        
            | 
            | 
           196 | 
                                               '<!-- BEGIN required --><span class="symbole_obligatoire">*</span><!-- END required -->'."\n".
  | 
        
        
            | 
            | 
           197 | 
                                               '<!-- BEGIN error --><span class="erreur">{error}</span><!-- END error -->'."\n".
  | 
        
        
            | 
            | 
           198 | 
                                               '</li>'."\n");
  | 
        
        
            | 
            | 
           199 | 
               $squelette->setRequiredNoteTemplate("\n".'<p>'."\n".'<span class="symbole_obligatoire">*</span> {requiredNote}'."\n".'</p>'."\n");
  | 
        
        
            | 
            | 
           200 | 
              | 
        
        
            | 
            | 
           201 | 
               $partie_site_debut =    '<fieldset>'."\n".
  | 
        
        
            | 
            | 
           202 | 
                                       '<legend>Listes des sites</legend>'."\n".
  | 
        
        
            | 
            | 
           203 | 
                                       '<ul>'."\n";
  | 
        
        
            | 
            | 
           204 | 
               $form->addElement('html', $partie_site_debut);
  | 
        
        
            | 
            | 
           205 | 
              | 
        
        
            | 
            | 
           206 | 
               $aso_options = array();
  | 
        
        
            | 
            | 
           207 | 
               foreach ($liste_site as $ligne ) {
  | 
        
        
            | 
            | 
           208 | 
                   $aso_options[$ligne->gs_id_site] = htmlentities($ligne->gs_nom.' ('.$ligne->gs_code_alpha.')');
  | 
        
        
            | 
            | 
           209 | 
              | 
        
        
            | 
            | 
           210 | 
                   // Affichage des traductions
  | 
        
        
            | 
            | 
           211 | 
                   $requete_traduction =   'SELECT * '.
  | 
        
        
            | 
            | 
           212 | 
           	                            'FROM  gen_site_relation, gen_site '.
  | 
        
        
            | 
            | 
           213 | 
           	                            'WHERE '.$ligne->gs_id_site.' = gsr_id_site_01 ' .
  | 
        
        
            | 
            | 
           214 | 
           	                            'AND gsr_id_site_02 <> gsr_id_site_01 '.
  | 
        
        
            | 
            | 
           215 | 
           	                            'AND gsr_id_site_02 = gs_id_site '.
  | 
        
        
            | 
            | 
           216 | 
           	                            'AND gsr_id_valeur = 1 ';// 1 = "avoir traduction"
  | 
        
        
            | 
            | 
           217 | 
           	    $resultat_traduction = $db->query($requete_traduction);
  | 
        
        
            | 
            | 
           218 | 
                   (DB::isError($resultat_traduction))
  | 
        
        
            | 
            | 
           219 | 
                       ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat_traduction->getMessage(), $requete_traduction))
  | 
        
        
            | 
            | 
           220 | 
                       : '';
  | 
        
        
            | 
            | 
           221 | 
              | 
        
        
            | 
            | 
           222 | 
                   while ($ligne_traduction = $resultat_traduction->fetchRow(DB_FETCHMODE_OBJECT)) {
  | 
        
        
            | 
            | 
           223 | 
                   	$aso_options[$ligne_traduction->gs_id_site] = '   '.$ligne_traduction->gs_ce_i18n.": ".htmlentities($ligne_traduction->gs_nom.' ('.$ligne_traduction->gs_code_alpha.')');
  | 
        
        
            | 
            | 
           224 | 
                   }
  | 
        
        
            | 
            | 
           225 | 
                   $resultat_traduction->free();
  | 
        
        
            | 
            | 
           226 | 
              | 
        
        
            | 
            | 
           227 | 
               }
  | 
        
        
            | 
            | 
           228 | 
              | 
        
        
            | 
            | 
           229 | 
               $id = 'form_sites_id_site';
  | 
        
        
            | 
            | 
           230 | 
               $aso_attributs = array('id'=> $id, 'tabindex' => $tab_index++);
  | 
        
        
            | 
            | 
           231 | 
               $label = '<label for="'.$id.'">'.'Listes des sites : '.'</label>';
  | 
        
        
            | 
            | 
           232 | 
               $form->addElement('select', $id, $label, $aso_options, $aso_attributs);
  | 
        
        
            | 
            | 
           233 | 
              | 
        
        
            | 
            | 
           234 | 
               $partie_site_fin =  '</ul>'."\n".
  | 
        
        
            | 
            | 
           235 | 
                                   '</fieldset>'."\n";
  | 
        
        
            | 
            | 
           236 | 
               $form->addElement('html', $partie_site_fin);
  | 
        
        
            | 
            | 
           237 | 
              | 
        
        
            | 
            | 
           238 | 
               $liste_bouton_debut = '<ul class="liste_bouton">'."\n";
  | 
        
        
            | 
            | 
           239 | 
               $form->addElement('html', $liste_bouton_debut);
  | 
        
        
            | 
            | 
           240 | 
              | 
        
        
            | 
            | 
           241 | 
               $id = 'form_sites_ajouter';
  | 
        
        
            | 
            | 
           242 | 
               $aso_attributs = array('id'=> $id, 'tabindex' => $tab_index++);
  | 
        
        
            | 
            | 
           243 | 
               $label = 'Ajouter';
  | 
        
        
            | 
            | 
           244 | 
               $form->addElement('submit', $id, $label, $aso_attributs);
  | 
        
        
            | 
            | 
           245 | 
              | 
        
        
            | 
            | 
           246 | 
               $id = 'form_sites_modifier';
  | 
        
        
            | 
            | 
           247 | 
               $aso_attributs = array('id'=> $id, 'tabindex' => $tab_index++);
  | 
        
        
            | 
            | 
           248 | 
               $label = 'Modifier';
  | 
        
        
            | 
            | 
           249 | 
               $form->addElement('submit', $id, $label, $aso_attributs);
  | 
        
        
            | 
            | 
           250 | 
              | 
        
        
            | 
            | 
           251 | 
               $id = 'form_sites_traduire';
  | 
        
        
            | 
            | 
           252 | 
               $aso_attributs = array('id'=> $id, 'tabindex' => $tab_index++);
  | 
        
        
            | 
            | 
           253 | 
               $label = 'Traduire';
  | 
        
        
            | 
            | 
           254 | 
               $form->addElement('submit', $id, $label, $aso_attributs);
  | 
        
        
            | 
            | 
           255 | 
              | 
        
        
            | 
            | 
           256 | 
               $id = 'form_sites_supprimer';
  | 
        
        
            | 
            | 
           257 | 
               $aso_attributs = array('id'=> $id, 'tabindex' => $tab_index++, 'onclick' => 'javascript:return confirm(\''.'�tes vous s�r de vouloir supprimer ce site ?'.'\');');
  | 
        
        
            | 
            | 
           258 | 
               $label = 'Supprimer';
  | 
        
        
            | 
            | 
           259 | 
               $form->addElement('submit', $id, $label, $aso_attributs);
  | 
        
        
            | 
            | 
           260 | 
              | 
        
        
            | 
            | 
           261 | 
               $liste_bouton_fin = '</ul>'."\n";
  | 
        
        
            | 
            | 
           262 | 
               $form->addElement('html', $liste_bouton_fin);
  | 
        
        
            | 
            | 
           263 | 
              | 
        
        
            | 
            | 
           264 | 
               $sortie = $form->toHTML()."\n";
  | 
        
        
            | 
            | 
           265 | 
              | 
        
        
            | 
            | 
           266 | 
               // Titre de la page:
  | 
        
        
            | 
            | 
           267 | 
               $titre = 'Configuration des sites';
  | 
        
        
            | 
            | 
           268 | 
              | 
        
        
            | 
            | 
           269 | 
               // Construction de la page.
  | 
        
        
            | 
            | 
           270 | 
               return ADMIN_contruirePage($titre, $sortie, $message);
  | 
        
        
            | 
            | 
           271 | 
           }
  | 
        
        
            | 
            | 
           272 | 
              | 
        
        
            | 
            | 
           273 | 
           /** Fonction ADMIN_validerFormListesSites() - Valide les donn�es issues du formulaire de liste de sites.
  | 
        
        
            | 
            | 
           274 | 
           *
  | 
        
        
            | 
            | 
           275 | 
           * Cette fonction valide les donn�es du formulaire de liste de site.
  | 
        
        
            | 
            | 
           276 | 
           *
  | 
        
        
            | 
            | 
           277 | 
           * @param  string   l'objet pear de connexion � la base de donn�es.
  | 
        
        
            | 
            | 
           278 | 
           * @param  string   le tableau contenant les valeurs du formulaire.
  | 
        
        
            | 
            | 
           279 | 
           * @return string   retourne les messages d'erreurs sinon rien.
  | 
        
        
            | 
            | 
           280 | 
           */
  | 
        
        
            | 
            | 
           281 | 
           function ADMIN_validerFormListesSites(&$db, $aso_valeurs)
  | 
        
        
            | 
            | 
           282 | 
           {
  | 
        
        
            | 
            | 
           283 | 
               $message = '';
  | 
        
        
            | 
            | 
           284 | 
              | 
        
        
            | 
            | 
           285 | 
               // Validation des donnees du formulaire
  | 
        
        
            | 
            | 
           286 | 
               if (empty($aso_valeurs['form_sites_id_site'])) {
  | 
        
        
            | 
            | 
           287 | 
                   $message .= '<p class="pap_erreur">Vous devez d\'abord sélectionner un site.</p>';
  | 
        
        
            | 
            | 
           288 | 
               }
  | 
        
        
            | 
            | 
           289 | 
              | 
        
        
            | 
            | 
           290 | 
               return $message;
  | 
        
        
            | 
            | 
           291 | 
           }
  | 
        
        
            | 
            | 
           292 | 
              | 
        
        
            | 
            | 
           293 | 
           /** Fonction ADMIN_afficherFormSite()- G�n�re un formulaire pour gen_site.
  | 
        
        
            | 
            | 
           294 | 
           *
  | 
        
        
            | 
            | 
           295 | 
           * Cette fonction retourne un formulaire pour modification ou pour ajout.
  | 
        
        
            | 
            | 
           296 | 
           *
  | 
        
        
            | 
            | 
           297 | 
           * @param  string   l'objet pear de connexion a la base de donnees.
  | 
        
        
            | 
            | 
           298 | 
           * @param  string   l'url a laquelle renvoyer le formulaire.
  | 
        
        
            | 
            | 
           299 | 
           * @param  string   le tableau contenant les valeurs du formulaire.
  | 
        
        
            | 
            | 
           300 | 
           * @param  string   un message a destination de l'utilisateur.
  | 
        
        
            | 
            | 
           301 | 
           * return  string   le code XHTML a retourner.
  | 
        
        
            | 
            | 
           302 | 
           */
  | 
        
        
            | 
            | 
           303 | 
           function ADMIN_afficherFormSite(&$db, $url, $aso_valeurs = array(), $message = '')
  | 
        
        
            | 
            | 
           304 | 
           {
  | 
        
        
            | 
            | 
           305 | 
               // Initialisation des valeurs
  | 
        
        
            | 
            | 
           306 | 
               $sortie = '';
  | 
        
        
            | 
            | 
           307 | 
               $aso_valeurs['modification'] = false;
  | 
        
        
            | 
            | 
           308 | 
               $aso_valeurs['traduction'] = false;
  | 
        
        
            | 
            | 
           309 | 
               $aso_valeurs['defaut'] = false;
  | 
        
        
            | 
            | 
           310 | 
               $aso_valeurs['type_site_externe'] = 0;
  | 
        
        
            | 
            | 
           311 | 
               // Nous cherchons a savoir si nous somme en modification
  | 
        
        
            | 
            | 
           312 | 
               if ((isset($aso_valeurs['form_sites_modifier']))  || (isset($aso_valeurs['form_sites_traduire'])))  {
  | 
        
        
            | 
            | 
           313 | 
               	if ((isset($aso_valeurs['form_sites_modifier']))) {
  | 
        
        
            | 
            | 
           314 | 
                   	$as_val['modification'] = true;
  | 
        
        
            | 
            | 
           315 | 
                   	$as_val['traduction'] = false;
  | 
        
        
            | 
            | 
           316 | 
               	}
  | 
        
        
            | 
            | 
           317 | 
                   else {
  | 
        
        
            | 
            | 
           318 | 
                   	$as_val['traduction'] = true;
  | 
        
        
            | 
            | 
           319 | 
                   	$as_val['modification'] = false;
  | 
        
        
            | 
            | 
           320 | 
                   }
  | 
        
        
            | 
            | 
           321 | 
              | 
        
        
            | 
            | 
           322 | 
                   if ($as_val['traduction']) {
  | 
        
        
            | 
            | 
           323 | 
           	        // Traduction d'un site principal uniquement :
  | 
        
        
            | 
            | 
           324 | 
              | 
        
        
            | 
            | 
           325 | 
           	        $requete =  'SELECT * '.
  | 
        
        
            | 
            | 
           326 | 
           	                    'FROM gen_site_relation '.
  | 
        
        
            | 
            | 
           327 | 
           	                    'WHERE gsr_id_site_02 = '.$aso_valeurs['form_sites_id_site'].' '.
  | 
        
        
            | 
            | 
           328 | 
           	                    'AND gsr_id_valeur =1  '; // 1 = "avoir traduction"
  | 
        
        
            | 
            | 
           329 | 
              | 
        
        
            | 
            | 
           330 | 
           	        $resultat = $db->query($requete);
  | 
        
        
            | 
            | 
           331 | 
              | 
        
        
            | 
            | 
           332 | 
           	        if (DB::isError($resultat)) {
  | 
        
        
            | 
            | 
           333 | 
           	            die( BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete) );
  | 
        
        
            | 
            | 
           334 | 
           	        }
  | 
        
        
            | 
            | 
           335 | 
              | 
        
        
            | 
            | 
           336 | 
           	        if ( $resultat->numRows() == 0 ) {
  | 
        
        
            | 
            | 
           337 | 
           	        	$site_id = $aso_valeurs['form_sites_id_site'];
  | 
        
        
            | 
            | 
           338 | 
           	        }
  | 
        
        
            | 
            | 
           339 | 
           	        else {
  | 
        
        
            | 
            | 
           340 | 
           	        	$ligne = $resultat->fetchRow(DB_FETCHMODE_OBJECT);
  | 
        
        
            | 
            | 
           341 | 
           		        $site_id = $ligne->gsr_id_site_01;
  | 
        
        
            | 
            | 
           342 | 
           	        }
  | 
        
        
            | 
            | 
           343 | 
           	        $resultat->free();
  | 
        
        
            | 
            | 
           344 | 
                  		 }
  | 
        
        
            | 
            | 
           345 | 
                   else {
  | 
        
        
            | 
            | 
           346 | 
                     	$site_id = $aso_valeurs['form_sites_id_site'];
  | 
        
        
            | 
            | 
           347 | 
                 	 }
  | 
        
        
            | 
            | 
           348 | 
              | 
        
        
            | 
            | 
           349 | 
           	        // Requete pour recuperer les informations sur le site a modifier
  | 
        
        
            | 
            | 
           350 | 
           	        $requete =  'SELECT * '.
  | 
        
        
            | 
            | 
           351 | 
           	                    'FROM gen_site '.
  | 
        
        
            | 
            | 
           352 | 
           	                    'WHERE gs_id_site = '.$site_id;
  | 
        
        
            | 
            | 
           353 | 
           	        $resultat = $db->query($requete);
  | 
        
        
            | 
            | 
           354 | 
           	        if (DB::isError($resultat)) {
  | 
        
        
            | 
            | 
           355 | 
           	            die( BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete) );
  | 
        
        
            | 
            | 
           356 | 
           	        }
  | 
        
        
            | 
            | 
           357 | 
           	        $aso_valeurs = $resultat->fetchRow(DB_FETCHMODE_ASSOC);
  | 
        
        
            | 
            | 
           358 | 
           	        $site_ligne = $aso_valeurs;
  | 
        
        
            | 
            | 
           359 | 
           	        $resultat->free();
  | 
        
        
            | 
            | 
           360 | 
              | 
        
        
            | 
            | 
           361 | 
                   // Requete pour recuperer les informations issues des relations du site a modifier
  | 
        
        
            | 
            | 
           362 | 
                   $requete =  'SELECT * '.
  | 
        
        
            | 
            | 
           363 | 
                               'FROM gen_site_relation '.
  | 
        
        
            | 
            | 
           364 | 
                               'WHERE gsr_id_site_01 = '.$site_id.' '.
  | 
        
        
            | 
            | 
           365 | 
                               'AND gsr_id_site_01 = gsr_id_site_02';
  | 
        
        
            | 
            | 
           366 | 
                   $resultat = $db->query($requete);
  | 
        
        
            | 
            | 
           367 | 
                   if (DB::isError($resultat)) {
  | 
        
        
            | 
            | 
           368 | 
                       die( BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete) );
  | 
        
        
            | 
            | 
           369 | 
                   }
  | 
        
        
            | 
            | 
           370 | 
              | 
        
        
            | 
            | 
           371 | 
                   $tab_type = GEN_retournerTableauTypeSiteExterne($db);
  | 
        
        
            | 
            | 
           372 | 
                   while ($ligne = $resultat->fetchRow(DB_FETCHMODE_OBJECT) ) {
  | 
        
        
            | 
            | 
           373 | 
                       if ($ligne->gsr_id_valeur == 101) {// 101 = site par defaut
  | 
        
        
            | 
            | 
           374 | 
                           $aso_valeurs['defaut'] = true;
  | 
        
        
            | 
            | 
           375 | 
                       }
  | 
        
        
            | 
            | 
           376 | 
                       foreach ($tab_type as $cle => $val) {
  | 
        
        
            | 
            | 
           377 | 
                           if ($ligne->gsr_id_valeur == $val['id']) {// 20x = type de site externe a Papyrus
  | 
        
        
            | 
            | 
           378 | 
                               $aso_valeurs['type_site_externe'] = $val['id'];
  | 
        
        
            | 
            | 
           379 | 
                           }
  | 
        
        
            | 
            | 
           380 | 
                       }
  | 
        
        
            | 
            | 
           381 | 
                   }
  | 
        
        
            | 
            | 
           382 | 
                   $resultat->free();
  | 
        
        
            | 
            | 
           383 | 
              | 
        
        
            | 
            | 
           384 | 
                   if (($as_val['modification'])) {
  | 
        
        
            | 
            | 
           385 | 
                   	$aso_valeurs['modification'] = true;
  | 
        
        
            | 
            | 
           386 | 
                   	$aso_valeurs['traduction'] = false;
  | 
        
        
            | 
            | 
           387 | 
                   }
  | 
        
        
            | 
            | 
           388 | 
                   else {
  | 
        
        
            | 
            | 
           389 | 
                   	$aso_valeurs['traduction'] = true;
  | 
        
        
            | 
            | 
           390 | 
                   	$aso_valeurs['modification'] = false;
  | 
        
        
            | 
            | 
           391 | 
                   };
  | 
        
        
            | 
            | 
           392 | 
              | 
        
        
            | 
            | 
           393 | 
              | 
        
        
            | 
            | 
           394 | 
              | 
        
        
            | 
            | 
           395 | 
               } else if (isset($aso_valeurs['gs_id_site'])) {
  | 
        
        
            | 
            | 
           396 | 
                   $aso_valeurs['modification'] = true;
  | 
        
        
            | 
            | 
           397 | 
               }
  | 
        
        
            | 
            | 
           398 | 
               // Debogage :
  | 
        
        
            | 
            | 
           399 | 
               //$GLOBALS['_DEBOGAGE_'] .= '<pre>'.print_r($aso_valeurs, true).'</pre>';
  | 
        
        
            | 
            | 
           400 | 
               //-------------------------------------------------------------------------------------------------------------------
  | 
        
        
            | 
            | 
           401 | 
               // Information precedent le formulaire (en modification)
  | 
        
        
            | 
            | 
           402 | 
               if ((isset($aso_valeurs['modification'])||isset($aso_valeurs['traduction']))&&isset($aso_valeurs['gs_id_site'])) {
  | 
        
        
            | 
            | 
           403 | 
                   $sortie .= '<p>'.'Identifiant de ce site : '.'<span id="adsi_site_id">'.$aso_valeurs['gs_id_site'].'</span></p>'."\n";
  | 
        
        
            | 
            | 
           404 | 
               }
  | 
        
        
            | 
            | 
           405 | 
               //-------------------------------------------------------------------------------------------------------------------
  | 
        
        
            | 
            | 
           406 | 
               // Cr�ation du formulaire
  | 
        
        
            | 
            | 
           407 | 
               $form =& new HTML_QuickForm('site', 'post', str_replace('&', '&', $url));
  | 
        
        
            | 
            | 
           408 | 
               $tab_index = 1000;
  | 
        
        
            | 
            | 
           409 | 
               $squelette =& $form->defaultRenderer();
  | 
        
        
            | 
            | 
           410 | 
               $squelette->setFormTemplate("\n".'<form {attributes}>'."\n".'{content}'."\n".'</form>'."\n");
  | 
        
        
            | 
            | 
           411 | 
           	$squelette->setElementTemplate( '<p class="formulaire_element"><span class="form_label">'."\n".
  | 
        
        
            | 
            | 
           412 | 
           		'{label}'."\n".
  | 
        
        
            | 
            | 
           413 | 
           		'<!-- BEGIN required --><span style="color:red; width:5px; margin:0; padding:0;">*</span><!-- END required -->'."\n".
  | 
        
        
            | 
            | 
           414 | 
           		'</span>'."\n".'{element}'."\n".
  | 
        
        
            | 
            | 
           415 | 
           		'<!-- BEGIN error --><span class="erreur">{error}</span><!-- END error -->'."\n".
  | 
        
        
            | 
            | 
           416 | 
           		'</p>'."\n");
  | 
        
        
            | 
            | 
           417 | 
           	$squelette->setGroupElementTemplate('<p style="display:inline">{element}</p>', 'form_boutons');
  | 
        
        
            | 
            | 
           418 | 
           	$squelette->setRequiredNoteTemplate("\n".'<p class="symbole_obligatoire">* : {requiredNote}</p>'."\n");
  | 
        
        
            | 
            | 
           419 | 
           	//Note pour les erreurs javascript
  | 
        
        
            | 
            | 
           420 | 
           	$form->setJsWarnings('Erreur de saisie', 'Veuillez verifier vos informations saisies');
  | 
        
        
            | 
            | 
           421 | 
               // Note de fin de formulaire
  | 
        
        
            | 
            | 
           422 | 
               $form->setRequiredNote('Indique les champs obligatoires');
  | 
        
        
            | 
            | 
           423 | 
              | 
        
        
            | 
            | 
           424 | 
           //    $squelette->setFormTemplate("\n".'<form{attributes}>'."\n".'{content}'."\n".'</form>'."\n");
  | 
        
        
            | 
            | 
           425 | 
           //    $squelette->setElementTemplate(  '<li>'."\n".
  | 
        
        
            | 
            | 
           426 | 
           //                                    '{label}'."\n".
  | 
        
        
            | 
            | 
           427 | 
           //                                    '{element}'."\n".
  | 
        
        
            | 
            | 
           428 | 
           //                                    '<!-- BEGIN required --><span class="symbole_obligatoire">*</span><!-- END required -->'."\n".
  | 
        
        
            | 
            | 
           429 | 
           //                                    '<!-- BEGIN error --><span class="erreur">{error}</span><!-- END error -->'."\n".
  | 
        
        
            | 
            | 
           430 | 
           //                                    '</li>'."\n");
  | 
        
        
            | 
            | 
           431 | 
           //    $squelette->setGroupElementTemplate('{label}'."\n".
  | 
        
        
            | 
            | 
           432 | 
           //                                        '{element}'."\n".
  | 
        
        
            | 
            | 
           433 | 
           //                                        '<!-- BEGIN required --><span class="symbole_obligatoire">*</span><!-- END required -->'."\n".
  | 
        
        
            | 
            | 
           434 | 
           //                                        ' '."\n"
  | 
        
        
            | 
            | 
           435 | 
           //                                        , 'double');
  | 
        
        
            | 
            | 
           436 | 
           //    $squelette->setRequiredNoteTemplate("\n".'<p><span class="symbole_obligatoire">*</span> {requiredNote}</p>'."\n");
  | 
        
        
            | 
            | 
           437 | 
           //
  | 
        
        
            | 
            | 
           438 | 
               $partie_site_debut = '<fieldset>'."\n".'<legend>Configuration du site</legend>'."\n";
  | 
        
        
            | 
            | 
           439 | 
               $form->addElement('html', $partie_site_debut);
  | 
        
        
            | 
            | 
           440 | 
              | 
        
        
            | 
            | 
           441 | 
               if ($aso_valeurs['modification'] || $aso_valeurs['traduction']) {
  | 
        
        
            | 
            | 
           442 | 
                   $form->addElement('hidden', 'gs_id_site');
  | 
        
        
            | 
            | 
           443 | 
                   $form->addElement('hidden', 'modification');
  | 
        
        
            | 
            | 
           444 | 
                   $form->addElement('hidden', 'traduction');
  | 
        
        
            | 
            | 
           445 | 
               }
  | 
        
        
            | 
            | 
           446 | 
              | 
        
        
            | 
            | 
           447 | 
               $id = 'gs_nom';
  | 
        
        
            | 
            | 
           448 | 
               $aso_attributs = array('id'=>$id, 'tabindex' => $tab_index++, 'size' => 35, 'maxlength' => 100, 'value' => 'nom du site');
  | 
        
        
            | 
            | 
           449 | 
               $label = '<label for="'.$id.'">'.'Nom du site : '.'</label>';
  | 
        
        
            | 
            | 
           450 | 
               $form->addElement('text', $id, $label, $aso_attributs);
  | 
        
        
            | 
            | 
           451 | 
               $form->addRule($id, 'Un nom est requis pour le site !', 'required', '', 'client');
  | 
        
        
            | 
            | 
           452 | 
              | 
        
        
            | 
            | 
           453 | 
               $id = 'gs_code_alpha';
  | 
        
        
            | 
            | 
           454 | 
               $aso_attributs = array('id'=>$id, 'tabindex' => $tab_index++, 'size' => 20, 'maxlength' => 20, 'value' => 'site_01');
  | 
        
        
            | 
            | 
           455 | 
               $label = '<label for="'.$id.'">'.'Code alphanumérique : '.'</label>';
  | 
        
        
            | 
            | 
           456 | 
               $form->addElement('text', $id, $label, $aso_attributs);
  | 
        
        
            | 
            | 
           457 | 
               $form->addRule('gs_code_alpha', 'Un code alphanumérique est requis pour le site !', 'required', '', 'client');
  | 
        
        
            | 
            | 
           458 | 
              | 
        
        
            | 
            | 
           459 | 
               $id = 'gs_code_num';
  | 
        
        
            | 
            | 
           460 | 
               $aso_attributs = array('id'=>$id, 'tabindex' => $tab_index++, 'size' => 20, 'maxlength' => 20, 'value' => 1);
  | 
        
        
            | 
            | 
           461 | 
               $label = '<label for="'.$id.'">'.'Code numérique : '.'</label>';
  | 
        
        
            | 
            | 
           462 | 
               $form->addElement('text', $id, $label, $aso_attributs);
  | 
        
        
            | 
            | 
           463 | 
               $form->addRule('gs_code_num', 'Un code numérique est requis pour le site !', 'required', '', 'client');
  | 
        
        
            | 
            | 
           464 | 
              | 
        
        
            | 
            | 
           465 | 
               $id = 'gs_raccourci_clavier';
  | 
        
        
            | 
            | 
           466 | 
               $aso_attributs = array('id'=> $id, 'tabindex' => $tab_index++, 'size' => 1, 'maxlength' => 1, 'value' => 'Z');
  | 
        
        
            | 
            | 
           467 | 
               $label = '<label for="'.$id.'">'.'Raccourci clavier : '.'</label>';
  | 
        
        
            | 
            | 
           468 | 
               $form->addElement('text', $id, $label, $aso_attributs);
  | 
        
        
            | 
            | 
           469 | 
              | 
        
        
            | 
            | 
           470 | 
               // Requete pour connaitre les identifications dispo
  | 
        
        
            | 
            | 
           471 | 
               $requete =  'SELECT * '.
  | 
        
        
            | 
            | 
           472 | 
                           'FROM gen_site_auth '.
  | 
        
        
            | 
            | 
           473 | 
                           'WHERE gsa_id_auth != 0';
  | 
        
        
            | 
            | 
           474 | 
               $resultat = $db->query($requete) ;
  | 
        
        
            | 
            | 
           475 | 
               if (DB::isError($resultat)) {
  | 
        
        
            | 
            | 
           476 | 
                   die( BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete) );
  | 
        
        
            | 
            | 
           477 | 
               }
  | 
        
        
            | 
            | 
           478 | 
               $aso_options = array();
  | 
        
        
            | 
            | 
           479 | 
               while ($ligne = $resultat->fetchRow(DB_FETCHMODE_OBJECT) ) {
  | 
        
        
            | 
            | 
           480 | 
                   // Test pour conna�tre le type d'authentification.
  | 
        
        
            | 
            | 
           481 | 
                   $type = '';
  | 
        
        
            | 
            | 
           482 | 
                   if ($ligne->gsa_ce_type_auth == '1' ) {
  | 
        
        
            | 
            | 
           483 | 
                       $type = 'Base de données';
  | 
        
        
            | 
            | 
           484 | 
                   } else if ($ligne->gsa_ce_type_auth == '2' ) {
  | 
        
        
            | 
            | 
           485 | 
                       $type = 'LDAP';
  | 
        
        
            | 
            | 
           486 | 
                   }
  | 
        
        
            | 
            | 
           487 | 
                   $aso_options[$ligne->gsa_id_auth] = $ligne->gsa_nom.' ('.$type.')';
  | 
        
        
            | 
            | 
           488 | 
               }
  | 
        
        
            | 
            | 
           489 | 
               $resultat->free();
  | 
        
        
            | 
            | 
           490 | 
              | 
        
        
            | 
            | 
           491 | 
              | 
        
        
            | 
            | 
           492 | 
               $id = 'gs_ce_auth';
  | 
        
        
            | 
            | 
           493 | 
               $aso_attributs = array('id'=> $id, 'tabindex' => $tab_index++);
  | 
        
        
            | 
            | 
           494 | 
               $label = '<label for="'.$id.'">'.'Identification : '.'</label>';
  | 
        
        
            | 
            | 
           495 | 
               if (isset($aso_valeurs['gs_ce_auth'])) {
  | 
        
        
            | 
            | 
           496 | 
           	    $s = &$form->createElement('select', $id , $label, "", $aso_attributs);
  | 
        
        
            | 
            | 
           497 | 
               	$s->loadArray($aso_options,$aso_valeurs['gs_ce_auth']);
  | 
        
        
            | 
            | 
           498 | 
               	$form->addElement($s);
  | 
        
        
            | 
            | 
           499 | 
               }
  | 
        
        
            | 
            | 
           500 | 
               else {
  | 
        
        
            | 
            | 
           501 | 
           	    $form->addElement('select', $id, $label, $aso_options, $aso_attributs);
  | 
        
        
            | 
            | 
           502 | 
               }
  | 
        
        
            | 
            | 
           503 | 
              | 
        
        
            | 
            | 
           504 | 
               // En modification nous affichons la liste des squelettes disponibles dans
  | 
        
        
            | 
            | 
           505 | 
               // le dossier du site.
  | 
        
        
            | 
            | 
           506 | 
               if ($aso_valeurs['modification'] || $aso_valeurs['traduction']) {
  | 
        
        
            | 
            | 
           507 | 
                   $aso_options = array();
  | 
        
        
            | 
            | 
           508 | 
                   if (!GEN_FTP_UTILISE) {
  | 
        
        
            | 
            | 
           509 | 
                       $chemin_squelettes =    PAP_CHEMIN_RACINE.GEN_CHEMIN_SITES.$aso_valeurs['gs_code_alpha'].GEN_SEP.
  | 
        
        
            | 
            | 
           510 | 
                                               $aso_valeurs['gs_ce_i18n'].GEN_SEP.GEN_DOSSIER_SQUELETTE.GEN_SEP;
  | 
        
        
            | 
            | 
           511 | 
                       $dossier = opendir($chemin_squelettes);
  | 
        
        
            | 
            | 
           512 | 
                       while(($fichier = readdir($dossier)) !== false) {
  | 
        
        
            | 
            | 
           513 | 
                           if ($fichier != '.' && $fichier != '..') {
  | 
        
        
            | 
            | 
           514 | 
                               $chemin_type = $chemin_squelettes.GEN_SEP.$fichier;
  | 
        
        
            | 
            | 
           515 | 
                               if (filetype($chemin_type) != 'dir') {
  | 
        
        
            | 
            | 
           516 | 
                                   $aso_options[$fichier] = $fichier;
  | 
        
        
            | 
            | 
           517 | 
                               }
  | 
        
        
            | 
            | 
           518 | 
                           }
  | 
        
        
            | 
            | 
           519 | 
                       }
  | 
        
        
            | 
            | 
           520 | 
                   } else {
  | 
        
        
            | 
            | 
           521 | 
                       // ouverture des squelettes present dans le dossier du site
  | 
        
        
            | 
            | 
           522 | 
                       // creation de l'objet pear ftp
  | 
        
        
            | 
            | 
           523 | 
                       $objet_pear_ftp = new Net_FTP(PAP_FTP_SERVEUR, PAP_FTP_PORT);
  | 
        
        
            | 
            | 
           524 | 
                       // creation de la connexion
  | 
        
        
            | 
            | 
           525 | 
                       $ftp_conn = $objet_pear_ftp->connect(PAP_FTP_SERVEUR, PAP_FTP_PORT);
  | 
        
        
            | 
            | 
           526 | 
                       // identification
  | 
        
        
            | 
            | 
           527 | 
                       $ftp_login_result = $objet_pear_ftp->login(PAP_FTP_UTILISATEUR, PAP_FTP_MOT_DE_PASSE);
  | 
        
        
            | 
            | 
           528 | 
                       // Gestion des erreurs ftp
  | 
        
        
            | 
            | 
           529 | 
                       if ((PEAR::isError($ftp_conn) || PEAR::isError($ftp_login_result))) {
  | 
        
        
            | 
            | 
           530 | 
                           return ('ERREUR Papyrus admin : impossible de se connecter par ftp.<br />'.
  | 
        
        
            | 
            | 
           531 | 
                               'Serveur : '. GEN_FTP_SERVEUR .'<br />'.
  | 
        
        
            | 
            | 
           532 | 
                               'Utilisateur : '. GEN_FTP_UTILISATEUR .'<br />'.
  | 
        
        
            | 
            | 
           533 | 
                               'Ligne n° : '. __LINE__ .'<br />'.
  | 
        
        
            | 
            | 
           534 | 
                               'Fichier n° : '. __FILE__ .'<br />');
  | 
        
        
            | 
            | 
           535 | 
                               //'Message erreur de connection : '.$ftp_conn->getMessage().'<br />'.
  | 
        
        
            | 
            | 
           536 | 
                               //'Message erreur de login : '.$ftp_login_result->getMessage());
  | 
        
        
            | 
            | 
           537 | 
                       }
  | 
        
        
            | 
            | 
           538 | 
                       $chemin_squelettes =    PAP_FTP_RACINE.GEN_CHEMIN_SITES.$aso_valeurs['gs_code_alpha'].GEN_SEP.
  | 
        
        
            | 
            | 
           539 | 
                                               $aso_valeurs['gs_ce_i18n'].GEN_SEP.GEN_DOSSIER_SQUELETTE.GEN_SEP;
  | 
        
        
            | 
            | 
           540 | 
                       $tab_squelettes = $objet_pear_ftp->ls($chemin_squelettes);
  | 
        
        
            | 
            | 
           541 | 
                       $aso_options = array();
  | 
        
        
            | 
            | 
           542 | 
                       if (PEAR::isError($tab_squelettes)) {
  | 
        
        
            | 
            | 
           543 | 
                           return ('ERREUR Papyrus admin : impossible d\'accé aux fichiers par ftp.<br />'.
  | 
        
        
            | 
            | 
           544 | 
                               'Chemin : '. $chemin_squelettes .'<br />'.
  | 
        
        
            | 
            | 
           545 | 
                               'Ligne n° : '. __LINE__ .'<br />'.
  | 
        
        
            | 
            | 
           546 | 
                               'Fichier n° : '. __FILE__ .'<br />'.
  | 
        
        
            | 
            | 
           547 | 
                               'Message : '. $tab_squelettes->getMessage());
  | 
        
        
            | 
            | 
           548 | 
                       }
  | 
        
        
            | 
            | 
           549 | 
                       for ($i = 0; $i < count($tab_squelettes) ; $i++) {
  | 
        
        
            | 
            | 
           550 | 
                           if ($tab_squelettes[$i]['is_dir'] == false) {
  | 
        
        
            | 
            | 
           551 | 
                               $aso_options[$tab_squelettes[$i]['name']] = $tab_squelettes[$i]['name'];
  | 
        
        
            | 
            | 
           552 | 
                           }
  | 
        
        
            | 
            | 
           553 | 
                       }
  | 
        
        
            | 
            | 
           554 | 
                       $objet_pear_ftp->disconnect();
  | 
        
        
            | 
            | 
           555 | 
                   }
  | 
        
        
            | 
            | 
           556 | 
              | 
        
        
            | 
            | 
           557 | 
                   // Verification de la presence de squelettes
  | 
        
        
            | 
            | 
           558 | 
                   if (count($aso_options) == 0) {
  | 
        
        
            | 
            | 
           559 | 
                       $aso_options['Aucun squelette'] = 'Aucun squelette';
  | 
        
        
            | 
            | 
           560 | 
                   }
  | 
        
        
            | 
            | 
           561 | 
              | 
        
        
            | 
            | 
           562 | 
                   $id = 'gs_fichier_squelette';
  | 
        
        
            | 
            | 
           563 | 
                   $aso_attributs = array('id'=> $id, 'tabindex' => $tab_index++);
  | 
        
        
            | 
            | 
           564 | 
                   $label = '<label for="'.$id.'">'.'Squelette : '.'</label>';
  | 
        
        
            | 
            | 
           565 | 
                   $s = &$form->createElement('select', $id , $label, "", $aso_attributs);
  | 
        
        
            | 
            | 
           566 | 
               	$s->loadArray($aso_options,$aso_valeurs['gs_fichier_squelette']);
  | 
        
        
            | 
            | 
           567 | 
               	$form->addElement($s);
  | 
        
        
            | 
            | 
           568 | 
              | 
        
        
            | 
            | 
           569 | 
               }
  | 
        
        
            | 
            | 
           570 | 
              | 
        
        
            | 
            | 
           571 | 
               // Requete pour connaitre les internationalisation dispo
  | 
        
        
            | 
            | 
           572 | 
              | 
        
        
            | 
            | 
           573 | 
               if (!$aso_valeurs['modification'] && !$aso_valeurs['traduction']) {
  | 
        
        
            | 
            | 
           574 | 
               	$requete =  'SELECT * '.
  | 
        
        
            | 
            | 
           575 | 
                   	        'FROM gen_i18n ';
  | 
        
        
            | 
            | 
           576 | 
               }
  | 
        
        
            | 
            | 
           577 | 
               	else  {
  | 
        
        
            | 
            | 
           578 | 
              | 
        
        
            | 
            | 
           579 | 
              | 
        
        
            | 
            | 
           580 | 
               		if ($aso_valeurs['traduction']) {
  | 
        
        
            | 
            | 
           581 | 
              | 
        
        
            | 
            | 
           582 | 
               		// Recherche liste des sites deja traduits
  | 
        
        
            | 
            | 
           583 | 
              | 
        
        
            | 
            | 
           584 | 
           	    		 $requete =  'SELECT distinct gs_ce_i18n  '.
  | 
        
        
            | 
            | 
           585 | 
                           'FROM gen_site_relation, gen_site '.
  | 
        
        
            | 
            | 
           586 | 
                           'WHERE gsr_id_site_01 = ' .$site_ligne['gs_id_site'] .' '.
  | 
        
        
            | 
            | 
           587 | 
                           'AND gs_id_site = gsr_id_site_02  '.
  | 
        
        
            | 
            | 
           588 | 
                           'AND gsr_id_valeur =1  '; // 1 = "avoir traduction"
  | 
        
        
            | 
            | 
           589 | 
              | 
        
        
            | 
            | 
           590 | 
              | 
        
        
            | 
            | 
           591 | 
           			    $resultat = $db->query($requete) ;
  | 
        
        
            | 
            | 
           592 | 
           			    if (DB::isError($resultat)) {
  | 
        
        
            | 
            | 
           593 | 
           			        die( BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete) );
  | 
        
        
            | 
            | 
           594 | 
           			    }
  | 
        
        
            | 
            | 
           595 | 
           			    $not_in_langue='';
  | 
        
        
            | 
            | 
           596 | 
           			    if ( $resultat->numRows() == 0 ) {
  | 
        
        
            | 
            | 
           597 | 
           					$not_in_langue="gi_id_i18n not in('".$site_ligne['gs_ce_i18n']."')";
  | 
        
        
            | 
            | 
           598 | 
           			    }
  | 
        
        
            | 
            | 
           599 | 
           			    else {
  | 
        
        
            | 
            | 
           600 | 
           			    	    while ($ligne = $resultat->fetchRow(DB_FETCHMODE_OBJECT)) {
  | 
        
        
            | 
            | 
           601 | 
               	 					$not_in_langue="'".$ligne->gs_ce_i18n."'".",".$not_in_langue;
  | 
        
        
            | 
            | 
           602 | 
               	 					$end="'".$ligne->gs_ce_i18n."'";
  | 
        
        
            | 
            | 
           603 | 
               					}
  | 
        
        
            | 
            | 
           604 | 
               					if ($not_in_langue) {
  | 
        
        
            | 
            | 
           605 | 
           			    			$not_in_langue="'".$site_ligne['gs_ce_i18n']."'".",".$not_in_langue;
  | 
        
        
            | 
            | 
           606 | 
           			    			$not_in_langue=' gi_id_i18n not in('.$not_in_langue.$end.')';
  | 
        
        
            | 
            | 
           607 | 
           			    		}
  | 
        
        
            | 
            | 
           608 | 
           			    		else {
  | 
        
        
            | 
            | 
           609 | 
           			    			$not_in_langue="gi_id_i18n not in('".$site_ligne['gs_ce_i18n']."')";
  | 
        
        
            | 
            | 
           610 | 
           			    		}
  | 
        
        
            | 
            | 
           611 | 
           			    }
  | 
        
        
            | 
            | 
           612 | 
           				$resultat->free();
  | 
        
        
            | 
            | 
           613 | 
              | 
        
        
            | 
            | 
           614 | 
           	    		$requete =  "SELECT * FROM gen_i18n where ".$not_in_langue;
  | 
        
        
            | 
            | 
           615 | 
               		}
  | 
        
        
            | 
            | 
           616 | 
               		else
  | 
        
        
            | 
            | 
           617 | 
               		{
  | 
        
        
            | 
            | 
           618 | 
               			$requete =  "SELECT * FROM gen_i18n where  gi_id_i18n =('".$site_ligne['gs_ce_i18n']."')";
  | 
        
        
            | 
            | 
           619 | 
               		}
  | 
        
        
            | 
            | 
           620 | 
               }
  | 
        
        
            | 
            | 
           621 | 
               $resultat = $db->query($requete) ;
  | 
        
        
            | 
            | 
           622 | 
               if (DB::isError($resultat)) {
  | 
        
        
            | 
            | 
           623 | 
                   die( BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete) );
  | 
        
        
            | 
            | 
           624 | 
               }
  | 
        
        
            | 
            | 
           625 | 
               $aso_options = array();
  | 
        
        
            | 
            | 
           626 | 
               while ($ligne = $resultat->fetchRow(DB_FETCHMODE_OBJECT) ) {
  | 
        
        
            | 
            | 
           627 | 
                   $aso_options[$ligne->gi_id_i18n] = $ligne->gi_id_i18n;
  | 
        
        
            | 
            | 
           628 | 
               }
  | 
        
        
            | 
            | 
           629 | 
               $resultat->free();
  | 
        
        
            | 
            | 
           630 | 
               $id = 'gs_ce_i18n';
  | 
        
        
            | 
            | 
           631 | 
               $aso_attributs = array('id' => $id, 'tabindex' => $tab_index++);
  | 
        
        
            | 
            | 
           632 | 
               $label = '<label for="'.$id.'">'.'Langue : '.'</label>';
  | 
        
        
            | 
            | 
           633 | 
               $form->addElement('select', $id, $label, $aso_options, $aso_attributs);
  | 
        
        
            | 
            | 
           634 | 
              | 
        
        
            | 
            | 
           635 | 
               $id = 'defaut';
  | 
        
        
            | 
            | 
           636 | 
               $aso_attributs = array('id' => $id, 'tabindex' => $tab_index++);
  | 
        
        
            | 
            | 
           637 | 
               if (isset($aso_valeurs[$id]) && $aso_valeurs[$id] === true) {
  | 
        
        
            | 
            | 
           638 | 
                   $aso_attributs['checked'] = 'checked';
  | 
        
        
            | 
            | 
           639 | 
               }
  | 
        
        
            | 
            | 
           640 | 
               $label = '<label for="'.$id.'">'.'En faire le site par défaut : '.'</label>';
  | 
        
        
            | 
            | 
           641 | 
               $form->addElement('checkbox', $id, $label, null, $aso_attributs);
  | 
        
        
            | 
            | 
           642 | 
              | 
        
        
            | 
            | 
           643 | 
               // Groupe site externe
  | 
        
        
            | 
            | 
           644 | 
               $tab_type = GEN_retournerTableauTypeSiteExterne($db);
  | 
        
        
            | 
            | 
           645 | 
               $aso_options = array('0' => 'Aucun');
  | 
        
        
            | 
            | 
           646 | 
               foreach ($tab_type as $cle => $val) {
  | 
        
        
            | 
            | 
           647 | 
                   $aso_options[$val['id']] = $val['intitule'];
  | 
        
        
            | 
            | 
           648 | 
               }
  | 
        
        
            | 
            | 
           649 | 
              | 
        
        
            | 
            | 
           650 | 
               $id = 'type_site_externe';
  | 
        
        
            | 
            | 
           651 | 
               $aso_attributs = array('id'=> $id, 'tabindex' => $tab_index++);
  | 
        
        
            | 
            | 
           652 | 
               $label = '<label>'.'Type de site externe : '.'</label>';
  | 
        
        
            | 
            | 
           653 | 
               $form->addElement('select', $id, $label, $aso_options, $aso_attributs);
  | 
        
        
            | 
            | 
           654 | 
              | 
        
        
            | 
            | 
           655 | 
               $id = 'gs_url';
  | 
        
        
            | 
            | 
           656 | 
               $aso_attributs = array('id' => $id, 'tabindex' => $tab_index++,'size' => 35, 'maxlength' => 255, 'value' => 'http://');
  | 
        
        
            | 
            | 
           657 | 
               $label = '<label>'.'URL du site externe : '.'</label>';
  | 
        
        
            | 
            | 
           658 | 
               $form->addElement('text', $id, $label, $aso_attributs);
  | 
        
        
            | 
            | 
           659 | 
              | 
        
        
            | 
            | 
           660 | 
               $partie_site_fin = "\n".'</fieldset>'."\n";
  | 
        
        
            | 
            | 
           661 | 
               $form->addElement('html', $partie_site_fin);
  | 
        
        
            | 
            | 
           662 | 
              | 
        
        
            | 
            | 
           663 | 
               $partie_entete_debut = '<fieldset>'."\n".'<legend>Entète par défaut des pages du site</legend>'."\n";
  | 
        
        
            | 
            | 
           664 | 
               $form->addElement('html', $partie_entete_debut);
  | 
        
        
            | 
            | 
           665 | 
              | 
        
        
            | 
            | 
           666 | 
               $id = 'gs_titre';
  | 
        
        
            | 
            | 
           667 | 
               $aso_attributs = array('id'=>$id, 'tabindex' => $tab_index++, 'size' => 35, 'maxlength' => 255, 'value' => ADSI_TITRE_SITE);
  | 
        
        
            | 
            | 
           668 | 
               $label = '<label for="'.$id.'">'.ADSI_TITRE_SITE.' : '.'</label>';
  | 
        
        
            | 
            | 
           669 | 
               $form->addElement('text', $id, $label, $aso_attributs);
  | 
        
        
            | 
            | 
           670 | 
               $form->addRule('gs_titre', 'Un titre est requis pour le site !', 'required', '', 'client');
  | 
        
        
            | 
            | 
           671 | 
              | 
        
        
            | 
            | 
           672 | 
               $id = 'gs_mots_cles';
  | 
        
        
            | 
            | 
           673 | 
               $aso_attributs = array('id'=> $id, 'tabindex' => $tab_index++, 'rows' => 3, 'cols' => 45);
  | 
        
        
            | 
            | 
           674 | 
               $label = '<label for="'.$id.'">'.'Mots-clés : '.'</label>';
  | 
        
        
            | 
            | 
           675 | 
               $zone_mots_cles = $form->createElement('textarea', $id, $label, $aso_attributs);
  | 
        
        
            | 
            | 
           676 | 
               $zone_mots_cles->setValue('mots-clés du site');
  | 
        
        
            | 
            | 
           677 | 
               $form->addElement($zone_mots_cles);
  | 
        
        
            | 
            | 
           678 | 
               $form->addRule($id, 'Des mots clés sont requis pour le site !', 'required', '', 'client');
  | 
        
        
            | 
            | 
           679 | 
              | 
        
        
            | 
            | 
           680 | 
               $id = 'gs_description';
  | 
        
        
            | 
            | 
           681 | 
               $aso_attributs = array('id'=> $id, 'tabindex' => $tab_index++, 'rows' => 3, 'cols' => 45);
  | 
        
        
            | 
            | 
           682 | 
               $label = '<label for="'.$id.'">'.'Description du contenu : '.'</label>';
  | 
        
        
            | 
            | 
           683 | 
               $zone = $form->createElement('textarea', $id, $label, $aso_attributs);
  | 
        
        
            | 
            | 
           684 | 
               $zone->setValue('description du site');
  | 
        
        
            | 
            | 
           685 | 
               $form->addElement($zone);
  | 
        
        
            | 
            | 
           686 | 
               $form->addRule($id, 'Une description est requise pour le site !', 'required', '', 'client');
  | 
        
        
            | 
            | 
           687 | 
              | 
        
        
            | 
            | 
           688 | 
               $id = 'gs_auteur';
  | 
        
        
            | 
            | 
           689 | 
               $aso_attributs = array('id'=>$id, 'tabindex' => $tab_index++, 'size' => 35, 'maxlength' => 255, 'value' => 'auteur du site');
  | 
        
        
            | 
            | 
           690 | 
               $label = '<label for="'.$id.'">'.'Auteur du site : '.'</label>';
  | 
        
        
            | 
            | 
           691 | 
               $form->addElement('text', $id, $label, $aso_attributs);
  | 
        
        
            | 
            | 
           692 | 
               $form->addRule('gs_auteur', 'Un auteur est requis pour le site !', 'required', '', 'client');
  | 
        
        
            | 
            | 
           693 | 
              | 
        
        
            | 
            | 
           694 | 
               $partie_entete_fin = "\n".'</fieldset>'."\n";
  | 
        
        
            | 
            | 
           695 | 
               $form->addElement('html', $partie_entete_fin);
  | 
        
        
            | 
            | 
           696 | 
              | 
        
        
            | 
            | 
           697 | 
               if ($aso_valeurs['modification'] ||  $aso_valeurs['traduction']) {
  | 
        
        
            | 
            | 
           698 | 
                   // Requete pour connaitre les informations sur l'administrateur ayant fait la derni�re modif
  | 
        
        
            | 
            | 
           699 | 
                   $requete_admin =    'SELECT * '.
  | 
        
        
            | 
            | 
           700 | 
                                       'FROM gen_annuaire '.
  | 
        
        
            | 
            | 
           701 | 
                                       'WHERE ga_id_administrateur = '.$aso_valeurs['gs_ce_admin'];
  | 
        
        
            | 
            | 
           702 | 
                   $resultat_admin = $db->query($requete_admin);
  | 
        
        
            | 
            | 
           703 | 
                   if (DB::isError($resultat_admin)) {
  | 
        
        
            | 
            | 
           704 | 
                       die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat_admin->getMessage(), $requete_admin));
  | 
        
        
            | 
            | 
           705 | 
                   }
  | 
        
        
            | 
            | 
           706 | 
                   $ligne_admin = $resultat_admin->fetchRow(DB_FETCHMODE_OBJECT);
  | 
        
        
            | 
            | 
           707 | 
                   if (isset($ligne_admin)) {
  | 
        
        
            | 
            | 
           708 | 
                   	$info_admin =   '<p class="info">Site créé le '.$aso_valeurs['gs_date_creation'].'. Dernière modification par '.
  | 
        
        
            | 
            | 
           709 | 
                                   $ligne_admin->ga_prenom.' '.$ligne_admin->ga_nom.'.'.'</p>';
  | 
        
        
            | 
            | 
           710 | 
                   	$form->addElement('html', $info_admin);
  | 
        
        
            | 
            | 
           711 | 
                   	$form->addElement('hidden', 'gs_ce_admin');
  | 
        
        
            | 
            | 
           712 | 
                   	$form->addElement('hidden', 'gs_date_creation');
  | 
        
        
            | 
            | 
           713 | 
                   }
  | 
        
        
            | 
            | 
           714 | 
              | 
        
        
            | 
            | 
           715 | 
                   // Titre de la page:
  | 
        
        
            | 
            | 
           716 | 
                   if ($aso_valeurs['modification']) {
  | 
        
        
            | 
            | 
           717 | 
                   	$titre = 'Modifier un site';
  | 
        
        
            | 
            | 
           718 | 
                   	$bouton_validation = '<input type="submit" id="site_modifier" name="site_modifier" value="Enregistrer" />';
  | 
        
        
            | 
            | 
           719 | 
                   }
  | 
        
        
            | 
            | 
           720 | 
                   else {
  | 
        
        
            | 
            | 
           721 | 
                   	$titre = 'Traduire un site';
  | 
        
        
            | 
            | 
           722 | 
                   	$bouton_validation = '<input type="submit" id="site_traduire" name="site_traduire" value="Enregistrer" />';
  | 
        
        
            | 
            | 
           723 | 
                   }
  | 
        
        
            | 
            | 
           724 | 
              | 
        
        
            | 
            | 
           725 | 
               } else {
  | 
        
        
            | 
            | 
           726 | 
                   // Titre de la page:
  | 
        
        
            | 
            | 
           727 | 
                   $titre = 'Ajouter un site';
  | 
        
        
            | 
            | 
           728 | 
                   // Bouton validant le formulaire
  | 
        
        
            | 
            | 
           729 | 
                   $bouton_validation = '<input type="submit" id="site_enregistrer" name="site_enregistrer" value="Enregistrer" />';
  | 
        
        
            | 
            | 
           730 | 
               }
  | 
        
        
            | 
            | 
           731 | 
               $bouton_annuler =   '<input type="submit" id="form_annuler" name="form_annuler" value="Annuler" />';
  | 
        
        
            | 
            | 
           732 | 
               $bouton_effacer =   '<input type="reset" id="effacer" name="effacer" value="Effacer" />';
  | 
        
        
            | 
            | 
           733 | 
               $boutons =  '<p>'."\n".
  | 
        
        
            | 
            | 
           734 | 
                           $bouton_validation."\n".
  | 
        
        
            | 
            | 
           735 | 
                           $bouton_annuler."\n".
  | 
        
        
            | 
            | 
           736 | 
                           $bouton_effacer."\n".
  | 
        
        
            | 
            | 
           737 | 
                           '</p>'."\n";
  | 
        
        
            | 
            | 
           738 | 
               $form->addElement('html', $boutons);
  | 
        
        
            | 
            | 
           739 | 
              | 
        
        
            | 
            | 
           740 | 
               // Instanciation des valeurs par defaut du formulaire
  | 
        
        
            | 
            | 
           741 | 
               $form->setDefaults($aso_valeurs);
  | 
        
        
            | 
            | 
           742 | 
              | 
        
        
            | 
            | 
           743 | 
               // Javascript pour la validation cote client
  | 
        
        
            | 
            | 
           744 | 
               $regles_javascript = $form->getValidationScript();
  | 
        
        
            | 
            | 
           745 | 
              | 
        
        
            | 
            | 
           746 | 
               // Note de fin de formulaire
  | 
        
        
            | 
            | 
           747 | 
               $form->setRequiredNote('Indique les champs obligatoires');
  | 
        
        
            | 
            | 
           748 | 
               $sortie .= $form->toHTML()."\n";
  | 
        
        
            | 
            | 
           749 | 
              | 
        
        
            | 
            | 
           750 | 
               // Construction de la page.
  | 
        
        
            | 
            | 
           751 | 
               return ADMIN_contruirePage($titre, $sortie, $message);
  | 
        
        
            | 
            | 
           752 | 
           }
  | 
        
        
            | 
            | 
           753 | 
              | 
        
        
            | 
            | 
           754 | 
           /** Fonction ADMIN_validerFormAjouterSite() - Valide les donnees issues du formulaire pour gen_site.
  | 
        
        
            | 
            | 
           755 | 
           *
  | 
        
        
            | 
            | 
           756 | 
           * Cette fonction valide les donnees a ajouter dans la table gen_site.
  | 
        
        
            | 
            | 
           757 | 
           *
  | 
        
        
            | 
            | 
           758 | 
           * @param  string   l'objet pear de connexion a la base de donn�es.
  | 
        
        
            | 
            | 
           759 | 
           * @param  string   le tableau contenant les valeurs du formulaire.
  | 
        
        
            | 
            | 
           760 | 
           * @return string   retourne les messages d'erreurs sinon rien.
  | 
        
        
            | 
            | 
           761 | 
           */
  | 
        
        
            | 
            | 
           762 | 
           function ADMIN_validerFormSite(&$db, $aso_valeurs)
  | 
        
        
            | 
            | 
           763 | 
           {
  | 
        
        
            | 
            | 
           764 | 
               $message = '';
  | 
        
        
            | 
            | 
           765 | 
              | 
        
        
            | 
            | 
           766 | 
               // Validation des donnees du formulaire
  | 
        
        
            | 
            | 
           767 | 
               if (empty($aso_valeurs['gs_nom'])) {
  | 
        
        
            | 
            | 
           768 | 
                   $message .= '<p class="pap_erreur">Le champ "Nom" ne doit pas être vide.</p>';
  | 
        
        
            | 
            | 
           769 | 
               }
  | 
        
        
            | 
            | 
           770 | 
               if (empty($aso_valeurs['gs_code_alpha'])) {
  | 
        
        
            | 
            | 
           771 | 
                   $message .= '<p class="pap_erreur">Le champ "Code alphanumérique" ne doit pas être vide.</p>';
  | 
        
        
            | 
            | 
           772 | 
               }
  | 
        
        
            | 
            | 
           773 | 
               if ($aso_valeurs['gs_code_num'] == '') {
  | 
        
        
            | 
            | 
           774 | 
                   // Note: ne pas utilisez empty() car si on veut saisir 0, cela est conscid�r� comme vide!
  | 
        
        
            | 
            | 
           775 | 
                   $message .= '<p class="pap_erreur">Le champ "Code numérique" ne doit pas être vide.</p>';
  | 
        
        
            | 
            | 
           776 | 
               }
  | 
        
        
            | 
            | 
           777 | 
               if (preg_match('/^[0-9]+$/',$aso_valeurs['gs_code_num']) == 0) {
  | 
        
        
            | 
            | 
           778 | 
                   $message .= '<p class="pap_erreur">Le champ "Code numérique" doit contenir un nombre.</p>';
  | 
        
        
            | 
            | 
           779 | 
               }
  | 
        
        
            | 
            | 
           780 | 
              | 
        
        
            | 
            | 
           781 | 
               // Requete pour verifier l'absence du code numerique et alphanumerique de la table gen_site
  | 
        
        
            | 
            | 
           782 | 
               // en mode creation uniquement !
  | 
        
        
            | 
            | 
           783 | 
              | 
        
        
            | 
            | 
           784 | 
              | 
        
        
            | 
            | 
           785 | 
               if (!isset($aso_valeurs['site_modifier'])) $aso_valeurs['site_modifier']=0;
  | 
        
        
            | 
            | 
           786 | 
               if (!isset($aso_valeurs['site_traduire'])) $aso_valeurs['site_traduire']=0;
  | 
        
        
            | 
            | 
           787 | 
              | 
        
        
            | 
            | 
           788 | 
               if (@!$aso_valeurs['site_modifier'] && @!$aso_valeurs['site_traduire'] ) {
  | 
        
        
            | 
            | 
           789 | 
              | 
        
        
            | 
            | 
           790 | 
           	    $requete =  'SELECT gs_code_alpha, gs_code_num '.
  | 
        
        
            | 
            | 
           791 | 
           	                'FROM gen_site, gen_site_relation '.
  | 
        
        
            | 
            | 
           792 | 
           	                'WHERE gsr_id_site_01 = gsr_id_site_02 '.
  | 
        
        
            | 
            | 
           793 | 
           	                'AND gsr_id_site_01 = gs_id_site '.
  | 
        
        
            | 
            | 
           794 | 
           	                'AND gsr_id_valeur IN (102, 103) ';// 102 = site "principal" et 103 = site "externe"
  | 
        
        
            | 
            | 
           795 | 
           	    $requete .= (isset($aso_valeurs['gs_id_site'])) ? 'AND gs_id_site != '.$aso_valeurs['gs_id_site'] : '';
  | 
        
        
            | 
            | 
           796 | 
              | 
        
        
            | 
            | 
           797 | 
              | 
        
        
            | 
            | 
           798 | 
           	    $resultat = $db->query($requete);
  | 
        
        
            | 
            | 
           799 | 
           	    if (DB::isError($resultat)) {
  | 
        
        
            | 
            | 
           800 | 
           	        die( BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete) );
  | 
        
        
            | 
            | 
           801 | 
           	    }
  | 
        
        
            | 
            | 
           802 | 
              | 
        
        
            | 
            | 
           803 | 
           	    while ($ligne = $resultat->fetchRow(DB_FETCHMODE_OBJECT) ) {
  | 
        
        
            | 
            | 
           804 | 
           	        if ($ligne->gs_code_num == $aso_valeurs['gs_code_num']) {
  | 
        
        
            | 
            | 
           805 | 
           	            $message .= '<p class="pap_erreur">La valeur "'.$aso_valeurs['gs_code_num'].'" pour le champ "Code numérique" existe déjà.</p>';
  | 
        
        
            | 
            | 
           806 | 
           	        }
  | 
        
        
            | 
            | 
           807 | 
           	        if ($ligne->gs_code_alpha == $aso_valeurs['gs_code_alpha']) {
  | 
        
        
            | 
            | 
           808 | 
           	            $message .= '<p class="pap_erreur">La valeur "'.$aso_valeurs['gs_code_alpha'].'" pour le champ "Code alphanumérique" existe déjà.</p>';
  | 
        
        
            | 
            | 
           809 | 
           	        }
  | 
        
        
            | 
            | 
           810 | 
           	    }
  | 
        
        
            | 
            | 
           811 | 
              | 
        
        
            | 
            | 
           812 | 
           	    $resultat->free();
  | 
        
        
            | 
            | 
           813 | 
              | 
        
        
            | 
            | 
           814 | 
               }
  | 
        
        
            | 
            | 
           815 | 
              | 
        
        
            | 
            | 
           816 | 
               else {
  | 
        
        
            | 
            | 
           817 | 
               // Refuser si plus de traduction disponible !
  | 
        
        
            | 
            | 
           818 | 
               }
  | 
        
        
            | 
            | 
           819 | 
              | 
        
        
            | 
            | 
           820 | 
               if (empty($aso_valeurs['gs_titre'])) {
  | 
        
        
            | 
            | 
           821 | 
                   $message .= '<p class="pap_erreur">Le champ "Titre" ne doit pas être vide.</p>';
  | 
        
        
            | 
            | 
           822 | 
               }
  | 
        
        
            | 
            | 
           823 | 
               if (empty($aso_valeurs['gs_mots_cles'])) {
  | 
        
        
            | 
            | 
           824 | 
                   $message .= '<p class="pap_erreur">Le champ "Mots clés" ne doit pas être vide.</p>';
  | 
        
        
            | 
            | 
           825 | 
               }
  | 
        
        
            | 
            | 
           826 | 
               if (empty($aso_valeurs['gs_description'])) {
  | 
        
        
            | 
            | 
           827 | 
                   $message .= '<p class="pap_erreur">Le champ "Description" ne doit pas être vide.</p>';
  | 
        
        
            | 
            | 
           828 | 
               }
  | 
        
        
            | 
            | 
           829 | 
               if (empty($aso_valeurs['gs_auteur'])) {
  | 
        
        
            | 
            | 
           830 | 
                   $message .= '<p class="pap_erreur">Le champ "Auteur" ne doit pas être vide.</p>';
  | 
        
        
            | 
            | 
           831 | 
               }
  | 
        
        
            | 
            | 
           832 | 
               if (isset($aso_valeurs['externe']) && $aso_valeurs['externe'] == 1 && (empty($aso_valeurs['gs_url']) || $aso_valeurs['gs_url'] == 'http://')) {
  | 
        
        
            | 
            | 
           833 | 
                   $message .= '<p class="pap_erreur">'.'Vous avez désigné ce site comme étant externe. Il est nécessaire de saisir son URL!'.'</p>';
  | 
        
        
            | 
            | 
           834 | 
               }
  | 
        
        
            | 
            | 
           835 | 
               if (isset($aso_valeurs['externe']) && $aso_valeurs['externe'] == 0 && (!empty($aso_valeurs['gs_url']) && $aso_valeurs['gs_url'] != 'http://')) {
  | 
        
        
            | 
            | 
           836 | 
                   $message .= '<p class="pap_erreur">'.'Vous avez saisie une l\'url : '.$aso_valeurs['gs_url'].'<br />'.
  | 
        
        
            | 
            | 
           837 | 
                               'Vous conscidérez donc ce site comme étant externe. Il est nécessaire de cocher la case "oui"!'.'</p>';
  | 
        
        
            | 
            | 
           838 | 
               }
  | 
        
        
            | 
            | 
           839 | 
               return $message;
  | 
        
        
            | 
            | 
           840 | 
           }
  | 
        
        
            | 
            | 
           841 | 
              | 
        
        
            | 
            | 
           842 | 
           /** Fonction ADMIN_enregistrerSite() - Ajoute un site � Papyrus.
  | 
        
        
            | 
            | 
           843 | 
           *
  | 
        
        
            | 
            | 
           844 | 
           * Cette fonction ajoute le site � Papyrus, c'est � dire :
  | 
        
        
            | 
            | 
           845 | 
           * - 1. Cr�ation des r�pertoire du projet en fonction du nom et des sous-r�pertoires.
  | 
        
        
            | 
            | 
           846 | 
           * - 2. Insertion d'une ligne dans la table "gen_site".
  | 
        
        
            | 
            | 
           847 | 
           * - 3. Insertion d'une ligne dans la table "gen_site_auth" et ses tables li�es si n�cessaire.
  | 
        
        
            | 
            | 
           848 | 
           *
  | 
        
        
            | 
            | 
           849 | 
           * @param  string   l'objet pear de connexion � la base de donn�es.
  | 
        
        
            | 
            | 
           850 | 
           * @param  string   le tableau contenant les valeurs du formulaire.
  | 
        
        
            | 
            | 
           851 | 
           * @param  int      identifiant de l'administrateur r�alisant cette cr�ation.
  | 
        
        
            | 
            | 
           852 | 
           * @return string retourne un message en cas de succ�s ou d'�chec.
  | 
        
        
            | 
            | 
           853 | 
           */
  | 
        
        
            | 
            | 
           854 | 
           function ADMIN_enregistrerSite(&$db, $aso_valeurs, $id_admin)
  | 
        
        
            | 
            | 
           855 | 
           {
  | 
        
        
            | 
            | 
           856 | 
               // Nous verifions si nous avons a faire a un site externe.
  | 
        
        
            | 
            | 
           857 | 
               $id_type_site = '102';// par defaut on conscid�re que c'est un site "principal"
  | 
        
        
            | 
            | 
           858 | 
               if (isset($aso_valeurs['type_site_externe']) && $aso_valeurs['type_site_externe'] > 0 && !empty($aso_valeurs['gs_url']) && $aso_valeurs['gs_url'] != 'http://') {
  | 
        
        
            | 
            | 
           859 | 
                   $id_type_site = '103';// c'est un site "externe"
  | 
        
        
            | 
            | 
           860 | 
               }
  | 
        
        
            | 
            | 
           861 | 
              | 
        
        
            | 
            | 
           862 | 
               // Ajout des repertoires des sites "principaux" soit par manipulation de fichier soit par FTP en fonction de la constante definie
  | 
        
        
            | 
            | 
           863 | 
               // par l'utilisateur dans le fichier de config avancee.
  | 
        
        
            | 
            | 
           864 | 
               $tab_rep_langue = array(GEN_DOSSIER_GENERIQUE, $aso_valeurs['gs_ce_i18n']);
  | 
        
        
            | 
            | 
           865 | 
               $tab_rep_site = array(  GEN_DOSSIER_IMAGE,
  | 
        
        
            | 
            | 
           866 | 
                                       GEN_DOSSIER_STYLE,
  | 
        
        
            | 
            | 
           867 | 
                                       GEN_DOSSIER_SCRIPT,
  | 
        
        
            | 
            | 
           868 | 
                                       GEN_DOSSIER_SQUELETTE,
  | 
        
        
            | 
            | 
           869 | 
                                       GEN_DOSSIER_DOC);
  | 
        
        
            | 
            | 
           870 | 
               if (!GEN_FTP_UTILISE && $id_type_site != '103') {
  | 
        
        
            | 
            | 
           871 | 
                   foreach ($tab_rep_langue as $nom_rep_langue) {
  | 
        
        
            | 
            | 
           872 | 
                       foreach ($tab_rep_site as $nom_rep_site) {
  | 
        
        
            | 
            | 
           873 | 
                           $chemin_repertoire =    PAP_CHEMIN_RACINE.GEN_CHEMIN_SITES.$aso_valeurs['gs_code_alpha'].GEN_SEP.
  | 
        
        
            | 
            | 
           874 | 
                                                   $nom_rep_langue.GEN_SEP.$nom_rep_site;
  | 
        
        
            | 
            | 
           875 | 
                           $vieux_umask = umask(0);
  | 
        
        
            | 
            | 
           876 | 
                           $resultat = creerDossier($chemin_repertoire, 0777, GEN_SEP);
  | 
        
        
            | 
            | 
           877 | 
                           umask($vieux_umask);
  | 
        
        
            | 
            | 
           878 | 
                           if ($resultat == false) {
  | 
        
        
            | 
            | 
           879 | 
                               $message =  '<p class="pap_erreur"> ERREUR Papyrus admin : impossible de créer le répertoire.<br />'.
  | 
        
        
            | 
            | 
           880 | 
                                           'Répertoire : '. $chemin_repertoire .'<br />'.
  | 
        
        
            | 
            | 
           881 | 
                                           'Ligne n° : '. __LINE__ .'<br />'.
  | 
        
        
            | 
            | 
           882 | 
                                           'Fichier n° : '. __FILE__ .'<br /></p>';
  | 
        
        
            | 
            | 
           883 | 
                               return $message;
  | 
        
        
            | 
            | 
           884 | 
                           }
  | 
        
        
            | 
            | 
           885 | 
                       }
  | 
        
        
            | 
            | 
           886 | 
                   }
  | 
        
        
            | 
            | 
           887 | 
                   $chemin_squelette_defaut =  PAP_CHEMIN_RACINE.GEN_CHEMIN_COMMUN.GEN_DOSSIER_GENERIQUE.GEN_SEP.
  | 
        
        
            | 
            | 
           888 | 
                                               GEN_DOSSIER_SQUELETTE.GEN_SEP.GEN_FICHIER_SQUELETTE;
  | 
        
        
            | 
            | 
           889 | 
                   $chemin_squelette_site =    PAP_CHEMIN_RACINE.GEN_CHEMIN_SITES.$aso_valeurs['gs_code_alpha'].GEN_SEP.
  | 
        
        
            | 
            | 
           890 | 
                                               $aso_valeurs['gs_ce_i18n'].GEN_SEP.GEN_DOSSIER_SQUELETTE.GEN_SEP.GEN_FICHIER_SQUELETTE;
  | 
        
        
            | 
            | 
           891 | 
                   if (!copy($chemin_squelette_defaut, $chemin_squelette_site)) {
  | 
        
        
            | 
            | 
           892 | 
                       $message =  '<p class="pap_erreur"> ERREUR Papyrus admin : impossible de créer le fichier de squellete par défaut.<br />'.
  | 
        
        
            | 
            | 
           893 | 
                                   'Fichier : '. $chemin_squelette_site .'<br />'.
  | 
        
        
            | 
            | 
           894 | 
                                   'Ligne n° : '. __LINE__ .'<br />'.
  | 
        
        
            | 
            | 
           895 | 
                                   'Fichier n° : '. __FILE__ .'<br /></p>';
  | 
        
        
            | 
            | 
           896 | 
                       return $message;
  | 
        
        
            | 
            | 
           897 | 
                   }
  | 
        
        
            | 
            | 
           898 | 
                   $chemin_style_defaut =  PAP_CHEMIN_RACINE.GEN_CHEMIN_COMMUN.GEN_DOSSIER_GENERIQUE.GEN_SEP.
  | 
        
        
            | 
            | 
           899 | 
                                           GEN_DOSSIER_STYLE.GEN_SEP.GEN_FICHIER_STYLE;
  | 
        
        
            | 
            | 
           900 | 
                   $chemin_style_site =    PAP_CHEMIN_RACINE.GEN_CHEMIN_SITES.$aso_valeurs['gs_code_alpha'].GEN_SEP.
  | 
        
        
            | 
            | 
           901 | 
                                           $aso_valeurs['gs_ce_i18n'].GEN_SEP.GEN_DOSSIER_STYLE.GEN_SEP.GEN_FICHIER_STYLE;
  | 
        
        
            | 
            | 
           902 | 
                   if (!copy($chemin_style_defaut, $chemin_style_site)) {
  | 
        
        
            | 
            | 
           903 | 
                       $message =  '<p class="pap_erreur"> ERREUR Papyrus admin : impossible de créer le fichier de style par défaut.<br />'.
  | 
        
        
            | 
            | 
           904 | 
                                   'Fichier : '. $chemin_style_site .'<br />'.
  | 
        
        
            | 
            | 
           905 | 
                                   'Ligne n° : '. __LINE__ .'<br />'.
  | 
        
        
            | 
            | 
           906 | 
                                   'Fichier n° : '. __FILE__ .'<br /></p>';
  | 
        
        
            | 
            | 
           907 | 
                       return $message;
  | 
        
        
            | 
            | 
           908 | 
                   }
  | 
        
        
            | 
            | 
           909 | 
               } else if (GEN_FTP_UTILISE && $id_type_site != '103') {  // 103 est le type "site externe"
  | 
        
        
            | 
            | 
           910 | 
                   // Creation d'une connection ftp avec Net_FTP de PEAR
  | 
        
        
            | 
            | 
           911 | 
                   // voir http://pear.php.net/manual/fr/package.networking.net-ftp.php
  | 
        
        
            | 
            | 
           912 | 
              | 
        
        
            | 
            | 
           913 | 
                   // creation de l'objet pear ftp
  | 
        
        
            | 
            | 
           914 | 
                   $objet_pear_ftp = new Net_FTP(PAP_FTP_SERVEUR, PAP_FTP_PORT);
  | 
        
        
            | 
            | 
           915 | 
                   // creation de la connexion
  | 
        
        
            | 
            | 
           916 | 
                   $ftp_conn = $objet_pear_ftp->connect(PAP_FTP_SERVEUR, PAP_FTP_PORT);
  | 
        
        
            | 
            | 
           917 | 
                   // identification
  | 
        
        
            | 
            | 
           918 | 
                   $ftp_login_result = $objet_pear_ftp->login(PAP_FTP_UTILISATEUR, PAP_FTP_MOT_DE_PASSE);
  | 
        
        
            | 
            | 
           919 | 
                   // Gestion des erreurs ftp
  | 
        
        
            | 
            | 
           920 | 
                   if ((PEAR::isError($ftp_conn) || PEAR::isError($ftp_login_result))) {
  | 
        
        
            | 
            | 
           921 | 
                       $message =  '<p class="pap_erreur"> ERREUR Papyrus admin : impossible de se connecter par ftp.<br />'.
  | 
        
        
            | 
            | 
           922 | 
                                   'Serveur : '. PAP_FTP_SERVEUR .'<br />'.
  | 
        
        
            | 
            | 
           923 | 
                                   'Utilisateur : '. PAP_FTP_UTILISATEUR .'<br />'.
  | 
        
        
            | 
            | 
           924 | 
                                   'Erreur connexion : '.$ftp_conn->getMessage().'<br />'.
  | 
        
        
            | 
            | 
           925 | 
                                   'Erreur login : '.$ftp_login_result->getMessage().'<br />'.
  | 
        
        
            | 
            | 
           926 | 
                                   'Ligne n° : '. __LINE__ .'<br />'.
  | 
        
        
            | 
            | 
           927 | 
                                   'Fichier n° : '. __FILE__ .'<br /><p>';
  | 
        
        
            | 
            | 
           928 | 
                       return $message;
  | 
        
        
            | 
            | 
           929 | 
                   }
  | 
        
        
            | 
            | 
           930 | 
                   $resultat = $objet_pear_ftp->mkdir(PAP_FTP_RACINE.GEN_CHEMIN_SITES.$aso_valeurs['gs_code_alpha']) ;
  | 
        
        
            | 
            | 
           931 | 
              | 
        
        
            | 
            | 
           932 | 
                  if (PEAR::isError($resultat)) {
  | 
        
        
            | 
            | 
           933 | 
                       $message =  '<p class="pap_erreur"> ERREUR Papyrus admin : impossible de cr�er le r�pertoire par ftp.<br />'.
  | 
        
        
            | 
            | 
           934 | 
                                   'Répertoire : '. PAP_FTP_RACINE.GEN_CHEMIN_SITES.$aso_valeurs['gs_code_alpha'] .'<br />'.
  | 
        
        
            | 
            | 
           935 | 
                                   'Erreur origine : '. $resultat->getMessage() .'<br />'.
  | 
        
        
            | 
            | 
           936 | 
                                   'Informations de debogage : '.$resultat->getDebugInfo().'<br />'.
  | 
        
        
            | 
            | 
           937 | 
                                   'Ligne n° : '. __LINE__ .'<br />'.
  | 
        
        
            | 
            | 
           938 | 
                                   'Fichier n° : '. __FILE__ .'<br /></p>';
  | 
        
        
            | 
            | 
           939 | 
                       return $message;
  | 
        
        
            | 
            | 
           940 | 
                   }
  | 
        
        
            | 
            | 
           941 | 
                   //$objet_pear_ftp->cd(PAP_FTP_RACINE.GEN_CHEMIN_SITES.$aso_valeurs['gs_code_alpha']) ;
  | 
        
        
            | 
            | 
           942 | 
                   foreach ($tab_rep_langue as $nom_rep_langue) {
  | 
        
        
            | 
            | 
           943 | 
                       $objet_pear_ftp->mkdir(PAP_FTP_RACINE.GEN_CHEMIN_SITES.$aso_valeurs['gs_code_alpha'].GEN_SEP.$nom_rep_langue) ;
  | 
        
        
            | 
            | 
           944 | 
                       foreach ($tab_rep_site as $nom_rep_site) {
  | 
        
        
            | 
            | 
           945 | 
                           $chemin_repertoire =    PAP_FTP_RACINE.GEN_CHEMIN_SITES.$aso_valeurs['gs_code_alpha'].GEN_SEP.$nom_rep_langue.GEN_SEP.$nom_rep_site;
  | 
        
        
            | 
            | 
           946 | 
              | 
        
        
            | 
            | 
           947 | 
                           $resultat = $objet_pear_ftp->mkdir($chemin_repertoire) ;
  | 
        
        
            | 
            | 
           948 | 
                           if (PEAR::isError($resultat)) {
  | 
        
        
            | 
            | 
           949 | 
                               $message =  '<p class="pap_erreur"> ERREUR Papyrus admin : impossible de créer le répertoire par ftp.<br />'.
  | 
        
        
            | 
            | 
           950 | 
                                           'Répertoire : '. $chemin_repertoire .'<br />'.
  | 
        
        
            | 
            | 
           951 | 
                                           'Erreur origine : '. $resultat->getMessage() .'<br />'.
  | 
        
        
            | 
            | 
           952 | 
                                           'Informations de debogage : '.$resultat->getDebugInfo().'<br />'.
  | 
        
        
            | 
            | 
           953 | 
                                           'Ligne n° : '. __LINE__ .'<br />'.
  | 
        
        
            | 
            | 
           954 | 
                                           'Fichier n° : '. __FILE__ .'<br /></p>';
  | 
        
        
            | 
            | 
           955 | 
                               return $message;
  | 
        
        
            | 
            | 
           956 | 
                           }
  | 
        
        
            | 
            | 
           957 | 
                       }
  | 
        
        
            | 
            | 
           958 | 
                   }
  | 
        
        
            | 
            | 
           959 | 
                   $chemin_squelette_defaut =  PAP_CHEMIN_RACINE.GEN_CHEMIN_COMMUN.GEN_DOSSIER_GENERIQUE.GEN_SEP.
  | 
        
        
            | 
            | 
           960 | 
                                               GEN_DOSSIER_SQUELETTE.GEN_SEP.GEN_FICHIER_SQUELETTE;
  | 
        
        
            | 
            | 
           961 | 
                   $chemin_squelette_site =    PAP_FTP_RACINE.GEN_CHEMIN_SITES.$aso_valeurs['gs_code_alpha'].GEN_SEP.
  | 
        
        
            | 
            | 
           962 | 
                                               $aso_valeurs['gs_ce_i18n'].GEN_SEP.GEN_DOSSIER_SQUELETTE.GEN_SEP.GEN_FICHIER_SQUELETTE;
  | 
        
        
            | 
            | 
           963 | 
                   $resultat = $objet_pear_ftp->put($chemin_squelette_defaut, $chemin_squelette_site, true, FTP_BINARY);
  | 
        
        
            | 
            | 
           964 | 
                   if (PEAR::isError($resultat)) {
  | 
        
        
            | 
            | 
           965 | 
                       $message =  '<p class="pap_erreur"> ERREUR Papyrus admin : impossible de copier le squelette defaut par ftp.<br />'.
  | 
        
        
            | 
            | 
           966 | 
                                   'Fichier origine : '. $chemin_squelette_defaut .'<br />'.
  | 
        
        
            | 
            | 
           967 | 
                                   'Fichier copié : '. $chemin_squelette_site .'<br />'.
  | 
        
        
            | 
            | 
           968 | 
                                   'Erreur origine : '. $resultat->getMessage() .'<br />'.
  | 
        
        
            | 
            | 
           969 | 
                                   'Ligne n° : '. __LINE__ .'<br />'.
  | 
        
        
            | 
            | 
           970 | 
                                   'Fichier n° : '. __FILE__ .'<br /></p>';
  | 
        
        
            | 
            | 
           971 | 
                           return $message;
  | 
        
        
            | 
            | 
           972 | 
                   }
  | 
        
        
            | 
            | 
           973 | 
                   $chemin_style_defaut =  PAP_CHEMIN_RACINE.GEN_CHEMIN_COMMUN.GEN_DOSSIER_GENERIQUE.GEN_SEP.
  | 
        
        
            | 
            | 
           974 | 
                                           GEN_DOSSIER_STYLE.GEN_SEP.GEN_FICHIER_STYLE;
  | 
        
        
            | 
            | 
           975 | 
                   $chemin_style_site =    PAP_FTP_RACINE.GEN_CHEMIN_SITES.$aso_valeurs['gs_code_alpha'].GEN_SEP.
  | 
        
        
            | 
            | 
           976 | 
                                           $aso_valeurs['gs_ce_i18n'].GEN_SEP.GEN_DOSSIER_STYLE.GEN_SEP.GEN_FICHIER_STYLE;
  | 
        
        
            | 
            | 
           977 | 
                   $resultat = $objet_pear_ftp->put($chemin_style_defaut, $chemin_style_site, true, FTP_BINARY);
  | 
        
        
            | 
            | 
           978 | 
                   if (PEAR::isError($resultat)) {
  | 
        
        
            | 
            | 
           979 | 
                       $message =  '<p class="pap_erreur"> ERREUR Papyrus admin : impossible de copier les styles defaut par ftp.<br />'.
  | 
        
        
            | 
            | 
           980 | 
                                   'Fichier origine : '. $chemin_style_defaut .'<br />'.
  | 
        
        
            | 
            | 
           981 | 
                                   'Fichier copié : '. $chemin_style_site .'<br />'.
  | 
        
        
            | 
            | 
           982 | 
                                   'Erreur origine : '. $resultat->getMessage() .'<br />'.
  | 
        
        
            | 
            | 
           983 | 
                                   'Ligne n° : '. __LINE__ .'<br />'.
  | 
        
        
            | 
            | 
           984 | 
                                   'Fichier n° : '. __FILE__ .'<br /></p>';
  | 
        
        
            | 
            | 
           985 | 
                           return $message;
  | 
        
        
            | 
            | 
           986 | 
                   }
  | 
        
        
            | 
            | 
           987 | 
              | 
        
        
            | 
            | 
           988 | 
                   $chemin_image_defaut =  PAP_CHEMIN_RACINE.GEN_CHEMIN_COMMUN.GEN_DOSSIER_GENERIQUE.GEN_SEP.
  | 
        
        
            | 
            | 
           989 | 
                                           GEN_DOSSIER_IMAGE.GEN_SEP;
  | 
        
        
            | 
            | 
           990 | 
                   $chemin_image_site =    PAP_FTP_RACINE.GEN_CHEMIN_SITES.$aso_valeurs['gs_code_alpha'].GEN_SEP.
  | 
        
        
            | 
            | 
           991 | 
                                           $aso_valeurs['gs_ce_i18n'].GEN_SEP.GEN_DOSSIER_IMAGE.GEN_SEP;
  | 
        
        
            | 
            | 
           992 | 
                   $resultat = $objet_pear_ftp->putRecursive($chemin_image_defaut, $chemin_image_site, false, FTP_BINARY);
  | 
        
        
            | 
            | 
           993 | 
                   if (PEAR::isError($resultat)) {
  | 
        
        
            | 
            | 
           994 | 
                       $message =  '<p class="pap_erreur"> ERREUR Papyrus admin : impossible de copier le dossier images par ftp.<br />'.
  | 
        
        
            | 
            | 
           995 | 
                                   'Fichier origine : '. $chemin_image_defaut .'<br />'.
  | 
        
        
            | 
            | 
           996 | 
                                   'Fichier copié : '. $chemin_image_site .'<br />'.
  | 
        
        
            | 
            | 
           997 | 
                                   'Erreur origine : '. $resultat->getMessage() .'<br />'.
  | 
        
        
            | 
            | 
           998 | 
                                   'Ligne n° : '. __LINE__ .'<br />'.
  | 
        
        
            | 
            | 
           999 | 
                                   'Fichier n° : '. __FILE__ .'<br /></p>';
  | 
        
        
            | 
            | 
           1000 | 
                           return $message;
  | 
        
        
            | 
            | 
           1001 | 
                   }
  | 
        
        
            | 
            | 
           1002 | 
              | 
        
        
            | 
            | 
           1003 | 
              | 
        
        
            | 
            | 
           1004 | 
              | 
        
        
            | 
            | 
           1005 | 
                   $objet_pear_ftp->disconnect();
  | 
        
        
            | 
            | 
           1006 | 
               }
  | 
        
        
            | 
            | 
           1007 | 
              | 
        
        
            | 
            | 
           1008 | 
               $id_site = SQL_obtenirNouveauId($db, 'gen_site','gs_id_site');
  | 
        
        
            | 
            | 
           1009 | 
               if ($id_site == false) {
  | 
        
        
            | 
            | 
           1010 | 
                   $message = '<p class="erreur"> ERREUR papyrus admin : impossible de récupérer un identifiant pour la table gen_site.<br />'.
  | 
        
        
            | 
            | 
           1011 | 
                               'Ligne n° : '. __LINE__ .'<br />'.
  | 
        
        
            | 
            | 
           1012 | 
                               'Fichier n° : '. __FILE__ .'<br /></p>';
  | 
        
        
            | 
            | 
           1013 | 
                   return $message;
  | 
        
        
            | 
            | 
           1014 | 
               }
  | 
        
        
            | 
            | 
           1015 | 
              | 
        
        
            | 
            | 
           1016 | 
               // Modification de la requete si nous avons a faire a un site externe.
  | 
        
        
            | 
            | 
           1017 | 
               $requete_complement = ', gs_url = NULL';
  | 
        
        
            | 
            | 
           1018 | 
               if (isset($aso_valeurs['type_site_externe']) && $aso_valeurs['type_site_externe'] > 0 && !empty($aso_valeurs['gs_url']) && $aso_valeurs['gs_url'] != 'http://') {
  | 
        
        
            | 
            | 
           1019 | 
                   $requete_complement = ', gs_url = "'.$aso_valeurs['gs_url'].'"';
  | 
        
        
            | 
            | 
           1020 | 
               }
  | 
        
        
            | 
            | 
           1021 | 
              | 
        
        
            | 
            | 
           1022 | 
               // Requete d'insertion des infos d'un site dans gen_site
  | 
        
        
            | 
            | 
           1023 | 
               $requete =  'INSERT INTO gen_site '.
  | 
        
        
            | 
            | 
           1024 | 
                           'SET gs_id_site = '.$id_site.', '.
  | 
        
        
            | 
            | 
           1025 | 
                           'gs_ce_i18n = "'.$aso_valeurs['gs_ce_i18n'].'", '.
  | 
        
        
            | 
            | 
           1026 | 
                           'gs_ce_auth = '.$aso_valeurs['gs_ce_auth'].', '.
  | 
        
        
            | 
            | 
           1027 | 
                           'gs_fichier_squelette = "defaut.html", '.
  | 
        
        
            | 
            | 
           1028 | 
                           'gs_code_num = '.$aso_valeurs['gs_code_num'].', '.
  | 
        
        
            | 
            | 
           1029 | 
                           'gs_code_alpha = "'.$aso_valeurs['gs_code_alpha'].'", '.
  | 
        
        
            | 
            | 
           1030 | 
                           'gs_nom = "'.$aso_valeurs['gs_nom'].'", '.
  | 
        
        
            | 
            | 
           1031 | 
                           'gs_raccourci_clavier = "'.$aso_valeurs['gs_raccourci_clavier'].'", '.
  | 
        
        
            | 
            | 
           1032 | 
                           'gs_titre = "'.$aso_valeurs['gs_titre'].'", '.
  | 
        
        
            | 
            | 
           1033 | 
                           'gs_mots_cles = "'.$aso_valeurs['gs_mots_cles'].'", '.
  | 
        
        
            | 
            | 
           1034 | 
                           'gs_description = "'.$aso_valeurs['gs_description'].'", '.
  | 
        
        
            | 
            | 
           1035 | 
                           'gs_auteur = "'.$aso_valeurs['gs_auteur'].'", '.
  | 
        
        
            | 
            | 
           1036 | 
                           'gs_date_creation = "'.date('Y-m-d H:i:s').'", '.
  | 
        
        
            | 
            | 
           1037 | 
                           'gs_ce_admin = '.$id_admin.
  | 
        
        
            | 
            | 
           1038 | 
                           $requete_complement;
  | 
        
        
            | 
            | 
           1039 | 
               $resultat = $db->query($requete);
  | 
        
        
            | 
            | 
           1040 | 
               if (DB::isError($resultat)) {
  | 
        
        
            | 
            | 
           1041 | 
                   die( BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete) );
  | 
        
        
            | 
            | 
           1042 | 
               }
  | 
        
        
            | 
            | 
           1043 | 
              | 
        
        
            | 
            | 
           1044 | 
               // Recherche du nouveau numero d'ordre de ce site "principal" ou "externe"
  | 
        
        
            | 
            | 
           1045 | 
               $requete =  'SELECT MAX(gsr_ordre) AS max_ordre '.
  | 
        
        
            | 
            | 
           1046 | 
                           'FROM gen_site_relation '.
  | 
        
        
            | 
            | 
           1047 | 
                           'WHERE gsr_id_site_01 = gsr_id_site_02 '.
  | 
        
        
            | 
            | 
           1048 | 
                           'AND gsr_id_valeur IN (102, 103) ';// 102 = site "principal" et 103 = site "externe"
  | 
        
        
            | 
            | 
           1049 | 
               $resultat = $db->query($requete) ;
  | 
        
        
            | 
            | 
           1050 | 
               if (DB::isError($resultat)) {
  | 
        
        
            | 
            | 
           1051 | 
                   die( BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete) );
  | 
        
        
            | 
            | 
           1052 | 
               }
  | 
        
        
            | 
            | 
           1053 | 
               $ligne = $resultat->fetchRow(DB_FETCHMODE_OBJECT);
  | 
        
        
            | 
            | 
           1054 | 
               $nouvel_ordre = $ligne->max_ordre + 1;
  | 
        
        
            | 
            | 
           1055 | 
              | 
        
        
            | 
            | 
           1056 | 
               // Requete d'insertion des relations dans gen_site_relation
  | 
        
        
            | 
            | 
           1057 | 
               $requete =  'INSERT INTO gen_site_relation '.
  | 
        
        
            | 
            | 
           1058 | 
                           'SET gsr_id_site_01 = '.$id_site.', '.
  | 
        
        
            | 
            | 
           1059 | 
                           'gsr_id_site_02 = '.$id_site.', '.
  | 
        
        
            | 
            | 
           1060 | 
                           'gsr_id_valeur = '.$id_type_site.', '.
  | 
        
        
            | 
            | 
           1061 | 
                           'gsr_ordre = '.$nouvel_ordre;
  | 
        
        
            | 
            | 
           1062 | 
               $resultat = $db->query($requete);
  | 
        
        
            | 
            | 
           1063 | 
               if (DB::isError($resultat)) {
  | 
        
        
            | 
            | 
           1064 | 
                   die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete));
  | 
        
        
            | 
            | 
           1065 | 
               }
  | 
        
        
            | 
            | 
           1066 | 
              | 
        
        
            | 
            | 
           1067 | 
               // Gestion du site par d�faut
  | 
        
        
            | 
            | 
           1068 | 
               if (isset($aso_valeurs['defaut']) && $aso_valeurs['defaut'] == 1) {
  | 
        
        
            | 
            | 
           1069 | 
                   $requete_supr_defaut =  'DELETE FROM gen_site_relation '.
  | 
        
        
            | 
            | 
           1070 | 
                                           'WHERE gsr_id_site_01 = gsr_id_site_02 '.
  | 
        
        
            | 
            | 
           1071 | 
                                           'AND gsr_id_valeur = 101 ';// 101 = site par "defaut"
  | 
        
        
            | 
            | 
           1072 | 
                   $resultat_supr_defaut = $db->query($requete_supr_defaut);
  | 
        
        
            | 
            | 
           1073 | 
                   if (DB::isError($resultat_supr_defaut)) {
  | 
        
        
            | 
            | 
           1074 | 
                       die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat_supr_defaut->getMessage(), $requete_supr_defaut));
  | 
        
        
            | 
            | 
           1075 | 
                   }
  | 
        
        
            | 
            | 
           1076 | 
              | 
        
        
            | 
            | 
           1077 | 
                   // Requete d'insertion de la relations site par defaut
  | 
        
        
            | 
            | 
           1078 | 
                   $requete =  'INSERT INTO gen_site_relation '.
  | 
        
        
            | 
            | 
           1079 | 
                               'SET gsr_id_site_01 = '.$id_site.', '.
  | 
        
        
            | 
            | 
           1080 | 
                               'gsr_id_site_02 = '.$id_site.', '.
  | 
        
        
            | 
            | 
           1081 | 
                               'gsr_id_valeur = 101, '.
  | 
        
        
            | 
            | 
           1082 | 
                               'gsr_ordre = NULL ';
  | 
        
        
            | 
            | 
           1083 | 
                   $resultat = $db->query($requete);
  | 
        
        
            | 
            | 
           1084 | 
                   if (DB::isError($resultat)) {
  | 
        
        
            | 
            | 
           1085 | 
                       die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete));
  | 
        
        
            | 
            | 
           1086 | 
                   }
  | 
        
        
            | 
            | 
           1087 | 
               }
  | 
        
        
            | 
            | 
           1088 | 
              | 
        
        
            | 
            | 
           1089 | 
               // Gestion des sites externes
  | 
        
        
            | 
            | 
           1090 | 
               if ($id_type_site == '103') {
  | 
        
        
            | 
            | 
           1091 | 
                   // Requete d'insertion des relations dans gen_site_relation
  | 
        
        
            | 
            | 
           1092 | 
                   $requete =  'INSERT INTO gen_site_relation '.
  | 
        
        
            | 
            | 
           1093 | 
                               'SET gsr_id_site_01 = '.$id_site.', '.
  | 
        
        
            | 
            | 
           1094 | 
                               'gsr_id_site_02 = '.$id_site.', '.
  | 
        
        
            | 
            | 
           1095 | 
                               'gsr_id_valeur = '.$aso_valeurs['type_site_externe'].', '.
  | 
        
        
            | 
            | 
           1096 | 
                               'gsr_ordre = NULL ';
  | 
        
        
            | 
            | 
           1097 | 
                   $resultat = $db->query($requete);
  | 
        
        
            | 
            | 
           1098 | 
                   if (DB::isError($resultat)) {
  | 
        
        
            | 
            | 
           1099 | 
                       die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete));
  | 
        
        
            | 
            | 
           1100 | 
                   }
  | 
        
        
            | 
            | 
           1101 | 
               }
  | 
        
        
            | 
            | 
           1102 | 
              | 
        
        
            | 
            | 
           1103 | 
               $message = '<p class="pap_info">'.'Succés de l\'ajout du site.'.'</p>';
  | 
        
        
            | 
            | 
           1104 | 
               return $message;
  | 
        
        
            | 
            | 
           1105 | 
           }
  | 
        
        
            | 
            | 
           1106 | 
              | 
        
        
            | 
            | 
           1107 | 
           /** Fonction ADMIN_traduireSite() - Traduire un site papyrus
  | 
        
        
            | 
            | 
           1108 | 
           *
  | 
        
        
            | 
            | 
           1109 | 
           * Cette fonction traduit un site a Papyrus, c'est a dire :
  | 
        
        
            | 
            | 
           1110 | 
           * - 1. Creation des repertoire du projet en fonction du nom et des sous-repertoires.
  | 
        
        
            | 
            | 
           1111 | 
           * - 2. Insertion d'une ligne dans la table "gen_site".
  | 
        
        
            | 
            | 
           1112 | 
           * - 3. Insertion d'une ligne dans la table "gen_site_auth" et ses tables liees si necessaire.
  | 
        
        
            | 
            | 
           1113 | 
           *
  | 
        
        
            | 
            | 
           1114 | 
           * @param  string   l'objet pear de connexion a la base de donn�es.
  | 
        
        
            | 
            | 
           1115 | 
           * @param  string   le tableau contenant les valeurs du formulaire.
  | 
        
        
            | 
            | 
           1116 | 
           * @param  int      identifiant de l'administrateur realisant cette cr�ation.
  | 
        
        
            | 
            | 
           1117 | 
           * @return string retourne un message en cas de succes ou d'echec.
  | 
        
        
            | 
            | 
           1118 | 
           */
  | 
        
        
            | 
            | 
           1119 | 
              | 
        
        
            | 
            | 
           1120 | 
           function ADMIN_traduireSite(&$db, $aso_valeurs, $id_admin)
  | 
        
        
            | 
            | 
           1121 | 
           {
  | 
        
        
            | 
            | 
           1122 | 
               // Nous verifions si nous avons a faire a un site externe.
  | 
        
        
            | 
            | 
           1123 | 
               $id_type_site = '102';// par defaut on considere que c'est un site "principal"
  | 
        
        
            | 
            | 
           1124 | 
               if (isset($aso_valeurs['type_site_externe']) && $aso_valeurs['type_site_externe'] > 0 && !empty($aso_valeurs['gs_url']) && $aso_valeurs['gs_url'] != 'http://') {
  | 
        
        
            | 
            | 
           1125 | 
                   $id_type_site = '103';// c'est un site "externe"
  | 
        
        
            | 
            | 
           1126 | 
               }
  | 
        
        
            | 
            | 
           1127 | 
              | 
        
        
            | 
            | 
           1128 | 
               // Ajout des repertoires des sites "principaux" soit par manipulation de fichier soit par FTP en fonction de la constante definie
  | 
        
        
            | 
            | 
           1129 | 
               // par l'utilisateur dans le fichier de config avancee.
  | 
        
        
            | 
            | 
           1130 | 
               $tab_rep_langue = array($aso_valeurs['gs_ce_i18n']);
  | 
        
        
            | 
            | 
           1131 | 
               $tab_rep_site = array(  GEN_DOSSIER_IMAGE,
  | 
        
        
            | 
            | 
           1132 | 
                                       GEN_DOSSIER_STYLE,
  | 
        
        
            | 
            | 
           1133 | 
                                       GEN_DOSSIER_SCRIPT,
  | 
        
        
            | 
            | 
           1134 | 
                                       GEN_DOSSIER_SQUELETTE,
  | 
        
        
            | 
            | 
           1135 | 
                                       GEN_DOSSIER_DOC);
  | 
        
        
            | 
            | 
           1136 | 
               if (!GEN_FTP_UTILISE && $id_type_site != '103') {
  | 
        
        
            | 
            | 
           1137 | 
                   foreach ($tab_rep_langue as $nom_rep_langue) {
  | 
        
        
            | 
            | 
           1138 | 
                       foreach ($tab_rep_site as $nom_rep_site) {
  | 
        
        
            | 
            | 
           1139 | 
                           $chemin_repertoire =    PAP_CHEMIN_RACINE.GEN_CHEMIN_SITES.$aso_valeurs['gs_code_alpha'].GEN_SEP.
  | 
        
        
            | 
            | 
           1140 | 
                                                   $nom_rep_langue.GEN_SEP.$nom_rep_site;
  | 
        
        
            | 
            | 
           1141 | 
                           $vieux_umask = umask(0);
  | 
        
        
            | 
            | 
           1142 | 
                           $resultat = creerDossier($chemin_repertoire, 0777, GEN_SEP);
  | 
        
        
            | 
            | 
           1143 | 
                           umask($vieux_umask);
  | 
        
        
            | 
            | 
           1144 | 
                           if ($resultat == false) {
  | 
        
        
            | 
            | 
           1145 | 
                               $message =  '<p class="pap_erreur"> ERREUR Papyrus admin : impossible de créer le répertoire.<br />'.
  | 
        
        
            | 
            | 
           1146 | 
                                           'Répertoire : '. $chemin_repertoire .'<br />'.
  | 
        
        
            | 
            | 
           1147 | 
                                           'Ligne n° : '. __LINE__ .'<br />'.
  | 
        
        
            | 
            | 
           1148 | 
                                           'Fichier n° : '. __FILE__ .'<br /></p>';
  | 
        
        
            | 
            | 
           1149 | 
                               return $message;
  | 
        
        
            | 
            | 
           1150 | 
                           }
  | 
        
        
            | 
            | 
           1151 | 
                       }
  | 
        
        
            | 
            | 
           1152 | 
                   }
  | 
        
        
            | 
            | 
           1153 | 
                   $chemin_squelette_defaut =  PAP_CHEMIN_RACINE.GEN_CHEMIN_COMMUN.GEN_DOSSIER_GENERIQUE.GEN_SEP.
  | 
        
        
            | 
            | 
           1154 | 
                                               GEN_DOSSIER_SQUELETTE.GEN_SEP.GEN_FICHIER_SQUELETTE;
  | 
        
        
            | 
            | 
           1155 | 
                   $chemin_squelette_site =    PAP_CHEMIN_RACINE.GEN_CHEMIN_SITES.$aso_valeurs['gs_code_alpha'].GEN_SEP.
  | 
        
        
            | 
            | 
           1156 | 
                                               $aso_valeurs['gs_ce_i18n'].GEN_SEP.GEN_DOSSIER_SQUELETTE.GEN_SEP.GEN_FICHIER_SQUELETTE;
  | 
        
        
            | 
            | 
           1157 | 
                   if (!copy($chemin_squelette_defaut, $chemin_squelette_site)) {
  | 
        
        
            | 
            | 
           1158 | 
                       $message =  '<p class="pap_erreur"> ERREUR Papyrus admin : impossible de créer le fichier de squellete par défaut.<br />'.
  | 
        
        
            | 
            | 
           1159 | 
                                   'Fichier : '. $chemin_squelette_site .'<br />'.
  | 
        
        
            | 
            | 
           1160 | 
                                   'Ligne n° : '. __LINE__ .'<br />'.
  | 
        
        
            | 
            | 
           1161 | 
                                   'Fichier n° : '. __FILE__ .'<br /></p>';
  | 
        
        
            | 
            | 
           1162 | 
                       return $message;
  | 
        
        
            | 
            | 
           1163 | 
                   }
  | 
        
        
            | 
            | 
           1164 | 
                   $chemin_style_defaut =  PAP_CHEMIN_RACINE.GEN_CHEMIN_COMMUN.GEN_DOSSIER_GENERIQUE.GEN_SEP.
  | 
        
        
            | 
            | 
           1165 | 
                                           GEN_DOSSIER_STYLE.GEN_SEP.GEN_FICHIER_STYLE;
  | 
        
        
            | 
            | 
           1166 | 
                   $chemin_style_site =    PAP_CHEMIN_RACINE.GEN_CHEMIN_SITES.$aso_valeurs['gs_code_alpha'].GEN_SEP.
  | 
        
        
            | 
            | 
           1167 | 
                                           $aso_valeurs['gs_ce_i18n'].GEN_SEP.GEN_DOSSIER_STYLE.GEN_SEP.GEN_FICHIER_STYLE;
  | 
        
        
            | 
            | 
           1168 | 
                   if (!copy($chemin_style_defaut, $chemin_style_site)) {
  | 
        
        
            | 
            | 
           1169 | 
                       $message =  '<p class="pap_erreur"> ERREUR Papyrus admin : impossible de créer le fichier de style par d�faut.<br />'.
  | 
        
        
            | 
            | 
           1170 | 
                                   'Fichier : '. $chemin_style_site .'<br />'.
  | 
        
        
            | 
            | 
           1171 | 
                                   'Ligne n° : '. __LINE__ .'<br />'.
  | 
        
        
            | 
            | 
           1172 | 
                                   'Fichier n° : '. __FILE__ .'<br /></p>';
  | 
        
        
            | 
            | 
           1173 | 
                       return $message;
  | 
        
        
            | 
            | 
           1174 | 
                   }
  | 
        
        
            | 
            | 
           1175 | 
              | 
        
        
            | 
            | 
           1176 | 
                   $chemin_image_defaut =  PAP_CHEMIN_RACINE.GEN_CHEMIN_COMMUN.GEN_DOSSIER_GENERIQUE.GEN_SEP.
  | 
        
        
            | 
            | 
           1177 | 
                                           GEN_DOSSIER_IMAGE.GEN_SEP;
  | 
        
        
            | 
            | 
           1178 | 
                   $chemin_image_site =    PAP_CHEMIN_RACINE.GEN_CHEMIN_SITES.$aso_valeurs['gs_code_alpha'].GEN_SEP.
  | 
        
        
            | 
            | 
           1179 | 
                                           $aso_valeurs['gs_ce_i18n'].GEN_SEP.GEN_DOSSIER_IMAGE.GEN_SEP;
  | 
        
        
            | 
            | 
           1180 | 
              | 
        
        
            | 
            | 
           1181 | 
           		if (!copy($chemin_image_defaut, $chemin_image_site)) {
  | 
        
        
            | 
            | 
           1182 | 
                       $message =  '<p class="pap_erreur"> ERREUR Papyrus admin : impossible de créer les fichhiers image par defaut.<br />'.
  | 
        
        
            | 
            | 
           1183 | 
                                   'Fichier : '. $chemin_style_site .'<br />'.
  | 
        
        
            | 
            | 
           1184 | 
                                   'Ligne n° : '. __LINE__ .'<br />'.
  | 
        
        
            | 
            | 
           1185 | 
                                   'Fichier n° : '. __FILE__ .'<br /></p>';
  | 
        
        
            | 
            | 
           1186 | 
                       return $message;
  | 
        
        
            | 
            | 
           1187 | 
                   }
  | 
        
        
            | 
            | 
           1188 | 
              | 
        
        
            | 
            | 
           1189 | 
               } else if (GEN_FTP_UTILISE && $id_type_site != '103') {  // 103 est le type "site externe"
  | 
        
        
            | 
            | 
           1190 | 
                   // Cr�ation d'une connection ftp avec Net_FTP de PEAR
  | 
        
        
            | 
            | 
           1191 | 
                   // voir http://pear.php.net/manual/fr/package.networking.net-ftp.php
  | 
        
        
            | 
            | 
           1192 | 
              | 
        
        
            | 
            | 
           1193 | 
                   // cr�ation de l'objet pear ftp
  | 
        
        
            | 
            | 
           1194 | 
                   $objet_pear_ftp = new Net_FTP(PAP_FTP_SERVEUR, PAP_FTP_PORT);
  | 
        
        
            | 
            | 
           1195 | 
                   // cr�ation de la connexion
  | 
        
        
            | 
            | 
           1196 | 
                   $ftp_conn = $objet_pear_ftp->connect(PAP_FTP_SERVEUR, PAP_FTP_PORT);
  | 
        
        
            | 
            | 
           1197 | 
                   // identification
  | 
        
        
            | 
            | 
           1198 | 
                   $ftp_login_result = $objet_pear_ftp->login(PAP_FTP_UTILISATEUR, PAP_FTP_MOT_DE_PASSE);
  | 
        
        
            | 
            | 
           1199 | 
                   // Gestion des erreurs ftp
  | 
        
        
            | 
            | 
           1200 | 
                   if ((PEAR::isError($ftp_conn) || PEAR::isError($ftp_login_result))) {
  | 
        
        
            | 
            | 
           1201 | 
                       $message =  '<p class="pap_erreur"> ERREUR Papyrus admin : impossible de se connecter par ftp.<br />'.
  | 
        
        
            | 
            | 
           1202 | 
                                   'Serveur : '. PAP_FTP_SERVEUR .'<br />'.
  | 
        
        
            | 
            | 
           1203 | 
                                   'Utilisateur : '. PAP_FTP_UTILISATEUR .'<br />'.
  | 
        
        
            | 
            | 
           1204 | 
                                   'Erreur connexion : '.$ftp_conn->getMessage().'<br />'.
  | 
        
        
            | 
            | 
           1205 | 
                                   'Erreur login : '.$ftp_login_result->getMessage().'<br />'.
  | 
        
        
            | 
            | 
           1206 | 
                                   'Ligne n° : '. __LINE__ .'<br />'.
  | 
        
        
            | 
            | 
           1207 | 
                                   'Fichier n° : '. __FILE__ .'<br /><p>';
  | 
        
        
            | 
            | 
           1208 | 
                       return $message;
  | 
        
        
            | 
            | 
           1209 | 
                   }
  | 
        
        
            | 
            | 
           1210 | 
                   $objet_pear_ftp->mkdir(PAP_FTP_RACINE.GEN_CHEMIN_SITES.$aso_valeurs['gs_code_alpha']) ;
  | 
        
        
            | 
            | 
           1211 | 
              | 
        
        
            | 
            | 
           1212 | 
                   //$objet_pear_ftp->cd(PAP_CHEMIN_RACINE.GEN_CHEMIN_SITES.$aso_valeurs['gs_code_alpha']) ;
  | 
        
        
            | 
            | 
           1213 | 
                   foreach ($tab_rep_langue as $nom_rep_langue) {
  | 
        
        
            | 
            | 
           1214 | 
                       $objet_pear_ftp->mkdir(PAP_FTP_RACINE.GEN_CHEMIN_SITES.$aso_valeurs['gs_code_alpha'].GEN_SEP.$nom_rep_langue) ;
  | 
        
        
            | 
            | 
           1215 | 
                       foreach ($tab_rep_site as $nom_rep_site) {
  | 
        
        
            | 
            | 
           1216 | 
                           $chemin_repertoire = PAP_FTP_RACINE.GEN_CHEMIN_SITES.$aso_valeurs['gs_code_alpha'].GEN_SEP.$nom_rep_langue.GEN_SEP.$nom_rep_site;
  | 
        
        
            | 
            | 
           1217 | 
              | 
        
        
            | 
            | 
           1218 | 
                           $resultat = $objet_pear_ftp->mkdir($chemin_repertoire) ;
  | 
        
        
            | 
            | 
           1219 | 
                           if (PEAR::isError($resultat)) {
  | 
        
        
            | 
            | 
           1220 | 
                               $message =  '<p class="pap_erreur"> ERREUR Papyrus admin : impossible de créer le répertoire par ftp.<br />'.
  | 
        
        
            | 
            | 
           1221 | 
                                           'Répertoire : '. $chemin_repertoire .'<br />'.
  | 
        
        
            | 
            | 
           1222 | 
                                           'Erreur origine : '. $resultat->getMessage() .'<br />'.
  | 
        
        
            | 
            | 
           1223 | 
                                           'Ligne n° : '. __LINE__ .'<br />'.
  | 
        
        
            | 
            | 
           1224 | 
                                           'Fichier n° : '. __FILE__ .'<br /></p>';
  | 
        
        
            | 
            | 
           1225 | 
                               return $message;
  | 
        
        
            | 
            | 
           1226 | 
                           }
  | 
        
        
            | 
            | 
           1227 | 
                       }
  | 
        
        
            | 
            | 
           1228 | 
                   }
  | 
        
        
            | 
            | 
           1229 | 
                   $chemin_squelette_defaut =  PAP_CHEMIN_RACINE.GEN_CHEMIN_COMMUN.GEN_DOSSIER_GENERIQUE.GEN_SEP.
  | 
        
        
            | 
            | 
           1230 | 
                                               GEN_DOSSIER_SQUELETTE.GEN_SEP.GEN_FICHIER_SQUELETTE;
  | 
        
        
            | 
            | 
           1231 | 
                   $chemin_squelette_site =    PAP_FTP_RACINE.GEN_CHEMIN_SITES.$aso_valeurs['gs_code_alpha'].GEN_SEP.
  | 
        
        
            | 
            | 
           1232 | 
                                               $aso_valeurs['gs_ce_i18n'].GEN_SEP.GEN_DOSSIER_SQUELETTE.GEN_SEP.GEN_FICHIER_SQUELETTE;
  | 
        
        
            | 
            | 
           1233 | 
                   $resultat = $objet_pear_ftp->put($chemin_squelette_defaut, $chemin_squelette_site, true, FTP_BINARY);
  | 
        
        
            | 
            | 
           1234 | 
                   if (PEAR::isError($resultat)) {
  | 
        
        
            | 
            | 
           1235 | 
                       $message =  '<p class="pap_erreur"> ERREUR Papyrus admin : impossible de copier le squelette defaut par ftp.<br />'.
  | 
        
        
            | 
            | 
           1236 | 
                                   'Fichier origine : '. $chemin_squelette_defaut .'<br />'.
  | 
        
        
            | 
            | 
           1237 | 
                                   'Fichier copié : '. $chemin_squelette_site .'<br />'.
  | 
        
        
            | 
            | 
           1238 | 
                                   'Erreur origine : '. $resultat->getMessage() .'<br />'.
  | 
        
        
            | 
            | 
           1239 | 
                                   'Ligne n° : '. __LINE__ .'<br />'.
  | 
        
        
            | 
            | 
           1240 | 
                                   'Fichier n° : '. __FILE__ .'<br /></p>';
  | 
        
        
            | 
            | 
           1241 | 
                           return $message;
  | 
        
        
            | 
            | 
           1242 | 
                   }
  | 
        
        
            | 
            | 
           1243 | 
                   $chemin_style_defaut =  PAP_CHEMIN_RACINE.GEN_CHEMIN_COMMUN.GEN_DOSSIER_GENERIQUE.GEN_SEP.
  | 
        
        
            | 
            | 
           1244 | 
                                           GEN_DOSSIER_STYLE.GEN_SEP.GEN_FICHIER_STYLE;
  | 
        
        
            | 
            | 
           1245 | 
                   $chemin_style_site =    PAP_FTP_RACINE.GEN_CHEMIN_SITES.$aso_valeurs['gs_code_alpha'].GEN_SEP.
  | 
        
        
            | 
            | 
           1246 | 
                                           $aso_valeurs['gs_ce_i18n'].GEN_SEP.GEN_DOSSIER_STYLE.GEN_SEP.GEN_FICHIER_STYLE;
  | 
        
        
            | 
            | 
           1247 | 
                   $resultat = $objet_pear_ftp->put($chemin_style_defaut, $chemin_style_site, true, FTP_BINARY);
  | 
        
        
            | 
            | 
           1248 | 
                   if (PEAR::isError($resultat)) {
  | 
        
        
            | 
            | 
           1249 | 
                       $message =  '<p class="pap_erreur"> ERREUR Papyrus admin : impossible de copier les styles defaut par ftp.<br />'.
  | 
        
        
            | 
            | 
           1250 | 
                                   'Fichier origine : '. $chemin_style_defaut .'<br />'.
  | 
        
        
            | 
            | 
           1251 | 
                                   'Fichier copié : '. $chemin_style_site .'<br />'.
  | 
        
        
            | 
            | 
           1252 | 
                                   'Erreur origine : '. $resultat->getMessage() .'<br />'.
  | 
        
        
            | 
            | 
           1253 | 
                                   'Ligne n° : '. __LINE__ .'<br />'.
  | 
        
        
            | 
            | 
           1254 | 
                                   'Fichier n° : '. __FILE__ .'<br /></p>';
  | 
        
        
            | 
            | 
           1255 | 
                           return $message;
  | 
        
        
            | 
            | 
           1256 | 
                   }
  | 
        
        
            | 
            | 
           1257 | 
              | 
        
        
            | 
            | 
           1258 | 
                   $chemin_image_defaut =  PAP_CHEMIN_RACINE.GEN_CHEMIN_COMMUN.GEN_DOSSIER_GENERIQUE.GEN_SEP.
  | 
        
        
            | 
            | 
           1259 | 
                                           GEN_DOSSIER_IMAGE.GEN_SEP;
  | 
        
        
            | 
            | 
           1260 | 
                   $chemin_image_site =    PAP_FTP_RACINE.GEN_CHEMIN_SITES.$aso_valeurs['gs_code_alpha'].GEN_SEP.
  | 
        
        
            | 
            | 
           1261 | 
                                           $aso_valeurs['gs_ce_i18n'].GEN_SEP.GEN_DOSSIER_IMAGE.GEN_SEP;
  | 
        
        
            | 
            | 
           1262 | 
                   $resultat = $objet_pear_ftp->putRecursive($chemin_image_defaut, $chemin_image_site, false, FTP_BINARY);
  | 
        
        
            | 
            | 
           1263 | 
                   if (PEAR::isError($resultat)) {
  | 
        
        
            | 
            | 
           1264 | 
                       $message =  '<p class="pap_erreur"> ERREUR Papyrus admin : impossible de copier le dossier images par ftp.<br />'.
  | 
        
        
            | 
            | 
           1265 | 
                                   'Fichier origine : '. $chemin_image_defaut .'<br />'.
  | 
        
        
            | 
            | 
           1266 | 
                                   'Fichier copié : '. $chemin_image_site .'<br />'.
  | 
        
        
            | 
            | 
           1267 | 
                                   'Erreur origine : '. $resultat->getMessage() .'<br />'.
  | 
        
        
            | 
            | 
           1268 | 
                                   'Ligne n° : '. __LINE__ .'<br />'.
  | 
        
        
            | 
            | 
           1269 | 
                                   'Fichier n° : '. __FILE__ .'<br /></p>';
  | 
        
        
            | 
            | 
           1270 | 
                           return $message;
  | 
        
        
            | 
            | 
           1271 | 
                   }
  | 
        
        
            | 
            | 
           1272 | 
              | 
        
        
            | 
            | 
           1273 | 
                   $objet_pear_ftp->disconnect();
  | 
        
        
            | 
            | 
           1274 | 
               }
  | 
        
        
            | 
            | 
           1275 | 
              | 
        
        
            | 
            | 
           1276 | 
               $id_site = SQL_obtenirNouveauId($db, 'gen_site','gs_id_site');
  | 
        
        
            | 
            | 
           1277 | 
              | 
        
        
            | 
            | 
           1278 | 
               if ($id_site == false) {
  | 
        
        
            | 
            | 
           1279 | 
                   $message = '<p class="erreur"> ERREUR G�n�sia admin : impossible de r�cup�rer un identifiant pour la table gen_site.<br />'.
  | 
        
        
            | 
            | 
           1280 | 
                               'Ligne n° : '. __LINE__ .'<br />'.
  | 
        
        
            | 
            | 
           1281 | 
                               'Fichier n° : '. __FILE__ .'<br /></p>';
  | 
        
        
            | 
            | 
           1282 | 
                   return $message;
  | 
        
        
            | 
            | 
           1283 | 
               }
  | 
        
        
            | 
            | 
           1284 | 
              | 
        
        
            | 
            | 
           1285 | 
               // Modification de la requete si nous avons � faire � un site externe.
  | 
        
        
            | 
            | 
           1286 | 
               $requete_complement = ', gs_url = NULL';
  | 
        
        
            | 
            | 
           1287 | 
               if (isset($aso_valeurs['type_site_externe']) && $aso_valeurs['type_site_externe'] > 0 && !empty($aso_valeurs['gs_url']) && $aso_valeurs['gs_url'] != 'http://') {
  | 
        
        
            | 
            | 
           1288 | 
                   $requete_complement = ', gs_url = "'.$aso_valeurs['gs_url'].'"';
  | 
        
        
            | 
            | 
           1289 | 
               }
  | 
        
        
            | 
            | 
           1290 | 
              | 
        
        
            | 
            | 
           1291 | 
               // Requete d'insertion des infos d'un site dans gen_site
  | 
        
        
            | 
            | 
           1292 | 
               $requete =  'INSERT INTO gen_site '.
  | 
        
        
            | 
            | 
           1293 | 
                           'SET gs_id_site = '.$id_site.', '.
  | 
        
        
            | 
            | 
           1294 | 
                           'gs_ce_i18n = "'.$aso_valeurs['gs_ce_i18n'].'", '.
  | 
        
        
            | 
            | 
           1295 | 
                           'gs_ce_auth = '.$aso_valeurs['gs_ce_auth'].', '.
  | 
        
        
            | 
            | 
           1296 | 
                           'gs_fichier_squelette = "defaut.html", '.
  | 
        
        
            | 
            | 
           1297 | 
                           'gs_code_num = '.$aso_valeurs['gs_code_num'].', '.
  | 
        
        
            | 
            | 
           1298 | 
                           'gs_code_alpha = "'.$aso_valeurs['gs_code_alpha'].'", '.
  | 
        
        
            | 
            | 
           1299 | 
                           'gs_nom = "'.$aso_valeurs['gs_nom'].'", '.
  | 
        
        
            | 
            | 
           1300 | 
                           'gs_raccourci_clavier = "'.$aso_valeurs['gs_raccourci_clavier'].'", '.
  | 
        
        
            | 
            | 
           1301 | 
                           'gs_titre = "'.$aso_valeurs['gs_titre'].'", '.
  | 
        
        
            | 
            | 
           1302 | 
                           'gs_mots_cles = "'.$aso_valeurs['gs_mots_cles'].'", '.
  | 
        
        
            | 
            | 
           1303 | 
                           'gs_description = "'.$aso_valeurs['gs_description'].'", '.
  | 
        
        
            | 
            | 
           1304 | 
                           'gs_auteur = "'.$aso_valeurs['gs_auteur'].'", '.
  | 
        
        
            | 
            | 
           1305 | 
                           'gs_date_creation = "'.date('Y-m-d H:i:s').'", '.
  | 
        
        
            | 
            | 
           1306 | 
                           'gs_ce_admin = '.$id_admin.
  | 
        
        
            | 
            | 
           1307 | 
                           $requete_complement;
  | 
        
        
            | 
            | 
           1308 | 
               $resultat = $db->query($requete);
  | 
        
        
            | 
            | 
           1309 | 
               if (DB::isError($resultat)) {
  | 
        
        
            | 
            | 
           1310 | 
                   die( BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete) );
  | 
        
        
            | 
            | 
           1311 | 
               }
  | 
        
        
            | 
            | 
           1312 | 
              | 
        
        
            | 
            | 
           1313 | 
               // Recherche du nouveau num�ro d'ordre de ce site "principal" ou "externe"
  | 
        
        
            | 
            | 
           1314 | 
               $requete =  'SELECT MAX(gsr_ordre) AS max_ordre '.
  | 
        
        
            | 
            | 
           1315 | 
                           'FROM gen_site_relation '.
  | 
        
        
            | 
            | 
           1316 | 
                           'WHERE gsr_id_site_01 = gsr_id_site_02 '.
  | 
        
        
            | 
            | 
           1317 | 
                           'AND gsr_id_valeur IN (102, 103) ';// 102 = site "principal" et 103 = site "externe"
  | 
        
        
            | 
            | 
           1318 | 
               $resultat = $db->query($requete) ;
  | 
        
        
            | 
            | 
           1319 | 
               if (DB::isError($resultat)) {
  | 
        
        
            | 
            | 
           1320 | 
                   die( BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete) );
  | 
        
        
            | 
            | 
           1321 | 
               }
  | 
        
        
            | 
            | 
           1322 | 
               $ligne = $resultat->fetchRow(DB_FETCHMODE_OBJECT);
  | 
        
        
            | 
            | 
           1323 | 
               $nouvel_ordre = $ligne->max_ordre + 1;
  | 
        
        
            | 
            | 
           1324 | 
              | 
        
        
            | 
            | 
           1325 | 
               // Requete d'insertion des relations dans gen_site_relation
  | 
        
        
            | 
            | 
           1326 | 
              | 
        
        
            | 
            | 
           1327 | 
               $requete =  'INSERT INTO gen_site_relation '.
  | 
        
        
            | 
            | 
           1328 | 
                           'SET gsr_id_site_01 = '.$id_site.', '.
  | 
        
        
            | 
            | 
           1329 | 
                           'gsr_id_site_02 = '.$id_site.', '.
  | 
        
        
            | 
            | 
           1330 | 
                           'gsr_id_valeur = '.$id_type_site.', '.
  | 
        
        
            | 
            | 
           1331 | 
                           'gsr_ordre = '.$nouvel_ordre;
  | 
        
        
            | 
            | 
           1332 | 
               $resultat = $db->query($requete);
  | 
        
        
            | 
            | 
           1333 | 
               if (DB::isError($resultat)) {
  | 
        
        
            | 
            | 
           1334 | 
                   die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete));
  | 
        
        
            | 
            | 
           1335 | 
               }
  | 
        
        
            | 
            | 
           1336 | 
              | 
        
        
            | 
            | 
           1337 | 
               // Traduction : Requete d'insertion des relations dans gen_site_relation
  | 
        
        
            | 
            | 
           1338 | 
              | 
        
        
            | 
            | 
           1339 | 
               $requete =  'SELECT MAX(gsr_ordre) AS max_ordre '.
  | 
        
        
            | 
            | 
           1340 | 
                           'FROM gen_site_relation '.
  | 
        
        
            | 
            | 
           1341 | 
                           'WHERE gsr_id_site_01 = ' .$aso_valeurs['gs_id_site'] .' '.
  | 
        
        
            | 
            | 
           1342 | 
                           'AND gsr_id_valeur =1  '; // 1 = "avoir traduction"
  | 
        
        
            | 
            | 
           1343 | 
               $resultat = $db->query($requete) ;
  | 
        
        
            | 
            | 
           1344 | 
               if (DB::isError($resultat)) {
  | 
        
        
            | 
            | 
           1345 | 
                   die( BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete) );
  | 
        
        
            | 
            | 
           1346 | 
               }
  | 
        
        
            | 
            | 
           1347 | 
               if ( $resultat->numRows() == 0 ) {
  | 
        
        
            | 
            | 
           1348 | 
           	      $nouvel_ordre = 1;
  | 
        
        
            | 
            | 
           1349 | 
               }
  | 
        
        
            | 
            | 
           1350 | 
               else {
  | 
        
        
            | 
            | 
           1351 | 
               	$ligne = $resultat->fetchRow(DB_FETCHMODE_OBJECT);
  | 
        
        
            | 
            | 
           1352 | 
               	$nouvel_ordre = $ligne->max_ordre + 1;
  | 
        
        
            | 
            | 
           1353 | 
               }
  | 
        
        
            | 
            | 
           1354 | 
              | 
        
        
            | 
            | 
           1355 | 
               // 1 : insertion information traduction pere (si inexistant)
  | 
        
        
            | 
            | 
           1356 | 
              | 
        
        
            | 
            | 
           1357 | 
               $requete =  'SELECT * '.
  | 
        
        
            | 
            | 
           1358 | 
                           'FROM gen_site_relation '.
  | 
        
        
            | 
            | 
           1359 | 
                           'WHERE gsr_id_site_01 = ' .$aso_valeurs['gs_id_site'] .' '.
  | 
        
        
            | 
            | 
           1360 | 
                           'AND gsr_id_site_01 = gsr_id_site_02 '.
  | 
        
        
            | 
            | 
           1361 | 
                           'AND gsr_id_valeur =1  '; // 1 = "avoir traduction"
  | 
        
        
            | 
            | 
           1362 | 
              | 
        
        
            | 
            | 
           1363 | 
               $resultat = $db->query($requete) ;
  | 
        
        
            | 
            | 
           1364 | 
               if (DB::isError($resultat)) {
  | 
        
        
            | 
            | 
           1365 | 
                   die( BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete) );
  | 
        
        
            | 
            | 
           1366 | 
               }
  | 
        
        
            | 
            | 
           1367 | 
               if ( $resultat->numRows() == 0 ) {
  | 
        
        
            | 
            | 
           1368 | 
              | 
        
        
            | 
            | 
           1369 | 
           		$requete =  'INSERT INTO gen_site_relation '.
  | 
        
        
            | 
            | 
           1370 | 
           		            'SET gsr_id_site_01 = '. $aso_valeurs['gs_id_site'].', '.
  | 
        
        
            | 
            | 
           1371 | 
           		            'gsr_id_site_02 = '.$aso_valeurs['gs_id_site'].', '.
  | 
        
        
            | 
            | 
           1372 | 
           		            'gsr_id_valeur = 1, '. // 1 = "avoir traduction"
  | 
        
        
            | 
            | 
           1373 | 
           		            'gsr_ordre = 1 ';
  | 
        
        
            | 
            | 
           1374 | 
           		$resultat = $db->query($requete);
  | 
        
        
            | 
            | 
           1375 | 
           		if (DB::isError($resultat)) {
  | 
        
        
            | 
            | 
           1376 | 
           		    die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete));
  | 
        
        
            | 
            | 
           1377 | 
           		}
  | 
        
        
            | 
            | 
           1378 | 
           		$nouvel_ordre = 2;
  | 
        
        
            | 
            | 
           1379 | 
               }
  | 
        
        
            | 
            | 
           1380 | 
              | 
        
        
            | 
            | 
           1381 | 
              | 
        
        
            | 
            | 
           1382 | 
               // 2 : insertion information traduction site en cours (si inexistant ?) (et la mise a jour, c'est ailleurs
  | 
        
        
            | 
            | 
           1383 | 
               // dans les mises � jour
  | 
        
        
            | 
            | 
           1384 | 
              | 
        
        
            | 
            | 
           1385 | 
               $requete =  'INSERT INTO gen_site_relation '.
  | 
        
        
            | 
            | 
           1386 | 
                           'SET gsr_id_site_01 = '. $aso_valeurs['gs_id_site'].', '.
  | 
        
        
            | 
            | 
           1387 | 
                           'gsr_id_site_02 = '.$id_site.', '.
  | 
        
        
            | 
            | 
           1388 | 
                           'gsr_id_valeur = 1, '. // 1 = "avoir traduction"
  | 
        
        
            | 
            | 
           1389 | 
                           'gsr_ordre = '.$nouvel_ordre;
  | 
        
        
            | 
            | 
           1390 | 
               $resultat = $db->query($requete);
  | 
        
        
            | 
            | 
           1391 | 
               if (DB::isError($resultat)) {
  | 
        
        
            | 
            | 
           1392 | 
                   die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete));
  | 
        
        
            | 
            | 
           1393 | 
               }
  | 
        
        
            | 
            | 
           1394 | 
              | 
        
        
            | 
            | 
           1395 | 
              | 
        
        
            | 
            | 
           1396 | 
               // Gestion du site par d�faut
  | 
        
        
            | 
            | 
           1397 | 
               if (isset($aso_valeurs['defaut']) && $aso_valeurs['defaut'] == 1) {
  | 
        
        
            | 
            | 
           1398 | 
                   $requete_supr_defaut =  'DELETE FROM gen_site_relation '.
  | 
        
        
            | 
            | 
           1399 | 
                                           'WHERE gsr_id_site_01 = gsr_id_site_02 '.
  | 
        
        
            | 
            | 
           1400 | 
                                           'AND gsr_id_valeur = 101 ';// 101 = site par "defaut"
  | 
        
        
            | 
            | 
           1401 | 
                   $resultat_supr_defaut = $db->query($requete_supr_defaut);
  | 
        
        
            | 
            | 
           1402 | 
                   if (DB::isError($resultat_supr_defaut)) {
  | 
        
        
            | 
            | 
           1403 | 
                       die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat_supr_defaut->getMessage(), $requete_supr_defaut));
  | 
        
        
            | 
            | 
           1404 | 
                   }
  | 
        
        
            | 
            | 
           1405 | 
              | 
        
        
            | 
            | 
           1406 | 
                   // Requete d'insertion de la relations site par d�faut
  | 
        
        
            | 
            | 
           1407 | 
                   $requete =  'INSERT INTO gen_site_relation '.
  | 
        
        
            | 
            | 
           1408 | 
                               'SET gsr_id_site_01 = '.$id_site.', '.
  | 
        
        
            | 
            | 
           1409 | 
                               'gsr_id_site_02 = '.$id_site.', '.
  | 
        
        
            | 
            | 
           1410 | 
                               'gsr_id_valeur = 101, '.
  | 
        
        
            | 
            | 
           1411 | 
                               'gsr_ordre = NULL ';
  | 
        
        
            | 
            | 
           1412 | 
                   $resultat = $db->query($requete);
  | 
        
        
            | 
            | 
           1413 | 
                   if (DB::isError($resultat)) {
  | 
        
        
            | 
            | 
           1414 | 
                       die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete));
  | 
        
        
            | 
            | 
           1415 | 
                   }
  | 
        
        
            | 
            | 
           1416 | 
               }
  | 
        
        
            | 
            | 
           1417 | 
              | 
        
        
            | 
            | 
           1418 | 
               // Gestion des sites externes
  | 
        
        
            | 
            | 
           1419 | 
               if ($id_type_site == '103') {
  | 
        
        
            | 
            | 
           1420 | 
                   // Requete d'insertion des relations dans gen_site_relation
  | 
        
        
            | 
            | 
           1421 | 
                   $requete =  'INSERT INTO gen_site_relation '.
  | 
        
        
            | 
            | 
           1422 | 
                               'SET gsr_id_site_01 = '.$id_site.', '.
  | 
        
        
            | 
            | 
           1423 | 
                               'gsr_id_site_02 = '.$id_site.', '.
  | 
        
        
            | 
            | 
           1424 | 
                               'gsr_id_valeur = '.$aso_valeurs['type_site_externe'].', '.
  | 
        
        
            | 
            | 
           1425 | 
                               'gsr_ordre = NULL ';
  | 
        
        
            | 
            | 
           1426 | 
                   $resultat = $db->query($requete);
  | 
        
        
            | 
            | 
           1427 | 
                   if (DB::isError($resultat)) {
  | 
        
        
            | 
            | 
           1428 | 
                       die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete));
  | 
        
        
            | 
            | 
           1429 | 
                   }
  | 
        
        
            | 
            | 
           1430 | 
               }
  | 
        
        
            | 
            | 
           1431 | 
              | 
        
        
            | 
            | 
           1432 | 
               $message = '<p class="pap_info">'.'Succés de l\'ajout du site.'.'</p>';
  | 
        
        
            | 
            | 
           1433 | 
               return $message;
  | 
        
        
            | 
            | 
           1434 | 
           }
  | 
        
        
            | 
            | 
           1435 | 
              | 
        
        
            | 
            | 
           1436 | 
              | 
        
        
            | 
            | 
           1437 | 
              | 
        
        
            | 
            | 
           1438 | 
           /** Fonction ADMIN_modifierSite() - Modifie un site de Papyrus.
  | 
        
        
            | 
            | 
           1439 | 
           *
  | 
        
        
            | 
            | 
           1440 | 
           * Cette fonction modifie un site g�r� par Papyrus.
  | 
        
        
            | 
            | 
           1441 | 
           * Il faudrait aussi pouvoir renomer le dossier du site si le code alpha change.
  | 
        
        
            | 
            | 
           1442 | 
           *
  | 
        
        
            | 
            | 
           1443 | 
           * @param  string   l'objet pear de connexion � la base de donn�es.
  | 
        
        
            | 
            | 
           1444 | 
           * @param  string   le tableau contenant les valeurs du formulaire.
  | 
        
        
            | 
            | 
           1445 | 
           * @param  int      identifiant de l'administrateur r�alisant cette modification.
  | 
        
        
            | 
            | 
           1446 | 
           * @return string retourne un message en cas de succ�s ou d'�chec.
  | 
        
        
            | 
            | 
           1447 | 
           */
  | 
        
        
            | 
            | 
           1448 | 
           function ADMIN_modifierSite(&$db, $aso_valeurs, $id_admin)
  | 
        
        
            | 
            | 
           1449 | 
           {
  | 
        
        
            | 
            | 
           1450 | 
               // Initialisation de variables
  | 
        
        
            | 
            | 
           1451 | 
               $message_complement = '';
  | 
        
        
            | 
            | 
           1452 | 
              | 
        
        
            | 
            | 
           1453 | 
               // R�cup�ration de l'ancien code alphanum�rique
  | 
        
        
            | 
            | 
           1454 | 
               $requete =  'SELECT gs_code_alpha '.
  | 
        
        
            | 
            | 
           1455 | 
                           'FROM gen_site '.
  | 
        
        
            | 
            | 
           1456 | 
                           'WHERE gs_id_site = '.$aso_valeurs['gs_id_site'];
  | 
        
        
            | 
            | 
           1457 | 
               $ancien_code_alphnum = $db->getOne($requete);
  | 
        
        
            | 
            | 
           1458 | 
               if (DB::isError($ancien_code_alphnum)) {
  | 
        
        
            | 
            | 
           1459 | 
                   die( BOG_afficherErreurSql(__FILE__, __LINE__, $ancien_code_alphnum->getMessage(), $requete) );
  | 
        
        
            | 
            | 
           1460 | 
               }
  | 
        
        
            | 
            | 
           1461 | 
              | 
        
        
            | 
            | 
           1462 | 
               // Nous v�rifions si nous avons � faire � un site externe.
  | 
        
        
            | 
            | 
           1463 | 
               $id_type_site = '102';// par d�faut on conscid�re que c'est un site "principal"
  | 
        
        
            | 
            | 
           1464 | 
               $requete_complement = ', gs_url = NULL ';
  | 
        
        
            | 
            | 
           1465 | 
               if (isset($aso_valeurs['type_site_externe']) && $aso_valeurs['type_site_externe'] > 0 && !empty($aso_valeurs['gs_url']) && $aso_valeurs['gs_url'] != 'http://') {
  | 
        
        
            | 
            | 
           1466 | 
                   $requete_complement = ', gs_url = "'.$aso_valeurs['gs_url'].'" ';
  | 
        
        
            | 
            | 
           1467 | 
                   $id_type_site = '103';// c'est un site "externe"
  | 
        
        
            | 
            | 
           1468 | 
               }
  | 
        
        
            | 
            | 
           1469 | 
              | 
        
        
            | 
            | 
           1470 | 
               // Si le code alphanum�rique � chang� et que nous n'avons pas � faire � un site externe.
  | 
        
        
            | 
            | 
           1471 | 
               if ($aso_valeurs['gs_code_alpha'] != $ancien_code_alphnum && $id_type_site != 103) {
  | 
        
        
            | 
            | 
           1472 | 
                   if (!GEN_FTP_UTILISE) {
  | 
        
        
            | 
            | 
           1473 | 
                       $chemin_site_ancien = PAP_CHEMIN_RACINE.GEN_CHEMIN_SITES.$ancien_code_alphnum.GEN_SEP;
  | 
        
        
            | 
            | 
           1474 | 
                       $chemin_site_nouveau = PAP_CHEMIN_RACINE.GEN_CHEMIN_SITES.$aso_valeurs['gs_code_alpha'].GEN_SEP;
  | 
        
        
            | 
            | 
           1475 | 
                       if (!rename($chemin_site_ancien, $chemin_site_nouveau)) {
  | 
        
        
            | 
            | 
           1476 | 
                           $message =  '<p class="pap_erreur"> ERREUR Papyrus admin : impossible de changer le nom du dossier du site.<br />'.
  | 
        
        
            | 
            | 
           1477 | 
                                       'Ancien nom : '. $chemin_site_ancien .'<br />'.
  | 
        
        
            | 
            | 
           1478 | 
                                       'Nouveau nom : '. $chemin_site_nouveau .'<br />'.
  | 
        
        
            | 
            | 
           1479 | 
                                       'Ligne n° : '. __LINE__ .'<br />'.
  | 
        
        
            | 
            | 
           1480 | 
                                       'Fichier n° : '. __FILE__ .'<br /></p>';
  | 
        
        
            | 
            | 
           1481 | 
                           return $message;
  | 
        
        
            | 
            | 
           1482 | 
                       }
  | 
        
        
            | 
            | 
           1483 | 
                   } else {
  | 
        
        
            | 
            | 
           1484 | 
                       $chemin_site_ancien = PAP_FTP_RACINE.GEN_CHEMIN_SITES.$ancien_code_alphnum.GEN_SEP;
  | 
        
        
            | 
            | 
           1485 | 
                       $chemin_site_nouveau = PAP_FTP_RACINE.GEN_CHEMIN_SITES.$aso_valeurs['gs_code_alpha'].GEN_SEP;
  | 
        
        
            | 
            | 
           1486 | 
                       // Cr�ation d'une connection ftp avec Net_FTP de PEAR
  | 
        
        
            | 
            | 
           1487 | 
                       // voir http://pear.php.net/manual/fr/package.networking.net-ftp.php
  | 
        
        
            | 
            | 
           1488 | 
                       // cr�ation de l'objet pear ftp
  | 
        
        
            | 
            | 
           1489 | 
                       $objet_pear_ftp = new Net_FTP(PAP_FTP_SERVEUR, PAP_FTP_PORT);
  | 
        
        
            | 
            | 
           1490 | 
                       // cr�ation de la connexion
  | 
        
        
            | 
            | 
           1491 | 
                       $ftp_conn = $objet_pear_ftp->connect(PAP_FTP_SERVEUR, PAP_FTP_PORT);
  | 
        
        
            | 
            | 
           1492 | 
                       // identification
  | 
        
        
            | 
            | 
           1493 | 
                       $ftp_login_result = $objet_pear_ftp->login(PAP_FTP_UTILISATEUR, PAP_FTP_MOT_DE_PASSE);
  | 
        
        
            | 
            | 
           1494 | 
                       // Gestion des erreurs ftp
  | 
        
        
            | 
            | 
           1495 | 
                       if ((PEAR::isError($ftp_conn) || PEAR::isError($ftp_login_result))) {
  | 
        
        
            | 
            | 
           1496 | 
                           $message =  '<p class="pap_erreur"> ERREUR Papyrus admin : impossible de se connecter par ftp.<br />'.
  | 
        
        
            | 
            | 
           1497 | 
                                       'Serveur : '. PAP_FTP_SERVEUR .'<br />'.
  | 
        
        
            | 
            | 
           1498 | 
                                       'Utilisateur : '. PAP_FTP_UTILISATEUR .'<br />'.
  | 
        
        
            | 
            | 
           1499 | 
                                       'Erreur connexion : '.$ftp_conn->getMessage().'<br />'.
  | 
        
        
            | 
            | 
           1500 | 
                                       'Erreur login : '.$ftp_login_result->getMessage().'<br />'.
  | 
        
        
            | 
            | 
           1501 | 
                                       'Ligne n° : '. __LINE__ .'<br />'.
  | 
        
        
            | 
            | 
           1502 | 
                                       'Fichier n° : '. __FILE__ .'<br /><p>';
  | 
        
        
            | 
            | 
           1503 | 
                           return $message;
  | 
        
        
            | 
            | 
           1504 | 
                       }
  | 
        
        
            | 
            | 
           1505 | 
                       $resultat = $objet_pear_ftp->putRecursive($chemin_site_ancien, $chemin_site_nouveau, false, FTP_BINARY);
  | 
        
        
            | 
            | 
           1506 | 
                       if (PEAR::isError($resultat)) {
  | 
        
        
            | 
            | 
           1507 | 
                           $message =  '<p class="pap_erreur"> ERREUR Papyrus admin : impossible de copier l\'ancien dossier du site.<br />'.
  | 
        
        
            | 
            | 
           1508 | 
                                       'Dossier site ancien : '. $chemin_site_ancien .'<br />'.
  | 
        
        
            | 
            | 
           1509 | 
                                       'Dossier site nouveau : '. $chemin_site_nouveau .'<br />'.
  | 
        
        
            | 
            | 
           1510 | 
                                       'Erreur origine : '. $resultat->getMessage() .'<br />'.
  | 
        
        
            | 
            | 
           1511 | 
                                       'Ligne n° : '. __LINE__ .'<br />'.
  | 
        
        
            | 
            | 
           1512 | 
                                       'Fichier n° : '. __FILE__ .'<br /></p>';
  | 
        
        
            | 
            | 
           1513 | 
                               return $message;
  | 
        
        
            | 
            | 
           1514 | 
                       }
  | 
        
        
            | 
            | 
           1515 | 
                       // On utilise la racine FTP pour rm
  | 
        
        
            | 
            | 
           1516 | 
                       $chemin_site_ancien = PAP_FTP_RACINE.GEN_CHEMIN_SITES.$ancien_code_alphnum.GEN_SEP;
  | 
        
        
            | 
            | 
           1517 | 
                       // Changement du niveau d'erreur pour �viter les Notices PHP dues � Net_FTP
  | 
        
        
            | 
            | 
           1518 | 
                       error_reporting(E_PARSE);
  | 
        
        
            | 
            | 
           1519 | 
                       $resultat = $objet_pear_ftp->rm($chemin_site_ancien, true);
  | 
        
        
            | 
            | 
           1520 | 
                       if (PEAR::isError($resultat)) {
  | 
        
        
            | 
            | 
           1521 | 
                           $message =  '<p class="pap_erreur"> ERREUR Papyrus admin : impossible de supprimer l\'ancien dossier du site.<br />'.
  | 
        
        
            | 
            | 
           1522 | 
                                       'Dossier site ancien : '. $chemin_site_ancien .'<br />'.
  | 
        
        
            | 
            | 
           1523 | 
                                       'Erreur origine : '. $resultat->getMessage() .'<br />'.
  | 
        
        
            | 
            | 
           1524 | 
                                       'Ligne n° : '. __LINE__ .'<br />'.
  | 
        
        
            | 
            | 
           1525 | 
                                       'Fichier n° : '. __FILE__ .'<br /></p>';
  | 
        
        
            | 
            | 
           1526 | 
                               return $message;
  | 
        
        
            | 
            | 
           1527 | 
                       }
  | 
        
        
            | 
            | 
           1528 | 
                       // Retour au niveau d'erreur d�finit dans le fichier de config de Papyrus
  | 
        
        
            | 
            | 
           1529 | 
                       error_reporting(GEN_DEBOGAGE_NIVEAU);
  | 
        
        
            | 
            | 
           1530 | 
                       $objet_pear_ftp->disconnect();
  | 
        
        
            | 
            | 
           1531 | 
                   }
  | 
        
        
            | 
            | 
           1532 | 
               }
  | 
        
        
            | 
            | 
           1533 | 
              | 
        
        
            | 
            | 
           1534 | 
               // Requete de mise � jour des infos d'un site dans gen_site
  | 
        
        
            | 
            | 
           1535 | 
               $requete =  'UPDATE gen_site '.
  | 
        
        
            | 
            | 
           1536 | 
                           'SET gs_ce_i18n = "'.$aso_valeurs['gs_ce_i18n'].'", '.
  | 
        
        
            | 
            | 
           1537 | 
                           'gs_ce_auth = '.$aso_valeurs['gs_ce_auth'].', '.
  | 
        
        
            | 
            | 
           1538 | 
                           'gs_fichier_squelette = "'.$aso_valeurs['gs_fichier_squelette'].'", '.
  | 
        
        
            | 
            | 
           1539 | 
                           'gs_code_num = '.$aso_valeurs['gs_code_num'].', '.
  | 
        
        
            | 
            | 
           1540 | 
                           'gs_code_alpha = "'.$aso_valeurs['gs_code_alpha'].'", '.
  | 
        
        
            | 
            | 
           1541 | 
                           'gs_nom = "'.$aso_valeurs['gs_nom'].'", '.
  | 
        
        
            | 
            | 
           1542 | 
                           'gs_raccourci_clavier = "'.$aso_valeurs['gs_raccourci_clavier'].'", '.
  | 
        
        
            | 
            | 
           1543 | 
                           'gs_titre = "'.$aso_valeurs['gs_titre'].'", '.
  | 
        
        
            | 
            | 
           1544 | 
                           'gs_mots_cles = "'.$aso_valeurs['gs_mots_cles'].'", '.
  | 
        
        
            | 
            | 
           1545 | 
                           'gs_description = "'.$aso_valeurs['gs_description'].'", '.
  | 
        
        
            | 
            | 
           1546 | 
                           'gs_auteur = "'.$aso_valeurs['gs_auteur'].'", '.
  | 
        
        
            | 
            | 
           1547 | 
                           'gs_date_creation = "'.$aso_valeurs['gs_date_creation'].'", '.
  | 
        
        
            | 
            | 
           1548 | 
                           'gs_ce_admin = '.$id_admin.' '.
  | 
        
        
            | 
            | 
           1549 | 
                           $requete_complement.
  | 
        
        
            | 
            | 
           1550 | 
                           'WHERE gs_id_site = '.$aso_valeurs['gs_id_site'];
  | 
        
        
            | 
            | 
           1551 | 
               $resultat = $db->query($requete) ;
  | 
        
        
            | 
            | 
           1552 | 
               if (DB::isError($resultat)) {
  | 
        
        
            | 
            | 
           1553 | 
                   die( BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete) );
  | 
        
        
            | 
            | 
           1554 | 
               }
  | 
        
        
            | 
            | 
           1555 | 
               // Gestion du site externe
  | 
        
        
            | 
            | 
           1556 | 
               if ($id_type_site == 103) {
  | 
        
        
            | 
            | 
           1557 | 
                   // V�rification pour voir si nous avons � faire � une transformation d'un site "principal" en site "externe"
  | 
        
        
            | 
            | 
           1558 | 
                   $requete =  'SELECT COUNT(gsr_id_site_01) AS nbre_relation '.
  | 
        
        
            | 
            | 
           1559 | 
                               'FROM gen_site_relation '.
  | 
        
        
            | 
            | 
           1560 | 
                               'WHERE gsr_id_site_01 = gsr_id_site_02 '.
  | 
        
        
            | 
            | 
           1561 | 
                               'AND gsr_id_site_01 = '.$aso_valeurs['gs_id_site'].' '.
  | 
        
        
            | 
            | 
           1562 | 
                               'AND gsr_id_valeur = 102 ';// 102 = site "principal"
  | 
        
        
            | 
            | 
           1563 | 
                   $nbre_relation = $db->getOne($requete);
  | 
        
        
            | 
            | 
           1564 | 
                   if (DB::isError($nbre_relation)) {
  | 
        
        
            | 
            | 
           1565 | 
                       die( BOG_afficherErreurSql(__FILE__, __LINE__, $nbre_relation->getMessage(), $requete) );
  | 
        
        
            | 
            | 
           1566 | 
                   }
  | 
        
        
            | 
            | 
           1567 | 
              | 
        
        
            | 
            | 
           1568 | 
                   // Nous supprimons l'ancienne relation si n�cessaire
  | 
        
        
            | 
            | 
           1569 | 
                   if ($nbre_relation >= 1) {
  | 
        
        
            | 
            | 
           1570 | 
                       $requete_supr_ext = 'DELETE FROM gen_site_relation '.
  | 
        
        
            | 
            | 
           1571 | 
                                           'WHERE gsr_id_site_01 = gsr_id_site_02 '.
  | 
        
        
            | 
            | 
           1572 | 
                                           'AND gsr_id_site_01 = '.$aso_valeurs['gs_id_site'].' '.
  | 
        
        
            | 
            | 
           1573 | 
                                           'AND gsr_id_valeur = 102 ';// 102 = site "principal"
  | 
        
        
            | 
            | 
           1574 | 
                       $resultat_supr_ext = $db->query($requete_supr_ext);
  | 
        
        
            | 
            | 
           1575 | 
                       if (DB::isError($resultat_supr_ext)) {
  | 
        
        
            | 
            | 
           1576 | 
                           die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat_supr_ext->getMessage(), $requete_supr_ext));
  | 
        
        
            | 
            | 
           1577 | 
                       }
  | 
        
        
            | 
            | 
           1578 | 
                       $message_complement =   'Le site "principal" a �t� transform� en site "externe". Si n�cessaire, veuillez '.
  | 
        
        
            | 
            | 
           1579 | 
                                               'supprimer manuellement par FTP, le dossier contenant les fichiers de ce site sur '.
  | 
        
        
            | 
            | 
           1580 | 
                                               'le serveur!';
  | 
        
        
            | 
            | 
           1581 | 
                   }
  | 
        
        
            | 
            | 
           1582 | 
              | 
        
        
            | 
            | 
           1583 | 
                   // V�rification pour voir si le site est d�j� "externe"
  | 
        
        
            | 
            | 
           1584 | 
                   $requete =  'SELECT COUNT(gsr_id_site_01) AS nbre_relation '.
  | 
        
        
            | 
            | 
           1585 | 
                               'FROM gen_site_relation '.
  | 
        
        
            | 
            | 
           1586 | 
                               'WHERE gsr_id_site_01 = gsr_id_site_02 '.
  | 
        
        
            | 
            | 
           1587 | 
                               'AND gsr_id_site_01 = '.$aso_valeurs['gs_id_site'].' '.
  | 
        
        
            | 
            | 
           1588 | 
                               'AND gsr_id_valeur = 103 ';// 103 = site "externe"
  | 
        
        
            | 
            | 
           1589 | 
                   $nbre_relation = $db->getOne($requete);
  | 
        
        
            | 
            | 
           1590 | 
                   if (DB::isError($nbre_relation)) {
  | 
        
        
            | 
            | 
           1591 | 
                       die( BOG_afficherErreurSql(__FILE__, __LINE__, $nbre_relation->getMessage(), $requete) );
  | 
        
        
            | 
            | 
           1592 | 
                   }
  | 
        
        
            | 
            | 
           1593 | 
                   if ($nbre_relation == 0) {
  | 
        
        
            | 
            | 
           1594 | 
                       // Requete d'insertion de la relations site "externe"
  | 
        
        
            | 
            | 
           1595 | 
                       $requete =  'INSERT INTO gen_site_relation '.
  | 
        
        
            | 
            | 
           1596 | 
                                   'SET gsr_id_site_01 = '.$aso_valeurs['gs_id_site'].', '.
  | 
        
        
            | 
            | 
           1597 | 
                                   'gsr_id_site_02 = '.$aso_valeurs['gs_id_site'].', '.
  | 
        
        
            | 
            | 
           1598 | 
                                   'gsr_id_valeur = '.$id_type_site.', '.
  | 
        
        
            | 
            | 
           1599 | 
                                   'gsr_ordre = NULL ';
  | 
        
        
            | 
            | 
           1600 | 
                       $resultat = $db->query($requete);
  | 
        
        
            | 
            | 
           1601 | 
                       if (DB::isError($resultat)) {
  | 
        
        
            | 
            | 
           1602 | 
                           die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete));
  | 
        
        
            | 
            | 
           1603 | 
                       }
  | 
        
        
            | 
            | 
           1604 | 
                   }
  | 
        
        
            | 
            | 
           1605 | 
              | 
        
        
            | 
            | 
           1606 | 
                   // Ajout du type de site externe
  | 
        
        
            | 
            | 
           1607 | 
                   $requete =  'INSERT INTO gen_site_relation '.
  | 
        
        
            | 
            | 
           1608 | 
                               'SET gsr_id_site_01 = '.$aso_valeurs['gs_id_site'].', '.
  | 
        
        
            | 
            | 
           1609 | 
                               'gsr_id_site_02 = '.$aso_valeurs['gs_id_site'].', '.
  | 
        
        
            | 
            | 
           1610 | 
                               'gsr_id_valeur = '.$aso_valeurs['type_site_externe'].', '.
  | 
        
        
            | 
            | 
           1611 | 
                               'gsr_ordre = NULL ';
  | 
        
        
            | 
            | 
           1612 | 
                   $resultat = $db->query($requete);
  | 
        
        
            | 
            | 
           1613 | 
                   if (DB::isError($resultat)) {
  | 
        
        
            | 
            | 
           1614 | 
                       die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete));
  | 
        
        
            | 
            | 
           1615 | 
                   }
  | 
        
        
            | 
            | 
           1616 | 
              | 
        
        
            | 
            | 
           1617 | 
               }
  | 
        
        
            | 
            | 
           1618 | 
              | 
        
        
            | 
            | 
           1619 | 
               // Gestion du site par d�faut
  | 
        
        
            | 
            | 
           1620 | 
               if (isset($aso_valeurs['defaut']) && $aso_valeurs['defaut'] == 1) {
  | 
        
        
            | 
            | 
           1621 | 
                   $requete_supr_defaut =  'DELETE FROM gen_site_relation '.
  | 
        
        
            | 
            | 
           1622 | 
                                           'WHERE gsr_id_site_01 = gsr_id_site_02 '.
  | 
        
        
            | 
            | 
           1623 | 
                                           'AND gsr_id_valeur = 101 ';// 101 = site par "defaut"
  | 
        
        
            | 
            | 
           1624 | 
                   $resultat_supr_defaut = $db->query($requete_supr_defaut);
  | 
        
        
            | 
            | 
           1625 | 
                   if (DB::isError($resultat_supr_defaut)) {
  | 
        
        
            | 
            | 
           1626 | 
                       die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat_supr_defaut->getMessage(), $requete_supr_defaut));
  | 
        
        
            | 
            | 
           1627 | 
                   }
  | 
        
        
            | 
            | 
           1628 | 
              | 
        
        
            | 
            | 
           1629 | 
                   // Requete d'insertion de la relations site par d�faut
  | 
        
        
            | 
            | 
           1630 | 
                   $requete =  'INSERT INTO gen_site_relation '.
  | 
        
        
            | 
            | 
           1631 | 
                               'SET gsr_id_site_01 = '.$aso_valeurs['gs_id_site'].', '.
  | 
        
        
            | 
            | 
           1632 | 
                               'gsr_id_site_02 = '.$aso_valeurs['gs_id_site'].', '.
  | 
        
        
            | 
            | 
           1633 | 
                               'gsr_id_valeur = 101, '.
  | 
        
        
            | 
            | 
           1634 | 
                               'gsr_ordre = NULL ';
  | 
        
        
            | 
            | 
           1635 | 
                   $resultat = $db->query($requete);
  | 
        
        
            | 
            | 
           1636 | 
                   if (DB::isError($resultat)) {
  | 
        
        
            | 
            | 
           1637 | 
                       die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete));
  | 
        
        
            | 
            | 
           1638 | 
                   }
  | 
        
        
            | 
            | 
           1639 | 
               }
  | 
        
        
            | 
            | 
           1640 | 
              | 
        
        
            | 
            | 
           1641 | 
               $message = '<p class="pap_info">'.'Succ�s de la modification du site.'.'</p>';
  | 
        
        
            | 
            | 
           1642 | 
               $message .= '<p class="pap_info">'.$message_complement.'</p>';
  | 
        
        
            | 
            | 
           1643 | 
               return $message;
  | 
        
        
            | 
            | 
           1644 | 
           }
  | 
        
        
            | 
            | 
           1645 | 
              | 
        
        
            | 
            | 
           1646 | 
           /** Fonction ADMIN_supprimerSite() - Ajoute un site � Papyrus.
  | 
        
        
            | 
            | 
           1647 | 
           *
  | 
        
        
            | 
            | 
           1648 | 
           * Cette fonction ajoute le site � Papyrus, c'est � dire :
  | 
        
        
            | 
            | 
           1649 | 
           * - 1. Cr�ation des r�pertoire du projet en fonction du nom et des sous-r�pertoires.
  | 
        
        
            | 
            | 
           1650 | 
           * - 2. Insertion d'une ligne dans la table "gen_site".
  | 
        
        
            | 
            | 
           1651 | 
           * - 3. Insertion d'une ligne dans la table "gen_site_auth" et ses tables li�es si n�cessaire.
  | 
        
        
            | 
            | 
           1652 | 
           *
  | 
        
        
            | 
            | 
           1653 | 
           * @param  string   l'objet pear de connexion � la base de donn�es.
  | 
        
        
            | 
            | 
           1654 | 
           * @param  string   le tableau contenant les valeurs du formulaire.
  | 
        
        
            | 
            | 
           1655 | 
           * @param  int      identifiant de l'administrateur r�alisant cette cr�ation.
  | 
        
        
            | 
            | 
           1656 | 
           * @return string retourne un message en cas de succ�s ou d'�chec.
  | 
        
        
            | 
            | 
           1657 | 
           */
  | 
        
        
            | 
            | 
           1658 | 
           function ADMIN_supprimerSite(&$db, $aso_valeurs)
  | 
        
        
            | 
            | 
           1659 | 
           {
  | 
        
        
            | 
            | 
           1660 | 
               // Recherche du coda alpha du site principal afin de pouvoir d�truire ses r�pertoires
  | 
        
        
            | 
            | 
           1661 | 
               $requete =  'SELECT gs_code_alpha '.
  | 
        
        
            | 
            | 
           1662 | 
                           'FROM gen_site '.
  | 
        
        
            | 
            | 
           1663 | 
                           'WHERE gs_id_site = '.$aso_valeurs['form_sites_id_site'];
  | 
        
        
            | 
            | 
           1664 | 
               $code_alpha_site_principal = $db->getOne($requete);
  | 
        
        
            | 
            | 
           1665 | 
               if (DB::isError($code_alpha_site_principal)) {
  | 
        
        
            | 
            | 
           1666 | 
                   die(BOG_afficherErreurSql(__FILE__, __LINE__, $code_alpha_site_principal->getMessage(), $requete));
  | 
        
        
            | 
            | 
           1667 | 
               }
  | 
        
        
            | 
            | 
           1668 | 
              | 
        
        
            | 
            | 
           1669 | 
               // Nous v�rifions que le site n'a pas le code alphanum correspondant au site par d�faut d'administration (admin).
  | 
        
        
            | 
            | 
           1670 | 
               if ($code_alpha_site_principal == GEN_SITE_DEFAUT) {
  | 
        
        
            | 
            | 
           1671 | 
                   $message =  '<p class="pap_erreur">Si vous voulez vraiment supprimer le site d\'administration par d�faut de '.
  | 
        
        
            | 
            | 
           1672 | 
                               'Papyrus, veuillez commencer par changer la valeur de son code alphanumérique. Vous pourrez '.
  | 
        
        
            | 
            | 
           1673 | 
                               'ensuite le supprimer via cette interface.</p>';
  | 
        
        
            | 
            | 
           1674 | 
                   return $message;
  | 
        
        
            | 
            | 
           1675 | 
               }
  | 
        
        
            | 
            | 
           1676 | 
              | 
        
        
            | 
            | 
           1677 | 
               // Recherche des diff�rents sites li�s � celui que l'on veut d�truire
  | 
        
        
            | 
            | 
           1678 | 
               // Cela comprend le site � d�truire lui m�me car il poss�de la relations
  | 
        
        
            | 
            | 
           1679 | 
               // sur lui meme "site principale".
  | 
        
        
            | 
            | 
           1680 | 
               $requete =  'SELECT gs_id_site '.
  | 
        
        
            | 
            | 
           1681 | 
                           'FROM gen_site, gen_site_relation '.
  | 
        
        
            | 
            | 
           1682 | 
                           'WHERE gsr_id_site_01 = '.$aso_valeurs['form_sites_id_site'].' '.
  | 
        
        
            | 
            | 
           1683 | 
                           'AND gsr_id_site_02 = gs_id_site ';
  | 
        
        
            | 
            | 
           1684 | 
               $resultat = $db->query($requete);
  | 
        
        
            | 
            | 
           1685 | 
               if (DB::isError($resultat)) {
  | 
        
        
            | 
            | 
           1686 | 
                   die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete));
  | 
        
        
            | 
            | 
           1687 | 
               }
  | 
        
        
            | 
            | 
           1688 | 
              | 
        
        
            | 
            | 
           1689 | 
               while ($ligne = $resultat->fetchRow(DB_FETCHMODE_OBJECT)) {
  | 
        
        
            | 
            | 
           1690 | 
                   // Requete de suppression des sites li�s dans gen_site
  | 
        
        
            | 
            | 
           1691 | 
                   $requete_supr_site =    'DELETE FROM gen_site '.
  | 
        
        
            | 
            | 
           1692 | 
                                           'WHERE gs_id_site = '.$ligne->gs_id_site;
  | 
        
        
            | 
            | 
           1693 | 
                   $resultat_supr_site = $db->query($requete_supr_site);
  | 
        
        
            | 
            | 
           1694 | 
                   if (DB::isError($resultat_supr_site)) {
  | 
        
        
            | 
            | 
           1695 | 
                       die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat_supr_site->getMessage(), $requete_supr_site));
  | 
        
        
            | 
            | 
           1696 | 
                   }
  | 
        
        
            | 
            | 
           1697 | 
              | 
        
        
            | 
            | 
           1698 | 
                   // Requete de suppression des relations des sites � d�truire
  | 
        
        
            | 
            | 
           1699 | 
                   $requete_supr_site_relation =   'DELETE FROM gen_site_relation '.
  | 
        
        
            | 
            | 
           1700 | 
                                                   'WHERE gsr_id_site_01 = '.$ligne->gs_id_site;
  | 
        
        
            | 
            | 
           1701 | 
                   $resultat_supr_site_relation = $db->query($requete_supr_site_relation);
  | 
        
        
            | 
            | 
           1702 | 
                   if (DB::isError($resultat_supr_site_relation)) {
  | 
        
        
            | 
            | 
           1703 | 
                       die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat_supr_site_relation->getMessage(), $requete_supr_site_relation));
  | 
        
        
            | 
            | 
           1704 | 
                   }
  | 
        
        
            | 
            | 
           1705 | 
              | 
        
        
            | 
            | 
           1706 | 
                   // Recherche des diff�rents menus li�s au site � d�truire
  | 
        
        
            | 
            | 
           1707 | 
                   $requete_menu = 'SELECT gm_id_menu '.
  | 
        
        
            | 
            | 
           1708 | 
                                   'FROM gen_menu '.
  | 
        
        
            | 
            | 
           1709 | 
                                   'WHERE gm_ce_site = '.$ligne->gs_id_site;
  | 
        
        
            | 
            | 
           1710 | 
                   $resultat_menu = $db->query($requete_menu) ;
  | 
        
        
            | 
            | 
           1711 | 
                   if (DB::isError($resultat_menu)) {
  | 
        
        
            | 
            | 
           1712 | 
                       die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat_menu->getMessage(), $requete_menu));
  | 
        
        
            | 
            | 
           1713 | 
                   }
  | 
        
        
            | 
            | 
           1714 | 
                   while ($ligne_menu = $resultat_menu->fetchRow(DB_FETCHMODE_OBJECT)) {
  | 
        
        
            | 
            | 
           1715 | 
                       // Requete de suppression des des menus
  | 
        
        
            | 
            | 
           1716 | 
                       $requete_supr_menu =   'DELETE FROM gen_menu '.
  | 
        
        
            | 
            | 
           1717 | 
                                                       'WHERE gm_id_menu = '.$ligne_menu->gm_id_menu;
  | 
        
        
            | 
            | 
           1718 | 
                       $resultat_supr_menu = $db->query($requete_supr_menu);
  | 
        
        
            | 
            | 
           1719 | 
                       if (DB::isError($resultat_supr_menu)) {
  | 
        
        
            | 
            | 
           1720 | 
                           die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat_supr_menu->getMessage(), $requete_supr_menu));
  | 
        
        
            | 
            | 
           1721 | 
                       }
  | 
        
        
            | 
            | 
           1722 | 
                       // Requete de suppression des relations des menus
  | 
        
        
            | 
            | 
           1723 | 
                       $requete_supr_menu_relation =   'DELETE FROM gen_menu_relation '.
  | 
        
        
            | 
            | 
           1724 | 
                                                       'WHERE gmr_id_menu_01 = '.$ligne_menu->gm_id_menu;
  | 
        
        
            | 
            | 
           1725 | 
                       $resultat_supr_menu_relation = $db->query($requete_supr_menu_relation);
  | 
        
        
            | 
            | 
           1726 | 
                       if (DB::isError($resultat_supr_menu_relation)) {
  | 
        
        
            | 
            | 
           1727 | 
                           die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat_supr_menu_relation->getMessage(), $requete_supr_menu_relation));
  | 
        
        
            | 
            | 
           1728 | 
                       }
  | 
        
        
            | 
            | 
           1729 | 
              | 
        
        
            | 
            | 
           1730 | 
                       // Requete de suppression des contenus des menus
  | 
        
        
            | 
            | 
           1731 | 
                       $requete_supr_menu_contenu =   'DELETE FROM gen_menu_contenu '.
  | 
        
        
            | 
            | 
           1732 | 
                                                       'WHERE gmc_ce_menu = '.$ligne_menu->gm_id_menu;
  | 
        
        
            | 
            | 
           1733 | 
                       $resultat_supr_menu_contenu = $db->query($requete_supr_menu_contenu);
  | 
        
        
            | 
            | 
           1734 | 
                       if (DB::isError($resultat_supr_menu_contenu)) {
  | 
        
        
            | 
            | 
           1735 | 
                           die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat_supr_menu_contenu->getMessage(), $requete_supr_menu_contenu));
  | 
        
        
            | 
            | 
           1736 | 
                       }
  | 
        
        
            | 
            | 
           1737 | 
              | 
        
        
            | 
            | 
           1738 | 
                       // Requete de suppression des ulr alternatives des menus
  | 
        
        
            | 
            | 
           1739 | 
                       $requete_supr_menu_url_alt =   'DELETE FROM gen_menu_url_alternative '.
  | 
        
        
            | 
            | 
           1740 | 
                                                       'WHERE gmua_ce_menu = '.$ligne_menu->gm_id_menu;
  | 
        
        
            | 
            | 
           1741 | 
                       $resultat_supr_menu_url_alt = $db->query($requete_supr_menu_url_alt);
  | 
        
        
            | 
            | 
           1742 | 
                       if (DB::isError($resultat_supr_menu_url_alt)) {
  | 
        
        
            | 
            | 
           1743 | 
                           die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat_supr_menu_url_alt->getMessage(), $requete_supr_menu_url_alt));
  | 
        
        
            | 
            | 
           1744 | 
                       }
  | 
        
        
            | 
            | 
           1745 | 
                   }
  | 
        
        
            | 
            | 
           1746 | 
                   $resultat_menu->free();
  | 
        
        
            | 
            | 
           1747 | 
               }
  | 
        
        
            | 
            | 
           1748 | 
               $resultat->free();
  | 
        
        
            | 
            | 
           1749 | 
              | 
        
        
            | 
            | 
           1750 | 
               // Suppression des r�pertoires du site
  | 
        
        
            | 
            | 
           1751 | 
               if (!GEN_FTP_UTILISE) {
  | 
        
        
            | 
            | 
           1752 | 
                   $chemin_repertoire = PAP_CHEMIN_RACINE.GEN_CHEMIN_SITES.$code_alpha_site_principal;
  | 
        
        
            | 
            | 
           1753 | 
                   $resultat = supprimerDossier($chemin_repertoire, GEN_SEP);
  | 
        
        
            | 
            | 
           1754 | 
                   if (!$resultat) {
  | 
        
        
            | 
            | 
           1755 | 
                       $message =  '<p class="pap_erreur"> ERREUR Papyrus admin : impossible de supprimer le répertoire.<br />'.
  | 
        
        
            | 
            | 
           1756 | 
                                   'Répertoire : '. $chemin_repertoire .'<br />'.
  | 
        
        
            | 
            | 
           1757 | 
                                   'Ligne n° : '. __LINE__ .'<br />'.
  | 
        
        
            | 
            | 
           1758 | 
                                   'Fichier n° : '. __FILE__ .'<br /></p>';
  | 
        
        
            | 
            | 
           1759 | 
                       return $message;
  | 
        
        
            | 
            | 
           1760 | 
                   }
  | 
        
        
            | 
            | 
           1761 | 
               } else {
  | 
        
        
            | 
            | 
           1762 | 
                   // Cr�ation d'une connection ftp avec Net_FTP de PEAR
  | 
        
        
            | 
            | 
           1763 | 
                   // voir http://pear.php.net/manual/fr/package.networking.net-ftp.php
  | 
        
        
            | 
            | 
           1764 | 
              | 
        
        
            | 
            | 
           1765 | 
                   // cr�ation de l'objet pear ftp
  | 
        
        
            | 
            | 
           1766 | 
                   $objet_pear_ftp = new Net_FTP(PAP_FTP_SERVEUR, PAP_FTP_PORT);
  | 
        
        
            | 
            | 
           1767 | 
                   // cr�ation de la connexion
  | 
        
        
            | 
            | 
           1768 | 
                   $ftp_conn = $objet_pear_ftp->connect(PAP_FTP_SERVEUR, PAP_FTP_PORT);
  | 
        
        
            | 
            | 
           1769 | 
                   // identification
  | 
        
        
            | 
            | 
           1770 | 
                   $ftp_login_result = $objet_pear_ftp->login(PAP_FTP_UTILISATEUR, PAP_FTP_MOT_DE_PASSE);
  | 
        
        
            | 
            | 
           1771 | 
                   // Gestion des erreurs ftp
  | 
        
        
            | 
            | 
           1772 | 
                   if ((PEAR::isError($ftp_conn) || PEAR::isError($ftp_login_result))) {
  | 
        
        
            | 
            | 
           1773 | 
                       $message =  '<p class="pap_erreur"> ERREUR Papyrus admin : impossible de se connecter par ftp.<br />'.
  | 
        
        
            | 
            | 
           1774 | 
                                   'Erreur connexion : '.$ftp_conn->getMessage().'<br />'.
  | 
        
        
            | 
            | 
           1775 | 
                                   'Erreur login : '.$ftp_login_result->getMessage().'<br />'.
  | 
        
        
            | 
            | 
           1776 | 
                                   'Serveur : '. PAP_FTP_SERVEUR .'<br />'.
  | 
        
        
            | 
            | 
           1777 | 
                                   'Utilisateur : '. PAP_FTP_UTILISATEUR .'<br />'.
  | 
        
        
            | 
            | 
           1778 | 
                                   'Ligne n° : '. __LINE__ .'<br />'.
  | 
        
        
            | 
            | 
           1779 | 
                                   'Fichier n° : '. __FILE__ .'<br /><p>';
  | 
        
        
            | 
            | 
           1780 | 
                       return $message;
  | 
        
        
            | 
            | 
           1781 | 
                   }
  | 
        
        
            | 
            | 
           1782 | 
                   // Changement du niveau d'erreur pour �viter les Notices PHP dues �  Net_FTP
  | 
        
        
            | 
            | 
           1783 | 
                   error_reporting(E_PARSE);
  | 
        
        
            | 
            | 
           1784 | 
                   $chemin_repertoire = PAP_FTP_RACINE.GEN_CHEMIN_SITES.$code_alpha_site_principal.'/';
  | 
        
        
            | 
            | 
           1785 | 
              | 
        
        
            | 
            | 
           1786 | 
                   if ($code_alpha_site_principal!='') {
  | 
        
        
            | 
            | 
           1787 | 
           	        $resultat = $objet_pear_ftp->rm($chemin_repertoire, true);
  | 
        
        
            | 
            | 
           1788 | 
           	        if (PEAR::isError($resultat)) {
  | 
        
        
            | 
            | 
           1789 | 
           	            $message =  '<p class="pap_erreur"> ERREUR Papyrus admin : impossible de supprimer le répertoire par ftp.<br />'.
  | 
        
        
            | 
            | 
           1790 | 
           	                        'Erreur ftp : '.$resultat->getMessage().'<br />'.
  | 
        
        
            | 
            | 
           1791 | 
           	                        'Répertoire : '. $chemin_repertoire .'<br />'.
  | 
        
        
            | 
            | 
           1792 | 
           	                        'Ligne n° : '. __LINE__ .'<br />'.
  | 
        
        
            | 
            | 
           1793 | 
           	                        'Fichier n° : '. __FILE__ .'<br /></p>';
  | 
        
        
            | 
            | 
           1794 | 
           	            return $message;
  | 
        
        
            | 
            | 
           1795 | 
           	        }
  | 
        
        
            | 
            | 
           1796 | 
                   }
  | 
        
        
            | 
            | 
           1797 | 
                   $objet_pear_ftp->disconnect();
  | 
        
        
            | 
            | 
           1798 | 
                   // Retour au niveau d'erreur d�finit dans le fichier de config de Papyrus
  | 
        
        
            | 
            | 
           1799 | 
                   error_reporting(GEN_DEBOGAGE_NIVEAU);
  | 
        
        
            | 
            | 
           1800 | 
               }
  | 
        
        
            | 
            | 
           1801 | 
               $message = '<p class="pap_info">Succés de la suppression du site.</p>';
  | 
        
        
            | 
            | 
           1802 | 
               return $message;
  | 
        
        
            | 
            | 
           1803 | 
           }
  | 
        
        
            | 
            | 
           1804 | 
              | 
        
        
            | 
            | 
           1805 | 
              | 
        
        
            | 
            | 
           1806 | 
           function ADMIN_verifier_traduction_possible(&$db, $aso_valeurs) {
  | 
        
        
            | 
            | 
           1807 | 
              | 
        
        
            | 
            | 
           1808 | 
              | 
        
        
            | 
            | 
           1809 | 
           	// 	Traduction d'un site principal uniquement :
  | 
        
        
            | 
            | 
           1810 | 
              | 
        
        
            | 
            | 
           1811 | 
               $requete =  'SELECT gsr_id_site_01, gs_ce_i18n '.
  | 
        
        
            | 
            | 
           1812 | 
                           'FROM gen_site_relation, gen_site '.
  | 
        
        
            | 
            | 
           1813 | 
                           'WHERE gsr_id_site_02 = '.$aso_valeurs['form_sites_id_site'].' '.
  | 
        
        
            | 
            | 
           1814 | 
                           'AND gs_id_site = gsr_id_site_01  '.
  | 
        
        
            | 
            | 
           1815 | 
                           'AND gsr_id_valeur =1  '; // 1 = "avoir traduction"
  | 
        
        
            | 
            | 
           1816 | 
              | 
        
        
            | 
            | 
           1817 | 
               $resultat = $db->query($requete);
  | 
        
        
            | 
            | 
           1818 | 
              | 
        
        
            | 
            | 
           1819 | 
               if (DB::isError($resultat)) {
  | 
        
        
            | 
            | 
           1820 | 
                   die( BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete) );
  | 
        
        
            | 
            | 
           1821 | 
               }
  | 
        
        
            | 
            | 
           1822 | 
              | 
        
        
            | 
            | 
           1823 | 
               if ( $resultat->numRows() == 0 ) {
  | 
        
        
            | 
            | 
           1824 | 
               	$site_id = $aso_valeurs['form_sites_id_site'];
  | 
        
        
            | 
            | 
           1825 | 
               }
  | 
        
        
            | 
            | 
           1826 | 
               else {
  | 
        
        
            | 
            | 
           1827 | 
               	$ligne_site = $resultat->fetchRow(DB_FETCHMODE_OBJECT);
  | 
        
        
            | 
            | 
           1828 | 
                   $site_id = $ligne_site->gsr_id_site_01;
  | 
        
        
            | 
            | 
           1829 | 
               }
  | 
        
        
            | 
            | 
           1830 | 
              | 
        
        
            | 
            | 
           1831 | 
              | 
        
        
            | 
            | 
           1832 | 
           	 $requete =  'SELECT distinct gs_ce_i18n '.
  | 
        
        
            | 
            | 
           1833 | 
               'FROM gen_site_relation, gen_site '.
  | 
        
        
            | 
            | 
           1834 | 
               'WHERE gsr_id_site_01 = ' . $site_id .' '.
  | 
        
        
            | 
            | 
           1835 | 
               'AND gs_id_site = gsr_id_site_02  '.
  | 
        
        
            | 
            | 
           1836 | 
               'AND gsr_id_valeur =1  '; // 1 = "avoir traduction"
  | 
        
        
            | 
            | 
           1837 | 
              | 
        
        
            | 
            | 
           1838 | 
               $resultat = $db->query($requete) ;
  | 
        
        
            | 
            | 
           1839 | 
               if (DB::isError($resultat)) {
  | 
        
        
            | 
            | 
           1840 | 
                   die( BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete) );
  | 
        
        
            | 
            | 
           1841 | 
               }
  | 
        
        
            | 
            | 
           1842 | 
               $not_in_langue='';
  | 
        
        
            | 
            | 
           1843 | 
               if ( $resultat->numRows() == 0 ) {
  | 
        
        
            | 
            | 
           1844 | 
           		$not_in_langue="gi_id_i18n not in('".$ligne_site->gs_ce_i18n."')";
  | 
        
        
            | 
            | 
           1845 | 
               }
  | 
        
        
            | 
            | 
           1846 | 
               else {
  | 
        
        
            | 
            | 
           1847 | 
               	    while ($ligne = $resultat->fetchRow(DB_FETCHMODE_OBJECT)) {
  | 
        
        
            | 
            | 
           1848 | 
           				$not_in_langue="'".$ligne->gs_ce_i18n."'".",".$not_in_langue;
  | 
        
        
            | 
            | 
           1849 | 
           				$end="'".$ligne->gs_ce_i18n."'";
  | 
        
        
            | 
            | 
           1850 | 
           			}
  | 
        
        
            | 
            | 
           1851 | 
               		$not_in_langue=' gi_id_i18n not in('.$not_in_langue.$end.')';
  | 
        
        
            | 
            | 
           1852 | 
               }
  | 
        
        
            | 
            | 
           1853 | 
           	$resultat->free();
  | 
        
        
            | 
            | 
           1854 | 
              | 
        
        
            | 
            | 
           1855 | 
           	$requete =  "SELECT * FROM gen_i18n where ".$not_in_langue;
  | 
        
        
            | 
            | 
           1856 | 
              | 
        
        
            | 
            | 
           1857 | 
               $resultat = $db->query($requete) ;
  | 
        
        
            | 
            | 
           1858 | 
               if (DB::isError($resultat)) {
  | 
        
        
            | 
            | 
           1859 | 
                   die( BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete) );
  | 
        
        
            | 
            | 
           1860 | 
               }
  | 
        
        
            | 
            | 
           1861 | 
              | 
        
        
            | 
            | 
           1862 | 
               $retour = $resultat->numRows();
  | 
        
        
            | 
            | 
           1863 | 
               $resultat->free();
  | 
        
        
            | 
            | 
           1864 | 
              | 
        
        
            | 
            | 
           1865 | 
               $message='';
  | 
        
        
            | 
            | 
           1866 | 
               if ($retour == 0) {
  | 
        
        
            | 
            | 
           1867 | 
               	  $message = '<p class="pap_erreur">Plus de traduction possible pour ce site </p>';
  | 
        
        
            | 
            | 
           1868 | 
               }
  | 
        
        
            | 
            | 
           1869 | 
               return  $message;
  | 
        
        
            | 
            | 
           1870 | 
           }
  | 
        
        
            | 
            | 
           1871 | 
              | 
        
        
            | 
            | 
           1872 | 
           // +- Fin du code source  --------------------------------------------------------------------------------+
  | 
        
        
            | 
            | 
           1873 | 
           /*
  | 
        
        
            | 
            | 
           1874 | 
           * $Log: adsi_site.fonct.php,v $
  | 
        
        
            | 
            | 
           1875 | 
           * Revision 1.42  2007-10-23 13:31:22  ddelon
  | 
        
        
            | 
            | 
           1876 | 
           * Ajout copie images lors traduction d'un site
  | 
        
        
            | 
            | 
           1877 | 
           *
  | 
        
        
            | 
            | 
           1878 | 
           * Revision 1.41  2007-10-21 16:44:37  ddelon
  | 
        
        
            | 
            | 
           1879 | 
           * Pb Pap chemin
  | 
        
        
            | 
            | 
           1880 | 
           *
  | 
        
        
            | 
            | 
           1881 | 
           * Revision 1.40  2007-10-04 12:57:37  ddelon
  | 
        
        
            | 
            | 
           1882 | 
           * retablisssement chemin ftp dans traduction site
  | 
        
        
            | 
            | 
           1883 | 
           *
  | 
        
        
            | 
            | 
           1884 | 
           * Revision 1.39  2007-06-26 14:18:53  florian
  | 
        
        
            | 
            | 
           1885 | 
           * amélioration des formulaires des différentes applis de l'interface d'administration afin de les simplifier
  | 
        
        
            | 
            | 
           1886 | 
           *
  | 
        
        
            | 
            | 
           1887 | 
           * Revision 1.38  2007-06-25 12:15:06  alexandre_tb
  | 
        
        
            | 
            | 
           1888 | 
           * merge from narmer
  | 
        
        
            | 
            | 
           1889 | 
           *
  | 
        
        
            | 
            | 
           1890 | 
           * Revision 1.37  2007/04/24 13:27:57  alexandre_tb
  | 
        
        
            | 
            | 
           1891 | 
           * encodage
  | 
        
        
            | 
            | 
           1892 | 
           *
  | 
        
        
            | 
            | 
           1893 | 
           * Revision 1.36  2007/04/20 13:48:31  alexandre_tb
  | 
        
        
            | 
            | 
           1894 | 
           * nettoyage accent
  | 
        
        
            | 
            | 
           1895 | 
           *
  | 
        
        
            | 
            | 
           1896 | 
           * Revision 1.35  2007/04/20 10:42:42  neiluj
  | 
        
        
            | 
            | 
           1897 | 
           * suite oubli, fix des derniers bugs FTP
  | 
        
        
            | 
            | 
           1898 | 
           *
  | 
        
        
            | 
            | 
           1899 | 
           * Revision 1.34  2007/04/20 09:21:41  neiluj
  | 
        
        
            | 
            | 
           1900 | 
           * correction bug ftp création/suppression/modification de site
  | 
        
        
            | 
            | 
           1901 | 
           * (changé PAP_FTP_RACINE en PAP_CHEMIN_RACINE)
  | 
        
        
            | 
            | 
           1902 | 
           * voir compatibilité chroot() du serveur FTP)
  | 
        
        
            | 
            | 
           1903 | 
           *
  | 
        
        
            | 
            | 
           1904 | 
           * Revision 1.33  2007/04/19 15:34:35  neiluj
  | 
        
        
            | 
            | 
           1905 | 
           * préparration release (livraison) "Narmer" - v0.25
  | 
        
        
            | 
            | 
           1906 | 
           *
  | 
        
        
            | 
            | 
           1907 | 
           * Revision 1.32  2006/10/16 15:49:06  ddelon
  | 
        
        
            | 
            | 
           1908 | 
           * Refactorisation code mulitlinguisme et gestion menu invisibles
  | 
        
        
            | 
            | 
           1909 | 
           *
  | 
        
        
            | 
            | 
           1910 | 
           * Revision 1.31  2006/09/12 09:54:02  ddelon
  | 
        
        
            | 
            | 
           1911 | 
           * Affichage des identifications disponibles lors de la création d'un site. Un bug faisait que l'affichage de l'identification par défaut ne fonctionnait plus en creation.
  | 
        
        
            | 
            | 
           1912 | 
           *
  | 
        
        
            | 
            | 
           1913 | 
           * Revision 1.30  2006/07/19 13:57:35  ddelon
  | 
        
        
            | 
            | 
           1914 | 
           * Bug suppression de site
  | 
        
        
            | 
            | 
           1915 | 
           *
  | 
        
        
            | 
            | 
           1916 | 
           * Revision 1.29  2006/03/23 20:24:58  ddelon
  | 
        
        
            | 
            | 
           1917 | 
           * *** empty log message ***
  | 
        
        
            | 
            | 
           1918 | 
           *
  | 
        
        
            | 
            | 
           1919 | 
           * Revision 1.28  2006/03/15 23:44:19  ddelon
  | 
        
        
            | 
            | 
           1920 | 
           * Gestion site
  | 
        
        
            | 
            | 
           1921 | 
           *
  | 
        
        
            | 
            | 
           1922 | 
           * Revision 1.27  2006/03/15 23:35:25  ddelon
  | 
        
        
            | 
            | 
           1923 | 
           * Gestion site
  | 
        
        
            | 
            | 
           1924 | 
           *
  | 
        
        
            | 
            | 
           1925 | 
           * Revision 1.26  2006/03/02 10:49:49  ddelon
  | 
        
        
            | 
            | 
           1926 | 
           * Fusion branche multilinguisme dans branche principale
  | 
        
        
            | 
            | 
           1927 | 
           *
  | 
        
        
            | 
            | 
           1928 | 
           * Revision 1.25.2.2  2006/02/28 14:02:10  ddelon
  | 
        
        
            | 
            | 
           1929 | 
           * Finition multilinguisme
  | 
        
        
            | 
            | 
           1930 | 
           *
  | 
        
        
            | 
            | 
           1931 | 
           * Revision 1.25.2.1  2006/01/19 21:26:20  ddelon
  | 
        
        
            | 
            | 
           1932 | 
           * Multilinguisme site + bug ftp
  | 
        
        
            | 
            | 
           1933 | 
           *
  | 
        
        
            | 
            | 
           1934 | 
           * Revision 1.25  2005/10/17 13:48:59  jp_milcent
  | 
        
        
            | 
            | 
           1935 | 
           * Ajout d'un espace apr�s le texte "Derni�re modification par".
  | 
        
        
            | 
            | 
           1936 | 
           *
  | 
        
        
            | 
            | 
           1937 | 
           * Revision 1.24  2005/09/23 14:32:54  florian
  | 
        
        
            | 
            | 
           1938 | 
           * compatibilité XHTML + correction interface
  | 
        
        
            | 
            | 
           1939 | 
           *
  | 
        
        
            | 
            | 
           1940 | 
           * Revision 1.23  2005/09/20 17:01:22  ddelon
  | 
        
        
            | 
            | 
           1941 | 
           * php5 et bugs divers
  | 
        
        
            | 
            | 
           1942 | 
           *
  | 
        
        
            | 
            | 
           1943 | 
           * Revision 1.22  2005/05/27 16:06:16  jpm
  | 
        
        
            | 
            | 
           1944 | 
           * Gestion des infos sur l'admin modifiant les infos.
  | 
        
        
            | 
            | 
           1945 | 
           *
  | 
        
        
            | 
            | 
           1946 | 
           * Revision 1.21  2005/04/08 13:29:04  jpm
  | 
        
        
            | 
            | 
           1947 | 
           * Utiliation de r�f�rences.
  | 
        
        
            | 
            | 
           1948 | 
           * Correction du double & dans les urls du formulaire.
  | 
        
        
            | 
            | 
           1949 | 
           *
  | 
        
        
            | 
            | 
           1950 | 
           * Revision 1.20  2005/03/08 11:17:47  jpm
  | 
        
        
            | 
            | 
           1951 | 
           * Suppression de l'inclusion d'un fichier inutile.
  | 
        
        
            | 
            | 
           1952 | 
           *
  | 
        
        
            | 
            | 
           1953 | 
           * Revision 1.19  2005/02/28 11:07:00  jpm
  | 
        
        
            | 
            | 
           1954 | 
           * Modification des auteurs.
  | 
        
        
            | 
            | 
           1955 | 
           *
  | 
        
        
            | 
            | 
           1956 | 
           * Revision 1.18  2005/02/28 10:59:07  jpm
  | 
        
        
            | 
            | 
           1957 | 
           * Modification des commentaires et copyright.
  | 
        
        
            | 
            | 
           1958 | 
           *
  | 
        
        
            | 
            | 
           1959 | 
           * Revision 1.17  2005/02/17 17:51:11  florian
  | 
        
        
            | 
            | 
           1960 | 
           * Correction bug FTP
  | 
        
        
            | 
            | 
           1961 | 
           *
  | 
        
        
            | 
            | 
           1962 | 
           * Revision 1.16  2005/02/17 16:44:55  florian
  | 
        
        
            | 
            | 
           1963 | 
           * correction du bug sur les sites par d�faut
  | 
        
        
            | 
            | 
           1964 | 
           *
  | 
        
        
            | 
            | 
           1965 | 
           * Revision 1.15  2005/01/04 19:52:50  alex
  | 
        
        
            | 
            | 
           1966 | 
           * correction de bug de copie de r�pertoire r�cursif de PEAR.
  | 
        
        
            | 
            | 
           1967 | 
           *
  | 
        
        
            | 
            | 
           1968 | 
           * Revision 1.14  2004/12/03 19:22:53  jpm
  | 
        
        
            | 
            | 
           1969 | 
           * Gestion des types de sites externes g�r�s par Papyrus.
  | 
        
        
            | 
            | 
           1970 | 
           *
  | 
        
        
            | 
            | 
           1971 | 
           * Revision 1.13  2004/12/03 16:37:34  jpm
  | 
        
        
            | 
            | 
           1972 | 
           * Correction d'un bogue qui emp�cher la mise � jour des url des sites externes.
  | 
        
        
            | 
            | 
           1973 | 
           *
  | 
        
        
            | 
            | 
           1974 | 
           * Revision 1.12  2004/12/01 17:22:58  jpm
  | 
        
        
            | 
            | 
           1975 | 
           * Ajout d'une confirmation javascript pour la suppression d'un site.
  | 
        
        
            | 
            | 
           1976 | 
           *
  | 
        
        
            | 
            | 
           1977 | 
           * Revision 1.11  2004/11/30 16:43:51  jpm
  | 
        
        
            | 
            | 
           1978 | 
           * Correction de bogues.
  | 
        
        
            | 
            | 
           1979 | 
           *
  | 
        
        
            | 
            | 
           1980 | 
           * Revision 1.10  2004/11/29 17:05:28  jpm
  | 
        
        
            | 
            | 
           1981 | 
           * Correction d'un bogue concernat les cases � cocher.
  | 
        
        
            | 
            | 
           1982 | 
           *
  | 
        
        
            | 
            | 
           1983 | 
           * Revision 1.9  2004/11/26 13:13:51  jpm
  | 
        
        
            | 
            | 
           1984 | 
           * Mise en commentaire de variable pass�e dans un message d'erreur car elles semblent provoquer un bogue et ne sont pas obligatoire.
  | 
        
        
            | 
            | 
           1985 | 
           *
  | 
        
        
            | 
            | 
           1986 | 
           * Revision 1.8  2004/11/03 17:59:59  jpm
  | 
        
        
            | 
            | 
           1987 | 
           * Corrections bogues erreurs variable inconnue.
  | 
        
        
            | 
            | 
           1988 | 
           *
  | 
        
        
            | 
            | 
           1989 | 
           * Revision 1.7  2004/10/26 18:41:28  jpm
  | 
        
        
            | 
            | 
           1990 | 
           * Gestion des sites externes � Papyrus.
  | 
        
        
            | 
            | 
           1991 | 
           *
  | 
        
        
            | 
            | 
           1992 | 
           * Revision 1.6  2004/10/22 17:25:31  jpm
  | 
        
        
            | 
            | 
           1993 | 
           * Changement du nom de la class CSS d'erreur.
  | 
        
        
            | 
            | 
           1994 | 
           *
  | 
        
        
            | 
            | 
           1995 | 
           * Revision 1.5  2004/10/19 15:57:55  jpm
  | 
        
        
            | 
            | 
           1996 | 
           * Am�lioration de la gestion des fichiers sur le serveur.
  | 
        
        
            | 
            | 
           1997 | 
           * Ajout d'une contrainte pour �viter la suppression par erreur du site par d�faut.
  | 
        
        
            | 
            | 
           1998 | 
           *
  | 
        
        
            | 
            | 
           1999 | 
           * Revision 1.4  2004/10/18 18:27:41  jpm
  | 
        
        
            | 
            | 
           2000 | 
           * Correction probl�mes FTP et manipulation de fichiers.
  | 
        
        
            | 
            | 
           2001 | 
           *
  | 
        
        
            | 
            | 
           2002 | 
           * Revision 1.3  2004/09/23 16:51:27  jpm
  | 
        
        
            | 
            | 
           2003 | 
           * Ajout d'informations suppl�mentaires sur les messages d'erreur.
  | 
        
        
            | 
            | 
           2004 | 
           *
  | 
        
        
            | 
            | 
           2005 | 
           * Revision 1.2  2004/07/06 17:08:01  jpm
  | 
        
        
            | 
            | 
           2006 | 
           * Modification de la documentation pour une mailleur analyse par PhpDocumentor.
  | 
        
        
            | 
            | 
           2007 | 
           *
  | 
        
        
            | 
            | 
           2008 | 
           * Revision 1.1  2004/06/16 14:28:46  jpm
  | 
        
        
            | 
            | 
           2009 | 
           * Changement de nom de G�n�sia en Papyrus.
  | 
        
        
            | 
            | 
           2010 | 
           * Changement de l'arborescence.
  | 
        
        
            | 
            | 
           2011 | 
           *
  | 
        
        
            | 
            | 
           2012 | 
           * Revision 1.20  2004/05/10 14:32:14  jpm
  | 
        
        
            | 
            | 
           2013 | 
           * Changement du titre.
  | 
        
        
            | 
            | 
           2014 | 
           *
  | 
        
        
            | 
            | 
           2015 | 
           * Revision 1.19  2004/05/10 12:23:39  jpm
  | 
        
        
            | 
            | 
           2016 | 
           * Modification formulaire.
  | 
        
        
            | 
            | 
           2017 | 
           *
  | 
        
        
            | 
            | 
           2018 | 
           * Revision 1.18  2004/05/07 16:33:53  jpm
  | 
        
        
            | 
            | 
           2019 | 
           * Am�lioration des formulaires.
  | 
        
        
            | 
            | 
           2020 | 
           *
  | 
        
        
            | 
            | 
           2021 | 
           * Revision 1.17  2004/05/07 07:22:51  jpm
  | 
        
        
            | 
            | 
           2022 | 
           * Ajout de la gestion des modification et suppression de site.
  | 
        
        
            | 
            | 
           2023 | 
           * Am�lioration de la cr�ation des sites.
  | 
        
        
            | 
            | 
           2024 | 
           *
  | 
        
        
            | 
            | 
           2025 | 
           * Revision 1.16  2004/04/30 16:22:53  jpm
  | 
        
        
            | 
            | 
           2026 | 
           * Poursuite de l'administration des sites.
  | 
        
        
            | 
            | 
           2027 | 
           *
  | 
        
        
            | 
            | 
           2028 | 
           * Revision 1.14  2004/04/02 15:58:39  jpm
  | 
        
        
            | 
            | 
           2029 | 
           * Modification fonction liste des projets.
  | 
        
        
            | 
            | 
           2030 | 
           *
  | 
        
        
            | 
            | 
           2031 | 
           * Revision 1.13  2004/04/01 11:21:41  jpm
  | 
        
        
            | 
            | 
           2032 | 
           * Ajout et modification de commentaires pour PhpDocumentor.
  | 
        
        
            | 
            | 
           2033 | 
           *
  | 
        
        
            | 
            | 
           2034 | 
           * Revision 1.12  2004/03/24 20:01:02  jpm
  | 
        
        
            | 
            | 
           2035 | 
           * Traduction, mise en forme, ajout de commentaire pour les fonctions listProjects() et updateProject().
  | 
        
        
            | 
            | 
           2036 | 
           *
  | 
        
        
            | 
            | 
           2037 | 
           * Revision 1.11  2004/03/24 10:06:01  jpm
  | 
        
        
            | 
            | 
           2038 | 
           * Ajout des commentaires d'ent�te.
  | 
        
        
            | 
            | 
           2039 | 
           * D�but mise en conformit� avec la convention de codage.
  | 
        
        
            | 
            | 
           2040 | 
           * D�but traitement de la fonction listant les projets.
  | 
        
        
            | 
            | 
           2041 | 
           *
  | 
        
        
            | 
            | 
           2042 | 
           *
  | 
        
        
            | 
            | 
           2043 | 
           */
  | 
        
        
            | 
            | 
           2044 | 
           ?>
  |