Subversion Repositories Applications.papyrus

Rev

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

Rev 198 Rev 201
Line 18... Line 18...
18
// |                                                                                                      |
18
// |                                                                                                      |
19
// | You should have received a copy of the GNU Lesser General Public                                     |
19
// | You should have received a copy of the GNU Lesser General Public                                     |
20
// | License along with this library; if not, write to the Free Software                                  |
20
// | License along with this library; if not, write to the Free Software                                  |
21
// | Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA                            |
21
// | Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA                            |
22
// +------------------------------------------------------------------------------------------------------+
22
// +------------------------------------------------------------------------------------------------------+
23
// CVS : $Id: adsi_site.fonct.php,v 1.12 2004-12-01 17:22:58 jpm Exp $
23
// CVS : $Id: adsi_site.fonct.php,v 1.13 2004-12-03 16:37:34 jpm Exp $
24
/**
24
/**
25
* Bibliothèque de fonctions d'admininistration des projets
25
* Bibliothèque de fonctions d'admininistration des projets
26
*
26
*
27
* Contient un ensemble de fonctions permettant à l'application Administrateur de Papyrus, de modifier des informations
27
* Contient un ensemble de fonctions permettant à l'application Administrateur de Papyrus, de modifier des informations
28
* sur les projets (=sites gérés par Papyrus).
28
* sur les projets (=sites gérés par Papyrus).
Line 33... Line 33...
33
*@author        Laurent COUDOUNEAU <lc@gsite.org>
33
*@author        Laurent COUDOUNEAU <lc@gsite.org>
34
//Autres auteurs :
34
//Autres auteurs :
35
*@author        Alexandre GRANIER <alexandre@tela-botanica.org>
35
*@author        Alexandre GRANIER <alexandre@tela-botanica.org>
36
*@author        Jean-Pascal MILCENT <jpm@tela-botanica.org>
36
*@author        Jean-Pascal MILCENT <jpm@tela-botanica.org>
37
*@copyright     Tela-Botanica 2000-2004
37
*@copyright     Tela-Botanica 2000-2004
38
*@version       $Revision: 1.12 $ $Date: 2004-12-01 17:22:58 $
38
*@version       $Revision: 1.13 $ $Date: 2004-12-03 16:37:34 $
39
// +------------------------------------------------------------------------------------------------------+
39
// +------------------------------------------------------------------------------------------------------+
40
*/
40
*/
Line 41... Line 41...
41
 
41
 
42
// +------------------------------------------------------------------------------------------------------+
42
// +------------------------------------------------------------------------------------------------------+
Line 193... Line 193...
193
                        'WHERE gsr_id_site_01 = '.$site_id;
193
                        'WHERE gsr_id_site_01 = '.$site_id;
194
        $resultat = $db->query($requete);
194
        $resultat = $db->query($requete);
195
        if (DB::isError($resultat)) {
195
        if (DB::isError($resultat)) {
196
            die( BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete) );
196
            die( BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete) );
197
        }
197
        }
198
        $aso_valeurs['defaut'] = false;
198
        $aso_valeurs['defaut'] = 0;
199
        $aso_valeurs['externe'] = false;
199
        $aso_valeurs['externe'] = 0;
200
        while ($ligne = $resultat->fetchRow(DB_FETCHMODE_OBJECT) ) {
200
        while ($ligne = $resultat->fetchRow(DB_FETCHMODE_OBJECT) ) {
201
            if ($ligne->gsr_id_valeur == 101) {// 101 = site par défaut
201
            if ($ligne->gsr_id_valeur == 101) {// 101 = site par défaut
202
                $aso_valeurs['defaut'] = true;
202
                $aso_valeurs['defaut'] = true;
203
            }
203
            }
204
            if ($ligne->gsr_id_valeur == 103) {// 103 = site externe à Papyrus
204
            if ($ligne->gsr_id_valeur == 103) {// 103 = site externe à Papyrus
Line 331... Line 331...
331
                    $aso_options[$tab_squelettes[$i]['name']] = $tab_squelettes[$i]['name'];
331
                    $aso_options[$tab_squelettes[$i]['name']] = $tab_squelettes[$i]['name'];
332
                }
332
                }
333
            }
333
            }
