Completed
Push — master ( a5da4e...51674a )
by cam
01:27
created
prive/formulaires/configurer_flux.php 1 patch
Indentation   +25 added lines, -25 removed lines patch added patch discarded remove patch
@@ -11,36 +11,36 @@
 block discarded – undo
11 11
 \***************************************************************************/
12 12
 
13 13
 if (!defined('_ECRIRE_INC_VERSION')) {
14
-	return;
14
+    return;
15 15
 }
16 16
 
17 17
 function formulaires_configurer_flux_charger_dist() {
18
-	$valeurs = [];
19
-	foreach (
20
-		[
21
-			'syndication_integrale'
22
-		] as $m
23
-	) {
24
-		$valeurs[$m] = $GLOBALS['meta'][$m];
25
-	}
26
-
27
-	return $valeurs;
18
+    $valeurs = [];
19
+    foreach (
20
+        [
21
+            'syndication_integrale'
22
+        ] as $m
23
+    ) {
24
+        $valeurs[$m] = $GLOBALS['meta'][$m];
25
+    }
26
+
27
+    return $valeurs;
28 28
 }
29 29
 
30 30
 
31 31
 function formulaires_configurer_flux_traiter_dist() {
32
-	$res = ['editable' => true];
33
-	foreach (
34
-		[
35
-			'syndication_integrale',
36
-		] as $m
37
-	) {
38
-		if (!is_null($v = _request($m))) {
39
-			ecrire_meta($m, $v == 'oui' ? 'oui' : 'non');
40
-		}
41
-	}
42
-
43
-	$res['message_ok'] = _T('config_info_enregistree');
44
-
45
-	return $res;
32
+    $res = ['editable' => true];
33
+    foreach (
34
+        [
35
+            'syndication_integrale',
36
+        ] as $m
37
+    ) {
38
+        if (!is_null($v = _request($m))) {
39
+            ecrire_meta($m, $v == 'oui' ? 'oui' : 'non');
40
+        }
41
+    }
42
+
43
+    $res['message_ok'] = _T('config_info_enregistree');
44
+
45
+    return $res;
46 46
 }
Please login to merge, or discard this patch.
prive/formulaires/configurer_logos.php 1 patch
Indentation   +27 added lines, -27 removed lines patch added patch discarded remove patch
@@ -11,38 +11,38 @@
 block discarded – undo
11 11
 \***************************************************************************/
12 12
 
13 13
 if (!defined('_ECRIRE_INC_VERSION')) {
14
-	return;
14
+    return;
15 15
 }
16 16
 
17 17
 function formulaires_configurer_logos_charger_dist() {
18
-	$valeurs = [];
19
-	foreach (
20
-		[
21
-			'activer_logos',
22
-			'activer_logos_survol'
23
-		] as $m
24
-	) {
25
-		$valeurs[$m] = $GLOBALS['meta'][$m];
26
-	}
27
-
28
-	return $valeurs;
18
+    $valeurs = [];
19
+    foreach (
20
+        [
21
+            'activer_logos',
22
+            'activer_logos_survol'
23
+        ] as $m
24
+    ) {
25
+        $valeurs[$m] = $GLOBALS['meta'][$m];
26
+    }
27
+
28
+    return $valeurs;
29 29
 }
30 30
 
31 31
 
32 32
 function formulaires_configurer_logos_traiter_dist() {
33
-	$res = ['editable' => true];
34
-	foreach (
35
-		[
36
-			'activer_logos',
37
-			'activer_logos_survol',
38
-		] as $m
39
-	) {
40
-		if (!is_null($v = _request($m))) {
41
-			ecrire_meta($m, $v == 'oui' ? 'oui' : 'non');
42
-		}
43
-	}
44
-
45
-	$res['message_ok'] = _T('config_info_enregistree');
46
-
47
-	return $res;
33
+    $res = ['editable' => true];
34
+    foreach (
35
+        [
36
+            'activer_logos',
37
+            'activer_logos_survol',
38
+        ] as $m
39
+    ) {
40
+        if (!is_null($v = _request($m))) {
41
+            ecrire_meta($m, $v == 'oui' ? 'oui' : 'non');
42
+        }
43
+    }
44
+
45
+    $res['message_ok'] = _T('config_info_enregistree');
46
+
47
+    return $res;
48 48
 }
Please login to merge, or discard this patch.
ecrire/public/cacher.php 3 patches
Braces   +1 added lines, -2 removed lines patch added patch discarded remove patch
@@ -58,8 +58,7 @@
 block discarded – undo
58 58
 		$rep = sous_repertoire(_DIR_CACHE, '', false, true);
59 59
 		$rep = sous_repertoire($rep, 'calcul/', false, true);
60 60
 		$rep = sous_repertoire($rep, $d, false, true);
61
-	}
62
-	else {
61
+	} else {
63 62
 		// en lecture on essaye pas de creer les repertoires, on va au plus vite
64 63
 		$rep = _DIR_CACHE . "calcul/$d/";
65 64
 	}
Please login to merge, or discard this patch.
Indentation   +314 added lines, -314 removed lines patch added patch discarded remove patch
@@ -10,7 +10,7 @@  discard block
 block discarded – undo
10 10
 \***************************************************************************/
11 11
 
12 12
 if (!defined('_ECRIRE_INC_VERSION')) {
13
-	return;
13
+    return;
14 14
 }
15 15
 
16 16
 /**
@@ -24,9 +24,9 @@  discard block
 block discarded – undo
24 24
  * @return string
25 25
  */
26 26
 function generer_nom_fichier_cache($contexte, $page) {
27
-	$u = md5(var_export([$contexte, $page], true));
27
+    $u = md5(var_export([$contexte, $page], true));
28 28
 
29
-	return $u . '.cache';
29
+    return $u . '.cache';
30 30
 }
31 31
 
32 32
 /**
@@ -42,26 +42,26 @@  discard block
 block discarded – undo
42 42
  * @return string
43 43
  */
44 44
 function cache_chemin_fichier($nom_cache, $ecrire = false) {
45
-	static $l1, $l2;
46
-	if (is_null($l1)) {
47
-		$length = (defined('_CACHE_PROFONDEUR_STOCKAGE') ? min(8, max(_CACHE_PROFONDEUR_STOCKAGE, 2)) : 4);
48
-		$l1 = (int) floor($length / 2);
49
-		$l2 = $length - $l1;
50
-	}
51
-	$d = substr((string) $nom_cache, 0, $l1);
52
-	$u = substr((string) $nom_cache, $l1, $l2);
53
-
54
-	if ($ecrire) {
55
-		$rep = sous_repertoire(_DIR_CACHE, '', false, true);
56
-		$rep = sous_repertoire($rep, 'calcul/', false, true);
57
-		$rep = sous_repertoire($rep, $d, false, true);
58
-	}
59
-	else {
60
-		// en lecture on essaye pas de creer les repertoires, on va au plus vite
61
-		$rep = _DIR_CACHE . "calcul/$d/";
62
-	}
63
-
64
-	return $rep . $u . '.cache';
45
+    static $l1, $l2;
46
+    if (is_null($l1)) {
47
+        $length = (defined('_CACHE_PROFONDEUR_STOCKAGE') ? min(8, max(_CACHE_PROFONDEUR_STOCKAGE, 2)) : 4);
48
+        $l1 = (int) floor($length / 2);
49
+        $l2 = $length - $l1;
50
+    }
51
+    $d = substr((string) $nom_cache, 0, $l1);
52
+    $u = substr((string) $nom_cache, $l1, $l2);
53
+
54
+    if ($ecrire) {
55
+        $rep = sous_repertoire(_DIR_CACHE, '', false, true);
56
+        $rep = sous_repertoire($rep, 'calcul/', false, true);
57
+        $rep = sous_repertoire($rep, $d, false, true);
58
+    }
59
+    else {
60
+        // en lecture on essaye pas de creer les repertoires, on va au plus vite
61
+        $rep = _DIR_CACHE . "calcul/$d/";
62
+    }
63
+
64
+    return $rep . $u . '.cache';
65 65
 }
66 66
 
67 67
 /**
@@ -72,7 +72,7 @@  discard block
 block discarded – undo
72 72
  * @return bool
73 73
  */
74 74
 function ecrire_cache($nom_cache, $valeur) {
75
-	return ecrire_fichier(cache_chemin_fichier($nom_cache, true), serialize(['nom_cache' => $nom_cache, 'valeur' => $valeur]));
75
+    return ecrire_fichier(cache_chemin_fichier($nom_cache, true), serialize(['nom_cache' => $nom_cache, 'valeur' => $valeur]));
76 76
 }
77 77
 
78 78
 /**
@@ -82,33 +82,33 @@  discard block
 block discarded – undo
82 82
  * @return mixed
83 83
  */
84 84
 function lire_cache($nom_cache) {
85
-	$tmp = [];
86
-	if (
87
-		file_exists($f = cache_chemin_fichier($nom_cache))
88
-		&& lire_fichier($f, $tmp)
89
-		&& ($tmp = unserialize($tmp))
90
-		&& $tmp['nom_cache'] == $nom_cache
91
-		&& isset($tmp['valeur'])
92
-	) {
93
-		return $tmp['valeur'];
94
-	}
95
-
96
-	return false;
85
+    $tmp = [];
86
+    if (
87
+        file_exists($f = cache_chemin_fichier($nom_cache))
88
+        && lire_fichier($f, $tmp)
89
+        && ($tmp = unserialize($tmp))
90
+        && $tmp['nom_cache'] == $nom_cache
91
+        && isset($tmp['valeur'])
92
+    ) {
93
+        return $tmp['valeur'];
94
+    }
95
+
96
+    return false;
97 97
 }
98 98
 
99 99
 // Parano : on signe le cache, afin d'interdire un hack d'injection
100 100
 // dans notre memcache
101 101
 function cache_signature(&$page) {
102
-	if (!isset($GLOBALS['meta']['cache_signature'])) {
103
-		include_spip('inc/acces');
104
-		ecrire_meta(
105
-			'cache_signature',
106
-			hash('sha256', $_SERVER['DOCUMENT_ROOT'] . ($_SERVER['SERVER_SIGNATURE'] ?? '') . creer_uniqid()),
107
-			'non'
108
-		);
109
-	}
110
-
111
-	return crc32($GLOBALS['meta']['cache_signature'] . $page['texte']);
102
+    if (!isset($GLOBALS['meta']['cache_signature'])) {
103
+        include_spip('inc/acces');
104
+        ecrire_meta(
105
+            'cache_signature',
106
+            hash('sha256', $_SERVER['DOCUMENT_ROOT'] . ($_SERVER['SERVER_SIGNATURE'] ?? '') . creer_uniqid()),
107
+            'non'
108
+        );
109
+    }
110
+
111
+    return crc32($GLOBALS['meta']['cache_signature'] . $page['texte']);
112 112
 }
113 113
 
114 114
 /**
@@ -121,14 +121,14 @@  discard block
 block discarded – undo
121 121
  * @return array
122 122
  */
123 123
 function gzip_page($page) {
124
-	if (function_exists('gzcompress') && strlen((string) $page['texte']) > 16 * 1024) {
125
-		$page['gz'] = true;
126
-		$page['texte'] = gzcompress((string) $page['texte']);
127
-	} else {
128
-		$page['gz'] = false;
129
-	}
130
-
131
-	return $page;
124
+    if (function_exists('gzcompress') && strlen((string) $page['texte']) > 16 * 1024) {
125
+        $page['gz'] = true;
126
+        $page['texte'] = gzcompress((string) $page['texte']);
127
+    } else {
128
+        $page['gz'] = false;
129
+    }
130
+
131
+    return $page;
132 132
 }
133 133
 
134 134
 /**
@@ -141,10 +141,10 @@  discard block
 block discarded – undo
141 141
  * @return void
142 142
  */
143 143
 function gunzip_page(&$page) {
144
-	if ($page['gz']) {
145
-		$page['texte'] = gzuncompress($page['texte']);
146
-		$page['gz'] = false; // ne pas gzuncompress deux fois une meme page
147
-	}
144
+    if ($page['gz']) {
145
+        $page['texte'] = gzuncompress($page['texte']);
146
+        $page['gz'] = false; // ne pas gzuncompress deux fois une meme page
147
+    }
148 148
 }
149 149
 
150 150
 /**
@@ -159,72 +159,72 @@  discard block
 block discarded – undo
159 159
  * -1 si il faut calculer sans stocker en cache
160 160
  */
161 161
 function cache_valide(&$page, $date) {
162
-	$now = $_SERVER['REQUEST_TIME'];
163
-
164
-	// Apparition d'un nouvel article post-date ?
165
-	if (
166
-		isset($GLOBALS['meta']['post_dates'])
167
-		&& $GLOBALS['meta']['post_dates'] == 'non'
168
-		&& isset($GLOBALS['meta']['date_prochain_postdate'])
169
-		&& $now > $GLOBALS['meta']['date_prochain_postdate']
170
-	) {
171
-		spip_log('Un article post-date invalide le cache');
172
-		include_spip('inc/rubriques');
173
-		calculer_prochain_postdate(true);
174
-	}
175
-
176
-	if (defined('_VAR_NOCACHE') && _VAR_NOCACHE) {
177
-		return -1;
178
-	}
179
-	if (isset($GLOBALS['meta']['cache_inhib']) && $_SERVER['REQUEST_TIME'] < $GLOBALS['meta']['cache_inhib']) {
180
-		return -1;
181
-	}
182
-	if (defined('_NO_CACHE')) {
183
-		return (_NO_CACHE == 0 && !isset($page['texte'])) ? 1 : _NO_CACHE;
184
-	}
185
-
186
-	// pas de cache ? on le met a jour, sauf pour les bots (on leur calcule la page sans mise en cache)
187
-	if (!$page || !isset($page['texte']) || !isset($page['entetes']['X-Spip-Cache'])) {
188
-		return _IS_BOT ? -1 : 1;
189
-	}
190
-
191
-	// controle de la signature
192
-	if ($page['sig'] !== cache_signature($page)) {
193
-		return _IS_BOT ? -1 : 1;
194
-	}
195
-
196
-	// #CACHE{n,statique} => on n'invalide pas avec derniere_modif
197
-	// cf. ecrire/public/balises.php, balise_CACHE_dist()
198
-	// Cache invalide par la meta 'derniere_modif'
199
-	// sauf pour les bots, qui utilisent toujours le cache
200
-	if (
201
-		(!isset($page['entetes']['X-Spip-Statique']) || $page['entetes']['X-Spip-Statique'] !== 'oui')
202
-		&& (
203
-			!_IS_BOT
204
-			&& $GLOBALS['derniere_modif_invalide']
205
-			&& isset($GLOBALS['meta']['derniere_modif'])
206
-			&& $date < $GLOBALS['meta']['derniere_modif']
207
-		)
208
-	) {
209
-		return 1;
210
-	}
211
-
212
-	// Sinon comparer l'age du fichier a sa duree de cache
213
-	$duree = (int) $page['entetes']['X-Spip-Cache'];
214
-	$cache_mark = ($GLOBALS['meta']['cache_mark'] ?? 0);
215
-	if ($duree == 0) {  #CACHE{0}
216
-	return -1;
217
-	} // sauf pour les bots, qui utilisent toujours le cache
218
-	else {
219
-		if (
220
-			!_IS_BOT && $date + $duree < $now
221
-			|| $date < $cache_mark
222
-		) {
223
-			return _IS_BOT ? -1 : 1;
224
-		} else {
225
-			return 0;
226
-		}
227
-	}
162
+    $now = $_SERVER['REQUEST_TIME'];
163
+
164
+    // Apparition d'un nouvel article post-date ?
165
+    if (
166
+        isset($GLOBALS['meta']['post_dates'])
167
+        && $GLOBALS['meta']['post_dates'] == 'non'
168
+        && isset($GLOBALS['meta']['date_prochain_postdate'])
169
+        && $now > $GLOBALS['meta']['date_prochain_postdate']
170
+    ) {
171
+        spip_log('Un article post-date invalide le cache');
172
+        include_spip('inc/rubriques');
173
+        calculer_prochain_postdate(true);
174
+    }
175
+
176
+    if (defined('_VAR_NOCACHE') && _VAR_NOCACHE) {
177
+        return -1;
178
+    }
179
+    if (isset($GLOBALS['meta']['cache_inhib']) && $_SERVER['REQUEST_TIME'] < $GLOBALS['meta']['cache_inhib']) {
180
+        return -1;
181
+    }
182
+    if (defined('_NO_CACHE')) {
183
+        return (_NO_CACHE == 0 && !isset($page['texte'])) ? 1 : _NO_CACHE;
184
+    }
185
+
186
+    // pas de cache ? on le met a jour, sauf pour les bots (on leur calcule la page sans mise en cache)
187
+    if (!$page || !isset($page['texte']) || !isset($page['entetes']['X-Spip-Cache'])) {
188
+        return _IS_BOT ? -1 : 1;
189
+    }
190
+
191
+    // controle de la signature
192
+    if ($page['sig'] !== cache_signature($page)) {
193
+        return _IS_BOT ? -1 : 1;
194
+    }
195
+
196
+    // #CACHE{n,statique} => on n'invalide pas avec derniere_modif
197
+    // cf. ecrire/public/balises.php, balise_CACHE_dist()
198
+    // Cache invalide par la meta 'derniere_modif'
199
+    // sauf pour les bots, qui utilisent toujours le cache
200
+    if (
201
+        (!isset($page['entetes']['X-Spip-Statique']) || $page['entetes']['X-Spip-Statique'] !== 'oui')
202
+        && (
203
+            !_IS_BOT
204
+            && $GLOBALS['derniere_modif_invalide']
205
+            && isset($GLOBALS['meta']['derniere_modif'])
206
+            && $date < $GLOBALS['meta']['derniere_modif']
207
+        )
208
+    ) {
209
+        return 1;
210
+    }
211
+
212
+    // Sinon comparer l'age du fichier a sa duree de cache
213
+    $duree = (int) $page['entetes']['X-Spip-Cache'];
214
+    $cache_mark = ($GLOBALS['meta']['cache_mark'] ?? 0);
215
+    if ($duree == 0) {  #CACHE{0}
216
+    return -1;
217
+    } // sauf pour les bots, qui utilisent toujours le cache
218
+    else {
219
+        if (
220
+            !_IS_BOT && $date + $duree < $now
221
+            || $date < $cache_mark
222
+        ) {
223
+            return _IS_BOT ? -1 : 1;
224
+        } else {
225
+            return 0;
226
+        }
227
+    }
228 228
 }
