Subversion Repositories Applications.papyrus

Rev

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

Rev 422 Rev 754
Line 30... Line 30...
30
 
30
 
31
// Le fait que vous puissiez accéder à cet en-tête signifie que vous avez 
31
// Le fait que vous puissiez accéder à cet en-tête signifie que vous avez 
32
// pris connaissance de la licence CeCILL, et que vous en avez accepté les
32
// pris connaissance de la licence CeCILL, et que vous en avez accepté les
33
// termes.
33
// termes.
34
// ----
34
// ----
35
// CVS : $Id: adme_general.fonct.php,v 1.11 2005-07-18 16:14:32 ddelon Exp $
35
// CVS : $Id: adme_general.fonct.php,v 1.12 2006-03-02 10:49:49 ddelon Exp $
36
/**
36
/**
37
* Contient l'affichage par défaut de l'appli quand aucune actin
37
* Contient l'affichage par défaut de l'appli quand aucune actin
38
*
38
*
39
* Ce fichier contient les fonctions d'affichage commune à toute l'application Admin Menu.
39
* Ce fichier contient les fonctions d'affichage commune à toute l'application Admin Menu.
Line 44... Line 44...
44
//Auteur original :
44
//Auteur original :
45
*@author        Jean-Pascal MILCENT <jpm@tela-botanica.org>
45
*@author        Jean-Pascal MILCENT <jpm@tela-botanica.org>
46
//Autres auteurs :
46
//Autres auteurs :
47
*@author        Aucun
47
*@author        Aucun
48
*@copyright     Tela-Botanica 2000-2004
48
*@copyright     Tela-Botanica 2000-2004
49
*@version       $Revision: 1.11 $ $Date: 2005-07-18 16:14:32 $
49
*@version       $Revision: 1.12 $ $Date: 2006-03-02 10:49:49 $
50
// +------------------------------------------------------------------------------------------------------+
50
// +------------------------------------------------------------------------------------------------------+
51
*/
51
*/
Line 52... Line 52...
52
 
52
 
53
// +------------------------------------------------------------------------------------------------------+
53
// +------------------------------------------------------------------------------------------------------+
Line 66... Line 66...
66
* @param  object objet Pear représentant l'url de base.
66
* @param  object objet Pear représentant l'url de base.
67
* @return string le XHTML par défaut de la page.
67
* @return string le XHTML par défaut de la page.
68
*/
68
*/
69
function ADME_afficherFormPrincipal($objet_pear_db, $objet_pear_url, $adme_site_id, $adme_menu_id, $adme_action)
69
function ADME_afficherFormPrincipal($objet_pear_db, $objet_pear_url, $adme_site_id, $adme_menu_id, $adme_action)
70
{
70
{
-
 
71
	
-
 
72
	$id_langue = $_GEN_commun['i18n'];//identifiant de la langue choisie
-
 
73
	
71
    //---------------------------------------------------------------------------------------------------------------
74
    //---------------------------------------------------------------------------------------------------------------
72
    // Nous affichons la liste des menus classiques et communs
75
    // Nous affichons la liste des menus classiques et communs
73
    $retour = '';
76
    $retour = '';
-
 
77
 
-
 
78
	if (isset($id_langue) && ($id_langue!='')) {
-
 
79
		$langue_test=$id_langue;
-
 
80
	} else {
74
    // Liste des sites principaux
81
		$langue_test=GEN_I18N_ID_DEFAUT;
-
 
82
	}
-
 
83
    
75
    $requete =  'SELECT gs_id_site, gs_code_alpha, gs_nom '.
84
    $requete =  'SELECT gs_id_site, gs_code_num, gs_code_alpha, gs_nom, gs_ce_i18n '.
76
                'FROM gen_site, gen_site_relation '.
85
                'FROM gen_site, gen_site_relation '.
77
                'WHERE gsr_id_site_01 = gsr_id_site_02 '.
86
                'WHERE gsr_id_site_01 = gsr_id_site_02 '.
-
 
87
                'AND gs_id_site = gsr_id_site_01 '.
78
                'AND gsr_id_valeur = 102 '.// 102 = site "principal"
88
                'AND gsr_id_valeur = 102 '.// 102 = site "principal"
79
                'AND gsr_id_site_01 = gs_id_site '.
89
                'AND gs_ce_i18n = "'.$langue_test.'" '.
80
                'ORDER BY gsr_ordre DESC';
90
                'ORDER BY gsr_ordre DESC';
81
    
91
                
82
    $resultat = $objet_pear_db->query($requete);
92
    $resultat = $objet_pear_db->query($requete);
83
    (DB::isError($resultat)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) : '' ;
93
    (DB::isError($resultat)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) : '';
-
 
94
    
-
 
95
    $liste_site=array();
-
 
96
    
-
 
97
    while ($ligne = $resultat->fetchRow(DB_FETCHMODE_OBJECT)) {
-
 
98
    	         // Si le site trouvé est une traduction vers la langue principale, on ne le selectionne pas
-
 
99
    			if ($langue_test == GEN_I18N_ID_DEFAUT) {
-
 
100
    		  		$requete_est_traduction =   'SELECT gsr_id_site_01 '.
-
 
101
	                       'FROM  gen_site_relation '.
-
 
102
	                       'WHERE '.$ligne->gs_id_site.' = gsr_id_site_02 ' .
-
 
103
	                  	   'AND  gsr_id_site_01 <> gsr_id_site_02 ' .
-
 
104
	                       'AND gsr_id_valeur = 1 ';// 1 = "avoir traduction"
-
 
105
	                                
-
 
106
		            $resultat_est_traduction = $objet_pear_db->query($requete_est_traduction);
-
 
107
		            (DB::isError($resultat_est_traduction))
-
 
108
		                ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat_est_traduction->getMessage(), $requete_est_traduction))
-
 
109
		                : '';
-
 
110
		                
-
 
111
		   			if ( $resultat_est_traduction->numRows() == 0 ) {
-
 
112
	    	 			$liste_site[]=$ligne;
-
 
113
		            }
-
 
114
    			}
-
 
115
    			else {
-
 
116
    				$liste_site[]=$ligne;
-
 
117
    			}
-
 
118
    }
