Subversion Repositories Applications.papyrus

Rev

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

Rev 876 Rev 1033
Line 17... Line 17...
17
// |                                                                                                      |
17
// |                                                                                                      |
18
// | You should have received a copy of the GNU Lesser General Public                                     |
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                                  |
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                            |
20
// | Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA                            |
21
// +------------------------------------------------------------------------------------------------------+
21
// +------------------------------------------------------------------------------------------------------+
22
// CVS : $Id: afficheur.php,v 1.10 2006-06-29 15:12:26 ddelon Exp $
22
// CVS : $Id: afficheur.php,v 1.11 2006-10-16 15:49:07 ddelon Exp $
23
/**
23
/**
24
* Application réalisant l'affichage du contenu stocké dans Papyrus.
24
* Application réalisant l'affichage du contenu stocké dans Papyrus.
25
*
25
*
26
* Récupère le dernier contenu lié à un menu et le retourne.
26
* Récupère le dernier contenu lié à un menu et le retourne.
27
*
27
*
Line 29... Line 29...
29
//Auteur original :
29
//Auteur original :
30
*@author        Jean-Pascal MILCENT <jpm@tela-botanica.org>
30
*@author        Jean-Pascal MILCENT <jpm@tela-botanica.org>
31
//Autres auteurs :
31
//Autres auteurs :
32
*@author        Alexandre GRANIER <alexandrel@tela-botanica.org>
32
*@author        Alexandre GRANIER <alexandrel@tela-botanica.org>
33
*@copyright     Tela-Botanica 2000-2004
33
*@copyright     Tela-Botanica 2000-2004
34
*@version       $Revision: 1.10 $ $Date: 2006-06-29 15:12:26 $
34
*@version       $Revision: 1.11 $ $Date: 2006-10-16 15:49:07 $
35
// +------------------------------------------------------------------------------------------------------+
35
// +------------------------------------------------------------------------------------------------------+
36
*/
36
*/
Line 37... Line 37...
37
 
37
 
38
// +------------------------------------------------------------------------------------------------------+
38
// +------------------------------------------------------------------------------------------------------+
Line 54... Line 54...
54
function afficherContenuTete()
54
function afficherContenuTete()
55
{
55
{
56
    return '';
56
    return '';
57
}
57
}
Line -... Line 58...
-
 
58
 
-
 
59
function afficherContenuCorps() {
-
 
60
 
-
 
61
 
-
 
62
    $retour = '';
-
 
63
    
-
 
64
    $db=$GLOBALS['_AFFICHEUR']['objet_pear_db'];
-
 
65
 
-
 
66
	$id_or=GEN_rechercheMenuCode($db,GEN_rechercheMenuIdentifiant($db,$GLOBALS['_AFFICHEUR']['menu_courant_id']));
-
 
67
 
-
 
68
    $ligne_contenu=GEN_rechercheContenu($db,$id_or);
-
 
69
	        
-
 
70
	$contenu = $ligne_contenu->gmc_contenu;
-
 
71
	
-
 
72
	    // Inclusion de la bibliothèque Text_Wiki_Papyrus effectuées par Papyrus précédement
-
 
73
	    // Les actions Text_Wiki_Papyrus sont gérées par Papyrus
-
 
74
	    
-
 
75
	    // Nous regardons si nous avons à faire à un texte sous format Wikini ou XHTML
-
 
76
	    if (($ligne_contenu->gmc_ce_type_contenu == 1)||(substr($ligne_contenu->gmc_ce_type_contenu,-1)== 1)) {
-
 
77
	        $retour = $contenu;
-
 
78
	    } elseif (($ligne_contenu->gmc_ce_type_contenu == 2) || (substr($ligne_contenu->gmc_ce_type_contenu,-1)== 2)){
-
 
79
	        include_once AFFI_CHEMIN_BIBLIOTHEQUE_API.'text/wiki_wikini/Wikini.class.php';
-
 
80
	        // Création d'un objet Text_Wikini :
-
 
81
	        $wikini =& new Text_Wikini();
-
 
82
	        // Pour éviter de remplacer les caractères spéciaux du XHTML:
-
 
83
	        $wikini->setFormatConf('Xhtml', 'translate', false);
-
 
84
	        // Configuration de la règle Freelink :
-
 
85
	        $wikini->setRenderConf('Xhtml', 'freelink', 'pages', null);
-
 
86
	        $wikini->setRenderConf('Xhtml', 'freelink', 'view_url', AFFI_URL_PAPYRUS);
-
 
87
	        // Configuration de la règle Interwiki :
-
 
88
	        $wikini->setRenderConf('Xhtml', 'interwiki', 'sites', $GLOBALS['_AFFICHEUR']['interwiki_sites']);
-
 
89
	        // Application des règles de Wikini :
-
 
90
	        $retour = $wikini->transform($contenu, 'Xhtml');
-
 
91
	    }
-
 
92
 
-
 
93
  
-
 
94
    //----------------------------------------------------------------------------
-
 
95
    // Renvoie du contenu de la page
-
 
96
    return $retour;
-
 
97
}
-
 