229 229
 
230 230
 /**
@@ -237,59 +237,59 @@  discard block
 block discarded – undo
237 237
  */
238 238
 function creer_cache(&$page, &$chemin_cache) {
239 239
 
240
-	// Ne rien faire si on est en preview, debug, ou si une erreur
241
-	// grave s'est presentee (compilation du squelette, MySQL, etc)
242
-	// le cas var_nocache ne devrait jamais arriver ici (securite)
243
-	// le cas spip_interdire_cache correspond a une ereur SQL grave non anticipable
244
-	if (
245
-		defined('_VAR_NOCACHE') && _VAR_NOCACHE
246
-		|| defined('spip_interdire_cache')
247
-	) {
248
-		return;
249
-	}
250
-
251
-	// Si la page c1234 a un invalideur de session 'zz', sauver dans
252
-	// 'tmp/cache/MD5(chemin_cache)_zz'
253
-	if (
254
-		isset($page['invalideurs'])
255
-		&& isset($page['invalideurs']['session'])
256
-	) {
257
-		// on verifie que le contenu du chemin cache indique seulement
258
-		// "cache sessionne" ; sa date indique la date de validite
259
-		// des caches sessionnes
260
-		if (!$tmp = lire_cache($chemin_cache)) {
261
-			spip_log('Creation cache sessionne ' . $chemin_cache);
262
-			$tmp = [
263
-				'invalideurs' => ['session' => ''],
264
-				'lastmodified' => $_SERVER['REQUEST_TIME']
265
-			];
266
-			ecrire_cache($chemin_cache, $tmp);
267
-		}
268
-		$chemin_cache = generer_nom_fichier_cache(
269
-			['chemin_cache' => $chemin_cache],
270
-			['session' => $page['invalideurs']['session']]
271
-		);
272
-	}
273
-
274
-	// ajouter la date de production dans le cache lui meme
275
-	// (qui contient deja sa duree de validite)
276
-	$page['lastmodified'] = $_SERVER['REQUEST_TIME'];
277
-
278
-	// compresser le contenu si besoin
279
-	$pagez = gzip_page($page);
280
-
281
-	// signer le contenu
282
-	$pagez['sig'] = cache_signature($pagez);
283
-
284
-	// l'enregistrer, compresse ou non...
285
-	$ok = ecrire_cache($chemin_cache, $pagez);
286
-
287
-	spip_log((_IS_BOT ? 'Bot:' : '') . "Creation du cache $chemin_cache pour "
288
-		. $page['entetes']['X-Spip-Cache'] . ' secondes' . ($ok ? '' : ' (erreur!)'), _LOG_INFO);
289
-
290
-	// Inserer ses invalideurs
291
-	include_spip('inc/invalideur');
292
-	maj_invalideurs($chemin_cache, $page);
240
+    // Ne rien faire si on est en preview, debug, ou si une erreur
241
+    // grave s'est presentee (compilation du squelette, MySQL, etc)
242
+    // le cas var_nocache ne devrait jamais arriver ici (securite)
243
+    // le cas spip_interdire_cache correspond a une ereur SQL grave non anticipable
244
+    if (
245
+        defined('_VAR_NOCACHE') && _VAR_NOCACHE
246
+        || defined('spip_interdire_cache')
247
+    ) {
248
+        return;
249
+    }
250
+
251
+    // Si la page c1234 a un invalideur de session 'zz', sauver dans
252
+    // 'tmp/cache/MD5(chemin_cache)_zz'
253
+    if (
254
+        isset($page['invalideurs'])
255
+        && isset($page['invalideurs']['session'])
256
+    ) {
257
+        // on verifie que le contenu du chemin cache indique seulement
258
+        // "cache sessionne" ; sa date indique la date de validite
259
+        // des caches sessionnes
260
+        if (!$tmp = lire_cache($chemin_cache)) {
261
+            spip_log('Creation cache sessionne ' . $chemin_cache);
262
+            $tmp = [
263
+                'invalideurs' => ['session' => ''],
264
+                'lastmodified' => $_SERVER['REQUEST_TIME']
265
+            ];
266
+            ecrire_cache($chemin_cache, $tmp);
267
+        }
268
+        $chemin_cache = generer_nom_fichier_cache(
269
+            ['chemin_cache' => $chemin_cache],
270
+            ['session' => $page['invalideurs']['session']]
271
+        );
272
+    }
273
+
274
+    // ajouter la date de production dans le cache lui meme
275
+    // (qui contient deja sa duree de validite)
276
+    $page['lastmodified'] = $_SERVER['REQUEST_TIME'];
277
+
278
+    // compresser le contenu si besoin
279
+    $pagez = gzip_page($page);
280
+
281
+    // signer le contenu
282
+    $pagez['sig'] = cache_signature($pagez);
283
+
284
+    // l'enregistrer, compresse ou non...
285
+    $ok = ecrire_cache($chemin_cache, $pagez);
286
+
287
+    spip_log((_IS_BOT ? 'Bot:' : '') . "Creation du cache $chemin_cache pour "
288
+        . $page['entetes']['X-Spip-Cache'] . ' secondes' . ($ok ? '' : ' (erreur!)'), _LOG_INFO);
289
+
290
+    // Inserer ses invalideurs
291
+    include_spip('inc/invalideur');
292
+    maj_invalideurs($chemin_cache, $page);
293 293
 }
294 294
 
295 295
 
@@ -302,15 +302,15 @@  discard block
 block discarded – undo
302 302
  * @return void
303 303
  */
304 304
 function nettoyer_petit_cache($prefix, $duree = 300) {
305
-	// determiner le repertoire a purger : 'tmp/CACHE/rech/'
306
-	$dircache = sous_repertoire(_DIR_CACHE, $prefix);
307
-	if (spip_touch($dircache . 'purger_' . $prefix, $duree, true)) {
308
-		foreach (preg_files($dircache, '[.]txt$') as $f) {
309
-			if ($_SERVER['REQUEST_TIME'] - (@file_exists($f) ? @filemtime($f) : 0) > $duree) {
310
-				spip_unlink($f);
311
-			}
312
-		}
313
-	}
305
+    // determiner le repertoire a purger : 'tmp/CACHE/rech/'
306
+    $dircache = sous_repertoire(_DIR_CACHE, $prefix);
307
+    if (spip_touch($dircache . 'purger_' . $prefix, $duree, true)) {
308
+        foreach (preg_files($dircache, '[.]txt$') as $f) {
309
+            if ($_SERVER['REQUEST_TIME'] - (@file_exists($f) ? @filemtime($f) : 0) > $duree) {
310
+                spip_unlink($f);
311
+            }
312
+        }
313
+    }
314 314
 }
315 315
 
316 316
 
@@ -338,132 +338,132 @@  discard block
 block discarded – undo
338 338
  */
339 339
 function public_cacher_dist($contexte, &$use_cache, &$chemin_cache, &$page, &$lastmodified) {
340 340
 
341
-	# fonction de cache minimale : dire "non on ne met rien en cache"
342
-	# $use_cache = -1; return;
343
-
344
-	// Second appel, destine a l'enregistrement du cache sur le disque
345
-	if (isset($chemin_cache)) {
346
-		creer_cache($page, $chemin_cache);
347
-		return;
348
-	}
349
-
350
-	// Toute la suite correspond au premier appel
351
-	$contexte_implicite = $page['contexte_implicite'];
352
-
353
-	// Cas ignorant le cache car completement dynamique
354
-	if (
355
-		!empty($_SERVER['REQUEST_METHOD']) && $_SERVER['REQUEST_METHOD'] === 'POST'
356
-		|| _request('connect')
357
-	) {
358
-		$use_cache = -1;
359
-		$lastmodified = 0;
360
-		$chemin_cache = '';
361
-		$page = [];
362
-
363
-		return;
364
-	}
365
-
366
-	// Controler l'existence d'un cache nous correspondant
367
-	$chemin_cache = generer_nom_fichier_cache($contexte, $page);
368
-	$lastmodified = 0;
369
-
370
-	// charger le cache s'il existe (et si il a bien le bon hash = anticollision)
371
-	if (!$page = lire_cache($chemin_cache)) {
372
-		$page = [];
373
-	}
374
-
375
-	// s'il est sessionne, charger celui correspondant a notre session
376
-	if (
377
-		isset($page['invalideurs'])
378
-		&& isset($page['invalideurs']['session'])
379
-	) {
380
-		$chemin_cache_session = generer_nom_fichier_cache(
381
-			['chemin_cache' => $chemin_cache],
382
-			['session' => spip_session()]
383
-		);
384
-		if (
385
-			($page_session = lire_cache($chemin_cache_session)) && $page_session['lastmodified'] >= $page['lastmodified']
386
-		) {
387
-			$page = $page_session;
388
-		} else {
389
-			$page = [];
390
-		}
391
-	}
392
-
393
-
394
-	// Faut-il effacer des pages invalidees (en particulier ce cache-ci) ?
395
-	// ne le faire que si la base est disponible
396
-	if (isset($GLOBALS['meta']['invalider']) && spip_connect()) {
397
-		include_spip('inc/invalideur');
398
-		retire_caches($chemin_cache);
399
-		# API invalideur inutile
400
-		supprimer_fichier(_DIR_CACHE . $chemin_cache);
401
-		if (isset($chemin_cache_session) && $chemin_cache_session) {
402
-			supprimer_fichier(_DIR_CACHE . $chemin_cache_session);
403
-		}
404
-	}
405
-
406
-	// Si un calcul, recalcul [ou preview, mais c'est recalcul] est demande,
407
-	// on supprime le cache
408
-	if (
409
-		defined('_VAR_MODE') &&
410
-		_VAR_MODE &&
411
-		(isset($_COOKIE['spip_session']) ||
412
-			isset($_COOKIE['spip_admin']) ||
413
-			@file_exists(_ACCESS_FILE_NAME))
414
-	) {
415
-		$page = ['contexte_implicite' => $contexte_implicite]; // ignorer le cache deja lu
416
-		include_spip('inc/invalideur');
417
-		retire_caches($chemin_cache); # API invalideur inutile
418
-		supprimer_fichier(_DIR_CACHE . $chemin_cache);
419
-		if (isset($chemin_cache_session) && $chemin_cache_session) {
420
-			supprimer_fichier(_DIR_CACHE . $chemin_cache_session);
421
-		}
422
-	}
423
-
424
-	// $delais par defaut
425
-	// pour toutes les pages sans #CACHE{} hors modeles/ et espace privé
426
-	// qui sont a cache nul par defaut
427
-	if (!isset($GLOBALS['delais'])) {
428
-		if (!defined('_DUREE_CACHE_DEFAUT')) {
429
-			define('_DUREE_CACHE_DEFAUT', 24 * 3600);
430
-		}
431
-		$GLOBALS['delais'] = _DUREE_CACHE_DEFAUT;
432
-	}
433
-
434
-	// determiner la validite de la page
435
-	if ($page) {
436
-		$use_cache = cache_valide($page, $page['lastmodified'] ?? 0);
437
-		// le contexte implicite n'est pas stocke dans le cache, mais il y a equivalence
438
-		// par le nom du cache. On le reinjecte donc ici pour utilisation eventuelle au calcul
439
-		$page['contexte_implicite'] = $contexte_implicite;
440
-		if (!$use_cache) {
441
-			// $page est un cache utilisable
442
-			gunzip_page($page);
443
-
444
-			return;
445
-		}
446
-	} else {
447
-		$page = ['contexte_implicite' => $contexte_implicite];
448
-		$use_cache = cache_valide($page, 0); // fichier cache absent : provoque le calcul
449
-	}
450
-
451
-	// Si pas valide mais pas de connexion a la base, le garder quand meme
452
-	if (!spip_connect()) {
453
-		if (isset($page['texte'])) {
454
-			gunzip_page($page);
455
-			$use_cache = 0;
456
-		} else {
457
-			spip_log("Erreur base de donnees, impossible utiliser $chemin_cache");
458
-			include_spip('inc/minipres');
459
-
460
-			return minipres(_T('info_travaux_titre'), _T('titre_probleme_technique'), ['status' => 503]);
461
-		}
462
-	}
463
-
464
-	if ($use_cache < 0) {
465
-		$chemin_cache = '';
466
-	}
467
-
468
-	return;
341
+    # fonction de cache minimale : dire "non on ne met rien en cache"
342
+    # $use_cache = -1; return;
343
+
344
+    // Second appel, destine a l'enregistrement du cache sur le disque
345
+    if (isset($chemin_cache)) {
346
+        creer_cache($page, $chemin_cache);
347
+        return;
348
+    }
349
+
350
+    // Toute la suite correspond au premier appel
351
+    $contexte_implicite = $page['contexte_implicite'];
352
+
353
+    // Cas ignorant le cache car completement dynamique
354
+    if (
355
+        !empty($_SERVER['REQUEST_METHOD']) && $_SERVER['REQUEST_METHOD'] === 'POST'
356
+        || _request('connect')
357
+    ) {
358
+        $use_cache = -1;
359
+        $lastmodified = 0;
360
+        $chemin_cache = '';
361
+        $page = [];
362
+
363
+        return;
364
+    }
365
+
366
+    // Controler l'existence d'un cache nous correspondant
367
+    $chemin_cache = generer_nom_fichier_cache($contexte, $page);
368
+    $lastmodified = 0;
369
+
370
+    // charger le cache s'il existe (et si il a bien le bon hash = anticollision)
371
+    if (!$page = lire_cache($chemin_cache)) {
372
+        $page = [];
373
+    }
374
+
375
+    // s'il est sessionne, charger celui correspondant a notre session
376
+    if (
377
+        isset($page['invalideurs'])
378
+        && isset($page['invalideurs']['session'])
379
+    ) {
380
+        $chemin_cache_session = generer_nom_fichier_cache(
381
+            ['chemin_cache' => $chemin_cache],
382
+            ['session' => spip_session()]
383
+        );
384
+        if (
385
+            ($page_session = lire_cache($chemin_cache_session)) && $page_session['lastmodified'] >= $page['lastmodified']
386
+        ) {
387
+            $page = $page_session;
388
+        } else {
389
+            $page = [];
390
+        }
391
+    }
392
+
393
+
394
+    // Faut-il effacer des pages invalidees (en particulier ce cache-ci) ?
395
+    // ne le faire que si la base est disponible
396
+    if (isset($GLOBALS['meta']['invalider']) && spip_connect()) {
397
+        include_spip('inc/invalideur');
398
+        retire_caches($chemin_cache);
399
+        # API invalideur inutile
400
+        supprimer_fichier(_DIR_CACHE . $chemin_cache);
401
+        if (isset($chemin_cache_session) && $chemin_cache_session) {
402
+            supprimer_fichier(_DIR_CACHE . $chemin_cache_session);
403
+        }
404
+    }
405
+
406
+    // Si un calcul, recalcul [ou preview, mais c'est recalcul] est demande,
407
+    // on supprime le cache
408
+    if (
409
+        defined('_VAR_MODE') &&
410
+        _VAR_MODE &&
411
+        (isset($_COOKIE['spip_session']) ||
412
+            isset($_COOKIE['spip_admin']) ||
413
+            @file_exists(_ACCESS_FILE_NAME))
414
+    ) {
415
+        $page = ['contexte_implicite' => $contexte_implicite]; // ignorer le cache deja lu
416
+        include_spip('inc/invalideur');
417
+        retire_caches($chemin_cache); # API invalideur inutile
418
+        supprimer_fichier(_DIR_CACHE . $chemin_cache);
419
+        if (isset($chemin_cache_session) && $chemin_cache_session) {
420
+            supprimer_fichier(_DIR_CACHE . $chemin_cache_session);
421
+        }
422
+    }
423
+
424
+    // $delais par defaut
425
+    // pour toutes les pages sans #CACHE{} hors modeles/ et espace privé
426
+    // qui sont a cache nul par defaut
427
+    if (!isset($GLOBALS['delais'])) {
428
+        if (!defined('_DUREE_CACHE_DEFAUT')) {
429
+            define('_DUREE_CACHE_DEFAUT', 24 * 3600);
430
+        }
431
+        $GLOBALS['delais'] = _DUREE_CACHE_DEFAUT;
432
+    }
433
+
434
+    // determiner la validite de la page
435
+    if ($page) {
436
+        $use_cache = cache_valide($page, $page['lastmodified'] ?? 0);
437
+        // le contexte implicite n'est pas stocke dans le cache, mais il y a equivalence
438
+        // par le nom du cache. On le reinjecte donc ici pour utilisation eventuelle au calcul
439
+        $page['contexte_implicite'] = $contexte_implicite;
440
+        if (!$use_cache) {
441
+            // $page est un cache utilisable
442
+            gunzip_page($page);
443
+
444
+            return;
445
+        }
446
+    } else {
447
+        $page = ['contexte_implicite' => $contexte_implicite];
448
+        $use_cache = cache_valide($page, 0); // fichier cache absent : provoque le calcul
449
+    }
450
+
451
+    // Si pas valide mais pas de connexion a la base, le garder quand meme
452
+    if (!spip_connect()) {
453
+        if (isset($page['texte'])) {
454
+            gunzip_page($page);
455
+            $use_cache = 0;
456
+        } else {
457
+            spip_log("Erreur base de donnees, impossible utiliser $chemin_cache");
458
+            include_spip('inc/minipres');
459
+
460
+            return minipres(_T('info_travaux_titre'), _T('titre_probleme_technique'), ['status' => 503]);
461
+        }
462
+    }
463
+
464
+    if ($use_cache < 0) {
465
+        $chemin_cache = '';
466
+    }
467
+
468
+    return;
469 469
 }
