Completed
Push — master ( a56a38...81a660 )
by cam
01:36
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   +319 added lines, -319 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($nom_cache, 0, $l1);
52
-	$u = substr($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($nom_cache, 0, $l1);
52
+    $u = substr($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,38 +82,38 @@  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
-		include_spip('auth/sha256.inc');
105
-		ecrire_meta(
106
-			'cache_signature',
107
-			spip_sha256(
108
-				$_SERVER['DOCUMENT_ROOT']
109
-				. ($_SERVER['SERVER_SIGNATURE'] ?? '')
110
-				. creer_uniqid()
111
-			),
112
-			'non'
113
-		);
114
-	}
115
-
116
-	return crc32($GLOBALS['meta']['cache_signature'] . $page['texte']);
102
+    if (!isset($GLOBALS['meta']['cache_signature'])) {
103
+        include_spip('inc/acces');
104
+        include_spip('auth/sha256.inc');
105
+        ecrire_meta(
106
+            'cache_signature',
107
+            spip_sha256(
108
+                $_SERVER['DOCUMENT_ROOT']
109
+                . ($_SERVER['SERVER_SIGNATURE'] ?? '')
110
+                . creer_uniqid()
111
+            ),
112
+            'non'
113
+        );
114
+    }
115
+
116
+    return crc32($GLOBALS['meta']['cache_signature'] . $page['texte']);
117 117
 }
118 118
 
119 119
 /**
@@ -126,14 +126,14 @@  discard block
 block discarded – undo
126 126
  * @return array
127 127
  */
128 128
 function gzip_page($page) {
129
-	if (function_exists('gzcompress') && strlen($page['texte']) > 16 * 1024) {
130
-		$page['gz'] = true;
131
-		$page['texte'] = gzcompress($page['texte']);
132
-	} else {
133
-		$page['gz'] = false;
134
-	}
135
-
136
-	return $page;
129
+    if (function_exists('gzcompress') && strlen($page['texte']) > 16 * 1024) {
130
+        $page['gz'] = true;
131
+        $page['texte'] = gzcompress($page['texte']);
132
+    } else {
133
+        $page['gz'] = false;
134
+    }
135
+
136
+    return $page;
137 137
 }
138 138
 
139 139
 /**
@@ -146,10 +146,10 @@  discard block
 block discarded – undo
146 146
  * @return void
147 147
  */
148 148
 function gunzip_page(&$page) {
149
-	if ($page['gz']) {
150
-		$page['texte'] = gzuncompress($page['texte']);
151
-		$page['gz'] = false; // ne pas gzuncompress deux fois une meme page
152
-	}
149
+    if ($page['gz']) {
150
+        $page['texte'] = gzuncompress($page['texte']);
151
+        $page['gz'] = false; // ne pas gzuncompress deux fois une meme page
152
+    }
153 153
 }
154 154
 
155 155
 /**
@@ -164,72 +164,72 @@  discard block
 block discarded – undo
164 164
  * -1 si il faut calculer sans stocker en cache
165 165
  */
166 166
 function cache_valide(&$page, $date) {
167
-	$now = $_SERVER['REQUEST_TIME'];
168
-
169
-	// Apparition d'un nouvel article post-date ?
170
-	if (
171
-		isset($GLOBALS['meta']['post_dates'])
172
-		&& $GLOBALS['meta']['post_dates'] == 'non'
173
-		&& isset($GLOBALS['meta']['date_prochain_postdate'])
174
-		&& $now > $GLOBALS['meta']['date_prochain_postdate']
175
-	) {
176
-		spip_log('Un article post-date invalide le cache');
177
-		include_spip('inc/rubriques');
178
-		calculer_prochain_postdate(true);
179
-	}
180
-
181
-	if (defined('_VAR_NOCACHE') && _VAR_NOCACHE) {
182
-		return -1;
183
-	}
184
-	if (isset($GLOBALS['meta']['cache_inhib']) && $_SERVER['REQUEST_TIME'] < $GLOBALS['meta']['cache_inhib']) {
185
-		return -1;
186
-	}
187
-	if (defined('_NO_CACHE')) {
188
-		return (_NO_CACHE == 0 && !isset($page['texte'])) ? 1 : _NO_CACHE;
189
-	}
190
-
191
-	// pas de cache ? on le met a jour, sauf pour les bots (on leur calcule la page sans mise en cache)
192
-	if (!$page || !isset($page['texte']) || !isset($page['entetes']['X-Spip-Cache'])) {
193
-		return _IS_BOT ? -1 : 1;
194
-	}
195
-
196
-	// controle de la signature
197
-	if ($page['sig'] !== cache_signature($page)) {
198
-		return _IS_BOT ? -1 : 1;
199
-	}
200
-
201
-	// #CACHE{n,statique} => on n'invalide pas avec derniere_modif
202
-	// cf. ecrire/public/balises.php, balise_CACHE_dist()
203
-	// Cache invalide par la meta 'derniere_modif'
204
-	// sauf pour les bots, qui utilisent toujours le cache
205
-	if (
206
-		(!isset($page['entetes']['X-Spip-Statique']) || $page['entetes']['X-Spip-Statique'] !== 'oui')
207
-		&& (
208
-			!_IS_BOT
209
-			&& $GLOBALS['derniere_modif_invalide']
210
-			&& isset($GLOBALS['meta']['derniere_modif'])
211
-			&& $date < $GLOBALS['meta']['derniere_modif']
212
-		)
213
-	) {
214
-		return 1;
215
-	}
216
-
217
-	// Sinon comparer l'age du fichier a sa duree de cache
218
-	$duree = (int) $page['entetes']['X-Spip-Cache'];
219
-	$cache_mark = ($GLOBALS['meta']['cache_mark'] ?? 0);
220
-	if ($duree == 0) {  #CACHE{0}
221
-	return -1;
222
-	} // sauf pour les bots, qui utilisent toujours le cache
223
-	else {
224
-		if (
225
-			!_IS_BOT && $date + $duree < $now
226
-			|| $date < $cache_mark
227
-		) {
228
-			return _IS_BOT ? -1 : 1;
229
-		} else {
230
-			return 0;
231
-		}
232
-	}
167
+    $now = $_SERVER['REQUEST_TIME'];
168
+
169
+    // Apparition d'un nouvel article post-date ?
170
+    if (
171
+        isset($GLOBALS['meta']['post_dates'])
172
+        && $GLOBALS['meta']['post_dates'] == 'non'
173
+        && isset($GLOBALS['meta']['date_prochain_postdate'])
174
+        && $now > $GLOBALS['meta']['date_prochain_postdate']
175
+    ) {
176
+        spip_log('Un article post-date invalide le cache');
177
+        include_spip('inc/rubriques');
178
+        calculer_prochain_postdate(true);
179
+    }
180
+
181
+    if (defined('_VAR_NOCACHE') && _VAR_NOCACHE) {
182
+        return -1;
183
+    }
184
+    if (isset($GLOBALS['meta']['cache_inhib']) && $_SERVER['REQUEST_TIME'] < $GLOBALS['meta']['cache_inhib']) {
185
+        return -1;
186
+    }
187
+    if (defined('_NO_CACHE')) {
188
+        return (_NO_CACHE == 0 && !isset($page['texte'])) ? 1 : _NO_CACHE;
189
+    }
190
+
191
+    // pas de cache ? on le met a jour, sauf pour les bots (on leur calcule la page sans mise en cache)
192
+    if (!$page || !isset($page['texte']) || !isset($page['entetes']['X-Spip-Cache'])) {
193
+        return _IS_BOT ? -1 : 1;
194
+    }
195
+
196
+    // controle de la signature
197
+    if ($page['sig'] !== cache_signature($page)) {
198
+        return _IS_BOT ? -1 : 1;
199
+    }
200
+
201
+    // #CACHE{n,statique} => on n'invalide pas avec derniere_modif
202
+    // cf. ecrire/public/balises.php, balise_CACHE_dist()
203
+    // Cache invalide par la meta 'derniere_modif'
204
+    // sauf pour les bots, qui utilisent toujours le cache
205
+    if (
206
+        (!isset($page['entetes']['X-Spip-Statique']) || $page['entetes']['X-Spip-Statique'] !== 'oui')
207
+        && (
208
+            !_IS_BOT
209
+            && $GLOBALS['derniere_modif_invalide']
210
+            && isset($GLOBALS['meta']['derniere_modif'])
211
+            && $date < $GLOBALS['meta']['derniere_modif']
212
+        )
213
+    ) {
214
+        return 1;
215
+    }
216
+
217
+    // Sinon comparer l'age du fichier a sa duree de cache
218
+    $duree = (int) $page['entetes']['X-Spip-Cache'];
219
+    $cache_mark = ($GLOBALS['meta']['cache_mark'] ?? 0);
220
+    if ($duree == 0) {  #CACHE{0}
221
+    return -1;
222
+    } // sauf pour les bots, qui utilisent toujours le cache
223
+    else {
224
+        if (
225
+            !_IS_BOT && $date + $duree < $now
226
+            || $date < $cache_mark
227
+        ) {
228
+            return _IS_BOT ? -1 : 1;
229
+        } else {
230
+            return 0;
231
+        }
232
+    }
233 233
 }