98
	
-
 
99
 
58
 
100
 
59
/** Fonction afficherContenuCorps() - Fonction appelé par le gestionnaire Papyrus.
101
/** Fonction afficherContenuCorps() - Fonction appelé par le gestionnaire Papyrus.
60
*
102
*
61
* Elle retourne le contenu stocké dans Papyrus pour le menu courant demandé.
103
* Elle retourne le contenu stocké dans Papyrus pour le menu courant demandé.
62
*
104
*
63
* @return  string  du code XHTML correspondant au contenu du menu demandé.
105
* @return  string  du code XHTML correspondant au contenu du menu demandé.
64
*/
106
*/
65
function afficherContenuCorps()
107
function afficherContenuCorpsOld()
66
{
108
{
67
    //----------------------------------------------------------------------------
109
    //----------------------------------------------------------------------------
68
    // Initialisation des variable
110
    // Initialisation des variable
Line 103... Line 145...
103
                'AND gm_ce_i18n = "'.$langue_test.'" ';
145
                'AND gm_ce_i18n = "'.$langue_test.'" ';
Line 104... Line 146...
104
 
146
 
Line 105... Line 147...
105
	$resultat = $GLOBALS['_AFFICHEUR']['objet_pear_db']->query($requete);
147
	$resultat = $GLOBALS['_AFFICHEUR']['objet_pear_db']->query($requete);
106
	
-
 
107
	(DB::isError($resultat)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) : '';
148
	
Line 108... Line 149...
108
 
149
	(DB::isError($resultat)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) : '';
109
	if ( $resultat->numRows() > 0 ) {
150
	if ( $resultat->numRows() > 0 ) {
110
	
151
	
Line 111... Line 152...
111
			$ligne = $resultat->fetchRow(DB_FETCHMODE_OBJECT);
152
			$ligne = $resultat->fetchRow(DB_FETCHMODE_OBJECT);
112
	}
153
	}
113
	else {
154
	else {
114
	
155
	
115
	// Recherche defaut :
156
	// Recherche defaut :
116
	
157
 
Line 138... Line 179...
138
						$ligne=$resultat_defaut->fetchRow(DB_FETCHMODE_OBJECT);
179
						$ligne=$resultat_defaut->fetchRow(DB_FETCHMODE_OBJECT);
139
				}
180
				}
140
			}
181
			}
141
		}  
182
		}  
Line 142... Line 183...
142
 
183
 
143
	// Cas historique :
184
	// Cas historique : ce menu n'a jamais été traduit.
144
	$requete =  'SELECT gmc_contenu , gmc_ce_type_contenu '.
185
	$requete =  'SELECT gmc_contenu , gmc_ce_type_contenu '.
145
	                'FROM gen_menu_contenu  '.
186
	                'FROM gen_menu_contenu  '.
146
	                'WHERE gmc_ce_menu = '.$ligne->gm_id_menu.' '.
187
	                'WHERE gmc_ce_menu = '.$ligne->gm_id_menu.' '.
147
	                'AND gmc_ce_type_contenu in (1,2) '.
188
	                'AND gmc_ce_type_contenu in (1,2) '.
Line 154... Line 195...
154
	// Rien trouvé ? : Migration multilinguisme ou pas encore de contenu 
195
	// Rien trouvé ? : Migration multilinguisme ou pas encore de contenu 
Line 155... Line 196...
155
	
196
	