Please login to merge, or discard this patch.
Spacing   +13 added lines, -13 removed lines patch added patch discarded remove patch
@@ -26,7 +26,7 @@  discard block
 block discarded – undo
26 26
 function generer_nom_fichier_cache($contexte, $page) {
27 27
 	$u = md5(var_export([$contexte, $page], true));
28 28
 
29
-	return $u . '.cache';
29
+	return $u.'.cache';
30 30
 }
31 31
 
32 32
 /**
@@ -58,10 +58,10 @@  discard block
 block discarded – undo
58 58
 	}
59 59
 	else {
60 60
 		// en lecture on essaye pas de creer les repertoires, on va au plus vite
61
-		$rep = _DIR_CACHE . "calcul/$d/";
61
+		$rep = _DIR_CACHE."calcul/$d/";
62 62
 	}
63 63
 
64
-	return $rep . $u . '.cache';
64
+	return $rep.$u.'.cache';
65 65
 }
66 66
 
67 67
 /**
@@ -103,12 +103,12 @@  discard block
 block discarded – undo
103 103
 		include_spip('inc/acces');
104 104
 		ecrire_meta(
105 105
 			'cache_signature',
106
-			hash('sha256', $_SERVER['DOCUMENT_ROOT'] . ($_SERVER['SERVER_SIGNATURE'] ?? '') . creer_uniqid()),
106
+			hash('sha256', $_SERVER['DOCUMENT_ROOT'].($_SERVER['SERVER_SIGNATURE'] ?? '').creer_uniqid()),
107 107
 			'non'
108 108
 		);
109 109
 	}
110 110
 
111
-	return crc32($GLOBALS['meta']['cache_signature'] . $page['texte']);
111
+	return crc32($GLOBALS['meta']['cache_signature'].$page['texte']);
112 112
 }
113 113
 
114 114
 /**
@@ -258,7 +258,7 @@  discard block
 block discarded – undo
258 258
 		// "cache sessionne" ; sa date indique la date de validite
259 259
 		// des caches sessionnes
260 260
 		if (!$tmp = lire_cache($chemin_cache)) {
261
-			spip_log('Creation cache sessionne ' . $chemin_cache);
261
+			spip_log('Creation cache sessionne '.$chemin_cache);
262 262
 			$tmp = [
263 263
 				'invalideurs' => ['session' => ''],
264 264
 				'lastmodified' => $_SERVER['REQUEST_TIME']
@@ -284,8 +284,8 @@  discard block
 block discarded – undo
284 284
 	// l'enregistrer, compresse ou non...
285 285
 	$ok = ecrire_cache($chemin_cache, $pagez);
286 286
 
287
-	spip_log((_IS_BOT ? 'Bot:' : '') . "Creation du cache $chemin_cache pour "
288
-		. $page['entetes']['X-Spip-Cache'] . ' secondes' . ($ok ? '' : ' (erreur!)'), _LOG_INFO);
287
+	spip_log((_IS_BOT ? 'Bot:' : '')."Creation du cache $chemin_cache pour "
288
+		. $page['entetes']['X-Spip-Cache'].' secondes'.($ok ? '' : ' (erreur!)'), _LOG_INFO);
289 289
 
290 290
 	// Inserer ses invalideurs
291 291
 	include_spip('inc/invalideur');
@@ -304,7 +304,7 @@  discard block
 block discarded – undo
304 304
 function nettoyer_petit_cache($prefix, $duree = 300) {
305 305
 	// determiner le repertoire a purger : 'tmp/CACHE/rech/'
306 306
 	$dircache = sous_repertoire(_DIR_CACHE, $prefix);
307
-	if (spip_touch($dircache . 'purger_' . $prefix, $duree, true)) {
307
+	if (spip_touch($dircache.'purger_'.$prefix, $duree, true)) {
308 308
 		foreach (preg_files($dircache, '[.]txt$') as $f) {
309 309
 			if ($_SERVER['REQUEST_TIME'] - (@file_exists($f) ? @filemtime($f) : 0) > $duree) {
310 310
 				spip_unlink($f);
@@ -397,9 +397,9 @@  discard block
 block discarded – undo
397 397
 		include_spip('inc/invalideur');
398 398
 		retire_caches($chemin_cache);
399 399
 		# API invalideur inutile
400
-		supprimer_fichier(_DIR_CACHE . $chemin_cache);
400
+		supprimer_fichier(_DIR_CACHE.$chemin_cache);
401 401
 		if (isset($chemin_cache_session) && $chemin_cache_session) {
402
-			supprimer_fichier(_DIR_CACHE . $chemin_cache_session);
402
+			supprimer_fichier(_DIR_CACHE.$chemin_cache_session);
403 403
 		}
404 404
 	}
405 405
 
@@ -415,9 +415,9 @@  discard block
 block discarded – undo
415 415
 		$page = ['contexte_implicite' => $contexte_implicite]; // ignorer le cache deja lu
416 416
 		include_spip('inc/invalideur');
417 417
 		retire_caches($chemin_cache); # API invalideur inutile
418
-		supprimer_fichier(_DIR_CACHE . $chemin_cache);
418
+		supprimer_fichier(_DIR_CACHE.$chemin_cache);
419 419
 		if (isset($chemin_cache_session) && $chemin_cache_session) {
420
-			supprimer_fichier(_DIR_CACHE . $chemin_cache_session);
420
+			supprimer_fichier(_DIR_CACHE.$chemin_cache_session);
421 421
 		}
422 422
 	}
423 423
 
Please login to merge, or discard this patch.
ecrire/public/aiguiller.php 3 patches
Spacing   +7 added lines, -7 removed lines patch added patch discarded remove patch
@@ -28,7 +28,7 @@  discard block
 block discarded – undo
28 28
 	) {
29 29
 		// si l'url est une url du site, on la laisse passer sans rien faire
30 30
 		// c'est encore le plus simple
31
-		$base = $GLOBALS['meta']['adresse_site'] . '/';
31
+		$base = $GLOBALS['meta']['adresse_site'].'/';
32 32
 		if (strlen($base) and strncmp($redirect, $base, strlen($base)) == 0) {
33 33
 			return $redirect;
34 34
 		}
@@ -156,7 +156,7 @@  discard block
 block discarded – undo
156 156
 			if ($ancre = _request('var_ajax_ancre')) {
157 157
 				// pas n'importe quoi quand meme dans la variable !
158 158
 				$ancre = str_replace(['<', '"', "'"], ['&lt;', '&quot;', ''], $ancre);
159
-				$texte = "<a href='#$ancre' name='ajax_ancre' style='display:none;'>anchor</a>" . $texte;
159
+				$texte = "<a href='#$ancre' name='ajax_ancre' style='display:none;'>anchor</a>".$texte;
160 160
 			}
161 161
 		} else {
162 162
 			include_spip('inc/headers');
@@ -199,26 +199,26 @@  discard block
 block discarded – undo
199 199
 	$sign = _request('formulaire_action_sign');
200 200
 	if (!empty($GLOBALS['visiteur_session']['id_auteur'])) {
201 201
 		if (empty($sign)) {
202
-			spip_log("signature ajax form incorrecte : $form (formulaire non signe mais on a une session)", 'formulaires' . _LOG_ERREUR);
202
+			spip_log("signature ajax form incorrecte : $form (formulaire non signe mais on a une session)", 'formulaires'._LOG_ERREUR);
203 203
 			return false;
204 204
 		}
205 205
 		$securiser_action = charger_fonction('securiser_action', 'inc');
206 206
 		$secu = $securiser_action($form, $args, '', -1);
207 207
 		if ($sign !== $secu['hash']) {
208
-			spip_log("signature ajax form incorrecte : $form (formulaire signe mais ne correspond pas a la session)", 'formulaires' . _LOG_ERREUR);
208
+			spip_log("signature ajax form incorrecte : $form (formulaire signe mais ne correspond pas a la session)", 'formulaires'._LOG_ERREUR);
209 209
 			return false;
210 210
 		}
211 211
 	}
212 212
 	else {
213 213
 		if (!empty($sign)) {
214
-			spip_log("signature ajax form incorrecte : $form (formulaire signe mais pas de session)", 'formulaires' . _LOG_ERREUR);
214
+			spip_log("signature ajax form incorrecte : $form (formulaire signe mais pas de session)", 'formulaires'._LOG_ERREUR);
215 215
 			return false;
216 216
 		}
217 217
 	}
218 218
 
219 219
 	include_spip('inc/filtres');
220 220
 	if (($args = decoder_contexte_ajax($args, $form)) === false) {
221
-		spip_log("signature ajax form incorrecte : $form (encodage corrompu)", 'formulaires' . _LOG_ERREUR);
221
+		spip_log("signature ajax form incorrecte : $form (encodage corrompu)", 'formulaires'._LOG_ERREUR);
222 222
 
223 223
 		return false; // continuons le hit comme si de rien etait
224 224
 	} else {
@@ -335,7 +335,7 @@  discard block
 block discarded – undo
335 335
 				// on ajoute un br en display none en tete du retour ajax pour regler un bug dans IE6/7
336 336
 				// sans cela le formulaire n'est pas actif apres le hit ajax
337 337
 				// la classe ajax-form-is-ok sert a s'assurer que le retour ajax s'est bien passe
338
-				$retour = "<br class='bugajaxie ajax-form-is-ok' style='display:none;'/>" . $retour;
338
+				$retour = "<br class='bugajaxie ajax-form-is-ok' style='display:none;'/>".$retour;
339 339
 				ajax_retour($retour, false);
340 340
 
341 341
 				return true; // on a fini le hit
Please login to merge, or discard this patch.
Braces   +1 added lines, -2 removed lines patch added patch discarded remove patch
@@ -208,8 +208,7 @@
 block discarded – undo
208 208
 			spip_log("signature ajax form incorrecte : $form (formulaire signe mais ne correspond pas a la session)", 'formulaires' . _LOG_ERREUR);
209 209
 			return false;
210 210
 		}
211
-	}
212
-	else {
211
+	} else {
213 212
 		if (!empty($sign)) {
214 213
 			spip_log("signature ajax form incorrecte : $form (formulaire signe mais pas de session)", 'formulaires' . _LOG_ERREUR);
215 214
 			return false;
Please login to merge, or discard this patch.
Indentation   +289 added lines, -289 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
 /**
@@ -19,158 +19,158 @@  discard block
 block discarded – undo
19 19
  * @return string
20 20
  */
