Completed
Push — master ( 3a7980...c8fa57 )
by cam
04:18
created
prive/images/index.php 1 patch
Indentation   +7 added lines, -7 removed lines patch added patch discarded remove patch
@@ -9,13 +9,13 @@
 block discarded – undo
9 9
 	<h1>Index des icones de <a href='https://www.spip.net'>Spip</a></h1>
10 10
 	<table>
11 11
 		<?php
12
-		$myDir = opendir('.');
13
-		while ($file = readdir($myDir)) {
14
-			if (preg_match(',\.(png|gif)$,i', $file)) {
15
-				echo "		<tr><td>$file</td><td><img src='$file' alt='$file' /></td></tr>\n";
16
-			}
17
-		}
18
-		?>
12
+        $myDir = opendir('.');
13
+        while ($file = readdir($myDir)) {
14
+            if (preg_match(',\.(png|gif)$,i', $file)) {
15
+                echo "		<tr><td>$file</td><td><img src='$file' alt='$file' /></td></tr>\n";
16
+            }
17
+        }
18
+        ?>
19 19
 	</table>
20 20
 </center>
21 21
 </body>
Please login to merge, or discard this patch.
ecrire/req/sqlite3.php 1 patch
Indentation   +8 added lines, -8 removed lines patch added patch discarded remove patch
@@ -11,7 +11,7 @@  discard block
 block discarded – undo
11 11
 \***************************************************************************/
12 12
 
13 13
 if (!defined('_ECRIRE_INC_VERSION')) {
14
-	return;
14
+    return;
15 15
 }
16 16
 
17 17
 
@@ -22,19 +22,19 @@  discard block
 block discarded – undo
22 22
 
23 23
 // https://code.spip.net/@req_sqlite3_dist
24 24
 function req_sqlite3_dist($addr, $port, $login, $pass, $db = '', $prefixe = '') {
25
-	return req_sqlite_dist($addr, $port, $login, $pass, $db, $prefixe, $sqlite_version = 3);
25
+    return req_sqlite_dist($addr, $port, $login, $pass, $db, $prefixe, $sqlite_version = 3);
26 26
 }
27 27
 
28 28
 
29 29
 // https://code.spip.net/@spip_sqlite3_constantes
30 30
 function spip_sqlite3_constantes() {
31
-	if (!defined('SPIP_SQLITE3_ASSOC')) {
32
-		define('SPIP_SQLITE3_ASSOC', PDO::FETCH_ASSOC);
33
-		define('SPIP_SQLITE3_NUM', PDO::FETCH_NUM);
34
-		define('SPIP_SQLITE3_BOTH', PDO::FETCH_BOTH);
35
-	}
31
+    if (!defined('SPIP_SQLITE3_ASSOC')) {
32
+        define('SPIP_SQLITE3_ASSOC', PDO::FETCH_ASSOC);
33
+        define('SPIP_SQLITE3_NUM', PDO::FETCH_NUM);
34
+        define('SPIP_SQLITE3_BOTH', PDO::FETCH_BOTH);
35
+    }
36 36
 }
37 37
 
38 38
 function spip_versions_sqlite3() {
39
-	return _sqlite_charger_version(3) ? 3 : false;
39
+    return _sqlite_charger_version(3) ? 3 : false;
40 40
 }
Please login to merge, or discard this patch.
ecrire/inc/presentation_mini.php 2 patches
Indentation   +129 added lines, -129 removed lines patch added patch discarded remove patch
@@ -16,7 +16,7 @@  discard block
 block discarded – undo
16 16
  * @package SPIP\Core\Affichage
17 17
  **/
18 18
 if (!defined('_ECRIRE_INC_VERSION')) {
19
-	return;
19
+    return;
20 20
 }
21 21
 
22 22
 /**
@@ -45,7 +45,7 @@  discard block
 block discarded – undo
45 45
  * @return string Code HTML
46 46
  */
47 47
 function debut_gauche() {
48
-	return "<div id = 'conteneur' class = ''>\n<div id = 'navigation' class = 'lat' role = 'contentinfo'>\n";
48
+    return "<div id = 'conteneur' class = ''>\n<div id = 'navigation' class = 'lat' role = 'contentinfo'>\n";
49 49
 }
50 50
 
51 51
 /**
@@ -61,13 +61,13 @@  discard block
 block discarded – undo
61 61
  * @return string Code HTML
62 62
  */
63 63
 function creer_colonne_droite() {
64
-	static $deja_colonne_droite;
65
-	if ($deja_colonne_droite) {
66
-		return '';
67
-	}
68
-	$deja_colonne_droite = true;
64
+    static $deja_colonne_droite;
65
+    if ($deja_colonne_droite) {
66
+        return '';
67
+    }
68
+    $deja_colonne_droite = true;
69 69
 
70
-	return "\n</div><div id='extra' class='lat' role='complementary'>";
70
+    return "\n</div><div id='extra' class='lat' role='complementary'>";
71 71
 }
72 72
 
73 73
 /**
@@ -76,10 +76,10 @@  discard block
 block discarded – undo
76 76
  * @return string Code HTML
77 77
  */
78 78
 function debut_droite() {
79
-	return liste_objets_bloques(_request('exec'))
80
-	. creer_colonne_droite()
81
-	. "</div>"
82
-	. "\n<div id='contenu'>";
79
+    return liste_objets_bloques(_request('exec'))
80
+    . creer_colonne_droite()
81
+    . "</div>"
82
+    . "\n<div id='contenu'>";
83 83
 }
84 84
 
85 85
 /**
@@ -101,30 +101,30 @@  discard block
 block discarded – undo
101 101
  *     Code HTML
102 102
  **/
103 103
 function liste_objets_bloques($exec, $contexte = array(), $auteur = null) {
104
-	$res = '';
105
-	if ($GLOBALS['meta']["articles_modif"] != "non") {
106
-		include_spip('inc/drapeau_edition');
107
-		if (is_null($auteur)) {
108
-			$auteur = $GLOBALS['visiteur_session'];
109
-		}
110
-		if ($en_cours = trouver_objet_exec($exec)
111
-			and $en_cours['edition']
112
-			and $type = $en_cours['type']
113
-			and ((isset($contexte[$en_cours['id_table_objet']]) and $id = $contexte[$en_cours['id_table_objet']])
114
-				or $id = _request($en_cours['id_table_objet']))
115
-		) {
116
-			// marquer le fait que l'objet est ouvert en edition par toto
117
-			// a telle date ; une alerte sera donnee aux autres redacteurs
118
-			signale_edition($id, $auteur, $type);
119
-		}
120
-
121
-		$objets_ouverts = liste_drapeau_edition($auteur['id_auteur']);
122
-		if (count($objets_ouverts)) {
123
-			$res .= recuperer_fond('prive/objets/liste/objets-en-edition', array(), array('ajax' => true));
124
-		}
125
-	}
126
-
127
-	return $res;
104
+    $res = '';
105
+    if ($GLOBALS['meta']["articles_modif"] != "non") {
106
+        include_spip('inc/drapeau_edition');
107
+        if (is_null($auteur)) {
108
+            $auteur = $GLOBALS['visiteur_session'];
109
+        }
110
+        if ($en_cours = trouver_objet_exec($exec)
111
+            and $en_cours['edition']
112
+            and $type = $en_cours['type']
113
+            and ((isset($contexte[$en_cours['id_table_objet']]) and $id = $contexte[$en_cours['id_table_objet']])
114
+                or $id = _request($en_cours['id_table_objet']))
115
+        ) {
116
+            // marquer le fait que l'objet est ouvert en edition par toto
117
+            // a telle date ; une alerte sera donnee aux autres redacteurs
118
+            signale_edition($id, $auteur, $type);
119
+        }
120
+
121
+        $objets_ouverts = liste_drapeau_edition($auteur['id_auteur']);
122
+        if (count($objets_ouverts)) {
123
+            $res .= recuperer_fond('prive/objets/liste/objets-en-edition', array(), array('ajax' => true));
124
+        }
125
+    }
126
+
127
+    return $res;
128 128
 }
129 129
 
130 130
 
@@ -138,20 +138,20 @@  discard block
 block discarded – undo
138 138
  * @return string Code HTML
139 139
  **/
140 140
 function fin_page() {
141
-	include_spip('inc/pipelines');
142
-	// avec &var_profile=1 on a le tableau de mesures SQL
143
-	$debug = ((_request('exec') !== 'valider_xml')
144
-		and ((_request('var_mode') == 'debug')
145
-			or (isset($GLOBALS['tableau_des_temps']) and $GLOBALS['tableau_des_temps'])
146
-			and isset($_COOKIE['spip_admin'])));
147
-	$t = '</div><div id="pied"><div class="largeur">'
148
-		. recuperer_fond('prive/squelettes/inclure/pied')
149
-		. "</div>"
150
-		. "</div></div>" // cf. div#page et div.largeur ouvertes dans conmmencer_page()
151
-		. ($debug ? erreur_squelette() : '')
152
-		. "</body></html>\n";
153
-
154
-	return f_queue($t);
141
+    include_spip('inc/pipelines');
142
+    // avec &var_profile=1 on a le tableau de mesures SQL
143
+    $debug = ((_request('exec') !== 'valider_xml')
144
+        and ((_request('var_mode') == 'debug')
145
+            or (isset($GLOBALS['tableau_des_temps']) and $GLOBALS['tableau_des_temps'])
146
+            and isset($_COOKIE['spip_admin'])));
147
+    $t = '</div><div id="pied"><div class="largeur">'
148
+        . recuperer_fond('prive/squelettes/inclure/pied')
149
+        . "</div>"
150
+        . "</div></div>" // cf. div#page et div.largeur ouvertes dans conmmencer_page()
151
+        . ($debug ? erreur_squelette() : '')
152
+        . "</body></html>\n";
153
+
154
+    return f_queue($t);
155 155
 }
156 156
 
157 157
 /**
@@ -166,20 +166,20 @@  discard block
 block discarded – undo
166 166
  * @return string Code HTML
167 167
  **/
168 168
 function html_tests_js() {
169
-	if (_SPIP_AJAX and !defined('_TESTER_NOSCRIPT')) {
170
-		// pour le pied de page (deja defini si on est validation XML)
171
-		define('_TESTER_NOSCRIPT',
172
-			"<noscript>\n<div style='display:none;'><img src='"
173
-			. generer_url_ecrire('test_ajax', 'js=-1')
174
-			. "' width='1' height='1' alt='' /></div></noscript>\n");
175
-	}
176
-
177
-	$rejouer = '';
178
-	if (defined('_SESSION_REJOUER')) {
179
-		$rejouer = (_SESSION_REJOUER === true) ? rejouer_session() : _SESSION_REJOUER;
180
-	}
181
-
182
-	return $rejouer . (defined('_TESTER_NOSCRIPT') ? _TESTER_NOSCRIPT : '');
169
+    if (_SPIP_AJAX and !defined('_TESTER_NOSCRIPT')) {
170
+        // pour le pied de page (deja defini si on est validation XML)
171
+        define('_TESTER_NOSCRIPT',
172
+            "<noscript>\n<div style='display:none;'><img src='"
173
+            . generer_url_ecrire('test_ajax', 'js=-1')
174
+            . "' width='1' height='1' alt='' /></div></noscript>\n");
175
+    }
176
+
177
+    $rejouer = '';
178
+    if (defined('_SESSION_REJOUER')) {
179
+        $rejouer = (_SESSION_REJOUER === true) ? rejouer_session() : _SESSION_REJOUER;
180
+    }
181
+
182
+    return $rejouer . (defined('_TESTER_NOSCRIPT') ? _TESTER_NOSCRIPT : '');
183 183
 }
184 184
 
185 185
 /**
@@ -189,25 +189,25 @@  discard block
 block discarded – undo
189 189
  **/
190 190
 function info_maj_spip() {
191 191
 
192
-	$maj = isset($GLOBALS['meta']['info_maj_spip']) ? $GLOBALS['meta']['info_maj_spip'] : null;
193
-	if (!$maj) {
194
-		return "";
195
-	}
192
+    $maj = isset($GLOBALS['meta']['info_maj_spip']) ? $GLOBALS['meta']['info_maj_spip'] : null;
193
+    if (!$maj) {
194
+        return "";
195
+    }
196 196
 
197
-	$maj = explode('|', $maj);
198
-	// c'est une ancienne notif, on a fait la maj depuis !
199
-	if ($GLOBALS['spip_version_branche'] !== reset($maj)) {
200
-		return "";
201
-	}
197
+    $maj = explode('|', $maj);
198
+    // c'est une ancienne notif, on a fait la maj depuis !
199
+    if ($GLOBALS['spip_version_branche'] !== reset($maj)) {
200
+        return "";
201
+    }
202 202
 
203
-	if (!autoriser('webmestre')) {
204
-		return "";
205
-	}
203
+    if (!autoriser('webmestre')) {
204
+        return "";
205
+    }
206 206
 
207
-	array_shift($maj);
208
-	$maj = implode('|', $maj);
207
+    array_shift($maj);
208
+    $maj = implode('|', $maj);
209 209
 
210
-	return "$maj<br />";
210
+    return "$maj<br />";
211 211
 }
212 212
 
213 213
 /**
@@ -218,43 +218,43 @@  discard block
 block discarded – undo
218 218
  **/
219 219
 function info_copyright() {
220 220
 
221
-	$version = $GLOBALS['spip_version_affichee'];
222
-
223
-	//
224
-	// Mention, le cas echeant, de la revision SVN courante
225
-	//
226
-	if ($vcs = version_vcs_courante(_DIR_RACINE, true)) {
227
-		if ($vcs['vcs'] === 'GIT') {
228
-			$url = 'https://git.spip.net/spip/spip/commit/' . $vcs['commit'];
229
-		} elseif ($vcs['vcs'] === 'SVN') {
230
-			$url = 'https://core.spip.net/projects/spip/repository/revisions/' . $vcs['commit'];
231
-		} else {
232
-			$url = '';
233
-		}
234
-		// affichage "GIT [master: abcdef]"
235
-		$commit = isset($vcs['commit_short']) ? $vcs['commit_short'] : $vcs['commit'];
236
-		if ($url) {
237
-			$commit = "<a href=\"$url\" target=\"_blank\" rel=\"noopener noreferrer\">$commit</a>";
238
-		}
239
-		if ($vcs['branch']) {
240
-			$commit = $vcs['branch'] . ': ' . $commit;
241
-		}
242
-		$version .= " {$vcs['vcs']} [$commit]";
243
-	}
244
-
245
-	// et la version de l'ecran de securite
246
-	$secu = defined('_ECRAN_SECURITE')
247
-		? "<br />" . _T('ecran_securite', array('version' => _ECRAN_SECURITE))
248
-		: '';
249
-
250
-	return _T('info_copyright',
251
-		array(
252
-			'spip' => "<b>SPIP $version</b> ",
253
-			'lien_gpl' =>
254
-				"<a href='" . generer_url_ecrire("aide",
255
-					"aide=licence&var_lang=" . $GLOBALS['spip_lang']) . "' class=\"aide popin\">" . _T('info_copyright_gpl') . "</a>"
256
-		))
257
-	. $secu;
221
+    $version = $GLOBALS['spip_version_affichee'];
222
+
223
+    //
224
+    // Mention, le cas echeant, de la revision SVN courante
225
+    //
226
+    if ($vcs = version_vcs_courante(_DIR_RACINE, true)) {
227
+        if ($vcs['vcs'] === 'GIT') {
228
+            $url = 'https://git.spip.net/spip/spip/commit/' . $vcs['commit'];
229
+        } elseif ($vcs['vcs'] === 'SVN') {
230
+            $url = 'https://core.spip.net/projects/spip/repository/revisions/' . $vcs['commit'];
231
+        } else {
232
+            $url = '';
233
+        }
234
+        // affichage "GIT [master: abcdef]"
235
+        $commit = isset($vcs['commit_short']) ? $vcs['commit_short'] : $vcs['commit'];
236
+        if ($url) {
237
+            $commit = "<a href=\"$url\" target=\"_blank\" rel=\"noopener noreferrer\">$commit</a>";
238
+        }
239
+        if ($vcs['branch']) {
240
+            $commit = $vcs['branch'] . ': ' . $commit;
241
+        }
242
+        $version .= " {$vcs['vcs']} [$commit]";
243
+    }
244
+
245
+    // et la version de l'ecran de securite
246
+    $secu = defined('_ECRAN_SECURITE')
247
+        ? "<br />" . _T('ecran_securite', array('version' => _ECRAN_SECURITE))
248
+        : '';
249
+
250
+    return _T('info_copyright',
251
+        array(
252
+            'spip' => "<b>SPIP $version</b> ",
253
+            'lien_gpl' =>
254
+                "<a href='" . generer_url_ecrire("aide",
255
+                    "aide=licence&var_lang=" . $GLOBALS['spip_lang']) . "' class=\"aide popin\">" . _T('info_copyright_gpl') . "</a>"
256
+        ))
257
+    . $secu;
258 258
 
259 259
 }
260 260
 
@@ -270,17 +270,17 @@  discard block
 block discarded – undo
270 270
  * @return string             Code HTML
271 271
  **/
272 272
 function formulaire_recherche($page, $complement = "") {
273
-	$recherche = _request('recherche');
274
-	$recherche_aff = entites_html($recherche);
275
-	if (!strlen($recherche)) {
276
-		$recherche_aff = _T('info_rechercher');
277
-		$onfocus = " onfocus=\"this.value='';\"";
278
-	} else {
279
-		$onfocus = '';
280
-	}
281
-
282
-	$form = '<input type="text" size="10" value="' . $recherche_aff . '" name="recherche" class="recherche" accesskey="r"' . $onfocus . ' />';
283
-	$form .= "<input type='image' src='" . chemin_image('rechercher-20.png') . "' name='submit' class='submit' alt='" . _T('info_rechercher') . "' />";
284
-
285
-	return "<div class='spip_recherche'>" . generer_form_ecrire($page, $form . $complement, " method='get'") . "</div>";
273
+    $recherche = _request('recherche');
274
+    $recherche_aff = entites_html($recherche);
275
+    if (!strlen($recherche)) {
276
+        $recherche_aff = _T('info_rechercher');
277
+        $onfocus = " onfocus=\"this.value='';\"";
278
+    } else {
279
+        $onfocus = '';
280
+    }
281
+
282
+    $form = '<input type="text" size="10" value="' . $recherche_aff . '" name="recherche" class="recherche" accesskey="r"' . $onfocus . ' />';
283
+    $form .= "<input type='image' src='" . chemin_image('rechercher-20.png') . "' name='submit' class='submit' alt='" . _T('info_rechercher') . "' />";
284
+
285
+    return "<div class='spip_recherche'>" . generer_form_ecrire($page, $form . $complement, " method='get'") . "</div>";
286 286
 }
Please login to merge, or discard this patch.
Spacing   +10 added lines, -10 removed lines patch added patch discarded remove patch
@@ -179,7 +179,7 @@  discard block
 block discarded – undo
179 179
 		$rejouer = (_SESSION_REJOUER === true) ? rejouer_session() : _SESSION_REJOUER;
180 180
 	}
181 181
 
182
-	return $rejouer . (defined('_TESTER_NOSCRIPT') ? _TESTER_NOSCRIPT : '');
182
+	return $rejouer.(defined('_TESTER_NOSCRIPT') ? _TESTER_NOSCRIPT : '');
183 183
 }