-
 
119
    
-
 
120
    $resultat->free();
Line -... Line 121...
-
 
121
    
-
 
122
    
-
 
123
    
-
 
124
    // On recherche l'ensemble des site en excluant le site admin (administration de Papyrus).
-
 
125
 
-
 
126
	if ($langue_test != GEN_I18N_ID_DEFAUT) {
-
 
127
    
-
 
128
    
-
 
129
    // Site ayant commme langue, la langue par defaut 
-
 
130
	    $requete =  'SELECT gs_id_site, gs_code_num, gs_code_alpha, gs_nom, gs_ce_i18n '.
-
 
131
	                'FROM gen_site, gen_site_relation '.
-
 
132
	                'WHERE gsr_id_site_01 = gsr_id_site_02 '.
-
 
133
	                'AND gs_id_site = gsr_id_site_01 '.
-
 
134
	                'AND gsr_id_valeur = 102 '.// 102 = site "principal"
-
 
135
	                'AND gs_ce_i18n = "'.GEN_I18N_ID_DEFAUT.'" '.
-
 
136
	                'ORDER BY gsr_ordre DESC';
-
 
137
	                
-
 
138
	    $resultat = $objet_pear_db->query($requete);
-
 
139
	    (DB::isError($resultat)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) : '';
-
 
140
	    
-
 
141
	    // Est il traduit ? Non, alors affichage 
-
 
142
	    
-
 
143
	    while ($ligne = $resultat->fetchRow(DB_FETCHMODE_OBJECT)) {
-
 
144
	    	
-
 
145
				if (isset($id_langue) && ($id_langue!='')) {
-
 
146
					$langue_test=$id_langue;
-
 
147
				} else {
-
 
148
					$langue_test=GEN_I18N_ID_DEFAUT;
-
 
149
				}
-
 
150
			    
-
 
151
	    				$requete_est_traduction =   'SELECT gsr_id_site_01 '.
-
 
152
	                                'FROM  gen_site_relation '.
-
 
153
	                                'WHERE '.$ligne->gs_id_site.' = gsr_id_site_02 ' .
-
 
154
	                                'AND  gsr_id_site_01 <> gsr_id_site_02 ' .
-
 
155
	                                'AND gsr_id_valeur = 1 ';// 1 = "avoir traduction"
-
 
156
	                                
-
 
157
	                                
-
 
158
	            $resultat_est_traduction = $objet_pear_db->query($requete_est_traduction);
-
 
159
	            (DB::isError($resultat_est_traduction))
-
 
160
	                ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat_est_traduction->getMessage(), $requete_est_traduction))
-
 
161
	                : '';
-
 
162
	                
-
 