21 21
 function securiser_redirect_action($redirect) {
22
-	$redirect ??= '';
23
-	// cas d'un double urlencode : si un urldecode de l'url n'est pas secure, on retient ca comme redirect
24
-	if (strpos($redirect, '%') !== false) {
25
-		$r2 = urldecode($redirect);
26
-		if (($r3 = securiser_redirect_action($r2)) !== $r2) {
27
-			return $r3;
28
-		}
29
-	}
30
-	if (
31
-		(tester_url_absolue($redirect) or preg_match(',^\w+:,', trim($redirect)))
32
-		and !defined('_AUTORISER_ACTION_ABS_REDIRECT')
33
-	) {
34
-		// si l'url est une url du site, on la laisse passer sans rien faire
35
-		// c'est encore le plus simple
36
-		$base = $GLOBALS['meta']['adresse_site'] . '/';
37
-		if (strlen($base) and strncmp($redirect, $base, strlen($base)) == 0) {
38
-			return $redirect;
39
-		}
40
-		$base = url_de_base();
41
-		if (strlen($base) and strncmp($redirect, $base, strlen($base)) == 0) {
42
-			return $redirect;
43
-		}
22
+    $redirect ??= '';
23
+    // cas d'un double urlencode : si un urldecode de l'url n'est pas secure, on retient ca comme redirect
24
+    if (strpos($redirect, '%') !== false) {
25
+        $r2 = urldecode($redirect);
26
+        if (($r3 = securiser_redirect_action($r2)) !== $r2) {
27
+            return $r3;
28
+        }
29
+    }
30
+    if (
31
+        (tester_url_absolue($redirect) or preg_match(',^\w+:,', trim($redirect)))
32
+        and !defined('_AUTORISER_ACTION_ABS_REDIRECT')
33
+    ) {
34
+        // si l'url est une url du site, on la laisse passer sans rien faire
35
+        // c'est encore le plus simple
36
+        $base = $GLOBALS['meta']['adresse_site'] . '/';
37
+        if (strlen($base) and strncmp($redirect, $base, strlen($base)) == 0) {
38
+            return $redirect;
39
+        }
40
+        $base = url_de_base();
41
+        if (strlen($base) and strncmp($redirect, $base, strlen($base)) == 0) {
42
+            return $redirect;
43
+        }
44 44
 
45
-		return '';
46
-	}
45
+        return '';
46
+    }
47 47
 
48
-	return $redirect;
48
+    return $redirect;
49 49
 }
50 50
 
51 51
 function traiter_appels_actions() {
52
-	// cas de l'appel qui renvoie une redirection (302) ou rien (204)
53
-	if ($action = _request('action')) {
54
-		include_spip('base/abstract_sql'); // chargement systematique pour les actions
55
-		include_spip('inc/autoriser');
56
-		include_spip('inc/headers');
57
-		include_spip('inc/actions');
58
-		// des actions peuvent appeler _T
59
-		if (!isset($GLOBALS['spip_lang'])) {
60
-			include_spip('inc/lang');
61
-			utiliser_langue_visiteur();
62
-		}
63
-		// si l'action est provoque par un hit {ajax}
64
-		// il faut transmettre l'env ajax au redirect
65
-		// on le met avant dans la query string au cas ou l'action fait elle meme sa redirection
66
-		if (
67
-			($v = _request('var_ajax'))
68
-			and ($v !== 'form')
69
-			and ($args = _request('var_ajax_env'))
70
-			and ($url = _request('redirect'))
71
-		) {
72
-			$url = parametre_url($url, 'var_ajax', $v, '&');
73
-			$url = parametre_url($url, 'var_ajax_env', $args, '&');
74
-			set_request('redirect', $url);
75
-		} else {
76
-			if (_request('redirect')) {
77
-				set_request('redirect', securiser_redirect_action(_request('redirect')));
78
-			}
79
-		}
80
-		$var_f = charger_fonction($action, 'action');
81
-		$var_f();
82
-		if (!isset($GLOBALS['redirect'])) {
83
-			$GLOBALS['redirect'] = _request('redirect') ?? '';
84
-			if ($_SERVER['REQUEST_METHOD'] === 'POST') {
85
-				$GLOBALS['redirect'] = urldecode($GLOBALS['redirect']);
86
-			}
87
-			$GLOBALS['redirect'] = securiser_redirect_action($GLOBALS['redirect']);
88
-		}
89
-		if ($url = $GLOBALS['redirect']) {
90
-			// si l'action est provoque par un hit {ajax}
91
-			// il faut transmettre l'env ajax au redirect
92
-			// qui a pu etre defini par l'action
93
-			if (
94
-				($v = _request('var_ajax'))
95
-				and ($v !== 'form')
96
-				and ($args = _request('var_ajax_env'))
97
-			) {
98
-				$url = parametre_url($url, 'var_ajax', $v, '&');
99
-				$url = parametre_url($url, 'var_ajax_env', $args, '&');
100
-				// passer l'ancre en variable pour pouvoir la gerer cote serveur
101
-				$url = preg_replace(',#([^#&?]+)$,', "&var_ajax_ancre=\\1", $url);
102
-			}
103
-			$url = str_replace('&amp;', '&', $url); // les redirections se font en &, pas en en &amp;
104
-			redirige_par_entete($url);
105
-		}
52
+    // cas de l'appel qui renvoie une redirection (302) ou rien (204)
53
+    if ($action = _request('action')) {
54
+        include_spip('base/abstract_sql'); // chargement systematique pour les actions
55
+        include_spip('inc/autoriser');
56
+        include_spip('inc/headers');
57
+        include_spip('inc/actions');
58
+        // des actions peuvent appeler _T
59
+        if (!isset($GLOBALS['spip_lang'])) {
60
+            include_spip('inc/lang');
61
+            utiliser_langue_visiteur();
62
+        }
63
+        // si l'action est provoque par un hit {ajax}
64
+        // il faut transmettre l'env ajax au redirect
65
+        // on le met avant dans la query string au cas ou l'action fait elle meme sa redirection
66
+        if (
67
+            ($v = _request('var_ajax'))
68
+            and ($v !== 'form')
69
+            and ($args = _request('var_ajax_env'))
70
+            and ($url = _request('redirect'))
71
+        ) {
72
+            $url = parametre_url($url, 'var_ajax', $v, '&');
73
+            $url = parametre_url($url, 'var_ajax_env', $args, '&');
74
+            set_request('redirect', $url);
75
+        } else {
76
+            if (_request('redirect')) {
77
+                set_request('redirect', securiser_redirect_action(_request('redirect')));
78
+            }
79
+        }
80
+        $var_f = charger_fonction($action, 'action');
81
+        $var_f();
82
+        if (!isset($GLOBALS['redirect'])) {
83
+            $GLOBALS['redirect'] = _request('redirect') ?? '';
84
+            if ($_SERVER['REQUEST_METHOD'] === 'POST') {
85
+                $GLOBALS['redirect'] = urldecode($GLOBALS['redirect']);
86
+            }
87
+            $GLOBALS['redirect'] = securiser_redirect_action($GLOBALS['redirect']);
88
+        }
89
+        if ($url = $GLOBALS['redirect']) {
90
+            // si l'action est provoque par un hit {ajax}
91
+            // il faut transmettre l'env ajax au redirect
92
+            // qui a pu etre defini par l'action
93
+            if (
94
+                ($v = _request('var_ajax'))
95
+                and ($v !== 'form')
96
+                and ($args = _request('var_ajax_env'))
97
+            ) {
98
+                $url = parametre_url($url, 'var_ajax', $v, '&');
99
+                $url = parametre_url($url, 'var_ajax_env', $args, '&');
100
+                // passer l'ancre en variable pour pouvoir la gerer cote serveur
101
+                $url = preg_replace(',#([^#&?]+)$,', "&var_ajax_ancre=\\1", $url);
102
+            }
103
+            $url = str_replace('&amp;', '&', $url); // les redirections se font en &, pas en en &amp;
104
+            redirige_par_entete($url);
105
+        }
106 106
 
107
-		// attention : avec zlib.output_compression=1 on a vu des cas de ob_get_length() qui renvoi 0
108
-		// et du coup en renvoi un status 204 a tort (vu sur le menu rubriques notamment)
109
-		if (
110
-			!headers_sent()
111
-			and !ob_get_length()
112
-		) {
113
-			http_response_code(204);
114
-		} // No Content
115
-		return true;
116
-	}
107
+        // attention : avec zlib.output_compression=1 on a vu des cas de ob_get_length() qui renvoi 0
108
+        // et du coup en renvoi un status 204 a tort (vu sur le menu rubriques notamment)
109
+        if (
110
+            !headers_sent()
111
+            and !ob_get_length()
112
+        ) {
113
+            http_response_code(204);
114
+        } // No Content
115
+        return true;
116
+    }
117 117
 
118
-	return false;
118
+    return false;
119 119
 }
120 120
 
121 121
 
122 122
 function refuser_traiter_formulaire_ajax() {
123
-	if (
124
-		$v = _request('var_ajax')
125
-		and $v == 'form'
126
-		and $form = _request('formulaire_action')
127
-		and $args = _request('formulaire_action_args')
128
-		and decoder_contexte_ajax($args, $form) !== false
129
-	) {
130
-		// on est bien dans le contexte de traitement d'un formulaire en ajax
131
-		// mais traiter ne veut pas
132
-		// on le dit a la page qui va resumbit
133
-		// sans ajax
134
-		include_spip('inc/actions');
135
-		ajax_retour('noajax', false);
136
-		exit;
137
-	}
123
+    if (
124
+        $v = _request('var_ajax')
125
+        and $v == 'form'
126
+        and $form = _request('formulaire_action')
127
+        and $args = _request('formulaire_action_args')
128
+        and decoder_contexte_ajax($args, $form) !== false
129
+    ) {
130
+        // on est bien dans le contexte de traitement d'un formulaire en ajax
131
+        // mais traiter ne veut pas
132
+        // on le dit a la page qui va resumbit
133
+        // sans ajax
134
+        include_spip('inc/actions');
135
+        ajax_retour('noajax', false);
136
+        exit;
137
+    }
138 138
 }
139 139
 
140 140
 function traiter_appels_inclusions_ajax() {
141
-	// traiter les appels de bloc ajax (ex: pagination)
142
-	if (
143
-		$v = _request('var_ajax')
144
-		and $v !== 'form'
145
-		and $args = _request('var_ajax_env')
146
-	) {
147
-		include_spip('inc/filtres');
148
-		include_spip('inc/actions');
149
-		if (
150
-			$args = decoder_contexte_ajax($args)
151
-			and $fond = $args['fond']
152
-		) {
153
-			include_spip('public/assembler');
154
-			$contexte = calculer_contexte();
155
-			$contexte = array_merge($args, $contexte);
156
-			$page = recuperer_fond($fond, $contexte, ['trim' => false]);
157
-			$texte = $page;
158
-			if ($ancre = _request('var_ajax_ancre')) {
159
-				// pas n'importe quoi quand meme dans la variable !
160
-				$ancre = str_replace(['<', '"', "'"], ['&lt;', '&quot;', ''], $ancre);
161
-				$texte = "<a href='#$ancre' name='ajax_ancre' style='display:none;'>anchor</a>" . $texte;
162
-			}
163
-		} else {
164
-			include_spip('inc/headers');
165
-			http_response_code(400);
166
-			$texte = _L('signature ajax bloc incorrecte');
167
-		}
168
-		ajax_retour($texte, false);
141
+    // traiter les appels de bloc ajax (ex: pagination)
142
+    if (
143
+        $v = _request('var_ajax')
144
+        and $v !== 'form'
145
+        and $args = _request('var_ajax_env')
146
+    ) {
147
+        include_spip('inc/filtres');
148
+        include_spip('inc/actions');
149
+        if (
150
+            $args = decoder_contexte_ajax($args)
151
+            and $fond = $args['fond']
152
+        ) {
153
+            include_spip('public/assembler');
154
+            $contexte = calculer_contexte();
155
+            $contexte = array_merge($args, $contexte);
156
+            $page = recuperer_fond($fond, $contexte, ['trim' => false]);
157
+            $texte = $page;
158
+            if ($ancre = _request('var_ajax_ancre')) {
159
+                // pas n'importe quoi quand meme dans la variable !
160
+                $ancre = str_replace(['<', '"', "'"], ['&lt;', '&quot;', ''], $ancre);
161
+                $texte = "<a href='#$ancre' name='ajax_ancre' style='display:none;'>anchor</a>" . $texte;
162
+            }
163
+        } else {
164
+            include_spip('inc/headers');
165
+            http_response_code(400);
166
+            $texte = _L('signature ajax bloc incorrecte');
167
+        }
168
+        ajax_retour($texte, false);
169 169
 
170
-		return true; // on a fini le hit
171
-	}
170
+        return true; // on a fini le hit
171
+    }
172 172
 
173
-	return false;
173
+    return false;
174 174
 }
175 175
 
176 176
 // au 1er appel, traite les formulaires dynamiques charger/verifier/traiter
@@ -178,172 +178,172 @@  discard block
 block discarded – undo
178 178
 // Le 1er renvoie True si il faut faire exit a la sortie
179 179
 