184 184
 
185 185
 /**
@@ -225,9 +225,9 @@  discard block
 block discarded – undo
225 225
 	//
226 226
 	if ($vcs = version_vcs_courante(_DIR_RACINE, true)) {
227 227
 		if ($vcs['vcs'] === 'GIT') {
228
-			$url = 'https://git.spip.net/spip/spip/commit/' . $vcs['commit'];
228
+			$url = 'https://git.spip.net/spip/spip/commit/'.$vcs['commit'];
229 229
 		} elseif ($vcs['vcs'] === 'SVN') {
230
-			$url = 'https://core.spip.net/projects/spip/repository/revisions/' . $vcs['commit'];
230
+			$url = 'https://core.spip.net/projects/spip/repository/revisions/'.$vcs['commit'];
231 231
 		} else {
232 232
 			$url = '';
233 233
 		}
@@ -237,22 +237,22 @@  discard block
 block discarded – undo
237 237
 			$commit = "<a href=\"$url\" target=\"_blank\" rel=\"noopener noreferrer\">$commit</a>";
238 238
 		}
239 239
 		if ($vcs['branch']) {
240
-			$commit = $vcs['branch'] . ': ' . $commit;
240
+			$commit = $vcs['branch'].': '.$commit;
241 241
 		}
242 242
 		$version .= " {$vcs['vcs']} [$commit]";
243 243
 	}
244 244
 
245 245
 	// et la version de l'ecran de securite
246 246
 	$secu = defined('_ECRAN_SECURITE')
247
-		? "<br />" . _T('ecran_securite', array('version' => _ECRAN_SECURITE))
247
+		? "<br />"._T('ecran_securite', array('version' => _ECRAN_SECURITE))
248 248
 		: '';
249 249
 
250 250
 	return _T('info_copyright',
251 251
 		array(
252 252
 			'spip' => "<b>SPIP $version</b> ",
253 253
 			'lien_gpl' =>
254
-				"<a href='" . generer_url_ecrire("aide",
255
-					"aide=licence&var_lang=" . $GLOBALS['spip_lang']) . "' class=\"aide popin\">" . _T('info_copyright_gpl') . "</a>"
254
+				"<a href='".generer_url_ecrire("aide",
255
+					"aide=licence&var_lang=".$GLOBALS['spip_lang'])."' class=\"aide popin\">"._T('info_copyright_gpl')."</a>"
256 256
 		))
257 257
 	. $secu;
258 258
 
@@ -279,8 +279,8 @@  discard block
 block discarded – undo
279 279
 		$onfocus = '';
280 280
 	}
281 281
 
282
-	$form = '<input type="text" size="10" value="' . $recherche_aff . '" name="recherche" class="recherche" accesskey="r"' . $onfocus . ' />';
283
-	$form .= "<input type='image' src='" . chemin_image('rechercher-20.png') . "' name='submit' class='submit' alt='" . _T('info_rechercher') . "' />";
282
+	$form = '<input type="text" size="10" value="'.$recherche_aff.'" name="recherche" class="recherche" accesskey="r"'.$onfocus.' />';
283
+	$form .= "<input type='image' src='".chemin_image('rechercher-20.png')."' name='submit' class='submit' alt='"._T('info_rechercher')."' />";
284 284
 
285
-	return "<div class='spip_recherche'>" . generer_form_ecrire($page, $form . $complement, " method='get'") . "</div>";
285
+	return "<div class='spip_recherche'>".generer_form_ecrire($page, $form.$complement, " method='get'")."</div>";
286 286
 }
Please login to merge, or discard this patch.
ecrire/inc/layer.php 2 patches
Indentation   +105 added lines, -105 removed lines patch added patch discarded remove patch
@@ -11,7 +11,7 @@  discard block
 block discarded – undo
11 11
 \***************************************************************************/
12 12
 
13 13
 if (!defined('_ECRIRE_INC_VERSION')) {
14
-	return;
14
+    return;
15 15
 }
16 16
 
17 17
 /**
@@ -26,41 +26,41 @@  discard block
 block discarded – undo
26 26
  * @return string Code HTML du cadre dépliable
27 27
  **/
28 28
 function cadre_depliable($icone, $titre, $deplie, $contenu, $ids = '', $style_cadre = 'r') {
29
-	$bouton = bouton_block_depliable($titre, $deplie, $ids);
30
-
31
-	return
32
-		debut_cadre($style_cadre, $icone, '', $bouton, '', '', false)
33
-		. debut_block_depliable($deplie, $ids)
34
-		. "<div class='cadre_padding'>\n"
35
-		. $contenu
36
-		. "</div>\n"
37
-		. fin_block()
38
-		. fin_cadre();
29
+    $bouton = bouton_block_depliable($titre, $deplie, $ids);
30
+
31
+    return
32
+        debut_cadre($style_cadre, $icone, '', $bouton, '', '', false)
33
+        . debut_block_depliable($deplie, $ids)
34
+        . "<div class='cadre_padding'>\n"
35
+        . $contenu
36
+        . "</div>\n"
37
+        . fin_block()
38
+        . fin_cadre();
39 39
 }
40 40
 
41 41
 // https://code.spip.net/@block_parfois_visible
42 42
 function block_parfois_visible($nom, $invite, $masque, $style = '', $visible = false) {
43
-	return "\n"
44
-	. bouton_block_depliable($invite, $visible, $nom)
45
-	. debut_block_depliable($visible, $nom)
46
-	. $masque
47
-	. fin_block();
43
+    return "\n"
44
+    . bouton_block_depliable($invite, $visible, $nom)
45
+    . debut_block_depliable($visible, $nom)
46
+    . $masque
47
+    . fin_block();
48 48
 }
49 49
 
50 50
 // https://code.spip.net/@debut_block_depliable
51 51
 function debut_block_depliable($deplie, $id = "") {
52
-	$class = ' blocdeplie';
53
-	// si on n'accepte pas js, ne pas fermer
54
-	if (!$deplie) {
55
-		$class = " blocreplie";
56
-	}
52
+    $class = ' blocdeplie';
53
+    // si on n'accepte pas js, ne pas fermer
54
+    if (!$deplie) {
55
+        $class = " blocreplie";
56
+    }
57 57
 
58
-	return "<div " . ($id ? "id='$id' " : "") . "class='bloc_depliable$class'>";
58
+    return "<div " . ($id ? "id='$id' " : "") . "class='bloc_depliable$class'>";
59 59
 }
60 60
 
61 61
 // https://code.spip.net/@fin_block
62 62
 function fin_block() {
63
-	return "<div class='nettoyeur'></div>\n</div>";
63
+    return "<div class='nettoyeur'></div>\n</div>";
64 64
 }
65 65
 
66 66
 // $texte : texte du bouton
@@ -68,32 +68,32 @@  discard block
 block discarded – undo
68 68
 // $ids : id des div lies au bouton (facultatif, par defaut c'est le div.bloc_depliable qui suit)
69 69
 // https://code.spip.net/@bouton_block_depliable
70 70
 function bouton_block_depliable($texte, $deplie, $ids = "") {
71
-	$bouton_id = 'b' . substr(md5($texte . microtime()), 0, 8);
72
-
73
-	$class = ($deplie === true) ? " deplie" : (($deplie == -1) ? " impliable" : " replie");
74
-	if (strlen($ids)) {
75
-		$cible = explode(',', $ids);
76
-		$cible = '#' . implode(",#", $cible);
77
-	} else {
78
-		$cible = "#$bouton_id + div.bloc_depliable";
79
-	}
80
-
81
-	$b = (strpos($texte, "<h") === false ? 'h3' : 'div');
82
-
83
-	return "<$b "
84
-	. ($bouton_id ? "id='$bouton_id' " : "")
85
-	. "class='titrem$class'"
86
-	. (($deplie === -1)
87
-		? ""
88
-		: " onmouseover=\"jQuery(this).depliant('$cible');\""
89
-	)
90
-	. ">"
91
-	// une ancre pour rendre accessible au clavier le depliage du sous bloc
92
-	. "<a href='#' onclick=\"return jQuery(this).depliant_clicancre('$cible');\" class='titremancre'></a>"
93
-	. "$texte</$b>"
94
-	. http_script(($deplie === 'incertain')
95
-		? "jQuery(function($){if ($('$cible').is(':visible')) { $('#$bouton_id').addClass('deplie').removeClass('replie'); }});"
96
-		: '');
71
+    $bouton_id = 'b' . substr(md5($texte . microtime()), 0, 8);
72
+
73
+    $class = ($deplie === true) ? " deplie" : (($deplie == -1) ? " impliable" : " replie");
74
+    if (strlen($ids)) {
75
+        $cible = explode(',', $ids);
76
+        $cible = '#' . implode(",#", $cible);
77
+    } else {
78
+        $cible = "#$bouton_id + div.bloc_depliable";
79
+    }
80
+
81
+    $b = (strpos($texte, "<h") === false ? 'h3' : 'div');
82
+
83
+    return "<$b "
84
+    . ($bouton_id ? "id='$bouton_id' " : "")
85
+    . "class='titrem$class'"
86
+    . (($deplie === -1)
87
+        ? ""
88
+        : " onmouseover=\"jQuery(this).depliant('$cible');\""
89
+    )
90
+    . ">"
91
+    // une ancre pour rendre accessible au clavier le depliage du sous bloc
92
+    . "<a href='#' onclick=\"return jQuery(this).depliant_clicancre('$cible');\" class='titremancre'></a>"
93
+    . "$texte</$b>"
94
+    . http_script(($deplie === 'incertain')
95
+        ? "jQuery(function($){if ($('$cible').is(':visible')) { $('#$bouton_id').addClass('deplie').removeClass('replie'); }});"
96
+        : '');
97 97
 }
98 98
 
99 99
 //
@@ -102,62 +102,62 @@  discard block
 block discarded – undo
102 102
 // https://code.spip.net/@verif_butineur
103 103
 function verif_butineur() {
104 104
 
105
-	preg_match(",^([A-Za-z]+)/([0-9]+\.[0-9]+) (.*)$,", $_SERVER['HTTP_USER_AGENT'], $match);
106
-	$GLOBALS['browser_name'] = $match[1];
107
-	$GLOBALS['browser_version'] = $match[2];
108
-	$GLOBALS['browser_description'] = $match[3];
109
-	$GLOBALS['browser_layer'] = ' '; // compat avec vieux scripts qui testent la valeur
110
-	$GLOBALS['browser_barre'] = '';
111
-
112
-	if (!preg_match(",opera,i", $GLOBALS['browser_description']) && preg_match(",opera,i", $GLOBALS['browser_name'])) {
113
-		$GLOBALS['browser_name'] = "Opera";
114
-		$GLOBALS['browser_version'] = $match[2];
115
-		$GLOBALS['browser_barre'] = ($GLOBALS['browser_version'] >= 8.5);
116
-	} else {
117
-		if (preg_match(",opera,i", $GLOBALS['browser_description'])) {
118
-			preg_match(",Opera ([^\ ]*),i", $GLOBALS['browser_description'], $match);
119
-			$GLOBALS['browser_name'] = "Opera";
120
-			$GLOBALS['browser_version'] = $match[1];
121
-			$GLOBALS['browser_barre'] = ($GLOBALS['browser_version'] >= 8.5);
122
-		} else {
123
-			if (preg_match(",msie,i", $GLOBALS['browser_description'])) {
124
-				preg_match(",MSIE ([^;]*),i", $GLOBALS['browser_description'], $match);
125
-				$GLOBALS['browser_name'] = "MSIE";
126
-				$GLOBALS['browser_version'] = $match[1];
127
-				$GLOBALS['browser_barre'] = ($GLOBALS['browser_version'] >= 5.5);
128
-			} else {
129
-				if (preg_match(",KHTML,i", $GLOBALS['browser_description']) &&
130
-					preg_match(",Safari/([^;]*),", $GLOBALS['browser_description'], $match)
131
-				) {
132
-					$GLOBALS['browser_name'] = "Safari";
133
-					$GLOBALS['browser_version'] = $match[1];
134
-					$GLOBALS['browser_barre'] = ($GLOBALS['browser_version'] >= 5.0);
135
-				} else {
136
-					if (preg_match(",mozilla,i", $GLOBALS['browser_name']) and $GLOBALS['browser_version'] >= 5) {
137
-						// Numero de version pour Mozilla "authentique"
138
-						if (preg_match(",rv:([0-9]+\.[0-9]+),", $GLOBALS['browser_description'], $match)) {
139
-							$GLOBALS['browser_rev'] = doubleval($match[1]);
140
-						} // Autres Gecko => equivalents 1.4 par defaut (Galeon, etc.)
141
-						else {
142
-							if (strpos($GLOBALS['browser_description'], "Gecko") and !strpos($GLOBALS['browser_description'],
143
-									"KHTML")
144
-							) {
145
-								$GLOBALS['browser_rev'] = 1.4;
146
-							} // Machins quelconques => equivalents 1.0 par defaut (Konqueror, etc.)
147
-							else {
148
-								$GLOBALS['browser_rev'] = 1.0;
149
-							}
150
-						}
151
-						$GLOBALS['browser_barre'] = $GLOBALS['browser_rev'] >= 1.3;
152
-					}
153
-				}
154
-			}
155
-		}
156
-	}
157
-
158
-	if (!$GLOBALS['browser_name']) {
159
-		$GLOBALS['browser_name'] = "Mozilla";
160
-	}
105
+    preg_match(",^([A-Za-z]+)/([0-9]+\.[0-9]+) (.*)$,", $_SERVER['HTTP_USER_AGENT'], $match);
106
+    $GLOBALS['browser_name'] = $match[1];
107
+    $GLOBALS['browser_version'] = $match[2];
108
+    $GLOBALS['browser_description'] = $match[3];
109
+    $GLOBALS['browser_layer'] = ' '; // compat avec vieux scripts qui testent la valeur
110
+    $GLOBALS['browser_barre'] = '';
111
+
112
+    if (!preg_match(",opera,i", $GLOBALS['browser_description']) && preg_match(",opera,i", $GLOBALS['browser_name'])) {
113
+        $GLOBALS['browser_name'] = "Opera";
114
+        $GLOBALS['browser_version'] = $match[2];
115
+        $GLOBALS['browser_barre'] = ($GLOBALS['browser_version'] >= 8.5);
116
+    } else {
117
+        if (preg_match(",opera,i", $GLOBALS['browser_description'])) {
118
+            preg_match(",Opera ([^\ ]*),i", $GLOBALS['browser_description'], $match);
119
+            $GLOBALS['browser_name'] = "Opera";
120
+            $GLOBALS['browser_version'] = $match[1];
121
+            $GLOBALS['browser_barre'] = ($GLOBALS['browser_version'] >= 8.5);
122
+        } else {
123
+            if (preg_match(",msie,i", $GLOBALS['browser_description'])) {
124
+                preg_match(",MSIE ([^;]*),i", $GLOBALS['browser_description'], $match);
125
+                $GLOBALS['browser_name'] = "MSIE";
126
+                $GLOBALS['browser_version'] = $match[1];
127
+                $GLOBALS['browser_barre'] = ($GLOBALS['browser_version'] >= 5.5);
128
+            } else {
129
+                if (preg_match(",KHTML,i", $GLOBALS['browser_description']) &&
130
+                    preg_match(",Safari/([^;]*),", $GLOBALS['browser_description'], $match)
131
+                ) {
132
+                    $GLOBALS['browser_name'] = "Safari";
133
+                    $GLOBALS['browser_version'] = $match[1];
134
+                    $GLOBALS['browser_barre'] = ($GLOBALS['browser_version'] >= 5.0);
135
+                } else {
136
+                    if (preg_match(",mozilla,i", $GLOBALS['browser_name']) and $GLOBALS['browser_version'] >= 5) {
137
+                        // Numero de version pour Mozilla "authentique"
138
+                        if (preg_match(",rv:([0-9]+\.[0-9]+),", $GLOBALS['browser_description'], $match)) {
139
+                            $GLOBALS['browser_rev'] = doubleval($match[1]);
140
+                        } // Autres Gecko => equivalents 1.4 par defaut (Galeon, etc.)
141
+                        else {
142
+                            if (strpos($GLOBALS['browser_description'], "Gecko") and !strpos($GLOBALS['browser_description'],
143
+                                    "KHTML")
144
+                            ) {
145
+                                $GLOBALS['browser_rev'] = 1.4;
146
+                            } // Machins quelconques => equivalents 1.0 par defaut (Konqueror, etc.)
147
+                            else {
148
+                                $GLOBALS['browser_rev'] = 1.0;
149
+                            }
150
+                        }
151
+                        $GLOBALS['browser_barre'] = $GLOBALS['browser_rev'] >= 1.3;
152
+                    }
153
+                }
154
+            }
155
+        }
156
+    }
157
+
158
+    if (!$GLOBALS['browser_name']) {
159
+        $GLOBALS['browser_name'] = "Mozilla";
160
+    }
161 161
 }
162 162
 
163 163
 verif_butineur();
Please login to merge, or discard this patch.
Spacing   +3 added lines, -3 removed lines patch added patch discarded remove patch
@@ -55,7 +55,7 @@  discard block
 block discarded – undo
55 55
 		$class = " blocreplie";
56 56
 	}
57 57
 
58
-	return "<div " . ($id ? "id='$id' " : "") . "class='bloc_depliable$class'>";
58
+	return "<div ".($id ? "id='$id' " : "")."class='bloc_depliable$class'>";
59 59
 }
60 60
 
61 61
 // https://code.spip.net/@fin_block
@@ -68,12 +68,12 @@  discard block
 block discarded – undo
68 68
 // $ids : id des div lies au bouton (facultatif, par defaut c'est le div.bloc_depliable qui suit)
69 69
 // https://code.spip.net/@bouton_block_depliable