234 234
 
235 235
 /**
@@ -242,59 +242,59 @@  discard block
 block discarded – undo
242 242
  */
243 243
 function creer_cache(&$page, &$chemin_cache) {
244 244
 
245
-	// Ne rien faire si on est en preview, debug, ou si une erreur
246
-	// grave s'est presentee (compilation du squelette, MySQL, etc)
247
-	// le cas var_nocache ne devrait jamais arriver ici (securite)
248
-	// le cas spip_interdire_cache correspond a une ereur SQL grave non anticipable
249
-	if (
250
-		defined('_VAR_NOCACHE') && _VAR_NOCACHE
251
-		|| defined('spip_interdire_cache')
252
-	) {
253
-		return;
254
-	}
255
-
256
-	// Si la page c1234 a un invalideur de session 'zz', sauver dans
257
-	// 'tmp/cache/MD5(chemin_cache)_zz'
258
-	if (
259
-		isset($page['invalideurs'])
260
-		&& isset($page['invalideurs']['session'])
261
-	) {
262
-		// on verifie que le contenu du chemin cache indique seulement
263
-		// "cache sessionne" ; sa date indique la date de validite
264
-		// des caches sessionnes
265
-		if (!$tmp = lire_cache($chemin_cache)) {
266
-			spip_log('Creation cache sessionne ' . $chemin_cache);
267
-			$tmp = [
268
-				'invalideurs' => ['session' => ''],
269
-				'lastmodified' => $_SERVER['REQUEST_TIME']
270
-			];
271
-			ecrire_cache($chemin_cache, $tmp);
272
-		}
273
-		$chemin_cache = generer_nom_fichier_cache(
274
-			['chemin_cache' => $chemin_cache],
275
-			['session' => $page['invalideurs']['session']]
276
-		);
277
-	}
278
-
279
-	// ajouter la date de production dans le cache lui meme
280
-	// (qui contient deja sa duree de validite)
281
-	$page['lastmodified'] = $_SERVER['REQUEST_TIME'];
282
-
283
-	// compresser le contenu si besoin
284
-	$pagez = gzip_page($page);
285
-
286
-	// signer le contenu
287
-	$pagez['sig'] = cache_signature($pagez);
288
-
289
-	// l'enregistrer, compresse ou non...
290
-	$ok = ecrire_cache($chemin_cache, $pagez);
291
-
292
-	spip_log((_IS_BOT ? 'Bot:' : '') . "Creation du cache $chemin_cache pour "
293
-		. $page['entetes']['X-Spip-Cache'] . ' secondes' . ($ok ? '' : ' (erreur!)'), _LOG_INFO);
294
-
295
-	// Inserer ses invalideurs
296
-	include_spip('inc/invalideur');
297
-	maj_invalideurs($chemin_cache, $page);
245
+    // Ne rien faire si on est en preview, debug, ou si une erreur
246
+    // grave s'est presentee (compilation du squelette, MySQL, etc)
247
+    // le cas var_nocache ne devrait jamais arriver ici (securite)
248
+    // le cas spip_interdire_cache correspond a une ereur SQL grave non anticipable
249
+    if (
250
+        defined('_VAR_NOCACHE') && _VAR_NOCACHE
251
+        || defined('spip_interdire_cache')
252
+    ) {
253
+        return;
254
+    }
255
+
256
+    // Si la page c1234 a un invalideur de session 'zz', sauver dans
257
+    // 'tmp/cache/MD5(chemin_cache)_zz'
258
+    if (
259
+        isset($page['invalideurs'])
260
+        && isset($page['invalideurs']['session'])
261
+    ) {
262
+        // on verifie que le contenu du chemin cache indique seulement
263
+        // "cache sessionne" ; sa date indique la date de validite
264
+        // des caches sessionnes
265
+        if (!$tmp = lire_cache($chemin_cache)) {
266
+            spip_log('Creation cache sessionne ' . $chemin_cache);
267
+            $tmp = [
268
+                'invalideurs' => ['session' => ''],
269
+                'lastmodified' => $_SERVER['REQUEST_TIME']
270
+            ];
271
+            ecrire_cache($chemin_cache, $tmp);
272
+        }
273
+        $chemin_cache = generer_nom_fichier_cache(
274
+            ['chemin_cache' => $chemin_cache],
275
+            ['session' => $page['invalideurs']['session']]
276
+        );
277
+    }
278
+
279
+    // ajouter la date de production dans le cache lui meme
280
+    // (qui contient deja sa duree de validite)
281
+    $page['lastmodified'] = $_SERVER['REQUEST_TIME'];
282
+
283
+    // compresser le contenu si besoin
284
+    $pagez = gzip_page($page);
285
+
286
+    // signer le contenu
287
+    $pagez['sig'] = cache_signature($pagez);
288
+
289
+    // l'enregistrer, compresse ou non...
290
+    $ok = ecrire_cache($chemin_cache, $pagez);
291
+
292
+    spip_log((_IS_BOT ? 'Bot:' : '') . "Creation du cache $chemin_cache pour "
293
+        . $page['entetes']['X-Spip-Cache'] . ' secondes' . ($ok ? '' : ' (erreur!)'), _LOG_INFO);
294
+
295
+    // Inserer ses invalideurs
296
+    include_spip('inc/invalideur');
297
+    maj_invalideurs($chemin_cache, $page);
298 298
 }
299 299
 
300 300
 
@@ -307,15 +307,15 @@  discard block
 block discarded – undo
307 307
  * @return void
308 308
  */
309 309
 function nettoyer_petit_cache($prefix, $duree = 300) {
310
-	// determiner le repertoire a purger : 'tmp/CACHE/rech/'
311
-	$dircache = sous_repertoire(_DIR_CACHE, $prefix);
312
-	if (spip_touch($dircache . 'purger_' . $prefix, $duree, true)) {
313
-		foreach (preg_files($dircache, '[.]txt$') as $f) {
314
-			if ($_SERVER['REQUEST_TIME'] - (@file_exists($f) ? @filemtime($f) : 0) > $duree) {
315
-				spip_unlink($f);
316
-			}
317
-		}
318
-	}
310
+    // determiner le repertoire a purger : 'tmp/CACHE/rech/'
311
+    $dircache = sous_repertoire(_DIR_CACHE, $prefix);
312
+    if (spip_touch($dircache . 'purger_' . $prefix, $duree, true)) {
313
+        foreach (preg_files($dircache, '[.]txt$') as $f) {
314
+            if ($_SERVER['REQUEST_TIME'] - (@file_exists($f) ? @filemtime($f) : 0) > $duree) {
315
+                spip_unlink($f);
316
+            }
317
+        }
318
+    }
319 319
 }
320 320
 
321 321
 
@@ -343,132 +343,132 @@  discard block
 block discarded – undo
343 343
  */