180 180
 function traiter_formulaires_dynamiques($get = false) {
181
-	static $post = [];
182
-	static $done = false;
181
+    static $post = [];
182
+    static $done = false;
183 183
 
184
-	if ($get) {
185
-		return $post;
186
-	}
187
-	if ($done) {
188
-		return false;
189
-	}
190
-	$done = true;
184
+    if ($get) {
185
+        return $post;
186
+    }
187
+    if ($done) {
188
+        return false;
189
+    }
190
+    $done = true;
191 191
 
192
-	if (
193
-		!($form = _request('formulaire_action')
194
-		and $args = _request('formulaire_action_args'))
195
-	) {
196
-		return false;
197
-	} // le hit peut continuer normalement
192
+    if (
193
+        !($form = _request('formulaire_action')
194
+        and $args = _request('formulaire_action_args'))
195
+    ) {
196
+        return false;
197
+    } // le hit peut continuer normalement
198 198
 
199
-	// verifier que le post est licite (du meme auteur ou d'une session anonyme)
200
-	$sign = _request('formulaire_action_sign');
201
-	if (!empty($GLOBALS['visiteur_session']['id_auteur'])) {
202
-		if (empty($sign)) {
203
-			spip_log("signature ajax form incorrecte : $form (formulaire non signe mais on a une session)", 'formulaires' . _LOG_ERREUR);
204
-			return false;
205
-		}
206
-		$securiser_action = charger_fonction('securiser_action', 'inc');
207
-		$secu = $securiser_action($form, $args, '', -1);
208
-		if ($sign !== $secu['hash']) {
209
-			spip_log("signature ajax form incorrecte : $form (formulaire signe mais ne correspond pas a la session)", 'formulaires' . _LOG_ERREUR);
210
-			return false;
211
-		}
212
-	}
213
-	else {
214
-		if (!empty($sign)) {
215
-			spip_log("signature ajax form incorrecte : $form (formulaire signe mais pas de session)", 'formulaires' . _LOG_ERREUR);
216
-			return false;
217
-		}
218
-	}
199
+    // verifier que le post est licite (du meme auteur ou d'une session anonyme)
200
+    $sign = _request('formulaire_action_sign');
201
+    if (!empty($GLOBALS['visiteur_session']['id_auteur'])) {
202
+        if (empty($sign)) {
203
+            spip_log("signature ajax form incorrecte : $form (formulaire non signe mais on a une session)", 'formulaires' . _LOG_ERREUR);
204
+            return false;
205
+        }
206
+        $securiser_action = charger_fonction('securiser_action', 'inc');
207
+        $secu = $securiser_action($form, $args, '', -1);
208
+        if ($sign !== $secu['hash']) {
209
+            spip_log("signature ajax form incorrecte : $form (formulaire signe mais ne correspond pas a la session)", 'formulaires' . _LOG_ERREUR);
210
+            return false;
211
+        }
212
+    }
213
+    else {
214
+        if (!empty($sign)) {
215
+            spip_log("signature ajax form incorrecte : $form (formulaire signe mais pas de session)", 'formulaires' . _LOG_ERREUR);
216
+            return false;
217
+        }
218
+    }
219 219
 
220
-	include_spip('inc/filtres');
221
-	if (($args = decoder_contexte_ajax($args, $form)) === false) {
222
-		spip_log("signature ajax form incorrecte : $form (encodage corrompu)", 'formulaires' . _LOG_ERREUR);
220
+    include_spip('inc/filtres');
221
+    if (($args = decoder_contexte_ajax($args, $form)) === false) {
222
+        spip_log("signature ajax form incorrecte : $form (encodage corrompu)", 'formulaires' . _LOG_ERREUR);
223 223
 
224
-		return false; // continuons le hit comme si de rien etait
225
-	} else {
226
-		include_spip('inc/lang');
227
-		// sauvegarder la lang en cours
228
-		$old_lang = $GLOBALS['spip_lang'];
229
-		// changer la langue avec celle qui a cours dans le formulaire
230
-		// on la depile de $args car c'est un argument implicite masque
231
-		changer_langue(array_shift($args));
224
+        return false; // continuons le hit comme si de rien etait
225
+    } else {
226
+        include_spip('inc/lang');
227
+        // sauvegarder la lang en cours
228
+        $old_lang = $GLOBALS['spip_lang'];
229
+        // changer la langue avec celle qui a cours dans le formulaire
230
+        // on la depile de $args car c'est un argument implicite masque
231
+        changer_langue(array_shift($args));
232 232
 
233 233
 
234
-		// inclure mes_fonctions et autres filtres avant verifier/traiter
235
-		include_fichiers_fonctions();
236
-		// ainsi que l'API SQL bien utile dans verifier/traiter
237
-		include_spip('base/abstract_sql');
234
+        // inclure mes_fonctions et autres filtres avant verifier/traiter
235
+        include_fichiers_fonctions();
236
+        // ainsi que l'API SQL bien utile dans verifier/traiter
237
+        include_spip('base/abstract_sql');
238 238
 
239
-		/**
240
-		 * Pipeline exécuté lors de la soumission d'un formulaire,
241
-		 * mais avant l'appel de la fonction de vérification.
242
-		 */
243
-		pipeline(
244
-			'formulaire_receptionner',
245
-			[
246
-				'args' => ['form' => $form, 'args' => $args],
247
-				'data' => null,
248
-			]
249
-		);
239
+        /**
240
+         * Pipeline exécuté lors de la soumission d'un formulaire,
241
+         * mais avant l'appel de la fonction de vérification.
242
+         */
243
+        pipeline(
244
+            'formulaire_receptionner',
245
+            [
246
+                'args' => ['form' => $form, 'args' => $args],
247
+                'data' => null,
248
+            ]
249
+        );
250 250
 
251
-		$verifier = charger_fonction('verifier', "formulaires/$form/", true);
252
-		$post["erreurs_$form"] = pipeline(
253
-			'formulaire_verifier',
254
-			[
255
-				'args' => ['form' => $form, 'args' => $args],
256
-				'data' => $verifier ? $verifier(...$args) : []
257
-			]
258
-		);
259
-		// prise en charge CVT multi etape si besoin
260
-		if (_request('cvtm_prev_post')) {
261
-			include_spip('inc/cvt_multietapes');
262
-			$post["erreurs_$form"] = cvtmulti_formulaire_verifier_etapes(
263
-				['form' => $form, 'args' => $args],
264
-				$post["erreurs_$form"]
265
-			);
266
-		}
251
+        $verifier = charger_fonction('verifier', "formulaires/$form/", true);
252
+        $post["erreurs_$form"] = pipeline(
253
+            'formulaire_verifier',
254
+            [
255
+                'args' => ['form' => $form, 'args' => $args],
256
+                'data' => $verifier ? $verifier(...$args) : []
257
+            ]
258
+        );
259
+        // prise en charge CVT multi etape si besoin
260
+        if (_request('cvtm_prev_post')) {
261
+            include_spip('inc/cvt_multietapes');
262
+            $post["erreurs_$form"] = cvtmulti_formulaire_verifier_etapes(
263
+                ['form' => $form, 'args' => $args],
264
+                $post["erreurs_$form"]
265
+            );
266
+        }
267 267
 
268
-		// accessibilite : si des erreurs mais pas de message general l'ajouter
269
-		if ((isset($post["erreurs_$form"]) and is_countable($post["erreurs_$form"]) ? count($post["erreurs_$form"]) : 0) and !isset($post["erreurs_$form"]['message_erreur'])) {
270
-			$post["erreurs_$form"]['message_erreur'] = singulier_ou_pluriel(
271
-				is_countable($post["erreurs_$form"]) ? count($post["erreurs_$form"]) : 0,
272
-				'avis_1_erreur_saisie',
273
-				'avis_nb_erreurs_saisie'
274
-			);
275
-		}
268
+        // accessibilite : si des erreurs mais pas de message general l'ajouter
269
+        if ((isset($post["erreurs_$form"]) and is_countable($post["erreurs_$form"]) ? count($post["erreurs_$form"]) : 0) and !isset($post["erreurs_$form"]['message_erreur'])) {
270
+            $post["erreurs_$form"]['message_erreur'] = singulier_ou_pluriel(
271
+                is_countable($post["erreurs_$form"]) ? count($post["erreurs_$form"]) : 0,
272
+                'avis_1_erreur_saisie',
273
+                'avis_nb_erreurs_saisie'
274
+            );
275
+        }
276 276
 
277
-		// si on ne demandait qu'une verif json
278
-		if (_request('formulaire_action_verifier_json')) {
279
-			include_spip('inc/json');
280
-			include_spip('inc/actions');
281
-			ajax_retour(json_encode($post["erreurs_$form"], JSON_THROW_ON_ERROR), 'text/plain');
277
+        // si on ne demandait qu'une verif json
278
+        if (_request('formulaire_action_verifier_json')) {
279
+            include_spip('inc/json');
280
+            include_spip('inc/actions');
281
+            ajax_retour(json_encode($post["erreurs_$form"], JSON_THROW_ON_ERROR), 'text/plain');
282 282
 
283
-			return true; // on a fini le hit
284
-		}
285
-		$retour = '';
286
-		if (isset($post["erreurs_$form"]) and ((is_countable($post["erreurs_$form"]) ? count($post["erreurs_$form"]) : 0) == 0)) {
287
-			$rev = '';
288
-			if ($traiter = charger_fonction('traiter', "formulaires/$form/", true)) {
289
-				$rev = $traiter(...$args);
290
-			}
283
+            return true; // on a fini le hit
284
+        }
285
+        $retour = '';
286
+        if (isset($post["erreurs_$form"]) and ((is_countable($post["erreurs_$form"]) ? count($post["erreurs_$form"]) : 0) == 0)) {
287
+            $rev = '';
288
+            if ($traiter = charger_fonction('traiter', "formulaires/$form/", true)) {
289
+                $rev = $traiter(...$args);
290
+            }
291 291
 
292
-			$rev = pipeline(
293
-				'formulaire_traiter',
294
-				[
295
-					'args' => ['form' => $form, 'args' => $args],
296
-					'data' => $rev
297
-				]
298
-			);
299
-			// le retour de traiter est
300
-			// un tableau explicite ('editable'=>$editable,'message_ok'=>$message,'redirect'=>$redirect,'id_xx'=>$id_xx)
301
-			// il permet le pipelinage, en particulier
302
-			// en y passant l'id de l'objet cree/modifie
303
-			// si message_erreur est present, on considere que le traitement a echoue
304
-			$post["message_ok_$form"] = '';
305
-			// on peut avoir message_ok et message_erreur
306
-			if (isset($rev['message_ok'])) {
307
-				$post["message_ok_$form"] = $rev['message_ok'];
308
-			}
292
+            $rev = pipeline(
293
+                'formulaire_traiter',
294
+                [
295
+                    'args' => ['form' => $form, 'args' => $args],
296
+                    'data' => $rev
297
+                ]
298
+            );
299
+            // le retour de traiter est
300
+            // un tableau explicite ('editable'=>$editable,'message_ok'=>$message,'redirect'=>$redirect,'id_xx'=>$id_xx)
301
+            // il permet le pipelinage, en particulier
302
+            // en y passant l'id de l'objet cree/modifie
303
+            // si message_erreur est present, on considere que le traitement a echoue
304
+            $post["message_ok_$form"] = '';
305
+            // on peut avoir message_ok et message_erreur
306
+            if (isset($rev['message_ok'])) {
307
+                $post["message_ok_$form"] = $rev['message_ok'];
308
+            }
309 309
 
310
-			// verifier si traiter n'a pas echoue avec une erreur :
311
-			if (isset($rev['message_erreur'])) {
312
-				$post["erreurs_$form"]['message_erreur'] = $rev['message_erreur'];
313
-				// si il y a une erreur on ne redirige pas
314
-			} else {
315
-				// sinon faire ce qu'il faut :
316
-				if (isset($rev['editable'])) {
317
-					$post["editable_$form"] = $rev['editable'];
318
-				}
319
-				// si une redirection est demandee, appeler redirigae_formulaire qui choisira
320
-				// le bon mode de redirection (302 et on ne revient pas ici, ou javascript et on continue)
321
-				if (isset($rev['redirect']) and $rev['redirect']) {
322
-					include_spip('inc/headers');
323
-					[$masque, $message] = redirige_formulaire($rev['redirect'], '', 'ajaxform');
324
-					$post["message_ok_$form"] .= $message;
325
-					$retour .= $masque;
326
-				}
327
-			}
328
-		}
329
-		// si le formulaire a ete soumis en ajax, on le renvoie direct !
330
-		if (_request('var_ajax')) {
331
-			if (find_in_path('formulaire_.php', 'balise/', true)) {
332
-				include_spip('inc/actions');
333
-				include_spip('public/assembler');
334
-				$retour .= inclure_balise_dynamique(balise_formulaire__dyn($form, ...$args), false);
335
-				// on ajoute un br en display none en tete du retour ajax pour regler un bug dans IE6/7
336
-				// sans cela le formulaire n'est pas actif apres le hit ajax
337
-				// la classe ajax-form-is-ok sert a s'assurer que le retour ajax s'est bien passe
338
-				$retour = "<br class='bugajaxie ajax-form-is-ok' style='display:none;'/>" . $retour;
339
-				ajax_retour($retour, false);
310
+            // verifier si traiter n'a pas echoue avec une erreur :
311
+            if (isset($rev['message_erreur'])) {
312
+                $post["erreurs_$form"]['message_erreur'] = $rev['message_erreur'];
313
+                // si il y a une erreur on ne redirige pas
314
+            } else {
315
+                // sinon faire ce qu'il faut :
316
+                if (isset($rev['editable'])) {
317
+                    $post["editable_$form"] = $rev['editable'];
318
+                }
319
+                // si une redirection est demandee, appeler redirigae_formulaire qui choisira
320
+                // le bon mode de redirection (302 et on ne revient pas ici, ou javascript et on continue)
321
+                if (isset($rev['redirect']) and $rev['redirect']) {
322
+                    include_spip('inc/headers');
323
+                    [$masque, $message] = redirige_formulaire($rev['redirect'], '', 'ajaxform');
324
+                    $post["message_ok_$form"] .= $message;
325
+                    $retour .= $masque;
326
+                }
327
+            }
328
+        }
329
+        // si le formulaire a ete soumis en ajax, on le renvoie direct !
330
+        if (_request('var_ajax')) {
331
+            if (find_in_path('formulaire_.php', 'balise/', true)) {
332
+                include_spip('inc/actions');
333
+                include_spip('public/assembler');
334
+                $retour .= inclure_balise_dynamique(balise_formulaire__dyn($form, ...$args), false);
335
+                // on ajoute un br en display none en tete du retour ajax pour regler un bug dans IE6/7
336
+                // sans cela le formulaire n'est pas actif apres le hit ajax
337
+                // la classe ajax-form-is-ok sert a s'assurer que le retour ajax s'est bien passe
338
+                $retour = "<br class='bugajaxie ajax-form-is-ok' style='display:none;'/>" . $retour;
339
+                ajax_retour($retour, false);
340 340
 
341
-				return true; // on a fini le hit
342
-			}
343
-		}
344
-		// restaurer la lang en cours
345
-		changer_langue($old_lang);
346
-	}
341
+                return true; // on a fini le hit
342
+            }
343
+        }
344
+        // restaurer la lang en cours
345
+        changer_langue($old_lang);
346
+    }
347 347
 
348
-	return false; // le hit peut continuer normalement
348
+    return false; // le hit peut continuer normalement
349 349
 }
Please login to merge, or discard this patch.
ecrire/lang/public_fr_tu.php 1 patch
Indentation   +115 added lines, -115 removed lines patch added patch discarded remove patch
@@ -4,123 +4,123 @@
 block discarded – undo
4 4
 // ** ne pas modifier le fichier **
5 5
 
6 6
 if (!defined('_ECRIRE_INC_VERSION')) {
7
-	return;
7
+    return;
8 8
 }
9 9
 