70 70
 function bouton_block_depliable($texte, $deplie, $ids = "") {
71
-	$bouton_id = 'b' . substr(md5($texte . microtime()), 0, 8);
71
+	$bouton_id = 'b'.substr(md5($texte.microtime()), 0, 8);
72 72
 
73 73
 	$class = ($deplie === true) ? " deplie" : (($deplie == -1) ? " impliable" : " replie");
74 74
 	if (strlen($ids)) {
75 75
 		$cible = explode(',', $ids);
76
-		$cible = '#' . implode(",#", $cible);
76
+		$cible = '#'.implode(",#", $cible);
77 77
 	} else {
78 78
 		$cible = "#$bouton_id + div.bloc_depliable";
79 79
 	}
Please login to merge, or discard this patch.
ecrire/inc/genie.php 1 patch
Indentation   +76 added lines, -76 removed lines patch added patch discarded remove patch
@@ -11,7 +11,7 @@  discard block
 block discarded – undo
11 11
 \***************************************************************************/
12 12
 
13 13
 if (!defined('_ECRIRE_INC_VERSION')) {
14
-	return;
14
+    return;
15 15
 }
16 16
 
17 17
 /**
@@ -75,24 +75,24 @@  discard block
 block discarded – undo
75 75
  * @return
76 76
  **/
77 77
 function inc_genie_dist($taches = array()) {
78
-	include_spip('inc/queue');
79
-
80
-	if (_request('exec') == 'job_queue') {
81
-		return false;
82
-	}
83
-
84
-	$force_jobs = array();
85
-	// l'ancienne facon de lancer une tache cron immediatement
86
-	// etait de la passer en parametre a ing_genie_dist
87
-	// on reroute en ajoutant simplement le job a la queue, ASAP
88
-	foreach ($taches as $function => $period) {
89
-		$force_jobs[] = queue_add_job($function, _T('tache_cron_asap', array('function' => $function)),
90
-			array(time() - abs($period)), "genie/");
91
-	}
92
-
93
-	// et on passe la main a la gestion de la queue !
94
-	// en forcant eventuellement les jobs ajoute a l'instant
95
-	return queue_schedule(count($force_jobs) ? $force_jobs : null);
78
+    include_spip('inc/queue');
79
+
80
+    if (_request('exec') == 'job_queue') {
81
+        return false;
82
+    }
83
+
84
+    $force_jobs = array();
85
+    // l'ancienne facon de lancer une tache cron immediatement
86
+    // etait de la passer en parametre a ing_genie_dist
87
+    // on reroute en ajoutant simplement le job a la queue, ASAP
88
+    foreach ($taches as $function => $period) {
89
+        $force_jobs[] = queue_add_job($function, _T('tache_cron_asap', array('function' => $function)),
90
+            array(time() - abs($period)), "genie/");
91
+    }
92
+
93
+    // et on passe la main a la gestion de la queue !
94
+    // en forcant eventuellement les jobs ajoute a l'instant
95
+    return queue_schedule(count($force_jobs) ? $force_jobs : null);
96 96
 }
97 97
 
98 98
 //
@@ -106,32 +106,32 @@  discard block
 block discarded – undo
106 106
 // https://code.spip.net/@taches_generales
107 107
 function taches_generales($taches_generales = array()) {
108 108
 
109
-	// verifier que toutes les taches cron sont planifiees
110
-	// c'est une tache cron !
111
-	$taches_generales['queue_watch'] = 3600 * 24;
109
+    // verifier que toutes les taches cron sont planifiees
110
+    // c'est une tache cron !
111
+    $taches_generales['queue_watch'] = 3600 * 24;
112 112
 
113
-	// MAJ des rubriques publiques (cas de la publication post-datee)
114
-	// est fait au coup par coup a present
115
-	//	$taches_generales['rubriques'] = 3600;
113
+    // MAJ des rubriques publiques (cas de la publication post-datee)
114
+    // est fait au coup par coup a present
115
+    //	$taches_generales['rubriques'] = 3600;
116 116
 
117
-	// Optimisation de la base
118
-	$taches_generales['optimiser'] = 3600 * 48;
117
+    // Optimisation de la base
118
+    $taches_generales['optimiser'] = 3600 * 48;
119 119
 
120
-	// nouveautes
121
-	if (isset($GLOBALS['meta']['adresse_neuf']) and $GLOBALS['meta']['adresse_neuf']
122
-		and $GLOBALS['meta']['jours_neuf']
123
-		and ($GLOBALS['meta']['quoi_de_neuf'] == 'oui')
124
-	) {
125
-		$taches_generales['mail'] = 3600 * 24 * $GLOBALS['meta']['jours_neuf'];
126
-	}
120
+    // nouveautes
121
+    if (isset($GLOBALS['meta']['adresse_neuf']) and $GLOBALS['meta']['adresse_neuf']
122
+        and $GLOBALS['meta']['jours_neuf']
123
+        and ($GLOBALS['meta']['quoi_de_neuf'] == 'oui')
124
+    ) {
125
+        $taches_generales['mail'] = 3600 * 24 * $GLOBALS['meta']['jours_neuf'];
126
+    }
127 127
 
128
-	// maintenance (ajax, verifications diverses)
129
-	$taches_generales['maintenance'] = 3600 * 2;
128
+    // maintenance (ajax, verifications diverses)
129
+    $taches_generales['maintenance'] = 3600 * 2;
130 130
 
131
-	// verifier si une mise a jour de spip est disponible (2 fois par semaine suffit largement)
132
-	$taches_generales['mise_a_jour'] = 3 * 24 * 3600;
131
+    // verifier si une mise a jour de spip est disponible (2 fois par semaine suffit largement)
132
+    $taches_generales['mise_a_jour'] = 3 * 24 * 3600;
133 133
 
134
-	return pipeline('taches_generales_cron', $taches_generales);
134
+    return pipeline('taches_generales_cron', $taches_generales);
135 135
 }
136 136
 
137 137
 /**
@@ -147,22 +147,22 @@  discard block
 block discarded – undo
147 147
  * @return int
148 148
  */
149 149
 function genie_queue_watch_dist() {
150
-	static $deja_la = false;
151
-	if ($deja_la) {
152
-		return;
153
-	} // re-entrance si l'insertion des jobs echoue (pas de table spip_jobs a l'upgrade par exemple)
154
-	$deja_la = true;
155
-	$taches = taches_generales();
156
-	$programmees = sql_allfetsel('fonction', 'spip_jobs', sql_in('fonction', array_keys($taches)));
157
-	$programmees = array_column($programmees, 'fonction');
158
-	foreach ($taches as $tache => $periode) {
159
-		if (!in_array($tache, $programmees)) {
160
-			queue_genie_replan_job($tache, $periode, time() - round(rand(1, $periode)), 0);
161
-		}
162
-	}
163
-	$deja_la = false;
164
-
165
-	return 1;
150
+    static $deja_la = false;
151
+    if ($deja_la) {
152
+        return;
153
+    } // re-entrance si l'insertion des jobs echoue (pas de table spip_jobs a l'upgrade par exemple)
154
+    $deja_la = true;
155
+    $taches = taches_generales();
156
+    $programmees = sql_allfetsel('fonction', 'spip_jobs', sql_in('fonction', array_keys($taches)));
157
+    $programmees = array_column($programmees, 'fonction');
158
+    foreach ($taches as $tache => $periode) {
159
+        if (!in_array($tache, $programmees)) {
160
+            queue_genie_replan_job($tache, $periode, time() - round(rand(1, $periode)), 0);
161
+        }
162
+    }
163
+    $deja_la = false;
164
+
165
+    return 1;
166 166
 }
167 167
 
168 168
 /**
@@ -183,25 +183,25 @@  discard block
 block discarded – undo
183 183
  * @return void
184 184
  */
185 185
 function queue_genie_replan_job($function, $period, $last = 0, $time = null, $priority = 0) {
186
-	static $done = array();
187
-	if (isset($done[$function])) {
188
-		return;
189
-	}
190
-	$done[$function] = true;
191
-	if (is_null($time)) {
192
-		$time = time();
193
-		if ($last) {
194
-			$time = max($last + $period, $time);
195
-		}
196
-	}
197
-	if (!$last) {
198
-		$last = $time - $period;
199
-	}
200
-	spip_log("replan_job $function $period $last $time $priority", 'queue');
201
-	include_spip('inc/queue');
202
-	// on replanifie un job cron
203
-	// uniquement si il n'y en a pas deja un avec le meme nom
204
-	// independament de l'argument
205
-	queue_add_job($function, _T('tache_cron_secondes', array('function' => $function, 'nb' => $period)), array($last),
206
-		"genie/", 'function_only', $time, $priority);
186
+    static $done = array();
187
+    if (isset($done[$function])) {
188
+        return;
189
+    }
190
+    $done[$function] = true;
191
+    if (is_null($time)) {
192
+        $time = time();
193
+        if ($last) {
194
+            $time = max($last + $period, $time);
195
+        }
196
+    }
197
+    if (!$last) {
198
+        $last = $time - $period;
199
+    }
200
+    spip_log("replan_job $function $period $last $time $priority", 'queue');
201
+    include_spip('inc/queue');
202
+    // on replanifie un job cron
203
+    // uniquement si il n'y en a pas deja un avec le meme nom
204
+    // independament de l'argument
205
+    queue_add_job($function, _T('tache_cron_secondes', array('function' => $function, 'nb' => $period)), array($last),
206
+        "genie/", 'function_only', $time, $priority);
207 207
 }
Please login to merge, or discard this patch.
ecrire/inc/presentation.php 3 patches
Indentation   +100 added lines, -100 removed lines patch added patch discarded remove patch
@@ -16,7 +16,7 @@  discard block
 block discarded – undo
16 16
  * @package SPIP\Core\Presentation
17 17
  **/
18 18
 if (!defined('_ECRIRE_INC_VERSION')) {
19
-	return;
19
+    return;
20 20
 }
21 21
 
22 22
 include_spip('inc/presentation_mini');
@@ -31,44 +31,44 @@  discard block
 block discarded – undo
31 31
 
32 32
 // https://code.spip.net/@debut_cadre
33 33
 function debut_cadre($style, $icone = "", $fonction = "", $titre = "", $id = "", $class = "", $padding = true) {
34
-	$style_mapping = array(
35
-		'r' => 'simple',
36
-		'e' => 'raccourcis',
37
-		'couleur' => 'basic highlight',
38
-		'couleur-foncee' => 'basic highlight',
39
-		'trait-couleur' => 'important',
40
-		'alerte' => 'notice',
41
-		'info' => 'info',
42
-		'sous_rub' => 'simple sous-rub'
43
-	);
44
-	$style_titre_mapping = array('couleur' => 'topper', 'trait-couleur' => 'section');
45
-	$c = isset($style_mapping[$style]) ? $style_mapping[$style] : 'simple';
46
-	$class = $c . ($class ? " $class" : "");
47
-	if (!$padding) {
48
-		$class .= ($class ? " " : "") . "no-padding";
49
-	}
50
-
51
-	//($id?"id='$id' ":"")
52
-	if (strlen($icone) > 1) {
53
-		if ($icone_renommer = charger_fonction('icone_renommer', 'inc', true)) {
54
-			list($fond, $fonction) = $icone_renommer($icone, $fonction);
55
-		}
56
-		$size = 24;
57
-		if (preg_match("/-([0-9]{1,3})[.](gif|png)$/i", $fond, $match)) {
58
-			$size = $match[1];
59
-		}
60
-		if ($fonction) {
61
-			// 2 images pour composer l'icone : le fond (article) en background,
62
-			// la fonction (new) en image
63
-			$icone = http_img_pack($fonction, "", "class='cadre-icone' width='$size' height='$size'\n" .
64
-				http_style_background($fond, "no-repeat center center", $size));
65
-		} else {
66
-			$icone = http_img_pack($fond, "", "class='cadre-icone' width='$size' height='$size'");
67
-		}
68
-		$titre = $icone . $titre;
69
-	}
70
-
71
-	return boite_ouvrir($titre, $class, isset($style_titre_mapping[$style]) ? $style_titre_mapping[$style] : '', $id);
34
+    $style_mapping = array(
35
+        'r' => 'simple',
36
+        'e' => 'raccourcis',
37
+        'couleur' => 'basic highlight',
38
+        'couleur-foncee' => 'basic highlight',
39
+        'trait-couleur' => 'important',
40
+        'alerte' => 'notice',
41
+        'info' => 'info',
42
+        'sous_rub' => 'simple sous-rub'
43
+    );
44
+    $style_titre_mapping = array('couleur' => 'topper', 'trait-couleur' => 'section');
45
+    $c = isset($style_mapping[$style]) ? $style_mapping[$style] : 'simple';
46
+    $class = $c . ($class ? " $class" : "");
47
+    if (!$padding) {
48
+        $class .= ($class ? " " : "") . "no-padding";
49
+    }
50
+
51
+    //($id?"id='$id' ":"")
52
+    if (strlen($icone) > 1) {
53
+        if ($icone_renommer = charger_fonction('icone_renommer', 'inc', true)) {
54
+            list($fond, $fonction) = $icone_renommer($icone, $fonction);
55
+        }
56
+        $size = 24;
57
+        if (preg_match("/-([0-9]{1,3})[.](gif|png)$/i", $fond, $match)) {
58
+            $size = $match[1];
59
+        }
60
+        if ($fonction) {
61
+            // 2 images pour composer l'icone : le fond (article) en background,
62
+            // la fonction (new) en image
63
+            $icone = http_img_pack($fonction, "", "class='cadre-icone' width='$size' height='$size'\n" .
64
+                http_style_background($fond, "no-repeat center center", $size));
65
+        } else {
66
+            $icone = http_img_pack($fond, "", "class='cadre-icone' width='$size' height='$size'");
67
+        }
68
+        $titre = $icone . $titre;
69
+    }
70
+
71
+    return boite_ouvrir($titre, $class, isset($style_titre_mapping[$style]) ? $style_titre_mapping[$style] : '', $id);
72 72
 }
73 73
 
74 74
 // https://code.spip.net/@fin_cadre
@@ -76,66 +76,66 @@  discard block
 block discarded – undo
76 76
 
77 77
 
78 78
 function debut_cadre_relief(
79
-	$icone = '',
80
-	$dummy = '',
81
-	$fonction = '',
82
-	$titre = '',
83
-	$id = "",
84
-	$class = ""
79
+    $icone = '',
80
+    $dummy = '',
81
+    $fonction = '',
82
+    $titre = '',
83
+    $id = "",
84
+    $class = ""
85 85
 ) {
86
-	return debut_cadre('r', $icone, $fonction, $titre, $id, $class);
86
+    return debut_cadre('r', $icone, $fonction, $titre, $id, $class);
87 87
 }
88 88
 
89 89
 function fin_cadre_relief() { return fin_cadre('r'); }
90 90
 
91 91
 function debut_cadre_enfonce(
92
-	$icone = '',
93
-	$dummy = '',
94
-	$fonction = '',
95
-	$titre = '',
96
-	$id = "",
97
-	$class = ""
92
+    $icone = '',
93
+    $dummy = '',
94
+    $fonction = '',
95
+    $titre = '',
96
+    $id = "",
97
+    $class = ""
98 98
 ) {
99
-	return debut_cadre('e', $icone, $fonction, $titre, $id, $class);
99
+    return debut_cadre('e', $icone, $fonction, $titre, $id, $class);
100 100
 }
101 101
 
102 102
 function fin_cadre_enfonce() { return fin_cadre('e'); }
103 103
 
104 104
 function debut_cadre_sous_rub(
105
-	$icone = '',
106
-	$dummy = '',
107
-	$fonction = '',
108
-	$titre = '',
109
-	$id = "",
110
-	$class = ""
105
+    $icone = '',
106
+    $dummy = '',
107
+    $fonction = '',
108
+    $titre = '',
109
+    $id = "",
110
+    $class = ""
111 111
 ) {
112
-	return debut_cadre('sous_rub', $icone, $fonction, $titre, $id, $class);
112
+    return debut_cadre('sous_rub', $icone, $fonction, $titre, $id, $class);
113 113
 }
114 114
 
115 115
 function fin_cadre_sous_rub() { return fin_cadre('sous_rub'); }
116 116
 
117 117
 function debut_cadre_couleur(
118
-	$icone = '',
119
-	$dummy = '',
120
-	$fonction = '',
121
-	$titre = '',
122
-	$id = "",
123
-	$class = ""
118
+    $icone = '',
119
+    $dummy = '',
120
+    $fonction = '',
121
+    $titre = '',
122
+    $id = "",
123
+    $class = ""
124 124
 ) {
125
-	return debut_cadre('couleur', $icone, $fonction, $titre, $id, $class);
125
+    return debut_cadre('couleur', $icone, $fonction, $titre, $id, $class);
126 126
 }
127 127
 
128 128
 function fin_cadre_couleur() { return fin_cadre('couleur'); }
129 129
 
130 130
 function debut_cadre_trait_couleur(
131
-	$icone = '',
132
-	$dummy = '',
133
-	$fonction = '',
134
-	$titre = '',
135
-	$id = "",
136
-	$class = ""
131
+    $icone = '',
132
+    $dummy = '',
133
+    $fonction = '',
134
+    $titre = '',
135
+    $id = "",
136
+    $class = ""
137 137
 ) {
138
-	return debut_cadre('trait-couleur', $icone, $fonction, $titre, $id, $class);
138
+    return debut_cadre('trait-couleur', $icone, $fonction, $titre, $id, $class);
139 139
 }
140 140
 
141 141
 function fin_cadre_trait_couleur() { return fin_cadre('trait-couleur'); }
@@ -156,18 +156,18 @@  discard block
 block discarded – undo
156 156
  * @return string Code PHP.
157 157
  **/
158 158
 function gros_titre(
159
-	$titre,
160
-	$ze_logo = ''
159
+    $titre,
160
+    $ze_logo = ''
161 161
 ) {
162
-	return "<h1 class = 'grostitre'>" . $ze_logo . ' ' . typo($titre) . "</h1>\n";
162
+    return "<h1 class = 'grostitre'>" . $ze_logo . ' ' . typo($titre) . "</h1>\n";
163 163
 }
164 164
 
165 165
 // La boite des raccourcis
166 166
 // Se place a droite si l'ecran est en mode panoramique.
167 167
 // https://code.spip.net/@bloc_des_raccourcis
168 168
 function bloc_des_raccourcis($bloc) {
169
-	return creer_colonne_droite()
170
-	. boite_ouvrir(_T('titre_cadre_raccourcis'), 'raccourcis') . $bloc . boite_fermer();
169
+    return creer_colonne_droite()
170
+    . boite_ouvrir(_T('titre_cadre_raccourcis'), 'raccourcis') . $bloc . boite_fermer();
171 171
 }
172 172
 
173 173
 //
@@ -184,10 +184,10 @@  discard block
 block discarded – undo
184 184
 
185 185
 // https://code.spip.net/@onglet
186 186
 function onglet($texte, $lien, $onglet_ref, $onglet, $icone = "") {
187
-	return "<li>"
188
-	. ($icone ? http_img_pack($icone, '', " class='cadre-icone'") : '')
189
-	. lien_ou_expose($lien, $texte, $onglet == $onglet_ref)
190
-	. "</li>";
187
+    return "<li>"
188
+    . ($icone ? http_img_pack($icone, '', " class='cadre-icone'") : '')
189
+    . lien_ou_expose($lien, $texte, $onglet == $onglet_ref)
190
+    . "</li>";
191 191
 }
192 192
 
193 193
 /**
@@ -219,14 +219,14 @@  discard block
 block discarded – undo
219 219
  *     Code HTML du lien
220 220
  **/
221 221
 function icone_verticale($texte, $lien, $fond, $fonction = "", $align = "", $javascript = "") {
222
-	// cas d'ajax_action_auteur: faut defaire le boulot
223
-	// (il faudrait fusionner avec le cas $javascript)
224
-	if (preg_match(",^<a\shref='([^']*)'([^>]*)>(.*)</a>$,i", $lien, $r)) {
225
-		list($x, $lien, $atts, $texte) = $r;
226
-		$javascript .= $atts;
227
-	}
228
-
229
-	return icone_base($lien, $texte, $fond, $fonction, "verticale $align", $javascript);
222
+    // cas d'ajax_action_auteur: faut defaire le boulot
223
+    // (il faudrait fusionner avec le cas $javascript)
224
+    if (preg_match(",^<a\shref='([^']*)'([^>]*)>(.*)</a>$,i", $lien, $r)) {
225
+        list($x, $lien, $atts, $texte) = $r;
226
+        $javascript .= $atts;
227
+    }
228
+
229
+    return icone_base($lien, $texte, $fond, $fonction, "verticale $align", $javascript);
230 230
 }
231 231
 
232 232
 /**
@@ -251,15 +251,15 @@  discard block
 block discarded – undo
251 251
  *     Code HTML du lien
252 252
  **/
253 253
 function icone_horizontale($texte, $lien, $fond, $fonction = "", $dummy = "", $javascript = "") {
254
-	$retour = '';
255
-	// cas d'ajax_action_auteur: faut defaire le boulot
256
-	// (il faudrait fusionner avec le cas $javascript)
257
-	if (preg_match(",^<a\shref='([^']*)'([^>]*)>(.*)</a>$,i", $lien, $r)) {
258
-		list($x, $lien, $atts, $texte) = $r;
259
-		$javascript .= $atts;
260
-	}
254
+    $retour = '';
255
+    // cas d'ajax_action_auteur: faut defaire le boulot
256
+    // (il faudrait fusionner avec le cas $javascript)
257
+    if (preg_match(",^<a\shref='([^']*)'([^>]*)>(.*)</a>$,i", $lien, $r)) {
258
+        list($x, $lien, $atts, $texte) = $r;
259
+        $javascript .= $atts;
260
+    }
261 261
 
262
-	$retour = icone_base($lien, $texte, $fond, $fonction, "horizontale", $javascript);
262
+    $retour = icone_base($lien, $texte, $fond, $fonction, "horizontale", $javascript);
263 263
 
264
-	return $retour;
264
+    return $retour;
265 265
 }
Please login to merge, or discard this patch.
Spacing   +6 added lines, -6 removed lines patch added patch discarded remove patch
@@ -43,9 +43,9 @@  discard block
 block discarded – undo
43 43
 	);