334
            $objet_pear_ftp->disconnect();
334
            $objet_pear_ftp->disconnect();
335
        }
335
        }
-
 
336
        
-
 
337
        // Vérification de la présence de squelettes
-
 
338
        if (count($aso_options) == 0) {
-
 
339
            $aso_options['Aucun squelette'] = 'Aucun squelette';
-
 
340
        }
-
 
341
        
336
        $id = 'gs_fichier_squelette';
342
        $id = 'gs_fichier_squelette';
337
        $aso_attributs = array('id'=> $id, 'tabindex' => $tab_index++);
343
        $aso_attributs = array('id'=> $id, 'tabindex' => $tab_index++);
338
        $label = '<label for="'.$id.'">'.'Squelette : '.'</label>';
344
        $label = '<label for="'.$id.'">'.'Squelette : '.'</label>';
339
        $form->addElement('select', $id, $label, $aso_options, $aso_attributs);
345
        $form->addElement('select', $id, $label, $aso_options, $aso_attributs);
340
    }
346
    }
Line 350... Line 356...
350
    while ($ligne = $resultat->fetchRow(DB_FETCHMODE_OBJECT) ) {
356
    while ($ligne = $resultat->fetchRow(DB_FETCHMODE_OBJECT) ) {
351
        $aso_options[$ligne->gi_id_i18n] = $ligne->gi_id_i18n;
357
        $aso_options[$ligne->gi_id_i18n] = $ligne->gi_id_i18n;
352
    }
358
    }
353
    $resultat->free();
359
    $resultat->free();
354
    $id = 'gs_ce_i18n';
360
    $id = 'gs_ce_i18n';
355
    $aso_attributs = array('id'=> $id, 'tabindex' => $tab_index++);
361
    $aso_attributs = array('id' => $id, 'tabindex' => $tab_index++);
356
    $label = '<label for="'.$id.'">'.'Langue : '.'</label>';
362
    $label = '<label for="'.$id.'">'.'Langue : '.'</label>';
357
    $form->addElement('select', $id, $label, $aso_options, $aso_attributs);
363
    $form->addElement('select', $id, $label, $aso_options, $aso_attributs);
Line 358... Line 364...
358
    
364
    
359
    $id = 'defaut';
365
    $id = 'defaut';
360
    $aso_attributs = array('id'=>$id, 'tabindex' => $tab_index++);
366
    $aso_attributs = array('id' => $id, 'tabindex' => $tab_index++);
361
    if ($aso_valeurs[$id] === true) {
367
    if ($aso_valeurs[$id] === true) {
362
        $aso_attributs['checked'] = 'checked';
368
        $aso_attributs['checked'] = 'checked';
363
    }
369
    }
364
    $label = '<label for="'.$id.'">'.'En faire le site par défaut : '.'</label>';
370
    $label = '<label for="'.$id.'">'.'En faire le site par défaut : '.'</label>';
Line 365... Line 371...
365
    $form->addElement('checkbox', $id, $label, '', $aso_attributs);
371
    $form->addElement('checkbox', $id, $label, null, $aso_attributs);
366
    
372
    
367
    // Groupe site externe
373
    // Groupe site externe
368
    $id = 'externe';
374
    $id = 'externe';
369
    $aso_attributs = array('id'=>$id, 'tabindex' => $tab_index++);
375
    $aso_attributs = array('id' => $id, 'tabindex' => $tab_index++);
370
    if ($aso_valeurs[$id] === true) {
376
    if ($aso_valeurs[$id] === true) {
371
        $aso_attributs['checked'] = 'checked';
377
        $aso_attributs['checked'] = 'checked';
372
    }
378
    }