10 10
 $GLOBALS[$GLOBALS['idx_lang']] = array(
11 11
 
12
-	// A
13
-	'accueil_site' => 'Accueil',
14
-	'article' => 'Article',
15
-	'articles' => 'Articles',
16
-	'articles_auteur' => 'Articles de cet auteur',
17
-	'articles_populaires' => 'Articles les plus populaires',
18
-	'articles_rubrique' => 'Articles de cette rubrique',
19
-	'aucun_article' => 'Il n’y a pas d’article à cette adresse',
20
-	'aucun_auteur' => 'Il n’y a pas d’auteur à cette adresse',
21
-	'aucun_site' => 'Il n’y a pas de site à cette adresse',
22
-	'aucune_breve' => 'Il n’y a pas de brève à cette adresse',
23
-	'aucune_rubrique' => 'Il n’y a pas de rubrique à cette adresse',
24
-	'auteur' => 'Auteur',
25
-	'autres' => 'Autres',
26
-	'autres_breves' => 'Autres brèves',
27
-	'autres_groupes_mots_clefs' => 'Autres groupes de mots-clés',
28
-	'autres_sites' => 'Autres sites',
29
-
30
-	// B
31
-	'bonjour' => 'Salut',
32
-
33
-	// C
34
-	'commenter_site' => 'Commenter ce site',
35
-	'contact' => 'Contact',
36
-	'copie_document_impossible' => 'Impossible de copier le document',
37
-
38
-	// D
39
-	'date' => 'Date',
40
-	'dernier_ajout' => 'Dernier ajout',
41
-	'dernieres_breves' => 'Dernières brèves',
42
-	'derniers_articles' => 'Derniers articles',
43
-	'derniers_commentaires' => 'Derniers commentaires',
44
-	'derniers_messages_forum' => 'Derniers messages publiés dans les forums',
45
-
46
-	// E
47
-	'edition_mode_texte' => 'Édition en mode texte de',
48
-	'en_reponse' => 'En réponse à :',
49
-	'en_resume' => 'En résumé',
50
-	'envoyer_message' => 'Envoyer un message',
51
-	'espace_prive' => 'Espace privé',
52
-
53
-	// F
54
-	'formats_acceptes' => 'Formats acceptés : @formats@.',
55
-
56
-	// H
57
-	'hierarchie_site' => 'Hiérarchie du site',
58
-
59
-	// J
60
-	'jours' => 'jours',
61
-
62
-	// L
63
-	'lien_connecter' => 'Se connecter',
64
-
65
-	// M
66
-	'meme_auteur' => 'Du même auteur',
67
-	'meme_rubrique' => 'Dans la même rubrique',
68
-	'memes_auteurs' => 'Des mêmes auteurs',
69
-	'message' => 'Message',
70
-	'messages_forum' => 'Messages',
71
-	'messages_recents' => 'Messages de forums les plus récents',
72
-	'mots_clef' => 'Mot-clé',
73
-	'mots_clefs' => 'Mots-clés',
74
-	'mots_clefs_meme_groupe' => 'Mots-clés dans le même groupe',
75
-
76
-	// N
77
-	'navigation' => 'Navigation',
78
-	'nom' => 'Nom',
79
-	'nouveautes' => 'Les nouveautés',
80
-	'nouveautes_web' => 'Nouveautés sur le Web',
81
-	'nouveaux_articles' => 'Nouveaux articles',
82
-	'nouvelles_breves' => 'Nouvelles brèves',
83
-
84
-	// P
85
-	'page_precedente' => 'page précédente',
86
-	'page_suivante' => 'page suivante',
87
-	'par_auteur' => 'par ',
88
-	'participer_site' => 'Tu peux participer à la vie de ce site et proposer tes propres articles en t’inscrivant ci-dessous. Tu recevras immédiatement un email t’indiquant tes codes d’accès à l’espace privé du site.',
89
-	'plan_site' => 'Plan du site',
90
-	'popularite' => 'Popularité',
91
-	'poster_message' => 'Poster un message',
92
-	'proposer_site' => 'Tu peux proposer un site à ajouter dans cette rubrique :',
93
-
94
-	// R
95
-	'repondre_article' => 'Répondre à cet article',
96
-	'repondre_breve' => 'Répondre à cette brève',
97
-	'resultats_recherche' => 'Résultats de la recherche',
98
-	'retour_debut_forums' => 'Retour au début des forums',
99
-	'rss_abonnement' => 'Copie l’URL suivante dans ton agrégateur :',
100
-	'rss_abonnement_titre' => 'S’abonner',
101
-	'rss_abonnement_titre_page' => 'S’abonner à',
102
-	'rss_explication' => 'Un fil RSS recueille les informations de mise à jour d’un site. Il fournit le contenu des billets ou des commentaires ou un extrait de ceux-ci, ainsi qu’un lien vers les versions complètes et quelques autres informations. Ce fil a pour vocation d’être lu par un agrégateur RSS.',
103
-	'rss_explication_titre' => 'Qu’est-ce qu’un flux RSS ?',
104
-	'rubrique' => 'Rubrique',
105
-	'rubriques' => 'Rubriques',
106
-
107
-	// S
108
-	'signatures_petition' => 'Signatures',
109
-	'site_realise_avec_spip' => 'Site réalisé avec SPIP',
110
-	'sites_web' => 'Sites Web',
111
-	'sous_rubriques' => 'Sous-rubriques',
112
-	'spam' => 'Spam',
113
-	'suite' => 'suite',
114
-	'sur_web' => 'Sur le Web',
115
-	'syndiquer_rubrique' => 'Syndiquer cette rubrique',
116
-	'syndiquer_site' => 'Syndiquer tout le site',
117
-
118
-	// T
119
-	'texte_lettre_information' => 'Voici la lettre d’information du site',
120
-	'texte_lettre_information_2' => 'Cette lettre recense les articles et les brèves publiés depuis',
121
-
122
-	// V
123
-	'ver_imprimer' => 'Version à imprimer',
124
-	'voir_en_ligne' => 'Voir en ligne',
125
-	'voir_squelette' => 'voir le squelette de cette page'
12
+    // A
13
+    'accueil_site' => 'Accueil',
14
+    'article' => 'Article',
15
+    'articles' => 'Articles',
16
+    'articles_auteur' => 'Articles de cet auteur',
17
+    'articles_populaires' => 'Articles les plus populaires',
18
+    'articles_rubrique' => 'Articles de cette rubrique',
19
+    'aucun_article' => 'Il n’y a pas d’article à cette adresse',
20
+    'aucun_auteur' => 'Il n’y a pas d’auteur à cette adresse',
21
+    'aucun_site' => 'Il n’y a pas de site à cette adresse',
22
+    'aucune_breve' => 'Il n’y a pas de brève à cette adresse',
23
+    'aucune_rubrique' => 'Il n’y a pas de rubrique à cette adresse',
24
+    'auteur' => 'Auteur',
25
+    'autres' => 'Autres',
26
+    'autres_breves' => 'Autres brèves',
27
+    'autres_groupes_mots_clefs' => 'Autres groupes de mots-clés',
28
+    'autres_sites' => 'Autres sites',
29
+
30
+    // B
31
+    'bonjour' => 'Salut',
32
+
33
+    // C
34
+    'commenter_site' => 'Commenter ce site',
35
+    'contact' => 'Contact',
36
+    'copie_document_impossible' => 'Impossible de copier le document',
37
+
38
+    // D
39
+    'date' => 'Date',
40
+    'dernier_ajout' => 'Dernier ajout',
41
+    'dernieres_breves' => 'Dernières brèves',
42
+    'derniers_articles' => 'Derniers articles',
43
+    'derniers_commentaires' => 'Derniers commentaires',
44
+    'derniers_messages_forum' => 'Derniers messages publiés dans les forums',
45
+
46
+    // E
47
+    'edition_mode_texte' => 'Édition en mode texte de',
48
+    'en_reponse' => 'En réponse à :',
49
+    'en_resume' => 'En résumé',
50
+    'envoyer_message' => 'Envoyer un message',
51
+    'espace_prive' => 'Espace privé',
52
+
53
+    // F
54
+    'formats_acceptes' => 'Formats acceptés : @formats@.',
55
+
56
+    // H
57
+    'hierarchie_site' => 'Hiérarchie du site',
58
+
59
+    // J
60
+    'jours' => 'jours',
61
+
62
+    // L
63
+    'lien_connecter' => 'Se connecter',
64
+
65
+    // M
66
+    'meme_auteur' => 'Du même auteur',
67
+    'meme_rubrique' => 'Dans la même rubrique',
68
+    'memes_auteurs' => 'Des mêmes auteurs',
69
+    'message' => 'Message',
70
+    'messages_forum' => 'Messages',
71
+    'messages_recents' => 'Messages de forums les plus récents',
72
+    'mots_clef' => 'Mot-clé',
73
+    'mots_clefs' => 'Mots-clés',
74
+    'mots_clefs_meme_groupe' => 'Mots-clés dans le même groupe',
75
+
76
+    // N
77
+    'navigation' => 'Navigation',
78
+    'nom' => 'Nom',
79
+    'nouveautes' => 'Les nouveautés',
80
+    'nouveautes_web' => 'Nouveautés sur le Web',
81
+    'nouveaux_articles' => 'Nouveaux articles',
82
+    'nouvelles_breves' => 'Nouvelles brèves',
83
+
84
+    // P
85
+    'page_precedente' => 'page précédente',
86
+    'page_suivante' => 'page suivante',
87
+    'par_auteur' => 'par ',
88
+    'participer_site' => 'Tu peux participer à la vie de ce site et proposer tes propres articles en t’inscrivant ci-dessous. Tu recevras immédiatement un email t’indiquant tes codes d’accès à l’espace privé du site.',
89
+    'plan_site' => 'Plan du site',
90
+    'popularite' => 'Popularité',
91
+    'poster_message' => 'Poster un message',
92
+    'proposer_site' => 'Tu peux proposer un site à ajouter dans cette rubrique :',
93
+
94
+    // R
95
+    'repondre_article' => 'Répondre à cet article',
96
+    'repondre_breve' => 'Répondre à cette brève',
97
+    'resultats_recherche' => 'Résultats de la recherche',
98
+    'retour_debut_forums' => 'Retour au début des forums',
99
+    'rss_abonnement' => 'Copie l’URL suivante dans ton agrégateur :',
100
+    'rss_abonnement_titre' => 'S’abonner',
101
+    'rss_abonnement_titre_page' => 'S’abonner à',
102
+    'rss_explication' => 'Un fil RSS recueille les informations de mise à jour d’un site. Il fournit le contenu des billets ou des commentaires ou un extrait de ceux-ci, ainsi qu’un lien vers les versions complètes et quelques autres informations. Ce fil a pour vocation d’être lu par un agrégateur RSS.',
103
+    'rss_explication_titre' => 'Qu’est-ce qu’un flux RSS ?',
104
+    'rubrique' => 'Rubrique',
105
+    'rubriques' => 'Rubriques',
106
+
107
+    // S
108
+    'signatures_petition' => 'Signatures',
109
+    'site_realise_avec_spip' => 'Site réalisé avec SPIP',
110
+    'sites_web' => 'Sites Web',
111
+    'sous_rubriques' => 'Sous-rubriques',
112
+    'spam' => 'Spam',
113
+    'suite' => 'suite',
114
+    'sur_web' => 'Sur le Web',
115
+    'syndiquer_rubrique' => 'Syndiquer cette rubrique',
116
+    'syndiquer_site' => 'Syndiquer tout le site',
117
+
118
+    // T
119
+    'texte_lettre_information' => 'Voici la lettre d’information du site',
120
+    'texte_lettre_information_2' => 'Cette lettre recense les articles et les brèves publiés depuis',
121
+
122
+    // V
123
+    'ver_imprimer' => 'Version à imprimer',
124
+    'voir_en_ligne' => 'Voir en ligne',
125
+    'voir_squelette' => 'voir le squelette de cette page'
126 126
 );
Please login to merge, or discard this patch.
ecrire/lang/public_it.php 1 patch
Indentation   +115 added lines, -115 removed lines patch added patch discarded remove patch
@@ -4,123 +4,123 @@
 block discarded – undo
4 4
 // ** ne pas modifier le fichier **
5 5
 
6 6
 if (!defined('_ECRIRE_INC_VERSION')) {
7
-	return;
7
+    return;
8 8
 }
9 9
 
10 10
 $GLOBALS[$GLOBALS['idx_lang']] = array(
11 11
 
12
-	// A
13
-	'accueil_site' => 'Home',
14
-	'article' => 'Articolo',
15
-	'articles' => 'Articoli',
16
-	'articles_auteur' => 'Articoli di questo autore',
17
-	'articles_populaires' => 'Articoli più letti',
18
-	'articles_rubrique' => 'Articoli di questa rubrica',
19
-	'aucun_article' => 'Non ci sono articoli a questo indirizzo',
20
-	'aucun_auteur' => 'Non ci sono autori a questo indirizzo',
21
-	'aucun_site' => 'Non ci sono siti a questo indirizzo',
22
-	'aucune_breve' => 'Non ci sono brevi a questo indirizzo',
23
-	'aucune_rubrique' => 'Non ci sono rubriche a questo indirizzo',
24
-	'auteur' => 'Autore',
25
-	'autres' => 'Altri',
26
-	'autres_breves' => 'Altre brevi',
27
-	'autres_groupes_mots_clefs' => 'Altri gruppi di parole chiave',
28
-	'autres_sites' => 'Altri siti',
29
-
30
-	// B
31
-	'bonjour' => 'Salve',
32
-
33
-	// C
34
-	'commenter_site' => 'Commenta questo sito',
35
-	'contact' => 'Contatti',
36
-	'copie_document_impossible' => 'Impossibile copiare il documento',
37
-
38
-	// D
39
-	'date' => 'Data',
40
-	'dernier_ajout' => 'Ultimo aggiornamento',
41
-	'dernieres_breves' => 'Ultime brevi',
42
-	'derniers_articles' => 'Ultimi articoli',
43
-	'derniers_commentaires' => 'Ultimi commenti',
44
-	'derniers_messages_forum' => 'Ultimi messaggi pubblicati nei forum',
45
-
46
-	// E
47
-	'edition_mode_texte' => 'Versione solo testo di',
48
-	'en_reponse' => 'In risposta a:',
49
-	'en_resume' => 'Riassunto',
50
-	'envoyer_message' => 'Invia un messaggio',
51
-	'espace_prive' => 'Area riservata',
52
-
53
-	// F
54
-	'formats_acceptes' => 'Formati accettati: @formats@.',
55
-
56
-	// H
57
-	'hierarchie_site' => 'Mappa del sito',
58
-
59
-	// J
60
-	'jours' => 'giorni',
61
-
62
-	// L
63
-	'lien_connecter' => 'Connettersi',
64
-
65
-	// M
66
-	'meme_auteur' => 'Dello stesso autore',
67
-	'meme_rubrique' => 'Nella stessa rubrica',
68
-	'memes_auteurs' => 'Degli stessi autori',
69
-	'message' => 'Messaggio',
70
-	'messages_forum' => 'Messaggi',
71
-	'messages_recents' => 'Messaggi più recenti del forum',
72
-	'mots_clef' => 'Parola chiave',
73
-	'mots_clefs' => 'Parole chiave',
74
-	'mots_clefs_meme_groupe' => 'Parole chiave nello stesso gruppo',
75
-
76
-	// N
77
-	'navigation' => 'Navigazione',
78
-	'nom' => 'Cognome',
79
-	'nouveautes' => 'Le novità',
80
-	'nouveautes_web' => 'Novità sul Web',
81
-	'nouveaux_articles' => 'Nuovi articoli',
82
-	'nouvelles_breves' => 'Nuove brevi',
83
-
84
-	// P
85
-	'page_precedente' => 'pagina precedente',
86
-	'page_suivante' => 'pagina successiva',
87
-	'par_auteur' => 'di ',
88
-	'participer_site' => 'È possibile partecipare alla vita di questo sito e proporre degli articoli iscrivendosi qui sotto. Verrà spedito immediatamente un email con il codice di accesso all’area riservata del sito.',
89
-	'plan_site' => 'Mappa del sito',
90
-	'popularite' => 'Popolarità',
91
-	'poster_message' => 'Inviare un messaggio',
92
-	'proposer_site' => 'È possibile proporre un sito da aggiungere a questa rubrica:',
93
-
94
-	// R
95
-	'repondre_article' => 'Rispondere all’articolo',
96
-	'repondre_breve' => 'Rispondere a questa breve',
97
-	'resultats_recherche' => 'Risultati della ricerca',
98
-	'retour_debut_forums' => 'Tornare all’inizio dei forum',
99
-	'rss_abonnement' => 'Copia il seguente URL nel tuo aggregatore RSS:',
100
-	'rss_abonnement_titre' => 'Sottoscrivi',
101
-	'rss_abonnement_titre_page' => 'Per sottoscrivere',
102
-	'rss_explication' => 'Un feed RSS raccoglie informazioni di aggiornamento per un sito. Fornisce il contenuto dei post o dei commenti o un estratto da essi, nonché un collegamento alle versioni complete e alcune altre informazioni. Questo feed deve essere letto da un aggregatore RSS.',
103
-	'rss_explication_titre' => 'Cos’è un flusso RSS?',
104
-	'rubrique' => 'Rubrica',
105
-	'rubriques' => 'Rubriche',
106
-
107
-	// S
108
-	'signatures_petition' => 'Firme',
109
-	'site_realise_avec_spip' => 'Sito realizzato con SPIP',
110
-	'sites_web' => 'Siti Web',
111
-	'sous_rubriques' => 'Sottorubriche',
112
-	'spam' => 'Spam',
113
-	'suite' => 'segue',
114
-	'sur_web' => 'Sul Web',
115
-	'syndiquer_rubrique' => 'Mettere in syndication questa rubrica',
116
-	'syndiquer_site' => 'Mettere in syndication tutto il sito',
117
-
118
-	// T
119
-	'texte_lettre_information' => 'Newsletter del sito',
120
-	'texte_lettre_information_2' => 'Questo sito contiene articoli pubblicati a partire dal ',
121
-
122
-	// V
123
-	'ver_imprimer' => 'Versione per la stampa',
124
-	'voir_en_ligne' => 'Vedi on line',
125
-	'voir_squelette' => 'visualizza il modello di questa pagina'
12
+    // A
13
+    'accueil_site' => 'Home',
14
+    'article' => 'Articolo',
15
+    'articles' => 'Articoli',
16
+    'articles_auteur' => 'Articoli di questo autore',
17
+    'articles_populaires' => 'Articoli più letti',
18
+    'articles_rubrique' => 'Articoli di questa rubrica',
19
+    'aucun_article' => 'Non ci sono articoli a questo indirizzo',
20
+    'aucun_auteur' => 'Non ci sono autori a questo indirizzo',
21
+    'aucun_site' => 'Non ci sono siti a questo indirizzo',
22
+    'aucune_breve' => 'Non ci sono brevi a questo indirizzo',
23
+    'aucune_rubrique' => 'Non ci sono rubriche a questo indirizzo',
24
+    'auteur' => 'Autore',
25
+    'autres' => 'Altri',
26
+    'autres_breves' => 'Altre brevi',
27
+    'autres_groupes_mots_clefs' => 'Altri gruppi di parole chiave',
28
+    'autres_sites' => 'Altri siti',
29
+
30
+    // B
31
+    'bonjour' => 'Salve',
32
+
33
+    // C
34
+    'commenter_site' => 'Commenta questo sito',
35
+    'contact' => 'Contatti',
36
+    'copie_document_impossible' => 'Impossibile copiare il documento',
37
+
38
+    // D
39
+    'date' => 'Data',
40
+    'dernier_ajout' => 'Ultimo aggiornamento',
41
+    'dernieres_breves' => 'Ultime brevi',
42
+    'derniers_articles' => 'Ultimi articoli',
43
+    'derniers_commentaires' => 'Ultimi commenti',
44
+    'derniers_messages_forum' => 'Ultimi messaggi pubblicati nei forum',
45
+
46
+    // E
47
+    'edition_mode_texte' => 'Versione solo testo di',
48
+    'en_reponse' => 'In risposta a:',
49
+    'en_resume' => 'Riassunto',
50
+    'envoyer_message' => 'Invia un messaggio',
51
+    'espace_prive' => 'Area riservata',
52
+
53
+    // F
54
+    'formats_acceptes' => 'Formati accettati: @formats@.',
55
+
56
+    // H
57
+    'hierarchie_site' => 'Mappa del sito',
58
+
59
+    // J
60
+    'jours' => 'giorni',
61
+
62
+    // L
63
+    'lien_connecter' => 'Connettersi',
64
+
65
+    // M
66
+    'meme_auteur' => 'Dello stesso autore',
67
+    'meme_rubrique' => 'Nella stessa rubrica',
68
+    'memes_auteurs' => 'Degli stessi autori',
69
+    'message' => 'Messaggio',
70
+    'messages_forum' => 'Messaggi',
71
+    'messages_recents' => 'Messaggi più recenti del forum',
72
+    'mots_clef' => 'Parola chiave',
73
+    'mots_clefs' => 'Parole chiave',
74
+    'mots_clefs_meme_groupe' => 'Parole chiave nello stesso gruppo',
75
+
76
+    // N
77
+    'navigation' => 'Navigazione',
78
+    'nom' => 'Cognome',
79
+    'nouveautes' => 'Le novità',
80
+    'nouveautes_web' => 'Novità sul Web',
81
+    'nouveaux_articles' => 'Nuovi articoli',
82
+    'nouvelles_breves' => 'Nuove brevi',
83
+
84
+    // P
85
+    'page_precedente' => 'pagina precedente',
86
+    'page_suivante' => 'pagina successiva',
87
+    'par_auteur' => 'di ',
88
+    'participer_site' => 'È possibile partecipare alla vita di questo sito e proporre degli articoli iscrivendosi qui sotto. Verrà spedito immediatamente un email con il codice di accesso all’area riservata del sito.',
89
+    'plan_site' => 'Mappa del sito',
90
+    'popularite' => 'Popolarità',
91
+    'poster_message' => 'Inviare un messaggio',
92
+    'proposer_site' => 'È possibile proporre un sito da aggiungere a questa rubrica:',
93
+
94
+    // R
95
+    'repondre_article' => 'Rispondere all’articolo',
96
+    'repondre_breve' => 'Rispondere a questa breve',
97
+    'resultats_recherche' => 'Risultati della ricerca',
98
+    'retour_debut_forums' => 'Tornare all’inizio dei forum',
99
+    'rss_abonnement' => 'Copia il seguente URL nel tuo aggregatore RSS:',
100
+    'rss_abonnement_titre' => 'Sottoscrivi',
101
+    'rss_abonnement_titre_page' => 'Per sottoscrivere',
102
+    'rss_explication' => 'Un feed RSS raccoglie informazioni di aggiornamento per un sito. Fornisce il contenuto dei post o dei commenti o un estratto da essi, nonché un collegamento alle versioni complete e alcune altre informazioni. Questo feed deve essere letto da un aggregatore RSS.',
103
+    'rss_explication_titre' => 'Cos’è un flusso RSS?',
104
+    'rubrique' => 'Rubrica',
105
+    'rubriques' => 'Rubriche',
106
+
107
+    // S
108
+    'signatures_petition' => 'Firme',
109
+    'site_realise_avec_spip' => 'Sito realizzato con SPIP',
110
+    'sites_web' => 'Siti Web',
111
+    'sous_rubriques' => 'Sottorubriche',
112
+    'spam' => 'Spam',
113
+    'suite' => 'segue',
114
+    'sur_web' => 'Sul Web',
115
+    'syndiquer_rubrique' => 'Mettere in syndication questa rubrica',
116
+    'syndiquer_site' => 'Mettere in syndication tutto il sito',
117
+
118
+    // T
119
+    'texte_lettre_information' => 'Newsletter del sito',
120
+    'texte_lettre_information_2' => 'Questo sito contiene articoli pubblicati a partire dal ',
121
+
122
+    // V
123
+    'ver_imprimer' => 'Versione per la stampa',
124
+    'voir_en_ligne' => 'Vedi on line',
125
+    'voir_squelette' => 'visualizza il modello di questa pagina'
126 126
 );