44 44
 	$style_titre_mapping = array('couleur' => 'topper', 'trait-couleur' => 'section');
45 45
 	$c = isset($style_mapping[$style]) ? $style_mapping[$style] : 'simple';
46
-	$class = $c . ($class ? " $class" : "");
46
+	$class = $c.($class ? " $class" : "");
47 47
 	if (!$padding) {
48
-		$class .= ($class ? " " : "") . "no-padding";
48
+		$class .= ($class ? " " : "")."no-padding";
49 49
 	}
50 50
 
51 51
 	//($id?"id='$id' ":"")
@@ -60,12 +60,12 @@  discard block
 block discarded – undo
60 60
 		if ($fonction) {
61 61
 			// 2 images pour composer l'icone : le fond (article) en background,
62 62
 			// la fonction (new) en image
63
-			$icone = http_img_pack($fonction, "", "class='cadre-icone' width='$size' height='$size'\n" .
63
+			$icone = http_img_pack($fonction, "", "class='cadre-icone' width='$size' height='$size'\n".
64 64
 				http_style_background($fond, "no-repeat center center", $size));
65 65
 		} else {
66 66
 			$icone = http_img_pack($fond, "", "class='cadre-icone' width='$size' height='$size'");
67 67
 		}
68
-		$titre = $icone . $titre;
68
+		$titre = $icone.$titre;
69 69
 	}
70 70
 
71 71
 	return boite_ouvrir($titre, $class, isset($style_titre_mapping[$style]) ? $style_titre_mapping[$style] : '', $id);
@@ -159,7 +159,7 @@  discard block
 block discarded – undo
159 159
 	$titre,
160 160
 	$ze_logo = ''
161 161
 ) {
162
-	return "<h1 class = 'grostitre'>" . $ze_logo . ' ' . typo($titre) . "</h1>\n";
162
+	return "<h1 class = 'grostitre'>".$ze_logo.' '.typo($titre)."</h1>\n";
163 163
 }
164 164
 
165 165
 // La boite des raccourcis
@@ -167,7 +167,7 @@  discard block
 block discarded – undo
167 167
 // https://code.spip.net/@bloc_des_raccourcis
168 168
 function bloc_des_raccourcis($bloc) {
169 169
 	return creer_colonne_droite()
170
-	. boite_ouvrir(_T('titre_cadre_raccourcis'), 'raccourcis') . $bloc . boite_fermer();
170
+	. boite_ouvrir(_T('titre_cadre_raccourcis'), 'raccourcis').$bloc.boite_fermer();
171 171
 }
172 172
 
173 173
 //
Please login to merge, or discard this patch.
Doc Comments   +7 added lines patch added patch discarded remove patch
@@ -31,6 +31,9 @@  discard block
 block discarded – undo
31 31
 include_spip('inc/filtres_alertes');
32 32
 
33 33
 // https://code.spip.net/@debut_cadre