344 344
 function public_cacher_dist($contexte, &$use_cache, &$chemin_cache, &$page, &$lastmodified) {
345 345
 
346
-	# fonction de cache minimale : dire "non on ne met rien en cache"
347
-	# $use_cache = -1; return;
348
-
349
-	// Second appel, destine a l'enregistrement du cache sur le disque
350
-	if (isset($chemin_cache)) {
351
-		creer_cache($page, $chemin_cache);
352
-		return;
353
-	}
354
-
355
-	// Toute la suite correspond au premier appel
356
-	$contexte_implicite = $page['contexte_implicite'];
357
-
358
-	// Cas ignorant le cache car completement dynamique
359
-	if (
360
-		!empty($_SERVER['REQUEST_METHOD']) && $_SERVER['REQUEST_METHOD'] === 'POST'
361
-		|| _request('connect')
362
-	) {
363
-		$use_cache = -1;
364
-		$lastmodified = 0;
365
-		$chemin_cache = '';
366
-		$page = [];
367
-
368
-		return;
369
-	}
370
-
371
-	// Controler l'existence d'un cache nous correspondant
372
-	$chemin_cache = generer_nom_fichier_cache($contexte, $page);
373
-	$lastmodified = 0;
374
-
375
-	// charger le cache s'il existe (et si il a bien le bon hash = anticollision)
376
-	if (!$page = lire_cache($chemin_cache)) {
377
-		$page = [];
378
-	}
379
-
380
-	// s'il est sessionne, charger celui correspondant a notre session
381
-	if (
382
-		isset($page['invalideurs'])
383
-		&& isset($page['invalideurs']['session'])
384
-	) {
385
-		$chemin_cache_session = generer_nom_fichier_cache(
386
-			['chemin_cache' => $chemin_cache],
387
-			['session' => spip_session()]
388
-		);
389
-		if (
390
-			($page_session = lire_cache($chemin_cache_session)) && $page_session['lastmodified'] >= $page['lastmodified']
391
-		) {
392
-			$page = $page_session;
393
-		} else {
394
-			$page = [];
395
-		}
396
-	}
397
-
398
-
399
-	// Faut-il effacer des pages invalidees (en particulier ce cache-ci) ?
400
-	// ne le faire que si la base est disponible
401
-	if (isset($GLOBALS['meta']['invalider']) && spip_connect()) {
402
-		include_spip('inc/invalideur');
403
-		retire_caches($chemin_cache);
404
-		# API invalideur inutile
405
-		supprimer_fichier(_DIR_CACHE . $chemin_cache);
406
-		if (isset($chemin_cache_session) && $chemin_cache_session) {
407
-			supprimer_fichier(_DIR_CACHE . $chemin_cache_session);
408
-		}
409
-	}
410
-
411
-	// Si un calcul, recalcul [ou preview, mais c'est recalcul] est demande,
412
-	// on supprime le cache
413
-	if (
414
-		defined('_VAR_MODE') &&
415
-		_VAR_MODE &&
416
-		(isset($_COOKIE['spip_session']) ||
417
-			isset($_COOKIE['spip_admin']) ||
418
-			@file_exists(_ACCESS_FILE_NAME))
419
-	) {
420
-		$page = ['contexte_implicite' => $contexte_implicite]; // ignorer le cache deja lu
421
-		include_spip('inc/invalideur');
422
-		retire_caches($chemin_cache); # API invalideur inutile
423
-		supprimer_fichier(_DIR_CACHE . $chemin_cache);
424
-		if (isset($chemin_cache_session) && $chemin_cache_session) {
425
-			supprimer_fichier(_DIR_CACHE . $chemin_cache_session);
426
-		}
427
-	}
428
-
429
-	// $delais par defaut
430
-	// pour toutes les pages sans #CACHE{} hors modeles/ et espace privé
431
-	// qui sont a cache nul par defaut
432
-	if (!isset($GLOBALS['delais'])) {
433
-		if (!defined('_DUREE_CACHE_DEFAUT')) {
434
-			define('_DUREE_CACHE_DEFAUT', 24 * 3600);
435
-		}
436
-		$GLOBALS['delais'] = _DUREE_CACHE_DEFAUT;
437
-	}
438
-
439
-	// determiner la validite de la page
440
-	if ($page) {
441
-		$use_cache = cache_valide($page, $page['lastmodified'] ?? 0);
442
-		// le contexte implicite n'est pas stocke dans le cache, mais il y a equivalence
443
-		// par le nom du cache. On le reinjecte donc ici pour utilisation eventuelle au calcul
444
-		$page['contexte_implicite'] = $contexte_implicite;
445
-		if (!$use_cache) {
446
-			// $page est un cache utilisable
447
-			gunzip_page($page);
448
-
449
-			return;
450
-		}
451
-	} else {
452
-		$page = ['contexte_implicite' => $contexte_implicite];
453
-		$use_cache = cache_valide($page, 0); // fichier cache absent : provoque le calcul
454
-	}
455
-
456
-	// Si pas valide mais pas de connexion a la base, le garder quand meme
457
-	if (!spip_connect()) {
458
-		if (isset($page['texte'])) {
459
-			gunzip_page($page);
460
-			$use_cache = 0;
461
-		} else {
462
-			spip_log("Erreur base de donnees, impossible utiliser $chemin_cache");
463
-			include_spip('inc/minipres');
464
-
465
-			return minipres(_T('info_travaux_titre'), _T('titre_probleme_technique'), ['status' => 503]);
466
-		}
467
-	}
468
-
469
-	if ($use_cache < 0) {
470
-		$chemin_cache = '';
471
-	}
472
-
473
-	return;
346
+    # fonction de cache minimale : dire "non on ne met rien en cache"
347
+    # $use_cache = -1; return;
348
+
349
+    // Second appel, destine a l'enregistrement du cache sur le disque
350
+    if (isset($chemin_cache)) {
351
+        creer_cache($page, $chemin_cache);
352
+        return;
353
+    }
354
+
355
+    // Toute la suite correspond au premier appel
356
+    $contexte_implicite = $page['contexte_implicite'];
357
+
358
+    // Cas ignorant le cache car completement dynamique
359
+    if (
360
+        !empty($_SERVER['REQUEST_METHOD']) && $_SERVER['REQUEST_METHOD'] === 'POST'
361
+        || _request('connect')
362
+    ) {
363
+        $use_cache = -1;
364
+        $lastmodified = 0;
365
+        $chemin_cache = '';
366
+        $page = [];
367
+
368
+        return;
369
+    }
370
+
371
+    // Controler l'existence d'un cache nous correspondant
372
+    $chemin_cache = generer_nom_fichier_cache($contexte, $page);
373
+    $lastmodified = 0;
374
+
375
+    // charger le cache s'il existe (et si il a bien le bon hash = anticollision)
376
+    if (!$page = lire_cache($chemin_cache)) {
377
+        $page = [];
378
+    }
379
+
380
+    // s'il est sessionne, charger celui correspondant a notre session
381
+    if (
382
+        isset($page['invalideurs'])
383
+        && isset($page['invalideurs']['session'])
384
+    ) {
385
+        $chemin_cache_session = generer_nom_fichier_cache(
386
+            ['chemin_cache' => $chemin_cache],
387
+            ['session' => spip_session()]
388
+        );
389
+        if (
390
+            ($page_session = lire_cache($chemin_cache_session)) && $page_session['lastmodified'] >= $page['lastmodified']
391
+        ) {
392
+            $page = $page_session;
393
+        } else {
394
+            $page = [];
395
+        }
396
+    }
397
+
398
+
399
+    // Faut-il effacer des pages invalidees (en particulier ce cache-ci) ?
400
+    // ne le faire que si la base est disponible
401
+    if (isset($GLOBALS['meta']['invalider']) && spip_connect()) {
402
+        include_spip('inc/invalideur');
403
+        retire_caches($chemin_cache);
404
+        # API invalideur inutile
405
+        supprimer_fichier(_DIR_CACHE . $chemin_cache);
406
+        if (isset($chemin_cache_session) && $chemin_cache_session) {
407
+            supprimer_fichier(_DIR_CACHE . $chemin_cache_session);
408
+        }
409
+    }
410
+
411
+    // Si un calcul, recalcul [ou preview, mais c'est recalcul] est demande,
412
+    // on supprime le cache
413
+    if (
414
+        defined('_VAR_MODE') &&
415
+        _VAR_MODE &&
416
+        (isset($_COOKIE['spip_session']) ||
417
+            isset($_COOKIE['spip_admin']) ||
418
+            @file_exists(_ACCESS_FILE_NAME))
419
+    ) {
420
+        $page = ['contexte_implicite' => $contexte_implicite]; // ignorer le cache deja lu
421
+        include_spip('inc/invalideur');
422
+        retire_caches($chemin_cache); # API invalideur inutile
423
+        supprimer_fichier(_DIR_CACHE . $chemin_cache);
424
+        if (isset($chemin_cache_session) && $chemin_cache_session) {
425
+            supprimer_fichier(_DIR_CACHE . $chemin_cache_session);
426
+        }
427
+    }
428
+
429
+    // $delais par defaut
430
+    // pour toutes les pages sans #CACHE{} hors modeles/ et espace privé
431
+    // qui sont a cache nul par defaut
432
+    if (!isset($GLOBALS['delais'])) {
433
+        if (!defined('_DUREE_CACHE_DEFAUT')) {
434
+            define('_DUREE_CACHE_DEFAUT', 24 * 3600);
435
+        }
436
+        $GLOBALS['delais'] = _DUREE_CACHE_DEFAUT;
437
+    }
438
+
439
+    // determiner la validite de la page
440
+    if ($page) {
441
+        $use_cache = cache_valide($page, $page['lastmodified'] ?? 0);
442
+        // le contexte implicite n'est pas stocke dans le cache, mais il y a equivalence
443
+        // par le nom du cache. On le reinjecte donc ici pour utilisation eventuelle au calcul
444
+        $page['contexte_implicite'] = $contexte_implicite;
445
+        if (!$use_cache) {
446
+            // $page est un cache utilisable
447
+            gunzip_page($page);
448
+
449
+            return;
450
+        }
451
+    } else {
452
+        $page = ['contexte_implicite' => $contexte_implicite];
453
+        $use_cache = cache_valide($page, 0); // fichier cache absent : provoque le calcul
454
+    }
455
+
456
+    // Si pas valide mais pas de connexion a la base, le garder quand meme
457
+    if (!spip_connect()) {
458
+        if (isset($page['texte'])) {
459
+            gunzip_page($page);
460
+            $use_cache = 0;
461
+        } else {
462
+            spip_log("Erreur base de donnees, impossible utiliser $chemin_cache");
463
+            include_spip('inc/minipres');
464
+
465
+            return minipres(_T('info_travaux_titre'), _T('titre_probleme_technique'), ['status' => 503]);
466
+        }
467
+    }
468
+
469
+    if ($use_cache < 0) {
470
+        $chemin_cache = '';
471
+    }
472
+
473
+    return;
474 474
 }