Please login to merge, or discard this patch.
ecrire/lang/public_fr_fem.php 1 patch
Indentation   +115 added lines, -115 removed lines patch added patch discarded remove patch
@@ -4,123 +4,123 @@
 block discarded – undo
4 4
 // ** ne pas modifier le fichier **
5 5
 
6 6
 if (!defined('_ECRIRE_INC_VERSION')) {
7
-	return;
7
+    return;
8 8
 }
9 9
 
10 10
 $GLOBALS[$GLOBALS['idx_lang']] = array(
11 11
 
12
-	// A
13
-	'accueil_site' => 'Accueil',
14
-	'article' => 'Article',
15
-	'articles' => 'Articles',
16
-	'articles_auteur' => 'Articles de cette autrice',
17
-	'articles_populaires' => 'Articles les plus populaires',
18
-	'articles_rubrique' => 'Articles de cette rubrique',
19
-	'aucun_article' => 'Il n’y a pas d’article à cette adresse',
20
-	'aucun_auteur' => 'Il n’y a pas d’autrice à cette adresse',
21
-	'aucun_site' => 'Il n’y a pas de site à cette adresse',
22
-	'aucune_breve' => 'Il n’y a pas de brève à cette adresse',
23
-	'aucune_rubrique' => 'Il n’y a pas de rubrique à cette adresse',
24
-	'auteur' => 'Autrice',
25
-	'autres' => 'Autres',
26
-	'autres_breves' => 'Autres brèves',
27
-	'autres_groupes_mots_clefs' => 'Autres groupes de mots-clés',
28
-	'autres_sites' => 'Autres sites',
29
-
30
-	// B
31
-	'bonjour' => 'Bonjour',
32
-
33
-	// C
34
-	'commenter_site' => 'Commenter ce site',
35
-	'contact' => 'Contact',
36
-	'copie_document_impossible' => 'Impossible de copier le document',
37
-
38
-	// D
39
-	'date' => 'Date',
40
-	'dernier_ajout' => 'Dernier ajout',
41
-	'dernieres_breves' => 'Dernières brèves',
42
-	'derniers_articles' => 'Derniers articles',
43
-	'derniers_commentaires' => 'Derniers commentaires',
44
-	'derniers_messages_forum' => 'Derniers messages publiés dans les forums',
45
-
46
-	// E
47
-	'edition_mode_texte' => 'Édition en mode texte de',
48
-	'en_reponse' => 'En réponse à :',
49
-	'en_resume' => 'En résumé',
50
-	'envoyer_message' => 'Envoyer un message',
51
-	'espace_prive' => 'Espace privé',
52
-
53
-	// F
54
-	'formats_acceptes' => 'Formats acceptés : @formats@.',
55
-
56
-	// H
57
-	'hierarchie_site' => 'Hiérarchie du site',
58
-
59
-	// J
60
-	'jours' => 'jours',
61
-
62
-	// L
63
-	'lien_connecter' => 'Se connecter',
64
-
65
-	// M
66
-	'meme_auteur' => 'De la même autrice',
67
-	'meme_rubrique' => 'Dans la même rubrique',
68
-	'memes_auteurs' => 'Des mêmes autrices',
69
-	'message' => 'Message',
70
-	'messages_forum' => 'Messages',
71
-	'messages_recents' => 'Messages de forums les plus récents',
72
-	'mots_clef' => 'Mot-clé',
73
-	'mots_clefs' => 'Mots-clés',
74
-	'mots_clefs_meme_groupe' => 'Mots-clés dans le même groupe',
75
-
76
-	// N
77
-	'navigation' => 'Navigation',
78
-	'nom' => 'Nom',
79
-	'nouveautes' => 'Les nouveautés',
80
-	'nouveautes_web' => 'Nouveautés sur le Web',
81
-	'nouveaux_articles' => 'Nouveaux articles',
82
-	'nouvelles_breves' => 'Nouvelles brèves',
83
-
84
-	// P
85
-	'page_precedente' => 'page précédente',
86
-	'page_suivante' => 'page suivante',
87
-	'par_auteur' => 'par ',
88
-	'participer_site' => 'Vous pouvez participer à la vie de ce site et proposer vos propres articles en vous inscrivant ci-dessous. Vous recevrez immédiatement un email vous indiquant vos codes d’accès à l’espace privé du site.',
89
-	'plan_site' => 'Plan du site',
90
-	'popularite' => 'Popularité',
91
-	'poster_message' => 'Poster un message',
92
-	'proposer_site' => 'Vous pouvez proposer un site à ajouter dans cette rubrique :',
93
-
94
-	// R
95
-	'repondre_article' => 'Répondre à cet article',
96
-	'repondre_breve' => 'Répondre à cette brève',
97
-	'resultats_recherche' => 'Résultats de la recherche',
98
-	'retour_debut_forums' => 'Retour au début des forums',
99
-	'rss_abonnement' => 'Copiez l’URL suivante dans votre agrégateur :',
100
-	'rss_abonnement_titre' => 'S’abonner',
101
-	'rss_abonnement_titre_page' => 'S’abonner à',
102
-	'rss_explication' => 'Un fil RSS recueille les informations de mise à jour d’un site. Il fournit le contenu des billets ou des commentaires ou un extrait de ceux-ci, ainsi qu’un lien vers les versions complètes et quelques autres informations. Ce fil a pour vocation d’être lu par un agrégateur RSS.',
103
-	'rss_explication_titre' => 'Qu’est-ce qu’un flux RSS ?',
104
-	'rubrique' => 'Rubrique',
105
-	'rubriques' => 'Rubriques',
106
-
107
-	// S
108
-	'signatures_petition' => 'Signatures',
109
-	'site_realise_avec_spip' => 'Site réalisé avec SPIP',
110
-	'sites_web' => 'Sites Web',
111
-	'sous_rubriques' => 'Sous-rubriques',
112
-	'spam' => 'Spam',
113
-	'suite' => 'suite',
114
-	'sur_web' => 'Sur le Web',
115
-	'syndiquer_rubrique' => 'Syndiquer cette rubrique',
116
-	'syndiquer_site' => 'Syndiquer tout le site',
117
-
118
-	// T
119
-	'texte_lettre_information' => 'Voici la lettre d’information du site',
120
-	'texte_lettre_information_2' => 'Cette lettre recense les nouveautés publiées depuis',
121
-
122
-	// V
123
-	'ver_imprimer' => 'Version à imprimer',
124
-	'voir_en_ligne' => 'Voir en ligne',
125
-	'voir_squelette' => 'voir le squelette de cette page'
12
+    // A
13
+    'accueil_site' => 'Accueil',
14
+    'article' => 'Article',
15
+    'articles' => 'Articles',
16
+    'articles_auteur' => 'Articles de cette autrice',
17
+    'articles_populaires' => 'Articles les plus populaires',
18
+    'articles_rubrique' => 'Articles de cette rubrique',
19
+    'aucun_article' => 'Il n’y a pas d’article à cette adresse',
20
+    'aucun_auteur' => 'Il n’y a pas d’autrice à cette adresse',
21
+    'aucun_site' => 'Il n’y a pas de site à cette adresse',
22
+    'aucune_breve' => 'Il n’y a pas de brève à cette adresse',
23
+    'aucune_rubrique' => 'Il n’y a pas de rubrique à cette adresse',
24
+    'auteur' => 'Autrice',
25
+    'autres' => 'Autres',
26
+    'autres_breves' => 'Autres brèves',
27
+    'autres_groupes_mots_clefs' => 'Autres groupes de mots-clés',
28
+    'autres_sites' => 'Autres sites',
29
+
30
+    // B
31
+    'bonjour' => 'Bonjour',
32
+
33
+    // C
34
+    'commenter_site' => 'Commenter ce site',
35
+    'contact' => 'Contact',
36
+    'copie_document_impossible' => 'Impossible de copier le document',
37
+
38
+    // D
39
+    'date' => 'Date',
40
+    'dernier_ajout' => 'Dernier ajout',
41
+    'dernieres_breves' => 'Dernières brèves',
42
+    'derniers_articles' => 'Derniers articles',
43
+    'derniers_commentaires' => 'Derniers commentaires',
44
+    'derniers_messages_forum' => 'Derniers messages publiés dans les forums',
45
+
46
+    // E
47
+    'edition_mode_texte' => 'Édition en mode texte de',
48
+    'en_reponse' => 'En réponse à :',
49
+    'en_resume' => 'En résumé',
50
+    'envoyer_message' => 'Envoyer un message',
51
+    'espace_prive' => 'Espace privé',
52
+
53
+    // F
54
+    'formats_acceptes' => 'Formats acceptés : @formats@.',
55
+
56
+    // H
57
+    'hierarchie_site' => 'Hiérarchie du site',
58
+
59
+    // J
60
+    'jours' => 'jours',
61
+
62
+    // L
63
+    'lien_connecter' => 'Se connecter',
64
+
65
+    // M
66
+    'meme_auteur' => 'De la même autrice',
67
+    'meme_rubrique' => 'Dans la même rubrique',
68
+    'memes_auteurs' => 'Des mêmes autrices',
69
+    'message' => 'Message',
70
+    'messages_forum' => 'Messages',
71
+    'messages_recents' => 'Messages de forums les plus récents',
72
+    'mots_clef' => 'Mot-clé',
73
+    'mots_clefs' => 'Mots-clés',
74
+    'mots_clefs_meme_groupe' => 'Mots-clés dans le même groupe',
75
+
76
+    // N
77
+    'navigation' => 'Navigation',
78
+    'nom' => 'Nom',
79
+    'nouveautes' => 'Les nouveautés',
80
+    'nouveautes_web' => 'Nouveautés sur le Web',
81
+    'nouveaux_articles' => 'Nouveaux articles',
82
+    'nouvelles_breves' => 'Nouvelles brèves',
83
+
84
+    // P
85
+    'page_precedente' => 'page précédente',
86
+    'page_suivante' => 'page suivante',
87
+    'par_auteur' => 'par ',
88
+    'participer_site' => 'Vous pouvez participer à la vie de ce site et proposer vos propres articles en vous inscrivant ci-dessous. Vous recevrez immédiatement un email vous indiquant vos codes d’accès à l’espace privé du site.',
89
+    'plan_site' => 'Plan du site',
90
+    'popularite' => 'Popularité',
91
+    'poster_message' => 'Poster un message',
92
+    'proposer_site' => 'Vous pouvez proposer un site à ajouter dans cette rubrique :',
93
+
94
+    // R
95
+    'repondre_article' => 'Répondre à cet article',
96
+    'repondre_breve' => 'Répondre à cette brève',
97
+    'resultats_recherche' => 'Résultats de la recherche',
98
+    'retour_debut_forums' => 'Retour au début des forums',
99
+    'rss_abonnement' => 'Copiez l’URL suivante dans votre agrégateur :',
100
+    'rss_abonnement_titre' => 'S’abonner',
101
+    'rss_abonnement_titre_page' => 'S’abonner à',
102
+    'rss_explication' => 'Un fil RSS recueille les informations de mise à jour d’un site. Il fournit le contenu des billets ou des commentaires ou un extrait de ceux-ci, ainsi qu’un lien vers les versions complètes et quelques autres informations. Ce fil a pour vocation d’être lu par un agrégateur RSS.',
103
+    'rss_explication_titre' => 'Qu’est-ce qu’un flux RSS ?',
104
+    'rubrique' => 'Rubrique',
105
+    'rubriques' => 'Rubriques',
106
+
107
+    // S
108
+    'signatures_petition' => 'Signatures',
109
+    'site_realise_avec_spip' => 'Site réalisé avec SPIP',
110
+    'sites_web' => 'Sites Web',
111
+    'sous_rubriques' => 'Sous-rubriques',
112
+    'spam' => 'Spam',
113
+    'suite' => 'suite',
114
+    'sur_web' => 'Sur le Web',
115
+    'syndiquer_rubrique' => 'Syndiquer cette rubrique',
116
+    'syndiquer_site' => 'Syndiquer tout le site',
117
+
118
+    // T
119
+    'texte_lettre_information' => 'Voici la lettre d’information du site',
120
+    'texte_lettre_information_2' => 'Cette lettre recense les nouveautés publiées depuis',
121
+
122
+    // V
123
+    'ver_imprimer' => 'Version à imprimer',
124
+    'voir_en_ligne' => 'Voir en ligne',
125
+    'voir_squelette' => 'voir le squelette de cette page'
126 126
 );