163
	            if ( $resultat_est_traduction->numRows() == 0 ) {
-
 
164
	    
-
 
165
			    
-
 
166
			    	
-
 
167
		    		$requete_traduction =   'SELECT gsr_id_site_01 '.
-
 
168
		                                    'FROM  gen_site_relation, gen_site '.
-
 
169
		                                    'WHERE '.$ligne->gs_id_site.' = gsr_id_site_01 ' .
-
 
170
		                                    'AND gsr_id_site_02 = gs_id_site '.
-
 
171
		                                    'AND gs_ce_i18n = "'.$langue_test.'" '.
-
 
172
		                                    'AND gsr_id_valeur = 1 ';// 1 = "avoir traduction"
-
 
173
		                                    
-
 
174
		            $resultat_traduction = $objet_pear_db->query($requete_traduction);
-
 
175
		            (DB::isError($resultat_traduction))
-
 
176
		                ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat_traduction->getMessage(), $requete_traduction))
-
 
177
		                : '';
-
 
178
		                
-
 
179
		            if ( $resultat_traduction->numRows() == 0 ) {
-
 
180
		            	$liste_site []=$ligne;
-
 
181
		            }
-
 
182
		            
-
 
183
		            $resultat_traduction->free();
-
 
184
	            }
-
 
185
		    
-
 
186
	    }
-
 
187
	    $resultat->free();
-
 
188
	}
84
    
189
      
85
    //---------------------------------------------------------------------------------------------------------------
190
    //---------------------------------------------------------------------------------------------------------------
86
    // Création du formulaire
191
    // Création du formulaire
87
    // Notes : Quickform semble remplacer les & des &amp; à nouveau par des &amp; solution utiliser str_replace()...
192
    // Notes : Quickform semble remplacer les & des &amp; à nouveau par des &amp; solution utiliser str_replace()...
88
    $form =& new HTML_QuickForm('adme_form_sites', 'post', str_replace('&amp;', '&', $objet_pear_url->getUrl()));
193
    $form =& new HTML_QuickForm('adme_form_sites', 'post', str_replace('&amp;', '&', $objet_pear_url->getUrl()));
Line 98... Line 203...
98
    $id = 'adme_site_id';
203
    $id = 'adme_site_id';
99
    $aso_attributs = array('id'=> $id, 'tabindex' => $tab_index++, 'onchange' => 'javascript:this.form.submit();');
204
    $aso_attributs = array('id'=> $id, 'tabindex' => $tab_index++, 'onchange' => 'javascript:this.form.submit();');
100
    $label = '<label for="'.$id.'">'.ADME_LG_FORM_SITE_CHOIX.'</label>';
205
    $label = '<label for="'.$id.'">'.ADME_LG_FORM_SITE_CHOIX.'</label>';
101
    $objet_select = new HTML_QuickForm_select($id, $label, '', $aso_attributs);
206
    $objet_select = new HTML_QuickForm_select($id, $label, '', $aso_attributs);
102
    $aso_options = array();
207
    $aso_options = array();
103
    while ($ligne = $resultat->fetchRow(DB_FETCHMODE_OBJECT)) {
208
    foreach ($liste_site as $ligne ) {
104
        if (!isset($adme_site_id) || $adme_site_id == 0) {
209
        if (!isset($adme_site_id) || $adme_site_id == 0) {
105
            $adme_site_id = $ligne->gs_id_site;
210
            $adme_site_id = $ligne->gs_id_site;
106
        }
211
        }
107
        if ($ligne->gs_id_site == $adme_site_id) {
212
        if ($ligne->gs_id_site == $adme_site_id) {
108
            $objet_select->addOption(htmlentities($ligne->gs_nom.' ('.$ligne->gs_code_alpha.')'), $ligne->gs_id_site, 'selected="selected"');
213
            $objet_select->addOption(htmlentities($ligne->gs_nom.' ('.$ligne->gs_code_alpha.')'), $ligne->gs_id_site, 'selected="selected"');
Line 164... Line 269...
164
 
269
 
165
 
270
 
166
/* +--Fin du code ----------------------------------------------------------------------------------------+
271
/* +--Fin du code ----------------------------------------------------------------------------------------+
-
 
272
*
-
 
273
* $Log: not supported by cvs2svn $
-
 
274
* Revision 1.11.2.1  2006/02/28 14:02:11  ddelon
-
 
275
* Finition multilinguisme
-
 
276
*
-
 
277
* Revision 1.11  2005/07/18 16:14:32  ddelon
167
*
278
* css admin + menu communs
168
* $Log: not supported by cvs2svn $
279
*
169
* Revision 1.10  2005/07/08 21:57:24  ddelon
280
* Revision 1.10  2005/07/08 21:57:24  ddelon
170
* Copyright
281
* Copyright
171
*
282
*