Please login to merge, or discard this patch.
Spacing   +12 added lines, -12 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
 /**
@@ -113,7 +113,7 @@  discard block
 block discarded – undo
113 113
 		);
114 114
 	}
115 115
 
116
-	return crc32($GLOBALS['meta']['cache_signature'] . $page['texte']);
116
+	return crc32($GLOBALS['meta']['cache_signature'].$page['texte']);
117 117
 }
118 118
 
119 119
 /**
@@ -263,7 +263,7 @@  discard block
 block discarded – undo
263 263
 		// "cache sessionne" ; sa date indique la date de validite
264 264
 		// des caches sessionnes
265 265
 		if (!$tmp = lire_cache($chemin_cache)) {
266
-			spip_log('Creation cache sessionne ' . $chemin_cache);
266
+			spip_log('Creation cache sessionne '.$chemin_cache);
267 267
 			$tmp = [
268 268
 				'invalideurs' => ['session' => ''],
269 269
 				'lastmodified' => $_SERVER['REQUEST_TIME']
@@ -289,8 +289,8 @@  discard block
 block discarded – undo
289 289
 	// l'enregistrer, compresse ou non...
290 290
 	$ok = ecrire_cache($chemin_cache, $pagez);
291 291
 
292
-	spip_log((_IS_BOT ? 'Bot:' : '') . "Creation du cache $chemin_cache pour "
293
-		. $page['entetes']['X-Spip-Cache'] . ' secondes' . ($ok ? '' : ' (erreur!)'), _LOG_INFO);
292
+	spip_log((_IS_BOT ? 'Bot:' : '')."Creation du cache $chemin_cache pour "
293
+		. $page['entetes']['X-Spip-Cache'].' secondes'.($ok ? '' : ' (erreur!)'), _LOG_INFO);
294 294
 
295 295
 	// Inserer ses invalideurs
296 296
 	include_spip('inc/invalideur');
@@ -309,7 +309,7 @@  discard block
 block discarded – undo
309 309
 function nettoyer_petit_cache($prefix, $duree = 300) {
310 310
 	// determiner le repertoire a purger : 'tmp/CACHE/rech/'
311 311
 	$dircache = sous_repertoire(_DIR_CACHE, $prefix);
312
-	if (spip_touch($dircache . 'purger_' . $prefix, $duree, true)) {
312
+	if (spip_touch($dircache.'purger_'.$prefix, $duree, true)) {
313 313
 		foreach (preg_files($dircache, '[.]txt$') as $f) {
314 314
 			if ($_SERVER['REQUEST_TIME'] - (@file_exists($f) ? @filemtime($f) : 0) > $duree) {
315 315
 				spip_unlink($f);
@@ -402,9 +402,9 @@  discard block
 block discarded – undo
402 402
 		include_spip('inc/invalideur');
403 403
 		retire_caches($chemin_cache);
404 404
 		# API invalideur inutile
405
-		supprimer_fichier(_DIR_CACHE . $chemin_cache);
405
+		supprimer_fichier(_DIR_CACHE.$chemin_cache);
406 406
 		if (isset($chemin_cache_session) && $chemin_cache_session) {
407
-			supprimer_fichier(_DIR_CACHE . $chemin_cache_session);
407
+			supprimer_fichier(_DIR_CACHE.$chemin_cache_session);
408 408
 		}
409 409
 	}
410 410
 
@@ -420,9 +420,9 @@  discard block
 block discarded – undo
420 420
 		$page = ['contexte_implicite' => $contexte_implicite]; // ignorer le cache deja lu
421 421
 		include_spip('inc/invalideur');
422 422
 		retire_caches($chemin_cache); # API invalideur inutile
423
-		supprimer_fichier(_DIR_CACHE . $chemin_cache);
423
+		supprimer_fichier(_DIR_CACHE.$chemin_cache);
424 424
 		if (isset($chemin_cache_session) && $chemin_cache_session) {
425
-			supprimer_fichier(_DIR_CACHE . $chemin_cache_session);
425
+			supprimer_fichier(_DIR_CACHE.$chemin_cache_session);
426 426
 		}
427 427
 	}
428 428
 
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/inc/documents.php 3 patches
Braces   +1 added lines, -2 removed lines patch added patch discarded remove patch
@@ -157,8 +157,7 @@
 block discarded – undo
157 157
 		) {
158 158
 			$dest = substr($dest, 0, -strlen($m[0])) . '_' . $m[1];
159 159
 			break;
160
-		}
161
-		else {
160
+		} else {
162 161
 			$dest = substr($dest, 0, -strlen($m[0]));
163 162
 			$ext = $m[1] . '.' . $ext;
164 163
 		}
Please login to merge, or discard this patch.
Indentation   +227 added lines, -227 removed lines patch added patch discarded remove patch
@@ -17,7 +17,7 @@  discard block
 block discarded – undo
17 17
  */
18 18
 
19 19
 if (!defined('_ECRIRE_INC_VERSION')) {
20
-	return;
20
+    return;
21 21
 }
22 22
 
23 23
 /**
@@ -30,12 +30,12 @@  discard block
 block discarded – undo
30 30
  * @return string
31 31
  */
32 32
 function set_spip_doc(?string $fichier): string {
33
-	if ($fichier and strpos($fichier, (string) _DIR_IMG) === 0) {
34
-		return substr($fichier, strlen(_DIR_IMG));
35
-	} else {
36
-		// ex: fichier distant
37
-		return $fichier ?? '';
38
-	}
33
+    if ($fichier and strpos($fichier, (string) _DIR_IMG) === 0) {
34
+        return substr($fichier, strlen(_DIR_IMG));
35
+    } else {
36
+        // ex: fichier distant
37
+        return $fichier ?? '';
38
+    }
39 39
 }