Please login to merge, or discard this patch.
ecrire/lang/public_pt.php 1 patch
Indentation   +115 added lines, -115 removed lines patch added patch discarded remove patch
@@ -4,123 +4,123 @@
 block discarded – undo
4 4
 // ** ne pas modifier le fichier **
5 5
 
6 6
 if (!defined('_ECRIRE_INC_VERSION')) {
7
-	return;
7
+    return;
8 8
 }
9 9
 
10 10
 $GLOBALS[$GLOBALS['idx_lang']] = array(
11 11
 
12
-	// A
13
-	'accueil_site' => 'Página inicial do sítio',
14
-	'article' => 'Artigo',
15
-	'articles' => 'Artigos',
16
-	'articles_auteur' => 'Artigos deste autor',
17
-	'articles_populaires' => 'Artigos mais populares',
18
-	'articles_rubrique' => 'Artigos desta rubrica',
19
-	'aucun_article' => 'Nenhum artigo neste endereço',
20
-	'aucun_auteur' => 'Nenhum autor neste endereço',
21
-	'aucun_site' => 'Nenhum sítio neste endereço',
22
-	'aucune_breve' => 'Nenhuma notícia neste endereço',
23
-	'aucune_rubrique' => 'Nenhuma rubrica neste endereço',
24
-	'auteur' => 'Autor',
25
-	'autres' => 'Outros',
26
-	'autres_breves' => 'Outras notícias',
27
-	'autres_groupes_mots_clefs' => 'Outros grupos de palavras-chave',
28
-	'autres_sites' => 'Outros sítios',
29
-
30
-	// B
31
-	'bonjour' => 'Bom dia',
32
-
33
-	// C
34
-	'commenter_site' => 'Comentar este sítio',
35
-	'contact' => 'Contacto',
36
-	'copie_document_impossible' => 'Impossível copiar este documento',
37
-
38
-	// D
39
-	'date' => 'Data',
40
-	'dernier_ajout' => 'Última actualização',
41
-	'dernieres_breves' => 'Últimas notícias',
42
-	'derniers_articles' => 'Últimos artigos',
43
-	'derniers_commentaires' => 'Últimos comentários',
44
-	'derniers_messages_forum' => 'Últimas mensagens publicadas nos fóruns',
45
-
46
-	// E
47
-	'edition_mode_texte' => 'Edição apenas em modo de texto',
48
-	'en_reponse' => 'Em resposta a :',
49
-	'en_resume' => 'Em resumo',
50
-	'envoyer_message' => 'Enviar uma mensagem',
51
-	'espace_prive' => 'Área privada',
52
-
53
-	// F
54
-	'formats_acceptes' => 'Formatos válidos : @formats@.',
55
-
56
-	// H
57
-	'hierarchie_site' => 'Mapa do sítio',
58
-
59
-	// J
60
-	'jours' => 'dias',
61
-
62
-	// L
63
-	'lien_connecter' => 'Entrar',
64
-
65
-	// M
66
-	'meme_auteur' => 'Do mesmo autor',
67
-	'meme_rubrique' => 'Na mesma rubrica',
68
-	'memes_auteurs' => 'Dos mesmos autores',
69
-	'message' => 'Mensagem',
70
-	'messages_forum' => 'Mensagens de fórum',
71
-	'messages_recents' => 'Mensagens de fóruns mais recentes',
72
-	'mots_clef' => 'Palavra-chave',
73
-	'mots_clefs' => 'Palavras-chave',
74
-	'mots_clefs_meme_groupe' => 'Palavras-chave no mesmo grupo',
75
-
76
-	// N
77
-	'navigation' => 'Navegação',
78
-	'nom' => 'Nome',
79
-	'nouveautes' => 'As novidades',
80
-	'nouveautes_web' => 'Novidades na Web',
81
-	'nouveaux_articles' => 'Novos artigos',
82
-	'nouvelles_breves' => 'Novas notícias',
83
-
84
-	// P
85
-	'page_precedente' => 'página anterior',
86
-	'page_suivante' => 'página seguinte',
87
-	'par_auteur' => 'por',
88
-	'participer_site' => 'Pode participar na vida deste sítio e propor os seus próprios artigos, inscrevendo-se mais abaixo. Receberá imediatamente um email com os seus códigos de acesso ao espaço privado do sítio.',
89
-	'plan_site' => 'Mapa do sítio',
90
-	'popularite' => 'Popularidade',
91
-	'poster_message' => 'Enviar uma mensagem',
92
-	'proposer_site' => 'Você pode propor um sítio a adicionar a esta rubrica :',
93
-
94
-	// R
95
-	'repondre_article' => 'Comentar este artigo',
96
-	'repondre_breve' => 'Comentar esta notícia',
97
-	'resultats_recherche' => 'Resultados da pesquisa',
98
-	'retour_debut_forums' => 'Regresso ao início dos fóruns',
99
-	'rss_abonnement' => 'Copie o seguinte URL para o seu agregador de conteúdos:',
100
-	'rss_abonnement_titre' => 'Subscrever',
101
-	'rss_abonnement_titre_page' => 'Subscrever',
102
-	'rss_explication' => 'Um "feed" RSS recolhe informação actualizada a partir de um sítio. Fornece o conteúdo das publicações ou comentários ou um extracto dos mesmos, bem como um link para as versões completas e outras informações. Este "feed" destina-se a ser lido por um agregador RSS.',
103
-	'rss_explication_titre' => 'O que é um "feed RSS"?',
104
-	'rubrique' => 'Rubrica',
105
-	'rubriques' => 'Rubricas',
106
-
107
-	// S
108
-	'signatures_petition' => 'Assinaturas',
109
-	'site_realise_avec_spip' => 'Sítio realizado com SPIP',
110
-	'sites_web' => 'Sítios Web',
111
-	'sous_rubriques' => 'Sub-rubricas',
112
-	'spam' => 'Spam',
113
-	'suite' => 'continuação',
114
-	'sur_web' => 'Na Web',
115
-	'syndiquer_rubrique' => 'Subscrever esta rubrica',
116
-	'syndiquer_site' => 'Subscrever todo o sítio',
117
-
118
-	// T
119
-	'texte_lettre_information' => 'Eis a carta de informação do sítio',
120
-	'texte_lettre_information_2' => 'Este sítio contém novos itens publicados desde',
121
-
122
-	// V
123
-	'ver_imprimer' => 'Versão para imprimir',
124
-	'voir_en_ligne' => 'Ver online',
125
-	'voir_squelette' => 'exibir o modelo desta página'
12
+    // A
13
+    'accueil_site' => 'Página inicial do sítio',
14
+    'article' => 'Artigo',
15
+    'articles' => 'Artigos',
16
+    'articles_auteur' => 'Artigos deste autor',
17
+    'articles_populaires' => 'Artigos mais populares',
18
+    'articles_rubrique' => 'Artigos desta rubrica',
19
+    'aucun_article' => 'Nenhum artigo neste endereço',
20
+    'aucun_auteur' => 'Nenhum autor neste endereço',
21
+    'aucun_site' => 'Nenhum sítio neste endereço',
22
+    'aucune_breve' => 'Nenhuma notícia neste endereço',
23
+    'aucune_rubrique' => 'Nenhuma rubrica neste endereço',
24
+    'auteur' => 'Autor',
25
+    'autres' => 'Outros',
26
+    'autres_breves' => 'Outras notícias',
27
+    'autres_groupes_mots_clefs' => 'Outros grupos de palavras-chave',
28
+    'autres_sites' => 'Outros sítios',
29
+
30
+    // B
31
+    'bonjour' => 'Bom dia',
32
+
33
+    // C
34
+    'commenter_site' => 'Comentar este sítio',
35
+    'contact' => 'Contacto',
36
+    'copie_document_impossible' => 'Impossível copiar este documento',
37
+
38
+    // D
39
+    'date' => 'Data',
40
+    'dernier_ajout' => 'Última actualização',
41
+    'dernieres_breves' => 'Últimas notícias',
42
+    'derniers_articles' => 'Últimos artigos',
43
+    'derniers_commentaires' => 'Últimos comentários',
44
+    'derniers_messages_forum' => 'Últimas mensagens publicadas nos fóruns',
45
+
46
+    // E
47
+    'edition_mode_texte' => 'Edição apenas em modo de texto',
48
+    'en_reponse' => 'Em resposta a :',
49
+    'en_resume' => 'Em resumo',
50
+    'envoyer_message' => 'Enviar uma mensagem',
51
+    'espace_prive' => 'Área privada',
52
+
53
+    // F
54
+    'formats_acceptes' => 'Formatos válidos : @formats@.',
55
+
56
+    // H
57
+    'hierarchie_site' => 'Mapa do sítio',
58
+
59
+    // J
60
+    'jours' => 'dias',
61
+
62
+    // L
63
+    'lien_connecter' => 'Entrar',
64
+
65
+    // M
66
+    'meme_auteur' => 'Do mesmo autor',
67
+    'meme_rubrique' => 'Na mesma rubrica',
68
+    'memes_auteurs' => 'Dos mesmos autores',
69
+    'message' => 'Mensagem',
70
+    'messages_forum' => 'Mensagens de fórum',
71
+    'messages_recents' => 'Mensagens de fóruns mais recentes',
72
+    'mots_clef' => 'Palavra-chave',
73
+    'mots_clefs' => 'Palavras-chave',
74
+    'mots_clefs_meme_groupe' => 'Palavras-chave no mesmo grupo',
75
+
76
+    // N
77
+    'navigation' => 'Navegação',
78
+    'nom' => 'Nome',
79
+    'nouveautes' => 'As novidades',
80
+    'nouveautes_web' => 'Novidades na Web',
81
+    'nouveaux_articles' => 'Novos artigos',
82
+    'nouvelles_breves' => 'Novas notícias',
83
+
84
+    // P
85
+    'page_precedente' => 'página anterior',
86
+    'page_suivante' => 'página seguinte',
87
+    'par_auteur' => 'por',
88
+    'participer_site' => 'Pode participar na vida deste sítio e propor os seus próprios artigos, inscrevendo-se mais abaixo. Receberá imediatamente um email com os seus códigos de acesso ao espaço privado do sítio.',
89
+    'plan_site' => 'Mapa do sítio',
90
+    'popularite' => 'Popularidade',
91
+    'poster_message' => 'Enviar uma mensagem',
92
+    'proposer_site' => 'Você pode propor um sítio a adicionar a esta rubrica :',
93
+
94
+    // R
95
+    'repondre_article' => 'Comentar este artigo',
96
+    'repondre_breve' => 'Comentar esta notícia',
97
+    'resultats_recherche' => 'Resultados da pesquisa',
98
+    'retour_debut_forums' => 'Regresso ao início dos fóruns',
99
+    'rss_abonnement' => 'Copie o seguinte URL para o seu agregador de conteúdos:',
100
+    'rss_abonnement_titre' => 'Subscrever',
101
+    'rss_abonnement_titre_page' => 'Subscrever',
102
+    'rss_explication' => 'Um "feed" RSS recolhe informação actualizada a partir de um sítio. Fornece o conteúdo das publicações ou comentários ou um extracto dos mesmos, bem como um link para as versões completas e outras informações. Este "feed" destina-se a ser lido por um agregador RSS.',
103
+    'rss_explication_titre' => 'O que é um "feed RSS"?',
104
+    'rubrique' => 'Rubrica',
105
+    'rubriques' => 'Rubricas',
106
+
107
+    // S
108
+    'signatures_petition' => 'Assinaturas',
109
+    'site_realise_avec_spip' => 'Sítio realizado com SPIP',
110
+    'sites_web' => 'Sítios Web',
111
+    'sous_rubriques' => 'Sub-rubricas',
112
+    'spam' => 'Spam',
113
+    'suite' => 'continuação',
114
+    'sur_web' => 'Na Web',
115
+    'syndiquer_rubrique' => 'Subscrever esta rubrica',
116
+    'syndiquer_site' => 'Subscrever todo o sítio',
117
+
118
+    // T
119
+    'texte_lettre_information' => 'Eis a carta de informação do sítio',
120
+    'texte_lettre_information_2' => 'Este sítio contém novos itens publicados desde',
121
+
122
+    // V
123
+    'ver_imprimer' => 'Versão para imprimir',
124
+    'voir_en_ligne' => 'Ver online',
125
+    'voir_squelette' => 'exibir o modelo desta página'
126 126
 );
Please login to merge, or discard this patch.
ecrire/exec/base_repair.php 1 patch
Indentation   +22 added lines, -22 removed lines patch added patch discarded remove patch
@@ -23,7 +23,7 @@  discard block
 block discarded – undo
23 23
  */
24 24
 
25 25
 if (!defined('_ECRIRE_INC_VERSION')) {
26
-	return;
26
+    return;
27 27
 }
28 28
 
29 29
 
@@ -31,25 +31,25 @@  discard block
 block discarded – undo
31 31
  * Réparer la base de données
32 32
  */
33 33
 function exec_base_repair_dist() {
34
-	$action = null;
35
-	$ok = false;
36
-	if (!spip_connect()) {
37
-		$message = _T('titre_probleme_technique');
38
-	} else {
39
-		$version_sql = sql_version();
40
-		if (!$version_sql) {
41
-			$message = _T('avis_erreur_connexion_mysql');
42
-		} else {
43
-			$message = _T('texte_requetes_echouent');
44
-			$ok = true;
45
-		}
46
-		$action = _T('texte_tenter_reparation');
47
-	}
48
-	if ($ok) {
49
-		$admin = charger_fonction('admin', 'inc');
50
-		echo $admin('repair', $action, $message, true);
51
-	} else {
52
-		include_spip('inc/minipres');
53
-		echo minipres(_T('titre_reparation'), "<p>$message</p>");
54
-	}
34
+    $action = null;
35
+    $ok = false;
36
+    if (!spip_connect()) {
37
+        $message = _T('titre_probleme_technique');
38
+    } else {
39
+        $version_sql = sql_version();
40
+        if (!$version_sql) {
41
+            $message = _T('avis_erreur_connexion_mysql');
42
+        } else {
43
+            $message = _T('texte_requetes_echouent');
44
+            $ok = true;
45
+        }
46
+        $action = _T('texte_tenter_reparation');
47
+    }
48
+    if ($ok) {
49
+        $admin = charger_fonction('admin', 'inc');
50
+        echo $admin('repair', $action, $message, true);
51
+    } else {
52
+        include_spip('inc/minipres');
53
+        echo minipres(_T('titre_reparation'), "<p>$message</p>");
54
+    }
55 55
 }
Please login to merge, or discard this patch.