Line 156... Line 197...
156
	if ( $resultat->numRows() == 0 ) {
197
	if ( $resultat->numRows() == 0 ) {
Line 157... Line 198...
157
	
198
	
158
		
199
		
159
	    // Multilinguisme :
200
	    // Migration multilinguisme 
160
	     
201
	     
161
	    $requete =  'SELECT gmc_contenu , gmc_ce_type_contenu '.
202
	    $requete =  'SELECT gmc_contenu , gmc_ce_type_contenu '.
Line 162... Line 203...
162
	                'FROM gen_menu_contenu  '.
203
	                'FROM gen_menu_contenu  '.
163
	                'WHERE gmc_ce_menu = '.$ligne_menu['gm_code_num'].' '.
204
	                'WHERE gmc_ce_menu = '.$ligne_menu['gm_code_num'].' '.
Line 164... Line 205...
164
	                'AND truncate((gmc_ce_type_contenu/10),0) = '. $ligne->gm_id_menu . ' '.
205
	                'AND truncate((gmc_ce_type_contenu/10),0) = '. $ligne->gm_id_menu . ' '.
Line 165... Line 206...
165
	                'AND gmc_bool_dernier = 1';
206
	                'AND gmc_bool_dernier = 1';
-
 
207
	    
Line -... Line 208...
-
 
208
	    $resultat = $GLOBALS['_AFFICHEUR']['objet_pear_db']->query($requete);
-
 
209
	    (DB::isError($resultat)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) : '';
-
 
210
	
-
 
211
		// Pas de contenu, tentative de recuperation du contenu se 
-
 
212
			
-
 
213
		if ( $resultat->numRows() == 0 ) {
-
 
214
			
-
 
215
					
-
 
216
	
-
 
217
						    $requete =   'SELECT gmr_id_menu_02 as gm_id_menu , ' . $ligne->gm_code_num . ' as gm_code_num '.
-
 
218
				                            	'FROM  gen_menu_relation '.
-
 
219
				                            	'WHERE '.$ligne->gm_id_menu. ' = gmr_id_menu_01 ' .
-
 
220
				                            	'AND  gmr_id_valeur  = 105 ';// 105 Traduction par defaut
166
	    
221
				                            	
167
	    $resultat = $GLOBALS['_AFFICHEUR']['objet_pear_db']->query($requete);
222
							$resultat = $GLOBALS['_AFFICHEUR']['objet_pear_db']->query($requete);
168
	    (DB::isError($resultat)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) : '';
223
							
169
	
224
				                            	
170
		// Pas de contenu, tentative de recuperation contenu initial
225
							(DB::isError($resultat))             ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete))
171
			
226
							: '';
Line 172... Line 227...
172
		if ( $resultat->numRows() == 0 ) {
227
 
173
					
228
						
174
					    $requete =  'SELECT gmc_contenu , gmc_ce_type_contenu '.
229
					    $requete =  'SELECT gmc_contenu , gmc_ce_type_contenu '.
-
 
230
		                'FROM gen_menu_contenu, gen_menu_relation '.
-
 
231
		                'WHERE truncate((gmc_ce_type_contenu/10),0) = gmr_id_menu_01 '.
-
 
232
		                'AND '.$ligne->gm_id_menu.' = gmr_id_menu_02 '.
-
 
233
		                'AND gmr_id_valeur = 2 '.
-
 
234
		                'AND gmc_bool_dernier = 1';
-
 
235
 
-
 
236
					    $resultat = $GLOBALS['_AFFICHEUR']['objet_pear_db']->query($requete);
-
 
237
					    (DB::isError($resultat)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) : '';
-
 
238
 
-
 
239
/*   
-
 
240
	
-
 
241
						    $requete =   'SELECT gmr_id_menu_02 as gm_id_menu , ' . $ligne->gm_code_num . ' as gm_code_num '.
-
 
242
				                            	'FROM  gen_menu_relation '.
-
 
243
				                            	'WHERE '.$ligne->gm_id_menu. ' = gmr_id_menu_01 ' .
Line 175... Line 244...
175
					                'FROM gen_menu_contenu, gen_menu_relation '.
244
				                            	'AND  gmr_id_valeur  = 105 ';// 105 Traduction par defaut
176
					                'WHERE truncate((gmc_ce_type_contenu/10),0) = gmr_id_menu_01 '.
245
				                            	
Line 177... Line 246...
177
					                'AND '.$ligne->gm_id_menu.' = gmr_id_menu_02 '.
246
							$resultat = $GLOBALS['_AFFICHEUR']['objet_pear_db']->query($requete);
Line 246... Line 315...
246
 
315
 
247
 
316
 
248
/* +--Fin du code ----------------------------------------------------------------------------------------+
317
/* +--Fin du code ----------------------------------------------------------------------------------------+
-
 
318
*
-
 
319
* $Log: not supported by cvs2svn $
-
 
320
* Revision 1.10  2006/06/29 15:12:26  ddelon
249
*
321
* Multilinguisme : contenu par defaut
250
* $Log: not supported by cvs2svn $
322
*
251
* Revision 1.9  2006/03/27 10:50:24  ddelon
323
* Revision 1.9  2006/03/27 10:50:24  ddelon
252
* Still some pb
324
* Still some pb
253
*
325
*