40 40
 
41 41
 /**
@@ -47,26 +47,26 @@  discard block
 block discarded – undo
47 47
  * @return bool|string
48 48
  */
49 49
 function get_spip_doc(?string $fichier) {
50
-	if ($fichier === null) {
51
-		return false;
52
-	}
53
-
54
-	// fichier distant
55
-	if (tester_url_absolue($fichier)) {
56
-		return $fichier;
57
-	}
58
-
59
-	// gestion d'erreurs, fichier=''
60
-	if (!strlen($fichier)) {
61
-		return false;
62
-	}
63
-
64
-	if (strncmp($fichier, _DIR_IMG, strlen(_DIR_IMG)) !== 0) {
65
-		$fichier = _DIR_IMG . $fichier;
66
-	}
67
-
68
-	// fichier normal
69
-	return $fichier;
50
+    if ($fichier === null) {
51
+        return false;
52
+    }
53
+
54
+    // fichier distant
55
+    if (tester_url_absolue($fichier)) {
56
+        return $fichier;
57
+    }
58
+
59
+    // gestion d'erreurs, fichier=''
60
+    if (!strlen($fichier)) {
61
+        return false;
62
+    }
63
+
64
+    if (strncmp($fichier, _DIR_IMG, strlen(_DIR_IMG)) !== 0) {
65
+        $fichier = _DIR_IMG . $fichier;
66
+    }
67
+
68
+    // fichier normal
69
+    return $fichier;
70 70
 }
71 71
 
72 72
 /**
@@ -80,26 +80,26 @@  discard block
 block discarded – undo
80 80
  * @return string
81 81
  */
82 82
 function creer_repertoire_documents($ext) {
83
-	$rep = sous_repertoire(_DIR_IMG, $ext);
84
-
85
-	if (!$ext or !$rep) {
86
-		spip_log("creer_repertoire_documents '$rep' interdit");
87
-		exit;
88
-	}
89
-
90
-	// Cette variable de configuration peut etre posee par un plugin
91
-	// par exemple acces_restreint
92
-	// sauf pour logo/ utilise pour stocker les logoon et logooff
93
-	if (
94
-		isset($GLOBALS['meta']['creer_htaccess'])
95
-		and $GLOBALS['meta']['creer_htaccess'] == 'oui'
96
-		and $ext !== 'logo'
97
-	) {
98
-		include_spip('inc/acces');
99
-		verifier_htaccess($rep);
100
-	}
101
-
102
-	return $rep;
83
+    $rep = sous_repertoire(_DIR_IMG, $ext);
84
+
85
+    if (!$ext or !$rep) {
86
+        spip_log("creer_repertoire_documents '$rep' interdit");
87
+        exit;
88
+    }
89
+
90
+    // Cette variable de configuration peut etre posee par un plugin
91
+    // par exemple acces_restreint
92
+    // sauf pour logo/ utilise pour stocker les logoon et logooff
93
+    if (
94
+        isset($GLOBALS['meta']['creer_htaccess'])
95
+        and $GLOBALS['meta']['creer_htaccess'] == 'oui'
96
+        and $ext !== 'logo'
97
+    ) {
98
+        include_spip('inc/acces');
99
+        verifier_htaccess($rep);
100
+    }
101
+
102
+    return $rep;
103 103
 }
104 104
 
105 105
 /**
@@ -108,22 +108,22 @@  discard block
 block discarded – undo
108 108
  * @param string $nom
109 109
  */
110 110
 function effacer_repertoire_temporaire($nom) {
111
-	if ($d = opendir($nom)) {
112
-		while (($f = readdir($d)) !== false) {
113
-			if (is_file("$nom/$f")) {
114
-				spip_unlink("$nom/$f");
115
-			} else {
116
-				if (
117
-					$f <> '.' and $f <> '..'
118
-					and is_dir("$nom/$f")
119
-				) {
120
-					effacer_repertoire_temporaire("$nom/$f");
121
-				}
122
-			}
123
-		}
124
-	}
125
-	closedir($d);
126
-	@rmdir($nom);
111
+    if ($d = opendir($nom)) {
112
+        while (($f = readdir($d)) !== false) {
113
+            if (is_file("$nom/$f")) {
114
+                spip_unlink("$nom/$f");
115
+            } else {
116
+                if (
117
+                    $f <> '.' and $f <> '..'
118
+                    and is_dir("$nom/$f")
119
+                ) {
120
+                    effacer_repertoire_temporaire("$nom/$f");
121
+                }
122
+            }
123
+        }
124
+    }
125
+    closedir($d);
126
+    @rmdir($nom);
127 127
 }
128 128
 
129 129
 //
@@ -140,45 +140,45 @@  discard block
 block discarded – undo
140 140
  */
141 141
 function copier_document($ext, $orig, $source, $subdir = null) {
142 142
 
143
-	$orig = preg_replace(',\.\.+,', '.', $orig); // pas de .. dans le nom du doc
144
-	$dir = creer_repertoire_documents($subdir ?: $ext);
145
-
146
-	$dest = preg_replace('/<[^>]*>/', '', basename($orig));
147
-	$dest = preg_replace('/\.([^.]+)$/', '', $dest);
148
-	$dest = translitteration($dest);
149
-	$dest = preg_replace('/[^.=\w-]+/', '_', $dest);
150
-
151
-	// ne pas accepter de noms de la forme -r90.jpg qui sont reserves
152
-	// pour les images transformees par rotation (action/documenter)
153
-	$dest = preg_replace(',-r(90|180|270)$,', '', $dest);
154
-
155
-	while (preg_match(',\.(\w+)$,', $dest, $m)) {
156
-		if (
157
-			!function_exists('verifier_upload_autorise')
158
-			or !$r = verifier_upload_autorise($dest)
159
-			or (!empty($r['autozip']))
160
-		) {
161
-			$dest = substr($dest, 0, -strlen($m[0])) . '_' . $m[1];
162
-			break;
163
-		}
164
-		else {
165
-			$dest = substr($dest, 0, -strlen($m[0]));
166
-			$ext = $m[1] . '.' . $ext;
167
-		}
168
-	}
169
-
170
-	// Si le document "source" est deja au bon endroit, ne rien faire
171
-	if ($source == ($dir . $dest . '.' . $ext)) {
172
-		return $source;
173
-	}
174
-
175
-	// sinon tourner jusqu'a trouver un numero correct
176
-	$n = 0;
177
-	while (@file_exists($newFile = $dir . $dest . ($n++ ? ('-' . $n) : '') . '.' . $ext)) {
178
-		;
179
-	}
180
-
181
-	return deplacer_fichier_upload($source, $newFile);
143
+    $orig = preg_replace(',\.\.+,', '.', $orig); // pas de .. dans le nom du doc
144
+    $dir = creer_repertoire_documents($subdir ?: $ext);
145
+
146
+    $dest = preg_replace('/<[^>]*>/', '', basename($orig));
147
+    $dest = preg_replace('/\.([^.]+)$/', '', $dest);
148
+    $dest = translitteration($dest);
149
+    $dest = preg_replace('/[^.=\w-]+/', '_', $dest);
150
+
151
+    // ne pas accepter de noms de la forme -r90.jpg qui sont reserves
152
+    // pour les images transformees par rotation (action/documenter)
153
+    $dest = preg_replace(',-r(90|180|270)$,', '', $dest);
154
+
155
+    while (preg_match(',\.(\w+)$,', $dest, $m)) {
156
+        if (
157
+            !function_exists('verifier_upload_autorise')
158
+            or !$r = verifier_upload_autorise($dest)
159
+            or (!empty($r['autozip']))
160
+        ) {
161
+            $dest = substr($dest, 0, -strlen($m[0])) . '_' . $m[1];
162
+            break;
163
+        }
164
+        else {
165
+            $dest = substr($dest, 0, -strlen($m[0]));
166
+            $ext = $m[1] . '.' . $ext;
167
+        }
168
+    }
169
+
170
+    // Si le document "source" est deja au bon endroit, ne rien faire
171
+    if ($source == ($dir . $dest . '.' . $ext)) {
172
+        return $source;
173
+    }
174
+
175
+    // sinon tourner jusqu'a trouver un numero correct
176
+    $n = 0;
177
+    while (@file_exists($newFile = $dir . $dest . ($n++ ? ('-' . $n) : '') . '.' . $ext)) {
178
+        ;
179
+    }
180
+
181
+    return deplacer_fichier_upload($source, $newFile);
182 182
 }