34
+/**
35
+ * @param string $style
36
+ */
34 37
 function debut_cadre($style, $icone = "", $fonction = "", $titre = "", $id = "", $class = "", $padding = true) {
35 38
 	$style_mapping = array(
36 39
 		'r' => 'simple',
@@ -184,6 +187,10 @@  discard block
 block discarded – undo
184 187
 function fin_onglet() { return "</ul></div>\n"; }
185 188
 
186 189
 // https://code.spip.net/@onglet
190
+/**
191
+ * @param string $texte
192
+ * @param string $onglet
193
+ */
187 194
 function onglet($texte, $lien, $onglet_ref, $onglet, $icone = "") {
188 195
 	return "<li>"
189 196
 	. ($icone ? http_img_pack($icone, '', " class='cadre-icone'") : '')
Please login to merge, or discard this patch.
ecrire/install/etape_ldap4.php 2 patches
Indentation   +81 added lines, -81 removed lines patch added patch discarded remove patch
@@ -11,98 +11,98 @@
 block discarded – undo
11 11
 \***************************************************************************/
12 12
 
13 13
 if (!defined('_ECRIRE_INC_VERSION')) {
14
-	return;
14
+    return;
15 15
 }
16 16
 
17 17
 include_spip('auth/ldap');
18 18
 
19 19
 // https://code.spip.net/@install_etape_ldap4_dist
20 20
 function install_etape_ldap4_dist() {
21
-	$adresse_ldap = _request('adresse_ldap');
22
-	$login_ldap = _request('login_ldap');
23
-	$pass_ldap = _request('pass_ldap');
24
-	$port_ldap = _request('port_ldap');
25
-	$base_ldap = _request('base_ldap');
26
-	$base_ldap_text = _request('base_ldap_text');
27
-	if (!$base_ldap) {
28
-		$base_ldap = $base_ldap_text;
29
-	}
30
-
31
-	echo install_debut_html('AUTO', ' onload="document.getElementById(\'suivant\').focus();return false;"');
32
-
33
-	$ldap_link = ldap_connect($adresse_ldap, $port_ldap);
34
-	@ldap_bind($ldap_link, $login_ldap, $pass_ldap);
35
-
36
-	// Essayer de verifier le chemin fourni
37
-	$r = @ldap_compare($ldap_link, $base_ldap, 'objectClass', '');
38
-	$fail = (ldap_errno($ldap_link) == 32);
39
-
40
-	if ($fail) {
41
-		echo info_etape(_T('info_chemin_acces_annuaire')),
42
-		info_progression_etape(3, 'etape_ldap', 'install/', true),
43
-			"<div class='error'><p><b>" . _T('avis_operation_echec') . '</b></p><p>' . _T('avis_chemin_invalide_1'),
44
-			' (<tt>' . spip_htmlspecialchars($base_ldap) . '</tt>) ' . _T('avis_chemin_invalide_2') . '</p></div>';
45
-	} else {
46
-		info_etape(_T('info_reglage_ldap'));
47
-		echo info_progression_etape(4, 'etape_ldap', 'install/');
48
-
49
-		$statuts = liste_statuts_ldap();
50
-		$statut_ldap = defined('_INSTALL_STATUT_LDAP')
51
-			? _INSTALL_STATUT_LDAP
52
-			: $GLOBALS['liste_des_statuts']['info_redacteurs'];
53
-
54
-
55
-		$res = install_propager(array('adresse_ldap', 'port_ldap', 'login_ldap', 'pass_ldap', 'protocole_ldap', 'tls_ldap'))
56
-			. "<input type='hidden' name='etape' value='ldap5' />"
57
-			. "<input type='hidden' name='base_ldap' value='" . spip_htmlentities($base_ldap) . "' />"
58
-			. fieldset(
59
-				_T('info_statut_utilisateurs_1'),
60
-				array(
61
-					'statut_ldap' => array(
62
-						'label' => _T('info_statut_utilisateurs_2') . '<br />',
63
-						'valeur' => $statut_ldap,
64
-						'alternatives' => $statuts
65
-					)
66
-				)
67
-			)
68
-			. install_ldap_correspondances()
69
-			. bouton_suivant();
70
-
71
-		echo generer_form_ecrire('install', $res);
72
-	}
73
-
74
-	echo install_fin_html();
21
+    $adresse_ldap = _request('adresse_ldap');
22
+    $login_ldap = _request('login_ldap');
23
+    $pass_ldap = _request('pass_ldap');
24
+    $port_ldap = _request('port_ldap');
25
+    $base_ldap = _request('base_ldap');
26
+    $base_ldap_text = _request('base_ldap_text');
27
+    if (!$base_ldap) {
28
+        $base_ldap = $base_ldap_text;
29
+    }
30
+
31
+    echo install_debut_html('AUTO', ' onload="document.getElementById(\'suivant\').focus();return false;"');
32
+
33
+    $ldap_link = ldap_connect($adresse_ldap, $port_ldap);
34
+    @ldap_bind($ldap_link, $login_ldap, $pass_ldap);
35
+
36
+    // Essayer de verifier le chemin fourni
37
+    $r = @ldap_compare($ldap_link, $base_ldap, 'objectClass', '');
38
+    $fail = (ldap_errno($ldap_link) == 32);
39
+
40
+    if ($fail) {
41
+        echo info_etape(_T('info_chemin_acces_annuaire')),
42
+        info_progression_etape(3, 'etape_ldap', 'install/', true),
43
+            "<div class='error'><p><b>" . _T('avis_operation_echec') . '</b></p><p>' . _T('avis_chemin_invalide_1'),
44
+            ' (<tt>' . spip_htmlspecialchars($base_ldap) . '</tt>) ' . _T('avis_chemin_invalide_2') . '</p></div>';
45
+    } else {
46
+        info_etape(_T('info_reglage_ldap'));
47
+        echo info_progression_etape(4, 'etape_ldap', 'install/');
48
+
49
+        $statuts = liste_statuts_ldap();
50
+        $statut_ldap = defined('_INSTALL_STATUT_LDAP')
51
+            ? _INSTALL_STATUT_LDAP
52
+            : $GLOBALS['liste_des_statuts']['info_redacteurs'];
53
+
54
+
55
+        $res = install_propager(array('adresse_ldap', 'port_ldap', 'login_ldap', 'pass_ldap', 'protocole_ldap', 'tls_ldap'))
56
+            . "<input type='hidden' name='etape' value='ldap5' />"
57
+            . "<input type='hidden' name='base_ldap' value='" . spip_htmlentities($base_ldap) . "' />"
58
+            . fieldset(
59
+                _T('info_statut_utilisateurs_1'),
60
+                array(
61
+                    'statut_ldap' => array(
62
+                        'label' => _T('info_statut_utilisateurs_2') . '<br />',
63
+                        'valeur' => $statut_ldap,
64
+                        'alternatives' => $statuts
65
+                    )
66
+                )
67
+            )
68
+            . install_ldap_correspondances()
69
+            . bouton_suivant();
70
+
71
+        echo generer_form_ecrire('install', $res);
72
+    }
73
+
74
+    echo install_fin_html();
75 75
 }
76 76
 
77 77
 // https://code.spip.net/@liste_statuts_ldap
78 78
 function liste_statuts_ldap() {
79
-	$recom = array(
80
-		'info_administrateurs' => ('<b>' . _T('info_administrateur_1') . '</b> ' . _T('info_administrateur_2') . '<br />'),
81
-		'info_redacteurs' => ('<b>' . _T('info_redacteur_1') . '</b> ' . _T('info_redacteur_2') . '<br />'),
82
-		'info_visiteurs' => ('<b>' . _T('info_visiteur_1') . '</b> ' . _T('info_visiteur_2') . '<br />')
83
-	);
84
-
85
-	$res = array();
86
-	foreach ($GLOBALS['liste_des_statuts'] as $k => $v) {
87
-		if (isset($recom[$k])) {
88
-			$res[$v] = $recom[$k];
89
-		}
90
-	}
91
-
92
-	return $res;
79
+    $recom = array(
80
+        'info_administrateurs' => ('<b>' . _T('info_administrateur_1') . '</b> ' . _T('info_administrateur_2') . '<br />'),
81
+        'info_redacteurs' => ('<b>' . _T('info_redacteur_1') . '</b> ' . _T('info_redacteur_2') . '<br />'),
82
+        'info_visiteurs' => ('<b>' . _T('info_visiteur_1') . '</b> ' . _T('info_visiteur_2') . '<br />')
83
+    );
84
+
85
+    $res = array();
86
+    foreach ($GLOBALS['liste_des_statuts'] as $k => $v) {
87
+        if (isset($recom[$k])) {
88
+            $res[$v] = $recom[$k];
89
+        }
90
+    }
91
+
92
+    return $res;
93 93
 }
94 94
 
95 95
 function install_ldap_correspondances() {
96
-	$champs = array();
97
-	foreach (is_array($GLOBALS['ldap_attributes']) ? $GLOBALS['ldap_attributes'] : array() as $champ => $v) {
98
-		$nom = 'ldap_' . $champ;
99
-		$val = is_array($v) ? join(',', $v) : strval($v);
100
-		$champs[$nom] = array(
101
-			'label' => _T('ldap_correspondance', array('champ' => "<tt>$champ</tt>")) . '<br />',
102
-			'valeur' => $val
103
-		);
104
-	}
105
-
106
-	return !$champs ?
107
-		'' : fieldset(_T('ldap_correspondance_1'), $champs, '', _T('ldap_correspondance_2') . '<br /><br />');
96
+    $champs = array();
97
+    foreach (is_array($GLOBALS['ldap_attributes']) ? $GLOBALS['ldap_attributes'] : array() as $champ => $v) {
98
+        $nom = 'ldap_' . $champ;
99
+        $val = is_array($v) ? join(',', $v) : strval($v);
100
+        $champs[$nom] = array(
101
+            'label' => _T('ldap_correspondance', array('champ' => "<tt>$champ</tt>")) . '<br />',
102
+            'valeur' => $val
103
+        );
104
+    }
105
+
106
+    return !$champs ?
107
+        '' : fieldset(_T('ldap_correspondance_1'), $champs, '', _T('ldap_correspondance_2') . '<br /><br />');
108 108
 }
Please login to merge, or discard this patch.
Spacing   +10 added lines, -10 removed lines patch added patch discarded remove patch
@@ -40,8 +40,8 @@  discard block
 block discarded – undo
40 40
 	if ($fail) {
41 41
 		echo info_etape(_T('info_chemin_acces_annuaire')),
42 42
 		info_progression_etape(3, 'etape_ldap', 'install/', true),
43
-			"<div class='error'><p><b>" . _T('avis_operation_echec') . '</b></p><p>' . _T('avis_chemin_invalide_1'),
44
-			' (<tt>' . spip_htmlspecialchars($base_ldap) . '</tt>) ' . _T('avis_chemin_invalide_2') . '</p></div>';
43
+			"<div class='error'><p><b>"._T('avis_operation_echec').'</b></p><p>'._T('avis_chemin_invalide_1'),
44
+			' (<tt>'.spip_htmlspecialchars($base_ldap).'</tt>) '._T('avis_chemin_invalide_2').'</p></div>';
45 45
 	} else {
46 46
 		info_etape(_T('info_reglage_ldap'));
47 47
 		echo info_progression_etape(4, 'etape_ldap', 'install/');
@@ -54,12 +54,12 @@  discard block
 block discarded – undo
54 54
 
55 55
 		$res = install_propager(array('adresse_ldap', 'port_ldap', 'login_ldap', 'pass_ldap', 'protocole_ldap', 'tls_ldap'))
56 56
 			. "<input type='hidden' name='etape' value='ldap5' />"
57
-			. "<input type='hidden' name='base_ldap' value='" . spip_htmlentities($base_ldap) . "' />"
57
+			. "<input type='hidden' name='base_ldap' value='".spip_htmlentities($base_ldap)."' />"
58 58
 			. fieldset(
59 59
 				_T('info_statut_utilisateurs_1'),
60 60
 				array(
61 61
 					'statut_ldap' => array(
62
-						'label' => _T('info_statut_utilisateurs_2') . '<br />',
62
+						'label' => _T('info_statut_utilisateurs_2').'<br />',
63 63
 						'valeur' => $statut_ldap,
64 64
 						'alternatives' => $statuts
65 65
 					)
@@ -77,9 +77,9 @@  discard block
 block discarded – undo
77 77
 // https://code.spip.net/@liste_statuts_ldap
78 78
 function liste_statuts_ldap() {
79 79
 	$recom = array(
80
-		'info_administrateurs' => ('<b>' . _T('info_administrateur_1') . '</b> ' . _T('info_administrateur_2') . '<br />'),
81
-		'info_redacteurs' => ('<b>' . _T('info_redacteur_1') . '</b> ' . _T('info_redacteur_2') . '<br />'),
82
-		'info_visiteurs' => ('<b>' . _T('info_visiteur_1') . '</b> ' . _T('info_visiteur_2') . '<br />')
80
+		'info_administrateurs' => ('<b>'._T('info_administrateur_1').'</b> '._T('info_administrateur_2').'<br />'),
81
+		'info_redacteurs' => ('<b>'._T('info_redacteur_1').'</b> '._T('info_redacteur_2').'<br />'),
82
+		'info_visiteurs' => ('<b>'._T('info_visiteur_1').'</b> '._T('info_visiteur_2').'<br />')
83 83
 	);
84 84
 
85 85
 	$res = array();
@@ -95,14 +95,14 @@  discard block
 block discarded – undo
95 95
 function install_ldap_correspondances() {
96 96
 	$champs = array();
97 97
 	foreach (is_array($GLOBALS['ldap_attributes']) ? $GLOBALS['ldap_attributes'] : array() as $champ => $v) {
98
-		$nom = 'ldap_' . $champ;
98
+		$nom = 'ldap_'.$champ;
99 99
 		$val = is_array($v) ? join(',', $v) : strval($v);
100 100
 		$champs[$nom] = array(
101
-			'label' => _T('ldap_correspondance', array('champ' => "<tt>$champ</tt>")) . '<br />',
101
+			'label' => _T('ldap_correspondance', array('champ' => "<tt>$champ</tt>")).'<br />',
102 102
 			'valeur' => $val
103 103
 		);
104 104
 	}
105 105
 
106 106
 	return !$champs ?
107
-		'' : fieldset(_T('ldap_correspondance_1'), $champs, '', _T('ldap_correspondance_2') . '<br /><br />');
107
+		'' : fieldset(_T('ldap_correspondance_1'), $champs, '', _T('ldap_correspondance_2').'<br /><br />');
108 108
 }
Please login to merge, or discard this patch.
ecrire/base/create.php 2 patches
Indentation   +98 added lines, -98 removed lines patch added patch discarded remove patch
@@ -16,7 +16,7 @@  discard block
 block discarded – undo
16 16
  * @package SPIP\Core\Installation
17 17
  **/
18 18
 if (!defined('_ECRIRE_INC_VERSION')) {
19
-	return;
19
+    return;
20 20
 }
21 21
 
22 22
 include_spip('inc/acces');
@@ -33,18 +33,18 @@  discard block
 block discarded – undo
33 33
  * @return bool
34 34
  */
35 35
 function base_determine_autoinc($table, $desc = array()) {
36
-	if ($t = lister_tables_principales() and isset($t[$table])) {
37
-		$autoinc = true;
38
-	} elseif ($t = lister_tables_auxiliaires() and isset($t[$table])) {
39
-		$autoinc = false;
40
-	} else {
41
-		// essayer de faire au mieux !
42
-		$autoinc = (isset($desc['key']['PRIMARY KEY'])
43
-			and strpos($desc['key']['PRIMARY KEY'], ',') === false
44
-			and strpos($desc['field'][$desc['key']['PRIMARY KEY']], 'default') === false);
45
-	}
36
+    if ($t = lister_tables_principales() and isset($t[$table])) {
37
+        $autoinc = true;
38
+    } elseif ($t = lister_tables_auxiliaires() and isset($t[$table])) {
39
+        $autoinc = false;
40
+    } else {
41
+        // essayer de faire au mieux !
42
+        $autoinc = (isset($desc['key']['PRIMARY KEY'])
43
+            and strpos($desc['key']['PRIMARY KEY'], ',') === false
44
+            and strpos($desc['field'][$desc['key']['PRIMARY KEY']], 'default') === false);
45
+    }
46 46
 
47
-	return $autoinc;
47
+    return $autoinc;
48 48
 }
49 49
 
50 50
 /**
@@ -61,59 +61,59 @@  discard block
 block discarded – undo
61 61
  * @return void
62 62
  */
63 63
 function creer_ou_upgrader_table($table, $desc, $autoinc, $upgrade = false, $serveur = '') {
64
-	#spip_log("creer_ou_upgrader_table table=$table autoinc=$autoinc upgrade=$upgrade","dbinstall"._LOG_INFO_IMPORTANTE);
65
-	$sql_desc = $upgrade ? sql_showtable($table, true, $serveur) : false;
66
-	#if (!$sql_desc) $sql_desc = false;
67
-	#spip_log("table=$table sql_desc:$sql_desc","dbinstall"._LOG_INFO_IMPORTANTE);
68
-	if (!$sql_desc) {
69
-		if ($autoinc === 'auto') {
70
-			$autoinc = base_determine_autoinc($table, $desc);
71
-		}
72
-		#spip_log("sql_create $table autoinc=$autoinc","dbinstall"._LOG_INFO_IMPORTANTE);
73
-		if (isset($desc['field']) and isset($desc['key'])) {
74
-			sql_create($table, $desc['field'], $desc['key'], $autoinc, false, $serveur);
75
-		}
76
-		// verifier la bonne installation de la table (php-fpm es-tu la ?)
77
-		$sql_desc = sql_showtable($table, true, $serveur);
78
-		#if (!$sql_desc) $sql_desc = false;
79
-		#spip_log("Resultat table=$table sql_desc:$sql_desc","dbinstall"._LOG_INFO_IMPORTANTE);
80
-		if (!$sql_desc) {
81
-			// on retente avec un sleep ?
82
-			sleep(1);
83
-			sql_create($table, $desc['field'], $desc['key'], $autoinc, false, $serveur);
84
-			$sql_desc = sql_showtable($table, true, $serveur);
85
-			#if (!$sql_desc) $sql_desc = false;
86
-			#spip_log("Resultat table=$table sql_desc:$sql_desc","dbinstall"._LOG_INFO_IMPORTANTE);
87
-			if (!$sql_desc) {
88
-				spip_log("Echec creation table $table", "maj" . _LOG_CRITIQUE);
89
-			}
90
-		}
91
-	} else {
92
-		#spip_log("sql_alter $table ... (on s'en fiche)","dbinstall"._LOG_INFO_IMPORTANTE);
93
-		// ajouter les champs manquants
94
-		// on ne supprime jamais les champs, car c'est dangereux
95
-		// c'est toujours a faire manuellement
96
-		$last = '';
97
-		if (isset($desc['field'])) {
98
-			foreach ($desc['field'] as $field => $type) {
99
-				if (!isset($sql_desc['field'][$field])) {
100
-					sql_alter("TABLE $table ADD $field $type" . ($last ? " AFTER $last" : ""), $serveur);
101
-				}
102
-				$last = $field;
103
-			}
104
-		}
105
-		if (isset($desc['key'])) {
106
-			foreach ($desc['key'] as $key => $type) {
107
-				// Ne pas oublier les cas des cles non nommees dans la declaration et qui sont retournees
108
-				// par le showtable sous la forme d'un index de tableau "KEY $type" et non "KEY"
109
-				if (!isset($sql_desc['key'][$key]) and !isset($sql_desc['key']["$key $type"])) {
110
-					sql_alter("TABLE $table ADD $key ($type)", $serveur);
111
-				}
112
-				$last = $field;
113
-			}
114
-		}
64
+    #spip_log("creer_ou_upgrader_table table=$table autoinc=$autoinc upgrade=$upgrade","dbinstall"._LOG_INFO_IMPORTANTE);
65
+    $sql_desc = $upgrade ? sql_showtable($table, true, $serveur) : false;
66
+    #if (!$sql_desc) $sql_desc = false;
67
+    #spip_log("table=$table sql_desc:$sql_desc","dbinstall"._LOG_INFO_IMPORTANTE);
68
+    if (!$sql_desc) {
69
+        if ($autoinc === 'auto') {
70
+            $autoinc = base_determine_autoinc($table, $desc);
71
+        }
72
+        #spip_log("sql_create $table autoinc=$autoinc","dbinstall"._LOG_INFO_IMPORTANTE);
73
+        if (isset($desc['field']) and isset($desc['key'])) {
74
+            sql_create($table, $desc['field'], $desc['key'], $autoinc, false, $serveur);
75
+        }
76
+        // verifier la bonne installation de la table (php-fpm es-tu la ?)
77
+        $sql_desc = sql_showtable($table, true, $serveur);
78
+        #if (!$sql_desc) $sql_desc = false;
79
+        #spip_log("Resultat table=$table sql_desc:$sql_desc","dbinstall"._LOG_INFO_IMPORTANTE);
80
+        if (!$sql_desc) {
81
+            // on retente avec un sleep ?
82
+            sleep(1);
83
+            sql_create($table, $desc['field'], $desc['key'], $autoinc, false, $serveur);
84
+            $sql_desc = sql_showtable($table, true, $serveur);
85
+            #if (!$sql_desc) $sql_desc = false;
86
+            #spip_log("Resultat table=$table sql_desc:$sql_desc","dbinstall"._LOG_INFO_IMPORTANTE);
87
+            if (!$sql_desc) {
88
+                spip_log("Echec creation table $table", "maj" . _LOG_CRITIQUE);
89
+            }
90
+        }
91
+    } else {
92
+        #spip_log("sql_alter $table ... (on s'en fiche)","dbinstall"._LOG_INFO_IMPORTANTE);
93
+        // ajouter les champs manquants
94
+        // on ne supprime jamais les champs, car c'est dangereux
95
+        // c'est toujours a faire manuellement
96
+        $last = '';
97
+        if (isset($desc['field'])) {
98
+            foreach ($desc['field'] as $field => $type) {
99
+                if (!isset($sql_desc['field'][$field])) {
100
+                    sql_alter("TABLE $table ADD $field $type" . ($last ? " AFTER $last" : ""), $serveur);
101
+                }
102
+                $last = $field;
103
+            }
104
+        }
105
+        if (isset($desc['key'])) {
106
+            foreach ($desc['key'] as $key => $type) {
107
+                // Ne pas oublier les cas des cles non nommees dans la declaration et qui sont retournees
108
+                // par le showtable sous la forme d'un index de tableau "KEY $type" et non "KEY"
109
+                if (!isset($sql_desc['key'][$key]) and !isset($sql_desc['key']["$key $type"])) {
110
+                    sql_alter("TABLE $table ADD $key ($type)", $serveur);
111
+                }
112
+                $last = $field;
113
+            }
114
+        }
115 115
 
116
-	}
116
+    }
117 117
 }
118 118
 
119 119
 /**
@@ -135,26 +135,26 @@  discard block
 block discarded – undo
135 135
  * @return void
136 136
  */
137 137
 function alterer_base($tables_inc, $tables_noinc, $up = false, $serveur = '') {
138
-	if ($up === false) {
139
-		$old = false;
140
-		$up = array();
141
-	} else {
142
-		$old = true;
143
-		if (!is_array($up)) {
144
-			$up = array($up);
145
-		}
146
-	}
147
-	foreach ($tables_inc as $k => $v) {
148
-		if (!$old or in_array($k, $up)) {
149
-			creer_ou_upgrader_table($k, $v, true, $old, $serveur);
150
-		}
151
-	}
138
+    if ($up === false) {
139
+        $old = false;
140
+        $up = array();
141
+    } else {
142
+        $old = true;
143
+        if (!is_array($up)) {
144
+            $up = array($up);
145
+        }
146
+    }
147
+    foreach ($tables_inc as $k => $v) {
148
+        if (!$old or in_array($k, $up)) {
149
+            creer_ou_upgrader_table($k, $v, true, $old, $serveur);
150
+        }
151
+    }
152 152
 
153
-	foreach ($tables_noinc as $k => $v) {
154
-		if (!$old or in_array($k, $up)) {
155
-			creer_ou_upgrader_table($k, $v, false, $old, $serveur);
156
-		}
157
-	}
153
+    foreach ($tables_noinc as $k => $v) {
154
+        if (!$old or in_array($k, $up)) {
155
+            creer_ou_upgrader_table($k, $v, false, $old, $serveur);
156
+        }
157
+    }
158 158
 }
159 159
 
160 160
 /**
@@ -174,16 +174,16 @@  discard block
 block discarded – undo
174 174
  */
175 175
 function creer_base($serveur = '') {
176 176
 
177
-	// Note: les mises a jour reexecutent ce code pour s'assurer
178
-	// de la conformite de la base
179
-	// pas de panique sur  "already exists" et "duplicate entry" donc.
177
+    // Note: les mises a jour reexecutent ce code pour s'assurer
178
+    // de la conformite de la base
179
+    // pas de panique sur  "already exists" et "duplicate entry" donc.
180 180
 
181
-	alterer_base(
182
-		lister_tables_principales(),
183
-		lister_tables_auxiliaires(),
184
-		false,
185
-		$serveur
186
-	);
181
+    alterer_base(
182
+        lister_tables_principales(),
183
+        lister_tables_auxiliaires(),
184
+        false,
185
+        $serveur
186
+    );
187 187
 }
188 188
 
189 189
 /**
@@ -203,10 +203,10 @@  discard block
 block discarded – undo
203 203
  * @return void
204 204
  */
205 205
 function maj_tables($upgrade_tables = array(), $serveur = '') {
206
-	alterer_base(
207
-		lister_tables_principales(),
208
-		lister_tables_auxiliaires(),
209
-		$upgrade_tables,
210
-		$serveur
211
-	);
206
+    alterer_base(
207
+        lister_tables_principales(),
208
+        lister_tables_auxiliaires(),
209
+        $upgrade_tables,
210
+        $serveur
211
+    );
212 212
 }
Please login to merge, or discard this patch.
Spacing   +2 added lines, -2 removed lines patch added patch discarded remove patch
@@ -85,7 +85,7 @@  discard block
 block discarded – undo
85 85
 			#if (!$sql_desc) $sql_desc = false;
86 86
 			#spip_log("Resultat table=$table sql_desc:$sql_desc","dbinstall"._LOG_INFO_IMPORTANTE);
87 87
 			if (!$sql_desc) {
88
-				spip_log("Echec creation table $table", "maj" . _LOG_CRITIQUE);
88
+				spip_log("Echec creation table $table", "maj"._LOG_CRITIQUE);
89 89
 			}
90 90
 		}
91 91
 	} else {
@@ -97,7 +97,7 @@  discard block
 block discarded – undo
97 97
 		if (isset($desc['field'])) {
98 98
 			foreach ($desc['field'] as $field => $type) {
99 99
 				if (!isset($sql_desc['field'][$field])) {
100
-					sql_alter("TABLE $table ADD $field $type" . ($last ? " AFTER $last" : ""), $serveur);
100
+					sql_alter("TABLE $table ADD $field $type".($last ? " AFTER $last" : ""), $serveur);
101 101
 				}
102 102
 				$last = $field;
103 103
 			}
Please login to merge, or discard this patch.
ecrire/public/interfaces.php 1 patch
Indentation   +910 added lines, -910 removed lines patch added patch discarded remove patch
@@ -17,7 +17,7 @@  discard block
 block discarded – undo
17 17
  **/
18 18
 
19 19
 if (!defined('_ECRIRE_INC_VERSION')) {
20
-	return;
20
+    return;
21 21
 }
22 22
 
23 23
 
@@ -34,53 +34,53 @@  discard block
 block discarded – undo
34 34
  * @package SPIP\Core\Compilateur\AST
35 35
  */
36 36
 class Contexte {
37
-	/**
38
-	 * Description du squelette
39
-	 *
40
-	 * Sert pour la gestion d'erreur et la production de code dependant du contexte
41
-	 *
42
-	 * Peut contenir les index :
43
-	 *
44
-	 * - nom : Nom du fichier de cache
45
-	 * - gram : Nom de la grammaire du squelette (détermine le phraseur à utiliser)
46
-	 * - sourcefile : Chemin du squelette
47
-	 * - squelette : Code du squelette
48
-	 * - id_mere : Identifiant de la boucle parente
49
-	 * - documents : Pour embed et img dans les textes
50
-	 * - session : Pour un cache sessionné par auteur
51
-	 * - niv : Niveau de tabulation
52
-	 *
53
-	 * @var array
54
-	 */
55
-	public $descr = array();
56
-
57
-	/**
58
-	 * Identifiant de la boucle
59
-	 *
60
-	 * @var string
61
-	 */
62
-	public $id_boucle = '';
63
-
64
-	/**
65
-	 * Numéro de ligne dans le code source du squelette
66
-	 *
67
-	 * @var int
68
-	 */
69
-	public $ligne = 0;
70
-
71
-	/**
72
-	 * Langue d'exécution
73
-	 *
74
-	 * @var string
75
-	 */
76
-	public $lang = '';
77
-
78
-	/**
79
-	 * Résultat de la compilation: toujours une expression PHP
80
-	 *
81
-	 * @var string
82
-	 */
83
-	public $code = '';
37
+    /**
38
+     * Description du squelette
39
+     *
40
+     * Sert pour la gestion d'erreur et la production de code dependant du contexte
41
+     *
42
+     * Peut contenir les index :
43
+     *
44
+     * - nom : Nom du fichier de cache
45
+     * - gram : Nom de la grammaire du squelette (détermine le phraseur à utiliser)
46
+     * - sourcefile : Chemin du squelette
47
+     * - squelette : Code du squelette
48
+     * - id_mere : Identifiant de la boucle parente
49
+     * - documents : Pour embed et img dans les textes
50
+     * - session : Pour un cache sessionné par auteur
51
+     * - niv : Niveau de tabulation
52
+     *
53
+     * @var array
54
+     */
55
+    public $descr = array();
56
+
57
+    /**
58
+     * Identifiant de la boucle
59
+     *
60
+     * @var string
61
+     */
62
+    public $id_boucle = '';
63
+
64
+    /**
65
+     * Numéro de ligne dans le code source du squelette
66
+     *
67
+     * @var int
68
+     */
69
+    public $ligne = 0;
70
+
71
+    /**
72
+     * Langue d'exécution
73
+     *
74
+     * @var string
75
+     */
76
+    public $lang = '';
77
+
78
+    /**
79
+     * Résultat de la compilation: toujours une expression PHP
80
+     *
81
+     * @var string
82
+     */
83
+    public $code = '';
84 84
 }
85 85
 
86 86
 
@@ -90,44 +90,44 @@  discard block
 block discarded – undo
90 90
  * @package SPIP\Core\Compilateur\AST
91 91
  **/
92 92
 class Texte {
93
-	/**
94
-	 * Type de noeud
95
-	 *
96
-	 * @var string
97
-	 */
98
-	public $type = 'texte';
99
-
100
-	/**
101
-	 * Le texte
102
-	 *
103
-	 * @var string
104
-	 */
105
-	public $texte;
106
-
107
-	/**
108
-	 * Contenu avant le texte.
109
-	 *
110
-	 * Vide ou apostrophe simple ou double si le texte en était entouré
111
-	 *
112
-	 * @var string|array
113
-	 */
114
-	public $avant = "";
115
-
116
-	/**
117
-	 * Contenu après le texte.
118
-	 *
119
-	 * Vide ou apostrophe simple ou double si le texte en était entouré
120
-	 *
121
-	 * @var string|array
122
-	 */
123
-	public $apres = "";
124
-
125
-	/**
126
-	 * Numéro de ligne dans le code source du squelette
127
-	 *
128
-	 * @var int
129
-	 */
130
-	public $ligne = 0;
93
+    /**
94
+     * Type de noeud
95
+     *
96
+     * @var string
97
+     */
98
+    public $type = 'texte';
99
+
100
+    /**
101
+     * Le texte
102
+     *
103
+     * @var string
104
+     */
105
+    public $texte;
106
+
107
+    /**
108
+     * Contenu avant le texte.
109
+     *
110
+     * Vide ou apostrophe simple ou double si le texte en était entouré
111
+     *
112
+     * @var string|array
113
+     */
114
+    public $avant = "";
115
+
116
+    /**
117
+     * Contenu après le texte.
118
+     *
119
+     * Vide ou apostrophe simple ou double si le texte en était entouré
120
+     *
121
+     * @var string|array
122
+     */
123
+    public $apres = "";
124
+
125
+    /**
126
+     * Numéro de ligne dans le code source du squelette
127
+     *
128
+     * @var int
129
+     */
130
+    public $ligne = 0;
131 131
 }
132 132
 
133 133
 /**
@@ -136,50 +136,50 @@  discard block
 block discarded – undo
136 136
  * @package SPIP\Core\Compilateur\AST
137 137
  **/
138 138
 class Inclure {
139
-	/**
140
-	 * Type de noeud
141
-	 *
142
-	 * @var string
143
-	 */
144
-	public $type = 'include';
145
-
146
-	/**
147
-	 * Nom d'un fichier inclu
148
-	 *
149
-	 * - Objet Texte si inclusion d'un autre squelette
150
-	 * - chaîne si inclusion d'un fichier PHP directement
151
-	 *
152
-	 * @var string|Texte
153
-	 */
154
-	public $texte;
155
-
156
-	/**
157
-	 * Inutilisé, propriété générique de l'AST
158
-	 *
159
-	 * @var string|array
160
-	 */
161
-	public $avant = '';
162
-
163
-	/**
164
-	 * Inutilisé, propriété générique de l'AST
165
-	 *
166
-	 * @var string|array
167
-	 */
168
-	public $apres = '';
169
-
170
-	/**
171
-	 * Numéro de ligne dans le code source du squelette
172
-	 *
173
-	 * @var int
174
-	 */
175
-	public $ligne = 0;
176
-
177
-	/**
178
-	 * Valeurs des paramètres
179
-	 *
180
-	 * @var array
181
-	 */
182
-	public $param = array();
139
+    /**
140
+     * Type de noeud
141
+     *
142
+     * @var string
143
+     */
144
+    public $type = 'include';
145
+
146
+    /**
147
+     * Nom d'un fichier inclu
148
+     *
149
+     * - Objet Texte si inclusion d'un autre squelette
150
+     * - chaîne si inclusion d'un fichier PHP directement
151
+     *
152
+     * @var string|Texte
153
+     */
154
+    public $texte;
155
+
156
+    /**
157
+     * Inutilisé, propriété générique de l'AST
158
+     *
159
+     * @var string|array
160
+     */
161
+    public $avant = '';
162
+
163
+    /**
164
+     * Inutilisé, propriété générique de l'AST
165
+     *
166
+     * @var string|array
167
+     */
168
+    public $apres = '';
169
+
170
+    /**
171
+     * Numéro de ligne dans le code source du squelette
172
+     *
173
+     * @var int
174
+     */
175
+    public $ligne = 0;
176
+
177
+    /**
178
+     * Valeurs des paramètres
179
+     *
180
+     * @var array
181
+     */
182
+    public $param = array();
183 183
 }
184 184
 
185 185
 
@@ -189,384 +189,384 @@  discard block
 block discarded – undo
189 189
  * @package SPIP\Core\Compilateur\AST
190 190
  **/
191 191
 class Boucle {
192
-	/**
193
-	 * Type de noeud
194
-	 *
195
-	 * @var string
196
-	 */
197
-	public $type = 'boucle';
198
-
199
-	/**
200
-	 * Identifiant de la boucle
201
-	 *
202
-	 * @var string
203
-	 */
204
-	public $id_boucle;
205
-
206
-	/**
207
-	 * Identifiant de la boucle parente
208
-	 *
209
-	 * @var string
210
-	 */
211
-	public $id_parent = '';
212
-
213
-	/**
214
-	 * Partie avant toujours affichee
215
-	 *
216
-	 * @var string|array
217
-	 */
218
-	public $preaff = '';
219
-
220
-	/**
221
-	 * Partie optionnelle avant
222
-	 *
223
-	 * @var string|array
224
-	 */
225
-	public $avant = '';
226
-
227
-	/**
228
-	 * Pour chaque élément
229
-	 *
230
-	 * @var string|array
231
-	 */
232
-	public $milieu = '';
233
-
234
-	/**
235
-	 * Partie optionnelle après
236
-	 *
237
-	 * @var string|array
238
-	 */
239
-	public $apres = '';
240
-
241
-	/**
242
-	 * Partie alternative, si pas de résultat dans la boucle
243
-	 *
244
-	 * @var string|array
245
-	 */
246
-	public $altern = '';
247
-
248
-	/**
249
-	 * Partie apres toujours affichee
250
-	 *
251
-	 * @var string|array
252
-	 */
253
-	public $postaff = '';
254
-
255
-
256
-	/**
257
-	 * La boucle doit-elle sélectionner la langue ?
258
-	 *
259
-	 * @var string|null
260
-	 */
261
-	public $lang_select;
262
-
263
-	/**
264
-	 * Alias de table d'application de la requête ou nom complet de la table SQL
265
-	 *
266
-	 * @var string|null
267
-	 */
268
-	public $type_requete;
269
-
270
-	/**
271
-	 * La table est elle optionnelle ?
272
-	 *
273
-	 * Si oui, aucune erreur ne sera générée si la table demandée n'est pas présente
274
-	 *
275
-	 * @var bool
276
-	 */
277
-	public $table_optionnelle = false;
278
-
279
-	/**
280
-	 * Nom du fichier de connexion
281
-	 *
282
-	 * @var string
283
-	 */
284
-	public $sql_serveur = '';
285
-
286
-	/**
287
-	 * Paramètres de la boucle
288
-	 *
289
-	 * Description des paramètres passés à la boucle, qui servent ensuite
290
-	 * au calcul des critères
291
-	 *
292
-	 * @var array
293
-	 */
294
-	public $param = array();
295
-
296
-	/**
297
-	 * Critères de la boucle
298
-	 *
299
-	 * @var Critere[]
300
-	 */
301
-	public $criteres = array();
302
-
303
-	/**
304
-	 * Textes insérés entre 2 éléments de boucle (critère inter)
305
-	 *
306
-	 * @var string[]
307
-	 */
308
-	public $separateur = array();
309
-
310
-	/**
311
-	 * Liste des jointures possibles avec cette table
312
-	 *
313
-	 * Les jointures par défaut de la table sont complétées en priorité
314
-	 * des jointures déclarées explicitement sur la boucle
315
-	 *
316
-	 * @see base_trouver_table_dist()
317
-	 * @var array
318
-	 */
319
-	public $jointures = array();
320
-
321
-	/**
322
-	 * Jointures explicites avec cette table
323
-	 *
324
-	 * Ces jointures sont utilisées en priorité par rapport aux jointures
325
-	 * normales possibles pour retrouver les colonnes demandées extérieures
326
-	 * à la boucle.
327
-	 *
328
-	 * @var string|bool
329
-	 */
330
-	public $jointures_explicites = false;
331
-
332
-	/**
333
-	 * Nom de la variable PHP stockant le noms de doublons utilisés "$doublons_index"
334
-	 *
335
-	 * @var string|null
336
-	 */
337
-	public $doublons;
338
-
339
-	/**
340
-	 * Code PHP ajouté au début de chaque itération de boucle.
341
-	 *
342
-	 * Utilisé entre autre par les critères {pagination}, {n-a,b}, {a/b}...
343
-	 *
344
-	 * @var string
345
-	 */
346
-	public $partie = "";
347
-
348
-	/**
349
-	 * Nombre de divisions de la boucle, d'éléments à afficher,
350
-	 * ou de soustractions d'éléments à faire
351
-	 *
352
-	 * Dans les critères limitant le nombre d'éléments affichés
353
-	 * {a,b}, {a,n-b}, {a/b}, {pagination b}, b est affecté à total_parties.
354
-	 *
355
-	 * @var string
356
-	 */
357
-	public $total_parties = "";
358
-
359
-	/**
360
-	 * Code PHP ajouté avant l'itération de boucle.
361
-	 *
362
-	 * Utilisé entre autre par les critères {pagination}, {a,b}, {a/b}
363
-	 * pour initialiser les variables de début et de fin d'itération.
364
-	 *
365
-	 * @var string
366
-	 */
367
-	public $mode_partie = '';
368
-
369
-	/**
370
-	 * Identifiant d'une boucle qui appelle celle-ci de manière récursive
371
-	 *
372
-	 * Si une boucle est appelée de manière récursive quelque part par
373
-	 * une autre boucle comme <BOUCLE_rec(boucle_identifiant) />, cette
374
-	 * boucle (identifiant) reçoit dans cette propriété l'identifiant
375
-	 * de l'appelant (rec)
376
-	 *
377
-	 * @var string
378
-	 */
379
-	public $externe = '';
380
-
381
-	// champs pour la construction de la requete SQL
382
-
383
-	/**
384
-	 * Liste des champs à récupérer par la boucle
385
-	 *
386
-	 * Expression 'table.nom_champ' ou calculée 'nom_champ AS x'
387
-	 *
388
-	 * @var string[]
389
-	 */
390
-	public $select = array();
391
-
392
-	/**
393
-	 * Liste des alias / tables SQL utilisées dans la boucle
394
-	 *
395
-	 * L'index est un identifiant (xx dans spip_xx assez souvent) qui servira
396
-	 * d'alias au nom de la table ; la valeur est le nom de la table SQL désirée.
397
-	 *
398
-	 * L'index 0 peut définir le type de sources de données de l'itérateur DATA
399
-	 *
400
-	 * @var string[]
401
-	 */
402
-	public $from = array();
403
-
404
-	/**
405
-	 * Liste des alias / type de jointures utilisées dans la boucle
406
-	 *
407
-	 * L'index est le nom d'alias (comme pour la propriété $from), et la valeur
408
-	 * un type de jointure parmi 'INNER', 'LEFT', 'RIGHT', 'OUTER'.
409
-	 *
410
-	 * Lorsque le type n'est pas déclaré pour un alias, c'est 'INNER'
411
-	 * qui sera utilisé par défaut (créant donc un INNER JOIN).
412
-	 *
413
-	 * @var string[]
414
-	 */
415
-	public $from_type = array();
416
-
417
-	/**
418
-	 * Liste des conditions WHERE de la boucle
419
-	 *
420
-	 * Permet de restreindre les éléments retournés par une boucle
421
-	 * en fonctions des conditions transmises dans ce tableau.
422
-	 *
423
-	 * Ce tableau peut avoir plusieurs niveaux de profondeur.
424
-	 *
425
-	 * Les éléments du premier niveau sont reliés par des AND, donc
426
-	 * chaque élément ajouté directement au where par
427
-	 * $boucle->where[] = array(...) ou $boucle->where[] = "'expression'"
428
-	 * est une condition AND en plus.
429
-	 *
430
-	 * Par contre, lorsqu'on indique un tableau, il peut décrire des relations
431
-	 * internes différentes. Soit $expr un tableau d'expressions quelconques de 3 valeurs :
432
-	 * $expr = array(operateur, val1, val2)
433
-	 *
434
-	 * Ces 3 valeurs sont des expressions PHP. L'index 0 désigne l'opérateur
435
-	 * à réaliser tel que :
436
-	 *
437
-	 * - "'='" , "'>='", "'<'", "'IN'", "'REGEXP'", "'LIKE'", ... :
438
-	 *    val1 et val2 sont des champs et valeurs à utiliser dans la comparaison
439
-	 *    suivant cet ordre : "val1 operateur val2".
440
-	 *    Exemple : $boucle->where[] = array("'='", "'articles.statut'", "'\"publie\"'");
441
-	 * - "'AND'", "'OR'", "'NOT'" :
442
-	 *    dans ce cas val1 et val2 sont également des expressions
443
-	 *    de comparaison complètes, et peuvent être eux-même des tableaux comme $expr
444
-	 *    Exemples :
445
-	 *    $boucle->where[] = array("'OR'", $expr1, $expr2);
446
-	 *    $boucle->where[] = array("'NOT'", $expr); // val2 n'existe pas avec NOT
447
-	 *
448
-	 * D'autres noms sont possibles pour l'opérateur (le nombre de valeurs diffère) :
449
-	 * - "'SELF'", "'SUBSELECT'" : indiquent des sous requêtes
450
-	 * - "'?'" : indique une condition à faire évaluer (val1 ? val2 : val3)
451
-	 *
452
-	 * @var array
453
-	 */
454
-	public $where = array();
455
-
456
-	public $join = array();
457
-	public $having = array();
458
-	public $limit;
459
-	public $group = array();
460
-	public $order = array();
461
-	public $default_order = array();
462
-	public $date = 'date';
463
-	public $hash = "";
464
-	public $in = "";
465
-	public $sous_requete = false;
466
-
467
-	/**
468
-	 * Code PHP qui sera ajouté en tout début de la fonction de boucle
469
-	 *
470
-	 * Il sert à insérer le code calculant une hierarchie
471
-	 *
472
-	 * @var string
473
-	 */
474
-	public $hierarchie = '';
475
-
476
-	/**
477
-	 * Indique la présence d'un critère sur le statut
478
-	 *
479
-	 * @deprecated Remplacé par $boucle->modificateur['criteres']['statut']
480
-	 * @var bool
481
-	 */
482
-	public $statut = false;
483
-
484
-	// champs pour la construction du corps PHP
485
-
486
-	/**
487
-	 * Description des sources de données de la boucle
488
-	 *
489
-	 * Description des données de la boucle issu de trouver_table
490
-	 * dans le cadre de l'itérateur SQL et contenant au moins l'index 'field'.
491
-	 *
492
-	 * @see base_trouver_table_dist()
493
-	 * @var array
494
-	 */
495
-	public $show = array();
496
-
497
-	/**
498
-	 * Nom de la table SQL principale de la boucle, sans son préfixe
499
-	 *
500
-	 * @var string
501
-	 */
502
-	public $id_table;
503
-
504
-	/**
505
-	 * Nom de la clé primaire de la table SQL principale de la boucle
506
-	 *
507
-	 * @var string
508
-	 */
509
-	public $primary;
510
-
511
-	/**
512
-	 * Code PHP compilé de la boucle
513
-	 *
514
-	 * @var string
515
-	 */
516
-	public $return;
517
-
518
-	public $numrows = false;
519
-	public $cptrows = false;
520
-
521
-	/**
522
-	 * Description du squelette
523
-	 *
524
-	 * Sert pour la gestion d'erreur et la production de code dependant du contexte
525
-	 *
526
-	 * Peut contenir les index :
527
-	 *
528
-	 * - nom : Nom du fichier de cache
529
-	 * - gram : Nom de la grammaire du squelette (détermine le phraseur à utiliser)
530
-	 * - sourcefile : Chemin du squelette
531
-	 * - squelette : Code du squelette
532
-	 * - id_mere : Identifiant de la boucle parente
533
-	 * - documents : Pour embed et img dans les textes
534
-	 * - session : Pour un cache sessionné par auteur
535
-	 * - niv : Niveau de tabulation
536
-	 *
537
-	 * @var array
538
-	 */
539
-	public $descr = array();
540
-
541
-	/**
542
-	 * Numéro de ligne dans le code source du squelette
543
-	 *
544
-	 * @var int
545
-	 */
546
-	public $ligne = 0;
547
-
548
-
549
-	public $modificateur = array(); // table pour stocker les modificateurs de boucle tels que tout, plat ..., utilisable par les plugins egalement
550
-
551
-	/**
552
-	 * Type d'itérateur utilisé pour cette boucle
553
-	 *
554
-	 * - 'SQL' dans le cadre d'une boucle sur une table SQL
555
-	 * - 'DATA' pour l'itérateur DATA, ...
556
-	 *
557
-	 * @var string
558
-	 */
559
-	public $iterateur = ''; // type d'iterateur
560
-
561
-	/**
562
-	 * @var array $debug Textes qui seront insérés dans l’entête de boucle du mode debug
563
-	 */
564
-	public $debug = [];
565
-
566
-	// obsoletes, conserves provisoirement pour compatibilite
567
-	public $tout = false;
568
-	public $plat = false;
569
-	public $lien = false;
192
+    /**
193
+     * Type de noeud
194
+     *
195
+     * @var string
196
+     */
197
+    public $type = 'boucle';
198
+
199
+    /**
200
+     * Identifiant de la boucle
201
+     *
202
+     * @var string
203
+     */
204
+    public $id_boucle;
205
+
206
+    /**
207
+     * Identifiant de la boucle parente
208
+     *
209
+     * @var string
210
+     */
211
+    public $id_parent = '';
212
+
213
+    /**
214
+     * Partie avant toujours affichee
215
+     *
216
+     * @var string|array
217
+     */
218
+    public $preaff = '';
219
+
220
+    /**
221
+     * Partie optionnelle avant
222
+     *
223
+     * @var string|array
224
+     */
225
+    public $avant = '';
226
+
227
+    /**
228
+     * Pour chaque élément
229
+     *
230
+     * @var string|array
231
+     */
232
+    public $milieu = '';
233
+
234
+    /**
235
+     * Partie optionnelle après
236
+     *
237
+     * @var string|array
238
+     */
239
+    public $apres = '';
240
+
241
+    /**
242
+     * Partie alternative, si pas de résultat dans la boucle
243
+     *
244
+     * @var string|array
245
+     */
246
+    public $altern = '';
247
+
248
+    /**
249
+     * Partie apres toujours affichee
250
+     *
251
+     * @var string|array
252
+     */
253
+    public $postaff = '';
254
+
255
+
256
+    /**
257
+     * La boucle doit-elle sélectionner la langue ?
258
+     *
259
+     * @var string|null
260
+     */
261
+    public $lang_select;
262
+
263
+    /**
264
+     * Alias de table d'application de la requête ou nom complet de la table SQL
265
+     *
266
+     * @var string|null
267
+     */
268
+    public $type_requete;
269
+
270
+    /**
271
+     * La table est elle optionnelle ?
272
+     *
273
+     * Si oui, aucune erreur ne sera générée si la table demandée n'est pas présente
274
+     *
275
+     * @var bool
276
+     */
277
+    public $table_optionnelle = false;
278
+
279
+    /**
280
+     * Nom du fichier de connexion
281
+     *
282
+     * @var string
283
+     */
284
+    public $sql_serveur = '';
285
+
286
+    /**
287
+     * Paramètres de la boucle
288
+     *
289
+     * Description des paramètres passés à la boucle, qui servent ensuite
290
+     * au calcul des critères
291
+     *
292
+     * @var array
293
+     */
294
+    public $param = array();
295
+
296
+    /**
297
+     * Critères de la boucle
298
+     *
299
+     * @var Critere[]
300
+     */
301
+    public $criteres = array();
302
+
303
+    /**
304
+     * Textes insérés entre 2 éléments de boucle (critère inter)
305
+     *
306
+     * @var string[]
307
+     */
308
+    public $separateur = array();
309
+
310
+    /**
311
+     * Liste des jointures possibles avec cette table
312
+     *
313
+     * Les jointures par défaut de la table sont complétées en priorité
314
+     * des jointures déclarées explicitement sur la boucle
315
+     *
316
+     * @see base_trouver_table_dist()
317
+     * @var array
318
+     */
319
+    public $jointures = array();
320
+
321
+    /**
322
+     * Jointures explicites avec cette table
323
+     *
324
+     * Ces jointures sont utilisées en priorité par rapport aux jointures
325
+     * normales possibles pour retrouver les colonnes demandées extérieures
326
+     * à la boucle.
327
+     *
328
+     * @var string|bool
329
+     */
330
+    public $jointures_explicites = false;
331
+
332
+    /**
333
+     * Nom de la variable PHP stockant le noms de doublons utilisés "$doublons_index"
334
+     *
335
+     * @var string|null
336
+     */
337
+    public $doublons;
338
+
339
+    /**
340
+     * Code PHP ajouté au début de chaque itération de boucle.
341
+     *
342
+     * Utilisé entre autre par les critères {pagination}, {n-a,b}, {a/b}...
343
+     *
344
+     * @var string
345
+     */
346
+    public $partie = "";
347
+
348
+    /**
349
+     * Nombre de divisions de la boucle, d'éléments à afficher,
350
+     * ou de soustractions d'éléments à faire
351
+     *
352
+     * Dans les critères limitant le nombre d'éléments affichés
353
+     * {a,b}, {a,n-b}, {a/b}, {pagination b}, b est affecté à total_parties.
354
+     *
355
+     * @var string
356
+     */
357
+    public $total_parties = "";
358
+
359
+    /**
360
+     * Code PHP ajouté avant l'itération de boucle.
361
+     *
362
+     * Utilisé entre autre par les critères {pagination}, {a,b}, {a/b}
363
+     * pour initialiser les variables de début et de fin d'itération.
364
+     *
365
+     * @var string
366
+     */
367
+    public $mode_partie = '';
368
+
369
+    /**
370
+     * Identifiant d'une boucle qui appelle celle-ci de manière récursive
371
+     *
372
+     * Si une boucle est appelée de manière récursive quelque part par
373
+     * une autre boucle comme <BOUCLE_rec(boucle_identifiant) />, cette
374
+     * boucle (identifiant) reçoit dans cette propriété l'identifiant
375
+     * de l'appelant (rec)
376
+     *
377
+     * @var string
378
+     */
379
+    public $externe = '';
380
+
381
+    // champs pour la construction de la requete SQL
382
+
383
+    /**
384
+     * Liste des champs à récupérer par la boucle
385
+     *
386
+     * Expression 'table.nom_champ' ou calculée 'nom_champ AS x'
387
+     *
388
+     * @var string[]
389
+     */
390
+    public $select = array();
391
+
392
+    /**
393
+     * Liste des alias / tables SQL utilisées dans la boucle
394
+     *
395
+     * L'index est un identifiant (xx dans spip_xx assez souvent) qui servira
396
+     * d'alias au nom de la table ; la valeur est le nom de la table SQL désirée.
397
+     *
398
+     * L'index 0 peut définir le type de sources de données de l'itérateur DATA
399
+     *
400
+     * @var string[]
401
+     */
402
+    public $from = array();
403
+
404
+    /**
405
+     * Liste des alias / type de jointures utilisées dans la boucle
406
+     *
407
+     * L'index est le nom d'alias (comme pour la propriété $from), et la valeur
408
+     * un type de jointure parmi 'INNER', 'LEFT', 'RIGHT', 'OUTER'.
409
+     *
410
+     * Lorsque le type n'est pas déclaré pour un alias, c'est 'INNER'
411
+     * qui sera utilisé par défaut (créant donc un INNER JOIN).
412
+     *
413
+     * @var string[]
414
+     */
415
+    public $from_type = array();
416
+
417
+    /**
418
+     * Liste des conditions WHERE de la boucle
419
+     *
420
+     * Permet de restreindre les éléments retournés par une boucle
421
+     * en fonctions des conditions transmises dans ce tableau.
422
+     *
423
+     * Ce tableau peut avoir plusieurs niveaux de profondeur.
424
+     *
425
+     * Les éléments du premier niveau sont reliés par des AND, donc
426
+     * chaque élément ajouté directement au where par
427
+     * $boucle->where[] = array(...) ou $boucle->where[] = "'expression'"
428
+     * est une condition AND en plus.
429
+     *
430
+     * Par contre, lorsqu'on indique un tableau, il peut décrire des relations
431
+     * internes différentes. Soit $expr un tableau d'expressions quelconques de 3 valeurs :
432
+     * $expr = array(operateur, val1, val2)
433
+     *
434
+     * Ces 3 valeurs sont des expressions PHP. L'index 0 désigne l'opérateur
435
+     * à réaliser tel que :
436
+     *
437
+     * - "'='" , "'>='", "'<'", "'IN'", "'REGEXP'", "'LIKE'", ... :
438
+     *    val1 et val2 sont des champs et valeurs à utiliser dans la comparaison
439
+     *    suivant cet ordre : "val1 operateur val2".
440
+     *    Exemple : $boucle->where[] = array("'='", "'articles.statut'", "'\"publie\"'");
441
+     * - "'AND'", "'OR'", "'NOT'" :
442
+     *    dans ce cas val1 et val2 sont également des expressions
443
+     *    de comparaison complètes, et peuvent être eux-même des tableaux comme $expr
444
+     *    Exemples :
445
+     *    $boucle->where[] = array("'OR'", $expr1, $expr2);
446
+     *    $boucle->where[] = array("'NOT'", $expr); // val2 n'existe pas avec NOT
447
+     *
448
+     * D'autres noms sont possibles pour l'opérateur (le nombre de valeurs diffère) :
449
+     * - "'SELF'", "'SUBSELECT'" : indiquent des sous requêtes
450
+     * - "'?'" : indique une condition à faire évaluer (val1 ? val2 : val3)
451
+     *
452
+     * @var array
453
+     */
454
+    public $where = array();
455
+
456
+    public $join = array();
457
+    public $having = array();
458
+    public $limit;
459
+    public $group = array();
460
+    public $order = array();
461
+    public $default_order = array();
462
+    public $date = 'date';
463
+    public $hash = "";
464
+    public $in = "";
465
+    public $sous_requete = false;
466
+
467
+    /**
468
+     * Code PHP qui sera ajouté en tout début de la fonction de boucle
469
+     *
470
+     * Il sert à insérer le code calculant une hierarchie
471
+     *
472
+     * @var string
473
+     */
474
+    public $hierarchie = '';
475
+
476
+    /**
477
+     * Indique la présence d'un critère sur le statut
478
+     *
479
+     * @deprecated Remplacé par $boucle->modificateur['criteres']['statut']
480
+     * @var bool
481
+     */
482
+    public $statut = false;
483
+
484
+    // champs pour la construction du corps PHP
485
+
486
+    /**
487
+     * Description des sources de données de la boucle
488
+     *
489
+     * Description des données de la boucle issu de trouver_table
490
+     * dans le cadre de l'itérateur SQL et contenant au moins l'index 'field'.
491
+     *
492
+     * @see base_trouver_table_dist()
493
+     * @var array
494
+     */
495
+    public $show = array();
496
+
497
+    /**
498
+     * Nom de la table SQL principale de la boucle, sans son préfixe
499
+     *
500
+     * @var string
501
+     */
502
+    public $id_table;
503
+
504
+    /**
505
+     * Nom de la clé primaire de la table SQL principale de la boucle
506
+     *
507
+     * @var string
508
+     */
509
+    public $primary;
510
+
511
+    /**
512
+     * Code PHP compilé de la boucle
513
+     *
514
+     * @var string
515
+     */
516
+    public $return;
517
+
518
+    public $numrows = false;
519
+    public $cptrows = false;
520
+
521
+    /**
522
+     * Description du squelette
523
+     *
524
+     * Sert pour la gestion d'erreur et la production de code dependant du contexte
525
+     *
526
+     * Peut contenir les index :
527
+     *
528
+     * - nom : Nom du fichier de cache
529
+     * - gram : Nom de la grammaire du squelette (détermine le phraseur à utiliser)
530
+     * - sourcefile : Chemin du squelette
531
+     * - squelette : Code du squelette
532
+     * - id_mere : Identifiant de la boucle parente
533
+     * - documents : Pour embed et img dans les textes
534
+     * - session : Pour un cache sessionné par auteur
535
+     * - niv : Niveau de tabulation
536
+     *
537
+     * @var array
538
+     */
539
+    public $descr = array();
540
+
541
+    /**
542
+     * Numéro de ligne dans le code source du squelette
543
+     *
544
+     * @var int
545
+     */
546
+    public $ligne = 0;
547
+
548
+
549
+    public $modificateur = array(); // table pour stocker les modificateurs de boucle tels que tout, plat ..., utilisable par les plugins egalement
550
+
551
+    /**
552
+     * Type d'itérateur utilisé pour cette boucle
553
+     *
554
+     * - 'SQL' dans le cadre d'une boucle sur une table SQL
555
+     * - 'DATA' pour l'itérateur DATA, ...
556
+     *
557
+     * @var string
558
+     */
559
+    public $iterateur = ''; // type d'iterateur
560
+
561
+    /**
562
+     * @var array $debug Textes qui seront insérés dans l’entête de boucle du mode debug
563
+     */
564
+    public $debug = [];
565
+
566
+    // obsoletes, conserves provisoirement pour compatibilite
567
+    public $tout = false;
568
+    public $plat = false;
569
+    public $lien = false;
570 570
 }
571 571
 
572 572
 /**
@@ -577,56 +577,56 @@  discard block
 block discarded – undo
577 577
  * @package SPIP\Core\Compilateur\AST
578 578
  **/
579 579
 class Critere {
580
-	/**
581
-	 * Type de noeud
582
-	 *
583
-	 * @var string
584
-	 */
585
-	public $type = 'critere';
586
-
587
-	/**
588
-	 * Opérateur (>, <, >=, IN, ...)
589
-	 *
590
-	 * @var null|string
591
-	 */
592
-	public $op;
593
-
594
-	/**
595
-	 * Présence d'une négation (truc !op valeur)
596
-	 *
597
-	 * @var null|string
598
-	 */
599
-	public $not;
600
-
601
-	/**
602
-	 * Présence d'une exclusion (!truc op valeur)
603
-	 *
604
-	 * @var null|string
605
-	 */
606
-	public $exclus;
607
-
608
-	/**
609
-	 * Présence d'une condition dans le critère (truc ?)
610
-	 *
611
-	 * @var bool
612
-	 */
613
-	public $cond = false;
614
-
615
-	/**
616
-	 * Paramètres du critère
617
-	 * - $param[0] : élément avant l'opérateur
618
-	 * - $param[1..n] : éléments après l'opérateur
619
-	 *
620
-	 * @var array
621
-	 */
622
-	public $param = array();
623
-
624
-	/**
625
-	 * Numéro de ligne dans le code source du squelette
626
-	 *
627
-	 * @var int
628
-	 */
629
-	public $ligne = 0;
580
+    /**
581
+     * Type de noeud
582
+     *
583
+     * @var string
584
+     */
585
+    public $type = 'critere';
586
+
587
+    /**
588
+     * Opérateur (>, <, >=, IN, ...)
589
+     *
590
+     * @var null|string
591
+     */
592
+    public $op;
593
+
594
+    /**
595
+     * Présence d'une négation (truc !op valeur)
596
+     *
597
+     * @var null|string
598
+     */
599
+    public $not;
600
+
601
+    /**
602
+     * Présence d'une exclusion (!truc op valeur)
603
+     *
604
+     * @var null|string
605
+     */
606
+    public $exclus;
607
+
608
+    /**
609
+     * Présence d'une condition dans le critère (truc ?)
610
+     *
611
+     * @var bool
612
+     */
613
+    public $cond = false;
614
+
615
+    /**
616
+     * Paramètres du critère
617
+     * - $param[0] : élément avant l'opérateur
618
+     * - $param[1..n] : éléments après l'opérateur
619
+     *
620
+     * @var array
621
+     */
622
+    public $param = array();
623
+
624
+    /**
625
+     * Numéro de ligne dans le code source du squelette
626
+     *
627
+     * @var int
628
+     */
629
+    public $ligne = 0;
630 630
 }
631 631
 
632 632
 /**
@@ -635,139 +635,139 @@  discard block
 block discarded – undo
635 635
  * @package SPIP\Core\Compilateur\AST
636 636
  **/
637 637
 class Champ {
638
-	/**
639
-	 * Type de noeud
640
-	 *
641
-	 * @var string
642
-	 */
643
-	public $type = 'champ';
644
-
645
-	/**
646
-	 * Nom du champ demandé. Exemple 'ID_ARTICLE'
647
-	 *
648
-	 * @var string|null
649
-	 */
650
-	public $nom_champ;
651
-
652
-	/**
653
-	 * Identifiant de la boucle parente si explicité
654
-	 *
655
-	 * @var string|null
656
-	 */
657
-	public $nom_boucle = '';
658
-
659
-	/**
660
-	 * Partie optionnelle avant
661
-	 *
662
-	 * @var null|string|array
663
-	 */
664
-	public $avant;
665
-
666
-	/**
667
-	 * Partie optionnelle après
668
-	 *
669
-	 * @var null|string|array
670
-	 */
671
-	public $apres;
672
-
673
-	/**
674
-	 * Étoiles : annuler des automatismes
675
-	 *
676
-	 * - '*' annule les filtres automatiques
677
-	 * - '**' annule en plus les protections de scripts
678
-	 *
679
-	 * @var null|string
680
-	 */
681
-	public $etoile;
682
-
683
-	/**
684
-	 * Arguments et filtres explicites sur la balise
685
-	 *
686
-	 * - $param[0] contient les arguments de la balise
687
-	 * - $param[1..n] contient les filtres à appliquer à la balise
688
-	 *
689
-	 * @var array
690
-	 */
691
-	public $param = array();
692
-
693
-	/**
694
-	 * Source des filtres  (compatibilité) (?)
695
-	 *
696
-	 * @var array|null
697
-	 */
698
-	public $fonctions = array();
699
-
700
-	/**
701
-	 * Identifiant de la boucle
702
-	 *
703
-	 * @var string
704
-	 */
705
-	public $id_boucle = '';
706
-
707
-	/**
708
-	 * AST du squelette, liste de toutes les boucles
709
-	 *
710
-	 * @var Boucles[]
711
-	 */
712
-	public $boucles;
713
-
714
-	/**
715
-	 * Alias de table d'application de la requête ou nom complet de la table SQL
716
-	 *
717
-	 * @var string|null
718
-	 */
719
-	public $type_requete;
720
-
721
-	/**
722
-	 * Résultat de la compilation: toujours une expression PHP
723
-	 *
724
-	 * @var string
725
-	 */
726
-	public $code = '';
727
-
728
-	/**
729
-	 * Interdire les scripts
730
-	 *
731
-	 * false si on est sûr de cette balise
732
-	 *
733
-	 * @see interdire_scripts()
734
-	 * @var bool
735
-	 */
736
-	public $interdire_scripts = true;
737
-
738
-	/**
739
-	 * Description du squelette
740
-	 *
741
-	 * Sert pour la gestion d'erreur et la production de code dependant du contexte
742
-	 *
743
-	 * Peut contenir les index :
744
-	 *
745
-	 * - nom : Nom du fichier de cache
746
-	 * - gram : Nom de la grammaire du squelette (détermine le phraseur à utiliser)
747
-	 * - sourcefile : Chemin du squelette
748
-	 * - squelette : Code du squelette
749
-	 * - id_mere : Identifiant de la boucle parente
750
-	 * - documents : Pour embed et img dans les textes
751
-	 * - session : Pour un cache sessionné par auteur
752
-	 * - niv : Niveau de tabulation
753
-	 *
754
-	 * @var array
755
-	 */
756
-	public $descr = array();
757
-
758
-	/**
759
-	 * Numéro de ligne dans le code source du squelette
760
-	 *
761
-	 * @var int
762
-	 */
763
-	public $ligne = 0;
764
-
765
-	/**
766
-	 * Drapeau pour reperer les balises calculées par une fonction explicite
767
-	 *
768
-	 * @var bool
769
-	 */
770
-	public $balise_calculee = false;
638
+    /**
639
+     * Type de noeud
640
+     *
641
+     * @var string
642
+     */
643
+    public $type = 'champ';
644
+
645
+    /**
646
+     * Nom du champ demandé. Exemple 'ID_ARTICLE'
647
+     *
648
+     * @var string|null
649
+     */
650
+    public $nom_champ;
651
+
652
+    /**
653
+     * Identifiant de la boucle parente si explicité
654
+     *
655
+     * @var string|null
656
+     */
657
+    public $nom_boucle = '';
658
+
659
+    /**
660
+     * Partie optionnelle avant
661
+     *
662
+     * @var null|string|array
663
+     */
664
+    public $avant;
665
+
666
+    /**
667
+     * Partie optionnelle après
668
+     *
669
+     * @var null|string|array
670
+     */
671
+    public $apres;
672
+
673
+    /**
674
+     * Étoiles : annuler des automatismes
675
+     *
676
+     * - '*' annule les filtres automatiques
677
+     * - '**' annule en plus les protections de scripts
678
+     *
679
+     * @var null|string
680
+     */
681
+    public $etoile;
682
+
683
+    /**
684
+     * Arguments et filtres explicites sur la balise
685
+     *
686
+     * - $param[0] contient les arguments de la balise
687
+     * - $param[1..n] contient les filtres à appliquer à la balise
688
+     *
689
+     * @var array
690
+     */
691
+    public $param = array();
692
+
693
+    /**
694
+     * Source des filtres  (compatibilité) (?)
695
+     *
696
+     * @var array|null
697
+     */
698
+    public $fonctions = array();
699
+
700
+    /**
701
+     * Identifiant de la boucle
702
+     *
703
+     * @var string
704
+     */
705
+    public $id_boucle = '';
706
+
707
+    /**
708
+     * AST du squelette, liste de toutes les boucles
709
+     *
710
+     * @var Boucles[]
711
+     */
712
+    public $boucles;
713
+
714
+    /**
715
+     * Alias de table d'application de la requête ou nom complet de la table SQL
716
+     *
717
+     * @var string|null
718
+     */
719
+    public $type_requete;
720
+
721
+    /**
722
+     * Résultat de la compilation: toujours une expression PHP
723
+     *
724
+     * @var string
725
+     */
726
+    public $code = '';
727
+
728
+    /**
729
+     * Interdire les scripts
730
+     *
731
+     * false si on est sûr de cette balise
732
+     *
733
+     * @see interdire_scripts()
734
+     * @var bool
735
+     */
736
+    public $interdire_scripts = true;
737
+
738
+    /**
739
+     * Description du squelette
740
+     *
741
+     * Sert pour la gestion d'erreur et la production de code dependant du contexte
742
+     *
743
+     * Peut contenir les index :
744
+     *
745
+     * - nom : Nom du fichier de cache
746
+     * - gram : Nom de la grammaire du squelette (détermine le phraseur à utiliser)
747
+     * - sourcefile : Chemin du squelette
748
+     * - squelette : Code du squelette
749
+     * - id_mere : Identifiant de la boucle parente
750
+     * - documents : Pour embed et img dans les textes
751
+     * - session : Pour un cache sessionné par auteur
752
+     * - niv : Niveau de tabulation
753
+     *
754
+     * @var array
755
+     */
756
+    public $descr = array();
757
+
758
+    /**
759
+     * Numéro de ligne dans le code source du squelette
760
+     *
761
+     * @var int
762
+     */
763
+    public $ligne = 0;
764
+
765
+    /**
766
+     * Drapeau pour reperer les balises calculées par une fonction explicite
767
+     *
768
+     * @var bool
769
+     */
770
+    public $balise_calculee = false;
771 771
 }
772 772
 
773 773
 
@@ -775,123 +775,123 @@  discard block
 block discarded – undo
775 775
  * Description d'une chaîne de langue
776 776
  **/
777 777
 class Idiome {
778
-	/**
779
-	 * Type de noeud
780
-	 *
781
-	 * @var string
782
-	 */
783
-	public $type = 'idiome';
784
-
785
-	/**
786
-	 * Clé de traduction demandée. Exemple 'item_oui'
787
-	 *
788
-	 * @var string
789
-	 */
790
-	public $nom_champ = "";
791
-
792
-	/**
793
-	 * Module de langue où chercher la clé de traduction. Exemple 'medias'
794
-	 *
795
-	 * @var string
796
-	 */
797
-	public $module = "";
798
-
799
-	/**
800
-	 * Arguments à passer à la chaîne
801
-	 *
802
-	 * @var array
803
-	 */
804
-	public $arg = array();
805
-
806
-	/**
807
-	 * Filtres à appliquer au résultat
808
-	 *
809
-	 * @var array
810
-	 */
811
-	public $param = array();
812
-
813
-	/**
814
-	 * Source des filtres  (compatibilité) (?)
815
-	 *
816
-	 * @var array|null
817
-	 */
818
-	public $fonctions = array();
819
-
820
-	/**
821
-	 * Inutilisé, propriété générique de l'AST
822
-	 *
823
-	 * @var string|array
824
-	 */
825
-	public $avant = '';
826
-
827
-	/**
828
-	 * Inutilisé, propriété générique de l'AST
829
-	 *
830
-	 * @var string|array
831
-	 */
832
-	public $apres = '';
833
-
834
-	/**
835
-	 * Identifiant de la boucle
836
-	 *
837
-	 * @var string
838
-	 */
839
-	public $id_boucle = '';
840
-
841
-	/**
842
-	 * AST du squelette, liste de toutes les boucles
843
-	 *
844
-	 * @var Boucles[]
845
-	 */
846
-	public $boucles;
847
-
848
-	/**
849
-	 * Alias de table d'application de la requête ou nom complet de la table SQL
850
-	 *
851
-	 * @var string|null
852
-	 */
853
-	public $type_requete;
854
-
855
-	/**
856
-	 * Résultat de la compilation: toujours une expression PHP
857
-	 *
858
-	 * @var string
859
-	 */
860
-	public $code = '';
861
-
862
-	/**
863
-	 * Interdire les scripts
864
-	 *
865
-	 * @see interdire_scripts()
866
-	 * @var bool
867
-	 */
868
-	public $interdire_scripts = false;
869
-
870
-	/**
871
-	 * Description du squelette
872
-	 *
873
-	 * Sert pour la gestion d'erreur et la production de code dependant du contexte
874
-	 *
875
-	 * Peut contenir les index :
876
-	 * - nom : Nom du fichier de cache
877
-	 * - gram : Nom de la grammaire du squelette (détermine le phraseur à utiliser)
878
-	 * - sourcefile : Chemin du squelette
879
-	 * - squelette : Code du squelette
880
-	 * - id_mere : Identifiant de la boucle parente
881
-	 * - documents : Pour embed et img dans les textes
882
-	 * - session : Pour un cache sessionné par auteur
883
-	 * - niv : Niveau de tabulation
884
-	 *
885
-	 * @var array
886
-	 */
887
-	public $descr = array();
888
-
889
-	/**
890
-	 * Numéro de ligne dans le code source du squelette
891
-	 *
892
-	 * @var int
893
-	 */
894
-	public $ligne = 0;
778
+    /**
779
+     * Type de noeud
780
+     *
781
+     * @var string
782
+     */
783
+    public $type = 'idiome';
784
+
785
+    /**
786
+     * Clé de traduction demandée. Exemple 'item_oui'
787
+     *
788
+     * @var string
789
+     */
790
+    public $nom_champ = "";
791
+
792
+    /**
793
+     * Module de langue où chercher la clé de traduction. Exemple 'medias'
794
+     *
795
+     * @var string
796
+     */
797
+    public $module = "";
798
+
799
+    /**
800
+     * Arguments à passer à la chaîne
801
+     *
802
+     * @var array
803
+     */
804
+    public $arg = array();
805
+
806
+    /**
807
+     * Filtres à appliquer au résultat
808
+     *
809
+     * @var array
810
+     */
811
+    public $param = array();
812
+
813
+    /**
814
+     * Source des filtres  (compatibilité) (?)
815
+     *
816
+     * @var array|null
817
+     */
818
+    public $fonctions = array();
819
+
820
+    /**
821
+     * Inutilisé, propriété générique de l'AST
822
+     *
823
+     * @var string|array
824
+     */
825
+    public $avant = '';
826
+
827
+    /**
828
+     * Inutilisé, propriété générique de l'AST
829
+     *
830
+     * @var string|array
831
+     */
832
+    public $apres = '';
833
+
834
+    /**
835
+     * Identifiant de la boucle
836
+     *
837
+     * @var string
838
+     */
839
+    public $id_boucle = '';
840
+
841
+    /**
842
+     * AST du squelette, liste de toutes les boucles
843
+     *
844
+     * @var Boucles[]
845
+     */
846
+    public $boucles;
847
+
848
+    /**
849
+     * Alias de table d'application de la requête ou nom complet de la table SQL
850
+     *
851
+     * @var string|null
852
+     */
853
+    public $type_requete;
854
+
855
+    /**
856
+     * Résultat de la compilation: toujours une expression PHP
857
+     *
858
+     * @var string
859
+     */
860
+    public $code = '';
861
+
862
+    /**
863
+     * Interdire les scripts
864
+     *
865
+     * @see interdire_scripts()
866
+     * @var bool
867
+     */
868
+    public $interdire_scripts = false;
869
+
870
+    /**
871
+     * Description du squelette
872
+     *
873
+     * Sert pour la gestion d'erreur et la production de code dependant du contexte
874
+     *
875
+     * Peut contenir les index :
876
+     * - nom : Nom du fichier de cache
877
+     * - gram : Nom de la grammaire du squelette (détermine le phraseur à utiliser)
878
+     * - sourcefile : Chemin du squelette
879
+     * - squelette : Code du squelette
880
+     * - id_mere : Identifiant de la boucle parente
881
+     * - documents : Pour embed et img dans les textes
882
+     * - session : Pour un cache sessionné par auteur
883
+     * - niv : Niveau de tabulation
884
+     *
885
+     * @var array
886
+     */
887
+    public $descr = array();
888
+
889
+    /**
890
+     * Numéro de ligne dans le code source du squelette
891
+     *
892
+     * @var int
893
+     */
894
+    public $ligne = 0;
895 895
 }
896 896
 
897 897
 /**
@@ -900,28 +900,28 @@  discard block
 block discarded – undo
900 900
  * @package SPIP\Core\Compilateur\AST
901 901
  **/
902 902
 class Polyglotte {
903
-	/**
904
-	 * Type de noeud
905
-	 *
906
-	 * @var string
907
-	 */
908
-	public $type = 'polyglotte';
909
-
910
-	/**
911
-	 * Tableau des traductions possibles classées par langue
912
-	 *
913
-	 * Tableau code de langue => texte
914
-	 *
915
-	 * @var array
916
-	 */
917
-	public $traductions = array();
918
-
919
-	/**
920
-	 * Numéro de ligne dans le code source du squelette
921
-	 *
922
-	 * @var int
923
-	 */
924
-	public $ligne = 0;
903
+    /**
904
+     * Type de noeud
905
+     *
906
+     * @var string
907
+     */
908
+    public $type = 'polyglotte';
909
+
910
+    /**
911
+     * Tableau des traductions possibles classées par langue
912
+     *
913
+     * Tableau code de langue => texte
914
+     *
915
+     * @var array
916
+     */
917
+    public $traductions = array();
918
+
919
+    /**
920
+     * Numéro de ligne dans le code source du squelette
921
+     *
922
+     * @var int
923
+     */
924
+    public $ligne = 0;
925 925
 }
926 926
 
927 927
 
@@ -946,86 +946,86 @@  discard block
 block discarded – undo
946 946
  */
947 947
 function declarer_interfaces() {
948 948
 
949
-	$GLOBALS['table_des_tables']['articles'] = 'articles';
950
-	$GLOBALS['table_des_tables']['auteurs'] = 'auteurs';
951
-	$GLOBALS['table_des_tables']['rubriques'] = 'rubriques';
952
-	$GLOBALS['table_des_tables']['hierarchie'] = 'rubriques';
953
-
954
-	// definition des statuts de publication
955
-	$GLOBALS['table_statut'] = array();
956
-
957
-	//
958
-	// tableau des tables de jointures
959
-	// Ex: gestion du critere {id_mot} dans la boucle(ARTICLES)
960
-	$GLOBALS['tables_jointures'] = array();
961
-	$GLOBALS['tables_jointures']['spip_jobs'][] = 'jobs_liens';
962
-
963
-	// $GLOBALS['exceptions_des_jointures']['titre_mot'] = array('spip_mots', 'titre'); // pour exemple
964
-	$GLOBALS['exceptions_des_jointures']['profondeur'] = array('spip_rubriques', 'profondeur');
965
-
966
-
967
-	if (!defined('_TRAITEMENT_TYPO')) {
968
-		define('_TRAITEMENT_TYPO', 'typo(%s, "TYPO", $connect, $Pile[0])');
969
-	}
970
-	if (!defined('_TRAITEMENT_RACCOURCIS')) {
971
-		define('_TRAITEMENT_RACCOURCIS', 'propre(%s, $connect, $Pile[0])');
972
-	}
973
-	if (!defined('_TRAITEMENT_TYPO_SANS_NUMERO')) {
974
-		define('_TRAITEMENT_TYPO_SANS_NUMERO', 'supprimer_numero(typo(%s), "TYPO", $connect, $Pile[0])');
975
-	}
976
-	$GLOBALS['table_des_traitements']['BIO'][] = _TRAITEMENT_RACCOURCIS;
977
-	$GLOBALS['table_des_traitements']['CHAPO'][] = _TRAITEMENT_RACCOURCIS;
978
-	$GLOBALS['table_des_traitements']['DATE'][] = 'normaliser_date(%s)';
979
-	$GLOBALS['table_des_traitements']['DATE_REDAC'][] = 'normaliser_date(%s)';
980
-	$GLOBALS['table_des_traitements']['DATE_MODIF'][] = 'normaliser_date(%s)';
981
-	$GLOBALS['table_des_traitements']['DATE_NOUVEAUTES'][] = 'normaliser_date(%s)';
982
-	$GLOBALS['table_des_traitements']['DESCRIPTIF'][] = _TRAITEMENT_RACCOURCIS;
983
-	$GLOBALS['table_des_traitements']['INTRODUCTION'][] = _TRAITEMENT_RACCOURCIS;
984
-	$GLOBALS['table_des_traitements']['NOM_SITE_SPIP'][] = _TRAITEMENT_TYPO;
985
-	$GLOBALS['table_des_traitements']['NOM'][] = _TRAITEMENT_TYPO_SANS_NUMERO;
986
-	$GLOBALS['table_des_traitements']['AUTEUR'][] = _TRAITEMENT_TYPO;
987
-	$GLOBALS['table_des_traitements']['PS'][] = _TRAITEMENT_RACCOURCIS;
988
-	$GLOBALS['table_des_traitements']['SOURCE'][] = _TRAITEMENT_TYPO;
989
-	$GLOBALS['table_des_traitements']['SOUSTITRE'][] = _TRAITEMENT_TYPO;
990
-	$GLOBALS['table_des_traitements']['SURTITRE'][] = _TRAITEMENT_TYPO;
991
-	$GLOBALS['table_des_traitements']['TAGS'][] = '%s';
992
-	$GLOBALS['table_des_traitements']['TEXTE'][] = _TRAITEMENT_RACCOURCIS;
993
-	$GLOBALS['table_des_traitements']['TITRE'][] = _TRAITEMENT_TYPO_SANS_NUMERO;
994
-	$GLOBALS['table_des_traitements']['TYPE'][] = _TRAITEMENT_TYPO;
995
-	$GLOBALS['table_des_traitements']['DESCRIPTIF_SITE_SPIP'][] = _TRAITEMENT_RACCOURCIS;
996
-	$GLOBALS['table_des_traitements']['SLOGAN_SITE_SPIP'][] = _TRAITEMENT_TYPO;
997
-	$GLOBALS['table_des_traitements']['ENV'][] = 'entites_html(%s,true)';
998
-
999
-	// valeur par defaut pour les balises non listees ci-dessus
1000
-	$GLOBALS['table_des_traitements']['*'][] = false; // pas de traitement, mais permet au compilo de trouver la declaration suivante
1001
-	// toujours securiser les DATA
1002
-	$GLOBALS['table_des_traitements']['*']['DATA'] = 'safehtml(%s)';
1003
-	// expliciter pour VALEUR qui est un champ calcule et ne sera pas protege par le catch-all *
1004
-	$GLOBALS['table_des_traitements']['VALEUR']['DATA'] = 'safehtml(%s)';
1005
-
1006
-
1007
-	// gerer l'affectation en 2 temps car si le pipe n'est pas encore declare, on ecrase les globales
1008
-	$interfaces = pipeline('declarer_tables_interfaces',
1009
-		array(
1010
-			'table_des_tables' => $GLOBALS['table_des_tables'],
1011
-			'exceptions_des_tables' => $GLOBALS['exceptions_des_tables'],
1012
-			'table_date' => $GLOBALS['table_date'],
1013
-			'table_titre' => $GLOBALS['table_titre'],
1014
-			'tables_jointures' => $GLOBALS['tables_jointures'],
1015
-			'exceptions_des_jointures' => $GLOBALS['exceptions_des_jointures'],
1016
-			'table_des_traitements' => $GLOBALS['table_des_traitements'],
1017
-			'table_statut' => $GLOBALS['table_statut'],
1018
-		));
1019
-	if ($interfaces) {
1020
-		$GLOBALS['table_des_tables'] = $interfaces['table_des_tables'];
1021
-		$GLOBALS['exceptions_des_tables'] = $interfaces['exceptions_des_tables'];
1022
-		$GLOBALS['table_date'] = $interfaces['table_date'];
1023
-		$GLOBALS['table_titre'] = $interfaces['table_titre'];
1024
-		$GLOBALS['tables_jointures'] = $interfaces['tables_jointures'];
1025
-		$GLOBALS['exceptions_des_jointures'] = $interfaces['exceptions_des_jointures'];
1026
-		$GLOBALS['table_des_traitements'] = $interfaces['table_des_traitements'];
1027
-		$GLOBALS['table_statut'] = $interfaces['table_statut'];
1028
-	}
949
+    $GLOBALS['table_des_tables']['articles'] = 'articles';
950
+    $GLOBALS['table_des_tables']['auteurs'] = 'auteurs';
951
+    $GLOBALS['table_des_tables']['rubriques'] = 'rubriques';
952
+    $GLOBALS['table_des_tables']['hierarchie'] = 'rubriques';
953
+
954
+    // definition des statuts de publication
955
+    $GLOBALS['table_statut'] = array();
956
+
957
+    //
958
+    // tableau des tables de jointures
959
+    // Ex: gestion du critere {id_mot} dans la boucle(ARTICLES)
960
+    $GLOBALS['tables_jointures'] = array();
961
+    $GLOBALS['tables_jointures']['spip_jobs'][] = 'jobs_liens';
962
+
963
+    // $GLOBALS['exceptions_des_jointures']['titre_mot'] = array('spip_mots', 'titre'); // pour exemple
964
+    $GLOBALS['exceptions_des_jointures']['profondeur'] = array('spip_rubriques', 'profondeur');
965
+
966
+
967
+    if (!defined('_TRAITEMENT_TYPO')) {
968
+        define('_TRAITEMENT_TYPO', 'typo(%s, "TYPO", $connect, $Pile[0])');
969
+    }
970
+    if (!defined('_TRAITEMENT_RACCOURCIS')) {
971
+        define('_TRAITEMENT_RACCOURCIS', 'propre(%s, $connect, $Pile[0])');
972
+    }
973
+    if (!defined('_TRAITEMENT_TYPO_SANS_NUMERO')) {
974
+        define('_TRAITEMENT_TYPO_SANS_NUMERO', 'supprimer_numero(typo(%s), "TYPO", $connect, $Pile[0])');
975
+    }
976
+    $GLOBALS['table_des_traitements']['BIO'][] = _TRAITEMENT_RACCOURCIS;
977
+    $GLOBALS['table_des_traitements']['CHAPO'][] = _TRAITEMENT_RACCOURCIS;
978
+    $GLOBALS['table_des_traitements']['DATE'][] = 'normaliser_date(%s)';
979
+    $GLOBALS['table_des_traitements']['DATE_REDAC'][] = 'normaliser_date(%s)';
980
+    $GLOBALS['table_des_traitements']['DATE_MODIF'][] = 'normaliser_date(%s)';
981
+    $GLOBALS['table_des_traitements']['DATE_NOUVEAUTES'][] = 'normaliser_date(%s)';
982
+    $GLOBALS['table_des_traitements']['DESCRIPTIF'][] = _TRAITEMENT_RACCOURCIS;
983
+    $GLOBALS['table_des_traitements']['INTRODUCTION'][] = _TRAITEMENT_RACCOURCIS;
984
+    $GLOBALS['table_des_traitements']['NOM_SITE_SPIP'][] = _TRAITEMENT_TYPO;
985
+    $GLOBALS['table_des_traitements']['NOM'][] = _TRAITEMENT_TYPO_SANS_NUMERO;
986
+    $GLOBALS['table_des_traitements']['AUTEUR'][] = _TRAITEMENT_TYPO;
987
+    $GLOBALS['table_des_traitements']['PS'][] = _TRAITEMENT_RACCOURCIS;
988
+    $GLOBALS['table_des_traitements']['SOURCE'][] = _TRAITEMENT_TYPO;
989
+    $GLOBALS['table_des_traitements']['SOUSTITRE'][] = _TRAITEMENT_TYPO;
990
+    $GLOBALS['table_des_traitements']['SURTITRE'][] = _TRAITEMENT_TYPO;
991
+    $GLOBALS['table_des_traitements']['TAGS'][] = '%s';
992
+    $GLOBALS['table_des_traitements']['TEXTE'][] = _TRAITEMENT_RACCOURCIS;
993
+    $GLOBALS['table_des_traitements']['TITRE'][] = _TRAITEMENT_TYPO_SANS_NUMERO;
994
+    $GLOBALS['table_des_traitements']['TYPE'][] = _TRAITEMENT_TYPO;
995
+    $GLOBALS['table_des_traitements']['DESCRIPTIF_SITE_SPIP'][] = _TRAITEMENT_RACCOURCIS;
996
+    $GLOBALS['table_des_traitements']['SLOGAN_SITE_SPIP'][] = _TRAITEMENT_TYPO;
997
+    $GLOBALS['table_des_traitements']['ENV'][] = 'entites_html(%s,true)';
998
+
999
+    // valeur par defaut pour les balises non listees ci-dessus
1000
+    $GLOBALS['table_des_traitements']['*'][] = false; // pas de traitement, mais permet au compilo de trouver la declaration suivante
1001
+    // toujours securiser les DATA
1002
+    $GLOBALS['table_des_traitements']['*']['DATA'] = 'safehtml(%s)';
1003
+    // expliciter pour VALEUR qui est un champ calcule et ne sera pas protege par le catch-all *
1004
+    $GLOBALS['table_des_traitements']['VALEUR']['DATA'] = 'safehtml(%s)';
1005
+
1006
+
1007
+    // gerer l'affectation en 2 temps car si le pipe n'est pas encore declare, on ecrase les globales
1008
+    $interfaces = pipeline('declarer_tables_interfaces',
1009
+        array(
1010
+            'table_des_tables' => $GLOBALS['table_des_tables'],
1011
+            'exceptions_des_tables' => $GLOBALS['exceptions_des_tables'],
1012
+            'table_date' => $GLOBALS['table_date'],
1013
+            'table_titre' => $GLOBALS['table_titre'],
1014
+            'tables_jointures' => $GLOBALS['tables_jointures'],
1015
+            'exceptions_des_jointures' => $GLOBALS['exceptions_des_jointures'],
1016
+            'table_des_traitements' => $GLOBALS['table_des_traitements'],
1017
+            'table_statut' => $GLOBALS['table_statut'],
1018
+        ));
1019
+    if ($interfaces) {
1020
+        $GLOBALS['table_des_tables'] = $interfaces['table_des_tables'];
1021
+        $GLOBALS['exceptions_des_tables'] = $interfaces['exceptions_des_tables'];
1022
+        $GLOBALS['table_date'] = $interfaces['table_date'];
1023
+        $GLOBALS['table_titre'] = $interfaces['table_titre'];
1024
+        $GLOBALS['tables_jointures'] = $interfaces['tables_jointures'];
1025
+        $GLOBALS['exceptions_des_jointures'] = $interfaces['exceptions_des_jointures'];
1026
+        $GLOBALS['table_des_traitements'] = $interfaces['table_des_traitements'];
1027
+        $GLOBALS['table_statut'] = $interfaces['table_statut'];
1028
+    }
1029 1029
 }
1030 1030
 
1031 1031
 declarer_interfaces();
Please login to merge, or discard this patch.