Line 373... Line 379...
373
    $label = 'oui : ';// Les navigateurs gères mal les labels au sein d'un même <li>
379
    $label = 'oui : ';// Les navigateurs gèrent mal les labels au sein d'un même <li>
374
    $groupe[] =& HTML_QuickForm::createElement('checkbox', $id, $label, '', $aso_attributs);
380
    $groupe[] =& HTML_QuickForm::createElement('checkbox', $id, $label, null, $aso_attributs);
375
    
381
    
376
    $id = 'gs_url';
382
    $id = 'gs_url';
Line 377... Line 383...
377
    $aso_attributs = array('id'=>$id, 'tabindex' => $tab_index++,'size' => 45, 'maxlength' => 255, 'value' => 'http://');
383
    $aso_attributs = array('id' => $id, 'tabindex' => $tab_index++,'size' => 45, 'maxlength' => 255, 'value' => 'http://');
378
    $label = 'url externe : ';// Les navigateurs gères mal les labels au sein d'un même <li>
384
    $label = 'url externe : ';// Les navigateurs gères mal les labels au sein d'un même <li>
Line 782... Line 788...
782
        die( BOG_afficherErreurSql(__FILE__, __LINE__, $ancien_code_alphnum->getMessage(), $requete) );
788
        die( BOG_afficherErreurSql(__FILE__, __LINE__, $ancien_code_alphnum->getMessage(), $requete) );
783
    }
789
    }
Line 784... Line 790...
784
    
790
    
785
    // Nous vérifions si nous avons à faire à un site externe.
791
    // Nous vérifions si nous avons à faire à un site externe.
786
    $id_type_site = '102';// par défaut on conscidére que c'est un site "principal"
792
    $id_type_site = '102';// par défaut on conscidére que c'est un site "principal"
787
    $requete_complement = ', gs_url = NULL';
793
    $requete_complement = ', gs_url = NULL ';
788
    if (isset($aso_valeurs['externe']) && $aso_valeurs['externe'] == 1 && !empty($aso_valeurs['gs_url']) && $aso_valeurs['gs_url'] != 'http://') {
794
    if (isset($aso_valeurs['externe']) && $aso_valeurs['externe'] == 1 && !empty($aso_valeurs['gs_url']) && $aso_valeurs['gs_url'] != 'http://') {
789
        $requete_complement = ', gs_url = "'.$aso_valeurs['gs_url'].'"';
795
        $requete_complement = ', gs_url = "'.$aso_valeurs['gs_url'].'" ';
790
        $id_type_site = '103';// c'est un site "externe"
796
        $id_type_site = '103';// c'est un site "externe"
Line 791... Line 797...
791
    }
797
    }
792
    
798
    
Line 867... Line 873...
867
                'gs_mots_cles = "'.$aso_valeurs['gs_mots_cles'].'", '.
873
                'gs_mots_cles = "'.$aso_valeurs['gs_mots_cles'].'", '.
868
                'gs_description = "'.$aso_valeurs['gs_description'].'", '.
874
                'gs_description = "'.$aso_valeurs['gs_description'].'", '.
869
                'gs_auteur = "'.$aso_valeurs['gs_auteur'].'", '.
875
                'gs_auteur = "'.$aso_valeurs['gs_auteur'].'", '.
870
                'gs_date_creation = "'.date('Y-m-d H:i:s').'", '.
876
                'gs_date_creation = "'.date('Y-m-d H:i:s').'", '.
871
                'gs_ce_admin = '.$id_admin.' '.
877
                'gs_ce_admin = '.$id_admin.' '.
-
 
878
                $requete_complement.
872
                'WHERE gs_id_site = '.$aso_valeurs['gs_id_site'];
879
                'WHERE gs_id_site = '.$aso_valeurs['gs_id_site'];