183 183
 
184 184
 /**
@@ -193,28 +193,28 @@  discard block
 block discarded – undo
193 193
  * @return bool|string
194 194
  */
195 195
 function determine_upload($type = '') {
196
-	if (!function_exists('autoriser')) {
197
-		include_spip('inc/autoriser');
198
-	}
199
-
200
-	if (
201
-		!autoriser('chargerftp')
202
-		or $type == 'logos'
203
-	) { # on ne le permet pas pour les logos
204
-	return false;
205
-	}
206
-
207
-	$repertoire = _DIR_TRANSFERT;
208
-	if (!@is_dir($repertoire)) {
209
-		$repertoire = str_replace(_DIR_TMP, '', $repertoire);
210
-		$repertoire = sous_repertoire(_DIR_TMP, $repertoire);
211
-	}
212
-
213
-	if (!$GLOBALS['visiteur_session']['restreint']) {
214
-		return $repertoire;
215
-	} else {
216
-		return sous_repertoire($repertoire, $GLOBALS['visiteur_session']['login']);
217
-	}
196
+    if (!function_exists('autoriser')) {
197
+        include_spip('inc/autoriser');
198
+    }
199
+
200
+    if (
201
+        !autoriser('chargerftp')
202
+        or $type == 'logos'
203
+    ) { # on ne le permet pas pour les logos
204
+    return false;
205
+    }
206
+
207
+    $repertoire = _DIR_TRANSFERT;
208
+    if (!@is_dir($repertoire)) {
209
+        $repertoire = str_replace(_DIR_TMP, '', $repertoire);
210
+        $repertoire = sous_repertoire(_DIR_TMP, $repertoire);
211
+    }
212
+
213
+    if (!$GLOBALS['visiteur_session']['restreint']) {
214
+        return $repertoire;
215
+    } else {
216
+        return sous_repertoire($repertoire, $GLOBALS['visiteur_session']['login']);
217
+    }
218 218
 }
219 219
 
220 220
 /**
@@ -233,35 +233,35 @@  discard block
 block discarded – undo
233 233
  * @return bool|mixed|string
234 234
  */
235 235
 function deplacer_fichier_upload($source, $dest, $move = false) {
236
-	// Securite
237
-	if (substr($dest, 0, strlen(_DIR_RACINE)) == _DIR_RACINE) {
238
-		$dest = _DIR_RACINE . preg_replace(',\.\.+,', '.', substr($dest, strlen(_DIR_RACINE)));
239
-	} else {
240
-		$dest = preg_replace(',\.\.+,', '.', $dest);
241
-	}
242
-
243
-	if ($move) {
244
-		$ok = @rename($source, $dest);
245
-	} else {
246
-		$ok = @copy($source, $dest);
247
-	}
248
-	if (!$ok) {
249
-		$ok = @move_uploaded_file($source, $dest);
250
-	}
251
-	if ($ok) {
252
-		@chmod($dest, _SPIP_CHMOD & ~0111);
253
-	} else {
254
-		$f = @fopen($dest, 'w');
255
-		if ($f) {
256
-			fclose($f);
257
-		} else {
258
-			include_spip('inc/flock');
259
-			raler_fichier($dest);
260
-		}
261
-		spip_unlink($dest);
262
-	}
263
-
264
-	return $ok ? $dest : false;
236
+    // Securite
237
+    if (substr($dest, 0, strlen(_DIR_RACINE)) == _DIR_RACINE) {
238
+        $dest = _DIR_RACINE . preg_replace(',\.\.+,', '.', substr($dest, strlen(_DIR_RACINE)));
239
+    } else {
240
+        $dest = preg_replace(',\.\.+,', '.', $dest);
241
+    }
242
+
243
+    if ($move) {
244
+        $ok = @rename($source, $dest);
245
+    } else {
246
+        $ok = @copy($source, $dest);
247
+    }
248
+    if (!$ok) {
249
+        $ok = @move_uploaded_file($source, $dest);
250
+    }
251
+    if ($ok) {
252
+        @chmod($dest, _SPIP_CHMOD & ~0111);
253
+    } else {
254
+        $f = @fopen($dest, 'w');
255
+        if ($f) {
256
+            fclose($f);
257
+        } else {
258
+            include_spip('inc/flock');
259
+            raler_fichier($dest);
260
+        }
261
+        spip_unlink($dest);
262
+    }
263
+
264
+    return $ok ? $dest : false;
265 265
 }
266 266
 
267 267
 
@@ -285,60 +285,60 @@  discard block
 block discarded – undo
285 285
  */
286 286
 function check_upload_error($error, $msg = '', $return = false) {
287 287
 
288
-	if (!$error) {
289
-		return false;
290
-	}
291
-
292
-	spip_log("Erreur upload $error -- cf. http://php.net/manual/fr/features.file-upload.errors.php");
293
-
294
-	switch ($error) {
295
-		case 4: /* UPLOAD_ERR_NO_FILE */
296
-			return true;
297
-
298
-		# on peut affiner les differents messages d'erreur
299
-		case 1: /* UPLOAD_ERR_INI_SIZE */
300
-			$msg = _T(
301
-				'upload_limit',
302
-				['max' => ini_get('upload_max_filesize')]
303
-			);
304
-			break;
305
-		case 2: /* UPLOAD_ERR_FORM_SIZE */
306
-			$msg = _T(
307
-				'upload_limit',
308
-				['max' => ini_get('upload_max_filesize')]
309
-			);
310
-			break;
311
-		case 3: /* UPLOAD_ERR_PARTIAL  */
312
-			$msg = _T(
313
-				'upload_limit',
314
-				['max' => ini_get('upload_max_filesize')]
315
-			);
316
-			break;
317
-
318
-		default: /* autre */
319
-			if (!$msg) {
320
-				$msg = _T('pass_erreur') . ' ' . $error
321
-					. '<br />' . propre('[->http://php.net/manual/fr/features.file-upload.errors.php]');
322
-			}
323
-			break;
324
-	}
325
-
326
-	spip_log("erreur upload $error");
327
-	if ($return) {
328
-		return $msg;
329
-	}
330
-
331
-	if (_request('iframe') == 'iframe') {
332
-		echo "<div class='upload_answer upload_error'>$msg</div>";
333
-		exit;
334
-	}
335
-
336
-	include_spip('inc/minipres');
337
-	echo minipres(
338
-		$msg,
339
-		"<div style='text-align: " . $GLOBALS['spip_lang_right'] . "'><a href='" . rawurldecode($GLOBALS['redirect']) . "'><button type='button'>" . _T('ecrire:bouton_suivant') . '</button></a></div>'
340
-	);
341
-	exit;
288
+    if (!$error) {
289
+        return false;
290
+    }
291
+
292
+    spip_log("Erreur upload $error -- cf. http://php.net/manual/fr/features.file-upload.errors.php");
293
+
294
+    switch ($error) {
295
+        case 4: /* UPLOAD_ERR_NO_FILE */
296
+            return true;
297
+
298
+        # on peut affiner les differents messages d'erreur
299
+        case 1: /* UPLOAD_ERR_INI_SIZE */
300
+            $msg = _T(
301
+                'upload_limit',
302
+                ['max' => ini_get('upload_max_filesize')]
303
+            );
304
+            break;
305
+        case 2: /* UPLOAD_ERR_FORM_SIZE */
306
+            $msg = _T(
307
+                'upload_limit',
308
+                ['max' => ini_get('upload_max_filesize')]
309
+            );
310
+            break;
311
+        case 3: /* UPLOAD_ERR_PARTIAL  */
312
+            $msg = _T(
313
+                'upload_limit',
314
+                ['max' => ini_get('upload_max_filesize')]
315
+            );
316
+            break;
317
+
318
+        default: /* autre */
319
+            if (!$msg) {
320
+                $msg = _T('pass_erreur') . ' ' . $error
321
+                    . '<br />' . propre('[->http://php.net/manual/fr/features.file-upload.errors.php]');
322
+            }
323
+            break;
324
+    }
325
+
326
+    spip_log("erreur upload $error");
327
+    if ($return) {
328
+        return $msg;
329
+    }
330
+
331
+    if (_request('iframe') == 'iframe') {
332
+        echo "<div class='upload_answer upload_error'>$msg</div>";
333
+        exit;
334
+    }
335
+
336
+    include_spip('inc/minipres');
337
+    echo minipres(
338
+        $msg,
339
+        "<div style='text-align: " . $GLOBALS['spip_lang_right'] . "'><a href='" . rawurldecode($GLOBALS['redirect']) . "'><button type='button'>" . _T('ecrire:bouton_suivant') . '</button></a></div>'
340
+    );
341
+    exit;
342 342
 }
343 343
 
344 344
 /**
@@ -355,24 +355,24 @@  discard block
 block discarded – undo
355 355
  * @return string
356 356
  */
357 357
 function corriger_extension($ext) {
358
-	$ext = preg_replace(',[^a-z0-9],i', '', $ext);
359
-	switch ($ext) {
360
-		case 'htm':
361
-			$ext = 'html';
362
-			break;
363
-		case 'jpeg':
364
-			$ext = 'jpg';
365
-			break;
366
-		case 'tiff':
367
-			$ext = 'tif';
368
-			break;
369
-		case 'aif':
370
-			$ext = 'aiff';
371
-			break;
372
-		case 'mpeg':
373
-			$ext = 'mpg';
374
-			break;
375
-	}
376
-
377
-	return $ext;
358
+    $ext = preg_replace(',[^a-z0-9],i', '', $ext);
359
+    switch ($ext) {
360
+        case 'htm':
361
+            $ext = 'html';
362
+            break;
363
+        case 'jpeg':
364
+            $ext = 'jpg';
365
+            break;
366
+        case 'tiff':
367
+            $ext = 'tif';
368
+            break;
369
+        case 'aif':
370
+            $ext = 'aiff';
371
+            break;
372
+        case 'mpeg':
373
+            $ext = 'mpg';
374
+            break;
375
+    }
376
+
377
+    return $ext;
378 378
 }
Please login to merge, or discard this patch.
Spacing   +9 added lines, -9 removed lines patch added patch discarded remove patch
@@ -62,7 +62,7 @@  discard block
 block discarded – undo
62 62
 	}
63 63
 
64 64
 	if (strncmp($fichier, _DIR_IMG, strlen(_DIR_IMG)) !== 0) {
65
-		$fichier = _DIR_IMG . $fichier;
65
+		$fichier = _DIR_IMG.$fichier;
66 66
 	}
67 67
 
68 68
 	// fichier normal
@@ -158,23 +158,23 @@  discard block
 block discarded – undo
158 158
 			or !$r = verifier_upload_autorise($dest)
159 159
 			or (!empty($r['autozip']))
160 160
 		) {
161
-			$dest = substr($dest, 0, -strlen($m[0])) . '_' . $m[1];
161
+			$dest = substr($dest, 0, -strlen($m[0])).'_'.$m[1];
162 162
 			break;
163 163
 		}
164 164
 		else {
165 165
 			$dest = substr($dest, 0, -strlen($m[0]));
166
-			$ext = $m[1] . '.' . $ext;
166
+			$ext = $m[1].'.'.$ext;
167 167
 		}
168 168
 	}
169 169
 
170 170
 	// Si le document "source" est deja au bon endroit, ne rien faire