873
    $resultat = $db->query($requete) ;
880
    $resultat = $db->query($requete) ;
874
    if (DB::isError($resultat)) {
881
    if (DB::isError($resultat)) {
875
        die( BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete) );
882
        die( BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete) );
876
    }
883
    }
Line 900... Line 907...
900
            $message_complement =   'Le site "principal" a été transformé en site "externe". Si nécessaire, veuillez '.
907
            $message_complement =   'Le site "principal" a été transformé en site "externe". Si nécessaire, veuillez '.
901
                                    'supprimer manuellement par FTP, le dossier contenant les fichiers de ce site sur '.
908
                                    'supprimer manuellement par FTP, le dossier contenant les fichiers de ce site sur '.
902
                                    'le serveur!';
909
                                    'le serveur!';
903
        }
910
        }
Line -... Line 911...
-
 
911
        
-
 
912
        // Vérification pour voir si le site est déjà "externe"
-
 
913
        $requete =  'SELECT COUNT(gsr_id_site_01) AS nbre_relation '.
-
 
914
                    'FROM gen_site_relation '.
-
 
915
                    'WHERE gsr_id_site_01 = gsr_id_site_02 '.
-
 
916
                    'AND gsr_id_site_01 = '.$aso_valeurs['gs_id_site'].' '.
-
 
917
                    'AND gsr_id_valeur = 103 ';// 103 = site "externe"
-
 
918
        $nbre_relation = $db->getOne($requete);
-
 
919
        if (DB::isError($nbre_relation)) {
-
 
920
            die( BOG_afficherErreurSql(__FILE__, __LINE__, $nbre_relation->getMessage(), $requete) );
-
 
921
        }
904
        
922
        if ($nbre_relation == 0) {
905
        // Requete d'insertion de la relations site "externe"
923
            // Requete d'insertion de la relations site "externe"
906
        $requete =  'INSERT INTO gen_site_relation '.
924
            $requete =  'INSERT INTO gen_site_relation '.
907
                    'SET gsr_id_site_01 = '.$id_site.', '.
925
                        'SET gsr_id_site_01 = '.$aso_valeurs['gs_id_site'].', '.
908
                    'gsr_id_site_02 = '.$id_site.', '.
926
                        'gsr_id_site_02 = '.$aso_valeurs['gs_id_site'].', '.
909
                    'gsr_id_valeur = '.$id_type_site.', '.
927
                        'gsr_id_valeur = '.$id_type_site.', '.
910
                    'gsr_ordre = NULL ';
928
                        'gsr_ordre = NULL ';
911
        $resultat = $db->query($requete);
929
            $resultat = $db->query($requete);
912
        if (DB::isError($resultat)) {
930
            if (DB::isError($resultat)) {
-
 
931
                die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete));
913
            die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete));
932
            }
914
        }
933
        }
Line 915... Line 934...
915
    }
934
    }
916
    
935
    
Line 1098... Line 1117...
1098
}
1117
}
Line 1099... Line 1118...
1099
 
1118
 
1100
// +- Fin du code source  --------------------------------------------------------------------------------+
1119
// +- Fin du code source  --------------------------------------------------------------------------------+
1101
/*
1120
/*
-
 
1121
* $Log: not supported by cvs2svn $
-
 
1122
* Revision 1.12  2004/12/01 17:22:58  jpm
-
 
1123
* Ajout d'une confirmation javascript pour la suppression d'un site.
1102
* $Log: not supported by cvs2svn $
1124
*
1103
* Revision 1.11  2004/11/30 16:43:51  jpm
1125
* Revision 1.11  2004/11/30 16:43:51  jpm
1104
* Correction de bogues.
1126
* Correction de bogues.
1105
*
1127
*
1106
* Revision 1.10  2004/11/29 17:05:28  jpm
1128
* Revision 1.10  2004/11/29 17:05:28  jpm