171
-	if ($source == ($dir . $dest . '.' . $ext)) {
171
+	if ($source == ($dir.$dest.'.'.$ext)) {
172 172
 		return $source;
173 173
 	}
174 174
 
175 175
 	// sinon tourner jusqu'a trouver un numero correct
176 176
 	$n = 0;
177
-	while (@file_exists($newFile = $dir . $dest . ($n++ ? ('-' . $n) : '') . '.' . $ext)) {
177
+	while (@file_exists($newFile = $dir.$dest.($n++ ? ('-'.$n) : '').'.'.$ext)) {
178 178
 		;
179 179
 	}
180 180
 
@@ -235,7 +235,7 @@  discard block
 block discarded – undo
235 235
 function deplacer_fichier_upload($source, $dest, $move = false) {
236 236
 	// Securite
237 237
 	if (substr($dest, 0, strlen(_DIR_RACINE)) == _DIR_RACINE) {
238
-		$dest = _DIR_RACINE . preg_replace(',\.\.+,', '.', substr($dest, strlen(_DIR_RACINE)));
238
+		$dest = _DIR_RACINE.preg_replace(',\.\.+,', '.', substr($dest, strlen(_DIR_RACINE)));
239 239
 	} else {
240 240
 		$dest = preg_replace(',\.\.+,', '.', $dest);
241 241
 	}
@@ -317,8 +317,8 @@  discard block
 block discarded – undo
317 317
 
318 318
 		default: /* autre */
319 319
 			if (!$msg) {
320
-				$msg = _T('pass_erreur') . ' ' . $error
321
-					. '<br />' . propre('[->http://php.net/manual/fr/features.file-upload.errors.php]');
320
+				$msg = _T('pass_erreur').' '.$error
321
+					. '<br />'.propre('[->http://php.net/manual/fr/features.file-upload.errors.php]');
322 322
 			}
323 323
 			break;
324 324
 	}
@@ -336,7 +336,7 @@  discard block
 block discarded – undo
336 336
 	include_spip('inc/minipres');
337 337
 	echo minipres(
338 338
 		$msg,
339
-		"<div style='text-align: " . $GLOBALS['spip_lang_right'] . "'><a href='" . rawurldecode($GLOBALS['redirect']) . "'><button type='button'>" . _T('ecrire:bouton_suivant') . '</button></a></div>'
339
+		"<div style='text-align: ".$GLOBALS['spip_lang_right']."'><a href='".rawurldecode($GLOBALS['redirect'])."'><button type='button'>"._T('ecrire:bouton_suivant').'</button></a></div>'
340 340
 	);
341 341
 	exit;
342 342
 }
Please login to merge, or discard this patch.
ecrire/inc/surligne.php 2 patches
Spacing   +5 added lines, -5 removed lines patch added patch discarded remove patch
@@ -37,7 +37,7 @@  discard block
 block discarded – undo
37 37
 function surligner_mots($page, $surcharge_surligne = '') {
38 38
 	$surlignejs_engines = [
39 39
 		[
40
-			',' . str_replace(['/', '.'], ['\/', '\.'], $GLOBALS['meta']['adresse_site']) . ',i',
40
+			','.str_replace(['/', '.'], ['\/', '\.'], $GLOBALS['meta']['adresse_site']).',i',
41 41
 			',recherche=([^&]+),i'
42 42
 		], //SPIP
43 43
 		[',^http://(www\.)?google\.,i', ',q=([^&]+),i'], // Google
@@ -72,19 +72,19 @@  discard block
 block discarded – undo
72 72
 			//good referrer found or var_recherche is not null
73 73
 			include_spip('inc/filtres');
74 74
 			$script = "
75
-      <script type='text/javascript' src='" . url_absolue(find_in_path('javascript/SearchHighlight.js')) . "'></script>
75
+      <script type='text/javascript' src='" . url_absolue(find_in_path('javascript/SearchHighlight.js'))."'></script>
76 76
       <script type='text/javascript'>
77 77
        var highlighter = function() {
78 78
 		  jQuery(this).SearchHighlight({
79
-            tag_name:'" . (html5_permis() ? 'mark' : 'span') . "',
79
+            tag_name:'" . (html5_permis() ? 'mark' : 'span')."',
80 80
             style_name:'spip_surligne',
81 81
             exact:'whole',
82 82
             style_name_suffix:false,
83
-            engines:[/^" . str_replace(['/', '.'], ['\/', '\.'], $GLOBALS['meta']['adresse_site']) . "/i,/recherche=([^&]+)/i],
83
+            engines:[/^" . str_replace(['/', '.'], ['\/', '\.'], $GLOBALS['meta']['adresse_site'])."/i,/recherche=([^&]+)/i],
84 84
             highlight:'.surlignable',
85 85
             nohighlight:'.pas_surlignable'" .
86 86
 				($surcharge_surligne ? ",
87
-            keys:'$surcharge_surligne'" : '') . ',
87
+            keys:'$surcharge_surligne'" : '').',
88 88
             min_length: 3
89 89
           });
90 90
 	  }
Please login to merge, or discard this patch.
Indentation   +46 added lines, -46 removed lines patch added patch discarded remove patch
@@ -15,7 +15,7 @@  discard block
 block discarded – undo
15 15
  * @package SPIP\Core\Surligne
16 16
  **/
17 17
 if (!defined('_ECRIRE_INC_VERSION')) {
18
-	return;
18
+    return;
19 19
 }
20 20
 
21 21
 /**
@@ -34,43 +34,43 @@  discard block
 block discarded – undo
34 34
  *     Page HTML
35 35
  **/
36 36
 function surligner_mots($page, $surcharge_surligne = '') {
37
-	$surlignejs_engines = [
38
-		[
39
-			',' . str_replace(['/', '.'], ['\/', '\.'], $GLOBALS['meta']['adresse_site']) . ',i',
40
-			',recherche=([^&]+),i'
41
-		], //SPIP
42
-		[',^http://(www\.)?google\.,i', ',q=([^&]+),i'], // Google
43
-		[',^http://(www\.)?search\.yahoo\.,i', ',p=([^&]+),i'], // Yahoo
44
-		[',^http://(www\.)?search\.msn\.,i', ',q=([^&]+),i'], // MSN
45
-		[',^http://(www\.)?search\.live\.,i', ',query=([^&]+),i'], // MSN Live
46
-		[',^http://(www\.)?search\.aol\.,i', ',userQuery=([^&]+),i'], // AOL
47
-		[',^http://(www\.)?ask\.com,i', ',q=([^&]+),i'], // Ask.com
48
-		[',^http://(www\.)?altavista\.,i', ',q=([^&]+),i'], // AltaVista
49
-		[',^http://(www\.)?feedster\.,i', ',q=([^&]+),i'], // Feedster
50
-		[',^http://(www\.)?search\.lycos\.,i', ',q=([^&]+),i'], // Lycos
51
-		[',^http://(www\.)?alltheweb\.,i', ',q=([^&]+),i'], // AllTheWeb
52
-		[',^http://(www\.)?technorati\.com,i', ',([^\?\/]+)(?:\?.*)$,i'], // Technorati
53
-	];
37
+    $surlignejs_engines = [
38
+        [
39
+            ',' . str_replace(['/', '.'], ['\/', '\.'], $GLOBALS['meta']['adresse_site']) . ',i',
40
+            ',recherche=([^&]+),i'
41
+        ], //SPIP
42
+        [',^http://(www\.)?google\.,i', ',q=([^&]+),i'], // Google
43
+        [',^http://(www\.)?search\.yahoo\.,i', ',p=([^&]+),i'], // Yahoo
44
+        [',^http://(www\.)?search\.msn\.,i', ',q=([^&]+),i'], // MSN
45
+        [',^http://(www\.)?search\.live\.,i', ',query=([^&]+),i'], // MSN Live
46
+        [',^http://(www\.)?search\.aol\.,i', ',userQuery=([^&]+),i'], // AOL
47
+        [',^http://(www\.)?ask\.com,i', ',q=([^&]+),i'], // Ask.com
48
+        [',^http://(www\.)?altavista\.,i', ',q=([^&]+),i'], // AltaVista
49
+        [',^http://(www\.)?feedster\.,i', ',q=([^&]+),i'], // Feedster
50
+        [',^http://(www\.)?search\.lycos\.,i', ',q=([^&]+),i'], // Lycos
51
+        [',^http://(www\.)?alltheweb\.,i', ',q=([^&]+),i'], // AllTheWeb
52
+        [',^http://(www\.)?technorati\.com,i', ',([^\?\/]+)(?:\?.*)$,i'], // Technorati
53
+    ];
54 54
 
55 55
 
56
-	$ref = $_SERVER['HTTP_REFERER'] ?? null;
57
-	//avoid a js injection
58
-	if ($surcharge_surligne) {
59
-		$surcharge_surligne = preg_replace(",(?<!\\\\)((?:(?>\\\\){2})*)('),", '$1\\\$2', $surcharge_surligne);
60
-		$surcharge_surligne = str_replace('\\', '\\\\', $surcharge_surligne);
61
-		if ($GLOBALS['meta']['charset'] == 'utf-8') {
62
-			include_spip('inc/charsets');
63
-			if (!is_utf8($surcharge_surligne)) {
64
-				$surcharge_surligne = mb_convert_encoding($surcharge_surligne, 'UTF-8', 'ISO-8859-1');
65
-			}
66
-		}
67
-		$surcharge_surligne = preg_replace(',\*$,', '', trim($surcharge_surligne)); # supprimer un * final
68
-	}
69
-	foreach ($surlignejs_engines as $engine) {
70
-		if ($surcharge_surligne || (preg_match($engine[0], $ref) && preg_match($engine[1], $ref))) {
71
-			//good referrer found or var_recherche is not null
72
-			include_spip('inc/filtres');
73
-			$script = "
56
+    $ref = $_SERVER['HTTP_REFERER'] ?? null;
57
+    //avoid a js injection
58
+    if ($surcharge_surligne) {
59
+        $surcharge_surligne = preg_replace(",(?<!\\\\)((?:(?>\\\\){2})*)('),", '$1\\\$2', $surcharge_surligne);
60
+        $surcharge_surligne = str_replace('\\', '\\\\', $surcharge_surligne);
61
+        if ($GLOBALS['meta']['charset'] == 'utf-8') {
62
+            include_spip('inc/charsets');
63
+            if (!is_utf8($surcharge_surligne)) {
64
+                $surcharge_surligne = mb_convert_encoding($surcharge_surligne, 'UTF-8', 'ISO-8859-1');
65
+            }
66
+        }
67
+        $surcharge_surligne = preg_replace(',\*$,', '', trim($surcharge_surligne)); # supprimer un * final
68
+    }
69
+    foreach ($surlignejs_engines as $engine) {
70
+        if ($surcharge_surligne || (preg_match($engine[0], $ref) && preg_match($engine[1], $ref))) {
71
+            //good referrer found or var_recherche is not null
72
+            include_spip('inc/filtres');
73
+            $script = "
74 74
       <script type='text/javascript' src='" . url_absolue(find_in_path('javascript/SearchHighlight.js')) . "'></script>
75 75
       <script type='text/javascript'>
76 76
        var highlighter = function() {
@@ -82,7 +82,7 @@  discard block
 block discarded – undo
82 82
             engines:[/^" . str_replace(['/', '.'], ['\/', '\.'], $GLOBALS['meta']['adresse_site']) . "/i,/recherche=([^&]+)/i],
83 83
             highlight:'.surlignable',
84 84
             nohighlight:'.pas_surlignable'" .
85
-				($surcharge_surligne ? ",
85
+                ($surcharge_surligne ? ",
86 86
             keys:'$surcharge_surligne'" : '') . ',
87 87
             min_length: 3
88 88
           });
@@ -93,14 +93,14 @@  discard block
 block discarded – undo
93 93
       };
94 94
       </script>
95 95
       ';
96
-			// on l'insere juste avant </head>, sinon tout en bas
97
-			if (is_null($l = strpos($page, '</head>'))) {
98
-				$l = strlen($page);
99
-			}
100
-			$page = substr_replace($page, $script, $l, 0);
101
-			break;
102
-		}
103
-	}
96
+            // on l'insere juste avant </head>, sinon tout en bas
97
+            if (is_null($l = strpos($page, '</head>'))) {
98
+                $l = strlen($page);
99
+            }
100
+            $page = substr_replace($page, $script, $l, 0);
101
+            break;
102
+        }
103
+    }
104 104
 
105
-	return $page;
105
+    return $page;
106 106
 }
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.