Completed
Push — spip-3.0 ( 1797f4...52731c )
by cam
09:29
created
ecrire/inc/chercher_rubrique.php 4 patches
Doc Comments   +11 added lines patch added patch discarded remove patch
@@ -62,6 +62,11 @@  discard block
 block discarded – undo
62 62
 }
63 63
 
64 64
 // http://doc.spip.org/@sous_menu_rubriques
65
+/**
66
+ * @param integer $root
67
+ * @param integer $niv
68
+ * @param integer $exclus
69
+ */
65 70
 function sous_menu_rubriques($id_rubrique, $root, $niv, &$data, &$enfants, $exclus, $restreint, $type) {
66 71
 	static $decalage_secteur;
67 72
 
@@ -205,6 +210,12 @@  discard block
 block discarded – undo
205 210
 // getElement en mode Ajax est trop couteux).
206 211
 
207 212
 // http://doc.spip.org/@construire_selecteur
213
+/**
214
+ * @param string $url
215
+ * @param string $js
216
+ * @param string $idom
217
+ * @param string $name
218
+ */
208 219
 function construire_selecteur($url, $js, $idom, $name, $init='', $id=0){
209 220
 	$icone = (strpos($idom, 'auteur')!==false) ? 'auteur-24.png' : 'rechercher-20.png';
210 221
 	return
Please login to merge, or discard this patch.
Indentation   +137 added lines, -137 removed lines patch added patch discarded remove patch
@@ -24,18 +24,18 @@  discard block
 block discarded – undo
24 24
 // $idem : en mode rubrique = la rubrique soi-meme
25 25
 // http://doc.spip.org/@inc_chercher_rubrique_dist
26 26
 function inc_chercher_rubrique_dist ($id_rubrique, $type, $restreint, $idem=0, $do='aff') {
27
-	if (sql_countsel('spip_rubriques')<1)
28
-		return '';
27
+    if (sql_countsel('spip_rubriques')<1)
28
+        return '';
29 29
 
30
-	// Mode sans Ajax :
31
-	// - soit parce que le cookie ajax n'est pas la
32
-	// - soit parce qu'il y a peu de rubriques
33
-	if (_SPIP_AJAX < 1
34
-	OR $type == 'breve'
35
-	OR sql_countsel('spip_rubriques') < _SPIP_SELECT_RUBRIQUES)
36
-		return selecteur_rubrique_html($id_rubrique, $type, $restreint, $idem);
30
+    // Mode sans Ajax :
31
+    // - soit parce que le cookie ajax n'est pas la
32
+    // - soit parce qu'il y a peu de rubriques
33
+    if (_SPIP_AJAX < 1
34
+    OR $type == 'breve'
35
+    OR sql_countsel('spip_rubriques') < _SPIP_SELECT_RUBRIQUES)
36
+        return selecteur_rubrique_html($id_rubrique, $type, $restreint, $idem);
37 37
 
38
-	else return selecteur_rubrique_ajax($id_rubrique, $type, $restreint, $idem, $do);
38
+    else return selecteur_rubrique_ajax($id_rubrique, $type, $restreint, $idem, $do);
39 39
 
40 40
 }
41 41
 
@@ -44,119 +44,119 @@  discard block
 block discarded – undo
44 44
 
45 45
 // http://doc.spip.org/@style_menu_rubriques
46 46
 function style_menu_rubriques($i) {
47
-	global $browser_name, $spip_lang_left;
48
-
49
-	$espace = '';
50
-	if (preg_match(",mozilla,i", $browser_name)) {
51
-		$style = "padding-$spip_lang_left: 16px; "
52
-		. "margin-$spip_lang_left: ".(($i-1)*16)."px;";
53
-	} else {
54
-		$style = '';
55
-		for ($count = 0; $count <= $i; $count ++)
56
-			$espace .= "&nbsp;&nbsp;&nbsp;&nbsp;";
57
-	}
58
-	if ($i ==1)
59
-		$espace= "";
60
-	$class = "niveau_$i";
61
-	return array($class,$style,$espace);
47
+    global $browser_name, $spip_lang_left;
48
+
49
+    $espace = '';
50
+    if (preg_match(",mozilla,i", $browser_name)) {
51
+        $style = "padding-$spip_lang_left: 16px; "
52
+        . "margin-$spip_lang_left: ".(($i-1)*16)."px;";
53
+    } else {
54
+        $style = '';
55
+        for ($count = 0; $count <= $i; $count ++)
56
+            $espace .= "&nbsp;&nbsp;&nbsp;&nbsp;";
57
+    }
58
+    if ($i ==1)
59
+        $espace= "";
60
+    $class = "niveau_$i";
61
+    return array($class,$style,$espace);
62 62
 }
63 63
 
64 64
 // http://doc.spip.org/@sous_menu_rubriques
65 65
 function sous_menu_rubriques($id_rubrique, $root, $niv, &$data, &$enfants, $exclus, $restreint, $type) {
66
-	static $decalage_secteur;
66
+    static $decalage_secteur;
67 67
 
68
-	// Si on a demande l'exclusion ne pas descendre dans la rubrique courante
69
-	if ($exclus > 0
70
-	AND $root == $exclus) return '';
68
+    // Si on a demande l'exclusion ne pas descendre dans la rubrique courante
69
+    if ($exclus > 0
70
+    AND $root == $exclus) return '';
71 71
 
72
-	// en fonction du niveau faire un affichage plus ou moins kikoo
72
+    // en fonction du niveau faire un affichage plus ou moins kikoo
73 73
 
74
-	// selected ?
75
-	$selected = ($root == $id_rubrique) ? ' selected="selected"' : '';
74
+    // selected ?
75
+    $selected = ($root == $id_rubrique) ? ' selected="selected"' : '';
76 76
 
77
-	// le style en fonction de la profondeur
78
-	list($class, $style, $espace) = style_menu_rubriques($niv);
77
+    // le style en fonction de la profondeur
78
+    list($class, $style, $espace) = style_menu_rubriques($niv);
79 79
 
80
-	$class .= " selec_rub";
80
+    $class .= " selec_rub";
81 81
 
82
-	// creer l'<option> pour la rubrique $root
82
+    // creer l'<option> pour la rubrique $root
83 83
 
84
-	if (isset($data[$root])) # pas de racine sauf pour les rubriques
85
-	{
86
-		$r = "<option$selected value='$root' class='$class' style='$style'>$espace"
87
-		.$data[$root]
88
-		.'</option>'."\n";
89
-	} else 	$r = '';
84
+    if (isset($data[$root])) # pas de racine sauf pour les rubriques
85
+    {
86
+        $r = "<option$selected value='$root' class='$class' style='$style'>$espace"
87
+        .$data[$root]
88
+        .'</option>'."\n";
89
+    } else 	$r = '';
90 90
 	
91
-	// et le sous-menu pour ses enfants
92
-	$sous = '';
93
-	if (isset($enfants[$root]))
94
-		foreach ($enfants[$root] as $sousrub)
95
-			$sous .= sous_menu_rubriques($id_rubrique, $sousrub,
96
-				$niv+1, $data, $enfants, $exclus, $restreint, $type);
97
-
98
-	// si l'objet a deplacer est publie, verifier qu'on a acces aux rubriques
99
-	if ($restreint AND $root!=$id_rubrique AND !autoriser('publierdans','rubrique',$root))
100
-		return $sous;
101
-
102
-	// et voila le travail
103
-	return $r.$sous;
91
+    // et le sous-menu pour ses enfants
92
+    $sous = '';
93
+    if (isset($enfants[$root]))
94
+        foreach ($enfants[$root] as $sousrub)
95
+            $sous .= sous_menu_rubriques($id_rubrique, $sousrub,
96
+                $niv+1, $data, $enfants, $exclus, $restreint, $type);
97
+
98
+    // si l'objet a deplacer est publie, verifier qu'on a acces aux rubriques
99
+    if ($restreint AND $root!=$id_rubrique AND !autoriser('publierdans','rubrique',$root))
100
+        return $sous;
101
+
102
+    // et voila le travail
103
+    return $r.$sous;
104 104
 }
105 105
 
106 106
 // Le selecteur de rubriques en mode classique (menu)
107 107
 // http://doc.spip.org/@selecteur_rubrique_html
108 108
 function selecteur_rubrique_html($id_rubrique, $type, $restreint, $idem=0) {
109
-	$data = array();
110
-	if ($type == 'rubrique' AND autoriser('publierdans','rubrique',0))
111
-		$data[0] = _T('info_racine_site');
112
-	# premier choix = neant
113
-	# si auteur (rubriques restreintes)
114
-	# ou si creation avec id_rubrique=0
115
-	elseif ($type == 'auteur' OR !$id_rubrique)
116
-		$data[0] = '&nbsp;';
117
-
118
-	//
119
-	// creer une structure contenant toute l'arborescence
120
-	//
121
-
122
-	include_spip('base/abstract_sql');
123
-	$q = sql_select("id_rubrique, id_parent, titre, statut, lang, langue_choisie", "spip_rubriques", ($type == 'breve' ?  ' id_parent=0 ' : ''), '', "0+titre,titre");
124
-	while ($r = sql_fetch($q)) {
125
-		if (autoriser('voir','rubrique',$r['id_rubrique'])){
126
-			// titre largeur maxi a 50
127
-			$titre = couper(supprimer_tags(typo($r['titre']))." ", 50);
128
-			if ($GLOBALS['meta']['multi_rubriques'] == 'oui'
129
-			AND ($r['langue_choisie'] == "oui" OR $r['id_parent'] == 0))
130
-				$titre .= ' ['.traduire_nom_langue($r['lang']).']';
131
-			$data[$r['id_rubrique']] = $titre;
132
-			$enfants[$r['id_parent']][] = $r['id_rubrique'];
133
-			if ($id_rubrique == $r['id_rubrique']) $id_parent = $r['id_parent'];
134
-		}
135
-	}
136
-
137
-	// si une seule rubrique comme choix possible,
138
-	// inutile de mettre le selecteur sur un choix vide par defaut
139
-	// sauf si le selecteur s'adresse a une rubrique puisque on peut la mettre a la racine dans ce cas
140
-	if (count($data)==2
141
-	  AND isset($data[0])
142
-	  AND !in_array($type,array('auteur','rubrique'))
143
-	  AND !$id_rubrique)
144
-		unset($data[0]);
145
-
146
-
147
-	$opt = sous_menu_rubriques($id_rubrique,0, 0,$data,$enfants,$idem, $restreint, $type);
148
-	$att = " id='id_parent' name='id_parent'\nclass='selecteur_parent verdana1'";
149
-
150
-	if (preg_match(',^<option[^<>]*value=.(\d*).[^<>]*>([^<]*)</option>$,',$opt,$r))
151
-	  $r = "<input$att type='hidden' value='" . $r[1] . "' />" . $r[2] ;
152
-	else 
153
-	  $r = "<select".$att." size='1'>\n$opt</select>\n";
154
-
155
-	# message pour neuneus (a supprimer ?)
109
+    $data = array();
110
+    if ($type == 'rubrique' AND autoriser('publierdans','rubrique',0))
111
+        $data[0] = _T('info_racine_site');
112
+    # premier choix = neant
113
+    # si auteur (rubriques restreintes)
114
+    # ou si creation avec id_rubrique=0
115
+    elseif ($type == 'auteur' OR !$id_rubrique)
116
+        $data[0] = '&nbsp;';
117
+
118
+    //
119
+    // creer une structure contenant toute l'arborescence
120
+    //
121
+
122
+    include_spip('base/abstract_sql');
123
+    $q = sql_select("id_rubrique, id_parent, titre, statut, lang, langue_choisie", "spip_rubriques", ($type == 'breve' ?  ' id_parent=0 ' : ''), '', "0+titre,titre");
124
+    while ($r = sql_fetch($q)) {
125
+        if (autoriser('voir','rubrique',$r['id_rubrique'])){
126
+            // titre largeur maxi a 50
127
+            $titre = couper(supprimer_tags(typo($r['titre']))." ", 50);
128
+            if ($GLOBALS['meta']['multi_rubriques'] == 'oui'
129
+            AND ($r['langue_choisie'] == "oui" OR $r['id_parent'] == 0))
130
+                $titre .= ' ['.traduire_nom_langue($r['lang']).']';
131
+            $data[$r['id_rubrique']] = $titre;
132
+            $enfants[$r['id_parent']][] = $r['id_rubrique'];
133
+            if ($id_rubrique == $r['id_rubrique']) $id_parent = $r['id_parent'];
134
+        }
135
+    }
136
+
137
+    // si une seule rubrique comme choix possible,
138
+    // inutile de mettre le selecteur sur un choix vide par defaut
139
+    // sauf si le selecteur s'adresse a une rubrique puisque on peut la mettre a la racine dans ce cas
140
+    if (count($data)==2
141
+      AND isset($data[0])
142
+      AND !in_array($type,array('auteur','rubrique'))
143
+      AND !$id_rubrique)
144
+        unset($data[0]);
145
+
146
+
147
+    $opt = sous_menu_rubriques($id_rubrique,0, 0,$data,$enfants,$idem, $restreint, $type);
148
+    $att = " id='id_parent' name='id_parent'\nclass='selecteur_parent verdana1'";
149
+
150
+    if (preg_match(',^<option[^<>]*value=.(\d*).[^<>]*>([^<]*)</option>$,',$opt,$r))
151
+        $r = "<input$att type='hidden' value='" . $r[1] . "' />" . $r[2] ;
152
+    else 
153
+        $r = "<select".$att." size='1'>\n$opt</select>\n";
154
+
155
+    # message pour neuneus (a supprimer ?)
156 156
 #	if ($type != 'auteur' AND $type != 'breve')
157 157
 #		$r .= "\n<br />"._T('texte_rappel_selection_champs');
158 158
 
159
-	return $r;
159
+    return $r;
160 160
 }
161 161
 
162 162
 /**
@@ -179,23 +179,23 @@  discard block
 block discarded – undo
179 179
  */
180 180
 function selecteur_rubrique_ajax($id_rubrique, $type, $restreint, $idem=0, $do) {
181 181
 
182
-	if ($id_rubrique) {
183
-		$titre = sql_getfetsel("titre", "spip_rubriques", "id_rubrique=".intval($id_rubrique));
184
-	} else if ($type == 'auteur')
185
-		$titre = '&nbsp;';
186
-	else
187
-		$titre = _T('info_racine_site');
182
+    if ($id_rubrique) {
183
+        $titre = sql_getfetsel("titre", "spip_rubriques", "id_rubrique=".intval($id_rubrique));
184
+    } else if ($type == 'auteur')
185
+        $titre = '&nbsp;';
186
+    else
187
+        $titre = _T('info_racine_site');
188 188
 
189
-	$titre = str_replace('&amp;', '&', entites_html(textebrut(typo($titre))));
190
-	$init = " disabled='disabled' type='text' value=\"" . $titre . "\"\nstyle='width:300px;'";
189
+    $titre = str_replace('&amp;', '&', entites_html(textebrut(typo($titre))));
190
+    $init = " disabled='disabled' type='text' value=\"" . $titre . "\"\nstyle='width:300px;'";
191 191
 
192
-	$url = generer_url_ecrire('selectionner',"id=$id_rubrique&type=$type&do=$do"
193
-	. (!$idem ? '' : "&exclus=$idem")
194
-	. ($restreint ? "" : "&racine=oui")
195
-	. (isset($GLOBALS['var_profile']) ? '&var_profile=1' : ''));
192
+    $url = generer_url_ecrire('selectionner',"id=$id_rubrique&type=$type&do=$do"
193
+    . (!$idem ? '' : "&exclus=$idem")
194
+    . ($restreint ? "" : "&racine=oui")
195
+    . (isset($GLOBALS['var_profile']) ? '&var_profile=1' : ''));
196 196
 
197 197
 
198
-	return construire_selecteur($url, '', 'selection_rubrique', 'id_parent', $init, $id_rubrique);
198
+    return construire_selecteur($url, '', 'selection_rubrique', 'id_parent', $init, $id_rubrique);
199 199
 }
200 200
 
201 201
 // construit un bloc comportant une icone clicable avec image animee a cote
@@ -206,26 +206,26 @@  discard block
 block discarded – undo
206 206
 
207 207
 // http://doc.spip.org/@construire_selecteur
208 208
 function construire_selecteur($url, $js, $idom, $name, $init='', $id=0){
209
-	$icone = (strpos($idom, 'auteur')!==false) ? 'auteur-24.png' : 'rechercher-20.png';
210
-	return
211
-	"<div class='rubrique_actuelle'><a href='#' onclick=\""
212
-	.  $js
213
-	. "return charger_node_url_si_vide('"
214
-	. $url
215
-	. "', this.parentNode.nextSibling, this.nextSibling,'',event)\" title='"._T('titre_image_selecteur')."'><img src='"
216
-	. chemin_image($icone)
217
-	. "'\nstyle='vertical-align: middle;' alt='"._T('titre_image_selecteur')."' /></a><img src='"
218
-	. chemin_image('searching.gif') 
219
-	. "' id='img_"
220
-	.  $idom
221
-	. "'\nstyle='visibility: hidden;' alt='*' />"
222
-	. "<input id='titreparent' name='titreparent'"
223
-	. $init
224
-	. " />" 
225
-	. "<input type='hidden' id='$name' name='$name' value='"
226
-	. $id
227
-	. "' /><div class='nettoyeur'></div></div><div id='"
228
-	. $idom
229
-	. "'\nstyle='display: none;'></div>";
209
+    $icone = (strpos($idom, 'auteur')!==false) ? 'auteur-24.png' : 'rechercher-20.png';
210
+    return
211
+    "<div class='rubrique_actuelle'><a href='#' onclick=\""
212
+    .  $js
213
+    . "return charger_node_url_si_vide('"
214
+    . $url
215
+    . "', this.parentNode.nextSibling, this.nextSibling,'',event)\" title='"._T('titre_image_selecteur')."'><img src='"
216
+    . chemin_image($icone)
217
+    . "'\nstyle='vertical-align: middle;' alt='"._T('titre_image_selecteur')."' /></a><img src='"
218
+    . chemin_image('searching.gif') 
219
+    . "' id='img_"
220
+    .  $idom
221
+    . "'\nstyle='visibility: hidden;' alt='*' />"
222
+    . "<input id='titreparent' name='titreparent'"
223
+    . $init
224
+    . " />" 
225
+    . "<input type='hidden' id='$name' name='$name' value='"
226
+    . $id
227
+    . "' /><div class='nettoyeur'></div></div><div id='"
228
+    . $idom
229
+    . "'\nstyle='display: none;'></div>";
230 230
 }
231 231
 ?>
Please login to merge, or discard this patch.
Spacing   +23 added lines, -23 removed lines patch added patch discarded remove patch
@@ -23,8 +23,8 @@  discard block
 block discarded – undo
23 23
 //    n'importe ou (defaut), et les breves dans les secteurs.
24 24
 // $idem : en mode rubrique = la rubrique soi-meme
25 25
 // http://doc.spip.org/@inc_chercher_rubrique_dist
26
-function inc_chercher_rubrique_dist ($id_rubrique, $type, $restreint, $idem=0, $do='aff') {
27
-	if (sql_countsel('spip_rubriques')<1)
26
+function inc_chercher_rubrique_dist($id_rubrique, $type, $restreint, $idem = 0, $do = 'aff') {
27
+	if (sql_countsel('spip_rubriques') < 1)
28 28
 		return '';
29 29
 
30 30
 	// Mode sans Ajax :
@@ -49,16 +49,16 @@  discard block
 block discarded – undo
49 49
 	$espace = '';
50 50
 	if (preg_match(",mozilla,i", $browser_name)) {
51 51
 		$style = "padding-$spip_lang_left: 16px; "
52
-		. "margin-$spip_lang_left: ".(($i-1)*16)."px;";
52
+		. "margin-$spip_lang_left: ".(($i - 1) * 16)."px;";
53 53
 	} else {
54 54
 		$style = '';
55
-		for ($count = 0; $count <= $i; $count ++)
55
+		for ($count = 0; $count <= $i; $count++)
56 56
 			$espace .= "&nbsp;&nbsp;&nbsp;&nbsp;";
57 57
 	}
58
-	if ($i ==1)
59
-		$espace= "";
58
+	if ($i == 1)
59
+		$espace = "";
60 60
 	$class = "niveau_$i";
61
-	return array($class,$style,$espace);
61
+	return array($class, $style, $espace);
62 62
 }
63 63
 
64 64
 // http://doc.spip.org/@sous_menu_rubriques
@@ -93,10 +93,10 @@  discard block
 block discarded – undo
93 93
 	if (isset($enfants[$root]))
94 94
 		foreach ($enfants[$root] as $sousrub)
95 95
 			$sous .= sous_menu_rubriques($id_rubrique, $sousrub,
96
-				$niv+1, $data, $enfants, $exclus, $restreint, $type);
96
+				$niv + 1, $data, $enfants, $exclus, $restreint, $type);
97 97
 
98 98
 	// si l'objet a deplacer est publie, verifier qu'on a acces aux rubriques
99
-	if ($restreint AND $root!=$id_rubrique AND !autoriser('publierdans','rubrique',$root))
99
+	if ($restreint AND $root != $id_rubrique AND !autoriser('publierdans', 'rubrique', $root))
100 100
 		return $sous;
101 101
 
102 102
 	// et voila le travail
@@ -105,9 +105,9 @@  discard block
 block discarded – undo
105 105
 
106 106
 // Le selecteur de rubriques en mode classique (menu)
107 107
 // http://doc.spip.org/@selecteur_rubrique_html
108
-function selecteur_rubrique_html($id_rubrique, $type, $restreint, $idem=0) {
108
+function selecteur_rubrique_html($id_rubrique, $type, $restreint, $idem = 0) {
109 109
 	$data = array();
110
-	if ($type == 'rubrique' AND autoriser('publierdans','rubrique',0))
110
+	if ($type == 'rubrique' AND autoriser('publierdans', 'rubrique', 0))
111 111
 		$data[0] = _T('info_racine_site');
112 112
 	# premier choix = neant
113 113
 	# si auteur (rubriques restreintes)
@@ -120,9 +120,9 @@  discard block
 block discarded – undo
120 120
 	//
121 121
 
122 122
 	include_spip('base/abstract_sql');
123
-	$q = sql_select("id_rubrique, id_parent, titre, statut, lang, langue_choisie", "spip_rubriques", ($type == 'breve' ?  ' id_parent=0 ' : ''), '', "0+titre,titre");
123
+	$q = sql_select("id_rubrique, id_parent, titre, statut, lang, langue_choisie", "spip_rubriques", ($type == 'breve' ? ' id_parent=0 ' : ''), '', "0+titre,titre");
124 124
 	while ($r = sql_fetch($q)) {
125
-		if (autoriser('voir','rubrique',$r['id_rubrique'])){
125
+		if (autoriser('voir', 'rubrique', $r['id_rubrique'])) {
126 126
 			// titre largeur maxi a 50
127 127
 			$titre = couper(supprimer_tags(typo($r['titre']))." ", 50);
128 128
 			if ($GLOBALS['meta']['multi_rubriques'] == 'oui'
@@ -137,18 +137,18 @@  discard block
 block discarded – undo
137 137
 	// si une seule rubrique comme choix possible,
138 138
 	// inutile de mettre le selecteur sur un choix vide par defaut
139 139
 	// sauf si le selecteur s'adresse a une rubrique puisque on peut la mettre a la racine dans ce cas
140
-	if (count($data)==2
140
+	if (count($data) == 2
141 141
 	  AND isset($data[0])
142
-	  AND !in_array($type,array('auteur','rubrique'))
142
+	  AND !in_array($type, array('auteur', 'rubrique'))
143 143
 	  AND !$id_rubrique)
144 144
 		unset($data[0]);
145 145
 
146 146
 
147
-	$opt = sous_menu_rubriques($id_rubrique,0, 0,$data,$enfants,$idem, $restreint, $type);
147
+	$opt = sous_menu_rubriques($id_rubrique, 0, 0, $data, $enfants, $idem, $restreint, $type);
148 148
 	$att = " id='id_parent' name='id_parent'\nclass='selecteur_parent verdana1'";
149 149
 
150
-	if (preg_match(',^<option[^<>]*value=.(\d*).[^<>]*>([^<]*)</option>$,',$opt,$r))
151
-	  $r = "<input$att type='hidden' value='" . $r[1] . "' />" . $r[2] ;
150
+	if (preg_match(',^<option[^<>]*value=.(\d*).[^<>]*>([^<]*)</option>$,', $opt, $r))
151
+	  $r = "<input$att type='hidden' value='".$r[1]."' />".$r[2];
152 152
 	else 
153 153
 	  $r = "<select".$att." size='1'>\n$opt</select>\n";
154 154
 
@@ -177,7 +177,7 @@  discard block
 block discarded – undo
177 177
  * @param string $do
178 178
  * @return string
179 179
  */
180
-function selecteur_rubrique_ajax($id_rubrique, $type, $restreint, $idem=0, $do) {
180
+function selecteur_rubrique_ajax($id_rubrique, $type, $restreint, $idem = 0, $do) {
181 181
 
182 182
 	if ($id_rubrique) {
183 183
 		$titre = sql_getfetsel("titre", "spip_rubriques", "id_rubrique=".intval($id_rubrique));
@@ -187,9 +187,9 @@  discard block
 block discarded – undo
187 187
 		$titre = _T('info_racine_site');
188 188
 
189 189
 	$titre = str_replace('&amp;', '&', entites_html(textebrut(typo($titre))));
190
-	$init = " disabled='disabled' type='text' value=\"" . $titre . "\"\nstyle='width:300px;'";
190
+	$init = " disabled='disabled' type='text' value=\"".$titre."\"\nstyle='width:300px;'";
191 191
 
192
-	$url = generer_url_ecrire('selectionner',"id=$id_rubrique&type=$type&do=$do"
192
+	$url = generer_url_ecrire('selectionner', "id=$id_rubrique&type=$type&do=$do"
193 193
 	. (!$idem ? '' : "&exclus=$idem")
194 194
 	. ($restreint ? "" : "&racine=oui")
195 195
 	. (isset($GLOBALS['var_profile']) ? '&var_profile=1' : ''));
@@ -205,8 +205,8 @@  discard block
 block discarded – undo
205 205
 // getElement en mode Ajax est trop couteux).
206 206
 
207 207
 // http://doc.spip.org/@construire_selecteur
208
-function construire_selecteur($url, $js, $idom, $name, $init='', $id=0){
209
-	$icone = (strpos($idom, 'auteur')!==false) ? 'auteur-24.png' : 'rechercher-20.png';
208
+function construire_selecteur($url, $js, $idom, $name, $init = '', $id = 0) {
209
+	$icone = (strpos($idom, 'auteur') !== false) ? 'auteur-24.png' : 'rechercher-20.png';
210 210
 	return
211 211
 	"<div class='rubrique_actuelle'><a href='#' onclick=\""
212 212
 	.  $js
Please login to merge, or discard this patch.
Braces   +57 added lines, -35 removed lines patch added patch discarded remove patch
@@ -10,7 +10,9 @@  discard block
 block discarded – undo
10 10
  *  Pour plus de details voir le fichier COPYING.txt ou l'aide en ligne.   *
11 11
 \***************************************************************************/
12 12
 
13
-if (!defined('_ECRIRE_INC_VERSION')) return;
13
+if (!defined('_ECRIRE_INC_VERSION')) {
14
+    return;
15
+}
14 16
 
15 17
 define('_SPIP_SELECT_RUBRIQUES', 20); /* mettre 100000 pour desactiver ajax */
16 18
 
@@ -24,18 +26,20 @@  discard block
 block discarded – undo
24 26
 // $idem : en mode rubrique = la rubrique soi-meme
25 27
 // http://doc.spip.org/@inc_chercher_rubrique_dist
26 28
 function inc_chercher_rubrique_dist ($id_rubrique, $type, $restreint, $idem=0, $do='aff') {
27
-	if (sql_countsel('spip_rubriques')<1)
28
-		return '';
29
+	if (sql_countsel('spip_rubriques')<1) {
30
+			return '';
31
+	}
29 32
 
30 33
 	// Mode sans Ajax :
31 34
 	// - soit parce que le cookie ajax n'est pas la
32 35
 	// - soit parce qu'il y a peu de rubriques
33 36
 	if (_SPIP_AJAX < 1
34 37
 	OR $type == 'breve'
35
-	OR sql_countsel('spip_rubriques') < _SPIP_SELECT_RUBRIQUES)
36
-		return selecteur_rubrique_html($id_rubrique, $type, $restreint, $idem);
37
-
38
-	else return selecteur_rubrique_ajax($id_rubrique, $type, $restreint, $idem, $do);
38
+	OR sql_countsel('spip_rubriques') < _SPIP_SELECT_RUBRIQUES) {
39
+			return selecteur_rubrique_html($id_rubrique, $type, $restreint, $idem);
40
+	} else {
41
+	    return selecteur_rubrique_ajax($id_rubrique, $type, $restreint, $idem, $do);
42
+	}
39 43
 
40 44
 }
41 45
 
@@ -52,11 +56,13 @@  discard block
 block discarded – undo
52 56
 		. "margin-$spip_lang_left: ".(($i-1)*16)."px;";
53 57
 	} else {
54 58
 		$style = '';
55
-		for ($count = 0; $count <= $i; $count ++)
56
-			$espace .= "&nbsp;&nbsp;&nbsp;&nbsp;";
59
+		for ($count = 0; $count <= $i; $count ++) {
60
+					$espace .= "&nbsp;&nbsp;&nbsp;&nbsp;";
61
+		}
62
+	}
63
+	if ($i ==1) {
64
+			$espace= "";
57 65
 	}
58
-	if ($i ==1)
59
-		$espace= "";
60 66
 	$class = "niveau_$i";
61 67
 	return array($class,$style,$espace);
62 68
 }
@@ -67,7 +73,9 @@  discard block
 block discarded – undo
67 73
 
68 74
 	// Si on a demande l'exclusion ne pas descendre dans la rubrique courante
69 75
 	if ($exclus > 0
70
-	AND $root == $exclus) return '';
76
+	AND $root == $exclus) {
77
+	    return '';
78
+	}
71 79
 
72 80
 	// en fonction du niveau faire un affichage plus ou moins kikoo
73 81
 
@@ -81,23 +89,29 @@  discard block
 block discarded – undo
81 89
 
82 90
 	// creer l'<option> pour la rubrique $root
83 91
 
84
-	if (isset($data[$root])) # pas de racine sauf pour les rubriques
92
+	if (isset($data[$root])) {
93
+	    # pas de racine sauf pour les rubriques
85 94
 	{
86 95
 		$r = "<option$selected value='$root' class='$class' style='$style'>$espace"
87 96
 		.$data[$root]
88 97
 		.'</option>'."\n";
89
-	} else 	$r = '';
98
+	}
99
+	} else {
100
+	    $r = '';
101
+	}
90 102
 	
91 103
 	// et le sous-menu pour ses enfants
92 104
 	$sous = '';
93
-	if (isset($enfants[$root]))
94
-		foreach ($enfants[$root] as $sousrub)
105
+	if (isset($enfants[$root])) {
106
+			foreach ($enfants[$root] as $sousrub)
95 107
 			$sous .= sous_menu_rubriques($id_rubrique, $sousrub,
96 108
 				$niv+1, $data, $enfants, $exclus, $restreint, $type);
109
+	}
97 110
 
98 111
 	// si l'objet a deplacer est publie, verifier qu'on a acces aux rubriques
99
-	if ($restreint AND $root!=$id_rubrique AND !autoriser('publierdans','rubrique',$root))
100
-		return $sous;
112
+	if ($restreint AND $root!=$id_rubrique AND !autoriser('publierdans','rubrique',$root)) {
113
+			return $sous;
114
+	}
101 115
 
102 116
 	// et voila le travail
103 117
 	return $r.$sous;
@@ -107,13 +121,15 @@  discard block
 block discarded – undo
107 121
 // http://doc.spip.org/@selecteur_rubrique_html
108 122
 function selecteur_rubrique_html($id_rubrique, $type, $restreint, $idem=0) {
109 123
 	$data = array();
110
-	if ($type == 'rubrique' AND autoriser('publierdans','rubrique',0))
111
-		$data[0] = _T('info_racine_site');
124
+	if ($type == 'rubrique' AND autoriser('publierdans','rubrique',0)) {
125
+			$data[0] = _T('info_racine_site');
126
+	}
112 127
 	# premier choix = neant
113 128
 	# si auteur (rubriques restreintes)
114 129
 	# ou si creation avec id_rubrique=0
115
-	elseif ($type == 'auteur' OR !$id_rubrique)
116
-		$data[0] = '&nbsp;';
130
+	elseif ($type == 'auteur' OR !$id_rubrique) {
131
+			$data[0] = '&nbsp;';
132
+	}
117 133
 
118 134
 	//
119 135
 	// creer une structure contenant toute l'arborescence
@@ -126,11 +142,14 @@  discard block
 block discarded – undo
126 142
 			// titre largeur maxi a 50
127 143
 			$titre = couper(supprimer_tags(typo($r['titre']))." ", 50);
128 144
 			if ($GLOBALS['meta']['multi_rubriques'] == 'oui'
129
-			AND ($r['langue_choisie'] == "oui" OR $r['id_parent'] == 0))
130
-				$titre .= ' ['.traduire_nom_langue($r['lang']).']';
145
+			AND ($r['langue_choisie'] == "oui" OR $r['id_parent'] == 0)) {
146
+							$titre .= ' ['.traduire_nom_langue($r['lang']).']';
147
+			}
131 148
 			$data[$r['id_rubrique']] = $titre;
132 149
 			$enfants[$r['id_parent']][] = $r['id_rubrique'];
133
-			if ($id_rubrique == $r['id_rubrique']) $id_parent = $r['id_parent'];
150
+			if ($id_rubrique == $r['id_rubrique']) {
151
+			    $id_parent = $r['id_parent'];
152
+			}
134 153
 		}
135 154
 	}
136 155
 
@@ -140,17 +159,19 @@  discard block
 block discarded – undo
140 159
 	if (count($data)==2
141 160
 	  AND isset($data[0])
142 161
 	  AND !in_array($type,array('auteur','rubrique'))
143
-	  AND !$id_rubrique)
144
-		unset($data[0]);
162
+	  AND !$id_rubrique) {
163
+			unset($data[0]);
164
+	}
145 165
 
146 166
 
147 167
 	$opt = sous_menu_rubriques($id_rubrique,0, 0,$data,$enfants,$idem, $restreint, $type);
148 168
 	$att = " id='id_parent' name='id_parent'\nclass='selecteur_parent verdana1'";
149 169
 
150
-	if (preg_match(',^<option[^<>]*value=.(\d*).[^<>]*>([^<]*)</option>$,',$opt,$r))
151
-	  $r = "<input$att type='hidden' value='" . $r[1] . "' />" . $r[2] ;
152
-	else 
153
-	  $r = "<select".$att." size='1'>\n$opt</select>\n";
170
+	if (preg_match(',^<option[^<>]*value=.(\d*).[^<>]*>([^<]*)</option>$,',$opt,$r)) {
171
+		  $r = "<input$att type='hidden' value='" . $r[1] . "' />" . $r[2] ;
172
+	} else {
173
+		  $r = "<select".$att." size='1'>\n$opt</select>\n";
174
+	}
154 175
 
155 176
 	# message pour neuneus (a supprimer ?)
156 177
 #	if ($type != 'auteur' AND $type != 'breve')
@@ -181,10 +202,11 @@  discard block
 block discarded – undo
181 202
 
182 203
 	if ($id_rubrique) {
183 204
 		$titre = sql_getfetsel("titre", "spip_rubriques", "id_rubrique=".intval($id_rubrique));
184
-	} else if ($type == 'auteur')
185
-		$titre = '&nbsp;';
186
-	else
187
-		$titre = _T('info_racine_site');
205
+	} else if ($type == 'auteur') {
206
+			$titre = '&nbsp;';
207
+	} else {
208
+			$titre = _T('info_racine_site');
209
+	}
188 210
 
189 211
 	$titre = str_replace('&amp;', '&', entites_html(textebrut(typo($titre))));
190 212
 	$init = " disabled='disabled' type='text' value=\"" . $titre . "\"\nstyle='width:300px;'";
Please login to merge, or discard this patch.
ecrire/install/etape_chmod.php 2 patches
Indentation   +100 added lines, -100 removed lines patch added patch discarded remove patch
@@ -23,39 +23,39 @@  discard block
 block discarded – undo
23 23
 //
24 24
 // http://doc.spip.org/@test_ecrire
25 25
 function test_ecrire($my_dir) {
26
-	static $chmod = 0;
26
+    static $chmod = 0;
27 27
 	
28
-	$ok = false;
29
-	$script = @file_exists('spip_loader.php') ? 'spip_loader.php' : $_SERVER['PHP_SELF'];
30
-	$self = basename($script);
31
-	$uid = @fileowner('.');
32
-	$uid2 = @fileowner($self);
33
-	$gid = @filegroup('.');
34
-	$gid2 = @filegroup($self);
35
-	$perms = @fileperms($self);
36
-
37
-	// Comparer l'appartenance d'un fichier cree par PHP
38
-	// avec celle du script et du repertoire courant
39
-	if(!$chmod) {
40
-		@rmdir('test');
41
-		spip_unlink('test'); // effacer au cas ou
42
-		@touch('test');
43
-		if ($uid > 0 && $uid == $uid2 && @fileowner('test') == $uid)
44
-			$chmod = 0700;
45
-		else if ($gid > 0 && $gid == $gid2 && @filegroup('test') == $gid)
46
-			$chmod = 0770;
47
-		else
48
-			$chmod = 0777;
49
-		// Appliquer de plus les droits d'acces du script
50
-		if ($perms > 0) {
51
-			$perms = ($perms & 0777) | (($perms & 0444) >> 2);
52
-			$chmod |= $perms;
53
-		}
54
-		spip_unlink('test');
55
-	}
56
-	$ok = is_dir($my_dir) && is_writable($my_dir);
57
-
58
-	return $ok ? $chmod : false;
28
+    $ok = false;
29
+    $script = @file_exists('spip_loader.php') ? 'spip_loader.php' : $_SERVER['PHP_SELF'];
30
+    $self = basename($script);
31
+    $uid = @fileowner('.');
32
+    $uid2 = @fileowner($self);
33
+    $gid = @filegroup('.');
34
+    $gid2 = @filegroup($self);
35
+    $perms = @fileperms($self);
36
+
37
+    // Comparer l'appartenance d'un fichier cree par PHP
38
+    // avec celle du script et du repertoire courant
39
+    if(!$chmod) {
40
+        @rmdir('test');
41
+        spip_unlink('test'); // effacer au cas ou
42
+        @touch('test');
43
+        if ($uid > 0 && $uid == $uid2 && @fileowner('test') == $uid)
44
+            $chmod = 0700;
45
+        else if ($gid > 0 && $gid == $gid2 && @filegroup('test') == $gid)
46
+            $chmod = 0770;
47
+        else
48
+            $chmod = 0777;
49
+        // Appliquer de plus les droits d'acces du script
50
+        if ($perms > 0) {
51
+            $perms = ($perms & 0777) | (($perms & 0444) >> 2);
52
+            $chmod |= $perms;
53
+        }
54
+        spip_unlink('test');
55
+    }
56
+    $ok = is_dir($my_dir) && is_writable($my_dir);
57
+
58
+    return $ok ? $chmod : false;
59 59
 }
60 60
 
61 61
 //
@@ -66,73 +66,73 @@  discard block
 block discarded – undo
66 66
 // http://doc.spip.org/@install_etape_chmod_dist
67 67
 function install_etape_chmod_dist()
68 68
 {
69
-	global $test_dirs;
70
-	$test_dir =  _request('test_dir');
71
-	$chmod = 0;
72
-
73
-	if ($test_dir) {
74
-		if (substr($test_dir,-1)!=='/') $test_dir .= '/';
75
-		if (!in_array($test_dir, $test_dirs)) $test_dirs[] = _DIR_RACINE  . $test_dir;
76
-	} else {
77
-		if (!_FILE_CONNECT) {
78
-			$test_dirs[] = _DIR_CONNECT;
79
-			$test_dirs[] = _DIR_CHMOD;
80
-		}
81
-	}
82
-
83
-	$bad_dirs = array();
84
-	$absent_dirs  = array();;
85
-
86
-	while (list(, $my_dir) = each($test_dirs)) {
87
-		$test = test_ecrire($my_dir);
88
-		if (!$test) {
89
-			$m = preg_replace(',^' . _DIR_RACINE . ',', '',$my_dir);
90
-			if (@file_exists($my_dir)) {
91
-				$bad_dirs["<li>".$m."</li>"] = 1;
92
-			} else
93
-				$absent_dirs["<li>".$m."</li>"] = 1;
94
-		} else $chmod = max($chmod, $test);
95
-	}
96
-
97
-	if ($bad_dirs OR $absent_dirs) {
98
-
99
-	if (!_FILE_CONNECT) {
100
-		$titre = _T('dirs_preliminaire');
101
-		$continuer = ' '._T('dirs_commencer') . '.';
102
-	} else
103
-		$titre = _T('dirs_probleme_droits');
104
-
105
-
106
-	$res = "<div align='right'>". menu_langues('var_lang_ecrire')."</div>\n";
107
-
108
-	if ($bad_dirs) {
109
-		$res .=
110
-		  _T('dirs_repertoires_suivants',
111
-		     array('bad_dirs' => join("\n", array_keys($bad_dirs)))) .
112
-		  	"<b>". _T('login_recharger')."</b>.";
113
-	}
114
-
115
-	if ($absent_dirs) {
116
-	  	$res .=
117
-			_T('dirs_repertoires_absents',
118
-			   array('bad_dirs' => join("\n", array_keys($absent_dirs)))) .
119
-			"<b>". _T('login_recharger')."</b>.";
120
-	}
121
-	$res = "<p>" . $continuer  . $res . aide ("install0", true) . "</p>";
122
-
123
-	$t = _T('login_recharger');
124
-	$t = (!$test_dir ? '' :
125
-		"<input type='hidden' name='test_dir' value='" . spip_htmlspecialchars($test_dir, ENT_QUOTES) . "' />")
126
-	. "<input type='hidden' name='etape' value='chmod' />"
127
-	. "<div style='text-align: right'><input type='submit' value='" . attribut_html($t) . "' /></div>";
128
-
129
-	echo minipres($titre, $res . generer_form_ecrire('install',  $t));
130
-
131
-	} else {
132
-		$deja = (_FILE_CONNECT AND analyse_fichier_connection(_FILE_CONNECT));
133
-		if (!$deja)
134
-			redirige_url_ecrire("install", "etape=1&chmod=".$chmod);
135
-		else	redirige_url_ecrire();
136
-	}
69
+    global $test_dirs;
70
+    $test_dir =  _request('test_dir');
71
+    $chmod = 0;
72
+
73
+    if ($test_dir) {
74
+        if (substr($test_dir,-1)!=='/') $test_dir .= '/';
75
+        if (!in_array($test_dir, $test_dirs)) $test_dirs[] = _DIR_RACINE  . $test_dir;
76
+    } else {
77
+        if (!_FILE_CONNECT) {
78
+            $test_dirs[] = _DIR_CONNECT;
79
+            $test_dirs[] = _DIR_CHMOD;
80
+        }
81
+    }
82
+
83
+    $bad_dirs = array();
84
+    $absent_dirs  = array();;
85
+
86
+    while (list(, $my_dir) = each($test_dirs)) {
87
+        $test = test_ecrire($my_dir);
88
+        if (!$test) {
89
+            $m = preg_replace(',^' . _DIR_RACINE . ',', '',$my_dir);
90
+            if (@file_exists($my_dir)) {
91
+                $bad_dirs["<li>".$m."</li>"] = 1;
92
+            } else
93
+                $absent_dirs["<li>".$m."</li>"] = 1;
94
+        } else $chmod = max($chmod, $test);
95
+    }
96
+
97
+    if ($bad_dirs OR $absent_dirs) {
98
+
99
+    if (!_FILE_CONNECT) {
100
+        $titre = _T('dirs_preliminaire');
101
+        $continuer = ' '._T('dirs_commencer') . '.';
102
+    } else
103
+        $titre = _T('dirs_probleme_droits');
104
+
105
+
106
+    $res = "<div align='right'>". menu_langues('var_lang_ecrire')."</div>\n";
107
+
108
+    if ($bad_dirs) {
109
+        $res .=
110
+            _T('dirs_repertoires_suivants',
111
+                array('bad_dirs' => join("\n", array_keys($bad_dirs)))) .
112
+                "<b>". _T('login_recharger')."</b>.";
113
+    }
114
+
115
+    if ($absent_dirs) {
116
+            $res .=
117
+            _T('dirs_repertoires_absents',
118
+                array('bad_dirs' => join("\n", array_keys($absent_dirs)))) .
119
+            "<b>". _T('login_recharger')."</b>.";
120
+    }
121
+    $res = "<p>" . $continuer  . $res . aide ("install0", true) . "</p>";
122
+
123
+    $t = _T('login_recharger');
124
+    $t = (!$test_dir ? '' :
125
+        "<input type='hidden' name='test_dir' value='" . spip_htmlspecialchars($test_dir, ENT_QUOTES) . "' />")
126
+    . "<input type='hidden' name='etape' value='chmod' />"
127
+    . "<div style='text-align: right'><input type='submit' value='" . attribut_html($t) . "' /></div>";
128
+
129
+    echo minipres($titre, $res . generer_form_ecrire('install',  $t));
130
+
131
+    } else {
132
+        $deja = (_FILE_CONNECT AND analyse_fichier_connection(_FILE_CONNECT));
133
+        if (!$deja)
134
+            redirige_url_ecrire("install", "etape=1&chmod=".$chmod);
135
+        else	redirige_url_ecrire();
136
+    }
137 137
 }
138 138
 ?>
Please login to merge, or discard this patch.
Spacing   +16 added lines, -17 removed lines patch added patch discarded remove patch
@@ -36,7 +36,7 @@  discard block
 block discarded – undo
36 36
 
37 37
 	// Comparer l'appartenance d'un fichier cree par PHP
38 38
 	// avec celle du script et du repertoire courant
39
-	if(!$chmod) {
39
+	if (!$chmod) {
40 40
 		@rmdir('test');
41 41
 		spip_unlink('test'); // effacer au cas ou
42 42
 		@touch('test');
@@ -67,12 +67,12 @@  discard block
 block discarded – undo
67 67
 function install_etape_chmod_dist()
68 68
 {
69 69
 	global $test_dirs;
70
-	$test_dir =  _request('test_dir');
70
+	$test_dir = _request('test_dir');
71 71
 	$chmod = 0;
72 72
 
73 73
 	if ($test_dir) {
74
-		if (substr($test_dir,-1)!=='/') $test_dir .= '/';
75
-		if (!in_array($test_dir, $test_dirs)) $test_dirs[] = _DIR_RACINE  . $test_dir;
74
+		if (substr($test_dir, -1) !== '/') $test_dir .= '/';
75
+		if (!in_array($test_dir, $test_dirs)) $test_dirs[] = _DIR_RACINE.$test_dir;
76 76
 	} else {
77 77
 		if (!_FILE_CONNECT) {
78 78
 			$test_dirs[] = _DIR_CONNECT;
@@ -81,12 +81,12 @@  discard block
 block discarded – undo
81 81
 	}
82 82
 
83 83
 	$bad_dirs = array();
84
-	$absent_dirs  = array();;
84
+	$absent_dirs = array(); ;
85 85
 
86 86
 	while (list(, $my_dir) = each($test_dirs)) {
87 87
 		$test = test_ecrire($my_dir);
88 88
 		if (!$test) {
89
-			$m = preg_replace(',^' . _DIR_RACINE . ',', '',$my_dir);
89
+			$m = preg_replace(',^'._DIR_RACINE.',', '', $my_dir);
90 90
 			if (@file_exists($my_dir)) {
91 91
 				$bad_dirs["<li>".$m."</li>"] = 1;
92 92
 			} else
@@ -98,35 +98,34 @@  discard block
 block discarded – undo
98 98
 
99 99
 	if (!_FILE_CONNECT) {
100 100
 		$titre = _T('dirs_preliminaire');
101
-		$continuer = ' '._T('dirs_commencer') . '.';
101
+		$continuer = ' '._T('dirs_commencer').'.';
102 102
 	} else
103 103
 		$titre = _T('dirs_probleme_droits');
104 104
 
105 105
 
106
-	$res = "<div align='right'>". menu_langues('var_lang_ecrire')."</div>\n";
106
+	$res = "<div align='right'>".menu_langues('var_lang_ecrire')."</div>\n";
107 107
 
108 108
 	if ($bad_dirs) {
109 109
 		$res .=
110 110
 		  _T('dirs_repertoires_suivants',
111
-		     array('bad_dirs' => join("\n", array_keys($bad_dirs)))) .
112
-		  	"<b>". _T('login_recharger')."</b>.";
111
+		     array('bad_dirs' => join("\n", array_keys($bad_dirs)))).
112
+		  	"<b>"._T('login_recharger')."</b>.";
113 113
 	}
114 114
 
115 115
 	if ($absent_dirs) {
116 116
 	  	$res .=
117 117
 			_T('dirs_repertoires_absents',
118
-			   array('bad_dirs' => join("\n", array_keys($absent_dirs)))) .
119
-			"<b>". _T('login_recharger')."</b>.";
118
+			   array('bad_dirs' => join("\n", array_keys($absent_dirs)))).
119
+			"<b>"._T('login_recharger')."</b>.";
120 120
 	}
121
-	$res = "<p>" . $continuer  . $res . aide ("install0", true) . "</p>";
121
+	$res = "<p>".$continuer.$res.aide("install0", true)."</p>";
122 122
 
123 123
 	$t = _T('login_recharger');
124
-	$t = (!$test_dir ? '' :
125
-		"<input type='hidden' name='test_dir' value='" . spip_htmlspecialchars($test_dir, ENT_QUOTES) . "' />")
124
+	$t = (!$test_dir ? '' : "<input type='hidden' name='test_dir' value='".spip_htmlspecialchars($test_dir, ENT_QUOTES)."' />")
126 125
 	. "<input type='hidden' name='etape' value='chmod' />"
127
-	. "<div style='text-align: right'><input type='submit' value='" . attribut_html($t) . "' /></div>";
126
+	. "<div style='text-align: right'><input type='submit' value='".attribut_html($t)."' /></div>";
128 127
 
129
-	echo minipres($titre, $res . generer_form_ecrire('install',  $t));
128
+	echo minipres($titre, $res.generer_form_ecrire('install', $t));
130 129
 
131 130
 	} else {
132 131
 		$deja = (_FILE_CONNECT AND analyse_fichier_connection(_FILE_CONNECT));
Please login to merge, or discard this patch.
ecrire/inc/utils.php 3 patches
Indentation   +1520 added lines, -1521 removed lines patch added patch discarded remove patch
@@ -30,47 +30,47 @@  discard block
 block discarded – undo
30 30
  * @return string
31 31
  */
32 32
 function charger_fonction($nom, $dossier='exec', $continue=false) {
33
-	static $echecs = array();
33
+    static $echecs = array();
34 34
 
35
-	if (strlen($dossier) AND substr($dossier,-1) != '/') $dossier .= '/';
36
-	$f = str_replace('/','_',$dossier) . $nom;
35
+    if (strlen($dossier) AND substr($dossier,-1) != '/') $dossier .= '/';
36
+    $f = str_replace('/','_',$dossier) . $nom;
37 37
 
38
-	if (function_exists($f))
39
-		return $f;
40
-	if (function_exists($g = $f . '_dist'))
41
-		return $g;
38
+    if (function_exists($f))
39
+        return $f;
40
+    if (function_exists($g = $f . '_dist'))
41
+        return $g;
42 42
 
43
-	if (isset($echecs[$f])) return $echecs[$f];
44
-	// Sinon charger le fichier de declaration si plausible
43
+    if (isset($echecs[$f])) return $echecs[$f];
44
+    // Sinon charger le fichier de declaration si plausible
45 45
 
46
-	if (!preg_match(',^\w+$,', $f)){
47
-		if ($continue) return false; //appel interne, on passe
48
-		include_spip('inc/minipres');
49
-		echo minipres();
50
-		exit;
51
-	}
46
+    if (!preg_match(',^\w+$,', $f)){
47
+        if ($continue) return false; //appel interne, on passe
48
+        include_spip('inc/minipres');
49
+        echo minipres();
50
+        exit;
51
+    }
52 52
 
53
-	// passer en minuscules (cf les balises de formulaires)
54
-	// et inclure le fichier
55
-	if (!$inc = include_spip($dossier.($d = strtolower($nom)))
56
-		// si le fichier truc/machin/nom.php n'existe pas,
57
-		// la fonction peut etre definie dans truc/machin.php qui regroupe plusieurs petites fonctions
58
-		AND strlen(dirname($dossier)) AND dirname($dossier)!='.')
59
-		include_spip(substr($dossier,0,-1));
60
-	if (function_exists($f)) return $f;
61
-	if (function_exists($g)) return $g;
53
+    // passer en minuscules (cf les balises de formulaires)
54
+    // et inclure le fichier
55
+    if (!$inc = include_spip($dossier.($d = strtolower($nom)))
56
+        // si le fichier truc/machin/nom.php n'existe pas,
57
+        // la fonction peut etre definie dans truc/machin.php qui regroupe plusieurs petites fonctions
58
+        AND strlen(dirname($dossier)) AND dirname($dossier)!='.')
59
+        include_spip(substr($dossier,0,-1));
60
+    if (function_exists($f)) return $f;
61
+    if (function_exists($g)) return $g;
62 62
 
63
-	if ($continue) return $echecs[$f] = false;
63
+    if ($continue) return $echecs[$f] = false;
64 64
 
65
-	// Echec : message d'erreur
66
-	spip_log("fonction $nom ($f ou $g) indisponible" .
67
-		($inc ? "" : " (fichier $d absent de $dossier)"));
65
+    // Echec : message d'erreur
66
+    spip_log("fonction $nom ($f ou $g) indisponible" .
67
+        ($inc ? "" : " (fichier $d absent de $dossier)"));
68 68
 
69
-	include_spip('inc/minipres');
70
-	echo minipres(_T('forum_titre_erreur'),
71
-		 _T('fichier_introuvable', array('fichier'=> '<b>'.spip_htmlentities($d).'</b>')),
72
-		array('all_inline'=>true,'status'=>404));
73
-	exit;
69
+    include_spip('inc/minipres');
70
+    echo minipres(_T('forum_titre_erreur'),
71
+            _T('fichier_introuvable', array('fichier'=> '<b>'.spip_htmlentities($d).'</b>')),
72
+        array('all_inline'=>true,'status'=>404));
73
+    exit;
74 74
 }
75 75
 
76 76
 /**
@@ -79,12 +79,12 @@  discard block
 block discarded – undo
79 79
  * @return bool
80 80
  */
81 81
 function include_once_check($file){
82
-	if (file_exists($file)) {include_once $file;return true;}
83
-	$crash = (isset($GLOBALS['meta']['message_crash_plugins'])?unserialize($GLOBALS['meta']['message_crash_plugins']):'');
84
-	$crash = ($crash?$crash:array());
85
-	$crash[$file] = true;
86
-	ecrire_meta('message_crash_plugins',serialize($crash));
87
-	return false;
82
+    if (file_exists($file)) {include_once $file;return true;}
83
+    $crash = (isset($GLOBALS['meta']['message_crash_plugins'])?unserialize($GLOBALS['meta']['message_crash_plugins']):'');
84
+    $crash = ($crash?$crash:array());
85
+    $crash[$file] = true;
86
+    ecrire_meta('message_crash_plugins',serialize($crash));
87
+    return false;
88 88
 }
89 89
 
90 90
 //
@@ -92,12 +92,12 @@  discard block
 block discarded – undo
92 92
 //
93 93
 // http://doc.spip.org/@include_spip
94 94
 function include_spip($f, $include = true) {
95
-	return find_in_path($f . '.php', '', $include);
95
+    return find_in_path($f . '.php', '', $include);
96 96
 }
97 97
 
98 98
 
99 99
 function require_spip($f) {
100
-	return find_in_path($f . '.php', '', 'required');
100
+    return find_in_path($f . '.php', '', 'required');
101 101
 }
102 102
 
103 103
 // un pipeline est lie a une action et une valeur
@@ -114,59 +114,59 @@  discard block
 block discarded – undo
114 114
 // on passe $val par reference pour limiter les allocations memoire
115 115
 // http://doc.spip.org/@minipipe
116 116
 function minipipe($fonc,&$val){
117
-	// fonction
118
-	if (function_exists($fonc))
119
-		$val = call_user_func($fonc, $val);
120
-	// Class::Methode
121
-	else if (preg_match("/^(\w*)::(\w*)$/S", $fonc, $regs)
122
-	AND $methode = array($regs[1], $regs[2])
123
-	AND is_callable($methode))
124
-		$val = call_user_func($methode, $val);
125
-	else {
126
-		spip_log("Erreur - '$fonc' non definie !");
127
-	}
128
-	return $val;
117
+    // fonction
118
+    if (function_exists($fonc))
119
+        $val = call_user_func($fonc, $val);
120
+    // Class::Methode
121
+    else if (preg_match("/^(\w*)::(\w*)$/S", $fonc, $regs)
122
+    AND $methode = array($regs[1], $regs[2])
123
+    AND is_callable($methode))
124
+        $val = call_user_func($methode, $val);
125
+    else {
126
+        spip_log("Erreur - '$fonc' non definie !");
127
+    }
128
+    return $val;
129 129
 }
130 130
 
131 131
 // chargement du pipeline sous la forme d'un fichier php prepare
132 132
 // http://doc.spip.org/@pipeline
133 133
 function pipeline($action, $val=null) {
134
-	static $charger;
135
-
136
-	// chargement initial des fonctions mises en cache, ou generation du cache
137
-	if (!$charger) {
138
-		if (!($ok = @is_readable($charger = _CACHE_PIPELINES))) {
139
-			include_spip('inc/plugin');
140
-			// generer les fichiers php precompiles
141
-			// de chargement des plugins et des pipelines
142
-			actualise_plugins_actifs();
143
-			if (!($ok = @is_readable($charger)))
144
-				spip_log("fichier $charger pas cree");
145
-		}
146
-
147
-		if ($ok) {
148
-			include_once $charger;
149
-		}
150
-	}
151
-
152
-	// appliquer notre fonction si elle existe
153
-	$fonc = 'execute_pipeline_'.strtolower($action);
154
-	if (function_exists($fonc)) {
155
-		$val = $fonc($val);
156
-	}
157
-	// plantage ?
158
-	else {
159
-		spip_log("fonction $fonc absente : pipeline desactive",_LOG_ERREUR);
160
-	}
161
-
162
-	// si le flux est une table avec 2 cle args&data
163
-	// on ne ressort du pipe que les donnees dans 'data'
164
-	// array_key_exists pour php 4.1.0
165
-	if (is_array($val)
166
-	  AND count($val)==2
167
-	  AND (array_key_exists('data',$val)))
168
-		$val = $val['data'];
169
-	return $val;
134
+    static $charger;
135
+
136
+    // chargement initial des fonctions mises en cache, ou generation du cache
137
+    if (!$charger) {
138
+        if (!($ok = @is_readable($charger = _CACHE_PIPELINES))) {
139
+            include_spip('inc/plugin');
140
+            // generer les fichiers php precompiles
141
+            // de chargement des plugins et des pipelines
142
+            actualise_plugins_actifs();
143
+            if (!($ok = @is_readable($charger)))
144
+                spip_log("fichier $charger pas cree");
145
+        }
146
+
147
+        if ($ok) {
148
+            include_once $charger;
149
+        }
150
+    }
151
+
152
+    // appliquer notre fonction si elle existe
153
+    $fonc = 'execute_pipeline_'.strtolower($action);
154
+    if (function_exists($fonc)) {
155
+        $val = $fonc($val);
156
+    }
157
+    // plantage ?
158
+    else {
159
+        spip_log("fonction $fonc absente : pipeline desactive",_LOG_ERREUR);
160
+    }
161
+
162
+    // si le flux est une table avec 2 cle args&data
163
+    // on ne ressort du pipe que les donnees dans 'data'
164
+    // array_key_exists pour php 4.1.0
165
+    if (is_array($val)
166
+      AND count($val)==2
167
+      AND (array_key_exists('data',$val)))
168
+        $val = $val['data'];
169
+    return $val;
170 170
 }
171 171
 
172 172
 /**
@@ -187,38 +187,38 @@  discard block
 block discarded – undo
187 187
  * @param string $logsuf  ## inutile !! a supprimer ?
188 188
  */
189 189
 function spip_log($message=NULL, $name=NULL) {
190
-	static $pre = array();
191
-	static $log;
192
-	preg_match('/^([a-z_]*)\.?(\d)?$/iS', (string) $name, $regs);
193
-	if (!isset($regs[1]) OR !$logname = $regs[1])
194
-		$logname = null;
195
-	if (!isset($regs[2]) OR !$niveau = $regs[2])
196
-		$niveau = _LOG_INFO;
197
-
198
-	if ($niveau <= (defined('_LOG_FILTRE_GRAVITE') ? _LOG_FILTRE_GRAVITE : _LOG_INFO_IMPORTANTE)) {
199
-		if (!$pre){
200
-			$pre = array(
201
-				_LOG_HS=>'HS:',
202
-				_LOG_ALERTE_ROUGE=>'ALERTE:',
203
-				_LOG_CRITIQUE=>'CRITIQUE:',
204
-				_LOG_ERREUR=>'ERREUR:',
205
-				_LOG_AVERTISSEMENT=>'WARNING:',
206
-				_LOG_INFO_IMPORTANTE=>'!INFO:',
207
-				_LOG_INFO=>'info:',
208
-				_LOG_DEBUG=>'debug:');
209
-			$log = charger_fonction('log', 'inc');
210
-		}
211
-		if (!is_string($message)) $message = var_export($message, true);
212
-		$log($pre[$niveau].' '.$message, $logname);
213
-	}
190
+    static $pre = array();
191
+    static $log;
192
+    preg_match('/^([a-z_]*)\.?(\d)?$/iS', (string) $name, $regs);
193
+    if (!isset($regs[1]) OR !$logname = $regs[1])
194
+        $logname = null;
195
+    if (!isset($regs[2]) OR !$niveau = $regs[2])
196
+        $niveau = _LOG_INFO;
197
+
198
+    if ($niveau <= (defined('_LOG_FILTRE_GRAVITE') ? _LOG_FILTRE_GRAVITE : _LOG_INFO_IMPORTANTE)) {
199
+        if (!$pre){
200
+            $pre = array(
201
+                _LOG_HS=>'HS:',
202
+                _LOG_ALERTE_ROUGE=>'ALERTE:',
203
+                _LOG_CRITIQUE=>'CRITIQUE:',
204
+                _LOG_ERREUR=>'ERREUR:',
205
+                _LOG_AVERTISSEMENT=>'WARNING:',
206
+                _LOG_INFO_IMPORTANTE=>'!INFO:',
207
+                _LOG_INFO=>'info:',
208
+                _LOG_DEBUG=>'debug:');
209
+            $log = charger_fonction('log', 'inc');
210
+        }
211
+        if (!is_string($message)) $message = var_export($message, true);
212
+        $log($pre[$niveau].' '.$message, $logname);
213
+    }
214 214
 }
215 215
 
216 216
 //
217 217
 // Enregistrement des journaux
218 218
 //
219 219
 function journal($phrase, $opt = array()) {
220
-	$journal = charger_fonction('journal', 'inc');
221
-	$journal($phrase, $opt);
220
+    $journal = charger_fonction('journal', 'inc');
221
+    $journal($phrase, $opt);
222 222
 }
223 223
 
224 224
 // Renvoie le _GET ou le _POST emis par l'utilisateur
@@ -226,50 +226,50 @@  discard block
 block discarded – undo
226 226
 // http://doc.spip.org/@_request
227 227
 function _request($var, $c=false) {
228 228
 
229
-	if (is_array($c))
230
-		return isset($c[$var]) ? $c[$var] : NULL;
231
-
232
-	if (isset($_GET[$var])) $a = $_GET[$var];
233
-	elseif (isset($_POST[$var])) $a = $_POST[$var];
234
-	else return NULL;
235
-
236
-	// Si on est en ajax et en POST tout a ete encode
237
-	// via encodeURIComponent, il faut donc repasser
238
-	// dans le charset local...
239
-	if (defined('_AJAX')
240
-	AND _AJAX
241
-	AND isset($GLOBALS['meta']['charset'])
242
-	AND $GLOBALS['meta']['charset'] != 'utf-8'
243
-	AND is_string($a)
244
-	// check rapide mais pas fiable
245
-	AND preg_match(',[\x80-\xFF],', $a)
246
-	// check fiable
247
-	AND include_spip('inc/charsets')
248
-	AND is_utf8($a)
249
-	) {
250
-		return importer_charset($a, 'utf-8');
251
-	}
252
-
253
-	return $a;
229
+    if (is_array($c))
230
+        return isset($c[$var]) ? $c[$var] : NULL;
231
+
232
+    if (isset($_GET[$var])) $a = $_GET[$var];
233
+    elseif (isset($_POST[$var])) $a = $_POST[$var];
234
+    else return NULL;
235
+
236
+    // Si on est en ajax et en POST tout a ete encode
237
+    // via encodeURIComponent, il faut donc repasser
238
+    // dans le charset local...
239
+    if (defined('_AJAX')
240
+    AND _AJAX
241
+    AND isset($GLOBALS['meta']['charset'])
242
+    AND $GLOBALS['meta']['charset'] != 'utf-8'
243
+    AND is_string($a)
244
+    // check rapide mais pas fiable
245
+    AND preg_match(',[\x80-\xFF],', $a)
246
+    // check fiable
247
+    AND include_spip('inc/charsets')
248
+    AND is_utf8($a)
249
+    ) {
250
+        return importer_charset($a, 'utf-8');
251
+    }
252
+
253
+    return $a;
254 254
 }
255 255
 
256 256
 // Methode set de la fonction _request()
257 257
 // Attention au cas ou l'on fait set_request('truc', NULL);
258 258
 // http://doc.spip.org/@set_request
259 259
 function set_request($var, $val = NULL, $c=false) {
260
-	if (is_array($c)) {
261
-		unset($c[$var]);
262
-		if ($val !== NULL)
263
-			$c[$var] = $val;
264
-		return $c;
265
-	}
260
+    if (is_array($c)) {
261
+        unset($c[$var]);
262
+        if ($val !== NULL)
263
+            $c[$var] = $val;
264
+        return $c;
265
+    }
266 266
 
267
-	unset($_GET[$var]);
268
-	unset($_POST[$var]);
269
-	if ($val !== NULL)
270
-		$_GET[$var] = $val;
267
+    unset($_GET[$var]);
268
+    unset($_POST[$var]);
269
+    if ($val !== NULL)
270
+        $_GET[$var] = $val;
271 271
 
272
-	return false; # n'affecte pas $c
272
+    return false; # n'affecte pas $c
273 273
 }
274 274
 
275 275
 
@@ -278,23 +278,22 @@  discard block
 block discarded – undo
278 278
  * 
279 279
  * On est sur le web, on exclut certains protocoles, 
280 280
  * notamment 'file://', 'php://' et d'autres…
281
-
282 281
  * @param string $url
283 282
  * @return bool
284 283
  */
285 284
 function tester_url_absolue($url) {
286
-	$url = trim($url);
287
-	if (preg_match(";^([a-z]{3,7}:)?//;Uims", $url, $m)) {
288
-		if (
289
-			isset($m[1])
290
-			and $p = strtolower(rtrim($m[1], ':'))
291
-			and in_array($p, array('file', 'php', 'zlib', 'glob', 'phar', 'ssh2', 'rar', 'ogg', 'expect', 'zip'))
292
-		  ) {
293
-			return false;
294
-		}
295
-		return true;
296
-	}
297
-	return false;
285
+    $url = trim($url);
286
+    if (preg_match(";^([a-z]{3,7}:)?//;Uims", $url, $m)) {
287
+        if (
288
+            isset($m[1])
289
+            and $p = strtolower(rtrim($m[1], ':'))
290
+            and in_array($p, array('file', 'php', 'zlib', 'glob', 'phar', 'ssh2', 'rar', 'ogg', 'expect', 'zip'))
291
+            ) {
292
+            return false;
293
+        }
294
+        return true;
295
+    }
296
+    return false;
298 297
 }
299 298
 
300 299
 /**
@@ -313,71 +312,71 @@  discard block
 block discarded – undo
313 312
  * @return string
314 313
  */
315 314
 function parametre_url($url, $c, $v=NULL, $sep='&amp;') {
316
-	// requete erronnee : plusieurs variable dans $c et aucun $v
317
-	if (strpos($c,"|")!==false AND is_null($v))
318
-		return null;
319
-
320
-	// lever l'#ancre
321
-	if (preg_match(',^([^#]*)(#.*)$,', $url, $r)) {
322
-		$url = $r[1];
323
-		$ancre = $r[2];
324
-	} else
325
-		$ancre = '';
326
-
327
-	// eclater
328
-	$url = preg_split(',[?]|&amp;|&,', $url);
329
-
330
-	// recuperer la base
331
-	$a = array_shift($url);
332
-	if (!$a) $a= './';
333
-
334
-	$regexp = ',^(' . str_replace('[]','\[\]',$c) . '[[]?[]]?)(=.*)?$,';
335
-	$ajouts = array_flip(explode('|',$c));
336
-	$u = is_array($v) ? $v : rawurlencode($v);
337
-	$testv = (is_array($v)?count($v):strlen($v));
338
-	// lire les variables et agir
339
-	foreach ($url as $n => $val) {
340
-		if (preg_match($regexp, urldecode($val), $r)) {
341
-			if ($v === NULL) {
342
-				return $r[2]?substr($r[2],1):'';
343
-			}
344
-			// suppression
345
-			elseif (!$testv) {
346
-				unset($url[$n]);
347
-			}
348
-	// Ajout. Pour une variable, remplacer au meme endroit,
349
-	// pour un tableau ce sera fait dans la prochaine boucle
350
-			elseif (substr($r[1],-2) != '[]') {
351
-				$url[$n] = $r[1].'='.$u;
352
-				unset($ajouts[$r[1]]);
353
-			}
354
-		}
355
-	}
356
-
357
-	// traiter les parametres pas encore trouves
358
-	if ($v === NULL
359
-	AND $args = func_get_args()
360
-	AND count($args)==2)
361
-		return $v;
362
-	elseif ($testv) {
363
-		foreach($ajouts as $k => $n) {
364
-		  if (!is_array($v))
365
-		    $url[] = $k .'=' . $u;
366
-		  else {
367
-		  	$id = (substr($k,-2) == '[]') ? $k : ($k ."[]");
368
-		    foreach ($v as $w) $url[]= $id .'=' . $w;
369
-		  }
370
-		}
371
-	}
372
-
373
-	// eliminer les vides
374
-	$url = array_filter($url);
375
-
376
-	// recomposer l'adresse
377
-	if ($url)
378
-		$a .= '?' . join($sep, $url);
379
-
380
-	return $a . $ancre;
315
+    // requete erronnee : plusieurs variable dans $c et aucun $v
316
+    if (strpos($c,"|")!==false AND is_null($v))
317
+        return null;
318
+
319
+    // lever l'#ancre
320
+    if (preg_match(',^([^#]*)(#.*)$,', $url, $r)) {
321
+        $url = $r[1];
322
+        $ancre = $r[2];
323
+    } else
324
+        $ancre = '';
325
+
326
+    // eclater
327
+    $url = preg_split(',[?]|&amp;|&,', $url);
328
+
329
+    // recuperer la base
330
+    $a = array_shift($url);
331
+    if (!$a) $a= './';
332
+
333
+    $regexp = ',^(' . str_replace('[]','\[\]',$c) . '[[]?[]]?)(=.*)?$,';
334
+    $ajouts = array_flip(explode('|',$c));
335
+    $u = is_array($v) ? $v : rawurlencode($v);
336
+    $testv = (is_array($v)?count($v):strlen($v));
337
+    // lire les variables et agir
338
+    foreach ($url as $n => $val) {
339
+        if (preg_match($regexp, urldecode($val), $r)) {
340
+            if ($v === NULL) {
341
+                return $r[2]?substr($r[2],1):'';
342
+            }
343
+            // suppression
344
+            elseif (!$testv) {
345
+                unset($url[$n]);
346
+            }
347
+    // Ajout. Pour une variable, remplacer au meme endroit,
348
+    // pour un tableau ce sera fait dans la prochaine boucle
349
+            elseif (substr($r[1],-2) != '[]') {
350
+                $url[$n] = $r[1].'='.$u;
351
+                unset($ajouts[$r[1]]);
352
+            }
353
+        }
354
+    }
355
+
356
+    // traiter les parametres pas encore trouves
357
+    if ($v === NULL
358
+    AND $args = func_get_args()
359
+    AND count($args)==2)
360
+        return $v;
361
+    elseif ($testv) {
362
+        foreach($ajouts as $k => $n) {
363
+            if (!is_array($v))
364
+            $url[] = $k .'=' . $u;
365
+            else {
366
+                $id = (substr($k,-2) == '[]') ? $k : ($k ."[]");
367
+            foreach ($v as $w) $url[]= $id .'=' . $w;
368
+            }
369
+        }
370
+    }
371
+
372
+    // eliminer les vides
373
+    $url = array_filter($url);
374
+
375
+    // recomposer l'adresse
376
+    if ($url)
377
+        $a .= '?' . join($sep, $url);
378
+
379
+    return $a . $ancre;
381 380
 }
382 381
 
383 382
 // Prend une URL et lui ajoute/retire une ancre apres l'avoir nettoyee
@@ -385,17 +384,17 @@  discard block
 block discarded – undo
385 384
 // et on remplace ceux a l'interieur ou au bout par -
386 385
 // http://doc.spip.org/@ancre_url
387 386
 function ancre_url($url, $ancre) {
388
-	// lever l'#ancre
389
-	if (preg_match(',^([^#]*)(#.*)$,', $url, $r)) {
390
-		$url = $r[1];
391
-	}
392
-	if (preg_match('/[^-_a-zA-Z0-9]+/S',$ancre)){
393
-		if (!function_exists('translitteration'))
394
-			include_spip('inc/charsets');
395
-		$ancre = preg_replace(array('/^[^-_a-zA-Z0-9]+/', '/[^-_a-zA-Z0-9]/'), array('', '-'),
396
-						translitteration($ancre));
397
-	}
398
-	return $url . (strlen($ancre) ? '#'. $ancre : '');
387
+    // lever l'#ancre
388
+    if (preg_match(',^([^#]*)(#.*)$,', $url, $r)) {
389
+        $url = $r[1];
390
+    }
391
+    if (preg_match('/[^-_a-zA-Z0-9]+/S',$ancre)){
392
+        if (!function_exists('translitteration'))
393
+            include_spip('inc/charsets');
394
+        $ancre = preg_replace(array('/^[^-_a-zA-Z0-9]+/', '/[^-_a-zA-Z0-9]/'), array('', '-'),
395
+                        translitteration($ancre));
396
+    }
397
+    return $url . (strlen($ancre) ? '#'. $ancre : '');
399 398
 }
400 399
 
401 400
 /**
@@ -407,21 +406,21 @@  discard block
 block discarded – undo
407 406
  */
408 407
 function nettoyer_uri($reset = null)
409 408
 {
410
-	static $done = false;
411
-	static $propre = '';
412
-	if (!is_null($reset)) return $propre=$reset;
413
-	if ($done) return $propre;
414
-	$done = true;
409
+    static $done = false;
410
+    static $propre = '';
411
+    if (!is_null($reset)) return $propre=$reset;
412
+    if ($done) return $propre;
413
+    $done = true;
415 414
 
416
-	$uri1 = $GLOBALS['REQUEST_URI'];
417
-	do {
418
-		$uri = $uri1;
419
-		$uri1 = preg_replace
420
-			(',([?&])(PHPSESSID|(var_[^=&]*))=[^&]*(&|$),i',
421
-			'\1', $uri);
422
-	} while ($uri<>$uri1);
415
+    $uri1 = $GLOBALS['REQUEST_URI'];
416
+    do {
417
+        $uri = $uri1;
418
+        $uri1 = preg_replace
419
+            (',([?&])(PHPSESSID|(var_[^=&]*))=[^&]*(&|$),i',
420
+            '\1', $uri);
421
+    } while ($uri<>$uri1);
423 422
 
424
-	return $propre = (preg_replace(',[?&]$,', '', $uri1));
423
+    return $propre = (preg_replace(',[?&]$,', '', $uri1));
425 424
 }
426 425
 
427 426
 
@@ -435,49 +434,49 @@  discard block
 block discarded – undo
435 434
  *    URL vers soi-même
436 435
 **/
437 436
 function self($amp = '&amp;', $root = false) {
438
-	$url = nettoyer_uri();
439
-	if (!$root
440
-		AND (
441
-			// si pas de profondeur on peut tronquer
442
-			$GLOBALS['profondeur_url']<(_DIR_RESTREINT?1:2)
443
-			// sinon c'est OK si _SET_HTML_BASE a ete force a false
444
-			OR (defined('_SET_HTML_BASE') AND !_SET_HTML_BASE))
445
-		)
446
-		$url = preg_replace(',^[^?]*/,', '', $url);
447
-	// ajouter le cas echeant les variables _POST['id_...']
448
-	foreach ($_POST as $v => $c)
449
-		if (substr($v,0,3) == 'id_')
450
-			$url = parametre_url($url, $v, $c, '&');
451
-
452
-	// supprimer les variables sans interet
453
-	if (test_espace_prive()) {
454
-		$url = preg_replace (',([?&])('
455
-		.'lang|show_docs|'
456
-		.'changer_lang|var_lang|action)=[^&]*,i', '\1', $url);
457
-		$url = preg_replace(',([?&])[&]+,', '\1', $url);
458
-		$url = preg_replace(',[&]$,', '\1', $url);
459
-	}
460
-
461
-	// eviter les hacks
462
-	include_spip('inc/filtres_mini');
463
-	$url = spip_htmlspecialchars($url);
437
+    $url = nettoyer_uri();
438
+    if (!$root
439
+        AND (
440
+            // si pas de profondeur on peut tronquer
441
+            $GLOBALS['profondeur_url']<(_DIR_RESTREINT?1:2)
442
+            // sinon c'est OK si _SET_HTML_BASE a ete force a false
443
+            OR (defined('_SET_HTML_BASE') AND !_SET_HTML_BASE))
444
+        )
445
+        $url = preg_replace(',^[^?]*/,', '', $url);
446
+    // ajouter le cas echeant les variables _POST['id_...']
447
+    foreach ($_POST as $v => $c)
448
+        if (substr($v,0,3) == 'id_')
449
+            $url = parametre_url($url, $v, $c, '&');
450
+
451
+    // supprimer les variables sans interet
452
+    if (test_espace_prive()) {
453
+        $url = preg_replace (',([?&])('
454
+        .'lang|show_docs|'
455
+        .'changer_lang|var_lang|action)=[^&]*,i', '\1', $url);
456
+        $url = preg_replace(',([?&])[&]+,', '\1', $url);
457
+        $url = preg_replace(',[&]$,', '\1', $url);
458
+    }
459
+
460
+    // eviter les hacks
461
+    include_spip('inc/filtres_mini');
462
+    $url = spip_htmlspecialchars($url);
464 463
 	
465
-	$url = str_replace(array("'", '"', '<', '[', ']'), array('%27', '%22', '%3C', '%5B', '%5D'), $url);
464
+    $url = str_replace(array("'", '"', '<', '[', ']'), array('%27', '%22', '%3C', '%5B', '%5D'), $url);
466 465
 
467
-	// &amp; ?
468
-	if ($amp != '&amp;')
469
-		$url = str_replace('&amp;', $amp, $url);
466
+    // &amp; ?
467
+    if ($amp != '&amp;')
468
+        $url = str_replace('&amp;', $amp, $url);
470 469
 
471
-	// Si ca demarre par ? ou vide, donner './'
472
-	$url = preg_replace(',^([?].*)?$,', './\1', $url);
470
+    // Si ca demarre par ? ou vide, donner './'
471
+    $url = preg_replace(',^([?].*)?$,', './\1', $url);
473 472
 
474
-	return $url;
473
+    return $url;
475 474
 }
476 475
 
477 476
 // Indique si on est dans l'espace prive
478 477
 // http://doc.spip.org/@test_espace_prive
479 478
 function test_espace_prive() {
480
-	return defined('_ESPACE_PRIVE') ? _ESPACE_PRIVE : false;
479
+    return defined('_ESPACE_PRIVE') ? _ESPACE_PRIVE : false;
481 480
 }
482 481
 
483 482
 /**
@@ -488,7 +487,7 @@  discard block
 block discarded – undo
488 487
  * @return bool
489 488
  */
490 489
 function test_plugin_actif($plugin){
491
-	return ($plugin AND defined('_DIR_PLUGIN_'.strtoupper($plugin)))? true:false;
490
+    return ($plugin AND defined('_DIR_PLUGIN_'.strtoupper($plugin)))? true:false;
492 491
 }
493 492
 
494 493
 /**
@@ -503,49 +502,49 @@  discard block
 block discarded – undo
503 502
  * @return mixed|string
504 503
  */
505 504
 function _T($texte, $args=array(), $options=array()) {
506
-	static $traduire=false ;
507
-	$o = array('class'=>'', 'force'=>true);
508
-	if ($options){
509
-		// support de l'ancien argument $class
510
-		if (is_string($options))
511
-			$options = array('class'=>$options);
512
-		$o = array_merge($o,$options);
513
-	}
514
-
515
- 	if (!$traduire) {
516
-		$traduire = charger_fonction('traduire', 'inc');
517
-		include_spip('inc/lang');
518
-	}
505
+    static $traduire=false ;
506
+    $o = array('class'=>'', 'force'=>true);
507
+    if ($options){
508
+        // support de l'ancien argument $class
509
+        if (is_string($options))
510
+            $options = array('class'=>$options);
511
+        $o = array_merge($o,$options);
512
+    }
513
+
514
+        if (!$traduire) {
515
+        $traduire = charger_fonction('traduire', 'inc');
516
+        include_spip('inc/lang');
517
+    }
519 518
 	
520
-	// On peut passer explicitement la langue dans le tableau
521
-	// On utilise le même nom de variable que la globale
522
-	if (isset($args['spip_lang'])){
523
-		$lang = $args['spip_lang'];
524
-		// On l'enleve pour ne pas le passer au remplacement
525
-		unset($args['spip_lang']);
526
-	}
527
-	// Sinon on prend la langue du contexte
528
-	else {
529
-		$lang = $GLOBALS['spip_lang'];
530
-	}
531
-	$text = $traduire($texte, $lang);
519
+    // On peut passer explicitement la langue dans le tableau
520
+    // On utilise le même nom de variable que la globale
521
+    if (isset($args['spip_lang'])){
522
+        $lang = $args['spip_lang'];
523
+        // On l'enleve pour ne pas le passer au remplacement
524
+        unset($args['spip_lang']);
525
+    }
526
+    // Sinon on prend la langue du contexte
527
+    else {
528
+        $lang = $GLOBALS['spip_lang'];
529
+    }
530
+    $text = $traduire($texte, $lang);
532 531
 
533
-	if (!strlen($text)){
534
-		if (!$o['force'])
535
-			return '';
532
+    if (!strlen($text)){
533
+        if (!$o['force'])
534
+            return '';
536 535
 
537
-		$text = $texte;
536
+        $text = $texte;
538 537
 
539
-		// pour les chaines non traduites, assurer un service minimum
540
-		if (!$GLOBALS['test_i18n'] AND (_request('var_mode') != 'traduction'))
541
-			$text = str_replace('_', ' ',
542
-				 (($n = strpos($text,':')) === false ? $texte :
543
-					substr($texte, $n+1)));
544
-		$o['class'] = null;
538
+        // pour les chaines non traduites, assurer un service minimum
539
+        if (!$GLOBALS['test_i18n'] AND (_request('var_mode') != 'traduction'))
540
+            $text = str_replace('_', ' ',
541
+                    (($n = strpos($text,':')) === false ? $texte :
542
+                    substr($texte, $n+1)));
543
+        $o['class'] = null;
545 544
 
546
-	}
545
+    }
547 546
 
548
-	return _L($text, $args, $o['class']);
547
+    return _L($text, $args, $o['class']);
549 548
 
550 549
 }
551 550
 
@@ -553,34 +552,34 @@  discard block
 block discarded – undo
553 552
 // Aussi appelee quand une chaine n'est pas encore dans les fichiers de langue
554 553
 // http://doc.spip.org/@_L
555 554
 function _L($text, $args=array(), $class=null) {
556
-	$f = $text;
557
-	if (is_array($args)) {
558
-		foreach ($args as $name => $value) {
559
-			if ($class)
560
-				$value = "<span class='$class'>$value</span>";
561
-			$t = str_replace ("@$name@", $value, $text);
562
-			if ($text !== $t) {unset($args[$name]); $text = $t;}
563
-		}
564
-		// Si des variables n'ont pas ete inserees, le signaler
565
-		// (chaines de langues pas a jour)
566
-		if ($args) spip_log("$f:  variables inutilisees " . join(', ', array_keys($args)),_LOG_DEBUG);
567
-	}
568
-
569
-	if (($GLOBALS['test_i18n'] OR (_request('var_mode') == 'traduction')) AND $class===null)
570
-		return "<span class=debug-traduction-erreur>$text</span>";
571
-	else
572
-		return $text;
555
+    $f = $text;
556
+    if (is_array($args)) {
557
+        foreach ($args as $name => $value) {
558
+            if ($class)
559
+                $value = "<span class='$class'>$value</span>";
560
+            $t = str_replace ("@$name@", $value, $text);
561
+            if ($text !== $t) {unset($args[$name]); $text = $t;}
562
+        }
563
+        // Si des variables n'ont pas ete inserees, le signaler
564
+        // (chaines de langues pas a jour)
565
+        if ($args) spip_log("$f:  variables inutilisees " . join(', ', array_keys($args)),_LOG_DEBUG);
566
+    }
567
+
568
+    if (($GLOBALS['test_i18n'] OR (_request('var_mode') == 'traduction')) AND $class===null)
569
+        return "<span class=debug-traduction-erreur>$text</span>";
570
+    else
571
+        return $text;
573 572
 }
574 573
 
575 574
 // Afficher "ecrire/data/" au lieu de "data/" dans les messages
576 575
 // ou tmp/ au lieu de ../tmp/
577 576
 // http://doc.spip.org/@joli_repertoire
578 577
 function joli_repertoire($rep) {
579
-	$a = substr($rep,0,1);
580
-	if ($a<>'.' AND $a<>'/')
581
-		$rep = (_DIR_RESTREINT?'':_DIR_RESTREINT_ABS).$rep;
582
-	$rep = preg_replace(',(^\.\.\/),', '', $rep);
583
-	return $rep;
578
+    $a = substr($rep,0,1);
579
+    if ($a<>'.' AND $a<>'/')
580
+        $rep = (_DIR_RESTREINT?'':_DIR_RESTREINT_ABS).$rep;
581
+    $rep = preg_replace(',(^\.\.\/),', '', $rep);
582
+    return $rep;
584 583
 }
585 584
 
586 585
 
@@ -589,27 +588,27 @@  discard block
 block discarded – undo
589 588
 //
590 589
 // http://doc.spip.org/@spip_timer
591 590
 function spip_timer($t='rien', $raw = false) {
592
-	static $time;
593
-	$a=time(); $b=microtime();
594
-	// microtime peut contenir les microsecondes et le temps
595
-	$b=explode(' ',$b);
596
-	if (count($b)==2) $a = end($b); // plus precis !
597
-	$b = reset($b);
598
-	if (!isset($time[$t])) {
599
-		$time[$t] = $a + $b;
600
-	} else {
601
-		$p = ($a + $b - $time[$t]) * 1000;
602
-		unset($time[$t]);
591
+    static $time;
592
+    $a=time(); $b=microtime();
593
+    // microtime peut contenir les microsecondes et le temps
594
+    $b=explode(' ',$b);
595
+    if (count($b)==2) $a = end($b); // plus precis !
596
+    $b = reset($b);
597
+    if (!isset($time[$t])) {
598
+        $time[$t] = $a + $b;
599
+    } else {
600
+        $p = ($a + $b - $time[$t]) * 1000;
601
+        unset($time[$t]);
603 602
 #			echo "'$p'";exit;
604
-		if ($raw) return $p;
605
-		if ($p < 1000)
606
-			$s = '';
607
-		else {
608
-			$s = sprintf("%d ", $x = floor($p/1000));
609
-			$p -= ($x*1000);
610
-		}
611
-		return $s . sprintf($s?"%07.3f ms":"%.3f ms", $p);
612
-	}
603
+        if ($raw) return $p;
604
+        if ($p < 1000)
605
+            $s = '';
606
+        else {
607
+            $s = sprintf("%d ", $x = floor($p/1000));
608
+            $p -= ($x*1000);
609
+        }
610
+        return $s . sprintf($s?"%07.3f ms":"%.3f ms", $p);
611
+    }
613 612
 }
614 613
 
615 614
 
@@ -617,16 +616,16 @@  discard block
 block discarded – undo
617 616
 // sinon renvoie True et le date sauf si ca n'est pas souhaite
618 617
 // http://doc.spip.org/@spip_touch
619 618
 function spip_touch($fichier, $duree=0, $touch=true) {
620
-	if ($duree) {
621
-		clearstatcache();
622
-		if ((@$f=filemtime($fichier)) AND ($f >= time() - $duree))
623
-			return false;
624
-	}
625
-	if ($touch!==false) {
626
-		if (!@touch($fichier)) { spip_unlink($fichier); @touch($fichier); };
627
-		@chmod($fichier, _SPIP_CHMOD & ~0111);
628
-	}
629
-	return true;
619
+    if ($duree) {
620
+        clearstatcache();
621
+        if ((@$f=filemtime($fichier)) AND ($f >= time() - $duree))
622
+            return false;
623
+    }
624
+    if ($touch!==false) {
625
+        if (!@touch($fichier)) { spip_unlink($fichier); @touch($fichier); };
626
+        @chmod($fichier, _SPIP_CHMOD & ~0111);
627
+    }
628
+    return true;
630 629
 }
631 630
 
632 631
 // Ce declencheur de tache de fond, de l'espace prive (cf inc_presentation)
@@ -638,11 +637,11 @@  discard block
 block discarded – undo
638 637
 
639 638
 // http://doc.spip.org/@action_cron
640 639
 function action_cron() {
641
-	include_spip('inc/headers');
642
-	http_status(204); // No Content
643
-	header("Connection: close");
644
-	define('_DIRECT_CRON_FORCE',true);
645
-	cron();
640
+    include_spip('inc/headers');
641
+    http_status(204); // No Content
642
+    header("Connection: close");
643
+    define('_DIRECT_CRON_FORCE',true);
644
+    cron();
646 645
 }
647 646
 
648 647
 /**
@@ -662,19 +661,19 @@  discard block
 block discarded – undo
662 661
  * @return bool
663 662
  */
664 663
 function cron ($taches=array(), $taches_old= array()) {
665
-	// si pas en mode cron force, laisser tomber.
666
-	if (!defined('_DIRECT_CRON_FORCE')) return false;
667
-	if (!is_array($taches)) $taches = $taches_old; // compat anciens appels
668
-	// si taches a inserer en base et base inaccessible, laisser tomber
669
-	// sinon on ne verifie pas la connexion tout de suite, car si ca se trouve
670
-	// queue_sleep_time_to_next_job() dira qu'il n'y a rien a faire
671
-	// et on evite d'ouvrir une connexion pour rien (utilisation de _DIRECT_CRON_FORCE dans mes_options.php)
672
-	if ($taches AND count($taches) AND !spip_connect())  return false;
673
-	spip_log("cron !",'jq'._LOG_DEBUG);
674
-	if ($genie = charger_fonction('genie', 'inc', true)) {
675
-		return $genie($taches);
676
-	}
677
-	return false;
664
+    // si pas en mode cron force, laisser tomber.
665
+    if (!defined('_DIRECT_CRON_FORCE')) return false;
666
+    if (!is_array($taches)) $taches = $taches_old; // compat anciens appels
667
+    // si taches a inserer en base et base inaccessible, laisser tomber
668
+    // sinon on ne verifie pas la connexion tout de suite, car si ca se trouve
669
+    // queue_sleep_time_to_next_job() dira qu'il n'y a rien a faire
670
+    // et on evite d'ouvrir une connexion pour rien (utilisation de _DIRECT_CRON_FORCE dans mes_options.php)
671
+    if ($taches AND count($taches) AND !spip_connect())  return false;
672
+    spip_log("cron !",'jq'._LOG_DEBUG);
673
+    if ($genie = charger_fonction('genie', 'inc', true)) {
674
+        return $genie($taches);
675
+    }
676
+    return false;
678 677
 }
679 678
 
680 679
 /**
@@ -700,8 +699,8 @@  discard block
 block discarded – undo
700 699
  *	id of job
701 700
  */
702 701
 function job_queue_add($function, $description, $arguments = array(), $file = '', $no_duplicate = FALSE, $time=0, $priority=0) {
703
-	include_spip('inc/queue');
704
-	return queue_add_job($function, $description, $arguments, $file, $no_duplicate, $time, $priority);
702
+    include_spip('inc/queue');
703
+    return queue_add_job($function, $description, $arguments, $file, $no_duplicate, $time, $priority);
705 704
 }
706 705
 
707 706
 /**
@@ -711,8 +710,8 @@  discard block
 block discarded – undo
711 710
  * @return bool
712 711
  */
713 712
 function job_queue_remove($id_job){
714
-	include_spip('inc/queue');
715
-	return queue_remove_job($id_job);
713
+    include_spip('inc/queue');
714
+    return queue_remove_job($id_job);
716 715
 }
717 716
 
718 717
 /**
@@ -724,8 +723,8 @@  discard block
 block discarded – undo
724 723
  *  or an array of simple array to link multiples objet in one time
725 724
  */
726 725
 function job_queue_link($id_job,$objets){
727
-	include_spip('inc/queue');
728
-	return queue_link_job($id_job,$objets);
726
+    include_spip('inc/queue');
727
+    return queue_link_job($id_job,$objets);
729 728
 }
730 729
 
731 730
 
@@ -742,62 +741,62 @@  discard block
 block discarded – undo
742 741
  * @return int
743 742
  */
744 743
 function queue_sleep_time_to_next_job($force=null) {
745
-	static $queue_next_job_time = -1;
746
-	if ($force===true)
747
-		$queue_next_job_time = -1;
748
-	elseif ($force)
749
-		$queue_next_job_time = $force;
750
-
751
-	if ($queue_next_job_time==-1) {
752
-		define('_JQ_NEXT_JOB_TIME_FILENAME',_DIR_TMP . "job_queue_next.txt");
753
-		// utiliser un cache memoire si dispo
754
-		if (include_spip('inc/memoization') AND defined('_MEMOIZE_MEMORY') AND _MEMOIZE_MEMORY) {
755
-			$queue_next_job_time = cache_get(_JQ_NEXT_JOB_TIME_FILENAME);
756
-		}
757
-		else {
758
-			$queue_next_job_time = null;
759
-			if (lire_fichier(_JQ_NEXT_JOB_TIME_FILENAME, $contenu))
760
-				$queue_next_job_time = intval($contenu);
761
-		}
762
-	}
763
-
764
-	if (is_null($queue_next_job_time))
765
-		return null;
766
-	if (!$_SERVER['REQUEST_TIME'])
767
-		$_SERVER['REQUEST_TIME'] = time();
768
-	return $queue_next_job_time-$_SERVER['REQUEST_TIME'];
744
+    static $queue_next_job_time = -1;
745
+    if ($force===true)
746
+        $queue_next_job_time = -1;
747
+    elseif ($force)
748
+        $queue_next_job_time = $force;
749
+
750
+    if ($queue_next_job_time==-1) {
751
+        define('_JQ_NEXT_JOB_TIME_FILENAME',_DIR_TMP . "job_queue_next.txt");
752
+        // utiliser un cache memoire si dispo
753
+        if (include_spip('inc/memoization') AND defined('_MEMOIZE_MEMORY') AND _MEMOIZE_MEMORY) {
754
+            $queue_next_job_time = cache_get(_JQ_NEXT_JOB_TIME_FILENAME);
755
+        }
756
+        else {
757
+            $queue_next_job_time = null;
758
+            if (lire_fichier(_JQ_NEXT_JOB_TIME_FILENAME, $contenu))
759
+                $queue_next_job_time = intval($contenu);
760
+        }
761
+    }
762
+
763
+    if (is_null($queue_next_job_time))
764
+        return null;
765
+    if (!$_SERVER['REQUEST_TIME'])
766
+        $_SERVER['REQUEST_TIME'] = time();
767
+    return $queue_next_job_time-$_SERVER['REQUEST_TIME'];
769 768
 }
770 769
 
771 770
 
772 771
 // transformation XML des "&" en "&amp;"
773 772
 // http://doc.spip.org/@quote_amp
774 773
 function quote_amp($u) {
775
-	return preg_replace(
776
-		"/&(?![a-z]{0,4}\w{2,3};|#x?[0-9a-f]{2,5};)/i",
777
-		"&amp;",$u);
774
+    return preg_replace(
775
+        "/&(?![a-z]{0,4}\w{2,3};|#x?[0-9a-f]{2,5};)/i",
776
+        "&amp;",$u);
778 777
 }
779 778
 
780 779
 // Production d'une balise Script valide
781 780
 // http://doc.spip.org/@http_script
782 781
 function http_script($script, $src='', $noscript='') {
783
-	static $done = array();
784
-
785
-	if ($src && !isset($done[$src])){
786
-		$done[$src] = true;
787
-		$src = find_in_path($src, _JAVASCRIPT);
788
-		$src = " src='$src'";
789
-	}
790
-	else $src = '';
791
-	if ($script)
792
-		$script = ("/*<![CDATA[*/\n" .
793
-		preg_replace(',</([^>]*)>,','<\/\1>', $script) .
794
-		"/*]]>*/");
795
-	if ($noscript)
796
-		$noscript = "<noscript>\n\t$noscript\n</noscript>\n";
797
-
798
-	return ($src OR $script OR $noscript)
799
-	? "<script type='text/javascript'$src>$script</script>$noscript"
800
-	: '';
782
+    static $done = array();
783
+
784
+    if ($src && !isset($done[$src])){
785
+        $done[$src] = true;
786
+        $src = find_in_path($src, _JAVASCRIPT);
787
+        $src = " src='$src'";
788
+    }
789
+    else $src = '';
790
+    if ($script)
791
+        $script = ("/*<![CDATA[*/\n" .
792
+        preg_replace(',</([^>]*)>,','<\/\1>', $script) .
793
+        "/*]]>*/");
794
+    if ($noscript)
795
+        $noscript = "<noscript>\n\t$noscript\n</noscript>\n";
796
+
797
+    return ($src OR $script OR $noscript)
798
+    ? "<script type='text/javascript'$src>$script</script>$noscript"
799
+    : '';
801 800
 }
802 801
 
803 802
 // Transforme n'importe quel champ en une chaine utilisable
@@ -805,7 +804,7 @@  discard block
 block discarded – undo
805 804
 // < ? php $x = '[(#TEXTE|texte_script)]'; ? >
806 805
 // http://doc.spip.org/@texte_script
807 806
 function texte_script($texte) {
808
-	return str_replace('\'', '\\\'', str_replace('\\', '\\\\', $texte));
807
+    return str_replace('\'', '\\\'', str_replace('\\', '\\\\', $texte));
809 808
 }
810 809
 
811 810
 // Chaque appel a cette fonction ajoute un repertoire en tete du chemin courant (path)
@@ -816,107 +815,107 @@  discard block
 block discarded – undo
816 815
 // Exception: si un $dossier_squelette est defini, il reste en tete, pour raison historique
817 816
 // http://doc.spip.org/@_chemin
818 817
 function _chemin($dir_path=NULL){
819
-	static $path_base = NULL;
820
-	static $path_full = NULL;
821
-	if ($path_base==NULL){
822
-		// Chemin standard depuis l'espace public
823
-		$path = defined('_SPIP_PATH') ? _SPIP_PATH :
824
-			_DIR_RACINE.':'.
825
-			_DIR_RACINE.'squelettes-dist/:'.
826
-			_DIR_RACINE.'prive/:'.
827
-			_DIR_RESTREINT;
828
-		// Ajouter squelettes/
829
-		if (@is_dir(_DIR_RACINE.'squelettes'))
830
-			$path = _DIR_RACINE.'squelettes/:' . $path;
831
-		foreach (explode(':', $path) as $dir) {
832
-			if (strlen($dir) AND substr($dir,-1) != '/')
833
-				$dir .= "/";
834
-			$path_base[] = $dir;
835
-		}
836
-		$path_full = $path_base;
837
-		// Et le(s) dossier(s) des squelettes nommes
838
-		if (strlen($GLOBALS['dossier_squelettes']))
839
-			foreach (array_reverse(explode(':', $GLOBALS['dossier_squelettes'])) as $d)
840
-				array_unshift($path_full, ($d[0] == '/' ? '' : _DIR_RACINE) . $d . '/');
841
-		$GLOBALS['path_sig'] = md5(serialize($path_full));
842
-	}
843
-	if ($dir_path===NULL) return $path_full;
844
-
845
-	if (strlen($dir_path)){
846
-		$tete = "";
847
-		if (reset($path_base)==_DIR_RACINE.'squelettes/')
848
-			$tete = array_shift($path_base);
849
-		$dirs = array_reverse(explode(':',$dir_path));
850
-		foreach($dirs as $dir_path){
851
-				#if ($dir_path{0}!='/')
852
-				#	$dir_path = $dir_path;
853
-				if (substr($dir_path,-1) != '/')
854
-					$dir_path .= "/";
855
-				if (!in_array($dir_path,$path_base))
856
-					array_unshift($path_base,$dir_path);
857
-		}
858
-		if (strlen($tete))
859
-			array_unshift($path_base,$tete);
860
-	}
861
-	$path_full = $path_base;
862
-	// Et le(s) dossier(s) des squelettes nommes
863
-	if (strlen($GLOBALS['dossier_squelettes']))
864
-		foreach (array_reverse(explode(':', $GLOBALS['dossier_squelettes'])) as $d)
865
-			array_unshift($path_full, ($d[0] == '/' ? '' : _DIR_RACINE) . $d . '/');
866
-
867
-	$GLOBALS['path_sig'] = md5(serialize($path_full));
868
-	return $path_full;
818
+    static $path_base = NULL;
819
+    static $path_full = NULL;
820
+    if ($path_base==NULL){
821
+        // Chemin standard depuis l'espace public
822
+        $path = defined('_SPIP_PATH') ? _SPIP_PATH :
823
+            _DIR_RACINE.':'.
824
+            _DIR_RACINE.'squelettes-dist/:'.
825
+            _DIR_RACINE.'prive/:'.
826
+            _DIR_RESTREINT;
827
+        // Ajouter squelettes/
828
+        if (@is_dir(_DIR_RACINE.'squelettes'))
829
+            $path = _DIR_RACINE.'squelettes/:' . $path;
830
+        foreach (explode(':', $path) as $dir) {
831
+            if (strlen($dir) AND substr($dir,-1) != '/')
832
+                $dir .= "/";
833
+            $path_base[] = $dir;
834
+        }
835
+        $path_full = $path_base;
836
+        // Et le(s) dossier(s) des squelettes nommes
837
+        if (strlen($GLOBALS['dossier_squelettes']))
838
+            foreach (array_reverse(explode(':', $GLOBALS['dossier_squelettes'])) as $d)
839
+                array_unshift($path_full, ($d[0] == '/' ? '' : _DIR_RACINE) . $d . '/');
840
+        $GLOBALS['path_sig'] = md5(serialize($path_full));
841
+    }
842
+    if ($dir_path===NULL) return $path_full;
843
+
844
+    if (strlen($dir_path)){
845
+        $tete = "";
846
+        if (reset($path_base)==_DIR_RACINE.'squelettes/')
847
+            $tete = array_shift($path_base);
848
+        $dirs = array_reverse(explode(':',$dir_path));
849
+        foreach($dirs as $dir_path){
850
+                #if ($dir_path{0}!='/')
851
+                #	$dir_path = $dir_path;
852
+                if (substr($dir_path,-1) != '/')
853
+                    $dir_path .= "/";
854
+                if (!in_array($dir_path,$path_base))
855
+                    array_unshift($path_base,$dir_path);
856
+        }
857
+        if (strlen($tete))
858
+            array_unshift($path_base,$tete);
859
+    }
860
+    $path_full = $path_base;
861
+    // Et le(s) dossier(s) des squelettes nommes
862
+    if (strlen($GLOBALS['dossier_squelettes']))
863
+        foreach (array_reverse(explode(':', $GLOBALS['dossier_squelettes'])) as $d)
864
+            array_unshift($path_full, ($d[0] == '/' ? '' : _DIR_RACINE) . $d . '/');
865
+
866
+    $GLOBALS['path_sig'] = md5(serialize($path_full));
867
+    return $path_full;
869 868
 }
870 869
 
871 870
 // http://doc.spip.org/@creer_chemin
872 871
 function creer_chemin() {
873
-	$path_a = _chemin();
874
-	static $c = '';
872
+    $path_a = _chemin();
873
+    static $c = '';
875 874
 
876
-	// on calcule le chemin si le dossier skel a change
877
-	if ($c != $GLOBALS['dossier_squelettes']) {
878
-		// assurer le non plantage lors de la montee de version :
879
-		$c = $GLOBALS['dossier_squelettes'];
880
-		$path_a = _chemin(''); // forcer un recalcul du chemin
881
-	}
882
-	return $path_a;
875
+    // on calcule le chemin si le dossier skel a change
876
+    if ($c != $GLOBALS['dossier_squelettes']) {
877
+        // assurer le non plantage lors de la montee de version :
878
+        $c = $GLOBALS['dossier_squelettes'];
879
+        $path_a = _chemin(''); // forcer un recalcul du chemin
880
+    }
881
+    return $path_a;
883 882
 }
884 883
 
885 884
 
886 885
 function lister_themes_prives(){
887
-	static $themes = null;
888
-	if (is_null($themes)){
889
-		// si pas encore definie
890
-		if (!defined('_SPIP_THEME_PRIVE'))
891
-			define('_SPIP_THEME_PRIVE', 'spip');
892
-		$themes = array(_SPIP_THEME_PRIVE);
893
-		// lors d'une installation neuve, prefs n'est pas definie.
894
-		if (isset($GLOBALS['visiteur_session']['prefs'])) {
895
-			$prefs = $GLOBALS['visiteur_session']['prefs'];
896
-		} else {
897
-			$prefs = array();
898
-		}
899
-		if (is_string($prefs))
900
-			$prefs = unserialize($GLOBALS['visiteur_session']['prefs']);
901
-		if (
902
-			((isset($prefs['theme']) AND $theme = $prefs['theme'])
903
-			OR (isset($GLOBALS['theme_prive_defaut']) AND $theme = $GLOBALS['theme_prive_defaut']))
904
-			AND $theme != _SPIP_THEME_PRIVE)
905
-			array_unshift($themes,$theme); // placer le theme choisi en tete
906
-	}
907
-	return $themes;
886
+    static $themes = null;
887
+    if (is_null($themes)){
888
+        // si pas encore definie
889
+        if (!defined('_SPIP_THEME_PRIVE'))
890
+            define('_SPIP_THEME_PRIVE', 'spip');
891
+        $themes = array(_SPIP_THEME_PRIVE);
892
+        // lors d'une installation neuve, prefs n'est pas definie.
893
+        if (isset($GLOBALS['visiteur_session']['prefs'])) {
894
+            $prefs = $GLOBALS['visiteur_session']['prefs'];
895
+        } else {
896
+            $prefs = array();
897
+        }
898
+        if (is_string($prefs))
899
+            $prefs = unserialize($GLOBALS['visiteur_session']['prefs']);
900
+        if (
901
+            ((isset($prefs['theme']) AND $theme = $prefs['theme'])
902
+            OR (isset($GLOBALS['theme_prive_defaut']) AND $theme = $GLOBALS['theme_prive_defaut']))
903
+            AND $theme != _SPIP_THEME_PRIVE)
904
+            array_unshift($themes,$theme); // placer le theme choisi en tete
905
+    }
906
+    return $themes;
908 907
 }
909 908
 
910 909
 function find_in_theme($file, $subdir='', $include=false){
911
-	static $themefiles=array();
912
-	if (isset($themefiles["$subdir$file"])) return $themefiles["$subdir$file"];
913
-	$themes = lister_themes_prives();
914
-	foreach($themes as $theme){
915
-		if ($f = find_in_path($file,"prive/themes/$theme/$subdir",$include))
916
-			return $themefiles["$subdir$file"] = $f;
917
-	}
918
-	spip_log("$file introuvable dans le theme prive ".reset($themes),'theme');
919
-	return $themefiles["$subdir$file"] = "";
910
+    static $themefiles=array();
911
+    if (isset($themefiles["$subdir$file"])) return $themefiles["$subdir$file"];
912
+    $themes = lister_themes_prives();
913
+    foreach($themes as $theme){
914
+        if ($f = find_in_path($file,"prive/themes/$theme/$subdir",$include))
915
+            return $themefiles["$subdir$file"] = $f;
916
+    }
917
+    spip_log("$file introuvable dans le theme prive ".reset($themes),'theme');
918
+    return $themefiles["$subdir$file"] = "";
920 919
 }
921 920
 
922 921
 // Cherche une image dans les dossiers images
@@ -926,22 +925,22 @@  discard block
 block discarded – undo
926 925
 // dans _DIR_IMG_PACK
927 926
 // http://doc.spip.org/@chemin_image
928 927
 function chemin_image($icone){
929
-	static $icone_renommer;
930
-	// gerer le cas d'un double appel en evitant de refaire le travail inutilement
931
-	if (strpos($icone,"/")!==false AND file_exists($icone)) return $icone;
928
+    static $icone_renommer;
929
+    // gerer le cas d'un double appel en evitant de refaire le travail inutilement
930
+    if (strpos($icone,"/")!==false AND file_exists($icone)) return $icone;
932 931
 	
933
-	// si c'est un nom d'image complet (article-24.png) essayer de le renvoyer direct
934
-	if (preg_match(',[.](png|gif|jpg)$,',$icone) AND $f = find_in_theme("images/$icone"))
935
-		return $f;
936
-	// sinon passer par le module de renommage
937
-	if (is_null($icone_renommer))
938
-		$icone_renommer = charger_fonction('icone_renommer','inc',true);
939
-	if ($icone_renommer){
940
-		list($icone,$fonction) = $icone_renommer($icone,"");
941
-		if (file_exists($icone))
942
-			return $icone;
943
-	}
944
-	return find_in_path ($icone, _NOM_IMG_PACK);
932
+    // si c'est un nom d'image complet (article-24.png) essayer de le renvoyer direct
933
+    if (preg_match(',[.](png|gif|jpg)$,',$icone) AND $f = find_in_theme("images/$icone"))
934
+        return $f;
935
+    // sinon passer par le module de renommage
936
+    if (is_null($icone_renommer))
937
+        $icone_renommer = charger_fonction('icone_renommer','inc',true);
938
+    if ($icone_renommer){
939
+        list($icone,$fonction) = $icone_renommer($icone,"");
940
+        if (file_exists($icone))
941
+            return $icone;
942
+    }
943
+    return find_in_path ($icone, _NOM_IMG_PACK);
945 944
 }
946 945
 
947 946
 //
@@ -953,109 +952,109 @@  discard block
 block discarded – undo
953 952
 
954 953
 // http://doc.spip.org/@find_in_path
955 954
 function find_in_path ($file, $dirname='', $include=false) {
956
-	static $dirs=array();
957
-	static $inc = array(); # cf http://trac.rezo.net/trac/spip/changeset/14743
958
-	static $c = '';
959
-
960
-	// on calcule le chemin si le dossier skel a change
961
-	if ($c != $GLOBALS['dossier_squelettes']){
962
-		// assurer le non plantage lors de la montee de version :
963
-		$c = $GLOBALS['dossier_squelettes'];
964
-		creer_chemin(); // forcer un recalcul du chemin et la mise a jour de path_sig
965
-	}
966
-
967
-	if (isset($GLOBALS['path_files'][$GLOBALS['path_sig']][$dirname][$file])) {
968
-		if (!$GLOBALS['path_files'][$GLOBALS['path_sig']][$dirname][$file])
969
-			return false;
970
-		if ($include AND !isset($inc[$dirname][$file])) {
971
-			include_once _ROOT_CWD . $GLOBALS['path_files'][$GLOBALS['path_sig']][$dirname][$file];
972
-			$inc[$dirname][$file] = $inc[''][$dirname . $file] = true;
973
-		}
974
-		return $GLOBALS['path_files'][$GLOBALS['path_sig']][$dirname][$file];
975
-	}
976
-
977
-	$a = strrpos($file,'/');
978
-	if ($a !== false) {
979
-		$dirname .= substr($file, 0, ++$a);
980
-		$file = substr($file, $a);
981
-	}
982
-
983
-	foreach(creer_chemin() as $dir) {
984
-		if (!isset($dirs[$a = $dir . $dirname]))
985
-			$dirs[$a] = (is_dir(_ROOT_CWD . $a) || !$a) ;
986
-		if ($dirs[$a]) {
987
-			if (file_exists(_ROOT_CWD . ($a .= $file))) {
988
-				if ($include AND !isset($inc[$dirname][$file])) {
989
-					include_once _ROOT_CWD . $a;
990
-					$inc[$dirname][$file] = $inc[''][$dirname . $file] = true;
991
-				}
992
-				if (!defined('_SAUVER_CHEMIN')){
993
-					// si le chemin n'a pas encore ete charge, ne pas lever le flag, ne pas cacher
994
-					if (is_null($GLOBALS['path_files'])) return $a;
995
-					define('_SAUVER_CHEMIN', true);
996
-				}
997
-				return $GLOBALS['path_files'][$GLOBALS['path_sig']][$dirname][$file] = $GLOBALS['path_files'][$GLOBALS['path_sig']][''][$dirname . $file] = $a;
998
-			}
999
-		}
1000
-	}
1001
-
1002
-	if ($include){
1003
-		spip_log("include_spip $dirname$file non trouve");
1004
-		if ($include==='required'){
1005
-			echo '<pre>',
1006
-			"<strong>Erreur Fatale</strong><br />";
1007
-			if (function_exists('debug_print_backtrace'))
1008
-				echo debug_print_backtrace();
1009
-			echo '</pre>';
1010
-			die("Erreur interne: ne peut inclure $dirname$file");
1011
-		}
1012
-	}
1013
-
1014
-	if (!defined('_SAUVER_CHEMIN')){
1015
-		// si le chemin n'a pas encore ete charge, ne pas lever le flag, ne pas cacher
1016
-		if (is_null($GLOBALS['path_files'])) return false;
1017
-		define('_SAUVER_CHEMIN', true);
1018
-	}
1019
-	return $GLOBALS['path_files'][$GLOBALS['path_sig']][$dirname][$file] = $GLOBALS['path_files'][$GLOBALS['path_sig']][''][$dirname . $file] = false;
955
+    static $dirs=array();
956
+    static $inc = array(); # cf http://trac.rezo.net/trac/spip/changeset/14743
957
+    static $c = '';
958
+
959
+    // on calcule le chemin si le dossier skel a change
960
+    if ($c != $GLOBALS['dossier_squelettes']){
961
+        // assurer le non plantage lors de la montee de version :
962
+        $c = $GLOBALS['dossier_squelettes'];
963
+        creer_chemin(); // forcer un recalcul du chemin et la mise a jour de path_sig
964
+    }
965
+
966
+    if (isset($GLOBALS['path_files'][$GLOBALS['path_sig']][$dirname][$file])) {
967
+        if (!$GLOBALS['path_files'][$GLOBALS['path_sig']][$dirname][$file])
968
+            return false;
969
+        if ($include AND !isset($inc[$dirname][$file])) {
970
+            include_once _ROOT_CWD . $GLOBALS['path_files'][$GLOBALS['path_sig']][$dirname][$file];
971
+            $inc[$dirname][$file] = $inc[''][$dirname . $file] = true;
972
+        }
973
+        return $GLOBALS['path_files'][$GLOBALS['path_sig']][$dirname][$file];
974
+    }
975
+
976
+    $a = strrpos($file,'/');
977
+    if ($a !== false) {
978
+        $dirname .= substr($file, 0, ++$a);
979
+        $file = substr($file, $a);
980
+    }
981
+
982
+    foreach(creer_chemin() as $dir) {
983
+        if (!isset($dirs[$a = $dir . $dirname]))
984
+            $dirs[$a] = (is_dir(_ROOT_CWD . $a) || !$a) ;
985
+        if ($dirs[$a]) {
986
+            if (file_exists(_ROOT_CWD . ($a .= $file))) {
987
+                if ($include AND !isset($inc[$dirname][$file])) {
988
+                    include_once _ROOT_CWD . $a;
989
+                    $inc[$dirname][$file] = $inc[''][$dirname . $file] = true;
990
+                }
991
+                if (!defined('_SAUVER_CHEMIN')){
992
+                    // si le chemin n'a pas encore ete charge, ne pas lever le flag, ne pas cacher
993
+                    if (is_null($GLOBALS['path_files'])) return $a;
994
+                    define('_SAUVER_CHEMIN', true);
995
+                }
996
+                return $GLOBALS['path_files'][$GLOBALS['path_sig']][$dirname][$file] = $GLOBALS['path_files'][$GLOBALS['path_sig']][''][$dirname . $file] = $a;
997
+            }
998
+        }
999
+    }
1000
+
1001
+    if ($include){
1002
+        spip_log("include_spip $dirname$file non trouve");
1003
+        if ($include==='required'){
1004
+            echo '<pre>',
1005
+            "<strong>Erreur Fatale</strong><br />";
1006
+            if (function_exists('debug_print_backtrace'))
1007
+                echo debug_print_backtrace();
1008
+            echo '</pre>';
1009
+            die("Erreur interne: ne peut inclure $dirname$file");
1010
+        }
1011
+    }
1012
+
1013
+    if (!defined('_SAUVER_CHEMIN')){
1014
+        // si le chemin n'a pas encore ete charge, ne pas lever le flag, ne pas cacher
1015
+        if (is_null($GLOBALS['path_files'])) return false;
1016
+        define('_SAUVER_CHEMIN', true);
1017
+    }
1018
+    return $GLOBALS['path_files'][$GLOBALS['path_sig']][$dirname][$file] = $GLOBALS['path_files'][$GLOBALS['path_sig']][''][$dirname . $file] = false;
1020 1019
 }
1021 1020
 
1022 1021
 function clear_path_cache(){
1023
-	$GLOBALS['path_files'] = array();
1024
-	spip_unlink(_CACHE_CHEMIN);
1022
+    $GLOBALS['path_files'] = array();
1023
+    spip_unlink(_CACHE_CHEMIN);
1025 1024
 }
1026 1025
 function load_path_cache(){
1027
-	// charger le path des plugins
1028
-	if (@is_readable(_CACHE_PLUGINS_PATH)){
1029
-		include_once(_CACHE_PLUGINS_PATH);
1030
-	}
1031
-	$GLOBALS['path_files'] = array();
1032
-	// si le visiteur est admin,
1033
-	// on ne recharge pas le cache pour forcer sa mise a jour
1034
-	if (
1035
-		// la session n'est pas encore chargee a ce moment, on ne peut donc pas s'y fier
1036
-		//AND (!isset($GLOBALS['visiteur_session']['statut']) OR $GLOBALS['visiteur_session']['statut']!='0minirezo')
1037
-		// utiliser le cookie est un pis aller qui marche 'en general'
1038
-		// on blinde par un second test au moment de la lecture de la session
1039
-		// !isset($_COOKIE[$GLOBALS['cookie_prefix'].'_admin'])
1040
-		// et en ignorant ce cache en cas de recalcul explicite
1041
-		!_request('var_mode')
1042
-		){
1043
-		// on essaye de lire directement sans verrou pour aller plus vite
1044
-		if ($contenu = spip_file_get_contents(_CACHE_CHEMIN)){
1045
-			// mais si semble corrompu on relit avec un verrou
1046
-			if (!$GLOBALS['path_files']=unserialize($contenu)){
1047
-				lire_fichier(_CACHE_CHEMIN,$contenu);
1048
-				if (!$GLOBALS['path_files']=unserialize($contenu))
1049
-					$GLOBALS['path_files'] = array();
1050
-			}
1051
-		}
1052
-	}
1026
+    // charger le path des plugins
1027
+    if (@is_readable(_CACHE_PLUGINS_PATH)){
1028
+        include_once(_CACHE_PLUGINS_PATH);
1029
+    }
1030
+    $GLOBALS['path_files'] = array();
1031
+    // si le visiteur est admin,
1032
+    // on ne recharge pas le cache pour forcer sa mise a jour
1033
+    if (
1034
+        // la session n'est pas encore chargee a ce moment, on ne peut donc pas s'y fier
1035
+        //AND (!isset($GLOBALS['visiteur_session']['statut']) OR $GLOBALS['visiteur_session']['statut']!='0minirezo')
1036
+        // utiliser le cookie est un pis aller qui marche 'en general'
1037
+        // on blinde par un second test au moment de la lecture de la session
1038
+        // !isset($_COOKIE[$GLOBALS['cookie_prefix'].'_admin'])
1039
+        // et en ignorant ce cache en cas de recalcul explicite
1040
+        !_request('var_mode')
1041
+        ){
1042
+        // on essaye de lire directement sans verrou pour aller plus vite
1043
+        if ($contenu = spip_file_get_contents(_CACHE_CHEMIN)){
1044
+            // mais si semble corrompu on relit avec un verrou
1045
+            if (!$GLOBALS['path_files']=unserialize($contenu)){
1046
+                lire_fichier(_CACHE_CHEMIN,$contenu);
1047
+                if (!$GLOBALS['path_files']=unserialize($contenu))
1048
+                    $GLOBALS['path_files'] = array();
1049
+            }
1050
+        }
1051
+    }
1053 1052
 }
1054 1053
 
1055 1054
 function save_path_cache(){
1056
-	if (defined('_SAUVER_CHEMIN')
1057
-		AND _SAUVER_CHEMIN)
1058
-		ecrire_fichier(_CACHE_CHEMIN,serialize($GLOBALS['path_files']));
1055
+    if (defined('_SAUVER_CHEMIN')
1056
+        AND _SAUVER_CHEMIN)
1057
+        ecrire_fichier(_CACHE_CHEMIN,serialize($GLOBALS['path_files']));
1059 1058
 }
1060 1059
 
1061 1060
 
@@ -1071,25 +1070,25 @@  discard block
 block discarded – undo
1071 1070
  */
1072 1071
 // http://doc.spip.org/@find_all_in_path
1073 1072
 function find_all_in_path($dir,$pattern, $recurs=false){
1074
-	$liste_fichiers=array();
1075
-	$maxfiles = 10000;
1076
-
1077
-	// Parcourir le chemin
1078
-	foreach (creer_chemin() as $d) {
1079
-		$f = $d.$dir;
1080
-		if (@is_dir($f)){
1081
-			$liste = preg_files($f,$pattern,$maxfiles-count($liste_fichiers),$recurs===true?array():$recurs);
1082
-			foreach($liste as $chemin){
1083
-				$nom = basename($chemin);
1084
-				// ne prendre que les fichiers pas deja trouves
1085
-				// car find_in_path prend le premier qu'il trouve,
1086
-				// les autres sont donc masques
1087
-				if (!isset($liste_fichiers[$nom]))
1088
-					$liste_fichiers[$nom] = $chemin;
1089
-			}
1090
-		}
1091
-	}
1092
-	return $liste_fichiers;
1073
+    $liste_fichiers=array();
1074
+    $maxfiles = 10000;
1075
+
1076
+    // Parcourir le chemin
1077
+    foreach (creer_chemin() as $d) {
1078
+        $f = $d.$dir;
1079
+        if (@is_dir($f)){
1080
+            $liste = preg_files($f,$pattern,$maxfiles-count($liste_fichiers),$recurs===true?array():$recurs);
1081
+            foreach($liste as $chemin){
1082
+                $nom = basename($chemin);
1083
+                // ne prendre que les fichiers pas deja trouves
1084
+                // car find_in_path prend le premier qu'il trouve,
1085
+                // les autres sont donc masques
1086
+                if (!isset($liste_fichiers[$nom]))
1087
+                    $liste_fichiers[$nom] = $chemin;
1088
+            }
1089
+        }
1090
+    }
1091
+    return $liste_fichiers;
1093 1092
 }
1094 1093
 
1095 1094
 // predicat sur les scripts de ecrire qui n'authentifient pas par cookie
@@ -1097,9 +1096,9 @@  discard block
 block discarded – undo
1097 1096
 // http://doc.spip.org/@autoriser_sans_cookie
1098 1097
 function autoriser_sans_cookie($nom)
1099 1098
 {
1100
-  static $autsanscookie = array('install', 'base_repair');
1101
-  $nom = preg_replace('/.php[3]?$/', '', basename($nom));
1102
-  return in_array($nom, $autsanscookie);
1099
+    static $autsanscookie = array('install', 'base_repair');
1100
+    $nom = preg_replace('/.php[3]?$/', '', basename($nom));
1101
+    return in_array($nom, $autsanscookie);
1103 1102
 }
1104 1103
 
1105 1104
 /**
@@ -1128,112 +1127,112 @@  discard block
 block discarded – undo
1128 1127
  */
1129 1128
 function generer_url_entite($id='', $entite='', $args='', $ancre='', $public=NULL, $type=NULL)
1130 1129
 {
1131
-	if ($public === NULL) $public = !test_espace_prive();
1132
-	$entite = objet_type($entite); // cas particulier d'appels sur objet/id_objet...
1133
-
1134
-	if (!$public) {
1135
-		if (!$entite) return '';
1136
-		if (!function_exists('generer_url_ecrire_objet'))
1137
-			include_spip('inc/urls');
1138
-		$res = generer_url_ecrire_objet($entite,$id, $args, $ancre, false);
1139
-	} else {
1140
-		if ($type === NULL) {
1141
-			$type = ($GLOBALS['type_urls'] === 'page'
1142
-				AND $GLOBALS['meta']['type_urls'])
1143
-			?  $GLOBALS['meta']['type_urls']
1144
-			:  $GLOBALS['type_urls']; // pour SPIP <2
1145
-		}
1146
-
1147
-		$f = charger_fonction($type, 'urls', true);
1148
-		// se rabattre sur les urls page si les urls perso non dispo
1149
-		if (!$f) $f = charger_fonction('page', 'urls', true);
1150
-
1151
-		// si $entite='', on veut la fonction de passage URL ==> id
1152
-		// sinon on veut effectuer le passage id ==> URL
1153
-		if (!$entite) return $f;
1154
-
1155
-		// mais d'abord il faut tester le cas des urls sur une
1156
-		// base distante
1157
-		if (is_string($public)
1158
-		AND $g = charger_fonction('connect', 'urls', true))
1159
-			$f = $g;
1160
-
1161
-		$res = $f(intval($id), $entite, $args, $ancre, $public);
1162
-
1163
-	}
1164
-	if ($res) return $res;
1165
-	// Sinon c'est un raccourci ou compat SPIP < 2
1166
-	if (!function_exists($f = 'generer_url_' . $entite)) {
1167
-		if (!function_exists($f .= '_dist')) $f = '';
1168
-	}
1169
-	if ($f) {
1170
-		$url = $f($id, $args, $ancre);
1171
-		if (strlen($args))
1172
-			$url .= strstr($url, '?')
1173
-				? '&amp;'.$args
1174
-				: '?'.$args;
1175
-		return $url;
1176
-	}
1177
-	// On a ete gentil mais la ....
1178
-	spip_log("generer_url_entite: entite $entite ($f) inconnue $type $public");
1179
-	return '';
1130
+    if ($public === NULL) $public = !test_espace_prive();
1131
+    $entite = objet_type($entite); // cas particulier d'appels sur objet/id_objet...
1132
+
1133
+    if (!$public) {
1134
+        if (!$entite) return '';
1135
+        if (!function_exists('generer_url_ecrire_objet'))
1136
+            include_spip('inc/urls');
1137
+        $res = generer_url_ecrire_objet($entite,$id, $args, $ancre, false);
1138
+    } else {
1139
+        if ($type === NULL) {
1140
+            $type = ($GLOBALS['type_urls'] === 'page'
1141
+                AND $GLOBALS['meta']['type_urls'])
1142
+            ?  $GLOBALS['meta']['type_urls']
1143
+            :  $GLOBALS['type_urls']; // pour SPIP <2
1144
+        }
1145
+
1146
+        $f = charger_fonction($type, 'urls', true);
1147
+        // se rabattre sur les urls page si les urls perso non dispo
1148
+        if (!$f) $f = charger_fonction('page', 'urls', true);
1149
+
1150
+        // si $entite='', on veut la fonction de passage URL ==> id
1151
+        // sinon on veut effectuer le passage id ==> URL
1152
+        if (!$entite) return $f;
1153
+
1154
+        // mais d'abord il faut tester le cas des urls sur une
1155
+        // base distante
1156
+        if (is_string($public)
1157
+        AND $g = charger_fonction('connect', 'urls', true))
1158
+            $f = $g;
1159
+
1160
+        $res = $f(intval($id), $entite, $args, $ancre, $public);
1161
+
1162
+    }
1163
+    if ($res) return $res;
1164
+    // Sinon c'est un raccourci ou compat SPIP < 2
1165
+    if (!function_exists($f = 'generer_url_' . $entite)) {
1166
+        if (!function_exists($f .= '_dist')) $f = '';
1167
+    }
1168
+    if ($f) {
1169
+        $url = $f($id, $args, $ancre);
1170
+        if (strlen($args))
1171
+            $url .= strstr($url, '?')
1172
+                ? '&amp;'.$args
1173
+                : '?'.$args;
1174
+        return $url;
1175
+    }
1176
+    // On a ete gentil mais la ....
1177
+    spip_log("generer_url_entite: entite $entite ($f) inconnue $type $public");
1178
+    return '';
1180 1179
 }
1181 1180
 
1182 1181
 function generer_url_ecrire_entite_edit($id, $entite, $args='', $ancre=''){
1183
-	$exec = objet_info($entite,'url_edit');
1184
-	$url = generer_url_ecrire($exec,$args);
1185
-	if (intval($id))
1186
-		$url = parametre_url($url,id_table_objet($entite),$id);
1187
-	else
1188
-		$url = parametre_url($url,'new','oui');
1189
-	if ($ancre)
1190
-		$url = ancre_url($url,$ancre);
1191
-	return $url;
1182
+    $exec = objet_info($entite,'url_edit');
1183
+    $url = generer_url_ecrire($exec,$args);
1184
+    if (intval($id))
1185
+        $url = parametre_url($url,id_table_objet($entite),$id);
1186
+    else
1187
+        $url = parametre_url($url,'new','oui');
1188
+    if ($ancre)
1189
+        $url = ancre_url($url,$ancre);
1190
+    return $url;
1192 1191
 }
1193 1192
 
1194 1193
 // http://doc.spip.org/@urls_connect_dist
1195 1194
 function urls_connect_dist($i, &$entite, $args='', $ancre='', $public=null) {
1196
-	include_spip('base/connect_sql');
1197
-	$id_type = id_table_objet($entite,$public);
1198
-	return _DIR_RACINE . get_spip_script('./')
1199
-	  . "?"._SPIP_PAGE."=$entite&$id_type=$i&connect=$public"
1200
-	  . (!$args ? '' : "&$args")
1201
-	  . (!$ancre ? '' : "#$ancre");
1195
+    include_spip('base/connect_sql');
1196
+    $id_type = id_table_objet($entite,$public);
1197
+    return _DIR_RACINE . get_spip_script('./')
1198
+        . "?"._SPIP_PAGE."=$entite&$id_type=$i&connect=$public"
1199
+        . (!$args ? '' : "&$args")
1200
+        . (!$ancre ? '' : "#$ancre");
1202 1201
 }
1203 1202
 
1204 1203
 
1205 1204
 // Transformer les caracteres utf8 d'une URL (farsi par ex) selon la RFC 1738
1206 1205
 function urlencode_1738($url) {
1207
-	if (preg_match(',[^\x00-\x7E],sS', $url)){
1208
-		$uri = '';
1209
-		for ($i=0; $i < strlen($url); $i++) {
1210
-			if (ord($a = $url[$i]) > 127)
1211
-				$a = rawurlencode($a);
1212
-			$uri .= $a;
1213
-		}
1214
-		$url = $uri;
1215
-	}
1216
-	return quote_amp($url);
1206
+    if (preg_match(',[^\x00-\x7E],sS', $url)){
1207
+        $uri = '';
1208
+        for ($i=0; $i < strlen($url); $i++) {
1209
+            if (ord($a = $url[$i]) > 127)
1210
+                $a = rawurlencode($a);
1211
+            $uri .= $a;
1212
+        }
1213
+        $url = $uri;
1214
+    }
1215
+    return quote_amp($url);
1217 1216
 }
1218 1217
 
1219 1218
 // http://doc.spip.org/@generer_url_entite_absolue
1220 1219
 function generer_url_entite_absolue($id='', $entite='', $args='', $ancre='', $connect=NULL)
1221 1220
 {
1222
-	if (!$connect) $connect = true;
1223
-	$h = generer_url_entite($id, $entite, $args, $ancre, $connect);
1224
-	if (!preg_match(',^\w+:,', $h)) {
1225
-		include_spip('inc/filtres_mini');
1226
-		$h = url_absolue($h);
1227
-	}
1228
-	return  $h;
1221
+    if (!$connect) $connect = true;
1222
+    $h = generer_url_entite($id, $entite, $args, $ancre, $connect);
1223
+    if (!preg_match(',^\w+:,', $h)) {
1224
+        include_spip('inc/filtres_mini');
1225
+        $h = url_absolue($h);
1226
+    }
1227
+    return  $h;
1229 1228
 }
1230 1229
 
1231 1230
 // Sur certains serveurs, la valeur 'Off' tient lieu de false dans certaines
1232 1231
 // variables d'environnement comme $_SERVER[HTTPS] ou ini_get(register_globals)
1233 1232
 // http://doc.spip.org/@test_valeur_serveur
1234 1233
 function test_valeur_serveur($truc) {
1235
-	if (!$truc) return false;
1236
-	return (strtolower($truc) !== 'off');
1234
+    if (!$truc) return false;
1235
+    return (strtolower($truc) !== 'off');
1237 1236
 }
1238 1237
 
1239 1238
 //
@@ -1258,51 +1257,51 @@  discard block
 block discarded – undo
1258 1257
  */
1259 1258
 function url_de_base($profondeur=null) {
1260 1259
 
1261
-	static $url = array();
1262
-	if (is_array($profondeur)) return $url = $profondeur;
1263
-	if ($profondeur===false) return $url;
1264
-
1265
-	if (is_null($profondeur)) $profondeur = $GLOBALS['profondeur_url'];
1266
-
1267
-	if (isset($url[$profondeur]))
1268
-		return $url[$profondeur];
1269
-
1270
-	$http = (
1271
-		(isset($_SERVER["SCRIPT_URI"]) AND
1272
-			substr($_SERVER["SCRIPT_URI"],0,5) == 'https')
1273
-		OR (isset($_SERVER['HTTPS']) AND
1274
-		    test_valeur_serveur($_SERVER['HTTPS']))
1275
-	) ? 'https' : 'http';
1276
-	// note : HTTP_HOST contient le :port si necessaire
1277
-	$host = $_SERVER['HTTP_HOST'];
1278
-	// si on n'a pas trouvé d'hôte du tout, en dernier recours on utilise adresse_site comme fallback
1279
-	if (is_null($host) and isset($GLOBALS['meta']['adresse_site'])) {
1280
-		$host = $GLOBALS['meta']['adresse_site'];
1281
-		if ($scheme = parse_url($host, PHP_URL_SCHEME)) {
1282
-			$http = $scheme;
1283
-			$host = str_replace("{$scheme}://", '', $host);
1284
-		}
1285
-	}
1286
-	if (isset($_SERVER['SERVER_PORT'])
1287
-		AND $port=$_SERVER['SERVER_PORT']
1288
-		AND strpos($host,":")==false){
1289
-		if ($http=="http" AND $port!=80) $host.=":$port";
1290
-		if ($http=="https" AND $port!=443) $host.=":$port";
1291
-	}
1292
-	if (!$GLOBALS['REQUEST_URI']){
1293
-		if (isset($_SERVER['REQUEST_URI'])) {
1294
-			$GLOBALS['REQUEST_URI'] = $_SERVER['REQUEST_URI'];
1295
-		} else {
1296
-			$GLOBALS['REQUEST_URI'] = $_SERVER['PHP_SELF'];
1297
-			if ($_SERVER['QUERY_STRING']
1298
-			AND !strpos($_SERVER['REQUEST_URI'], '?'))
1299
-				$GLOBALS['REQUEST_URI'] .= '?'.$_SERVER['QUERY_STRING'];
1300
-		}
1301
-	}
1302
-
1303
-	$url[$profondeur] = url_de_($http,$host,$GLOBALS['REQUEST_URI'],$profondeur);
1304
-
1305
-	return $url[$profondeur];
1260
+    static $url = array();
1261
+    if (is_array($profondeur)) return $url = $profondeur;
1262
+    if ($profondeur===false) return $url;
1263
+
1264
+    if (is_null($profondeur)) $profondeur = $GLOBALS['profondeur_url'];
1265
+
1266
+    if (isset($url[$profondeur]))
1267
+        return $url[$profondeur];
1268
+
1269
+    $http = (
1270
+        (isset($_SERVER["SCRIPT_URI"]) AND
1271
+            substr($_SERVER["SCRIPT_URI"],0,5) == 'https')
1272
+        OR (isset($_SERVER['HTTPS']) AND
1273
+            test_valeur_serveur($_SERVER['HTTPS']))
1274
+    ) ? 'https' : 'http';
1275
+    // note : HTTP_HOST contient le :port si necessaire
1276
+    $host = $_SERVER['HTTP_HOST'];
1277
+    // si on n'a pas trouvé d'hôte du tout, en dernier recours on utilise adresse_site comme fallback
1278
+    if (is_null($host) and isset($GLOBALS['meta']['adresse_site'])) {
1279
+        $host = $GLOBALS['meta']['adresse_site'];
1280
+        if ($scheme = parse_url($host, PHP_URL_SCHEME)) {
1281
+            $http = $scheme;
1282
+            $host = str_replace("{$scheme}://", '', $host);
1283
+        }
1284
+    }
1285
+    if (isset($_SERVER['SERVER_PORT'])
1286
+        AND $port=$_SERVER['SERVER_PORT']
1287
+        AND strpos($host,":")==false){
1288
+        if ($http=="http" AND $port!=80) $host.=":$port";
1289
+        if ($http=="https" AND $port!=443) $host.=":$port";
1290
+    }
1291
+    if (!$GLOBALS['REQUEST_URI']){
1292
+        if (isset($_SERVER['REQUEST_URI'])) {
1293
+            $GLOBALS['REQUEST_URI'] = $_SERVER['REQUEST_URI'];
1294
+        } else {
1295
+            $GLOBALS['REQUEST_URI'] = $_SERVER['PHP_SELF'];
1296
+            if ($_SERVER['QUERY_STRING']
1297
+            AND !strpos($_SERVER['REQUEST_URI'], '?'))
1298
+                $GLOBALS['REQUEST_URI'] .= '?'.$_SERVER['QUERY_STRING'];
1299
+        }
1300
+    }
1301
+
1302
+    $url[$profondeur] = url_de_($http,$host,$GLOBALS['REQUEST_URI'],$profondeur);
1303
+
1304
+    return $url[$profondeur];
1306 1305
 }
1307 1306
 /**
1308 1307
  * fonction testable de construction d'une url appelee par url_de_base()
@@ -1313,25 +1312,25 @@  discard block
 block discarded – undo
1313 1312
  * @return string
1314 1313
  */
1315 1314
 function url_de_($http,$host,$request,$prof=0){
1316
-	$prof = max($prof,0);
1315
+    $prof = max($prof,0);
1317 1316
 
1318
-	$myself = ltrim($request,'/');
1319
-	# supprimer la chaine de GET
1320
-	list($myself) = explode('?', $myself);
1321
-	// vieux mode HTTP qui envoie après le nom de la methode l'URL compléte
1322
-	// protocole, "://", nom du serveur avant le path dans _SERVER["REQUEST_URI"]
1323
-	if (strpos($myself,'://') !== false) {
1324
-		$myself = explode('://',$myself);
1325
-		array_shift($myself);
1326
-		$myself = implode('://',$myself);
1327
-		$myself = explode('/',$myself);
1328
-		array_shift($myself);
1329
-		$myself = implode('/',$myself);
1330
-	}
1331
-	$url = join('/', array_slice(explode('/', $myself), 0, -1-$prof)).'/';
1317
+    $myself = ltrim($request,'/');
1318
+    # supprimer la chaine de GET
1319
+    list($myself) = explode('?', $myself);
1320
+    // vieux mode HTTP qui envoie après le nom de la methode l'URL compléte
1321
+    // protocole, "://", nom du serveur avant le path dans _SERVER["REQUEST_URI"]
1322
+    if (strpos($myself,'://') !== false) {
1323
+        $myself = explode('://',$myself);
1324
+        array_shift($myself);
1325
+        $myself = implode('://',$myself);
1326
+        $myself = explode('/',$myself);
1327
+        array_shift($myself);
1328
+        $myself = implode('/',$myself);
1329
+    }
1330
+    $url = join('/', array_slice(explode('/', $myself), 0, -1-$prof)).'/';
1332 1331
 
1333
-	$url = $http.'://'.rtrim($host,'/').'/'.ltrim($url,'/');
1334
-	return $url;
1332
+    $url = $http.'://'.rtrim($host,'/').'/'.ltrim($url,'/');
1333
+    return $url;
1335 1334
 }
1336 1335
 
1337 1336
 
@@ -1345,25 +1344,25 @@  discard block
 block discarded – undo
1345 1344
 
1346 1345
 // http://doc.spip.org/@generer_url_ecrire
1347 1346
 function generer_url_ecrire($script='', $args="", $no_entities=false, $rel=false) {
1348
-	if (!$rel)
1349
-		$rel = url_de_base() . _DIR_RESTREINT_ABS . _SPIP_ECRIRE_SCRIPT;
1350
-	else if (!is_string($rel))
1351
-		$rel = _DIR_RESTREINT ? _DIR_RESTREINT :
1352
-			('./'  . _SPIP_ECRIRE_SCRIPT);
1347
+    if (!$rel)
1348
+        $rel = url_de_base() . _DIR_RESTREINT_ABS . _SPIP_ECRIRE_SCRIPT;
1349
+    else if (!is_string($rel))
1350
+        $rel = _DIR_RESTREINT ? _DIR_RESTREINT :
1351
+            ('./'  . _SPIP_ECRIRE_SCRIPT);
1353 1352
 
1354
-	@list($script, $ancre) = explode('#', $script);
1355
-	if ($script AND ($script<>'accueil' OR $rel))
1356
-		$args = "?exec=$script" . (!$args ? '' : "&$args");
1357
-	elseif ($args)
1358
-		$args ="?$args";
1359
-	if ($ancre) $args .= "#$ancre";
1360
-	return $rel . ($no_entities ? $args : str_replace('&', '&amp;', $args));
1353
+    @list($script, $ancre) = explode('#', $script);
1354
+    if ($script AND ($script<>'accueil' OR $rel))
1355
+        $args = "?exec=$script" . (!$args ? '' : "&$args");
1356
+    elseif ($args)
1357
+        $args ="?$args";
1358
+    if ($ancre) $args .= "#$ancre";
1359
+    return $rel . ($no_entities ? $args : str_replace('&', '&amp;', $args));
1361 1360
 }
1362 1361
 
1363 1362
 // http://doc.spip.org/@generer_url_retour
1364 1363
 function generer_url_retour($script, $args="")
1365 1364
 {
1366
-	return rawurlencode(generer_url_ecrire($script, $args, true, true));
1365
+    return rawurlencode(generer_url_ecrire($script, $args, true, true));
1367 1366
 }
1368 1367
 
1369 1368
 //
@@ -1374,42 +1373,42 @@  discard block
 block discarded – undo
1374 1373
 // dans le cas de '', un $default = './' peut servir (comme dans urls/page.php)
1375 1374
 // http://doc.spip.org/@get_spip_script
1376 1375
 function get_spip_script($default='') {
1377
-	# cas define('_SPIP_SCRIPT', '');
1378
-	if (_SPIP_SCRIPT)
1379
-		return _SPIP_SCRIPT;
1380
-	else
1381
-		return $default;
1376
+    # cas define('_SPIP_SCRIPT', '');
1377
+    if (_SPIP_SCRIPT)
1378
+        return _SPIP_SCRIPT;
1379
+    else
1380
+        return $default;
1382 1381
 }
1383 1382
 
1384 1383
 // http://doc.spip.org/@generer_url_public
1385 1384
 function generer_url_public($script='', $args="", $no_entities=false, $rel=true, $action='') {
1386
-	// si le script est une action (spip_pass, spip_inscription),
1387
-	// standardiser vers la nouvelle API
1385
+    // si le script est une action (spip_pass, spip_inscription),
1386
+    // standardiser vers la nouvelle API
1388 1387
 
1389
-	if (!$action) $action = get_spip_script();
1390
-	if ($script)
1391
-		$action = parametre_url($action, _SPIP_PAGE, $script, '&');
1388
+    if (!$action) $action = get_spip_script();
1389
+    if ($script)
1390
+        $action = parametre_url($action, _SPIP_PAGE, $script, '&');
1392 1391
 
1393
-	if ($args) {
1394
-		if (is_array($args)) {
1395
-			$r = '';
1396
-			foreach($args as $k => $v) $r .= '&' . $k . '=' . $v;
1397
-			$args = substr($r,1);
1398
-		}
1399
-		$action .=
1400
-			(strpos($action, '?') !== false ? '&' : '?') . $args;
1401
-	}
1402
-	if (!$no_entities)
1403
-		$action = quote_amp($action);
1392
+    if ($args) {
1393
+        if (is_array($args)) {
1394
+            $r = '';
1395
+            foreach($args as $k => $v) $r .= '&' . $k . '=' . $v;
1396
+            $args = substr($r,1);
1397
+        }
1398
+        $action .=
1399
+            (strpos($action, '?') !== false ? '&' : '?') . $args;
1400
+    }
1401
+    if (!$no_entities)
1402
+        $action = quote_amp($action);
1404 1403
 
1405
-	// ne pas generer une url avec /./?page= en cas d'url absolue et de _SPIP_SCRIPT vide
1406
-	return ($rel ? _DIR_RACINE . $action : rtrim(url_de_base(),'/') . preg_replace(",^/[.]/,","/","/$action"));
1404
+    // ne pas generer une url avec /./?page= en cas d'url absolue et de _SPIP_SCRIPT vide
1405
+    return ($rel ? _DIR_RACINE . $action : rtrim(url_de_base(),'/') . preg_replace(",^/[.]/,","/","/$action"));
1407 1406
 }
1408 1407
 
1409 1408
 // http://doc.spip.org/@generer_url_prive
1410 1409
 function generer_url_prive($script, $args="", $no_entities=false) {
1411 1410
 
1412
-	return generer_url_public($script, $args, $no_entities, false, _DIR_RESTREINT_ABS .  'prive.php');
1411
+    return generer_url_public($script, $args, $no_entities, false, _DIR_RESTREINT_ABS .  'prive.php');
1413 1412
 }
1414 1413
 
1415 1414
 // Pour les formulaires en methode POST,
@@ -1419,21 +1418,21 @@  discard block
 block discarded – undo
1419 1418
 
1420 1419
 // http://doc.spip.org/@generer_form_ecrire
1421 1420
 function generer_form_ecrire($script, $corps, $atts='', $submit='') {
1422
-	global $spip_lang_right;
1421
+    global $spip_lang_right;
1423 1422
 
1424
-	$script1 = explode('&', $script);
1425
-	$script1 = reset($script1);
1423
+    $script1 = explode('&', $script);
1424
+    $script1 = reset($script1);
1426 1425
 
1427
-	return "<form action='"
1428
-	. ($script ? generer_url_ecrire($script) : '')
1429
-	. "' "
1430
-	. ($atts ? $atts : " method='post'")
1431
-	.  "><div>\n"
1432
-	. "<input type='hidden' name='exec' value='$script1' />"
1433
-	. $corps
1434
-	. (!$submit ? '' :
1435
-	     ("<div style='text-align: $spip_lang_right'><input class='fondo' type='submit' value=\"".entites_html($submit)."\" /></div>"))
1436
-	. "</div></form>\n";
1426
+    return "<form action='"
1427
+    . ($script ? generer_url_ecrire($script) : '')
1428
+    . "' "
1429
+    . ($atts ? $atts : " method='post'")
1430
+    .  "><div>\n"
1431
+    . "<input type='hidden' name='exec' value='$script1' />"
1432
+    . $corps
1433
+    . (!$submit ? '' :
1434
+         ("<div style='text-align: $spip_lang_right'><input class='fondo' type='submit' value=\"".entites_html($submit)."\" /></div>"))
1435
+    . "</div></form>\n";
1437 1436
 }
1438 1437
 
1439 1438
 /**
@@ -1451,37 +1450,37 @@  discard block
 block discarded – undo
1451 1450
  * @return string
1452 1451
  */
1453 1452
 function generer_form_action($script, $corps, $atts='', $public=false) {
1454
-	// si l'on est dans l'espace prive, on garde dans l'url
1455
-	// l'exec a l'origine de l'action, qui permet de savoir si il est necessaire
1456
-	// ou non de proceder a l'authentification (cas typique de l'install par exemple)
1457
-	$h = (_DIR_RACINE AND !$public)
1458
-	? generer_url_ecrire(_request('exec'))
1459
-	: generer_url_public();
1460
-
1461
-	return "\n<form action='" .
1462
-	  $h .
1463
-	  "'" .
1464
-	  $atts .
1465
-	  ">\n" .
1466
-	  "<div>" .
1467
-  	  "\n<input type='hidden' name='action' value='$script' />" .
1468
-	  $corps .
1469
-	  "</div></form>";
1453
+    // si l'on est dans l'espace prive, on garde dans l'url
1454
+    // l'exec a l'origine de l'action, qui permet de savoir si il est necessaire
1455
+    // ou non de proceder a l'authentification (cas typique de l'install par exemple)
1456
+    $h = (_DIR_RACINE AND !$public)
1457
+    ? generer_url_ecrire(_request('exec'))
1458
+    : generer_url_public();
1459
+
1460
+    return "\n<form action='" .
1461
+        $h .
1462
+        "'" .
1463
+        $atts .
1464
+        ">\n" .
1465
+        "<div>" .
1466
+        "\n<input type='hidden' name='action' value='$script' />" .
1467
+        $corps .
1468
+        "</div></form>";
1470 1469
 }
1471 1470
 
1472 1471
 // http://doc.spip.org/@generer_url_action
1473 1472
 function generer_url_action($script, $args="", $no_entities=false , $public = false) {
1474
-	// si l'on est dans l'espace prive, on garde dans l'url
1475
-	// l'exec a l'origine de l'action, qui permet de savoir si il est necessaire
1476
-	// ou non de proceder a l'authentification (cas typique de l'install par exemple)
1477
-	$url = (_DIR_RACINE  AND !$public)
1478
-	  ? generer_url_ecrire(_request('exec'))
1479
-	  :  generer_url_public('','',false,false);
1480
-	$url = parametre_url($url,'action',$script);
1481
-	if ($args) $url .= quote_amp('&'.$args);
1473
+    // si l'on est dans l'espace prive, on garde dans l'url
1474
+    // l'exec a l'origine de l'action, qui permet de savoir si il est necessaire
1475
+    // ou non de proceder a l'authentification (cas typique de l'install par exemple)
1476
+    $url = (_DIR_RACINE  AND !$public)
1477
+      ? generer_url_ecrire(_request('exec'))
1478
+      :  generer_url_public('','',false,false);
1479
+    $url = parametre_url($url,'action',$script);
1480
+    if ($args) $url .= quote_amp('&'.$args);
1482 1481
 
1483
-	if ($no_entities) $url = str_replace('&amp;','&',$url);
1484
-	return $url;
1482
+    if ($no_entities) $url = str_replace('&amp;','&',$url);
1483
+    return $url;
1485 1484
 }
1486 1485
 
1487 1486
 
@@ -1494,8 +1493,8 @@  discard block
 block discarded – undo
1494 1493
  * @param string $ta
1495 1494
  */
1496 1495
 function spip_initialisation($pi=NULL, $pa=NULL, $ti=NULL, $ta=NULL) {
1497
-	spip_initialisation_core($pi,$pa,$ti,$ta);
1498
-	spip_initialisation_suite();
1496
+    spip_initialisation_core($pi,$pa,$ti,$ta);
1497
+    spip_initialisation_suite();
1499 1498
 }
1500 1499
 
1501 1500
 /**
@@ -1513,235 +1512,235 @@  discard block
 block discarded – undo
1513 1512
  * @param string $ta
1514 1513
  */
1515 1514
 function spip_initialisation_core($pi=NULL, $pa=NULL, $ti=NULL, $ta=NULL) {
1516
-	static $too_late = 0;
1517
-	if ($too_late++) return;
1515
+    static $too_late = 0;
1516
+    if ($too_late++) return;
1518 1517
 	
1519
-	// Declaration des repertoires
1518
+    // Declaration des repertoires
1520 1519
 
1521
-	// le nom du repertoire plugins/ activables/desactivables
1522
-	if (!defined('_DIR_PLUGINS')) define('_DIR_PLUGINS', _DIR_RACINE . "plugins/");
1520
+    // le nom du repertoire plugins/ activables/desactivables
1521
+    if (!defined('_DIR_PLUGINS')) define('_DIR_PLUGINS', _DIR_RACINE . "plugins/");
1523 1522
 
1524
-	// le nom du repertoire des extensions/ permanentes du core, toujours actives
1525
-	if (!defined('_DIR_PLUGINS_DIST')) define('_DIR_PLUGINS_DIST', _DIR_RACINE . "plugins-dist/");
1523
+    // le nom du repertoire des extensions/ permanentes du core, toujours actives
1524
+    if (!defined('_DIR_PLUGINS_DIST')) define('_DIR_PLUGINS_DIST', _DIR_RACINE . "plugins-dist/");
1526 1525
 
1527
-	// le nom du repertoire des librairies
1528
-	if (!defined('_DIR_LIB')) define('_DIR_LIB', _DIR_RACINE . "lib/");
1526
+    // le nom du repertoire des librairies
1527
+    if (!defined('_DIR_LIB')) define('_DIR_LIB', _DIR_RACINE . "lib/");
1529 1528
 	
1530
-	if (!defined('_DIR_IMG')) define('_DIR_IMG', $pa);
1531
-	if (!defined('_DIR_LOGOS')) define('_DIR_LOGOS', $pa);
1532
-	if (!defined('_DIR_IMG_ICONES')) define('_DIR_IMG_ICONES', _DIR_LOGOS . "icones/");
1533
-
1534
-	if (!defined('_DIR_DUMP')) define('_DIR_DUMP', $ti . "dump/");
1535
-	if (!defined('_DIR_SESSIONS')) define('_DIR_SESSIONS', $ti . "sessions/");
1536
-	if (!defined('_DIR_TRANSFERT')) define('_DIR_TRANSFERT', $ti . "upload/");
1537
-	if (!defined('_DIR_CACHE')) define('_DIR_CACHE', $ti . "cache/");
1538
-	if (!defined('_DIR_CACHE_XML')) define('_DIR_CACHE_XML', _DIR_CACHE . "xml/");
1539
-	if (!defined('_DIR_SKELS')) define('_DIR_SKELS',  _DIR_CACHE . "skel/");
1540
-	if (!defined('_DIR_AIDE')) define('_DIR_AIDE',  _DIR_CACHE . "aide/");
1541
-	if (!defined('_DIR_TMP')) define('_DIR_TMP', $ti);
1542
-
1543
-	if (!defined('_DIR_VAR')) define('_DIR_VAR', $ta);
1544
-
1545
-	if (!defined('_DIR_ETC')) define('_DIR_ETC', $pi);
1546
-	if (!defined('_DIR_CONNECT')) define('_DIR_CONNECT', $pi);
1547
-	if (!defined('_DIR_CHMOD')) define('_DIR_CHMOD', $pi);
1548
-
1549
-	if (!isset($GLOBALS['test_dirs']))
1550
-	  // Pas $pi car il est bon de le mettre hors ecriture apres intstall
1551
-	  // il sera rajoute automatiquement si besoin a l'etape 2 de l'install
1552
-		$GLOBALS['test_dirs'] =  array($pa, $ti, $ta);
1553
-
1554
-	// Declaration des fichiers
1555
-
1556
-	if (!defined('_CACHE_PLUGINS_PATH')) define('_CACHE_PLUGINS_PATH', _DIR_CACHE . "charger_plugins_chemins.php");
1557
-	if (!defined('_CACHE_PLUGINS_OPT')) define('_CACHE_PLUGINS_OPT', _DIR_CACHE . "charger_plugins_options.php");
1558
-	if (!defined('_CACHE_PLUGINS_FCT')) define('_CACHE_PLUGINS_FCT', _DIR_CACHE . "charger_plugins_fonctions.php");
1559
-	if (!defined('_CACHE_PIPELINES')) define('_CACHE_PIPELINES',  _DIR_CACHE."charger_pipelines.php");
1560
-	if (!defined('_CACHE_CHEMIN')) define('_CACHE_CHEMIN',  _DIR_CACHE."chemin.txt");
1561
-
1562
-	# attention .php obligatoire pour ecrire_fichier_securise
1563
-	if (!defined('_FILE_META')) define('_FILE_META', $ti . 'meta_cache.php');
1564
-	if (!defined('_DIR_LOG')) define('_DIR_LOG', _DIR_TMP . 'log/');
1565
-	if (!defined('_FILE_LOG')) define('_FILE_LOG', 'spip');
1566
-	if (!defined('_FILE_LOG_SUFFIX')) define('_FILE_LOG_SUFFIX', '.log');
1567
-
1568
-	// Le fichier de connexion a la base de donnees
1569
-	// tient compte des anciennes versions (inc_connect...)
1570
-	if (!defined('_FILE_CONNECT_INS')) define('_FILE_CONNECT_INS', 'connect');
1571
-	if (!defined('_FILE_CONNECT')) define('_FILE_CONNECT',
1572
-		(@is_readable($f = _DIR_CONNECT . _FILE_CONNECT_INS . '.php') ? $f
1573
-	:	(@is_readable($f = _DIR_RESTREINT . 'inc_connect.php') ? $f
1574
-	:	false)));
1575
-
1576
-	// Le fichier de reglages des droits
1577
-	if (!defined('_FILE_CHMOD_INS')) define('_FILE_CHMOD_INS', 'chmod');
1578
-	if (!defined('_FILE_CHMOD')) define('_FILE_CHMOD',
1579
-		(@is_readable($f = _DIR_CHMOD . _FILE_CHMOD_INS . '.php') ? $f
1580
-	:	false));
1581
-
1582
-	if (!defined('_FILE_LDAP')) define('_FILE_LDAP', 'ldap.php');
1583
-
1584
-	if (!defined('_FILE_TMP_SUFFIX')) define('_FILE_TMP_SUFFIX', '.tmp.php');
1585
-	if (!defined('_FILE_CONNECT_TMP')) define('_FILE_CONNECT_TMP', _DIR_CONNECT . _FILE_CONNECT_INS . _FILE_TMP_SUFFIX);
1586
-	if (!defined('_FILE_CHMOD_TMP')) define('_FILE_CHMOD_TMP', _DIR_CHMOD . _FILE_CHMOD_INS . _FILE_TMP_SUFFIX);
1587
-
1588
-	// Definition des droits d'acces en ecriture
1589
-	if (!defined('_SPIP_CHMOD') AND _FILE_CHMOD)
1590
-		include_once _FILE_CHMOD;
1591
-
1592
-	// Se mefier des fichiers mal remplis!
1593
-	if (!defined('_SPIP_CHMOD')) define('_SPIP_CHMOD', 0777);
1594
-
1595
-	// Le charset par defaut lors de l'installation
1596
-	if (!defined('_DEFAULT_CHARSET')) define('_DEFAULT_CHARSET', 'utf-8');
1597
-	if (!defined('_ROOT_PLUGINS')) define('_ROOT_PLUGINS', _ROOT_RACINE . "plugins/");
1598
-	if (!defined('_ROOT_PLUGINS_DIST')) define('_ROOT_PLUGINS_DIST', _ROOT_RACINE . "plugins-dist/");
1599
-	if (!defined('_ROOT_PLUGINS_SUPPL') && defined('_DIR_PLUGINS_SUPPL') && _DIR_PLUGINS_SUPPL) define('_ROOT_PLUGINS_SUPPL', _ROOT_RACINE . str_replace(_DIR_RACINE,'',_DIR_PLUGINS_SUPPL));
1600
-
1601
-	// La taille des Log
1602
-	if (!defined('_MAX_LOG')) define('_MAX_LOG', 100);
1603
-
1604
-	// Sommes-nous dans l'empire du Mal ?
1605
-	// (ou sous le signe du Pingouin, ascendant GNU ?)
1606
-	if (strpos($_SERVER['SERVER_SOFTWARE'], '(Win') !== false){
1607
-		if (!defined('_OS_SERVEUR')) define('_OS_SERVEUR', 'windows');
1608
-		if (!defined('_SPIP_LOCK_MODE')) define('_SPIP_LOCK_MODE',1); // utiliser le flock php
1609
-	}
1610
-	else {
1611
-		if (!defined('_OS_SERVEUR')) define('_OS_SERVEUR', '');
1612
-		if (!defined('_SPIP_LOCK_MODE')) define('_SPIP_LOCK_MODE',1); // utiliser le flock php
1613
-		#if (!defined('_SPIP_LOCK_MODE')) define('_SPIP_LOCK_MODE',2); // utiliser le nfslock de spip mais link() est tres souvent interdite
1614
-	}
1615
-
1616
-	// Langue par defaut
1617
-	if (!defined('_LANGUE_PAR_DEFAUT')) define('_LANGUE_PAR_DEFAUT','fr');
1618
-
1619
-	// PHP_VERSION_ID dispo depuis PHP 5.2.7
1620
-	if (!defined('PHP_VERSION_ID')) {
1621
-	   $version = explode('.',PHP_VERSION);
1622
-	   define('PHP_VERSION_ID', ($version[0] * 10000 + $version[1] * 100 + $version[2]));
1623
-	}
1624
-
1625
-	//
1626
-	// Module de lecture/ecriture/suppression de fichiers utilisant flock()
1627
-	// (non surchargeable en l'etat ; attention si on utilise include_spip()
1628
-	// pour le rendre surchargeable, on va provoquer un reecriture
1629
-	// systematique du noyau ou une baisse de perfs => a etudier)
1630
-	include_once _ROOT_RESTREINT . 'inc/flock.php';
1631
-
1632
-	// charger tout de suite le path et son cache
1633
-	load_path_cache();
1634
-
1635
-	// *********** traiter les variables ************
1636
-
1637
-	//
1638
-	// Securite
1639
-	//
1640
-
1641
-	// Ne pas se faire manger par un bug php qui accepte ?GLOBALS[truc]=toto
1642
-	if (isset($_REQUEST['GLOBALS'])) die();
1643
-	// nettoyer les magic quotes \' et les caracteres nuls %00
1644
-	spip_desinfecte($_GET);
1645
-	spip_desinfecte($_POST);
1646
-	spip_desinfecte($_COOKIE);
1647
-	spip_desinfecte($_REQUEST);
1648
-
1649
-	// Par ailleurs on ne veut pas de magic_quotes au cours de l'execution
1650
-	if (PHP_VERSION_ID<50300) {
1651
-		@set_magic_quotes_runtime(0);
1652
-	}
1653
-
1654
-	// Si les variables sont passees en global par le serveur,
1655
-	// il faut faire quelques verifications de base
1656
-	$avertir_register_globals = false;
1657
-	if (test_valeur_serveur(@ini_get('register_globals'))) {
1658
-		// ne pas desinfecter les globales en profondeur car elle contient aussi les
1659
-		// precedentes, qui seraient desinfectees 2 fois.
1660
-		spip_desinfecte($GLOBALS,false);
1661
-		if (include_spip('inc/php3'))
1662
-			spip_register_globals(true);
1663
-
1664
-		$avertir_register_globals = true;
1665
-	}
1666
-
1667
-	// appliquer le cookie_prefix
1668
-	if ($GLOBALS['cookie_prefix'] != 'spip') {
1669
-		include_spip('inc/cookie');
1670
-		recuperer_cookies_spip($GLOBALS['cookie_prefix']);
1671
-	}
1672
-
1673
-	//
1674
-	// Capacites php (en fonction de la version)
1675
-	//
1676
-	$GLOBALS['flag_ob'] = (function_exists("ob_start")
1677
-		&& function_exists("ini_get")
1678
-		&& !strstr(@ini_get('disable_functions'), 'ob_'));
1679
-	$GLOBALS['flag_sapi_name'] = function_exists("php_sapi_name");
1680
-	$GLOBALS['flag_get_cfg_var'] = (@get_cfg_var('error_reporting') != "");
1681
-	$GLOBALS['flag_upload'] = (!$GLOBALS['flag_get_cfg_var'] ||
1682
-		(get_cfg_var('upload_max_filesize') > 0));
1683
-
1684
-
1685
-	// Compatibilite avec serveurs ne fournissant pas $REQUEST_URI
1686
-	if (isset($_SERVER['REQUEST_URI'])) {
1687
-		$GLOBALS['REQUEST_URI'] = $_SERVER['REQUEST_URI'];
1688
-	} else {
1689
-		$GLOBALS['REQUEST_URI'] = $_SERVER['PHP_SELF'];
1690
-		if ($_SERVER['QUERY_STRING']
1691
-		AND !strpos($_SERVER['REQUEST_URI'], '?'))
1692
-			$GLOBALS['REQUEST_URI'] .= '?'.$_SERVER['QUERY_STRING'];
1693
-	}
1694
-
1695
-	// Duree de validite de l'alea pour les cookies et ce qui s'ensuit.
1696
-	if (!defined('_RENOUVELLE_ALEA')) define('_RENOUVELLE_ALEA', 12 * 3600);
1697
-
1698
-	// charger les meta si possible et renouveller l'alea au besoin
1699
-	// charge aussi effacer_meta et ecrire_meta
1700
-	$inc_meta = charger_fonction('meta', 'inc');
1701
-	$inc_meta();
1702
-
1703
-	// on a pas pu le faire plus tot
1704
-	if  ($avertir_register_globals)
1705
-		avertir_auteurs("register_globals",_L("Probl&egrave;me de s&eacute;curit&eacute; : register_globals=on; dans php.ini &agrave; corriger."));
1706
-
1707
-	// nombre de repertoires depuis la racine
1708
-	// on compare a l'adresse de spip.php : $_SERVER["SCRIPT_NAME"]
1709
-	// ou a defaut celle donnee en meta ; (mais si celle-ci est fausse
1710
-	// le calcul est faux)
1711
-	if (!_DIR_RESTREINT)
1712
-		$GLOBALS['profondeur_url'] = 1;
1713
-	else {
1714
-		$uri = isset($_SERVER['REQUEST_URI']) ? explode('?', $_SERVER['REQUEST_URI']) : '';
1715
-		$uri_ref = $_SERVER["SCRIPT_NAME"];
1716
-		if (!$uri_ref
1717
-			// si on est appele avec un autre ti, on est sans doute en mutu
1718
-			// si jamais c'est de la mutu avec sous rep, on est perdu si on se fie
1719
-			// a spip.php qui est a la racine du spip, et vue qu'on sait pas se reperer
1720
-			// s'en remettre a l'adresse du site. alea jacta est.
1721
-			OR $ti!==_NOM_TEMPORAIRES_INACCESSIBLES){
1722
-
1723
-			if (isset($GLOBALS['meta']['adresse_site'])) {
1724
-				$uri_ref = parse_url($GLOBALS['meta']['adresse_site']);
1725
-				$uri_ref = $uri_ref['path'].'/';
1726
-			}
1727
-		  else
1728
-			  $uri_ref = "";
1729
-		}
1730
-		if (!$uri OR !$uri_ref)
1731
-			$GLOBALS['profondeur_url'] = 0;
1732
-		else {
1733
-			$GLOBALS['profondeur_url'] = max(0,
1734
-				substr_count($uri[0], '/')
1735
-				- substr_count($uri_ref,'/'));
1736
-		}
1737
-	}
1738
-	// s'il y a un cookie ou PHP_AUTH, initialiser visiteur_session
1739
-	if (_FILE_CONNECT) {
1740
-		if (verifier_visiteur()=='0minirezo'
1741
-			// si c'est un admin sans cookie admin, il faut ignorer le cache chemin !
1742
-		  AND !isset($_COOKIE['spip_admin']))
1743
-			clear_path_cache();
1744
-	}
1529
+    if (!defined('_DIR_IMG')) define('_DIR_IMG', $pa);
1530
+    if (!defined('_DIR_LOGOS')) define('_DIR_LOGOS', $pa);
1531
+    if (!defined('_DIR_IMG_ICONES')) define('_DIR_IMG_ICONES', _DIR_LOGOS . "icones/");
1532
+
1533
+    if (!defined('_DIR_DUMP')) define('_DIR_DUMP', $ti . "dump/");
1534
+    if (!defined('_DIR_SESSIONS')) define('_DIR_SESSIONS', $ti . "sessions/");
1535
+    if (!defined('_DIR_TRANSFERT')) define('_DIR_TRANSFERT', $ti . "upload/");
1536
+    if (!defined('_DIR_CACHE')) define('_DIR_CACHE', $ti . "cache/");
1537
+    if (!defined('_DIR_CACHE_XML')) define('_DIR_CACHE_XML', _DIR_CACHE . "xml/");
1538
+    if (!defined('_DIR_SKELS')) define('_DIR_SKELS',  _DIR_CACHE . "skel/");
1539
+    if (!defined('_DIR_AIDE')) define('_DIR_AIDE',  _DIR_CACHE . "aide/");
1540
+    if (!defined('_DIR_TMP')) define('_DIR_TMP', $ti);
1541
+
1542
+    if (!defined('_DIR_VAR')) define('_DIR_VAR', $ta);
1543
+
1544
+    if (!defined('_DIR_ETC')) define('_DIR_ETC', $pi);
1545
+    if (!defined('_DIR_CONNECT')) define('_DIR_CONNECT', $pi);
1546
+    if (!defined('_DIR_CHMOD')) define('_DIR_CHMOD', $pi);
1547
+
1548
+    if (!isset($GLOBALS['test_dirs']))
1549
+        // Pas $pi car il est bon de le mettre hors ecriture apres intstall
1550
+        // il sera rajoute automatiquement si besoin a l'etape 2 de l'install
1551
+        $GLOBALS['test_dirs'] =  array($pa, $ti, $ta);
1552
+
1553
+    // Declaration des fichiers
1554
+
1555
+    if (!defined('_CACHE_PLUGINS_PATH')) define('_CACHE_PLUGINS_PATH', _DIR_CACHE . "charger_plugins_chemins.php");
1556
+    if (!defined('_CACHE_PLUGINS_OPT')) define('_CACHE_PLUGINS_OPT', _DIR_CACHE . "charger_plugins_options.php");
1557
+    if (!defined('_CACHE_PLUGINS_FCT')) define('_CACHE_PLUGINS_FCT', _DIR_CACHE . "charger_plugins_fonctions.php");
1558
+    if (!defined('_CACHE_PIPELINES')) define('_CACHE_PIPELINES',  _DIR_CACHE."charger_pipelines.php");
1559
+    if (!defined('_CACHE_CHEMIN')) define('_CACHE_CHEMIN',  _DIR_CACHE."chemin.txt");
1560
+
1561
+    # attention .php obligatoire pour ecrire_fichier_securise
1562
+    if (!defined('_FILE_META')) define('_FILE_META', $ti . 'meta_cache.php');
1563
+    if (!defined('_DIR_LOG')) define('_DIR_LOG', _DIR_TMP . 'log/');
1564
+    if (!defined('_FILE_LOG')) define('_FILE_LOG', 'spip');
1565
+    if (!defined('_FILE_LOG_SUFFIX')) define('_FILE_LOG_SUFFIX', '.log');
1566
+
1567
+    // Le fichier de connexion a la base de donnees
1568
+    // tient compte des anciennes versions (inc_connect...)
1569
+    if (!defined('_FILE_CONNECT_INS')) define('_FILE_CONNECT_INS', 'connect');
1570
+    if (!defined('_FILE_CONNECT')) define('_FILE_CONNECT',
1571
+        (@is_readable($f = _DIR_CONNECT . _FILE_CONNECT_INS . '.php') ? $f
1572
+    :	(@is_readable($f = _DIR_RESTREINT . 'inc_connect.php') ? $f
1573
+    :	false)));
1574
+
1575
+    // Le fichier de reglages des droits
1576
+    if (!defined('_FILE_CHMOD_INS')) define('_FILE_CHMOD_INS', 'chmod');
1577
+    if (!defined('_FILE_CHMOD')) define('_FILE_CHMOD',
1578
+        (@is_readable($f = _DIR_CHMOD . _FILE_CHMOD_INS . '.php') ? $f
1579
+    :	false));
1580
+
1581
+    if (!defined('_FILE_LDAP')) define('_FILE_LDAP', 'ldap.php');
1582
+
1583
+    if (!defined('_FILE_TMP_SUFFIX')) define('_FILE_TMP_SUFFIX', '.tmp.php');
1584
+    if (!defined('_FILE_CONNECT_TMP')) define('_FILE_CONNECT_TMP', _DIR_CONNECT . _FILE_CONNECT_INS . _FILE_TMP_SUFFIX);
1585
+    if (!defined('_FILE_CHMOD_TMP')) define('_FILE_CHMOD_TMP', _DIR_CHMOD . _FILE_CHMOD_INS . _FILE_TMP_SUFFIX);
1586
+
1587
+    // Definition des droits d'acces en ecriture
1588
+    if (!defined('_SPIP_CHMOD') AND _FILE_CHMOD)
1589
+        include_once _FILE_CHMOD;
1590
+
1591
+    // Se mefier des fichiers mal remplis!
1592
+    if (!defined('_SPIP_CHMOD')) define('_SPIP_CHMOD', 0777);
1593
+
1594
+    // Le charset par defaut lors de l'installation
1595
+    if (!defined('_DEFAULT_CHARSET')) define('_DEFAULT_CHARSET', 'utf-8');
1596
+    if (!defined('_ROOT_PLUGINS')) define('_ROOT_PLUGINS', _ROOT_RACINE . "plugins/");
1597
+    if (!defined('_ROOT_PLUGINS_DIST')) define('_ROOT_PLUGINS_DIST', _ROOT_RACINE . "plugins-dist/");
1598
+    if (!defined('_ROOT_PLUGINS_SUPPL') && defined('_DIR_PLUGINS_SUPPL') && _DIR_PLUGINS_SUPPL) define('_ROOT_PLUGINS_SUPPL', _ROOT_RACINE . str_replace(_DIR_RACINE,'',_DIR_PLUGINS_SUPPL));
1599
+
1600
+    // La taille des Log
1601
+    if (!defined('_MAX_LOG')) define('_MAX_LOG', 100);
1602
+
1603
+    // Sommes-nous dans l'empire du Mal ?
1604
+    // (ou sous le signe du Pingouin, ascendant GNU ?)
1605
+    if (strpos($_SERVER['SERVER_SOFTWARE'], '(Win') !== false){
1606
+        if (!defined('_OS_SERVEUR')) define('_OS_SERVEUR', 'windows');
1607
+        if (!defined('_SPIP_LOCK_MODE')) define('_SPIP_LOCK_MODE',1); // utiliser le flock php
1608
+    }
1609
+    else {
1610
+        if (!defined('_OS_SERVEUR')) define('_OS_SERVEUR', '');
1611
+        if (!defined('_SPIP_LOCK_MODE')) define('_SPIP_LOCK_MODE',1); // utiliser le flock php
1612
+        #if (!defined('_SPIP_LOCK_MODE')) define('_SPIP_LOCK_MODE',2); // utiliser le nfslock de spip mais link() est tres souvent interdite
1613
+    }
1614
+
1615
+    // Langue par defaut
1616
+    if (!defined('_LANGUE_PAR_DEFAUT')) define('_LANGUE_PAR_DEFAUT','fr');
1617
+
1618
+    // PHP_VERSION_ID dispo depuis PHP 5.2.7
1619
+    if (!defined('PHP_VERSION_ID')) {
1620
+        $version = explode('.',PHP_VERSION);
1621
+        define('PHP_VERSION_ID', ($version[0] * 10000 + $version[1] * 100 + $version[2]));
1622
+    }
1623
+
1624
+    //
1625
+    // Module de lecture/ecriture/suppression de fichiers utilisant flock()
1626
+    // (non surchargeable en l'etat ; attention si on utilise include_spip()
1627
+    // pour le rendre surchargeable, on va provoquer un reecriture
1628
+    // systematique du noyau ou une baisse de perfs => a etudier)
1629
+    include_once _ROOT_RESTREINT . 'inc/flock.php';
1630
+
1631
+    // charger tout de suite le path et son cache
1632
+    load_path_cache();
1633
+
1634
+    // *********** traiter les variables ************
1635
+
1636
+    //
1637
+    // Securite
1638
+    //
1639
+
1640
+    // Ne pas se faire manger par un bug php qui accepte ?GLOBALS[truc]=toto
1641
+    if (isset($_REQUEST['GLOBALS'])) die();
1642
+    // nettoyer les magic quotes \' et les caracteres nuls %00
1643
+    spip_desinfecte($_GET);
1644
+    spip_desinfecte($_POST);
1645
+    spip_desinfecte($_COOKIE);
1646
+    spip_desinfecte($_REQUEST);
1647
+
1648
+    // Par ailleurs on ne veut pas de magic_quotes au cours de l'execution
1649
+    if (PHP_VERSION_ID<50300) {
1650
+        @set_magic_quotes_runtime(0);
1651
+    }
1652
+
1653
+    // Si les variables sont passees en global par le serveur,
1654
+    // il faut faire quelques verifications de base
1655
+    $avertir_register_globals = false;
1656
+    if (test_valeur_serveur(@ini_get('register_globals'))) {
1657
+        // ne pas desinfecter les globales en profondeur car elle contient aussi les
1658
+        // precedentes, qui seraient desinfectees 2 fois.
1659
+        spip_desinfecte($GLOBALS,false);
1660
+        if (include_spip('inc/php3'))
1661
+            spip_register_globals(true);
1662
+
1663
+        $avertir_register_globals = true;
1664
+    }
1665
+
1666
+    // appliquer le cookie_prefix
1667
+    if ($GLOBALS['cookie_prefix'] != 'spip') {
1668
+        include_spip('inc/cookie');
1669
+        recuperer_cookies_spip($GLOBALS['cookie_prefix']);
1670
+    }
1671
+
1672
+    //
1673
+    // Capacites php (en fonction de la version)
1674
+    //
1675
+    $GLOBALS['flag_ob'] = (function_exists("ob_start")
1676
+        && function_exists("ini_get")
1677
+        && !strstr(@ini_get('disable_functions'), 'ob_'));
1678
+    $GLOBALS['flag_sapi_name'] = function_exists("php_sapi_name");
1679
+    $GLOBALS['flag_get_cfg_var'] = (@get_cfg_var('error_reporting') != "");
1680
+    $GLOBALS['flag_upload'] = (!$GLOBALS['flag_get_cfg_var'] ||
1681
+        (get_cfg_var('upload_max_filesize') > 0));
1682
+
1683
+
1684
+    // Compatibilite avec serveurs ne fournissant pas $REQUEST_URI
1685
+    if (isset($_SERVER['REQUEST_URI'])) {
1686
+        $GLOBALS['REQUEST_URI'] = $_SERVER['REQUEST_URI'];
1687
+    } else {
1688
+        $GLOBALS['REQUEST_URI'] = $_SERVER['PHP_SELF'];
1689
+        if ($_SERVER['QUERY_STRING']
1690
+        AND !strpos($_SERVER['REQUEST_URI'], '?'))
1691
+            $GLOBALS['REQUEST_URI'] .= '?'.$_SERVER['QUERY_STRING'];
1692
+    }
1693
+
1694
+    // Duree de validite de l'alea pour les cookies et ce qui s'ensuit.
1695
+    if (!defined('_RENOUVELLE_ALEA')) define('_RENOUVELLE_ALEA', 12 * 3600);
1696
+
1697
+    // charger les meta si possible et renouveller l'alea au besoin
1698
+    // charge aussi effacer_meta et ecrire_meta
1699
+    $inc_meta = charger_fonction('meta', 'inc');
1700
+    $inc_meta();
1701
+
1702
+    // on a pas pu le faire plus tot
1703
+    if  ($avertir_register_globals)
1704
+        avertir_auteurs("register_globals",_L("Probl&egrave;me de s&eacute;curit&eacute; : register_globals=on; dans php.ini &agrave; corriger."));
1705
+
1706
+    // nombre de repertoires depuis la racine
1707
+    // on compare a l'adresse de spip.php : $_SERVER["SCRIPT_NAME"]
1708
+    // ou a defaut celle donnee en meta ; (mais si celle-ci est fausse
1709
+    // le calcul est faux)
1710
+    if (!_DIR_RESTREINT)
1711
+        $GLOBALS['profondeur_url'] = 1;
1712
+    else {
1713
+        $uri = isset($_SERVER['REQUEST_URI']) ? explode('?', $_SERVER['REQUEST_URI']) : '';
1714
+        $uri_ref = $_SERVER["SCRIPT_NAME"];
1715
+        if (!$uri_ref
1716
+            // si on est appele avec un autre ti, on est sans doute en mutu
1717
+            // si jamais c'est de la mutu avec sous rep, on est perdu si on se fie
1718
+            // a spip.php qui est a la racine du spip, et vue qu'on sait pas se reperer
1719
+            // s'en remettre a l'adresse du site. alea jacta est.
1720
+            OR $ti!==_NOM_TEMPORAIRES_INACCESSIBLES){
1721
+
1722
+            if (isset($GLOBALS['meta']['adresse_site'])) {
1723
+                $uri_ref = parse_url($GLOBALS['meta']['adresse_site']);
1724
+                $uri_ref = $uri_ref['path'].'/';
1725
+            }
1726
+            else
1727
+                $uri_ref = "";
1728
+        }
1729
+        if (!$uri OR !$uri_ref)
1730
+            $GLOBALS['profondeur_url'] = 0;
1731
+        else {
1732
+            $GLOBALS['profondeur_url'] = max(0,
1733
+                substr_count($uri[0], '/')
1734
+                - substr_count($uri_ref,'/'));
1735
+        }
1736
+    }
1737
+    // s'il y a un cookie ou PHP_AUTH, initialiser visiteur_session
1738
+    if (_FILE_CONNECT) {
1739
+        if (verifier_visiteur()=='0minirezo'
1740
+            // si c'est un admin sans cookie admin, il faut ignorer le cache chemin !
1741
+          AND !isset($_COOKIE['spip_admin']))
1742
+            clear_path_cache();
1743
+    }
1745 1744
 
1746 1745
 }
1747 1746
 
@@ -1751,205 +1750,205 @@  discard block
 block discarded – undo
1751 1750
  *
1752 1751
  */
1753 1752
 function spip_initialisation_suite() {
1754
-	static $too_late = 0;
1755
-	if ($too_late++) return;
1753
+    static $too_late = 0;
1754
+    if ($too_late++) return;
1756 1755
 
1757
-	// taille mini des login
1758
-	if (!defined('_LOGIN_TROP_COURT')) define('_LOGIN_TROP_COURT', 4);
1756
+    // taille mini des login
1757
+    if (!defined('_LOGIN_TROP_COURT')) define('_LOGIN_TROP_COURT', 4);
1759 1758
 
1760
-	// la taille maxi des logos (0 : pas de limite)
1761
-	if (!defined('_LOGO_MAX_SIZE')) define('_LOGO_MAX_SIZE', 0); # poids en ko
1762
-	if (!defined('_LOGO_MAX_WIDTH')) define('_LOGO_MAX_WIDTH', 0); # largeur en pixels
1763
-	if (!defined('_LOGO_MAX_HEIGHT')) define('_LOGO_MAX_HEIGHT', 0); # hauteur en pixels
1759
+    // la taille maxi des logos (0 : pas de limite)
1760
+    if (!defined('_LOGO_MAX_SIZE')) define('_LOGO_MAX_SIZE', 0); # poids en ko
1761
+    if (!defined('_LOGO_MAX_WIDTH')) define('_LOGO_MAX_WIDTH', 0); # largeur en pixels
1762
+    if (!defined('_LOGO_MAX_HEIGHT')) define('_LOGO_MAX_HEIGHT', 0); # hauteur en pixels
1764 1763
 
1765
-	if (!defined('_DOC_MAX_SIZE')) define('_DOC_MAX_SIZE', 0); # poids en ko
1764
+    if (!defined('_DOC_MAX_SIZE')) define('_DOC_MAX_SIZE', 0); # poids en ko
1766 1765
 
1767
-	if (!defined('_IMG_MAX_SIZE')) define('_IMG_MAX_SIZE', 0); # poids en ko
1768
-	if (!defined('_IMG_MAX_WIDTH')) define('_IMG_MAX_WIDTH', 0); # largeur en pixels
1769
-	if (!defined('_IMG_MAX_HEIGHT')) define('_IMG_MAX_HEIGHT', 0); # hauteur en pixels
1770
-	if (!defined('_PASS_LONGUEUR_MINI')) define('_PASS_LONGUEUR_MINI',6);
1766
+    if (!defined('_IMG_MAX_SIZE')) define('_IMG_MAX_SIZE', 0); # poids en ko
1767
+    if (!defined('_IMG_MAX_WIDTH')) define('_IMG_MAX_WIDTH', 0); # largeur en pixels
1768
+    if (!defined('_IMG_MAX_HEIGHT')) define('_IMG_MAX_HEIGHT', 0); # hauteur en pixels
1769
+    if (!defined('_PASS_LONGUEUR_MINI')) define('_PASS_LONGUEUR_MINI',6);
1771 1770
 
1772 1771
 
1773
-	// Qualite des images calculees automatiquement. C'est un nombre entre 0 et 100, meme pour imagick (on ramene a 0..1 par la suite)
1772
+    // Qualite des images calculees automatiquement. C'est un nombre entre 0 et 100, meme pour imagick (on ramene a 0..1 par la suite)
1774 1773
         if (!defined('_IMG_QUALITE')) define('_IMG_QUALITE', 85); # valeur par defaut
1775 1774
         if (!defined('_IMG_GD_QUALITE')) define('_IMG_GD_QUALITE', _IMG_QUALITE); # surcharge pour la lib GD
1776 1775
         if (!defined('_IMG_CONVERT_QUALITE')) define('_IMG_CONVERT_QUALITE', _IMG_QUALITE); # surcharge pour imagick en ligne de commande
1777
-	// Historiquement la valeur pour imagick semble differente. Si ca n'est pas necessaire, il serait preferable de garder _IMG_QUALITE
1776
+    // Historiquement la valeur pour imagick semble differente. Si ca n'est pas necessaire, il serait preferable de garder _IMG_QUALITE
1778 1777
         if (!defined('_IMG_IMAGICK_QUALITE')) define('_IMG_IMAGICK_QUALITE', 75); # surcharge pour imagick en PHP
1779 1778
 
1780
-	if (!defined('_COPIE_LOCALE_MAX_SIZE')) define('_COPIE_LOCALE_MAX_SIZE',16777216); // poids en octet
1781
-
1782
-	// qq chaines standard
1783
-	if (!defined('_ACCESS_FILE_NAME')) define('_ACCESS_FILE_NAME', '.htaccess');
1784
-	if (!defined('_AUTH_USER_FILE')) define('_AUTH_USER_FILE', '.htpasswd');
1785
-	if (!defined('_SPIP_DUMP')) define('_SPIP_DUMP', 'dump@nom_site@@[email protected]');
1786
-	if (!defined('_CACHE_RUBRIQUES')) define('_CACHE_RUBRIQUES', _DIR_TMP.'menu-rubriques-cache.txt');
1787
-	if (!defined('_CACHE_RUBRIQUES_MAX')) define('_CACHE_RUBRIQUES_MAX', 500);
1788
-
1789
-	if (!defined('_EXTENSION_SQUELETTES')) define('_EXTENSION_SQUELETTES', 'html');
1790
-
1791
-	if (!defined('_DOCTYPE_ECRIRE')) define('_DOCTYPE_ECRIRE',
1792
-		// "<!DOCTYPE HTML PUBLIC '-//W3C//DTD HTML 4.01 Transitional//EN' 'http://www.w3.org/TR/html4/loose.dtd'>\n");
1793
-		//"<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Transitional//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd'>\n");
1794
-		//"<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Strict//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'>\n");
1795
-	       // "<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.1 //EN' 'http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd'>\n");
1796
-		"<!DOCTYPE html>\n");
1797
-	if (!defined('_DOCTYPE_AIDE')) define('_DOCTYPE_AIDE',
1798
-	       "<!DOCTYPE html PUBLIC '-//W3C//DTD HTML 4.01 Frameset//EN' 'http://www.w3.org/TR/1999/REC-html401-19991224/frameset.dtd'>");
1799
-
1800
-	// L'adresse de base du site ; on peut mettre '' si la racine est geree par
1801
-	// le script de l'espace public, alias  index.php
1802
-	if (!defined('_SPIP_SCRIPT')) define('_SPIP_SCRIPT', 'spip.php');
1803
-	// argument page, personalisable en cas de conflit avec un autre script
1804
-	if (!defined('_SPIP_PAGE')) define('_SPIP_PAGE', 'page');
1805
-
1806
-	// le script de l'espace prive
1807
-	// Mettre a "index.php" si DirectoryIndex ne le fait pas ou pb connexes:
1808
-	// les anciens IIS n'acceptent pas les POST sur ecrire/ (#419)
1809
-	// meme pb sur thttpd cf. http://forum.spip.org/fr_184153.html
1810
-
1811
-	if (!defined('_SPIP_ECRIRE_SCRIPT')) define('_SPIP_ECRIRE_SCRIPT', // true ? #decommenter ici et commenter la
1812
-	       preg_match(',IIS|thttpd,',$_SERVER['SERVER_SOFTWARE']) ?
1813
-	       'index.php' : '');
1814
-
1815
-
1816
-	if (!defined('_SPIP_AJAX'))
1817
-		define('_SPIP_AJAX', ((!isset($_COOKIE['spip_accepte_ajax']))
1818
-			? 1
1819
-		       : (($_COOKIE['spip_accepte_ajax'] != -1) ? 1 : 0)));
1820
-
1821
-	// La requete est-elle en ajax ?
1822
-	if (!defined('_AJAX')) define('_AJAX',
1823
-		(isset($_SERVER['HTTP_X_REQUESTED_WITH']) # ajax jQuery
1824
-		OR @$_REQUEST['var_ajax_redir'] # redirection 302 apres ajax jQuery
1825
-		OR @$_REQUEST['var_ajaxcharset'] # compat ascendante pour plugins
1826
-		OR @$_REQUEST['var_ajax'] # forms ajax & inclure ajax de spip
1827
-		)
1828
-		AND !@$_REQUEST['var_noajax'] # horrible exception, car c'est pas parce que la requete est ajax jquery qu'il faut tuer tous les formulaires ajax qu'elle contient
1829
-	);
1830
-
1831
-	# nombre de pixels maxi pour calcul de la vignette avec gd
1832
-	# au dela de 5500000 on considere que php n'est pas limite en memoire pour cette operation
1833
-	# les configurations limitees en memoire ont un seuil plutot vers 1MPixel
1834
-	if (!defined('_IMG_GD_MAX_PIXELS')) define('_IMG_GD_MAX_PIXELS',
1835
-		(isset($GLOBALS['meta']['max_taille_vignettes'])&&$GLOBALS['meta']['max_taille_vignettes']<5500000)
1836
-		 ? $GLOBALS['meta']['max_taille_vignettes']
1837
-		 : 0);
1838
-
1839
-	if (!defined('_MEMORY_LIMIT_MIN')) define('_MEMORY_LIMIT_MIN',10); // en Mo
1840
-	// si on est dans l'espace prive et si le besoin est superieur a 8Mo (qui est vraiment le standard)
1841
-	// on verifie que la memoire est suffisante pour le compactage css+js pour eviter la page blanche
1842
-	// il y aura d'autres problemes et l'utilisateur n'ira pas tres loin, mais ce sera plus comprehensible qu'une page blanche
1843
-	if (test_espace_prive() AND _MEMORY_LIMIT_MIN>8){
1844
-		if ($memory = trim(ini_get('memory_limit')) and $memory != -1) {
1845
-			$unit = strtolower(substr($memory,strlen($memory/1),1));
1846
-			switch($unit) {
1847
-				// Le modifieur 'G' est disponible depuis PHP 5.1.0
1848
-				case 'g': $memory *= 1024;
1849
-				case 'm': $memory *= 1024;
1850
-				case 'k': $memory *= 1024;
1851
-			}
1852
-			if ($memory<_MEMORY_LIMIT_MIN*1024*1024){
1853
-				ini_set('memory_limit',$m=_MEMORY_LIMIT_MIN.'M');
1854
-				if (trim(ini_get('memory_limit'))!=$m){
1855
-					if (!defined('_INTERDIRE_COMPACTE_HEAD_ECRIRE')) define('_INTERDIRE_COMPACTE_HEAD_ECRIRE',true); // evite une page blanche car on ne saura pas calculer la css dans ce hit
1856
-				}
1857
-			}
1858
-		}
1859
-		else
1860
-			if (!defined('_INTERDIRE_COMPACTE_HEAD_ECRIRE')) define('_INTERDIRE_COMPACTE_HEAD_ECRIRE',true); // evite une page blanche car on ne saura pas calculer la css dans ce hit
1861
-	}
1862
-	// Protocoles a normaliser dans les chaines de langues
1863
-	if (!defined('_PROTOCOLES_STD'))
1864
-		define('_PROTOCOLES_STD', 'http|https|ftp|mailto|webcal');
1865
-
1866
-	init_var_mode();
1779
+    if (!defined('_COPIE_LOCALE_MAX_SIZE')) define('_COPIE_LOCALE_MAX_SIZE',16777216); // poids en octet
1780
+
1781
+    // qq chaines standard
1782
+    if (!defined('_ACCESS_FILE_NAME')) define('_ACCESS_FILE_NAME', '.htaccess');
1783
+    if (!defined('_AUTH_USER_FILE')) define('_AUTH_USER_FILE', '.htpasswd');
1784
+    if (!defined('_SPIP_DUMP')) define('_SPIP_DUMP', 'dump@nom_site@@[email protected]');
1785
+    if (!defined('_CACHE_RUBRIQUES')) define('_CACHE_RUBRIQUES', _DIR_TMP.'menu-rubriques-cache.txt');
1786
+    if (!defined('_CACHE_RUBRIQUES_MAX')) define('_CACHE_RUBRIQUES_MAX', 500);
1787
+
1788
+    if (!defined('_EXTENSION_SQUELETTES')) define('_EXTENSION_SQUELETTES', 'html');
1789
+
1790
+    if (!defined('_DOCTYPE_ECRIRE')) define('_DOCTYPE_ECRIRE',
1791
+        // "<!DOCTYPE HTML PUBLIC '-//W3C//DTD HTML 4.01 Transitional//EN' 'http://www.w3.org/TR/html4/loose.dtd'>\n");
1792
+        //"<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Transitional//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd'>\n");
1793
+        //"<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Strict//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'>\n");
1794
+            // "<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.1 //EN' 'http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd'>\n");
1795
+        "<!DOCTYPE html>\n");
1796
+    if (!defined('_DOCTYPE_AIDE')) define('_DOCTYPE_AIDE',
1797
+            "<!DOCTYPE html PUBLIC '-//W3C//DTD HTML 4.01 Frameset//EN' 'http://www.w3.org/TR/1999/REC-html401-19991224/frameset.dtd'>");
1798
+
1799
+    // L'adresse de base du site ; on peut mettre '' si la racine est geree par
1800
+    // le script de l'espace public, alias  index.php
1801
+    if (!defined('_SPIP_SCRIPT')) define('_SPIP_SCRIPT', 'spip.php');
1802
+    // argument page, personalisable en cas de conflit avec un autre script
1803
+    if (!defined('_SPIP_PAGE')) define('_SPIP_PAGE', 'page');
1804
+
1805
+    // le script de l'espace prive
1806
+    // Mettre a "index.php" si DirectoryIndex ne le fait pas ou pb connexes:
1807
+    // les anciens IIS n'acceptent pas les POST sur ecrire/ (#419)
1808
+    // meme pb sur thttpd cf. http://forum.spip.org/fr_184153.html
1809
+
1810
+    if (!defined('_SPIP_ECRIRE_SCRIPT')) define('_SPIP_ECRIRE_SCRIPT', // true ? #decommenter ici et commenter la
1811
+            preg_match(',IIS|thttpd,',$_SERVER['SERVER_SOFTWARE']) ?
1812
+           'index.php' : '');
1813
+
1814
+
1815
+    if (!defined('_SPIP_AJAX'))
1816
+        define('_SPIP_AJAX', ((!isset($_COOKIE['spip_accepte_ajax']))
1817
+            ? 1
1818
+               : (($_COOKIE['spip_accepte_ajax'] != -1) ? 1 : 0)));
1819
+
1820
+    // La requete est-elle en ajax ?
1821
+    if (!defined('_AJAX')) define('_AJAX',
1822
+        (isset($_SERVER['HTTP_X_REQUESTED_WITH']) # ajax jQuery
1823
+        OR @$_REQUEST['var_ajax_redir'] # redirection 302 apres ajax jQuery
1824
+        OR @$_REQUEST['var_ajaxcharset'] # compat ascendante pour plugins
1825
+        OR @$_REQUEST['var_ajax'] # forms ajax & inclure ajax de spip
1826
+        )
1827
+        AND !@$_REQUEST['var_noajax'] # horrible exception, car c'est pas parce que la requete est ajax jquery qu'il faut tuer tous les formulaires ajax qu'elle contient
1828
+    );
1829
+
1830
+    # nombre de pixels maxi pour calcul de la vignette avec gd
1831
+    # au dela de 5500000 on considere que php n'est pas limite en memoire pour cette operation
1832
+    # les configurations limitees en memoire ont un seuil plutot vers 1MPixel
1833
+    if (!defined('_IMG_GD_MAX_PIXELS')) define('_IMG_GD_MAX_PIXELS',
1834
+        (isset($GLOBALS['meta']['max_taille_vignettes'])&&$GLOBALS['meta']['max_taille_vignettes']<5500000)
1835
+         ? $GLOBALS['meta']['max_taille_vignettes']
1836
+         : 0);
1837
+
1838
+    if (!defined('_MEMORY_LIMIT_MIN')) define('_MEMORY_LIMIT_MIN',10); // en Mo
1839
+    // si on est dans l'espace prive et si le besoin est superieur a 8Mo (qui est vraiment le standard)
1840
+    // on verifie que la memoire est suffisante pour le compactage css+js pour eviter la page blanche
1841
+    // il y aura d'autres problemes et l'utilisateur n'ira pas tres loin, mais ce sera plus comprehensible qu'une page blanche
1842
+    if (test_espace_prive() AND _MEMORY_LIMIT_MIN>8){
1843
+        if ($memory = trim(ini_get('memory_limit')) and $memory != -1) {
1844
+            $unit = strtolower(substr($memory,strlen($memory/1),1));
1845
+            switch($unit) {
1846
+                // Le modifieur 'G' est disponible depuis PHP 5.1.0
1847
+                case 'g': $memory *= 1024;
1848
+                case 'm': $memory *= 1024;
1849
+                case 'k': $memory *= 1024;
1850
+            }
1851
+            if ($memory<_MEMORY_LIMIT_MIN*1024*1024){
1852
+                ini_set('memory_limit',$m=_MEMORY_LIMIT_MIN.'M');
1853
+                if (trim(ini_get('memory_limit'))!=$m){
1854
+                    if (!defined('_INTERDIRE_COMPACTE_HEAD_ECRIRE')) define('_INTERDIRE_COMPACTE_HEAD_ECRIRE',true); // evite une page blanche car on ne saura pas calculer la css dans ce hit
1855
+                }
1856
+            }
1857
+        }
1858
+        else
1859
+            if (!defined('_INTERDIRE_COMPACTE_HEAD_ECRIRE')) define('_INTERDIRE_COMPACTE_HEAD_ECRIRE',true); // evite une page blanche car on ne saura pas calculer la css dans ce hit
1860
+    }
1861
+    // Protocoles a normaliser dans les chaines de langues
1862
+    if (!defined('_PROTOCOLES_STD'))
1863
+        define('_PROTOCOLES_STD', 'http|https|ftp|mailto|webcal');
1864
+
1865
+    init_var_mode();
1867 1866
 }
1868 1867
 
1869 1868
 // Reperer les variables d'URL qui conditionnent la perennite du cache, des urls
1870 1869
 // ou d'autres petit caches (trouver_table, css et js compactes ...)
1871 1870
 // http://doc.spip.org/@init_var_mode
1872 1871
 function init_var_mode(){
1873
-	static $done = false;
1874
-	if (!$done) {
1875
-
1876
-		if (isset($_GET['var_mode'])) {
1877
-			// tout le monde peut calcul/recalcul
1878
-			if ($_GET['var_mode'] == 'calcul'
1879
-			OR $_GET['var_mode'] == 'recalcul') {
1880
-				if (!defined('_VAR_MODE')) define('_VAR_MODE',$_GET['var_mode']);
1881
-			}
1882
-			// preview, debug, blocs, urls et images necessitent une autorisation
1883
-			else if (in_array($_GET['var_mode'],array('preview','debug','inclure','urls','images','traduction'))) {
1884
-				include_spip('inc/autoriser');
1885
-				if (autoriser(
1886
-					($_GET['var_mode'] == 'preview')
1887
-						? 'previsualiser'
1888
-						: 'debug'
1889
-				)) {
1890
-					switch($_GET['var_mode']){
1891
-						case 'traduction':
1892
-							// forcer le calcul pour passer dans traduire
1893
-							if (!defined('_VAR_MODE')) define('_VAR_MODE','calcul');
1894
-							// et ne pas enregistrer de cache pour ne pas trainer les surlignages sur d'autres pages
1895
-							if (!defined('_VAR_NOCACHE')) define('_VAR_NOCACHE',true);
1896
-							break;
1897
-						case 'preview':
1898
-							// basculer sur les criteres de preview dans les boucles
1899
-							if (!defined('_VAR_PREVIEW')) define('_VAR_PREVIEW',true);
1900
-							// forcer le calcul
1901
-							if (!defined('_VAR_MODE')) define('_VAR_MODE','calcul');
1902
-							// et ne pas enregistrer de cache
1903
-							if (!defined('_VAR_NOCACHE')) define('_VAR_NOCACHE',true);
1904
-							break;
1905
-						case 'inclure':
1906
-							// forcer le compilo et ignorer les caches existants
1907
-							if (!defined('_VAR_MODE')) define('_VAR_MODE','calcul');
1908
-							if (!defined('_VAR_INCLURE')) define('_VAR_INCLURE',true);
1909
-							// et ne pas enregistrer de cache
1910
-							if (!defined('_VAR_NOCACHE')) define('_VAR_NOCACHE',true);
1911
-							break;
1912
-						case 'urls':
1913
-							// forcer le compilo et ignorer les caches existants
1914
-							if (!defined('_VAR_MODE')) define('_VAR_MODE','calcul');
1915
-							if (!defined('_VAR_URLS')) define('_VAR_URLS',true);
1916
-							break;
1917
-						case 'images':
1918
-							// forcer le compilo et ignorer les caches existants
1919
-							if (!defined('_VAR_MODE')) define('_VAR_MODE','calcul');
1920
-							// indiquer qu'on doit recalculer les images
1921
-							if (!defined('_VAR_IMAGES')) define('_VAR_IMAGES',true);
1922
-							break;
1923
-						case 'debug':
1924
-							if (!defined('_VAR_MODE')) define('_VAR_MODE','debug');
1925
-							// et ne pas enregistrer de cache
1926
-							if (!defined('_VAR_NOCACHE')) define('_VAR_NOCACHE',true);
1927
-							break;
1928
-						default :
1929
-							if (!defined('_VAR_MODE')) define('_VAR_MODE',$_GET['var_mode']);
1930
-							break;
1931
-					}
1932
-          if (isset($GLOBALS['visiteur_session']['nom']))
1933
-					spip_log($GLOBALS['visiteur_session']['nom']
1934
-						. " "._VAR_MODE);
1935
-				}
1936
-				// pas autorise ?
1937
-				else {
1938
-					// si on n'est pas connecte on se redirige
1939
-					if (!$GLOBALS['visiteur_session']) {
1940
-						include_spip('inc/headers');
1941
-						redirige_par_entete(generer_url_public('login',
1942
-						'url='.rawurlencode(
1943
-						parametre_url(self(), 'var_mode', $_GET['var_mode'], '&')
1944
-						), true));
1945
-					}
1946
-					// sinon tant pis
1947
-				}
1948
-			}
1949
-			if (!defined('_VAR_MODE')) define('_VAR_MODE',false);
1950
-		}
1951
-		$done = true;
1952
-	}
1872
+    static $done = false;
1873
+    if (!$done) {
1874
+
1875
+        if (isset($_GET['var_mode'])) {
1876
+            // tout le monde peut calcul/recalcul
1877
+            if ($_GET['var_mode'] == 'calcul'
1878
+            OR $_GET['var_mode'] == 'recalcul') {
1879
+                if (!defined('_VAR_MODE')) define('_VAR_MODE',$_GET['var_mode']);
1880
+            }
1881
+            // preview, debug, blocs, urls et images necessitent une autorisation
1882
+            else if (in_array($_GET['var_mode'],array('preview','debug','inclure','urls','images','traduction'))) {
1883
+                include_spip('inc/autoriser');
1884
+                if (autoriser(
1885
+                    ($_GET['var_mode'] == 'preview')
1886
+                        ? 'previsualiser'
1887
+                        : 'debug'
1888
+                )) {
1889
+                    switch($_GET['var_mode']){
1890
+                        case 'traduction':
1891
+                            // forcer le calcul pour passer dans traduire
1892
+                            if (!defined('_VAR_MODE')) define('_VAR_MODE','calcul');
1893
+                            // et ne pas enregistrer de cache pour ne pas trainer les surlignages sur d'autres pages
1894
+                            if (!defined('_VAR_NOCACHE')) define('_VAR_NOCACHE',true);
1895
+                            break;
1896
+                        case 'preview':
1897
+                            // basculer sur les criteres de preview dans les boucles
1898
+                            if (!defined('_VAR_PREVIEW')) define('_VAR_PREVIEW',true);
1899
+                            // forcer le calcul
1900
+                            if (!defined('_VAR_MODE')) define('_VAR_MODE','calcul');
1901
+                            // et ne pas enregistrer de cache
1902
+                            if (!defined('_VAR_NOCACHE')) define('_VAR_NOCACHE',true);
1903
+                            break;
1904
+                        case 'inclure':
1905
+                            // forcer le compilo et ignorer les caches existants
1906
+                            if (!defined('_VAR_MODE')) define('_VAR_MODE','calcul');
1907
+                            if (!defined('_VAR_INCLURE')) define('_VAR_INCLURE',true);
1908
+                            // et ne pas enregistrer de cache
1909
+                            if (!defined('_VAR_NOCACHE')) define('_VAR_NOCACHE',true);
1910
+                            break;
1911
+                        case 'urls':
1912
+                            // forcer le compilo et ignorer les caches existants
1913
+                            if (!defined('_VAR_MODE')) define('_VAR_MODE','calcul');
1914
+                            if (!defined('_VAR_URLS')) define('_VAR_URLS',true);
1915
+                            break;
1916
+                        case 'images':
1917
+                            // forcer le compilo et ignorer les caches existants
1918
+                            if (!defined('_VAR_MODE')) define('_VAR_MODE','calcul');
1919
+                            // indiquer qu'on doit recalculer les images
1920
+                            if (!defined('_VAR_IMAGES')) define('_VAR_IMAGES',true);
1921
+                            break;
1922
+                        case 'debug':
1923
+                            if (!defined('_VAR_MODE')) define('_VAR_MODE','debug');
1924
+                            // et ne pas enregistrer de cache
1925
+                            if (!defined('_VAR_NOCACHE')) define('_VAR_NOCACHE',true);
1926
+                            break;
1927
+                        default :
1928
+                            if (!defined('_VAR_MODE')) define('_VAR_MODE',$_GET['var_mode']);
1929
+                            break;
1930
+                    }
1931
+            if (isset($GLOBALS['visiteur_session']['nom']))
1932
+                    spip_log($GLOBALS['visiteur_session']['nom']
1933
+                        . " "._VAR_MODE);
1934
+                }
1935
+                // pas autorise ?
1936
+                else {
1937
+                    // si on n'est pas connecte on se redirige
1938
+                    if (!$GLOBALS['visiteur_session']) {
1939
+                        include_spip('inc/headers');
1940
+                        redirige_par_entete(generer_url_public('login',
1941
+                        'url='.rawurlencode(
1942
+                        parametre_url(self(), 'var_mode', $_GET['var_mode'], '&')
1943
+                        ), true));
1944
+                    }
1945
+                    // sinon tant pis
1946
+                }
1947
+            }
1948
+            if (!defined('_VAR_MODE')) define('_VAR_MODE',false);
1949
+        }
1950
+        $done = true;
1951
+    }
1953 1952
 }
1954 1953
 
1955 1954
 // Annuler les magic quotes \' sur GET POST COOKIE et GLOBALS ;
@@ -1957,84 +1956,84 @@  discard block
 block discarded – undo
1957 1956
 // la commande is_readable('chemin/vers/fichier/interdit%00truc_normal')
1958 1957
 // http://doc.spip.org/@spip_desinfecte
1959 1958
 function spip_desinfecte(&$t,$deep = true) {
1960
-	static $magic_quotes;
1961
-	if (!isset($magic_quotes))
1962
-		$magic_quotes = @get_magic_quotes_gpc();
1963
-
1964
-	foreach ($t as $key => $val) {
1965
-		if (is_string($t[$key])) {
1966
-			if ($magic_quotes)
1967
-				$t[$key] = stripslashes($t[$key]);
1968
-			$t[$key] = str_replace(chr(0), '-', $t[$key]);
1969
-		}
1970
-		// traiter aussi les "texte_plus" de article_edit
1971
-		else if ($deep AND is_array($t[$key]) AND $key!=='GLOBALS')
1972
-			spip_desinfecte($t[$key],$deep);
1973
-	}
1959
+    static $magic_quotes;
1960
+    if (!isset($magic_quotes))
1961
+        $magic_quotes = @get_magic_quotes_gpc();
1962
+
1963
+    foreach ($t as $key => $val) {
1964
+        if (is_string($t[$key])) {
1965
+            if ($magic_quotes)
1966
+                $t[$key] = stripslashes($t[$key]);
1967
+            $t[$key] = str_replace(chr(0), '-', $t[$key]);
1968
+        }
1969
+        // traiter aussi les "texte_plus" de article_edit
1970
+        else if ($deep AND is_array($t[$key]) AND $key!=='GLOBALS')
1971
+            spip_desinfecte($t[$key],$deep);
1972
+    }
1974 1973
 }
1975 1974
 
1976 1975
 //  retourne le statut du visiteur s'il s'annonce
1977 1976
 
1978 1977
 // http://doc.spip.org/@verifier_visiteur
1979 1978
 function verifier_visiteur() {
1980
-	// Rq: pour que cette fonction marche depuis mes_options
1981
-	// il faut forcer l'init si ce n'est fait
1982
-	// mais on risque de perturber des plugins en initialisant trop tot
1983
-	// certaines constantes
1984
-	@spip_initialisation_core(
1985
-		(_DIR_RACINE  . _NOM_PERMANENTS_INACCESSIBLES),
1986
-		(_DIR_RACINE  . _NOM_PERMANENTS_ACCESSIBLES),
1987
-		(_DIR_RACINE  . _NOM_TEMPORAIRES_INACCESSIBLES),
1988
-		(_DIR_RACINE  . _NOM_TEMPORAIRES_ACCESSIBLES)
1989
-	);
1990
-
1991
-	// Demarrer une session NON AUTHENTIFIEE si on donne son nom
1992
-	// dans un formulaire sans login (ex: #FORMULAIRE_FORUM)
1993
-	// Attention on separe bien session_nom et nom, pour eviter
1994
-	// les melanges entre donnees SQL et variables plus aleatoires
1995
-	$variables_session = array('session_nom', 'session_email');
1996
-	foreach($variables_session as $var) {
1997
-		if (_request($var) !== null) {
1998
-			$init = true;
1999
-			break;
2000
-		}
2001
-	}
2002
-	if (isset($init)) {
2003
-		#@spip_initialisation_suite();
2004
-		$session = charger_fonction('session', 'inc');
2005
-		$session();
2006
-		include_spip('inc/texte');
2007
-		foreach($variables_session as $var)
2008
-			if (($a = _request($var)) !== null)
2009
-				$GLOBALS['visiteur_session'][$var] = safehtml($a);
2010
-		if (!isset($GLOBALS['visiteur_session']['id_auteur']))
2011
-			$GLOBALS['visiteur_session']['id_auteur'] = 0;
2012
-		$session($GLOBALS['visiteur_session']);
2013
-		return 0;
2014
-	}
2015
-
2016
-	$h = (isset($_SERVER['PHP_AUTH_USER'])  AND !$GLOBALS['ignore_auth_http']);
2017
-	if ($h OR isset($_COOKIE['spip_session']) OR isset($_COOKIE[$GLOBALS['cookie_prefix'].'_session'])) {
2018
-
2019
-		$session = charger_fonction('session', 'inc');
2020
-		if ($session()) {
2021
-			return $GLOBALS['visiteur_session']['statut'];
2022
-		}
2023
-		if ($h  AND isset($_SERVER['PHP_AUTH_PW'])) {
2024
-			include_spip('inc/auth');
2025
-			$h = lire_php_auth($_SERVER['PHP_AUTH_USER'], $_SERVER['PHP_AUTH_PW']);
2026
-		}
2027
-		if ($h) {
2028
-			$GLOBALS['visiteur_session'] = $h;
2029
-			return $GLOBALS['visiteur_session']['statut'];
2030
-		}
2031
-	}
2032
-
2033
-	// au moins son navigateur nous dit la langue preferee de cet inconnu
2034
-	include_spip('inc/lang');
2035
-	utiliser_langue_visiteur();
2036
-
2037
-	return false;
1979
+    // Rq: pour que cette fonction marche depuis mes_options
1980
+    // il faut forcer l'init si ce n'est fait
1981
+    // mais on risque de perturber des plugins en initialisant trop tot
1982
+    // certaines constantes
1983
+    @spip_initialisation_core(
1984
+        (_DIR_RACINE  . _NOM_PERMANENTS_INACCESSIBLES),
1985
+        (_DIR_RACINE  . _NOM_PERMANENTS_ACCESSIBLES),
1986
+        (_DIR_RACINE  . _NOM_TEMPORAIRES_INACCESSIBLES),
1987
+        (_DIR_RACINE  . _NOM_TEMPORAIRES_ACCESSIBLES)
1988
+    );
1989
+
1990
+    // Demarrer une session NON AUTHENTIFIEE si on donne son nom
1991
+    // dans un formulaire sans login (ex: #FORMULAIRE_FORUM)
1992
+    // Attention on separe bien session_nom et nom, pour eviter
1993
+    // les melanges entre donnees SQL et variables plus aleatoires
1994
+    $variables_session = array('session_nom', 'session_email');
1995
+    foreach($variables_session as $var) {
1996
+        if (_request($var) !== null) {
1997
+            $init = true;
1998
+            break;
1999
+        }
2000
+    }
2001
+    if (isset($init)) {
2002
+        #@spip_initialisation_suite();
2003
+        $session = charger_fonction('session', 'inc');
2004
+        $session();
2005
+        include_spip('inc/texte');
2006
+        foreach($variables_session as $var)
2007
+            if (($a = _request($var)) !== null)
2008
+                $GLOBALS['visiteur_session'][$var] = safehtml($a);
2009
+        if (!isset($GLOBALS['visiteur_session']['id_auteur']))
2010
+            $GLOBALS['visiteur_session']['id_auteur'] = 0;
2011
+        $session($GLOBALS['visiteur_session']);
2012
+        return 0;
2013
+    }
2014
+
2015
+    $h = (isset($_SERVER['PHP_AUTH_USER'])  AND !$GLOBALS['ignore_auth_http']);
2016
+    if ($h OR isset($_COOKIE['spip_session']) OR isset($_COOKIE[$GLOBALS['cookie_prefix'].'_session'])) {
2017
+
2018
+        $session = charger_fonction('session', 'inc');
2019
+        if ($session()) {
2020
+            return $GLOBALS['visiteur_session']['statut'];
2021
+        }
2022
+        if ($h  AND isset($_SERVER['PHP_AUTH_PW'])) {
2023
+            include_spip('inc/auth');
2024
+            $h = lire_php_auth($_SERVER['PHP_AUTH_USER'], $_SERVER['PHP_AUTH_PW']);
2025
+        }
2026
+        if ($h) {
2027
+            $GLOBALS['visiteur_session'] = $h;
2028
+            return $GLOBALS['visiteur_session']['statut'];
2029
+        }
2030
+    }
2031
+
2032
+    // au moins son navigateur nous dit la langue preferee de cet inconnu
2033
+    include_spip('inc/lang');
2034
+    utiliser_langue_visiteur();
2035
+
2036
+    return false;
2038 2037
 }
2039 2038
 
2040 2039
 // selectionne la langue donnee en argument et memorise la courante
@@ -2046,18 +2045,18 @@  discard block
 block discarded – undo
2046 2045
 
2047 2046
 // http://doc.spip.org/@lang_select
2048 2047
 function lang_select ($lang=NULL) {
2049
-	static $pile_langues = array();
2050
-	if (!function_exists('changer_langue'))
2051
-		include_spip('inc/lang');
2052
-	if ($lang === NULL)
2053
-		$lang = array_pop($pile_langues);
2054
-	else {
2055
-		array_push($pile_langues, $GLOBALS['spip_lang']);
2056
-	}
2057
-	if (isset($GLOBALS['spip_lang']) AND $lang == $GLOBALS['spip_lang'])
2058
-		return $lang;
2059
-	changer_langue($lang);
2060
-	return $lang;
2048
+    static $pile_langues = array();
2049
+    if (!function_exists('changer_langue'))
2050
+        include_spip('inc/lang');
2051
+    if ($lang === NULL)
2052
+        $lang = array_pop($pile_langues);
2053
+    else {
2054
+        array_push($pile_langues, $GLOBALS['spip_lang']);
2055
+    }
2056
+    if (isset($GLOBALS['spip_lang']) AND $lang == $GLOBALS['spip_lang'])
2057
+        return $lang;
2058
+    changer_langue($lang);
2059
+    return $lang;
2061 2060
 }
2062 2061
 
2063 2062
 
@@ -2070,18 +2069,18 @@  discard block
 block discarded – undo
2070 2069
 // de fichier cache
2071 2070
 // http://doc.spip.org/@spip_session
2072 2071
 function spip_session($force = false) {
2073
-	static $session;
2074
-	if ($force OR !isset($session)) {
2075
-		$s = pipeline('definir_session',
2076
-			$GLOBALS['visiteur_session']
2077
-			? serialize($GLOBALS['visiteur_session'])
2078
-				. '_' . @$_COOKIE['spip_session']
2079
-			: ''
2080
-		);
2081
-		$session = $s ? substr(md5($s), 0, 8) : '';
2082
-	}
2083
-	#spip_log('session: '.$session);
2084
-	return $session;
2072
+    static $session;
2073
+    if ($force OR !isset($session)) {
2074
+        $s = pipeline('definir_session',
2075
+            $GLOBALS['visiteur_session']
2076
+            ? serialize($GLOBALS['visiteur_session'])
2077
+                . '_' . @$_COOKIE['spip_session']
2078
+            : ''
2079
+        );
2080
+        $session = $s ? substr(md5($s), 0, 8) : '';
2081
+    }
2082
+    #spip_log('session: '.$session);
2083
+    return $session;
2085 2084
 }
2086 2085
 
2087 2086
 
@@ -2098,18 +2097,18 @@  discard block
 block discarded – undo
2098 2097
 **/
2099 2098
 // http://doc.spip.org/@aide
2100 2099
 function aide($aide='', $distante = false) {
2101
-		$aider = charger_fonction('aider', 'inc', true);
2102
-	return $aider ?  $aider($aide, '', array(), $distante) : '';
2100
+        $aider = charger_fonction('aider', 'inc', true);
2101
+    return $aider ?  $aider($aide, '', array(), $distante) : '';
2103 2102
 }
2104 2103
 
2105 2104
 // normalement il faudrait creer exec/info.php, mais pour mettre juste ca:
2106 2105
 // http://doc.spip.org/@exec_info_dist
2107 2106
 function exec_info_dist() {
2108
-	global $connect_statut;
2109
-	if ($connect_statut == '0minirezo')
2110
-		phpinfo();
2111
-	else
2112
-		echo "pas admin";
2107
+    global $connect_statut;
2108
+    if ($connect_statut == '0minirezo')
2109
+        phpinfo();
2110
+    else
2111
+        echo "pas admin";
2113 2112
 }
2114 2113
 
2115 2114
 /**
@@ -2129,12 +2128,12 @@  discard block
 block discarded – undo
2129 2128
  * 		- string si $message à false.
2130 2129
 **/
2131 2130
 function erreur_squelette($message='', $lieu='') {
2132
-	$debusquer = charger_fonction('debusquer', 'public');
2133
-	if (is_array($lieu)) {
2134
-		include_spip('public/compiler');
2135
-		$lieu = reconstruire_contexte_compil($lieu);
2136
-	}
2137
-	return $debusquer($message, $lieu);
2131
+    $debusquer = charger_fonction('debusquer', 'public');
2132
+    if (is_array($lieu)) {
2133
+        include_spip('public/compiler');
2134
+        $lieu = reconstruire_contexte_compil($lieu);
2135
+    }
2136
+    return $debusquer($message, $lieu);
2138 2137
 }
2139 2138
 
2140 2139
 /**
@@ -2169,67 +2168,67 @@  discard block
 block discarded – undo
2169 2168
  * 		ou tableau d'information sur le squelette.
2170 2169
  */
2171 2170
 function recuperer_fond($fond, $contexte=array(), $options = array(), $connect='') {
2172
-	if (!function_exists('evaluer_fond'))
2173
-		include_spip('public/assembler');
2174
-	// assurer la compat avec l'ancienne syntaxe
2175
-	// (trim etait le 3eme argument, par defaut a true)
2176
-	if (!is_array($options)) $options = array('trim'=>$options);
2177
-	if (!isset($options['trim'])) $options['trim']=true;
2178
-
2179
-	if (isset($contexte['connect'])){
2180
-		$connect = ($connect ? $connect : $contexte['connect']);
2181
-		unset($contexte['connect']);
2182
-	}
2183
-
2184
-	$texte = "";
2185
-	$pages = array();
2186
-	$lang_select = '';
2187
-	if (!isset($options['etoile']) OR !$options['etoile']){
2188
-		// Si on a inclus sans fixer le critere de lang, on prend la langue courante
2189
-		if (!isset($contexte['lang']))
2190
-			$contexte['lang'] = $GLOBALS['spip_lang'];
2191
-
2192
-		if ($contexte['lang'] != $GLOBALS['meta']['langue_site']) {
2193
-			$lang_select = lang_select($contexte['lang']);
2194
-		}
2195
-	}
2196
-
2197
-	@$GLOBALS['_INC_PUBLIC']++;
2198
-
2199
-	foreach(is_array($fond) ? $fond : array($fond) as $f){
2200
-		$page = evaluer_fond($f, $contexte, $connect);
2201
-		if ($page === '') {
2202
-			$c = isset($options['compil']) ? $options['compil'] :'';
2203
-			$a = array('fichier'=>$fond);
2204
-			$erreur = _T('info_erreur_squelette2', $a); // squelette introuvable
2205
-			erreur_squelette($erreur, $c);
2206
-			// eviter des erreurs strictes ensuite sur $page['cle'] en PHP >= 5.4
2207
-			$page = array('texte' => '', 'erreur' => $erreur);
2208
-		}
2209
-
2210
-		$page = pipeline('recuperer_fond',array(
2211
-			'args'=>array('fond'=>$f,'contexte'=>$contexte,'options'=>$options,'connect'=>$connect),
2212
-			'data'=>$page
2213
-		));
2214
-		if (isset($options['ajax']) AND $options['ajax']){
2215
-			if (!function_exists('encoder_contexte_ajax'))
2216
-				include_spip('inc/filtres');
2217
-			$page['texte'] = encoder_contexte_ajax(array_merge($contexte,array('fond'=>$f)),'',$page['texte'], $options['ajax']);
2218
-		}
2219
-
2220
-		if (isset($options['raw']) AND $options['raw'])
2221
-			$pages[] = $page;
2222
-		else
2223
-			$texte .= $options['trim'] ? rtrim($page['texte']) : $page['texte'];
2224
-	}
2225
-
2226
-	$GLOBALS['_INC_PUBLIC']--;
2227
-
2228
-	if ($lang_select) lang_select();
2229
-	if (isset($options['raw']) AND $options['raw'])
2230
-		return is_array($fond)?$pages:reset($pages);
2231
-	else
2232
-		return $options['trim'] ? ltrim($texte) : $texte;
2171
+    if (!function_exists('evaluer_fond'))
2172
+        include_spip('public/assembler');
2173
+    // assurer la compat avec l'ancienne syntaxe
2174
+    // (trim etait le 3eme argument, par defaut a true)
2175
+    if (!is_array($options)) $options = array('trim'=>$options);
2176
+    if (!isset($options['trim'])) $options['trim']=true;
2177
+
2178
+    if (isset($contexte['connect'])){
2179
+        $connect = ($connect ? $connect : $contexte['connect']);
2180
+        unset($contexte['connect']);
2181
+    }
2182
+
2183
+    $texte = "";
2184
+    $pages = array();
2185
+    $lang_select = '';
2186
+    if (!isset($options['etoile']) OR !$options['etoile']){
2187
+        // Si on a inclus sans fixer le critere de lang, on prend la langue courante
2188
+        if (!isset($contexte['lang']))
2189
+            $contexte['lang'] = $GLOBALS['spip_lang'];
2190
+
2191
+        if ($contexte['lang'] != $GLOBALS['meta']['langue_site']) {
2192
+            $lang_select = lang_select($contexte['lang']);
2193
+        }
2194
+    }
2195
+
2196
+    @$GLOBALS['_INC_PUBLIC']++;
2197
+
2198
+    foreach(is_array($fond) ? $fond : array($fond) as $f){
2199
+        $page = evaluer_fond($f, $contexte, $connect);
2200
+        if ($page === '') {
2201
+            $c = isset($options['compil']) ? $options['compil'] :'';
2202
+            $a = array('fichier'=>$fond);
2203
+            $erreur = _T('info_erreur_squelette2', $a); // squelette introuvable
2204
+            erreur_squelette($erreur, $c);
2205
+            // eviter des erreurs strictes ensuite sur $page['cle'] en PHP >= 5.4
2206
+            $page = array('texte' => '', 'erreur' => $erreur);
2207
+        }
2208
+
2209
+        $page = pipeline('recuperer_fond',array(
2210
+            'args'=>array('fond'=>$f,'contexte'=>$contexte,'options'=>$options,'connect'=>$connect),
2211
+            'data'=>$page
2212
+        ));
2213
+        if (isset($options['ajax']) AND $options['ajax']){
2214
+            if (!function_exists('encoder_contexte_ajax'))
2215
+                include_spip('inc/filtres');
2216
+            $page['texte'] = encoder_contexte_ajax(array_merge($contexte,array('fond'=>$f)),'',$page['texte'], $options['ajax']);
2217
+        }
2218
+
2219
+        if (isset($options['raw']) AND $options['raw'])
2220
+            $pages[] = $page;
2221
+        else
2222
+            $texte .= $options['trim'] ? rtrim($page['texte']) : $page['texte'];
2223
+    }
2224
+
2225
+    $GLOBALS['_INC_PUBLIC']--;
2226
+
2227
+    if ($lang_select) lang_select();
2228
+    if (isset($options['raw']) AND $options['raw'])
2229
+        return is_array($fond)?$pages:reset($pages);
2230
+    else
2231
+        return $options['trim'] ? ltrim($texte) : $texte;
2233 2232
 }
2234 2233
 
2235 2234
 /**
@@ -2239,7 +2238,7 @@  discard block
 block discarded – undo
2239 2238
  * @return string
2240 2239
  */
2241 2240
 function trouve_modele($nom) {
2242
-	return trouver_fond($nom,'modeles/');
2241
+    return trouver_fond($nom,'modeles/');
2243 2242
 }
2244 2243
 
2245 2244
 /**
@@ -2255,54 +2254,54 @@  discard block
 block discarded – undo
2255 2254
  * @return array|string
2256 2255
  */
2257 2256
 function trouver_fond($nom, $dir='', $pathinfo = false) {
2258
-	$f = find_in_path($nom.'.'. _EXTENSION_SQUELETTES, $dir?rtrim($dir,'/').'/':'');
2259
-	if (!$pathinfo) return $f;
2260
-	// renvoyer un tableau detaille si $pathinfo==true
2261
-	$p = pathinfo($f);
2262
-	if (!isset($p['extension']) OR !$p['extension']) {
2263
-		$p['extension'] = _EXTENSION_SQUELETTES;
2264
-	}
2265
-	if (!isset($p['extension']) OR !$p['filename']) {
2266
-		$p['filename'] = ($p['basename']?substr($p['basename'],0,-strlen($p['extension'])-1):'');
2267
-	}
2268
-	$p['fond'] = ($f?substr($f,0,-strlen($p['extension'])-1):'');
2269
-	return $p;
2257
+    $f = find_in_path($nom.'.'. _EXTENSION_SQUELETTES, $dir?rtrim($dir,'/').'/':'');
2258
+    if (!$pathinfo) return $f;
2259
+    // renvoyer un tableau detaille si $pathinfo==true
2260
+    $p = pathinfo($f);
2261
+    if (!isset($p['extension']) OR !$p['extension']) {
2262
+        $p['extension'] = _EXTENSION_SQUELETTES;
2263
+    }
2264
+    if (!isset($p['extension']) OR !$p['filename']) {
2265
+        $p['filename'] = ($p['basename']?substr($p['basename'],0,-strlen($p['extension'])-1):'');
2266
+    }
2267
+    $p['fond'] = ($f?substr($f,0,-strlen($p['extension'])-1):'');
2268
+    return $p;
2270 2269
 }
2271 2270
 
2272 2271
 function tester_url_ecrire($nom){
2273
-	static $exec=array();
2274
-	if (isset($exec[$nom])) return $exec[$nom];
2275
-	// tester si c'est une page en squelette
2276
-	if (trouver_fond($nom, 'prive/squelettes/contenu/'))
2277
-		return $exec[$nom] = 'fond';
2278
-	// compat skels orthogonaux version precedente
2279
-	elseif (trouver_fond($nom, 'prive/exec/'))
2280
-		return $exec[$nom] = 'fond_monobloc';
2281
-	// echafaudage d'un fond !
2282
-	elseif(include_spip('public/styliser_par_z') AND z_echafaudable($nom))
2283
-		return $exec[$nom] = 'fond';
2284
-	// attention, il ne faut pas inclure l'exec ici
2285
-	// car sinon #URL_ECRIRE provoque des inclusions
2286
-	// et des define intrusifs potentiels
2287
-	return $exec[$nom] = ((find_in_path("{$nom}.php",'exec/') OR charger_fonction($nom,'exec',true))?$nom:'');
2272
+    static $exec=array();
2273
+    if (isset($exec[$nom])) return $exec[$nom];
2274
+    // tester si c'est une page en squelette
2275
+    if (trouver_fond($nom, 'prive/squelettes/contenu/'))
2276
+        return $exec[$nom] = 'fond';
2277
+    // compat skels orthogonaux version precedente
2278
+    elseif (trouver_fond($nom, 'prive/exec/'))
2279
+        return $exec[$nom] = 'fond_monobloc';
2280
+    // echafaudage d'un fond !
2281
+    elseif(include_spip('public/styliser_par_z') AND z_echafaudable($nom))
2282
+        return $exec[$nom] = 'fond';
2283
+    // attention, il ne faut pas inclure l'exec ici
2284
+    // car sinon #URL_ECRIRE provoque des inclusions
2285
+    // et des define intrusifs potentiels
2286
+    return $exec[$nom] = ((find_in_path("{$nom}.php",'exec/') OR charger_fonction($nom,'exec',true))?$nom:'');
2288 2287
 }
2289 2288
 
2290 2289
 // Charger dynamiquement une extension php
2291 2290
 // http://doc.spip.org/@charger_php_extension
2292 2291
 function charger_php_extension($module) {
2293
-	if (extension_loaded($module)) {
2294
-		return true;
2295
-	} else {
2296
-		$charger_php_extension = charger_fonction('charger_php_extension','inc');
2297
-		return $charger_php_extension($module);
2298
-	}
2292
+    if (extension_loaded($module)) {
2293
+        return true;
2294
+    } else {
2295
+        $charger_php_extension = charger_fonction('charger_php_extension','inc');
2296
+        return $charger_php_extension($module);
2297
+    }
2299 2298
 }
2300 2299
 
2301 2300
 // Renvoie TRUE si et seulement si la configuration autorise
2302 2301
 // le code HTML5 sur le site public
2303 2302
 function html5_permis() {
2304 2303
         return (isset($GLOBALS['meta']['version_html_max'])
2305
-		AND ('html5' == $GLOBALS['meta']['version_html_max']));
2304
+        AND ('html5' == $GLOBALS['meta']['version_html_max']));
2306 2305
 }
2307 2306
 
2308 2307
 /*
@@ -2313,7 +2312,7 @@  discard block
 block discarded – undo
2313 2312
 // Fonction depreciee
2314 2313
 // http://doc.spip.org/@lire_meta
2315 2314
 function lire_meta($nom) {
2316
-	return $GLOBALS['meta'][$nom];
2315
+    return $GLOBALS['meta'][$nom];
2317 2316
 }
2318 2317
 
2319 2318
 // Fonction depreciee
@@ -2323,15 +2322,15 @@  discard block
 block discarded – undo
2323 2322
 // Fonction depreciee, cf. http://doc.spip.org/@sql_fetch
2324 2323
 // http://doc.spip.org/@spip_fetch_array
2325 2324
 function spip_fetch_array($r, $t=NULL) {
2326
-	if (!isset($t)) {
2327
-		if ($r) return sql_fetch($r);
2328
-	} else {
2329
-		if ($t=='SPIP_NUM') $t = MYSQL_NUM;
2330
-		if ($t=='SPIP_BOTH') $t = MYSQL_BOTH;
2331
-		if ($t=='SPIP_ASSOC') $t = MYSQL_ASSOC;
2332
-		spip_log("appel deprecie de spip_fetch_array(..., $t)", 'vieilles_defs');
2333
-		if ($r) return mysql_fetch_array($r, $t);
2334
-	}
2325
+    if (!isset($t)) {
2326
+        if ($r) return sql_fetch($r);
2327
+    } else {
2328
+        if ($t=='SPIP_NUM') $t = MYSQL_NUM;
2329
+        if ($t=='SPIP_BOTH') $t = MYSQL_BOTH;
2330
+        if ($t=='SPIP_ASSOC') $t = MYSQL_ASSOC;
2331
+        spip_log("appel deprecie de spip_fetch_array(..., $t)", 'vieilles_defs');
2332
+        if ($r) return mysql_fetch_array($r, $t);
2333
+    }
2335 2334
 }
2336 2335
 
2337 2336
 /**
@@ -2345,14 +2344,14 @@  discard block
 block discarded – undo
2345 2344
  * @param string $statut
2346 2345
  */
2347 2346
 function avertir_auteurs($nom,$message, $statut=''){
2348
-	$alertes = $GLOBALS['meta']['message_alertes_auteurs'];
2349
-	if (!$alertes
2350
-		OR !is_array($alertes = unserialize($alertes)))
2351
-		$alertes = array();
2352
-
2353
-	if (!isset($alertes[$statut]))
2354
-		$alertes[$statut] = array();
2355
-	$alertes[$statut][$nom] = $message;
2356
-	ecrire_meta("message_alertes_auteurs",serialize($alertes));
2347
+    $alertes = $GLOBALS['meta']['message_alertes_auteurs'];
2348
+    if (!$alertes
2349
+        OR !is_array($alertes = unserialize($alertes)))
2350
+        $alertes = array();
2351
+
2352
+    if (!isset($alertes[$statut]))
2353
+        $alertes[$statut] = array();
2354
+    $alertes[$statut][$nom] = $message;
2355
+    ecrire_meta("message_alertes_auteurs",serialize($alertes));
2357 2356
 }
2358 2357
 ?>
Please login to merge, or discard this patch.
Spacing   +342 added lines, -345 removed lines patch added patch discarded remove patch
@@ -29,21 +29,21 @@  discard block
 block discarded – undo
29 29
  * @param bool $continue
30 30
  * @return string
31 31
  */
32
-function charger_fonction($nom, $dossier='exec', $continue=false) {
32
+function charger_fonction($nom, $dossier = 'exec', $continue = false) {
33 33
 	static $echecs = array();
34 34
 
35
-	if (strlen($dossier) AND substr($dossier,-1) != '/') $dossier .= '/';
36
-	$f = str_replace('/','_',$dossier) . $nom;
35
+	if (strlen($dossier) AND substr($dossier, -1) != '/') $dossier .= '/';
36
+	$f = str_replace('/', '_', $dossier).$nom;
37 37
 
38 38
 	if (function_exists($f))
39 39
 		return $f;
40
-	if (function_exists($g = $f . '_dist'))
40
+	if (function_exists($g = $f.'_dist'))
41 41
 		return $g;
42 42
 
43 43
 	if (isset($echecs[$f])) return $echecs[$f];
44 44
 	// Sinon charger le fichier de declaration si plausible
45 45
 
46
-	if (!preg_match(',^\w+$,', $f)){
46
+	if (!preg_match(',^\w+$,', $f)) {
47 47
 		if ($continue) return false; //appel interne, on passe
48 48
 		include_spip('inc/minipres');
49 49
 		echo minipres();
@@ -55,21 +55,21 @@  discard block
 block discarded – undo
55 55
 	if (!$inc = include_spip($dossier.($d = strtolower($nom)))
56 56
 		// si le fichier truc/machin/nom.php n'existe pas,
57 57
 		// la fonction peut etre definie dans truc/machin.php qui regroupe plusieurs petites fonctions
58
-		AND strlen(dirname($dossier)) AND dirname($dossier)!='.')
59
-		include_spip(substr($dossier,0,-1));
58
+		AND strlen(dirname($dossier)) AND dirname($dossier) != '.')
59
+		include_spip(substr($dossier, 0, -1));
60 60
 	if (function_exists($f)) return $f;
61 61
 	if (function_exists($g)) return $g;
62 62
 
63 63
 	if ($continue) return $echecs[$f] = false;
64 64
 
65 65
 	// Echec : message d'erreur
66
-	spip_log("fonction $nom ($f ou $g) indisponible" .
66
+	spip_log("fonction $nom ($f ou $g) indisponible".
67 67
 		($inc ? "" : " (fichier $d absent de $dossier)"));
68 68
 
69 69
 	include_spip('inc/minipres');
70 70
 	echo minipres(_T('forum_titre_erreur'),
71 71
 		 _T('fichier_introuvable', array('fichier'=> '<b>'.spip_htmlentities($d).'</b>')),
72
-		array('all_inline'=>true,'status'=>404));
72
+		array('all_inline'=>true, 'status'=>404));
73 73
 	exit;
74 74
 }
75 75
 
@@ -78,12 +78,12 @@  discard block
 block discarded – undo
78 78
  * @param string $file
79 79
  * @return bool
80 80
  */
81
-function include_once_check($file){
82
-	if (file_exists($file)) {include_once $file;return true;}
83
-	$crash = (isset($GLOBALS['meta']['message_crash_plugins'])?unserialize($GLOBALS['meta']['message_crash_plugins']):'');
84
-	$crash = ($crash?$crash:array());
81
+function include_once_check($file) {
82
+	if (file_exists($file)) {include_once $file; return true; }
83
+	$crash = (isset($GLOBALS['meta']['message_crash_plugins']) ?unserialize($GLOBALS['meta']['message_crash_plugins']) : '');
84
+	$crash = ($crash ? $crash : array());
85 85
 	$crash[$file] = true;
86
-	ecrire_meta('message_crash_plugins',serialize($crash));
86
+	ecrire_meta('message_crash_plugins', serialize($crash));
87 87
 	return false;
88 88
 }
89 89
 
@@ -92,12 +92,12 @@  discard block
 block discarded – undo
92 92
 //
93 93
 // http://doc.spip.org/@include_spip
94 94
 function include_spip($f, $include = true) {
95
-	return find_in_path($f . '.php', '', $include);
95
+	return find_in_path($f.'.php', '', $include);
96 96
 }
97 97
 
98 98
 
99 99
 function require_spip($f) {
100
-	return find_in_path($f . '.php', '', 'required');
100
+	return find_in_path($f.'.php', '', 'required');
101 101
 }
102 102
 
103 103
 // un pipeline est lie a une action et une valeur
@@ -113,7 +113,7 @@  discard block
 block discarded – undo
113 113
 // utilisee dans le script pipeline precompile
114 114
 // on passe $val par reference pour limiter les allocations memoire
115 115
 // http://doc.spip.org/@minipipe
116
-function minipipe($fonc,&$val){
116
+function minipipe($fonc, &$val) {
117 117
 	// fonction
118 118
 	if (function_exists($fonc))
119 119
 		$val = call_user_func($fonc, $val);
@@ -130,7 +130,7 @@  discard block
 block discarded – undo
130 130
 
131 131
 // chargement du pipeline sous la forme d'un fichier php prepare
132 132
 // http://doc.spip.org/@pipeline
133
-function pipeline($action, $val=null) {
133
+function pipeline($action, $val = null) {
134 134
 	static $charger;
135 135
 
136 136
 	// chargement initial des fonctions mises en cache, ou generation du cache
@@ -156,15 +156,15 @@  discard block
 block discarded – undo
156 156
 	}
157 157
 	// plantage ?
158 158
 	else {
159
-		spip_log("fonction $fonc absente : pipeline desactive",_LOG_ERREUR);
159
+		spip_log("fonction $fonc absente : pipeline desactive", _LOG_ERREUR);
160 160
 	}
161 161
 
162 162
 	// si le flux est une table avec 2 cle args&data
163 163
 	// on ne ressort du pipe que les donnees dans 'data'
164 164
 	// array_key_exists pour php 4.1.0
165 165
 	if (is_array($val)
166
-	  AND count($val)==2
167
-	  AND (array_key_exists('data',$val)))
166
+	  AND count($val) == 2
167
+	  AND (array_key_exists('data', $val)))
168 168
 		$val = $val['data'];
169 169
 	return $val;
170 170
 }
@@ -186,7 +186,7 @@  discard block
 block discarded – undo
186 186
  * @param string $logdir  ## inutile !! a supprimer ?
187 187
  * @param string $logsuf  ## inutile !! a supprimer ?
188 188
  */
189
-function spip_log($message=NULL, $name=NULL) {
189
+function spip_log($message = NULL, $name = NULL) {
190 190
 	static $pre = array();
191 191
 	static $log;
192 192
 	preg_match('/^([a-z_]*)\.?(\d)?$/iS', (string) $name, $regs);
@@ -196,7 +196,7 @@  discard block
 block discarded – undo
196 196
 		$niveau = _LOG_INFO;
197 197
 
198 198
 	if ($niveau <= (defined('_LOG_FILTRE_GRAVITE') ? _LOG_FILTRE_GRAVITE : _LOG_INFO_IMPORTANTE)) {
199
-		if (!$pre){
199
+		if (!$pre) {
200 200
 			$pre = array(
201 201
 				_LOG_HS=>'HS:',
202 202
 				_LOG_ALERTE_ROUGE=>'ALERTE:',
@@ -224,7 +224,7 @@  discard block
 block discarded – undo
224 224
 // Renvoie le _GET ou le _POST emis par l'utilisateur
225 225
 // ou pioche dans $c si c'est un array()
226 226
 // http://doc.spip.org/@_request
227
-function _request($var, $c=false) {
227
+function _request($var, $c = false) {
228 228
 
229 229
 	if (is_array($c))
230 230
 		return isset($c[$var]) ? $c[$var] : NULL;
@@ -256,7 +256,7 @@  discard block
 block discarded – undo
256 256
 // Methode set de la fonction _request()
257 257
 // Attention au cas ou l'on fait set_request('truc', NULL);
258 258
 // http://doc.spip.org/@set_request
259
-function set_request($var, $val = NULL, $c=false) {
259
+function set_request($var, $val = NULL, $c = false) {
260 260
 	if (is_array($c)) {
261 261
 		unset($c[$var]);
262 262
 		if ($val !== NULL)
@@ -312,9 +312,9 @@  discard block
 block discarded – undo
312 312
  * @param string $sep
313 313
  * @return string
314 314
  */
315
-function parametre_url($url, $c, $v=NULL, $sep='&amp;') {
315
+function parametre_url($url, $c, $v = NULL, $sep = '&amp;') {
316 316
 	// requete erronnee : plusieurs variable dans $c et aucun $v
317
-	if (strpos($c,"|")!==false AND is_null($v))
317
+	if (strpos($c, "|") !== false AND is_null($v))
318 318
 		return null;
319 319
 
320 320
 	// lever l'#ancre
@@ -329,17 +329,17 @@  discard block
 block discarded – undo
329 329
 
330 330
 	// recuperer la base
331 331
 	$a = array_shift($url);
332
-	if (!$a) $a= './';
332
+	if (!$a) $a = './';
333 333
 
334
-	$regexp = ',^(' . str_replace('[]','\[\]',$c) . '[[]?[]]?)(=.*)?$,';
335
-	$ajouts = array_flip(explode('|',$c));
334
+	$regexp = ',^('.str_replace('[]', '\[\]', $c).'[[]?[]]?)(=.*)?$,';
335
+	$ajouts = array_flip(explode('|', $c));
336 336
 	$u = is_array($v) ? $v : rawurlencode($v);
337
-	$testv = (is_array($v)?count($v):strlen($v));
337
+	$testv = (is_array($v) ?count($v) : strlen($v));
338 338
 	// lire les variables et agir
339 339
 	foreach ($url as $n => $val) {
340 340
 		if (preg_match($regexp, urldecode($val), $r)) {
341 341
 			if ($v === NULL) {
342
-				return $r[2]?substr($r[2],1):'';
342
+				return $r[2] ?substr($r[2], 1) : '';
343 343
 			}
344 344
 			// suppression
345 345
 			elseif (!$testv) {
@@ -347,7 +347,7 @@  discard block
 block discarded – undo
347 347
 			}
348 348
 	// Ajout. Pour une variable, remplacer au meme endroit,
349 349
 	// pour un tableau ce sera fait dans la prochaine boucle
350
-			elseif (substr($r[1],-2) != '[]') {
350
+			elseif (substr($r[1], -2) != '[]') {
351 351
 				$url[$n] = $r[1].'='.$u;
352 352
 				unset($ajouts[$r[1]]);
353 353
 			}
@@ -357,15 +357,15 @@  discard block
 block discarded – undo
357 357
 	// traiter les parametres pas encore trouves
358 358
 	if ($v === NULL
359 359
 	AND $args = func_get_args()
360
-	AND count($args)==2)
360
+	AND count($args) == 2)
361 361
 		return $v;
362 362
 	elseif ($testv) {
363
-		foreach($ajouts as $k => $n) {
363
+		foreach ($ajouts as $k => $n) {
364 364
 		  if (!is_array($v))
365
-		    $url[] = $k .'=' . $u;
365
+		    $url[] = $k.'='.$u;
366 366
 		  else {
367
-		  	$id = (substr($k,-2) == '[]') ? $k : ($k ."[]");
368
-		    foreach ($v as $w) $url[]= $id .'=' . $w;
367
+		  	$id = (substr($k, -2) == '[]') ? $k : ($k."[]");
368
+		    foreach ($v as $w) $url[] = $id.'='.$w;
369 369
 		  }
370 370
 		}
371 371
 	}
@@ -375,9 +375,9 @@  discard block
 block discarded – undo
375 375
 
376 376
 	// recomposer l'adresse
377 377
 	if ($url)
378
-		$a .= '?' . join($sep, $url);
378
+		$a .= '?'.join($sep, $url);
379 379
 
380
-	return $a . $ancre;
380
+	return $a.$ancre;
381 381
 }
382 382
 
383 383
 // Prend une URL et lui ajoute/retire une ancre apres l'avoir nettoyee
@@ -389,13 +389,13 @@  discard block
 block discarded – undo
389 389
 	if (preg_match(',^([^#]*)(#.*)$,', $url, $r)) {
390 390
 		$url = $r[1];
391 391
 	}
392
-	if (preg_match('/[^-_a-zA-Z0-9]+/S',$ancre)){
392
+	if (preg_match('/[^-_a-zA-Z0-9]+/S', $ancre)) {
393 393
 		if (!function_exists('translitteration'))
394 394
 			include_spip('inc/charsets');
395 395
 		$ancre = preg_replace(array('/^[^-_a-zA-Z0-9]+/', '/[^-_a-zA-Z0-9]/'), array('', '-'),
396 396
 						translitteration($ancre));
397 397
 	}
398
-	return $url . (strlen($ancre) ? '#'. $ancre : '');
398
+	return $url.(strlen($ancre) ? '#'.$ancre : '');
399 399
 }
400 400
 
401 401
 /**
@@ -409,17 +409,16 @@  discard block
 block discarded – undo
409 409
 {
410 410
 	static $done = false;
411 411
 	static $propre = '';
412
-	if (!is_null($reset)) return $propre=$reset;
412
+	if (!is_null($reset)) return $propre = $reset;
413 413
 	if ($done) return $propre;
414 414
 	$done = true;
415 415
 
416 416
 	$uri1 = $GLOBALS['REQUEST_URI'];
417 417
 	do {
418 418
 		$uri = $uri1;
419
-		$uri1 = preg_replace
420
-			(',([?&])(PHPSESSID|(var_[^=&]*))=[^&]*(&|$),i',
419
+		$uri1 = preg_replace(',([?&])(PHPSESSID|(var_[^=&]*))=[^&]*(&|$),i',
421 420
 			'\1', $uri);
422
-	} while ($uri<>$uri1);
421
+	} while ($uri <> $uri1);
423 422
 
424 423
 	return $propre = (preg_replace(',[?&]$,', '', $uri1));
425 424
 }
@@ -439,19 +438,19 @@  discard block
 block discarded – undo
439 438
 	if (!$root
440 439
 		AND (
441 440
 			// si pas de profondeur on peut tronquer
442
-			$GLOBALS['profondeur_url']<(_DIR_RESTREINT?1:2)
441
+			$GLOBALS['profondeur_url'] < (_DIR_RESTREINT ? 1 : 2)
443 442
 			// sinon c'est OK si _SET_HTML_BASE a ete force a false
444 443
 			OR (defined('_SET_HTML_BASE') AND !_SET_HTML_BASE))
445 444
 		)
446 445
 		$url = preg_replace(',^[^?]*/,', '', $url);
447 446
 	// ajouter le cas echeant les variables _POST['id_...']
448 447
 	foreach ($_POST as $v => $c)
449
-		if (substr($v,0,3) == 'id_')
448
+		if (substr($v, 0, 3) == 'id_')
450 449
 			$url = parametre_url($url, $v, $c, '&');
451 450
 
452 451
 	// supprimer les variables sans interet
453 452
 	if (test_espace_prive()) {
454
-		$url = preg_replace (',([?&])('
453
+		$url = preg_replace(',([?&])('
455 454
 		.'lang|show_docs|'
456 455
 		.'changer_lang|var_lang|action)=[^&]*,i', '\1', $url);
457 456
 		$url = preg_replace(',([?&])[&]+,', '\1', $url);
@@ -487,8 +486,8 @@  discard block
 block discarded – undo
487 486
  * @param string $plugin
488 487
  * @return bool
489 488
  */
490
-function test_plugin_actif($plugin){
491
-	return ($plugin AND defined('_DIR_PLUGIN_'.strtoupper($plugin)))? true:false;
489
+function test_plugin_actif($plugin) {
490
+	return ($plugin AND defined('_DIR_PLUGIN_'.strtoupper($plugin))) ? true:false;
492 491
 }
493 492
 
494 493
 /**
@@ -502,14 +501,14 @@  discard block
 block discarded – undo
502 501
  *   bool force : forcer un retour meme si la chaine n'a pas de traduction
503 502
  * @return mixed|string
504 503
  */
505
-function _T($texte, $args=array(), $options=array()) {
506
-	static $traduire=false ;
504
+function _T($texte, $args = array(), $options = array()) {
505
+	static $traduire = false;
507 506
 	$o = array('class'=>'', 'force'=>true);
508
-	if ($options){
507
+	if ($options) {
509 508
 		// support de l'ancien argument $class
510 509
 		if (is_string($options))
511 510
 			$options = array('class'=>$options);
512
-		$o = array_merge($o,$options);
511
+		$o = array_merge($o, $options);
513 512
 	}
514 513
 
515 514
  	if (!$traduire) {
@@ -519,7 +518,7 @@  discard block
 block discarded – undo
519 518
 	
520 519
 	// On peut passer explicitement la langue dans le tableau
521 520
 	// On utilise le même nom de variable que la globale
522
-	if (isset($args['spip_lang'])){
521
+	if (isset($args['spip_lang'])) {
523 522
 		$lang = $args['spip_lang'];
524 523
 		// On l'enleve pour ne pas le passer au remplacement
525 524
 		unset($args['spip_lang']);
@@ -530,7 +529,7 @@  discard block
 block discarded – undo
530 529
 	}
531 530
 	$text = $traduire($texte, $lang);
532 531
 
533
-	if (!strlen($text)){
532
+	if (!strlen($text)) {
534 533
 		if (!$o['force'])
535 534
 			return '';
536 535
 
@@ -539,8 +538,7 @@  discard block
 block discarded – undo
539 538
 		// pour les chaines non traduites, assurer un service minimum
540 539
 		if (!$GLOBALS['test_i18n'] AND (_request('var_mode') != 'traduction'))
541 540
 			$text = str_replace('_', ' ',
542
-				 (($n = strpos($text,':')) === false ? $texte :
543
-					substr($texte, $n+1)));
541
+				 (($n = strpos($text, ':')) === false ? $texte : substr($texte, $n + 1)));
544 542
 		$o['class'] = null;
545 543
 
546 544
 	}
@@ -552,21 +550,21 @@  discard block
 block discarded – undo
552 550
 // Remplacer les variables @....@ par leur valeur dans une chaine de langue.
553 551
 // Aussi appelee quand une chaine n'est pas encore dans les fichiers de langue
554 552
 // http://doc.spip.org/@_L
555
-function _L($text, $args=array(), $class=null) {
553
+function _L($text, $args = array(), $class = null) {
556 554
 	$f = $text;
557 555
 	if (is_array($args)) {
558 556
 		foreach ($args as $name => $value) {
559 557
 			if ($class)
560 558
 				$value = "<span class='$class'>$value</span>";
561
-			$t = str_replace ("@$name@", $value, $text);
562
-			if ($text !== $t) {unset($args[$name]); $text = $t;}
559
+			$t = str_replace("@$name@", $value, $text);
560
+			if ($text !== $t) {unset($args[$name]); $text = $t; }
563 561
 		}
564 562
 		// Si des variables n'ont pas ete inserees, le signaler
565 563
 		// (chaines de langues pas a jour)
566
-		if ($args) spip_log("$f:  variables inutilisees " . join(', ', array_keys($args)),_LOG_DEBUG);
564
+		if ($args) spip_log("$f:  variables inutilisees ".join(', ', array_keys($args)), _LOG_DEBUG);
567 565
 	}
568 566
 
569
-	if (($GLOBALS['test_i18n'] OR (_request('var_mode') == 'traduction')) AND $class===null)
567
+	if (($GLOBALS['test_i18n'] OR (_request('var_mode') == 'traduction')) AND $class === null)
570 568
 		return "<span class=debug-traduction-erreur>$text</span>";
571 569
 	else
572 570
 		return $text;
@@ -576,9 +574,9 @@  discard block
 block discarded – undo
576 574
 // ou tmp/ au lieu de ../tmp/
577 575
 // http://doc.spip.org/@joli_repertoire
578 576
 function joli_repertoire($rep) {
579
-	$a = substr($rep,0,1);
580
-	if ($a<>'.' AND $a<>'/')
581
-		$rep = (_DIR_RESTREINT?'':_DIR_RESTREINT_ABS).$rep;
577
+	$a = substr($rep, 0, 1);
578
+	if ($a <> '.' AND $a <> '/')
579
+		$rep = (_DIR_RESTREINT ? '' : _DIR_RESTREINT_ABS).$rep;
582 580
 	$rep = preg_replace(',(^\.\.\/),', '', $rep);
583 581
 	return $rep;
584 582
 }
@@ -588,12 +586,12 @@  discard block
 block discarded – undo
588 586
 // spip_timer : on l'appelle deux fois et on a la difference, affichable
589 587
 //
590 588
 // http://doc.spip.org/@spip_timer
591
-function spip_timer($t='rien', $raw = false) {
589
+function spip_timer($t = 'rien', $raw = false) {
592 590
 	static $time;
593
-	$a=time(); $b=microtime();
591
+	$a = time(); $b = microtime();
594 592
 	// microtime peut contenir les microsecondes et le temps
595
-	$b=explode(' ',$b);
596
-	if (count($b)==2) $a = end($b); // plus precis !
593
+	$b = explode(' ', $b);
594
+	if (count($b) == 2) $a = end($b); // plus precis !
597 595
 	$b = reset($b);
598 596
 	if (!isset($time[$t])) {
599 597
 		$time[$t] = $a + $b;
@@ -605,10 +603,10 @@  discard block
 block discarded – undo
605 603
 		if ($p < 1000)
606 604
 			$s = '';
607 605
 		else {
608
-			$s = sprintf("%d ", $x = floor($p/1000));
609
-			$p -= ($x*1000);
606
+			$s = sprintf("%d ", $x = floor($p / 1000));
607
+			$p -= ($x * 1000);
610 608
 		}
611
-		return $s . sprintf($s?"%07.3f ms":"%.3f ms", $p);
609
+		return $s.sprintf($s ? "%07.3f ms" : "%.3f ms", $p);
612 610
 	}
613 611
 }
614 612
 
@@ -616,13 +614,13 @@  discard block
 block discarded – undo
616 614
 // Renvoie False si un fichier n'est pas plus vieux que $duree secondes,
617 615
 // sinon renvoie True et le date sauf si ca n'est pas souhaite
618 616
 // http://doc.spip.org/@spip_touch
619
-function spip_touch($fichier, $duree=0, $touch=true) {
617
+function spip_touch($fichier, $duree = 0, $touch = true) {
620 618
 	if ($duree) {
621 619
 		clearstatcache();
622
-		if ((@$f=filemtime($fichier)) AND ($f >= time() - $duree))
620
+		if ((@$f = filemtime($fichier)) AND ($f >= time() - $duree))
623 621
 			return false;
624 622
 	}
625
-	if ($touch!==false) {
623
+	if ($touch !== false) {
626 624
 		if (!@touch($fichier)) { spip_unlink($fichier); @touch($fichier); };
627 625
 		@chmod($fichier, _SPIP_CHMOD & ~0111);
628 626
 	}
@@ -641,7 +639,7 @@  discard block
 block discarded – undo
641 639
 	include_spip('inc/headers');
642 640
 	http_status(204); // No Content
643 641
 	header("Connection: close");
644
-	define('_DIRECT_CRON_FORCE',true);
642
+	define('_DIRECT_CRON_FORCE', true);
645 643
 	cron();
646 644
 }
647 645
 
@@ -661,7 +659,7 @@  discard block
 block discarded – undo
661 659
  *   taches forcees, pour compat avec ancienne syntaxe
662 660
  * @return bool
663 661
  */
664
-function cron ($taches=array(), $taches_old= array()) {
662
+function cron($taches = array(), $taches_old = array()) {
665 663
 	// si pas en mode cron force, laisser tomber.
666 664
 	if (!defined('_DIRECT_CRON_FORCE')) return false;
667 665
 	if (!is_array($taches)) $taches = $taches_old; // compat anciens appels
@@ -670,7 +668,7 @@  discard block
 block discarded – undo
670 668
 	// queue_sleep_time_to_next_job() dira qu'il n'y a rien a faire
671 669
 	// et on evite d'ouvrir une connexion pour rien (utilisation de _DIRECT_CRON_FORCE dans mes_options.php)
672 670
 	if ($taches AND count($taches) AND !spip_connect())  return false;
673
-	spip_log("cron !",'jq'._LOG_DEBUG);
671
+	spip_log("cron !", 'jq'._LOG_DEBUG);
674 672
 	if ($genie = charger_fonction('genie', 'inc', true)) {
675 673
 		return $genie($taches);
676 674
 	}
@@ -699,7 +697,7 @@  discard block
 block discarded – undo
699 697
  * @return int
700 698
  *	id of job
701 699
  */
702
-function job_queue_add($function, $description, $arguments = array(), $file = '', $no_duplicate = FALSE, $time=0, $priority=0) {
700
+function job_queue_add($function, $description, $arguments = array(), $file = '', $no_duplicate = FALSE, $time = 0, $priority = 0) {
703 701
 	include_spip('inc/queue');
704 702
 	return queue_add_job($function, $description, $arguments, $file, $no_duplicate, $time, $priority);
705 703
 }
@@ -710,7 +708,7 @@  discard block
 block discarded – undo
710 708
  *  id of jonb to delete
711 709
  * @return bool
712 710
  */
713
-function job_queue_remove($id_job){
711
+function job_queue_remove($id_job) {
714 712
 	include_spip('inc/queue');
715 713
 	return queue_remove_job($id_job);
716 714
 }
@@ -723,9 +721,9 @@  discard block
 block discarded – undo
723 721
  *  can be a simple array('objet'=>'article','id_objet'=>23)
724 722
  *  or an array of simple array to link multiples objet in one time
725 723
  */
726
-function job_queue_link($id_job,$objets){
724
+function job_queue_link($id_job, $objets) {
727 725
 	include_spip('inc/queue');
728
-	return queue_link_job($id_job,$objets);
726
+	return queue_link_job($id_job, $objets);
729 727
 }
730 728
 
731 729
 
@@ -741,15 +739,15 @@  discard block
 block discarded – undo
741 739
  * @param int/bool $force_next
742 740
  * @return int
743 741
  */
744
-function queue_sleep_time_to_next_job($force=null) {
742
+function queue_sleep_time_to_next_job($force = null) {
745 743
 	static $queue_next_job_time = -1;
746
-	if ($force===true)
744
+	if ($force === true)
747 745
 		$queue_next_job_time = -1;
748 746
 	elseif ($force)
749 747
 		$queue_next_job_time = $force;
750 748
 
751
-	if ($queue_next_job_time==-1) {
752
-		define('_JQ_NEXT_JOB_TIME_FILENAME',_DIR_TMP . "job_queue_next.txt");
749
+	if ($queue_next_job_time == -1) {
750
+		define('_JQ_NEXT_JOB_TIME_FILENAME', _DIR_TMP."job_queue_next.txt");
753 751
 		// utiliser un cache memoire si dispo
754 752
 		if (include_spip('inc/memoization') AND defined('_MEMOIZE_MEMORY') AND _MEMOIZE_MEMORY) {
755 753
 			$queue_next_job_time = cache_get(_JQ_NEXT_JOB_TIME_FILENAME);
@@ -765,7 +763,7 @@  discard block
 block discarded – undo
765 763
 		return null;
766 764
 	if (!$_SERVER['REQUEST_TIME'])
767 765
 		$_SERVER['REQUEST_TIME'] = time();
768
-	return $queue_next_job_time-$_SERVER['REQUEST_TIME'];
766
+	return $queue_next_job_time - $_SERVER['REQUEST_TIME'];
769 767
 }
770 768
 
771 769
 
@@ -774,23 +772,23 @@  discard block
 block discarded – undo
774 772
 function quote_amp($u) {
775 773
 	return preg_replace(
776 774
 		"/&(?![a-z]{0,4}\w{2,3};|#x?[0-9a-f]{2,5};)/i",
777
-		"&amp;",$u);
775
+		"&amp;", $u);
778 776
 }
779 777
 
780 778
 // Production d'une balise Script valide
781 779
 // http://doc.spip.org/@http_script
782
-function http_script($script, $src='', $noscript='') {
780
+function http_script($script, $src = '', $noscript = '') {
783 781
 	static $done = array();
784 782
 
785
-	if ($src && !isset($done[$src])){
783
+	if ($src && !isset($done[$src])) {
786 784
 		$done[$src] = true;
787 785
 		$src = find_in_path($src, _JAVASCRIPT);
788 786
 		$src = " src='$src'";
789 787
 	}
790 788
 	else $src = '';
791 789
 	if ($script)
792
-		$script = ("/*<![CDATA[*/\n" .
793
-		preg_replace(',</([^>]*)>,','<\/\1>', $script) .
790
+		$script = ("/*<![CDATA[*/\n".
791
+		preg_replace(',</([^>]*)>,', '<\/\1>', $script).
794 792
 		"/*]]>*/");
795 793
 	if ($noscript)
796 794
 		$noscript = "<noscript>\n\t$noscript\n</noscript>\n";
@@ -815,10 +813,10 @@  discard block
 block discarded – undo
815 813
 // du path, dans cet ordre.
816 814
 // Exception: si un $dossier_squelette est defini, il reste en tete, pour raison historique
817 815
 // http://doc.spip.org/@_chemin
818
-function _chemin($dir_path=NULL){
816
+function _chemin($dir_path = NULL) {
819 817
 	static $path_base = NULL;
820 818
 	static $path_full = NULL;
821
-	if ($path_base==NULL){
819
+	if ($path_base == NULL) {
822 820
 		// Chemin standard depuis l'espace public
823 821
 		$path = defined('_SPIP_PATH') ? _SPIP_PATH :
824 822
 			_DIR_RACINE.':'.
@@ -827,9 +825,9 @@  discard block
 block discarded – undo
827 825
 			_DIR_RESTREINT;
828 826
 		// Ajouter squelettes/
829 827
 		if (@is_dir(_DIR_RACINE.'squelettes'))
830
-			$path = _DIR_RACINE.'squelettes/:' . $path;
828
+			$path = _DIR_RACINE.'squelettes/:'.$path;
831 829
 		foreach (explode(':', $path) as $dir) {
832
-			if (strlen($dir) AND substr($dir,-1) != '/')
830
+			if (strlen($dir) AND substr($dir, -1) != '/')
833 831
 				$dir .= "/";
834 832
 			$path_base[] = $dir;
835 833
 		}
@@ -837,32 +835,32 @@  discard block
 block discarded – undo
837 835
 		// Et le(s) dossier(s) des squelettes nommes
838 836
 		if (strlen($GLOBALS['dossier_squelettes']))
839 837
 			foreach (array_reverse(explode(':', $GLOBALS['dossier_squelettes'])) as $d)
840
-				array_unshift($path_full, ($d[0] == '/' ? '' : _DIR_RACINE) . $d . '/');
838
+				array_unshift($path_full, ($d[0] == '/' ? '' : _DIR_RACINE).$d.'/');
841 839
 		$GLOBALS['path_sig'] = md5(serialize($path_full));
842 840
 	}
843
-	if ($dir_path===NULL) return $path_full;
841
+	if ($dir_path === NULL) return $path_full;
844 842
 
845
-	if (strlen($dir_path)){
843
+	if (strlen($dir_path)) {
846 844
 		$tete = "";
847
-		if (reset($path_base)==_DIR_RACINE.'squelettes/')
845
+		if (reset($path_base) == _DIR_RACINE.'squelettes/')
848 846
 			$tete = array_shift($path_base);
849
-		$dirs = array_reverse(explode(':',$dir_path));
850
-		foreach($dirs as $dir_path){
847
+		$dirs = array_reverse(explode(':', $dir_path));
848
+		foreach ($dirs as $dir_path) {
851 849
 				#if ($dir_path{0}!='/')
852 850
 				#	$dir_path = $dir_path;
853
-				if (substr($dir_path,-1) != '/')
851
+				if (substr($dir_path, -1) != '/')
854 852
 					$dir_path .= "/";
855
-				if (!in_array($dir_path,$path_base))
856
-					array_unshift($path_base,$dir_path);
853
+				if (!in_array($dir_path, $path_base))
854
+					array_unshift($path_base, $dir_path);
857 855
 		}
858 856
 		if (strlen($tete))
859
-			array_unshift($path_base,$tete);
857
+			array_unshift($path_base, $tete);
860 858
 	}
861 859
 	$path_full = $path_base;
862 860
 	// Et le(s) dossier(s) des squelettes nommes
863 861
 	if (strlen($GLOBALS['dossier_squelettes']))
864 862
 		foreach (array_reverse(explode(':', $GLOBALS['dossier_squelettes'])) as $d)
865
-			array_unshift($path_full, ($d[0] == '/' ? '' : _DIR_RACINE) . $d . '/');
863
+			array_unshift($path_full, ($d[0] == '/' ? '' : _DIR_RACINE).$d.'/');
866 864
 
867 865
 	$GLOBALS['path_sig'] = md5(serialize($path_full));
868 866
 	return $path_full;
@@ -883,9 +881,9 @@  discard block
 block discarded – undo
883 881
 }
884 882
 
885 883
 
886
-function lister_themes_prives(){
884
+function lister_themes_prives() {
887 885
 	static $themes = null;
888
-	if (is_null($themes)){
886
+	if (is_null($themes)) {
889 887
 		// si pas encore definie
890 888
 		if (!defined('_SPIP_THEME_PRIVE'))
891 889
 			define('_SPIP_THEME_PRIVE', 'spip');
@@ -902,20 +900,20 @@  discard block
 block discarded – undo
902 900
 			((isset($prefs['theme']) AND $theme = $prefs['theme'])
903 901
 			OR (isset($GLOBALS['theme_prive_defaut']) AND $theme = $GLOBALS['theme_prive_defaut']))
904 902
 			AND $theme != _SPIP_THEME_PRIVE)
905
-			array_unshift($themes,$theme); // placer le theme choisi en tete
903
+			array_unshift($themes, $theme); // placer le theme choisi en tete
906 904
 	}
907 905
 	return $themes;
908 906
 }
909 907
 
910
-function find_in_theme($file, $subdir='', $include=false){
911
-	static $themefiles=array();
908
+function find_in_theme($file, $subdir = '', $include = false) {
909
+	static $themefiles = array();
912 910
 	if (isset($themefiles["$subdir$file"])) return $themefiles["$subdir$file"];
913 911
 	$themes = lister_themes_prives();
914
-	foreach($themes as $theme){
915
-		if ($f = find_in_path($file,"prive/themes/$theme/$subdir",$include))
912
+	foreach ($themes as $theme) {
913
+		if ($f = find_in_path($file, "prive/themes/$theme/$subdir", $include))
916 914
 			return $themefiles["$subdir$file"] = $f;
917 915
 	}
918
-	spip_log("$file introuvable dans le theme prive ".reset($themes),'theme');
916
+	spip_log("$file introuvable dans le theme prive ".reset($themes), 'theme');
919 917
 	return $themefiles["$subdir$file"] = "";
920 918
 }
921 919
 
@@ -925,23 +923,23 @@  discard block
 block discarded – undo
925 923
 // peut se trouver dans un dossier plugin, donc on passe par un find_in_path si elle n'est pas
926 924
 // dans _DIR_IMG_PACK
927 925
 // http://doc.spip.org/@chemin_image
928
-function chemin_image($icone){
926
+function chemin_image($icone) {
929 927
 	static $icone_renommer;
930 928
 	// gerer le cas d'un double appel en evitant de refaire le travail inutilement
931
-	if (strpos($icone,"/")!==false AND file_exists($icone)) return $icone;
929
+	if (strpos($icone, "/") !== false AND file_exists($icone)) return $icone;
932 930
 	
933 931
 	// si c'est un nom d'image complet (article-24.png) essayer de le renvoyer direct
934
-	if (preg_match(',[.](png|gif|jpg)$,',$icone) AND $f = find_in_theme("images/$icone"))
932
+	if (preg_match(',[.](png|gif|jpg)$,', $icone) AND $f = find_in_theme("images/$icone"))
935 933
 		return $f;
936 934
 	// sinon passer par le module de renommage
937 935
 	if (is_null($icone_renommer))
938
-		$icone_renommer = charger_fonction('icone_renommer','inc',true);
939
-	if ($icone_renommer){
940
-		list($icone,$fonction) = $icone_renommer($icone,"");
936
+		$icone_renommer = charger_fonction('icone_renommer', 'inc', true);
937
+	if ($icone_renommer) {
938
+		list($icone, $fonction) = $icone_renommer($icone, "");
941 939
 		if (file_exists($icone))
942 940
 			return $icone;
943 941
 	}
944
-	return find_in_path ($icone, _NOM_IMG_PACK);
942
+	return find_in_path($icone, _NOM_IMG_PACK);
945 943
 }
946 944
 
947 945
 //
@@ -952,13 +950,13 @@  discard block
 block discarded – undo
952 950
 $GLOBALS['path_files'] = null;
953 951
 
954 952
 // http://doc.spip.org/@find_in_path
955
-function find_in_path ($file, $dirname='', $include=false) {
956
-	static $dirs=array();
953
+function find_in_path($file, $dirname = '', $include = false) {
954
+	static $dirs = array();
957 955
 	static $inc = array(); # cf http://trac.rezo.net/trac/spip/changeset/14743
958 956
 	static $c = '';
959 957
 
960 958
 	// on calcule le chemin si le dossier skel a change
961
-	if ($c != $GLOBALS['dossier_squelettes']){
959
+	if ($c != $GLOBALS['dossier_squelettes']) {
962 960
 		// assurer le non plantage lors de la montee de version :
963 961
 		$c = $GLOBALS['dossier_squelettes'];
964 962
 		creer_chemin(); // forcer un recalcul du chemin et la mise a jour de path_sig
@@ -968,40 +966,40 @@  discard block
 block discarded – undo
968 966
 		if (!$GLOBALS['path_files'][$GLOBALS['path_sig']][$dirname][$file])
969 967
 			return false;
970 968
 		if ($include AND !isset($inc[$dirname][$file])) {
971
-			include_once _ROOT_CWD . $GLOBALS['path_files'][$GLOBALS['path_sig']][$dirname][$file];
972
-			$inc[$dirname][$file] = $inc[''][$dirname . $file] = true;
969
+			include_once _ROOT_CWD.$GLOBALS['path_files'][$GLOBALS['path_sig']][$dirname][$file];
970
+			$inc[$dirname][$file] = $inc[''][$dirname.$file] = true;
973 971
 		}
974 972
 		return $GLOBALS['path_files'][$GLOBALS['path_sig']][$dirname][$file];
975 973
 	}
976 974
 
977
-	$a = strrpos($file,'/');
975
+	$a = strrpos($file, '/');
978 976
 	if ($a !== false) {
979 977
 		$dirname .= substr($file, 0, ++$a);
980 978
 		$file = substr($file, $a);
981 979
 	}
982 980
 
983
-	foreach(creer_chemin() as $dir) {
984
-		if (!isset($dirs[$a = $dir . $dirname]))
985
-			$dirs[$a] = (is_dir(_ROOT_CWD . $a) || !$a) ;
981
+	foreach (creer_chemin() as $dir) {
982
+		if (!isset($dirs[$a = $dir.$dirname]))
983
+			$dirs[$a] = (is_dir(_ROOT_CWD.$a) || !$a);
986 984
 		if ($dirs[$a]) {
987
-			if (file_exists(_ROOT_CWD . ($a .= $file))) {
985
+			if (file_exists(_ROOT_CWD.($a .= $file))) {
988 986
 				if ($include AND !isset($inc[$dirname][$file])) {
989
-					include_once _ROOT_CWD . $a;
990
-					$inc[$dirname][$file] = $inc[''][$dirname . $file] = true;
987
+					include_once _ROOT_CWD.$a;
988
+					$inc[$dirname][$file] = $inc[''][$dirname.$file] = true;
991 989
 				}
992
-				if (!defined('_SAUVER_CHEMIN')){
990
+				if (!defined('_SAUVER_CHEMIN')) {
993 991
 					// si le chemin n'a pas encore ete charge, ne pas lever le flag, ne pas cacher
994 992
 					if (is_null($GLOBALS['path_files'])) return $a;
995 993
 					define('_SAUVER_CHEMIN', true);
996 994
 				}
997
-				return $GLOBALS['path_files'][$GLOBALS['path_sig']][$dirname][$file] = $GLOBALS['path_files'][$GLOBALS['path_sig']][''][$dirname . $file] = $a;
995
+				return $GLOBALS['path_files'][$GLOBALS['path_sig']][$dirname][$file] = $GLOBALS['path_files'][$GLOBALS['path_sig']][''][$dirname.$file] = $a;
998 996
 			}
999 997
 		}
1000 998
 	}
1001 999
 
1002
-	if ($include){
1000
+	if ($include) {
1003 1001
 		spip_log("include_spip $dirname$file non trouve");
1004
-		if ($include==='required'){
1002
+		if ($include === 'required') {
1005 1003
 			echo '<pre>',
1006 1004
 			"<strong>Erreur Fatale</strong><br />";
1007 1005
 			if (function_exists('debug_print_backtrace'))
@@ -1011,21 +1009,21 @@  discard block
 block discarded – undo
1011 1009
 		}
1012 1010
 	}
1013 1011
 
1014
-	if (!defined('_SAUVER_CHEMIN')){
1012
+	if (!defined('_SAUVER_CHEMIN')) {
1015 1013
 		// si le chemin n'a pas encore ete charge, ne pas lever le flag, ne pas cacher
1016 1014
 		if (is_null($GLOBALS['path_files'])) return false;
1017 1015
 		define('_SAUVER_CHEMIN', true);
1018 1016
 	}
1019
-	return $GLOBALS['path_files'][$GLOBALS['path_sig']][$dirname][$file] = $GLOBALS['path_files'][$GLOBALS['path_sig']][''][$dirname . $file] = false;
1017
+	return $GLOBALS['path_files'][$GLOBALS['path_sig']][$dirname][$file] = $GLOBALS['path_files'][$GLOBALS['path_sig']][''][$dirname.$file] = false;
1020 1018
 }
1021 1019
 
1022
-function clear_path_cache(){
1020
+function clear_path_cache() {
1023 1021
 	$GLOBALS['path_files'] = array();
1024 1022
 	spip_unlink(_CACHE_CHEMIN);
1025 1023
 }
1026
-function load_path_cache(){
1024
+function load_path_cache() {
1027 1025
 	// charger le path des plugins
1028
-	if (@is_readable(_CACHE_PLUGINS_PATH)){
1026
+	if (@is_readable(_CACHE_PLUGINS_PATH)) {
1029 1027
 		include_once(_CACHE_PLUGINS_PATH);
1030 1028
 	}
1031 1029
 	$GLOBALS['path_files'] = array();
@@ -1039,23 +1037,23 @@  discard block
 block discarded – undo
1039 1037
 		// !isset($_COOKIE[$GLOBALS['cookie_prefix'].'_admin'])
1040 1038
 		// et en ignorant ce cache en cas de recalcul explicite
1041 1039
 		!_request('var_mode')
1042
-		){
1040
+		) {
1043 1041
 		// on essaye de lire directement sans verrou pour aller plus vite
1044
-		if ($contenu = spip_file_get_contents(_CACHE_CHEMIN)){
1042
+		if ($contenu = spip_file_get_contents(_CACHE_CHEMIN)) {
1045 1043
 			// mais si semble corrompu on relit avec un verrou
1046
-			if (!$GLOBALS['path_files']=unserialize($contenu)){
1047
-				lire_fichier(_CACHE_CHEMIN,$contenu);
1048
-				if (!$GLOBALS['path_files']=unserialize($contenu))
1044
+			if (!$GLOBALS['path_files'] = unserialize($contenu)) {
1045
+				lire_fichier(_CACHE_CHEMIN, $contenu);
1046
+				if (!$GLOBALS['path_files'] = unserialize($contenu))
1049 1047
 					$GLOBALS['path_files'] = array();
1050 1048
 			}
1051 1049
 		}
1052 1050
 	}
1053 1051
 }
1054 1052
 
1055
-function save_path_cache(){
1053
+function save_path_cache() {
1056 1054
 	if (defined('_SAUVER_CHEMIN')
1057 1055
 		AND _SAUVER_CHEMIN)
1058
-		ecrire_fichier(_CACHE_CHEMIN,serialize($GLOBALS['path_files']));
1056
+		ecrire_fichier(_CACHE_CHEMIN, serialize($GLOBALS['path_files']));
1059 1057
 }
1060 1058
 
1061 1059
 
@@ -1070,16 +1068,16 @@  discard block
 block discarded – undo
1070 1068
  * @return array
1071 1069
  */
1072 1070
 // http://doc.spip.org/@find_all_in_path
1073
-function find_all_in_path($dir,$pattern, $recurs=false){
1074
-	$liste_fichiers=array();
1071
+function find_all_in_path($dir, $pattern, $recurs = false) {
1072
+	$liste_fichiers = array();
1075 1073
 	$maxfiles = 10000;
1076 1074
 
1077 1075
 	// Parcourir le chemin
1078 1076
 	foreach (creer_chemin() as $d) {
1079 1077
 		$f = $d.$dir;
1080
-		if (@is_dir($f)){
1081
-			$liste = preg_files($f,$pattern,$maxfiles-count($liste_fichiers),$recurs===true?array():$recurs);
1082
-			foreach($liste as $chemin){
1078
+		if (@is_dir($f)) {
1079
+			$liste = preg_files($f, $pattern, $maxfiles - count($liste_fichiers), $recurs === true ? array() : $recurs);
1080
+			foreach ($liste as $chemin) {
1083 1081
 				$nom = basename($chemin);
1084 1082
 				// ne prendre que les fichiers pas deja trouves
1085 1083
 				// car find_in_path prend le premier qu'il trouve,
@@ -1126,7 +1124,7 @@  discard block
 block discarded – undo
1126 1124
  *   array : derogatoire, la fonction d'url retourne (objet,id_objet) utilises par nettoyer_raccourcis_typo() pour generer un lien titre
1127 1125
  *           (cas des raccourcis personalises [->spip20] : il faut implementer une fonction generer_url_spip et une fonction generer_url_ecrire_spip)
1128 1126
  */
1129
-function generer_url_entite($id='', $entite='', $args='', $ancre='', $public=NULL, $type=NULL)
1127
+function generer_url_entite($id = '', $entite = '', $args = '', $ancre = '', $public = NULL, $type = NULL)
1130 1128
 {
1131 1129
 	if ($public === NULL) $public = !test_espace_prive();
1132 1130
 	$entite = objet_type($entite); // cas particulier d'appels sur objet/id_objet...
@@ -1135,12 +1133,12 @@  discard block
 block discarded – undo
1135 1133
 		if (!$entite) return '';
1136 1134
 		if (!function_exists('generer_url_ecrire_objet'))
1137 1135
 			include_spip('inc/urls');
1138
-		$res = generer_url_ecrire_objet($entite,$id, $args, $ancre, false);
1136
+		$res = generer_url_ecrire_objet($entite, $id, $args, $ancre, false);
1139 1137
 	} else {
1140 1138
 		if ($type === NULL) {
1141 1139
 			$type = ($GLOBALS['type_urls'] === 'page'
1142 1140
 				AND $GLOBALS['meta']['type_urls'])
1143
-			?  $GLOBALS['meta']['type_urls']
1141
+			? $GLOBALS['meta']['type_urls']
1144 1142
 			:  $GLOBALS['type_urls']; // pour SPIP <2
1145 1143
 		}
1146 1144
 
@@ -1163,7 +1161,7 @@  discard block
 block discarded – undo
1163 1161
 	}
1164 1162
 	if ($res) return $res;
1165 1163
 	// Sinon c'est un raccourci ou compat SPIP < 2
1166
-	if (!function_exists($f = 'generer_url_' . $entite)) {
1164
+	if (!function_exists($f = 'generer_url_'.$entite)) {
1167 1165
 		if (!function_exists($f .= '_dist')) $f = '';
1168 1166
 	}
1169 1167
 	if ($f) {
@@ -1179,23 +1177,23 @@  discard block
 block discarded – undo
1179 1177
 	return '';
1180 1178
 }
1181 1179
 
1182
-function generer_url_ecrire_entite_edit($id, $entite, $args='', $ancre=''){
1183
-	$exec = objet_info($entite,'url_edit');
1184
-	$url = generer_url_ecrire($exec,$args);
1180
+function generer_url_ecrire_entite_edit($id, $entite, $args = '', $ancre = '') {
1181
+	$exec = objet_info($entite, 'url_edit');
1182
+	$url = generer_url_ecrire($exec, $args);
1185 1183
 	if (intval($id))
1186
-		$url = parametre_url($url,id_table_objet($entite),$id);
1184
+		$url = parametre_url($url, id_table_objet($entite), $id);
1187 1185
 	else
1188
-		$url = parametre_url($url,'new','oui');
1186
+		$url = parametre_url($url, 'new', 'oui');
1189 1187
 	if ($ancre)
1190
-		$url = ancre_url($url,$ancre);
1188
+		$url = ancre_url($url, $ancre);
1191 1189
 	return $url;
1192 1190
 }
1193 1191
 
1194 1192
 // http://doc.spip.org/@urls_connect_dist
1195
-function urls_connect_dist($i, &$entite, $args='', $ancre='', $public=null) {
1193
+function urls_connect_dist($i, &$entite, $args = '', $ancre = '', $public = null) {
1196 1194
 	include_spip('base/connect_sql');
1197
-	$id_type = id_table_objet($entite,$public);
1198
-	return _DIR_RACINE . get_spip_script('./')
1195
+	$id_type = id_table_objet($entite, $public);
1196
+	return _DIR_RACINE.get_spip_script('./')
1199 1197
 	  . "?"._SPIP_PAGE."=$entite&$id_type=$i&connect=$public"
1200 1198
 	  . (!$args ? '' : "&$args")
1201 1199
 	  . (!$ancre ? '' : "#$ancre");
@@ -1204,9 +1202,9 @@  discard block
 block discarded – undo
1204 1202
 
1205 1203
 // Transformer les caracteres utf8 d'une URL (farsi par ex) selon la RFC 1738
1206 1204
 function urlencode_1738($url) {
1207
-	if (preg_match(',[^\x00-\x7E],sS', $url)){
1205
+	if (preg_match(',[^\x00-\x7E],sS', $url)) {
1208 1206
 		$uri = '';
1209
-		for ($i=0; $i < strlen($url); $i++) {
1207
+		for ($i = 0; $i < strlen($url); $i++) {
1210 1208
 			if (ord($a = $url[$i]) > 127)
1211 1209
 				$a = rawurlencode($a);
1212 1210
 			$uri .= $a;
@@ -1217,7 +1215,7 @@  discard block
 block discarded – undo
1217 1215
 }
1218 1216
 
1219 1217
 // http://doc.spip.org/@generer_url_entite_absolue
1220
-function generer_url_entite_absolue($id='', $entite='', $args='', $ancre='', $connect=NULL)
1218
+function generer_url_entite_absolue($id = '', $entite = '', $args = '', $ancre = '', $connect = NULL)
1221 1219
 {
1222 1220
 	if (!$connect) $connect = true;
1223 1221
 	$h = generer_url_entite($id, $entite, $args, $ancre, $connect);
@@ -1256,11 +1254,11 @@  discard block
 block discarded – undo
1256 1254
  *    si array : reinitialise le tableau static complet avec la valeur fournie
1257 1255
  * @return string|array
1258 1256
  */
1259
-function url_de_base($profondeur=null) {
1257
+function url_de_base($profondeur = null) {
1260 1258
 
1261 1259
 	static $url = array();
1262 1260
 	if (is_array($profondeur)) return $url = $profondeur;
1263
-	if ($profondeur===false) return $url;
1261
+	if ($profondeur === false) return $url;
1264 1262
 
1265 1263
 	if (is_null($profondeur)) $profondeur = $GLOBALS['profondeur_url'];
1266 1264
 
@@ -1269,7 +1267,7 @@  discard block
 block discarded – undo
1269 1267
 
1270 1268
 	$http = (
1271 1269
 		(isset($_SERVER["SCRIPT_URI"]) AND
1272
-			substr($_SERVER["SCRIPT_URI"],0,5) == 'https')
1270
+			substr($_SERVER["SCRIPT_URI"], 0, 5) == 'https')
1273 1271
 		OR (isset($_SERVER['HTTPS']) AND
1274 1272
 		    test_valeur_serveur($_SERVER['HTTPS']))
1275 1273
 	) ? 'https' : 'http';
@@ -1284,12 +1282,12 @@  discard block
 block discarded – undo
1284 1282
 		}
1285 1283
 	}
1286 1284
 	if (isset($_SERVER['SERVER_PORT'])
1287
-		AND $port=$_SERVER['SERVER_PORT']
1288
-		AND strpos($host,":")==false){
1289
-		if ($http=="http" AND $port!=80) $host.=":$port";
1290
-		if ($http=="https" AND $port!=443) $host.=":$port";
1285
+		AND $port = $_SERVER['SERVER_PORT']
1286
+		AND strpos($host, ":") == false) {
1287
+		if ($http == "http" AND $port != 80) $host .= ":$port";
1288
+		if ($http == "https" AND $port != 443) $host .= ":$port";
1291 1289
 	}
1292
-	if (!$GLOBALS['REQUEST_URI']){
1290
+	if (!$GLOBALS['REQUEST_URI']) {
1293 1291
 		if (isset($_SERVER['REQUEST_URI'])) {
1294 1292
 			$GLOBALS['REQUEST_URI'] = $_SERVER['REQUEST_URI'];
1295 1293
 		} else {
@@ -1300,7 +1298,7 @@  discard block
 block discarded – undo
1300 1298
 		}
1301 1299
 	}
1302 1300
 
1303
-	$url[$profondeur] = url_de_($http,$host,$GLOBALS['REQUEST_URI'],$profondeur);
1301
+	$url[$profondeur] = url_de_($http, $host, $GLOBALS['REQUEST_URI'], $profondeur);
1304 1302
 
1305 1303
 	return $url[$profondeur];
1306 1304
 }
@@ -1312,25 +1310,25 @@  discard block
 block discarded – undo
1312 1310
  * @param int $prof
1313 1311
  * @return string
1314 1312
  */
1315
-function url_de_($http,$host,$request,$prof=0){
1316
-	$prof = max($prof,0);
1313
+function url_de_($http, $host, $request, $prof = 0) {
1314
+	$prof = max($prof, 0);
1317 1315
 
1318
-	$myself = ltrim($request,'/');
1316
+	$myself = ltrim($request, '/');
1319 1317
 	# supprimer la chaine de GET
1320 1318
 	list($myself) = explode('?', $myself);
1321 1319
 	// vieux mode HTTP qui envoie après le nom de la methode l'URL compléte
1322 1320
 	// protocole, "://", nom du serveur avant le path dans _SERVER["REQUEST_URI"]
1323
-	if (strpos($myself,'://') !== false) {
1324
-		$myself = explode('://',$myself);
1321
+	if (strpos($myself, '://') !== false) {
1322
+		$myself = explode('://', $myself);
1325 1323
 		array_shift($myself);
1326
-		$myself = implode('://',$myself);
1327
-		$myself = explode('/',$myself);
1324
+		$myself = implode('://', $myself);
1325
+		$myself = explode('/', $myself);
1328 1326
 		array_shift($myself);
1329
-		$myself = implode('/',$myself);
1327
+		$myself = implode('/', $myself);
1330 1328
 	}
1331
-	$url = join('/', array_slice(explode('/', $myself), 0, -1-$prof)).'/';
1329
+	$url = join('/', array_slice(explode('/', $myself), 0, -1 - $prof)).'/';
1332 1330
 
1333
-	$url = $http.'://'.rtrim($host,'/').'/'.ltrim($url,'/');
1331
+	$url = $http.'://'.rtrim($host, '/').'/'.ltrim($url, '/');
1334 1332
 	return $url;
1335 1333
 }
1336 1334
 
@@ -1344,24 +1342,24 @@  discard block
 block discarded – undo
1344 1342
 // http://httpd.apache.org/docs/2.0/mod/mod_dir.html
1345 1343
 
1346 1344
 // http://doc.spip.org/@generer_url_ecrire
1347
-function generer_url_ecrire($script='', $args="", $no_entities=false, $rel=false) {
1345
+function generer_url_ecrire($script = '', $args = "", $no_entities = false, $rel = false) {
1348 1346
 	if (!$rel)
1349
-		$rel = url_de_base() . _DIR_RESTREINT_ABS . _SPIP_ECRIRE_SCRIPT;
1347
+		$rel = url_de_base()._DIR_RESTREINT_ABS._SPIP_ECRIRE_SCRIPT;
1350 1348
 	else if (!is_string($rel))
1351 1349
 		$rel = _DIR_RESTREINT ? _DIR_RESTREINT :
1352
-			('./'  . _SPIP_ECRIRE_SCRIPT);
1350
+			('./'._SPIP_ECRIRE_SCRIPT);
1353 1351
 
1354 1352
 	@list($script, $ancre) = explode('#', $script);
1355
-	if ($script AND ($script<>'accueil' OR $rel))
1356
-		$args = "?exec=$script" . (!$args ? '' : "&$args");
1353
+	if ($script AND ($script <> 'accueil' OR $rel))
1354
+		$args = "?exec=$script".(!$args ? '' : "&$args");
1357 1355
 	elseif ($args)
1358
-		$args ="?$args";
1356
+		$args = "?$args";
1359 1357
 	if ($ancre) $args .= "#$ancre";
1360
-	return $rel . ($no_entities ? $args : str_replace('&', '&amp;', $args));
1358
+	return $rel.($no_entities ? $args : str_replace('&', '&amp;', $args));
1361 1359
 }
1362 1360
 
1363 1361
 // http://doc.spip.org/@generer_url_retour
1364
-function generer_url_retour($script, $args="")
1362
+function generer_url_retour($script, $args = "")
1365 1363
 {
1366 1364
 	return rawurlencode(generer_url_ecrire($script, $args, true, true));
1367 1365
 }
@@ -1373,7 +1371,7 @@  discard block
 block discarded – undo
1373 1371
 // Detecter le fichier de base, a la racine, comme etant spip.php ou ''
1374 1372
 // dans le cas de '', un $default = './' peut servir (comme dans urls/page.php)
1375 1373
 // http://doc.spip.org/@get_spip_script
1376
-function get_spip_script($default='') {
1374
+function get_spip_script($default = '') {
1377 1375
 	# cas define('_SPIP_SCRIPT', '');
1378 1376
 	if (_SPIP_SCRIPT)
1379 1377
 		return _SPIP_SCRIPT;
@@ -1382,7 +1380,7 @@  discard block
 block discarded – undo
1382 1380
 }
1383 1381
 
1384 1382
 // http://doc.spip.org/@generer_url_public
1385
-function generer_url_public($script='', $args="", $no_entities=false, $rel=true, $action='') {
1383
+function generer_url_public($script = '', $args = "", $no_entities = false, $rel = true, $action = '') {
1386 1384
 	// si le script est une action (spip_pass, spip_inscription),
1387 1385
 	// standardiser vers la nouvelle API
1388 1386
 
@@ -1393,23 +1391,23 @@  discard block
 block discarded – undo
1393 1391
 	if ($args) {
1394 1392
 		if (is_array($args)) {
1395 1393
 			$r = '';
1396
-			foreach($args as $k => $v) $r .= '&' . $k . '=' . $v;
1397
-			$args = substr($r,1);
1394
+			foreach ($args as $k => $v) $r .= '&'.$k.'='.$v;
1395
+			$args = substr($r, 1);
1398 1396
 		}
1399 1397
 		$action .=
1400
-			(strpos($action, '?') !== false ? '&' : '?') . $args;
1398
+			(strpos($action, '?') !== false ? '&' : '?').$args;
1401 1399
 	}
1402 1400
 	if (!$no_entities)
1403 1401
 		$action = quote_amp($action);
1404 1402
 
1405 1403
 	// ne pas generer une url avec /./?page= en cas d'url absolue et de _SPIP_SCRIPT vide
1406
-	return ($rel ? _DIR_RACINE . $action : rtrim(url_de_base(),'/') . preg_replace(",^/[.]/,","/","/$action"));
1404
+	return ($rel ? _DIR_RACINE . $action : rtrim(url_de_base(), '/').preg_replace(",^/[.]/,", "/", "/$action"));
1407 1405
 }
1408 1406
 
1409 1407
 // http://doc.spip.org/@generer_url_prive
1410
-function generer_url_prive($script, $args="", $no_entities=false) {
1408
+function generer_url_prive($script, $args = "", $no_entities = false) {
1411 1409
 
1412
-	return generer_url_public($script, $args, $no_entities, false, _DIR_RESTREINT_ABS .  'prive.php');
1410
+	return generer_url_public($script, $args, $no_entities, false, _DIR_RESTREINT_ABS.'prive.php');
1413 1411
 }
1414 1412
 
1415 1413
 // Pour les formulaires en methode POST,
@@ -1418,7 +1416,7 @@  discard block
 block discarded – undo
1418 1416
 // 2) ca suit http://en.wikipedia.org/wiki/Representational_State_Transfer
1419 1417
 
1420 1418
 // http://doc.spip.org/@generer_form_ecrire
1421
-function generer_form_ecrire($script, $corps, $atts='', $submit='') {
1419
+function generer_form_ecrire($script, $corps, $atts = '', $submit = '') {
1422 1420
 	global $spip_lang_right;
1423 1421
 
1424 1422
 	$script1 = explode('&', $script);
@@ -1431,8 +1429,7 @@  discard block
 block discarded – undo
1431 1429
 	.  "><div>\n"
1432 1430
 	. "<input type='hidden' name='exec' value='$script1' />"
1433 1431
 	. $corps
1434
-	. (!$submit ? '' :
1435
-	     ("<div style='text-align: $spip_lang_right'><input class='fondo' type='submit' value=\"".entites_html($submit)."\" /></div>"))
1432
+	. (!$submit ? '' : ("<div style='text-align: $spip_lang_right'><input class='fondo' type='submit' value=\"".entites_html($submit)."\" /></div>"))
1436 1433
 	. "</div></form>\n";
1437 1434
 }
1438 1435
 
@@ -1450,7 +1447,7 @@  discard block
 block discarded – undo
1450 1447
  * @param bool $public
1451 1448
  * @return string
1452 1449
  */
1453
-function generer_form_action($script, $corps, $atts='', $public=false) {
1450
+function generer_form_action($script, $corps, $atts = '', $public = false) {
1454 1451
 	// si l'on est dans l'espace prive, on garde dans l'url
1455 1452
 	// l'exec a l'origine de l'action, qui permet de savoir si il est necessaire
1456 1453
 	// ou non de proceder a l'authentification (cas typique de l'install par exemple)
@@ -1458,29 +1455,29 @@  discard block
 block discarded – undo
1458 1455
 	? generer_url_ecrire(_request('exec'))
1459 1456
 	: generer_url_public();
1460 1457
 
1461
-	return "\n<form action='" .
1462
-	  $h .
1463
-	  "'" .
1464
-	  $atts .
1465
-	  ">\n" .
1466
-	  "<div>" .
1467
-  	  "\n<input type='hidden' name='action' value='$script' />" .
1468
-	  $corps .
1458
+	return "\n<form action='".
1459
+	  $h.
1460
+	  "'".
1461
+	  $atts.
1462
+	  ">\n".
1463
+	  "<div>".
1464
+  	  "\n<input type='hidden' name='action' value='$script' />".
1465
+	  $corps.
1469 1466
 	  "</div></form>";
1470 1467
 }
1471 1468
 
1472 1469
 // http://doc.spip.org/@generer_url_action
1473
-function generer_url_action($script, $args="", $no_entities=false , $public = false) {
1470
+function generer_url_action($script, $args = "", $no_entities = false, $public = false) {
1474 1471
 	// si l'on est dans l'espace prive, on garde dans l'url
1475 1472
 	// l'exec a l'origine de l'action, qui permet de savoir si il est necessaire
1476 1473
 	// ou non de proceder a l'authentification (cas typique de l'install par exemple)
1477
-	$url = (_DIR_RACINE  AND !$public)
1474
+	$url = (_DIR_RACINE AND !$public)
1478 1475
 	  ? generer_url_ecrire(_request('exec'))
1479
-	  :  generer_url_public('','',false,false);
1480
-	$url = parametre_url($url,'action',$script);
1476
+	  :  generer_url_public('', '', false, false);
1477
+	$url = parametre_url($url, 'action', $script);
1481 1478
 	if ($args) $url .= quote_amp('&'.$args);
1482 1479
 
1483
-	if ($no_entities) $url = str_replace('&amp;','&',$url);
1480
+	if ($no_entities) $url = str_replace('&amp;', '&', $url);
1484 1481
 	return $url;
1485 1482
 }
1486 1483
 
@@ -1493,8 +1490,8 @@  discard block
 block discarded – undo
1493 1490
  * @param string $ti
1494 1491
  * @param string $ta
1495 1492
  */
1496
-function spip_initialisation($pi=NULL, $pa=NULL, $ti=NULL, $ta=NULL) {
1497
-	spip_initialisation_core($pi,$pa,$ti,$ta);
1493
+function spip_initialisation($pi = NULL, $pa = NULL, $ti = NULL, $ta = NULL) {
1494
+	spip_initialisation_core($pi, $pa, $ti, $ta);
1498 1495
 	spip_initialisation_suite();
1499 1496
 }
1500 1497
 
@@ -1512,32 +1509,32 @@  discard block
 block discarded – undo
1512 1509
  * @param string $ti
1513 1510
  * @param string $ta
1514 1511
  */
1515
-function spip_initialisation_core($pi=NULL, $pa=NULL, $ti=NULL, $ta=NULL) {
1512
+function spip_initialisation_core($pi = NULL, $pa = NULL, $ti = NULL, $ta = NULL) {
1516 1513
 	static $too_late = 0;
1517 1514
 	if ($too_late++) return;
1518 1515
 	
1519 1516
 	// Declaration des repertoires
1520 1517
 
1521 1518
 	// le nom du repertoire plugins/ activables/desactivables
1522
-	if (!defined('_DIR_PLUGINS')) define('_DIR_PLUGINS', _DIR_RACINE . "plugins/");
1519
+	if (!defined('_DIR_PLUGINS')) define('_DIR_PLUGINS', _DIR_RACINE."plugins/");
1523 1520
 
1524 1521
 	// le nom du repertoire des extensions/ permanentes du core, toujours actives
1525
-	if (!defined('_DIR_PLUGINS_DIST')) define('_DIR_PLUGINS_DIST', _DIR_RACINE . "plugins-dist/");
1522
+	if (!defined('_DIR_PLUGINS_DIST')) define('_DIR_PLUGINS_DIST', _DIR_RACINE."plugins-dist/");
1526 1523
 
1527 1524
 	// le nom du repertoire des librairies
1528
-	if (!defined('_DIR_LIB')) define('_DIR_LIB', _DIR_RACINE . "lib/");
1525
+	if (!defined('_DIR_LIB')) define('_DIR_LIB', _DIR_RACINE."lib/");
1529 1526
 	
1530 1527
 	if (!defined('_DIR_IMG')) define('_DIR_IMG', $pa);
1531 1528
 	if (!defined('_DIR_LOGOS')) define('_DIR_LOGOS', $pa);
1532
-	if (!defined('_DIR_IMG_ICONES')) define('_DIR_IMG_ICONES', _DIR_LOGOS . "icones/");
1533
-
1534
-	if (!defined('_DIR_DUMP')) define('_DIR_DUMP', $ti . "dump/");
1535
-	if (!defined('_DIR_SESSIONS')) define('_DIR_SESSIONS', $ti . "sessions/");
1536
-	if (!defined('_DIR_TRANSFERT')) define('_DIR_TRANSFERT', $ti . "upload/");
1537
-	if (!defined('_DIR_CACHE')) define('_DIR_CACHE', $ti . "cache/");
1538
-	if (!defined('_DIR_CACHE_XML')) define('_DIR_CACHE_XML', _DIR_CACHE . "xml/");
1539
-	if (!defined('_DIR_SKELS')) define('_DIR_SKELS',  _DIR_CACHE . "skel/");
1540
-	if (!defined('_DIR_AIDE')) define('_DIR_AIDE',  _DIR_CACHE . "aide/");
1529
+	if (!defined('_DIR_IMG_ICONES')) define('_DIR_IMG_ICONES', _DIR_LOGOS."icones/");
1530
+
1531
+	if (!defined('_DIR_DUMP')) define('_DIR_DUMP', $ti."dump/");
1532
+	if (!defined('_DIR_SESSIONS')) define('_DIR_SESSIONS', $ti."sessions/");
1533
+	if (!defined('_DIR_TRANSFERT')) define('_DIR_TRANSFERT', $ti."upload/");
1534
+	if (!defined('_DIR_CACHE')) define('_DIR_CACHE', $ti."cache/");
1535
+	if (!defined('_DIR_CACHE_XML')) define('_DIR_CACHE_XML', _DIR_CACHE."xml/");
1536
+	if (!defined('_DIR_SKELS')) define('_DIR_SKELS', _DIR_CACHE."skel/");
1537
+	if (!defined('_DIR_AIDE')) define('_DIR_AIDE', _DIR_CACHE."aide/");
1541 1538
 	if (!defined('_DIR_TMP')) define('_DIR_TMP', $ti);
1542 1539
 
1543 1540
 	if (!defined('_DIR_VAR')) define('_DIR_VAR', $ta);
@@ -1549,19 +1546,19 @@  discard block
 block discarded – undo
1549 1546
 	if (!isset($GLOBALS['test_dirs']))
1550 1547
 	  // Pas $pi car il est bon de le mettre hors ecriture apres intstall
1551 1548
 	  // il sera rajoute automatiquement si besoin a l'etape 2 de l'install
1552
-		$GLOBALS['test_dirs'] =  array($pa, $ti, $ta);
1549
+		$GLOBALS['test_dirs'] = array($pa, $ti, $ta);
1553 1550
 
1554 1551
 	// Declaration des fichiers
1555 1552
 
1556
-	if (!defined('_CACHE_PLUGINS_PATH')) define('_CACHE_PLUGINS_PATH', _DIR_CACHE . "charger_plugins_chemins.php");
1557
-	if (!defined('_CACHE_PLUGINS_OPT')) define('_CACHE_PLUGINS_OPT', _DIR_CACHE . "charger_plugins_options.php");
1558
-	if (!defined('_CACHE_PLUGINS_FCT')) define('_CACHE_PLUGINS_FCT', _DIR_CACHE . "charger_plugins_fonctions.php");
1559
-	if (!defined('_CACHE_PIPELINES')) define('_CACHE_PIPELINES',  _DIR_CACHE."charger_pipelines.php");
1560
-	if (!defined('_CACHE_CHEMIN')) define('_CACHE_CHEMIN',  _DIR_CACHE."chemin.txt");
1553
+	if (!defined('_CACHE_PLUGINS_PATH')) define('_CACHE_PLUGINS_PATH', _DIR_CACHE."charger_plugins_chemins.php");
1554
+	if (!defined('_CACHE_PLUGINS_OPT')) define('_CACHE_PLUGINS_OPT', _DIR_CACHE."charger_plugins_options.php");
1555
+	if (!defined('_CACHE_PLUGINS_FCT')) define('_CACHE_PLUGINS_FCT', _DIR_CACHE."charger_plugins_fonctions.php");
1556
+	if (!defined('_CACHE_PIPELINES')) define('_CACHE_PIPELINES', _DIR_CACHE."charger_pipelines.php");
1557
+	if (!defined('_CACHE_CHEMIN')) define('_CACHE_CHEMIN', _DIR_CACHE."chemin.txt");
1561 1558
 
1562 1559
 	# attention .php obligatoire pour ecrire_fichier_securise
1563
-	if (!defined('_FILE_META')) define('_FILE_META', $ti . 'meta_cache.php');
1564
-	if (!defined('_DIR_LOG')) define('_DIR_LOG', _DIR_TMP . 'log/');
1560
+	if (!defined('_FILE_META')) define('_FILE_META', $ti.'meta_cache.php');
1561
+	if (!defined('_DIR_LOG')) define('_DIR_LOG', _DIR_TMP.'log/');
1565 1562
 	if (!defined('_FILE_LOG')) define('_FILE_LOG', 'spip');
1566 1563
 	if (!defined('_FILE_LOG_SUFFIX')) define('_FILE_LOG_SUFFIX', '.log');
1567 1564
 
@@ -1569,21 +1566,21 @@  discard block
 block discarded – undo
1569 1566
 	// tient compte des anciennes versions (inc_connect...)
1570 1567
 	if (!defined('_FILE_CONNECT_INS')) define('_FILE_CONNECT_INS', 'connect');
1571 1568
 	if (!defined('_FILE_CONNECT')) define('_FILE_CONNECT',
1572
-		(@is_readable($f = _DIR_CONNECT . _FILE_CONNECT_INS . '.php') ? $f
1573
-	:	(@is_readable($f = _DIR_RESTREINT . 'inc_connect.php') ? $f
1569
+		(@is_readable($f = _DIR_CONNECT._FILE_CONNECT_INS.'.php') ? $f
1570
+	:	(@is_readable($f = _DIR_RESTREINT.'inc_connect.php') ? $f
1574 1571
 	:	false)));
1575 1572
 
1576 1573
 	// Le fichier de reglages des droits
1577 1574
 	if (!defined('_FILE_CHMOD_INS')) define('_FILE_CHMOD_INS', 'chmod');
1578 1575
 	if (!defined('_FILE_CHMOD')) define('_FILE_CHMOD',
1579
-		(@is_readable($f = _DIR_CHMOD . _FILE_CHMOD_INS . '.php') ? $f
1576
+		(@is_readable($f = _DIR_CHMOD._FILE_CHMOD_INS.'.php') ? $f
1580 1577
 	:	false));
1581 1578
 
1582 1579
 	if (!defined('_FILE_LDAP')) define('_FILE_LDAP', 'ldap.php');
1583 1580
 
1584 1581
 	if (!defined('_FILE_TMP_SUFFIX')) define('_FILE_TMP_SUFFIX', '.tmp.php');
1585
-	if (!defined('_FILE_CONNECT_TMP')) define('_FILE_CONNECT_TMP', _DIR_CONNECT . _FILE_CONNECT_INS . _FILE_TMP_SUFFIX);
1586
-	if (!defined('_FILE_CHMOD_TMP')) define('_FILE_CHMOD_TMP', _DIR_CHMOD . _FILE_CHMOD_INS . _FILE_TMP_SUFFIX);
1582
+	if (!defined('_FILE_CONNECT_TMP')) define('_FILE_CONNECT_TMP', _DIR_CONNECT._FILE_CONNECT_INS._FILE_TMP_SUFFIX);
1583
+	if (!defined('_FILE_CHMOD_TMP')) define('_FILE_CHMOD_TMP', _DIR_CHMOD._FILE_CHMOD_INS._FILE_TMP_SUFFIX);
1587 1584
 
1588 1585
 	// Definition des droits d'acces en ecriture
1589 1586
 	if (!defined('_SPIP_CHMOD') AND _FILE_CHMOD)
@@ -1594,31 +1591,31 @@  discard block
 block discarded – undo
1594 1591
 
1595 1592
 	// Le charset par defaut lors de l'installation
1596 1593
 	if (!defined('_DEFAULT_CHARSET')) define('_DEFAULT_CHARSET', 'utf-8');
1597
-	if (!defined('_ROOT_PLUGINS')) define('_ROOT_PLUGINS', _ROOT_RACINE . "plugins/");
1598
-	if (!defined('_ROOT_PLUGINS_DIST')) define('_ROOT_PLUGINS_DIST', _ROOT_RACINE . "plugins-dist/");
1599
-	if (!defined('_ROOT_PLUGINS_SUPPL') && defined('_DIR_PLUGINS_SUPPL') && _DIR_PLUGINS_SUPPL) define('_ROOT_PLUGINS_SUPPL', _ROOT_RACINE . str_replace(_DIR_RACINE,'',_DIR_PLUGINS_SUPPL));
1594
+	if (!defined('_ROOT_PLUGINS')) define('_ROOT_PLUGINS', _ROOT_RACINE."plugins/");
1595
+	if (!defined('_ROOT_PLUGINS_DIST')) define('_ROOT_PLUGINS_DIST', _ROOT_RACINE."plugins-dist/");
1596
+	if (!defined('_ROOT_PLUGINS_SUPPL') && defined('_DIR_PLUGINS_SUPPL') && _DIR_PLUGINS_SUPPL) define('_ROOT_PLUGINS_SUPPL', _ROOT_RACINE.str_replace(_DIR_RACINE, '', _DIR_PLUGINS_SUPPL));
1600 1597
 
1601 1598
 	// La taille des Log
1602 1599
 	if (!defined('_MAX_LOG')) define('_MAX_LOG', 100);
1603 1600
 
1604 1601
 	// Sommes-nous dans l'empire du Mal ?
1605 1602
 	// (ou sous le signe du Pingouin, ascendant GNU ?)
1606
-	if (strpos($_SERVER['SERVER_SOFTWARE'], '(Win') !== false){
1603
+	if (strpos($_SERVER['SERVER_SOFTWARE'], '(Win') !== false) {
1607 1604
 		if (!defined('_OS_SERVEUR')) define('_OS_SERVEUR', 'windows');
1608
-		if (!defined('_SPIP_LOCK_MODE')) define('_SPIP_LOCK_MODE',1); // utiliser le flock php
1605
+		if (!defined('_SPIP_LOCK_MODE')) define('_SPIP_LOCK_MODE', 1); // utiliser le flock php
1609 1606
 	}
1610 1607
 	else {
1611 1608
 		if (!defined('_OS_SERVEUR')) define('_OS_SERVEUR', '');
1612
-		if (!defined('_SPIP_LOCK_MODE')) define('_SPIP_LOCK_MODE',1); // utiliser le flock php
1609
+		if (!defined('_SPIP_LOCK_MODE')) define('_SPIP_LOCK_MODE', 1); // utiliser le flock php
1613 1610
 		#if (!defined('_SPIP_LOCK_MODE')) define('_SPIP_LOCK_MODE',2); // utiliser le nfslock de spip mais link() est tres souvent interdite
1614 1611
 	}
1615 1612
 
1616 1613
 	// Langue par defaut
1617
-	if (!defined('_LANGUE_PAR_DEFAUT')) define('_LANGUE_PAR_DEFAUT','fr');
1614
+	if (!defined('_LANGUE_PAR_DEFAUT')) define('_LANGUE_PAR_DEFAUT', 'fr');
1618 1615
 
1619 1616
 	// PHP_VERSION_ID dispo depuis PHP 5.2.7
1620 1617
 	if (!defined('PHP_VERSION_ID')) {
1621
-	   $version = explode('.',PHP_VERSION);
1618
+	   $version = explode('.', PHP_VERSION);
1622 1619
 	   define('PHP_VERSION_ID', ($version[0] * 10000 + $version[1] * 100 + $version[2]));
1623 1620
 	}
1624 1621
 
@@ -1627,7 +1624,7 @@  discard block
 block discarded – undo
1627 1624
 	// (non surchargeable en l'etat ; attention si on utilise include_spip()
1628 1625
 	// pour le rendre surchargeable, on va provoquer un reecriture
1629 1626
 	// systematique du noyau ou une baisse de perfs => a etudier)
1630
-	include_once _ROOT_RESTREINT . 'inc/flock.php';
1627
+	include_once _ROOT_RESTREINT.'inc/flock.php';
1631 1628
 
1632 1629
 	// charger tout de suite le path et son cache
1633 1630
 	load_path_cache();
@@ -1647,7 +1644,7 @@  discard block
 block discarded – undo
1647 1644
 	spip_desinfecte($_REQUEST);
1648 1645
 
1649 1646
 	// Par ailleurs on ne veut pas de magic_quotes au cours de l'execution
1650
-	if (PHP_VERSION_ID<50300) {
1647
+	if (PHP_VERSION_ID < 50300) {
1651 1648
 		@set_magic_quotes_runtime(0);
1652 1649
 	}
1653 1650
 
@@ -1657,7 +1654,7 @@  discard block
 block discarded – undo
1657 1654
 	if (test_valeur_serveur(@ini_get('register_globals'))) {
1658 1655
 		// ne pas desinfecter les globales en profondeur car elle contient aussi les
1659 1656
 		// precedentes, qui seraient desinfectees 2 fois.
1660
-		spip_desinfecte($GLOBALS,false);
1657
+		spip_desinfecte($GLOBALS, false);
1661 1658
 		if (include_spip('inc/php3'))
1662 1659
 			spip_register_globals(true);
1663 1660
 
@@ -1701,8 +1698,8 @@  discard block
 block discarded – undo
1701 1698
 	$inc_meta();
1702 1699
 
1703 1700
 	// on a pas pu le faire plus tot
1704
-	if  ($avertir_register_globals)
1705
-		avertir_auteurs("register_globals",_L("Probl&egrave;me de s&eacute;curit&eacute; : register_globals=on; dans php.ini &agrave; corriger."));
1701
+	if ($avertir_register_globals)
1702
+		avertir_auteurs("register_globals", _L("Probl&egrave;me de s&eacute;curit&eacute; : register_globals=on; dans php.ini &agrave; corriger."));
1706 1703
 
1707 1704
 	// nombre de repertoires depuis la racine
1708 1705
 	// on compare a l'adresse de spip.php : $_SERVER["SCRIPT_NAME"]
@@ -1718,7 +1715,7 @@  discard block
 block discarded – undo
1718 1715
 			// si jamais c'est de la mutu avec sous rep, on est perdu si on se fie
1719 1716
 			// a spip.php qui est a la racine du spip, et vue qu'on sait pas se reperer
1720 1717
 			// s'en remettre a l'adresse du site. alea jacta est.
1721
-			OR $ti!==_NOM_TEMPORAIRES_INACCESSIBLES){
1718
+			OR $ti !== _NOM_TEMPORAIRES_INACCESSIBLES) {
1722 1719
 
1723 1720
 			if (isset($GLOBALS['meta']['adresse_site'])) {
1724 1721
 				$uri_ref = parse_url($GLOBALS['meta']['adresse_site']);
@@ -1732,12 +1729,12 @@  discard block
 block discarded – undo
1732 1729
 		else {
1733 1730
 			$GLOBALS['profondeur_url'] = max(0,
1734 1731
 				substr_count($uri[0], '/')
1735
-				- substr_count($uri_ref,'/'));
1732
+				- substr_count($uri_ref, '/'));
1736 1733
 		}
1737 1734
 	}
1738 1735
 	// s'il y a un cookie ou PHP_AUTH, initialiser visiteur_session
1739 1736
 	if (_FILE_CONNECT) {
1740
-		if (verifier_visiteur()=='0minirezo'
1737
+		if (verifier_visiteur() == '0minirezo'
1741 1738
 			// si c'est un admin sans cookie admin, il faut ignorer le cache chemin !
1742 1739
 		  AND !isset($_COOKIE['spip_admin']))
1743 1740
 			clear_path_cache();
@@ -1767,7 +1764,7 @@  discard block
 block discarded – undo
1767 1764
 	if (!defined('_IMG_MAX_SIZE')) define('_IMG_MAX_SIZE', 0); # poids en ko
1768 1765
 	if (!defined('_IMG_MAX_WIDTH')) define('_IMG_MAX_WIDTH', 0); # largeur en pixels
1769 1766
 	if (!defined('_IMG_MAX_HEIGHT')) define('_IMG_MAX_HEIGHT', 0); # hauteur en pixels
1770
-	if (!defined('_PASS_LONGUEUR_MINI')) define('_PASS_LONGUEUR_MINI',6);
1767
+	if (!defined('_PASS_LONGUEUR_MINI')) define('_PASS_LONGUEUR_MINI', 6);
1771 1768
 
1772 1769
 
1773 1770
 	// Qualite des images calculees automatiquement. C'est un nombre entre 0 et 100, meme pour imagick (on ramene a 0..1 par la suite)
@@ -1777,7 +1774,7 @@  discard block
 block discarded – undo
1777 1774
 	// Historiquement la valeur pour imagick semble differente. Si ca n'est pas necessaire, il serait preferable de garder _IMG_QUALITE
1778 1775
         if (!defined('_IMG_IMAGICK_QUALITE')) define('_IMG_IMAGICK_QUALITE', 75); # surcharge pour imagick en PHP
1779 1776
 
1780
-	if (!defined('_COPIE_LOCALE_MAX_SIZE')) define('_COPIE_LOCALE_MAX_SIZE',16777216); // poids en octet
1777
+	if (!defined('_COPIE_LOCALE_MAX_SIZE')) define('_COPIE_LOCALE_MAX_SIZE', 16777216); // poids en octet
1781 1778
 
1782 1779
 	// qq chaines standard
1783 1780
 	if (!defined('_ACCESS_FILE_NAME')) define('_ACCESS_FILE_NAME', '.htaccess');
@@ -1809,7 +1806,7 @@  discard block
 block discarded – undo
1809 1806
 	// meme pb sur thttpd cf. http://forum.spip.org/fr_184153.html
1810 1807
 
1811 1808
 	if (!defined('_SPIP_ECRIRE_SCRIPT')) define('_SPIP_ECRIRE_SCRIPT', // true ? #decommenter ici et commenter la
1812
-	       preg_match(',IIS|thttpd,',$_SERVER['SERVER_SOFTWARE']) ?
1809
+	       preg_match(',IIS|thttpd,', $_SERVER['SERVER_SOFTWARE']) ?
1813 1810
 	       'index.php' : '');
1814 1811
 
1815 1812
 
@@ -1832,32 +1829,32 @@  discard block
 block discarded – undo
1832 1829
 	# au dela de 5500000 on considere que php n'est pas limite en memoire pour cette operation
1833 1830
 	# les configurations limitees en memoire ont un seuil plutot vers 1MPixel
1834 1831
 	if (!defined('_IMG_GD_MAX_PIXELS')) define('_IMG_GD_MAX_PIXELS',
1835
-		(isset($GLOBALS['meta']['max_taille_vignettes'])&&$GLOBALS['meta']['max_taille_vignettes']<5500000)
1832
+		(isset($GLOBALS['meta']['max_taille_vignettes']) && $GLOBALS['meta']['max_taille_vignettes'] < 5500000)
1836 1833
 		 ? $GLOBALS['meta']['max_taille_vignettes']
1837 1834
 		 : 0);
1838 1835
 
1839
-	if (!defined('_MEMORY_LIMIT_MIN')) define('_MEMORY_LIMIT_MIN',10); // en Mo
1836
+	if (!defined('_MEMORY_LIMIT_MIN')) define('_MEMORY_LIMIT_MIN', 10); // en Mo
1840 1837
 	// si on est dans l'espace prive et si le besoin est superieur a 8Mo (qui est vraiment le standard)
1841 1838
 	// on verifie que la memoire est suffisante pour le compactage css+js pour eviter la page blanche
1842 1839
 	// il y aura d'autres problemes et l'utilisateur n'ira pas tres loin, mais ce sera plus comprehensible qu'une page blanche
1843
-	if (test_espace_prive() AND _MEMORY_LIMIT_MIN>8){
1840
+	if (test_espace_prive() AND _MEMORY_LIMIT_MIN > 8) {
1844 1841
 		if ($memory = trim(ini_get('memory_limit')) and $memory != -1) {
1845
-			$unit = strtolower(substr($memory,strlen($memory/1),1));
1846
-			switch($unit) {
1842
+			$unit = strtolower(substr($memory, strlen($memory / 1), 1));
1843
+			switch ($unit) {
1847 1844
 				// Le modifieur 'G' est disponible depuis PHP 5.1.0
1848 1845
 				case 'g': $memory *= 1024;
1849 1846
 				case 'm': $memory *= 1024;
1850 1847
 				case 'k': $memory *= 1024;
1851 1848
 			}
1852
-			if ($memory<_MEMORY_LIMIT_MIN*1024*1024){
1853
-				ini_set('memory_limit',$m=_MEMORY_LIMIT_MIN.'M');
1854
-				if (trim(ini_get('memory_limit'))!=$m){
1855
-					if (!defined('_INTERDIRE_COMPACTE_HEAD_ECRIRE')) define('_INTERDIRE_COMPACTE_HEAD_ECRIRE',true); // evite une page blanche car on ne saura pas calculer la css dans ce hit
1849
+			if ($memory < _MEMORY_LIMIT_MIN * 1024 * 1024) {
1850
+				ini_set('memory_limit', $m = _MEMORY_LIMIT_MIN.'M');
1851
+				if (trim(ini_get('memory_limit')) != $m) {
1852
+					if (!defined('_INTERDIRE_COMPACTE_HEAD_ECRIRE')) define('_INTERDIRE_COMPACTE_HEAD_ECRIRE', true); // evite une page blanche car on ne saura pas calculer la css dans ce hit
1856 1853
 				}
1857 1854
 			}
1858 1855
 		}
1859 1856
 		else
1860
-			if (!defined('_INTERDIRE_COMPACTE_HEAD_ECRIRE')) define('_INTERDIRE_COMPACTE_HEAD_ECRIRE',true); // evite une page blanche car on ne saura pas calculer la css dans ce hit
1857
+			if (!defined('_INTERDIRE_COMPACTE_HEAD_ECRIRE')) define('_INTERDIRE_COMPACTE_HEAD_ECRIRE', true); // evite une page blanche car on ne saura pas calculer la css dans ce hit
1861 1858
 	}
1862 1859
 	// Protocoles a normaliser dans les chaines de langues
1863 1860
 	if (!defined('_PROTOCOLES_STD'))
@@ -1869,7 +1866,7 @@  discard block
 block discarded – undo
1869 1866
 // Reperer les variables d'URL qui conditionnent la perennite du cache, des urls
1870 1867
 // ou d'autres petit caches (trouver_table, css et js compactes ...)
1871 1868
 // http://doc.spip.org/@init_var_mode
1872
-function init_var_mode(){
1869
+function init_var_mode() {
1873 1870
 	static $done = false;
1874 1871
 	if (!$done) {
1875 1872
 
@@ -1877,56 +1874,56 @@  discard block
 block discarded – undo
1877 1874
 			// tout le monde peut calcul/recalcul
1878 1875
 			if ($_GET['var_mode'] == 'calcul'
1879 1876
 			OR $_GET['var_mode'] == 'recalcul') {
1880
-				if (!defined('_VAR_MODE')) define('_VAR_MODE',$_GET['var_mode']);
1877
+				if (!defined('_VAR_MODE')) define('_VAR_MODE', $_GET['var_mode']);
1881 1878
 			}
1882 1879
 			// preview, debug, blocs, urls et images necessitent une autorisation
1883
-			else if (in_array($_GET['var_mode'],array('preview','debug','inclure','urls','images','traduction'))) {
1880
+			else if (in_array($_GET['var_mode'], array('preview', 'debug', 'inclure', 'urls', 'images', 'traduction'))) {
1884 1881
 				include_spip('inc/autoriser');
1885 1882
 				if (autoriser(
1886 1883
 					($_GET['var_mode'] == 'preview')
1887 1884
 						? 'previsualiser'
1888 1885
 						: 'debug'
1889 1886
 				)) {
1890
-					switch($_GET['var_mode']){
1887
+					switch ($_GET['var_mode']) {
1891 1888
 						case 'traduction':
1892 1889
 							// forcer le calcul pour passer dans traduire
1893
-							if (!defined('_VAR_MODE')) define('_VAR_MODE','calcul');
1890
+							if (!defined('_VAR_MODE')) define('_VAR_MODE', 'calcul');
1894 1891
 							// et ne pas enregistrer de cache pour ne pas trainer les surlignages sur d'autres pages
1895
-							if (!defined('_VAR_NOCACHE')) define('_VAR_NOCACHE',true);
1892
+							if (!defined('_VAR_NOCACHE')) define('_VAR_NOCACHE', true);
1896 1893
 							break;
1897 1894
 						case 'preview':
1898 1895
 							// basculer sur les criteres de preview dans les boucles
1899
-							if (!defined('_VAR_PREVIEW')) define('_VAR_PREVIEW',true);
1896
+							if (!defined('_VAR_PREVIEW')) define('_VAR_PREVIEW', true);
1900 1897
 							// forcer le calcul
1901
-							if (!defined('_VAR_MODE')) define('_VAR_MODE','calcul');
1898
+							if (!defined('_VAR_MODE')) define('_VAR_MODE', 'calcul');
1902 1899
 							// et ne pas enregistrer de cache
1903
-							if (!defined('_VAR_NOCACHE')) define('_VAR_NOCACHE',true);
1900
+							if (!defined('_VAR_NOCACHE')) define('_VAR_NOCACHE', true);
1904 1901
 							break;
1905 1902
 						case 'inclure':
1906 1903
 							// forcer le compilo et ignorer les caches existants
1907
-							if (!defined('_VAR_MODE')) define('_VAR_MODE','calcul');
1908
-							if (!defined('_VAR_INCLURE')) define('_VAR_INCLURE',true);
1904
+							if (!defined('_VAR_MODE')) define('_VAR_MODE', 'calcul');
1905
+							if (!defined('_VAR_INCLURE')) define('_VAR_INCLURE', true);
1909 1906
 							// et ne pas enregistrer de cache
1910
-							if (!defined('_VAR_NOCACHE')) define('_VAR_NOCACHE',true);
1907
+							if (!defined('_VAR_NOCACHE')) define('_VAR_NOCACHE', true);
1911 1908
 							break;
1912 1909
 						case 'urls':
1913 1910
 							// forcer le compilo et ignorer les caches existants
1914
-							if (!defined('_VAR_MODE')) define('_VAR_MODE','calcul');
1915
-							if (!defined('_VAR_URLS')) define('_VAR_URLS',true);
1911
+							if (!defined('_VAR_MODE')) define('_VAR_MODE', 'calcul');
1912
+							if (!defined('_VAR_URLS')) define('_VAR_URLS', true);
1916 1913
 							break;
1917 1914
 						case 'images':
1918 1915
 							// forcer le compilo et ignorer les caches existants
1919
-							if (!defined('_VAR_MODE')) define('_VAR_MODE','calcul');
1916
+							if (!defined('_VAR_MODE')) define('_VAR_MODE', 'calcul');
1920 1917
 							// indiquer qu'on doit recalculer les images
1921
-							if (!defined('_VAR_IMAGES')) define('_VAR_IMAGES',true);
1918
+							if (!defined('_VAR_IMAGES')) define('_VAR_IMAGES', true);
1922 1919
 							break;
1923 1920
 						case 'debug':
1924
-							if (!defined('_VAR_MODE')) define('_VAR_MODE','debug');
1921
+							if (!defined('_VAR_MODE')) define('_VAR_MODE', 'debug');
1925 1922
 							// et ne pas enregistrer de cache
1926
-							if (!defined('_VAR_NOCACHE')) define('_VAR_NOCACHE',true);
1923
+							if (!defined('_VAR_NOCACHE')) define('_VAR_NOCACHE', true);
1927 1924
 							break;
1928 1925
 						default :
1929
-							if (!defined('_VAR_MODE')) define('_VAR_MODE',$_GET['var_mode']);
1926
+							if (!defined('_VAR_MODE')) define('_VAR_MODE', $_GET['var_mode']);
1930 1927
 							break;
1931 1928
 					}
1932 1929
           if (isset($GLOBALS['visiteur_session']['nom']))
@@ -1946,7 +1943,7 @@  discard block
 block discarded – undo
1946 1943
 					// sinon tant pis
1947 1944
 				}
1948 1945
 			}
1949
-			if (!defined('_VAR_MODE')) define('_VAR_MODE',false);
1946
+			if (!defined('_VAR_MODE')) define('_VAR_MODE', false);
1950 1947
 		}
1951 1948
 		$done = true;
1952 1949
 	}
@@ -1956,7 +1953,7 @@  discard block
 block discarded – undo
1956 1953
 // supprimer aussi les eventuels caracteres nuls %00, qui peuvent tromper
1957 1954
 // la commande is_readable('chemin/vers/fichier/interdit%00truc_normal')
1958 1955
 // http://doc.spip.org/@spip_desinfecte
1959
-function spip_desinfecte(&$t,$deep = true) {
1956
+function spip_desinfecte(&$t, $deep = true) {
1960 1957
 	static $magic_quotes;
1961 1958
 	if (!isset($magic_quotes))
1962 1959
 		$magic_quotes = @get_magic_quotes_gpc();
@@ -1968,8 +1965,8 @@  discard block
 block discarded – undo
1968 1965
 			$t[$key] = str_replace(chr(0), '-', $t[$key]);
1969 1966
 		}
1970 1967
 		// traiter aussi les "texte_plus" de article_edit
1971
-		else if ($deep AND is_array($t[$key]) AND $key!=='GLOBALS')
1972
-			spip_desinfecte($t[$key],$deep);
1968
+		else if ($deep AND is_array($t[$key]) AND $key !== 'GLOBALS')
1969
+			spip_desinfecte($t[$key], $deep);
1973 1970
 	}
1974 1971
 }
1975 1972
 
@@ -1982,10 +1979,10 @@  discard block
 block discarded – undo
1982 1979
 	// mais on risque de perturber des plugins en initialisant trop tot
1983 1980
 	// certaines constantes
1984 1981
 	@spip_initialisation_core(
1985
-		(_DIR_RACINE  . _NOM_PERMANENTS_INACCESSIBLES),
1986
-		(_DIR_RACINE  . _NOM_PERMANENTS_ACCESSIBLES),
1987
-		(_DIR_RACINE  . _NOM_TEMPORAIRES_INACCESSIBLES),
1988
-		(_DIR_RACINE  . _NOM_TEMPORAIRES_ACCESSIBLES)
1982
+		(_DIR_RACINE._NOM_PERMANENTS_INACCESSIBLES),
1983
+		(_DIR_RACINE._NOM_PERMANENTS_ACCESSIBLES),
1984
+		(_DIR_RACINE._NOM_TEMPORAIRES_INACCESSIBLES),
1985
+		(_DIR_RACINE._NOM_TEMPORAIRES_ACCESSIBLES)
1989 1986
 	);
1990 1987
 
1991 1988
 	// Demarrer une session NON AUTHENTIFIEE si on donne son nom
@@ -1993,7 +1990,7 @@  discard block
 block discarded – undo
1993 1990
 	// Attention on separe bien session_nom et nom, pour eviter
1994 1991
 	// les melanges entre donnees SQL et variables plus aleatoires
1995 1992
 	$variables_session = array('session_nom', 'session_email');
1996
-	foreach($variables_session as $var) {
1993
+	foreach ($variables_session as $var) {
1997 1994
 		if (_request($var) !== null) {
1998 1995
 			$init = true;
1999 1996
 			break;
@@ -2004,7 +2001,7 @@  discard block
 block discarded – undo
2004 2001
 		$session = charger_fonction('session', 'inc');
2005 2002
 		$session();
2006 2003
 		include_spip('inc/texte');
2007
-		foreach($variables_session as $var)
2004
+		foreach ($variables_session as $var)
2008 2005
 			if (($a = _request($var)) !== null)
2009 2006
 				$GLOBALS['visiteur_session'][$var] = safehtml($a);
2010 2007
 		if (!isset($GLOBALS['visiteur_session']['id_auteur']))
@@ -2013,14 +2010,14 @@  discard block
 block discarded – undo
2013 2010
 		return 0;
2014 2011
 	}
2015 2012
 
2016
-	$h = (isset($_SERVER['PHP_AUTH_USER'])  AND !$GLOBALS['ignore_auth_http']);
2013
+	$h = (isset($_SERVER['PHP_AUTH_USER']) AND !$GLOBALS['ignore_auth_http']);
2017 2014
 	if ($h OR isset($_COOKIE['spip_session']) OR isset($_COOKIE[$GLOBALS['cookie_prefix'].'_session'])) {
2018 2015
 
2019 2016
 		$session = charger_fonction('session', 'inc');
2020 2017
 		if ($session()) {
2021 2018
 			return $GLOBALS['visiteur_session']['statut'];
2022 2019
 		}
2023
-		if ($h  AND isset($_SERVER['PHP_AUTH_PW'])) {
2020
+		if ($h AND isset($_SERVER['PHP_AUTH_PW'])) {
2024 2021
 			include_spip('inc/auth');
2025 2022
 			$h = lire_php_auth($_SERVER['PHP_AUTH_USER'], $_SERVER['PHP_AUTH_PW']);
2026 2023
 		}
@@ -2045,7 +2042,7 @@  discard block
 block discarded – undo
2045 2042
 // cette fonction retourne toujours non False
2046 2043
 
2047 2044
 // http://doc.spip.org/@lang_select
2048
-function lang_select ($lang=NULL) {
2045
+function lang_select($lang = NULL) {
2049 2046
 	static $pile_langues = array();
2050 2047
 	if (!function_exists('changer_langue'))
2051 2048
 		include_spip('inc/lang');
@@ -2075,7 +2072,7 @@  discard block
 block discarded – undo
2075 2072
 		$s = pipeline('definir_session',
2076 2073
 			$GLOBALS['visiteur_session']
2077 2074
 			? serialize($GLOBALS['visiteur_session'])
2078
-				. '_' . @$_COOKIE['spip_session']
2075
+				. '_'.@$_COOKIE['spip_session']
2079 2076
 			: ''
2080 2077
 		);
2081 2078
 		$session = $s ? substr(md5($s), 0, 8) : '';
@@ -2097,9 +2094,9 @@  discard block
 block discarded – undo
2097 2094
  * @return Lien sur une icone d'aide
2098 2095
 **/
2099 2096
 // http://doc.spip.org/@aide
2100
-function aide($aide='', $distante = false) {
2097
+function aide($aide = '', $distante = false) {
2101 2098
 		$aider = charger_fonction('aider', 'inc', true);
2102
-	return $aider ?  $aider($aide, '', array(), $distante) : '';
2099
+	return $aider ? $aider($aide, '', array(), $distante) : '';
2103 2100
 }
2104 2101
 
2105 2102
 // normalement il faudrait creer exec/info.php, mais pour mettre juste ca:
@@ -2128,7 +2125,7 @@  discard block
 block discarded – undo
2128 2125
  * 		Rien dans la plupart des cas
2129 2126
  * 		- string si $message à false.
2130 2127
 **/
2131
-function erreur_squelette($message='', $lieu='') {
2128
+function erreur_squelette($message = '', $lieu = '') {
2132 2129
 	$debusquer = charger_fonction('debusquer', 'public');
2133 2130
 	if (is_array($lieu)) {
2134 2131
 		include_spip('public/compiler');
@@ -2168,15 +2165,15 @@  discard block
 block discarded – undo
2168 2165
  * 		Contenu du squelette calculé
2169 2166
  * 		ou tableau d'information sur le squelette.
2170 2167
  */
2171
-function recuperer_fond($fond, $contexte=array(), $options = array(), $connect='') {
2168
+function recuperer_fond($fond, $contexte = array(), $options = array(), $connect = '') {
2172 2169
 	if (!function_exists('evaluer_fond'))
2173 2170
 		include_spip('public/assembler');
2174 2171
 	// assurer la compat avec l'ancienne syntaxe
2175 2172
 	// (trim etait le 3eme argument, par defaut a true)
2176 2173
 	if (!is_array($options)) $options = array('trim'=>$options);
2177
-	if (!isset($options['trim'])) $options['trim']=true;
2174
+	if (!isset($options['trim'])) $options['trim'] = true;
2178 2175
 
2179
-	if (isset($contexte['connect'])){
2176
+	if (isset($contexte['connect'])) {
2180 2177
 		$connect = ($connect ? $connect : $contexte['connect']);
2181 2178
 		unset($contexte['connect']);
2182 2179
 	}
@@ -2184,7 +2181,7 @@  discard block
 block discarded – undo
2184 2181
 	$texte = "";
2185 2182
 	$pages = array();
2186 2183
 	$lang_select = '';
2187
-	if (!isset($options['etoile']) OR !$options['etoile']){
2184
+	if (!isset($options['etoile']) OR !$options['etoile']) {
2188 2185
 		// Si on a inclus sans fixer le critere de lang, on prend la langue courante
2189 2186
 		if (!isset($contexte['lang']))
2190 2187
 			$contexte['lang'] = $GLOBALS['spip_lang'];
@@ -2196,10 +2193,10 @@  discard block
 block discarded – undo
2196 2193
 
2197 2194
 	@$GLOBALS['_INC_PUBLIC']++;
2198 2195
 
2199
-	foreach(is_array($fond) ? $fond : array($fond) as $f){
2196
+	foreach (is_array($fond) ? $fond : array($fond) as $f) {
2200 2197
 		$page = evaluer_fond($f, $contexte, $connect);
2201 2198
 		if ($page === '') {
2202
-			$c = isset($options['compil']) ? $options['compil'] :'';
2199
+			$c = isset($options['compil']) ? $options['compil'] : '';
2203 2200
 			$a = array('fichier'=>$fond);
2204 2201
 			$erreur = _T('info_erreur_squelette2', $a); // squelette introuvable
2205 2202
 			erreur_squelette($erreur, $c);
@@ -2207,14 +2204,14 @@  discard block
 block discarded – undo
2207 2204
 			$page = array('texte' => '', 'erreur' => $erreur);
2208 2205
 		}
2209 2206
 
2210
-		$page = pipeline('recuperer_fond',array(
2211
-			'args'=>array('fond'=>$f,'contexte'=>$contexte,'options'=>$options,'connect'=>$connect),
2207
+		$page = pipeline('recuperer_fond', array(
2208
+			'args'=>array('fond'=>$f, 'contexte'=>$contexte, 'options'=>$options, 'connect'=>$connect),
2212 2209
 			'data'=>$page
2213 2210
 		));
2214
-		if (isset($options['ajax']) AND $options['ajax']){
2211
+		if (isset($options['ajax']) AND $options['ajax']) {
2215 2212
 			if (!function_exists('encoder_contexte_ajax'))
2216 2213
 				include_spip('inc/filtres');
2217
-			$page['texte'] = encoder_contexte_ajax(array_merge($contexte,array('fond'=>$f)),'',$page['texte'], $options['ajax']);
2214
+			$page['texte'] = encoder_contexte_ajax(array_merge($contexte, array('fond'=>$f)), '', $page['texte'], $options['ajax']);
2218 2215
 		}
2219 2216
 
2220 2217
 		if (isset($options['raw']) AND $options['raw'])
@@ -2227,7 +2224,7 @@  discard block
 block discarded – undo
2227 2224
 
2228 2225
 	if ($lang_select) lang_select();
2229 2226
 	if (isset($options['raw']) AND $options['raw'])
2230
-		return is_array($fond)?$pages:reset($pages);
2227
+		return is_array($fond) ? $pages : reset($pages);
2231 2228
 	else
2232 2229
 		return $options['trim'] ? ltrim($texte) : $texte;
2233 2230
 }
@@ -2239,7 +2236,7 @@  discard block
 block discarded – undo
2239 2236
  * @return string
2240 2237
  */
2241 2238
 function trouve_modele($nom) {
2242
-	return trouver_fond($nom,'modeles/');
2239
+	return trouver_fond($nom, 'modeles/');
2243 2240
 }
2244 2241
 
2245 2242
 /**
@@ -2254,8 +2251,8 @@  discard block
 block discarded – undo
2254 2251
  * @param bool $pathinfo
2255 2252
  * @return array|string
2256 2253
  */
2257
-function trouver_fond($nom, $dir='', $pathinfo = false) {
2258
-	$f = find_in_path($nom.'.'. _EXTENSION_SQUELETTES, $dir?rtrim($dir,'/').'/':'');
2254
+function trouver_fond($nom, $dir = '', $pathinfo = false) {
2255
+	$f = find_in_path($nom.'.'._EXTENSION_SQUELETTES, $dir ?rtrim($dir, '/').'/' : '');
2259 2256
 	if (!$pathinfo) return $f;
2260 2257
 	// renvoyer un tableau detaille si $pathinfo==true
2261 2258
 	$p = pathinfo($f);
@@ -2263,14 +2260,14 @@  discard block
 block discarded – undo
2263 2260
 		$p['extension'] = _EXTENSION_SQUELETTES;
2264 2261
 	}
2265 2262
 	if (!isset($p['extension']) OR !$p['filename']) {
2266
-		$p['filename'] = ($p['basename']?substr($p['basename'],0,-strlen($p['extension'])-1):'');
2263
+		$p['filename'] = ($p['basename'] ?substr($p['basename'], 0, -strlen($p['extension']) - 1) : '');
2267 2264
 	}
2268
-	$p['fond'] = ($f?substr($f,0,-strlen($p['extension'])-1):'');
2265
+	$p['fond'] = ($f ?substr($f, 0, -strlen($p['extension']) - 1) : '');
2269 2266
 	return $p;
2270 2267
 }
2271 2268
 
2272
-function tester_url_ecrire($nom){
2273
-	static $exec=array();
2269
+function tester_url_ecrire($nom) {
2270
+	static $exec = array();
2274 2271
 	if (isset($exec[$nom])) return $exec[$nom];
2275 2272
 	// tester si c'est une page en squelette
2276 2273
 	if (trouver_fond($nom, 'prive/squelettes/contenu/'))
@@ -2279,12 +2276,12 @@  discard block
 block discarded – undo
2279 2276
 	elseif (trouver_fond($nom, 'prive/exec/'))
2280 2277
 		return $exec[$nom] = 'fond_monobloc';
2281 2278
 	// echafaudage d'un fond !
2282
-	elseif(include_spip('public/styliser_par_z') AND z_echafaudable($nom))
2279
+	elseif (include_spip('public/styliser_par_z') AND z_echafaudable($nom))
2283 2280
 		return $exec[$nom] = 'fond';
2284 2281
 	// attention, il ne faut pas inclure l'exec ici
2285 2282
 	// car sinon #URL_ECRIRE provoque des inclusions
2286 2283
 	// et des define intrusifs potentiels
2287
-	return $exec[$nom] = ((find_in_path("{$nom}.php",'exec/') OR charger_fonction($nom,'exec',true))?$nom:'');
2284
+	return $exec[$nom] = ((find_in_path("{$nom}.php", 'exec/') OR charger_fonction($nom, 'exec', true)) ? $nom : '');
2288 2285
 }
2289 2286
 
2290 2287
 // Charger dynamiquement une extension php
@@ -2293,7 +2290,7 @@  discard block
 block discarded – undo
2293 2290
 	if (extension_loaded($module)) {
2294 2291
 		return true;
2295 2292
 	} else {
2296
-		$charger_php_extension = charger_fonction('charger_php_extension','inc');
2293
+		$charger_php_extension = charger_fonction('charger_php_extension', 'inc');
2297 2294
 		return $charger_php_extension($module);
2298 2295
 	}
2299 2296
 }
@@ -2322,13 +2319,13 @@  discard block
 block discarded – undo
2322 2319
 
2323 2320
 // Fonction depreciee, cf. http://doc.spip.org/@sql_fetch
2324 2321
 // http://doc.spip.org/@spip_fetch_array
2325
-function spip_fetch_array($r, $t=NULL) {
2322
+function spip_fetch_array($r, $t = NULL) {
2326 2323
 	if (!isset($t)) {
2327 2324
 		if ($r) return sql_fetch($r);
2328 2325
 	} else {
2329
-		if ($t=='SPIP_NUM') $t = MYSQL_NUM;
2330
-		if ($t=='SPIP_BOTH') $t = MYSQL_BOTH;
2331
-		if ($t=='SPIP_ASSOC') $t = MYSQL_ASSOC;
2326
+		if ($t == 'SPIP_NUM') $t = MYSQL_NUM;
2327
+		if ($t == 'SPIP_BOTH') $t = MYSQL_BOTH;
2328
+		if ($t == 'SPIP_ASSOC') $t = MYSQL_ASSOC;
2332 2329
 		spip_log("appel deprecie de spip_fetch_array(..., $t)", 'vieilles_defs');
2333 2330
 		if ($r) return mysql_fetch_array($r, $t);
2334 2331
 	}
@@ -2344,7 +2341,7 @@  discard block
 block discarded – undo
2344 2341
  * @param string $message
2345 2342
  * @param string $statut
2346 2343
  */
2347
-function avertir_auteurs($nom,$message, $statut=''){
2344
+function avertir_auteurs($nom, $message, $statut = '') {
2348 2345
 	$alertes = $GLOBALS['meta']['message_alertes_auteurs'];
2349 2346
 	if (!$alertes
2350 2347
 		OR !is_array($alertes = unserialize($alertes)))
@@ -2353,6 +2350,6 @@  discard block
 block discarded – undo
2353 2350
 	if (!isset($alertes[$statut]))
2354 2351
 		$alertes[$statut] = array();
2355 2352
 	$alertes[$statut][$nom] = $message;
2356
-	ecrire_meta("message_alertes_auteurs",serialize($alertes));
2353
+	ecrire_meta("message_alertes_auteurs", serialize($alertes));
2357 2354
 }
2358 2355
 ?>
Please login to merge, or discard this patch.
Braces   +804 added lines, -393 removed lines patch added patch discarded remove patch
@@ -10,7 +10,9 @@  discard block
 block discarded – undo
10 10
  *  Pour plus de details voir le fichier COPYING.txt ou l'aide en ligne.   *
11 11
 \***************************************************************************/
12 12
 
13
-if (!defined('_ECRIRE_INC_VERSION')) return;
13
+if (!defined('_ECRIRE_INC_VERSION')) {
14
+    return;
15
+}
14 16
 
15 17
 //
16 18
 // Utilitaires indispensables autour du serveur Http.
@@ -32,19 +34,28 @@  discard block
 block discarded – undo
32 34
 function charger_fonction($nom, $dossier='exec', $continue=false) {
33 35
 	static $echecs = array();
34 36
 
35
-	if (strlen($dossier) AND substr($dossier,-1) != '/') $dossier .= '/';
37
+	if (strlen($dossier) AND substr($dossier,-1) != '/') {
38
+	    $dossier .= '/';
39
+	}
36 40
 	$f = str_replace('/','_',$dossier) . $nom;
37 41
 
38
-	if (function_exists($f))
39
-		return $f;
40
-	if (function_exists($g = $f . '_dist'))
41
-		return $g;
42
+	if (function_exists($f)) {
43
+			return $f;
44
+	}
45
+	if (function_exists($g = $f . '_dist')) {
46
+			return $g;
47
+	}
42 48
 
43
-	if (isset($echecs[$f])) return $echecs[$f];
49
+	if (isset($echecs[$f])) {
50
+	    return $echecs[$f];
51
+	}
44 52
 	// Sinon charger le fichier de declaration si plausible
45 53
 
46 54
 	if (!preg_match(',^\w+$,', $f)){
47
-		if ($continue) return false; //appel interne, on passe
55
+		if ($continue) {
56
+		    return false;
57
+		}
58
+		//appel interne, on passe
48 59
 		include_spip('inc/minipres');
49 60
 		echo minipres();
50 61
 		exit;
@@ -55,12 +66,19 @@  discard block
 block discarded – undo
55 66
 	if (!$inc = include_spip($dossier.($d = strtolower($nom)))
56 67
 		// si le fichier truc/machin/nom.php n'existe pas,
57 68
 		// la fonction peut etre definie dans truc/machin.php qui regroupe plusieurs petites fonctions
58
-		AND strlen(dirname($dossier)) AND dirname($dossier)!='.')
59
-		include_spip(substr($dossier,0,-1));
60
-	if (function_exists($f)) return $f;
61
-	if (function_exists($g)) return $g;
69
+		AND strlen(dirname($dossier)) AND dirname($dossier)!='.') {
70
+			include_spip(substr($dossier,0,-1));
71
+	}
72
+	if (function_exists($f)) {
73
+	    return $f;
74
+	}
75
+	if (function_exists($g)) {
76
+	    return $g;
77
+	}
62 78
 
63
-	if ($continue) return $echecs[$f] = false;
79
+	if ($continue) {
80
+	    return $echecs[$f] = false;
81
+	}
64 82
 
65 83
 	// Echec : message d'erreur
66 84
 	spip_log("fonction $nom ($f ou $g) indisponible" .
@@ -115,14 +133,15 @@  discard block
 block discarded – undo
115 133
 // http://doc.spip.org/@minipipe
116 134
 function minipipe($fonc,&$val){
117 135
 	// fonction
118
-	if (function_exists($fonc))
119
-		$val = call_user_func($fonc, $val);
136
+	if (function_exists($fonc)) {
137
+			$val = call_user_func($fonc, $val);
138
+	}
120 139
 	// Class::Methode
121 140
 	else if (preg_match("/^(\w*)::(\w*)$/S", $fonc, $regs)
122 141
 	AND $methode = array($regs[1], $regs[2])
123
-	AND is_callable($methode))
124
-		$val = call_user_func($methode, $val);
125
-	else {
142
+	AND is_callable($methode)) {
143
+			$val = call_user_func($methode, $val);
144
+	} else {
126 145
 		spip_log("Erreur - '$fonc' non definie !");
127 146
 	}
128 147
 	return $val;
@@ -140,8 +159,9 @@  discard block
 block discarded – undo
140 159
 			// generer les fichiers php precompiles
141 160
 			// de chargement des plugins et des pipelines
142 161
 			actualise_plugins_actifs();
143
-			if (!($ok = @is_readable($charger)))
144
-				spip_log("fichier $charger pas cree");
162
+			if (!($ok = @is_readable($charger))) {
163
+							spip_log("fichier $charger pas cree");
164
+			}
145 165
 		}
146 166
 
147 167
 		if ($ok) {
@@ -164,8 +184,9 @@  discard block
 block discarded – undo
164 184
 	// array_key_exists pour php 4.1.0
165 185
 	if (is_array($val)
166 186
 	  AND count($val)==2
167
-	  AND (array_key_exists('data',$val)))
168
-		$val = $val['data'];
187
+	  AND (array_key_exists('data',$val))) {
188
+			$val = $val['data'];
189
+	}
169 190
 	return $val;
170 191
 }
171 192
 
@@ -190,10 +211,12 @@  discard block
 block discarded – undo
190 211
 	static $pre = array();
191 212
 	static $log;
192 213
 	preg_match('/^([a-z_]*)\.?(\d)?$/iS', (string) $name, $regs);
193
-	if (!isset($regs[1]) OR !$logname = $regs[1])
194
-		$logname = null;
195
-	if (!isset($regs[2]) OR !$niveau = $regs[2])
196
-		$niveau = _LOG_INFO;
214
+	if (!isset($regs[1]) OR !$logname = $regs[1]) {
215
+			$logname = null;
216
+	}
217
+	if (!isset($regs[2]) OR !$niveau = $regs[2]) {
218
+			$niveau = _LOG_INFO;
219
+	}
197 220
 
198 221
 	if ($niveau <= (defined('_LOG_FILTRE_GRAVITE') ? _LOG_FILTRE_GRAVITE : _LOG_INFO_IMPORTANTE)) {
199 222
 		if (!$pre){
@@ -208,7 +231,9 @@  discard block
 block discarded – undo
208 231
 				_LOG_DEBUG=>'debug:');
209 232
 			$log = charger_fonction('log', 'inc');
210 233
 		}
211
-		if (!is_string($message)) $message = var_export($message, true);
234
+		if (!is_string($message)) {
235
+		    $message = var_export($message, true);
236
+		}
212 237
 		$log($pre[$niveau].' '.$message, $logname);
213 238
 	}
214 239
 }
@@ -226,12 +251,17 @@  discard block
 block discarded – undo
226 251
 // http://doc.spip.org/@_request
227 252
 function _request($var, $c=false) {
228 253
 
229
-	if (is_array($c))
230
-		return isset($c[$var]) ? $c[$var] : NULL;
254
+	if (is_array($c)) {
255
+			return isset($c[$var]) ? $c[$var] : NULL;
256
+	}
231 257
 
232
-	if (isset($_GET[$var])) $a = $_GET[$var];
233
-	elseif (isset($_POST[$var])) $a = $_POST[$var];
234
-	else return NULL;
258
+	if (isset($_GET[$var])) {
259
+	    $a = $_GET[$var];
260
+	} elseif (isset($_POST[$var])) {
261
+	    $a = $_POST[$var];
262
+	} else {
263
+	    return NULL;
264
+	}
235 265
 
236 266
 	// Si on est en ajax et en POST tout a ete encode
237 267
 	// via encodeURIComponent, il faut donc repasser
@@ -259,15 +289,17 @@  discard block
 block discarded – undo
259 289
 function set_request($var, $val = NULL, $c=false) {
260 290
 	if (is_array($c)) {
261 291
 		unset($c[$var]);
262
-		if ($val !== NULL)
263
-			$c[$var] = $val;
292
+		if ($val !== NULL) {
293
+					$c[$var] = $val;
294
+		}
264 295
 		return $c;
265 296
 	}
266 297
 
267 298
 	unset($_GET[$var]);
268 299
 	unset($_POST[$var]);
269
-	if ($val !== NULL)
270
-		$_GET[$var] = $val;
300
+	if ($val !== NULL) {
301
+			$_GET[$var] = $val;
302
+	}
271 303
 
272 304
 	return false; # n'affecte pas $c
273 305
 }
@@ -314,22 +346,26 @@  discard block
 block discarded – undo
314 346
  */
315 347
 function parametre_url($url, $c, $v=NULL, $sep='&amp;') {
316 348
 	// requete erronnee : plusieurs variable dans $c et aucun $v
317
-	if (strpos($c,"|")!==false AND is_null($v))
318
-		return null;
349
+	if (strpos($c,"|")!==false AND is_null($v)) {
350
+			return null;
351
+	}
319 352
 
320 353
 	// lever l'#ancre
321 354
 	if (preg_match(',^([^#]*)(#.*)$,', $url, $r)) {
322 355
 		$url = $r[1];
323 356
 		$ancre = $r[2];
324
-	} else
325
-		$ancre = '';
357
+	} else {
358
+			$ancre = '';
359
+	}
326 360
 
327 361
 	// eclater
328 362
 	$url = preg_split(',[?]|&amp;|&,', $url);
329 363
 
330 364
 	// recuperer la base
331 365
 	$a = array_shift($url);
332
-	if (!$a) $a= './';
366
+	if (!$a) {
367
+	    $a= './';
368
+	}
333 369
 
334 370
 	$regexp = ',^(' . str_replace('[]','\[\]',$c) . '[[]?[]]?)(=.*)?$,';
335 371
 	$ajouts = array_flip(explode('|',$c));
@@ -357,15 +393,17 @@  discard block
 block discarded – undo
357 393
 	// traiter les parametres pas encore trouves
358 394
 	if ($v === NULL
359 395
 	AND $args = func_get_args()
360
-	AND count($args)==2)
361
-		return $v;
362
-	elseif ($testv) {
396
+	AND count($args)==2) {
397
+			return $v;
398
+	} elseif ($testv) {
363 399
 		foreach($ajouts as $k => $n) {
364
-		  if (!is_array($v))
365
-		    $url[] = $k .'=' . $u;
366
-		  else {
400
+		  if (!is_array($v)) {
401
+		  		    $url[] = $k .'=' . $u;
402
+		  } else {
367 403
 		  	$id = (substr($k,-2) == '[]') ? $k : ($k ."[]");
368
-		    foreach ($v as $w) $url[]= $id .'=' . $w;
404
+		    foreach ($v as $w) {
405
+		        $url[]= $id .'=' . $w;
406
+		    }
369 407
 		  }
370 408
 		}
371 409
 	}
@@ -374,8 +412,9 @@  discard block
 block discarded – undo
374 412
 	$url = array_filter($url);
375 413
 
376 414
 	// recomposer l'adresse
377
-	if ($url)
378
-		$a .= '?' . join($sep, $url);
415
+	if ($url) {
416
+			$a .= '?' . join($sep, $url);
417
+	}
379 418
 
380 419
 	return $a . $ancre;
381 420
 }
@@ -390,8 +429,9 @@  discard block
 block discarded – undo
390 429
 		$url = $r[1];
391 430
 	}
392 431
 	if (preg_match('/[^-_a-zA-Z0-9]+/S',$ancre)){
393
-		if (!function_exists('translitteration'))
394
-			include_spip('inc/charsets');
432
+		if (!function_exists('translitteration')) {
433
+					include_spip('inc/charsets');
434
+		}
395 435
 		$ancre = preg_replace(array('/^[^-_a-zA-Z0-9]+/', '/[^-_a-zA-Z0-9]/'), array('', '-'),
396 436
 						translitteration($ancre));
397 437
 	}
@@ -409,8 +449,12 @@  discard block
 block discarded – undo
409 449
 {
410 450
 	static $done = false;
411 451
 	static $propre = '';
412
-	if (!is_null($reset)) return $propre=$reset;
413
-	if ($done) return $propre;
452
+	if (!is_null($reset)) {
453
+	    return $propre=$reset;
454
+	}
455
+	if ($done) {
456
+	    return $propre;
457
+	}
414 458
 	$done = true;
415 459
 
416 460
 	$uri1 = $GLOBALS['REQUEST_URI'];
@@ -442,12 +486,14 @@  discard block
 block discarded – undo
442 486
 			$GLOBALS['profondeur_url']<(_DIR_RESTREINT?1:2)
443 487
 			// sinon c'est OK si _SET_HTML_BASE a ete force a false
444 488
 			OR (defined('_SET_HTML_BASE') AND !_SET_HTML_BASE))
445
-		)
446
-		$url = preg_replace(',^[^?]*/,', '', $url);
489
+		) {
490
+			$url = preg_replace(',^[^?]*/,', '', $url);
491
+	}
447 492
 	// ajouter le cas echeant les variables _POST['id_...']
448
-	foreach ($_POST as $v => $c)
449
-		if (substr($v,0,3) == 'id_')
493
+	foreach ($_POST as $v => $c) {
494
+			if (substr($v,0,3) == 'id_')
450 495
 			$url = parametre_url($url, $v, $c, '&');
496
+	}
451 497
 
452 498
 	// supprimer les variables sans interet
453 499
 	if (test_espace_prive()) {
@@ -465,8 +511,9 @@  discard block
 block discarded – undo
465 511
 	$url = str_replace(array("'", '"', '<', '[', ']'), array('%27', '%22', '%3C', '%5B', '%5D'), $url);
466 512
 
467 513
 	// &amp; ?
468
-	if ($amp != '&amp;')
469
-		$url = str_replace('&amp;', $amp, $url);
514
+	if ($amp != '&amp;') {
515
+			$url = str_replace('&amp;', $amp, $url);
516
+	}
470 517
 
471 518
 	// Si ca demarre par ? ou vide, donner './'
472 519
 	$url = preg_replace(',^([?].*)?$,', './\1', $url);
@@ -507,8 +554,9 @@  discard block
 block discarded – undo
507 554
 	$o = array('class'=>'', 'force'=>true);
508 555
 	if ($options){
509 556
 		// support de l'ancien argument $class
510
-		if (is_string($options))
511
-			$options = array('class'=>$options);
557
+		if (is_string($options)) {
558
+					$options = array('class'=>$options);
559
+		}
512 560
 		$o = array_merge($o,$options);
513 561
 	}
514 562
 
@@ -531,16 +579,18 @@  discard block
 block discarded – undo
531 579
 	$text = $traduire($texte, $lang);
532 580
 
533 581
 	if (!strlen($text)){
534
-		if (!$o['force'])
535
-			return '';
582
+		if (!$o['force']) {
583
+					return '';
584
+		}
536 585
 
537 586
 		$text = $texte;
538 587
 
539 588
 		// pour les chaines non traduites, assurer un service minimum
540
-		if (!$GLOBALS['test_i18n'] AND (_request('var_mode') != 'traduction'))
541
-			$text = str_replace('_', ' ',
589
+		if (!$GLOBALS['test_i18n'] AND (_request('var_mode') != 'traduction')) {
590
+					$text = str_replace('_', ' ',
542 591
 				 (($n = strpos($text,':')) === false ? $texte :
543 592
 					substr($texte, $n+1)));
593
+		}
544 594
 		$o['class'] = null;
545 595
 
546 596
 	}
@@ -556,29 +606,34 @@  discard block
 block discarded – undo
556 606
 	$f = $text;
557 607
 	if (is_array($args)) {
558 608
 		foreach ($args as $name => $value) {
559
-			if ($class)
560
-				$value = "<span class='$class'>$value</span>";
609
+			if ($class) {
610
+							$value = "<span class='$class'>$value</span>";
611
+			}
561 612
 			$t = str_replace ("@$name@", $value, $text);
562 613
 			if ($text !== $t) {unset($args[$name]); $text = $t;}
563 614
 		}
564 615
 		// Si des variables n'ont pas ete inserees, le signaler
565 616
 		// (chaines de langues pas a jour)
566
-		if ($args) spip_log("$f:  variables inutilisees " . join(', ', array_keys($args)),_LOG_DEBUG);
617
+		if ($args) {
618
+		    spip_log("$f:  variables inutilisees " . join(', ', array_keys($args)),_LOG_DEBUG);
619
+		}
567 620
 	}
568 621
 
569
-	if (($GLOBALS['test_i18n'] OR (_request('var_mode') == 'traduction')) AND $class===null)
570
-		return "<span class=debug-traduction-erreur>$text</span>";
571
-	else
572
-		return $text;
573
-}
622
+	if (($GLOBALS['test_i18n'] OR (_request('var_mode') == 'traduction')) AND $class===null) {
623
+			return "<span class=debug-traduction-erreur>$text</span>";
624
+	} else {
625
+			return $text;
626
+	}
627
+	}
574 628
 
575 629
 // Afficher "ecrire/data/" au lieu de "data/" dans les messages
576 630
 // ou tmp/ au lieu de ../tmp/
577 631
 // http://doc.spip.org/@joli_repertoire
578 632
 function joli_repertoire($rep) {
579 633
 	$a = substr($rep,0,1);
580
-	if ($a<>'.' AND $a<>'/')
581
-		$rep = (_DIR_RESTREINT?'':_DIR_RESTREINT_ABS).$rep;
634
+	if ($a<>'.' AND $a<>'/') {
635
+			$rep = (_DIR_RESTREINT?'':_DIR_RESTREINT_ABS).$rep;
636
+	}
582 637
 	$rep = preg_replace(',(^\.\.\/),', '', $rep);
583 638
 	return $rep;
584 639
 }
@@ -593,7 +648,10 @@  discard block
 block discarded – undo
593 648
 	$a=time(); $b=microtime();
594 649
 	// microtime peut contenir les microsecondes et le temps
595 650
 	$b=explode(' ',$b);
596
-	if (count($b)==2) $a = end($b); // plus precis !
651
+	if (count($b)==2) {
652
+	    $a = end($b);
653
+	}
654
+	// plus precis !
597 655
 	$b = reset($b);
598 656
 	if (!isset($time[$t])) {
599 657
 		$time[$t] = $a + $b;
@@ -601,10 +659,12 @@  discard block
 block discarded – undo
601 659
 		$p = ($a + $b - $time[$t]) * 1000;
602 660
 		unset($time[$t]);
603 661
 #			echo "'$p'";exit;
604
-		if ($raw) return $p;
605
-		if ($p < 1000)
606
-			$s = '';
607
-		else {
662
+		if ($raw) {
663
+		    return $p;
664
+		}
665
+		if ($p < 1000) {
666
+					$s = '';
667
+		} else {
608 668
 			$s = sprintf("%d ", $x = floor($p/1000));
609 669
 			$p -= ($x*1000);
610 670
 		}
@@ -619,8 +679,9 @@  discard block
 block discarded – undo
619 679
 function spip_touch($fichier, $duree=0, $touch=true) {
620 680
 	if ($duree) {
621 681
 		clearstatcache();
622
-		if ((@$f=filemtime($fichier)) AND ($f >= time() - $duree))
623
-			return false;
682
+		if ((@$f=filemtime($fichier)) AND ($f >= time() - $duree)) {
683
+					return false;
684
+		}
624 685
 	}
625 686
 	if ($touch!==false) {
626 687
 		if (!@touch($fichier)) { spip_unlink($fichier); @touch($fichier); };
@@ -663,13 +724,20 @@  discard block
 block discarded – undo
663 724
  */
664 725
 function cron ($taches=array(), $taches_old= array()) {
665 726
 	// si pas en mode cron force, laisser tomber.
666
-	if (!defined('_DIRECT_CRON_FORCE')) return false;
667
-	if (!is_array($taches)) $taches = $taches_old; // compat anciens appels
727
+	if (!defined('_DIRECT_CRON_FORCE')) {
728
+	    return false;
729
+	}
730
+	if (!is_array($taches)) {
731
+	    $taches = $taches_old;
732
+	}
733
+	// compat anciens appels
668 734
 	// si taches a inserer en base et base inaccessible, laisser tomber
669 735
 	// sinon on ne verifie pas la connexion tout de suite, car si ca se trouve
670 736
 	// queue_sleep_time_to_next_job() dira qu'il n'y a rien a faire
671 737
 	// et on evite d'ouvrir une connexion pour rien (utilisation de _DIRECT_CRON_FORCE dans mes_options.php)
672
-	if ($taches AND count($taches) AND !spip_connect())  return false;
738
+	if ($taches AND count($taches) AND !spip_connect()) {
739
+	    return false;
740
+	}
673 741
 	spip_log("cron !",'jq'._LOG_DEBUG);
674 742
 	if ($genie = charger_fonction('genie', 'inc', true)) {
675 743
 		return $genie($taches);
@@ -743,28 +811,31 @@  discard block
 block discarded – undo
743 811
  */
744 812
 function queue_sleep_time_to_next_job($force=null) {
745 813
 	static $queue_next_job_time = -1;
746
-	if ($force===true)
747
-		$queue_next_job_time = -1;
748
-	elseif ($force)
749
-		$queue_next_job_time = $force;
814
+	if ($force===true) {
815
+			$queue_next_job_time = -1;
816
+	} elseif ($force) {
817
+			$queue_next_job_time = $force;
818
+	}
750 819
 
751 820
 	if ($queue_next_job_time==-1) {
752 821
 		define('_JQ_NEXT_JOB_TIME_FILENAME',_DIR_TMP . "job_queue_next.txt");
753 822
 		// utiliser un cache memoire si dispo
754 823
 		if (include_spip('inc/memoization') AND defined('_MEMOIZE_MEMORY') AND _MEMOIZE_MEMORY) {
755 824
 			$queue_next_job_time = cache_get(_JQ_NEXT_JOB_TIME_FILENAME);
756
-		}
757
-		else {
825
+		} else {
758 826
 			$queue_next_job_time = null;
759
-			if (lire_fichier(_JQ_NEXT_JOB_TIME_FILENAME, $contenu))
760
-				$queue_next_job_time = intval($contenu);
827
+			if (lire_fichier(_JQ_NEXT_JOB_TIME_FILENAME, $contenu)) {
828
+							$queue_next_job_time = intval($contenu);
829
+			}
761 830
 		}
762 831
 	}
763 832
 
764
-	if (is_null($queue_next_job_time))
765
-		return null;
766
-	if (!$_SERVER['REQUEST_TIME'])
767
-		$_SERVER['REQUEST_TIME'] = time();
833
+	if (is_null($queue_next_job_time)) {
834
+			return null;
835
+	}
836
+	if (!$_SERVER['REQUEST_TIME']) {
837
+			$_SERVER['REQUEST_TIME'] = time();
838
+	}
768 839
 	return $queue_next_job_time-$_SERVER['REQUEST_TIME'];
769 840
 }
770 841
 
@@ -786,14 +857,17 @@  discard block
 block discarded – undo
786 857
 		$done[$src] = true;
787 858
 		$src = find_in_path($src, _JAVASCRIPT);
788 859
 		$src = " src='$src'";
860
+	} else {
861
+	    $src = '';
789 862
 	}
790
-	else $src = '';
791
-	if ($script)
792
-		$script = ("/*<![CDATA[*/\n" .
863
+	if ($script) {
864
+			$script = ("/*<![CDATA[*/\n" .
793 865
 		preg_replace(',</([^>]*)>,','<\/\1>', $script) .
794 866
 		"/*]]>*/");
795
-	if ($noscript)
796
-		$noscript = "<noscript>\n\t$noscript\n</noscript>\n";
867
+	}
868
+	if ($noscript) {
869
+			$noscript = "<noscript>\n\t$noscript\n</noscript>\n";
870
+	}
797 871
 
798 872
 	return ($src OR $script OR $noscript)
799 873
 	? "<script type='text/javascript'$src>$script</script>$noscript"
@@ -826,43 +900,53 @@  discard block
 block discarded – undo
826 900
 			_DIR_RACINE.'prive/:'.
827 901
 			_DIR_RESTREINT;
828 902
 		// Ajouter squelettes/
829
-		if (@is_dir(_DIR_RACINE.'squelettes'))
830
-			$path = _DIR_RACINE.'squelettes/:' . $path;
903
+		if (@is_dir(_DIR_RACINE.'squelettes')) {
904
+					$path = _DIR_RACINE.'squelettes/:' . $path;
905
+		}
831 906
 		foreach (explode(':', $path) as $dir) {
832
-			if (strlen($dir) AND substr($dir,-1) != '/')
833
-				$dir .= "/";
907
+			if (strlen($dir) AND substr($dir,-1) != '/') {
908
+							$dir .= "/";
909
+			}
834 910
 			$path_base[] = $dir;
835 911
 		}
836 912
 		$path_full = $path_base;
837 913
 		// Et le(s) dossier(s) des squelettes nommes
838
-		if (strlen($GLOBALS['dossier_squelettes']))
839
-			foreach (array_reverse(explode(':', $GLOBALS['dossier_squelettes'])) as $d)
914
+		if (strlen($GLOBALS['dossier_squelettes'])) {
915
+					foreach (array_reverse(explode(':', $GLOBALS['dossier_squelettes'])) as $d)
840 916
 				array_unshift($path_full, ($d[0] == '/' ? '' : _DIR_RACINE) . $d . '/');
917
+		}
841 918
 		$GLOBALS['path_sig'] = md5(serialize($path_full));
842 919
 	}
843
-	if ($dir_path===NULL) return $path_full;
920
+	if ($dir_path===NULL) {
921
+	    return $path_full;
922
+	}
844 923
 
845 924
 	if (strlen($dir_path)){
846 925
 		$tete = "";
847
-		if (reset($path_base)==_DIR_RACINE.'squelettes/')
848
-			$tete = array_shift($path_base);
926
+		if (reset($path_base)==_DIR_RACINE.'squelettes/') {
927
+					$tete = array_shift($path_base);
928
+		}
849 929
 		$dirs = array_reverse(explode(':',$dir_path));
850 930
 		foreach($dirs as $dir_path){
851 931
 				#if ($dir_path{0}!='/')
852 932
 				#	$dir_path = $dir_path;
853
-				if (substr($dir_path,-1) != '/')
854
-					$dir_path .= "/";
855
-				if (!in_array($dir_path,$path_base))
856
-					array_unshift($path_base,$dir_path);
933
+				if (substr($dir_path,-1) != '/') {
934
+									$dir_path .= "/";
935
+				}
936
+				if (!in_array($dir_path,$path_base)) {
937
+									array_unshift($path_base,$dir_path);
938
+				}
939
+		}
940
+		if (strlen($tete)) {
941
+					array_unshift($path_base,$tete);
857 942
 		}
858
-		if (strlen($tete))
859
-			array_unshift($path_base,$tete);
860 943
 	}
861 944
 	$path_full = $path_base;
862 945
 	// Et le(s) dossier(s) des squelettes nommes
863
-	if (strlen($GLOBALS['dossier_squelettes']))
864
-		foreach (array_reverse(explode(':', $GLOBALS['dossier_squelettes'])) as $d)
946
+	if (strlen($GLOBALS['dossier_squelettes'])) {
947
+			foreach (array_reverse(explode(':', $GLOBALS['dossier_squelettes'])) as $d)
865 948
 			array_unshift($path_full, ($d[0] == '/' ? '' : _DIR_RACINE) . $d . '/');
949
+	}
866 950
 
867 951
 	$GLOBALS['path_sig'] = md5(serialize($path_full));
868 952
 	return $path_full;
@@ -887,8 +971,9 @@  discard block
 block discarded – undo
887 971
 	static $themes = null;
888 972
 	if (is_null($themes)){
889 973
 		// si pas encore definie
890
-		if (!defined('_SPIP_THEME_PRIVE'))
891
-			define('_SPIP_THEME_PRIVE', 'spip');
974
+		if (!defined('_SPIP_THEME_PRIVE')) {
975
+					define('_SPIP_THEME_PRIVE', 'spip');
976
+		}
892 977
 		$themes = array(_SPIP_THEME_PRIVE);
893 978
 		// lors d'une installation neuve, prefs n'est pas definie.
894 979
 		if (isset($GLOBALS['visiteur_session']['prefs'])) {
@@ -896,24 +981,30 @@  discard block
 block discarded – undo
896 981
 		} else {
897 982
 			$prefs = array();
898 983
 		}
899
-		if (is_string($prefs))
900
-			$prefs = unserialize($GLOBALS['visiteur_session']['prefs']);
984
+		if (is_string($prefs)) {
985
+					$prefs = unserialize($GLOBALS['visiteur_session']['prefs']);
986
+		}
901 987
 		if (
902 988
 			((isset($prefs['theme']) AND $theme = $prefs['theme'])
903 989
 			OR (isset($GLOBALS['theme_prive_defaut']) AND $theme = $GLOBALS['theme_prive_defaut']))
904
-			AND $theme != _SPIP_THEME_PRIVE)
905
-			array_unshift($themes,$theme); // placer le theme choisi en tete
990
+			AND $theme != _SPIP_THEME_PRIVE) {
991
+					array_unshift($themes,$theme);
992
+		}
993
+		// placer le theme choisi en tete
906 994
 	}
907 995
 	return $themes;
908 996
 }
909 997
 
910 998
 function find_in_theme($file, $subdir='', $include=false){
911 999
 	static $themefiles=array();
912
-	if (isset($themefiles["$subdir$file"])) return $themefiles["$subdir$file"];
1000
+	if (isset($themefiles["$subdir$file"])) {
1001
+	    return $themefiles["$subdir$file"];
1002
+	}
913 1003
 	$themes = lister_themes_prives();
914 1004
 	foreach($themes as $theme){
915
-		if ($f = find_in_path($file,"prive/themes/$theme/$subdir",$include))
916
-			return $themefiles["$subdir$file"] = $f;
1005
+		if ($f = find_in_path($file,"prive/themes/$theme/$subdir",$include)) {
1006
+					return $themefiles["$subdir$file"] = $f;
1007
+		}
917 1008
 	}
918 1009
 	spip_log("$file introuvable dans le theme prive ".reset($themes),'theme');
919 1010
 	return $themefiles["$subdir$file"] = "";
@@ -928,18 +1019,23 @@  discard block
 block discarded – undo
928 1019
 function chemin_image($icone){
929 1020
 	static $icone_renommer;
930 1021
 	// gerer le cas d'un double appel en evitant de refaire le travail inutilement
931
-	if (strpos($icone,"/")!==false AND file_exists($icone)) return $icone;
1022
+	if (strpos($icone,"/")!==false AND file_exists($icone)) {
1023
+	    return $icone;
1024
+	}
932 1025
 	
933 1026
 	// si c'est un nom d'image complet (article-24.png) essayer de le renvoyer direct
934
-	if (preg_match(',[.](png|gif|jpg)$,',$icone) AND $f = find_in_theme("images/$icone"))
935
-		return $f;
1027
+	if (preg_match(',[.](png|gif|jpg)$,',$icone) AND $f = find_in_theme("images/$icone")) {
1028
+			return $f;
1029
+	}
936 1030
 	// sinon passer par le module de renommage
937
-	if (is_null($icone_renommer))
938
-		$icone_renommer = charger_fonction('icone_renommer','inc',true);
1031
+	if (is_null($icone_renommer)) {
1032
+			$icone_renommer = charger_fonction('icone_renommer','inc',true);
1033
+	}
939 1034
 	if ($icone_renommer){
940 1035
 		list($icone,$fonction) = $icone_renommer($icone,"");
941
-		if (file_exists($icone))
942
-			return $icone;
1036
+		if (file_exists($icone)) {
1037
+					return $icone;
1038
+		}
943 1039
 	}
944 1040
 	return find_in_path ($icone, _NOM_IMG_PACK);
945 1041
 }
@@ -965,8 +1061,9 @@  discard block
 block discarded – undo
965 1061
 	}
966 1062
 
967 1063
 	if (isset($GLOBALS['path_files'][$GLOBALS['path_sig']][$dirname][$file])) {
968
-		if (!$GLOBALS['path_files'][$GLOBALS['path_sig']][$dirname][$file])
969
-			return false;
1064
+		if (!$GLOBALS['path_files'][$GLOBALS['path_sig']][$dirname][$file]) {
1065
+					return false;
1066
+		}
970 1067
 		if ($include AND !isset($inc[$dirname][$file])) {
971 1068
 			include_once _ROOT_CWD . $GLOBALS['path_files'][$GLOBALS['path_sig']][$dirname][$file];
972 1069
 			$inc[$dirname][$file] = $inc[''][$dirname . $file] = true;
@@ -981,8 +1078,9 @@  discard block
 block discarded – undo
981 1078
 	}
982 1079
 
983 1080
 	foreach(creer_chemin() as $dir) {
984
-		if (!isset($dirs[$a = $dir . $dirname]))
985
-			$dirs[$a] = (is_dir(_ROOT_CWD . $a) || !$a) ;
1081
+		if (!isset($dirs[$a = $dir . $dirname])) {
1082
+					$dirs[$a] = (is_dir(_ROOT_CWD . $a) || !$a) ;
1083
+		}
986 1084
 		if ($dirs[$a]) {
987 1085
 			if (file_exists(_ROOT_CWD . ($a .= $file))) {
988 1086
 				if ($include AND !isset($inc[$dirname][$file])) {
@@ -991,7 +1089,9 @@  discard block
 block discarded – undo
991 1089
 				}
992 1090
 				if (!defined('_SAUVER_CHEMIN')){
993 1091
 					// si le chemin n'a pas encore ete charge, ne pas lever le flag, ne pas cacher
994
-					if (is_null($GLOBALS['path_files'])) return $a;
1092
+					if (is_null($GLOBALS['path_files'])) {
1093
+					    return $a;
1094
+					}
995 1095
 					define('_SAUVER_CHEMIN', true);
996 1096
 				}
997 1097
 				return $GLOBALS['path_files'][$GLOBALS['path_sig']][$dirname][$file] = $GLOBALS['path_files'][$GLOBALS['path_sig']][''][$dirname . $file] = $a;
@@ -1004,8 +1104,9 @@  discard block
 block discarded – undo
1004 1104
 		if ($include==='required'){
1005 1105
 			echo '<pre>',
1006 1106
 			"<strong>Erreur Fatale</strong><br />";
1007
-			if (function_exists('debug_print_backtrace'))
1008
-				echo debug_print_backtrace();
1107
+			if (function_exists('debug_print_backtrace')) {
1108
+							echo debug_print_backtrace();
1109
+			}
1009 1110
 			echo '</pre>';
1010 1111
 			die("Erreur interne: ne peut inclure $dirname$file");
1011 1112
 		}
@@ -1013,7 +1114,9 @@  discard block
 block discarded – undo
1013 1114
 
1014 1115
 	if (!defined('_SAUVER_CHEMIN')){
1015 1116
 		// si le chemin n'a pas encore ete charge, ne pas lever le flag, ne pas cacher
1016
-		if (is_null($GLOBALS['path_files'])) return false;
1117
+		if (is_null($GLOBALS['path_files'])) {
1118
+		    return false;
1119
+		}
1017 1120
 		define('_SAUVER_CHEMIN', true);
1018 1121
 	}
1019 1122
 	return $GLOBALS['path_files'][$GLOBALS['path_sig']][$dirname][$file] = $GLOBALS['path_files'][$GLOBALS['path_sig']][''][$dirname . $file] = false;
@@ -1045,8 +1148,9 @@  discard block
 block discarded – undo
1045 1148
 			// mais si semble corrompu on relit avec un verrou
1046 1149
 			if (!$GLOBALS['path_files']=unserialize($contenu)){
1047 1150
 				lire_fichier(_CACHE_CHEMIN,$contenu);
1048
-				if (!$GLOBALS['path_files']=unserialize($contenu))
1049
-					$GLOBALS['path_files'] = array();
1151
+				if (!$GLOBALS['path_files']=unserialize($contenu)) {
1152
+									$GLOBALS['path_files'] = array();
1153
+				}
1050 1154
 			}
1051 1155
 		}
1052 1156
 	}
@@ -1054,9 +1158,10 @@  discard block
 block discarded – undo
1054 1158
 
1055 1159
 function save_path_cache(){
1056 1160
 	if (defined('_SAUVER_CHEMIN')
1057
-		AND _SAUVER_CHEMIN)
1058
-		ecrire_fichier(_CACHE_CHEMIN,serialize($GLOBALS['path_files']));
1059
-}
1161
+		AND _SAUVER_CHEMIN) {
1162
+			ecrire_fichier(_CACHE_CHEMIN,serialize($GLOBALS['path_files']));
1163
+	}
1164
+	}
1060 1165
 
1061 1166
 
1062 1167
 /**
@@ -1084,8 +1189,9 @@  discard block
 block discarded – undo
1084 1189
 				// ne prendre que les fichiers pas deja trouves
1085 1190
 				// car find_in_path prend le premier qu'il trouve,
1086 1191
 				// les autres sont donc masques
1087
-				if (!isset($liste_fichiers[$nom]))
1088
-					$liste_fichiers[$nom] = $chemin;
1192
+				if (!isset($liste_fichiers[$nom])) {
1193
+									$liste_fichiers[$nom] = $chemin;
1194
+				}
1089 1195
 			}
1090 1196
 		}
1091 1197
 	}
@@ -1128,13 +1234,18 @@  discard block
 block discarded – undo
1128 1234
  */
1129 1235
 function generer_url_entite($id='', $entite='', $args='', $ancre='', $public=NULL, $type=NULL)
1130 1236
 {
1131
-	if ($public === NULL) $public = !test_espace_prive();
1237
+	if ($public === NULL) {
1238
+	    $public = !test_espace_prive();
1239
+	}
1132 1240
 	$entite = objet_type($entite); // cas particulier d'appels sur objet/id_objet...
1133 1241
 
1134 1242
 	if (!$public) {
1135
-		if (!$entite) return '';
1136
-		if (!function_exists('generer_url_ecrire_objet'))
1137
-			include_spip('inc/urls');
1243
+		if (!$entite) {
1244
+		    return '';
1245
+		}
1246
+		if (!function_exists('generer_url_ecrire_objet')) {
1247
+					include_spip('inc/urls');
1248
+		}
1138 1249
 		$res = generer_url_ecrire_objet($entite,$id, $args, $ancre, false);
1139 1250
 	} else {
1140 1251
 		if ($type === NULL) {
@@ -1146,32 +1257,42 @@  discard block
 block discarded – undo
1146 1257
 
1147 1258
 		$f = charger_fonction($type, 'urls', true);
1148 1259
 		// se rabattre sur les urls page si les urls perso non dispo
1149
-		if (!$f) $f = charger_fonction('page', 'urls', true);
1260
+		if (!$f) {
1261
+		    $f = charger_fonction('page', 'urls', true);
1262
+		}
1150 1263
 
1151 1264
 		// si $entite='', on veut la fonction de passage URL ==> id
1152 1265
 		// sinon on veut effectuer le passage id ==> URL
1153
-		if (!$entite) return $f;
1266
+		if (!$entite) {
1267
+		    return $f;
1268
+		}
1154 1269
 
1155 1270
 		// mais d'abord il faut tester le cas des urls sur une
1156 1271
 		// base distante
1157 1272
 		if (is_string($public)
1158
-		AND $g = charger_fonction('connect', 'urls', true))
1159
-			$f = $g;
1273
+		AND $g = charger_fonction('connect', 'urls', true)) {
1274
+					$f = $g;
1275
+		}
1160 1276
 
1161 1277
 		$res = $f(intval($id), $entite, $args, $ancre, $public);
1162 1278
 
1163 1279
 	}
1164
-	if ($res) return $res;
1280
+	if ($res) {
1281
+	    return $res;
1282
+	}
1165 1283
 	// Sinon c'est un raccourci ou compat SPIP < 2
1166 1284
 	if (!function_exists($f = 'generer_url_' . $entite)) {
1167
-		if (!function_exists($f .= '_dist')) $f = '';
1285
+		if (!function_exists($f .= '_dist')) {
1286
+		    $f = '';
1287
+		}
1168 1288
 	}
1169 1289
 	if ($f) {
1170 1290
 		$url = $f($id, $args, $ancre);
1171
-		if (strlen($args))
1172
-			$url .= strstr($url, '?')
1291
+		if (strlen($args)) {
1292
+					$url .= strstr($url, '?')
1173 1293
 				? '&amp;'.$args
1174 1294
 				: '?'.$args;
1295
+		}
1175 1296
 		return $url;
1176 1297
 	}
1177 1298
 	// On a ete gentil mais la ....
@@ -1182,12 +1303,14 @@  discard block
 block discarded – undo
1182 1303
 function generer_url_ecrire_entite_edit($id, $entite, $args='', $ancre=''){
1183 1304
 	$exec = objet_info($entite,'url_edit');
1184 1305
 	$url = generer_url_ecrire($exec,$args);
1185
-	if (intval($id))
1186
-		$url = parametre_url($url,id_table_objet($entite),$id);
1187
-	else
1188
-		$url = parametre_url($url,'new','oui');
1189
-	if ($ancre)
1190
-		$url = ancre_url($url,$ancre);
1306
+	if (intval($id)) {
1307
+			$url = parametre_url($url,id_table_objet($entite),$id);
1308
+	} else {
1309
+			$url = parametre_url($url,'new','oui');
1310
+	}
1311
+	if ($ancre) {
1312
+			$url = ancre_url($url,$ancre);
1313
+	}
1191 1314
 	return $url;
1192 1315
 }
1193 1316
 
@@ -1207,8 +1330,9 @@  discard block
 block discarded – undo
1207 1330
 	if (preg_match(',[^\x00-\x7E],sS', $url)){
1208 1331
 		$uri = '';
1209 1332
 		for ($i=0; $i < strlen($url); $i++) {
1210
-			if (ord($a = $url[$i]) > 127)
1211
-				$a = rawurlencode($a);
1333
+			if (ord($a = $url[$i]) > 127) {
1334
+							$a = rawurlencode($a);
1335
+			}
1212 1336
 			$uri .= $a;
1213 1337
 		}
1214 1338
 		$url = $uri;
@@ -1219,7 +1343,9 @@  discard block
 block discarded – undo
1219 1343
 // http://doc.spip.org/@generer_url_entite_absolue
1220 1344
 function generer_url_entite_absolue($id='', $entite='', $args='', $ancre='', $connect=NULL)
1221 1345
 {
1222
-	if (!$connect) $connect = true;
1346
+	if (!$connect) {
1347
+	    $connect = true;
1348
+	}
1223 1349
 	$h = generer_url_entite($id, $entite, $args, $ancre, $connect);
1224 1350
 	if (!preg_match(',^\w+:,', $h)) {
1225 1351
 		include_spip('inc/filtres_mini');
@@ -1232,7 +1358,9 @@  discard block
 block discarded – undo
1232 1358
 // variables d'environnement comme $_SERVER[HTTPS] ou ini_get(register_globals)
1233 1359
 // http://doc.spip.org/@test_valeur_serveur
1234 1360
 function test_valeur_serveur($truc) {
1235
-	if (!$truc) return false;
1361
+	if (!$truc) {
1362
+	    return false;
1363
+	}
1236 1364
 	return (strtolower($truc) !== 'off');
1237 1365
 }
1238 1366
 
@@ -1259,13 +1387,20 @@  discard block
 block discarded – undo
1259 1387
 function url_de_base($profondeur=null) {
1260 1388
 
1261 1389
 	static $url = array();
1262
-	if (is_array($profondeur)) return $url = $profondeur;
1263
-	if ($profondeur===false) return $url;
1390
+	if (is_array($profondeur)) {
1391
+	    return $url = $profondeur;
1392
+	}
1393
+	if ($profondeur===false) {
1394
+	    return $url;
1395
+	}
1264 1396
 
1265
-	if (is_null($profondeur)) $profondeur = $GLOBALS['profondeur_url'];
1397
+	if (is_null($profondeur)) {
1398
+	    $profondeur = $GLOBALS['profondeur_url'];
1399
+	}
1266 1400
 
1267
-	if (isset($url[$profondeur]))
1268
-		return $url[$profondeur];
1401
+	if (isset($url[$profondeur])) {
1402
+			return $url[$profondeur];
1403
+	}
1269 1404
 
1270 1405
 	$http = (
1271 1406
 		(isset($_SERVER["SCRIPT_URI"]) AND
@@ -1286,8 +1421,12 @@  discard block
 block discarded – undo
1286 1421
 	if (isset($_SERVER['SERVER_PORT'])
1287 1422
 		AND $port=$_SERVER['SERVER_PORT']
1288 1423
 		AND strpos($host,":")==false){
1289
-		if ($http=="http" AND $port!=80) $host.=":$port";
1290
-		if ($http=="https" AND $port!=443) $host.=":$port";
1424
+		if ($http=="http" AND $port!=80) {
1425
+		    $host.=":$port";
1426
+		}
1427
+		if ($http=="https" AND $port!=443) {
1428
+		    $host.=":$port";
1429
+		}
1291 1430
 	}
1292 1431
 	if (!$GLOBALS['REQUEST_URI']){
1293 1432
 		if (isset($_SERVER['REQUEST_URI'])) {
@@ -1295,8 +1434,9 @@  discard block
 block discarded – undo
1295 1434
 		} else {
1296 1435
 			$GLOBALS['REQUEST_URI'] = $_SERVER['PHP_SELF'];
1297 1436
 			if ($_SERVER['QUERY_STRING']
1298
-			AND !strpos($_SERVER['REQUEST_URI'], '?'))
1299
-				$GLOBALS['REQUEST_URI'] .= '?'.$_SERVER['QUERY_STRING'];
1437
+			AND !strpos($_SERVER['REQUEST_URI'], '?')) {
1438
+							$GLOBALS['REQUEST_URI'] .= '?'.$_SERVER['QUERY_STRING'];
1439
+			}
1300 1440
 		}
1301 1441
 	}
1302 1442
 
@@ -1345,18 +1485,22 @@  discard block
 block discarded – undo
1345 1485
 
1346 1486
 // http://doc.spip.org/@generer_url_ecrire
1347 1487
 function generer_url_ecrire($script='', $args="", $no_entities=false, $rel=false) {
1348
-	if (!$rel)
1349
-		$rel = url_de_base() . _DIR_RESTREINT_ABS . _SPIP_ECRIRE_SCRIPT;
1350
-	else if (!is_string($rel))
1351
-		$rel = _DIR_RESTREINT ? _DIR_RESTREINT :
1488
+	if (!$rel) {
1489
+			$rel = url_de_base() . _DIR_RESTREINT_ABS . _SPIP_ECRIRE_SCRIPT;
1490
+	} else if (!is_string($rel)) {
1491
+			$rel = _DIR_RESTREINT ? _DIR_RESTREINT :
1352 1492
 			('./'  . _SPIP_ECRIRE_SCRIPT);
1493
+	}
1353 1494
 
1354 1495
 	@list($script, $ancre) = explode('#', $script);
1355
-	if ($script AND ($script<>'accueil' OR $rel))
1356
-		$args = "?exec=$script" . (!$args ? '' : "&$args");
1357
-	elseif ($args)
1358
-		$args ="?$args";
1359
-	if ($ancre) $args .= "#$ancre";
1496
+	if ($script AND ($script<>'accueil' OR $rel)) {
1497
+			$args = "?exec=$script" . (!$args ? '' : "&$args");
1498
+	} elseif ($args) {
1499
+			$args ="?$args";
1500
+	}
1501
+	if ($ancre) {
1502
+	    $args .= "#$ancre";
1503
+	}
1360 1504
 	return $rel . ($no_entities ? $args : str_replace('&', '&amp;', $args));
1361 1505
 }
1362 1506
 
@@ -1375,32 +1519,39 @@  discard block
 block discarded – undo
1375 1519
 // http://doc.spip.org/@get_spip_script
1376 1520
 function get_spip_script($default='') {
1377 1521
 	# cas define('_SPIP_SCRIPT', '');
1378
-	if (_SPIP_SCRIPT)
1379
-		return _SPIP_SCRIPT;
1380
-	else
1381
-		return $default;
1382
-}
1522
+	if (_SPIP_SCRIPT) {
1523
+			return _SPIP_SCRIPT;
1524
+	} else {
1525
+			return $default;
1526
+	}
1527
+	}
1383 1528
 
1384 1529
 // http://doc.spip.org/@generer_url_public
1385 1530
 function generer_url_public($script='', $args="", $no_entities=false, $rel=true, $action='') {
1386 1531
 	// si le script est une action (spip_pass, spip_inscription),
1387 1532
 	// standardiser vers la nouvelle API
1388 1533
 
1389
-	if (!$action) $action = get_spip_script();
1390
-	if ($script)
1391
-		$action = parametre_url($action, _SPIP_PAGE, $script, '&');
1534
+	if (!$action) {
1535
+	    $action = get_spip_script();
1536
+	}
1537
+	if ($script) {
1538
+			$action = parametre_url($action, _SPIP_PAGE, $script, '&');
1539
+	}
1392 1540
 
1393 1541
 	if ($args) {
1394 1542
 		if (is_array($args)) {
1395 1543
 			$r = '';
1396
-			foreach($args as $k => $v) $r .= '&' . $k . '=' . $v;
1544
+			foreach($args as $k => $v) {
1545
+			    $r .= '&' . $k . '=' . $v;
1546
+			}
1397 1547
 			$args = substr($r,1);
1398 1548
 		}
1399 1549
 		$action .=
1400 1550
 			(strpos($action, '?') !== false ? '&' : '?') . $args;
1401 1551
 	}
1402
-	if (!$no_entities)
1403
-		$action = quote_amp($action);
1552
+	if (!$no_entities) {
1553
+			$action = quote_amp($action);
1554
+	}
1404 1555
 
1405 1556
 	// ne pas generer une url avec /./?page= en cas d'url absolue et de _SPIP_SCRIPT vide
1406 1557
 	return ($rel ? _DIR_RACINE . $action : rtrim(url_de_base(),'/') . preg_replace(",^/[.]/,","/","/$action"));
@@ -1478,9 +1629,13 @@  discard block
 block discarded – undo
1478 1629
 	  ? generer_url_ecrire(_request('exec'))
1479 1630
 	  :  generer_url_public('','',false,false);
1480 1631
 	$url = parametre_url($url,'action',$script);
1481
-	if ($args) $url .= quote_amp('&'.$args);
1632
+	if ($args) {
1633
+	    $url .= quote_amp('&'.$args);
1634
+	}
1482 1635
 
1483
-	if ($no_entities) $url = str_replace('&amp;','&',$url);
1636
+	if ($no_entities) {
1637
+	    $url = str_replace('&amp;','&',$url);
1638
+	}
1484 1639
 	return $url;
1485 1640
 }
1486 1641
 
@@ -1514,107 +1669,204 @@  discard block
 block discarded – undo
1514 1669
  */
1515 1670
 function spip_initialisation_core($pi=NULL, $pa=NULL, $ti=NULL, $ta=NULL) {
1516 1671
 	static $too_late = 0;
1517
-	if ($too_late++) return;
1672
+	if ($too_late++) {
1673
+	    return;
1674
+	}
1518 1675
 	
1519 1676
 	// Declaration des repertoires
1520 1677
 
1521 1678
 	// le nom du repertoire plugins/ activables/desactivables
1522
-	if (!defined('_DIR_PLUGINS')) define('_DIR_PLUGINS', _DIR_RACINE . "plugins/");
1679
+	if (!defined('_DIR_PLUGINS')) {
1680
+	    define('_DIR_PLUGINS', _DIR_RACINE . "plugins/");
1681
+	}
1523 1682
 
1524 1683
 	// le nom du repertoire des extensions/ permanentes du core, toujours actives
1525
-	if (!defined('_DIR_PLUGINS_DIST')) define('_DIR_PLUGINS_DIST', _DIR_RACINE . "plugins-dist/");
1684
+	if (!defined('_DIR_PLUGINS_DIST')) {
1685
+	    define('_DIR_PLUGINS_DIST', _DIR_RACINE . "plugins-dist/");
1686
+	}
1526 1687
 
1527 1688
 	// le nom du repertoire des librairies
1528
-	if (!defined('_DIR_LIB')) define('_DIR_LIB', _DIR_RACINE . "lib/");
1689
+	if (!defined('_DIR_LIB')) {
1690
+	    define('_DIR_LIB', _DIR_RACINE . "lib/");
1691
+	}
1529 1692
 	
1530
-	if (!defined('_DIR_IMG')) define('_DIR_IMG', $pa);
1531
-	if (!defined('_DIR_LOGOS')) define('_DIR_LOGOS', $pa);
1532
-	if (!defined('_DIR_IMG_ICONES')) define('_DIR_IMG_ICONES', _DIR_LOGOS . "icones/");
1533
-
1534
-	if (!defined('_DIR_DUMP')) define('_DIR_DUMP', $ti . "dump/");
1535
-	if (!defined('_DIR_SESSIONS')) define('_DIR_SESSIONS', $ti . "sessions/");
1536
-	if (!defined('_DIR_TRANSFERT')) define('_DIR_TRANSFERT', $ti . "upload/");
1537
-	if (!defined('_DIR_CACHE')) define('_DIR_CACHE', $ti . "cache/");
1538
-	if (!defined('_DIR_CACHE_XML')) define('_DIR_CACHE_XML', _DIR_CACHE . "xml/");
1539
-	if (!defined('_DIR_SKELS')) define('_DIR_SKELS',  _DIR_CACHE . "skel/");
1540
-	if (!defined('_DIR_AIDE')) define('_DIR_AIDE',  _DIR_CACHE . "aide/");
1541
-	if (!defined('_DIR_TMP')) define('_DIR_TMP', $ti);
1542
-
1543
-	if (!defined('_DIR_VAR')) define('_DIR_VAR', $ta);
1544
-
1545
-	if (!defined('_DIR_ETC')) define('_DIR_ETC', $pi);
1546
-	if (!defined('_DIR_CONNECT')) define('_DIR_CONNECT', $pi);
1547
-	if (!defined('_DIR_CHMOD')) define('_DIR_CHMOD', $pi);
1548
-
1549
-	if (!isset($GLOBALS['test_dirs']))
1550
-	  // Pas $pi car il est bon de le mettre hors ecriture apres intstall
1693
+	if (!defined('_DIR_IMG')) {
1694
+	    define('_DIR_IMG', $pa);
1695
+	}
1696
+	if (!defined('_DIR_LOGOS')) {
1697
+	    define('_DIR_LOGOS', $pa);
1698
+	}
1699
+	if (!defined('_DIR_IMG_ICONES')) {
1700
+	    define('_DIR_IMG_ICONES', _DIR_LOGOS . "icones/");
1701
+	}
1702
+
1703
+	if (!defined('_DIR_DUMP')) {
1704
+	    define('_DIR_DUMP', $ti . "dump/");
1705
+	}
1706
+	if (!defined('_DIR_SESSIONS')) {
1707
+	    define('_DIR_SESSIONS', $ti . "sessions/");
1708
+	}
1709
+	if (!defined('_DIR_TRANSFERT')) {
1710
+	    define('_DIR_TRANSFERT', $ti . "upload/");
1711
+	}
1712
+	if (!defined('_DIR_CACHE')) {
1713
+	    define('_DIR_CACHE', $ti . "cache/");
1714
+	}
1715
+	if (!defined('_DIR_CACHE_XML')) {
1716
+	    define('_DIR_CACHE_XML', _DIR_CACHE . "xml/");
1717
+	}
1718
+	if (!defined('_DIR_SKELS')) {
1719
+	    define('_DIR_SKELS',  _DIR_CACHE . "skel/");
1720
+	}
1721
+	if (!defined('_DIR_AIDE')) {
1722
+	    define('_DIR_AIDE',  _DIR_CACHE . "aide/");
1723
+	}
1724
+	if (!defined('_DIR_TMP')) {
1725
+	    define('_DIR_TMP', $ti);
1726
+	}
1727
+
1728
+	if (!defined('_DIR_VAR')) {
1729
+	    define('_DIR_VAR', $ta);
1730
+	}
1731
+
1732
+	if (!defined('_DIR_ETC')) {
1733
+	    define('_DIR_ETC', $pi);
1734
+	}
1735
+	if (!defined('_DIR_CONNECT')) {
1736
+	    define('_DIR_CONNECT', $pi);
1737
+	}
1738
+	if (!defined('_DIR_CHMOD')) {
1739
+	    define('_DIR_CHMOD', $pi);
1740
+	}
1741
+
1742
+	if (!isset($GLOBALS['test_dirs'])) {
1743
+		  // Pas $pi car il est bon de le mettre hors ecriture apres intstall
1551 1744
 	  // il sera rajoute automatiquement si besoin a l'etape 2 de l'install
1552 1745
 		$GLOBALS['test_dirs'] =  array($pa, $ti, $ta);
1746
+	}
1553 1747
 
1554 1748
 	// Declaration des fichiers
1555 1749
 
1556
-	if (!defined('_CACHE_PLUGINS_PATH')) define('_CACHE_PLUGINS_PATH', _DIR_CACHE . "charger_plugins_chemins.php");
1557
-	if (!defined('_CACHE_PLUGINS_OPT')) define('_CACHE_PLUGINS_OPT', _DIR_CACHE . "charger_plugins_options.php");
1558
-	if (!defined('_CACHE_PLUGINS_FCT')) define('_CACHE_PLUGINS_FCT', _DIR_CACHE . "charger_plugins_fonctions.php");
1559
-	if (!defined('_CACHE_PIPELINES')) define('_CACHE_PIPELINES',  _DIR_CACHE."charger_pipelines.php");
1560
-	if (!defined('_CACHE_CHEMIN')) define('_CACHE_CHEMIN',  _DIR_CACHE."chemin.txt");
1750
+	if (!defined('_CACHE_PLUGINS_PATH')) {
1751
+	    define('_CACHE_PLUGINS_PATH', _DIR_CACHE . "charger_plugins_chemins.php");
1752
+	}
1753
+	if (!defined('_CACHE_PLUGINS_OPT')) {
1754
+	    define('_CACHE_PLUGINS_OPT', _DIR_CACHE . "charger_plugins_options.php");
1755
+	}
1756
+	if (!defined('_CACHE_PLUGINS_FCT')) {
1757
+	    define('_CACHE_PLUGINS_FCT', _DIR_CACHE . "charger_plugins_fonctions.php");
1758
+	}
1759
+	if (!defined('_CACHE_PIPELINES')) {
1760
+	    define('_CACHE_PIPELINES',  _DIR_CACHE."charger_pipelines.php");
1761
+	}
1762
+	if (!defined('_CACHE_CHEMIN')) {
1763
+	    define('_CACHE_CHEMIN',  _DIR_CACHE."chemin.txt");
1764
+	}
1561 1765
 
1562 1766
 	# attention .php obligatoire pour ecrire_fichier_securise
1563
-	if (!defined('_FILE_META')) define('_FILE_META', $ti . 'meta_cache.php');
1564
-	if (!defined('_DIR_LOG')) define('_DIR_LOG', _DIR_TMP . 'log/');
1565
-	if (!defined('_FILE_LOG')) define('_FILE_LOG', 'spip');
1566
-	if (!defined('_FILE_LOG_SUFFIX')) define('_FILE_LOG_SUFFIX', '.log');
1767
+	if (!defined('_FILE_META')) {
1768
+	    define('_FILE_META', $ti . 'meta_cache.php');
1769
+	}
1770
+	if (!defined('_DIR_LOG')) {
1771
+	    define('_DIR_LOG', _DIR_TMP . 'log/');
1772
+	}
1773
+	if (!defined('_FILE_LOG')) {
1774
+	    define('_FILE_LOG', 'spip');
1775
+	}
1776
+	if (!defined('_FILE_LOG_SUFFIX')) {
1777
+	    define('_FILE_LOG_SUFFIX', '.log');
1778
+	}
1567 1779
 
1568 1780
 	// Le fichier de connexion a la base de donnees
1569 1781
 	// tient compte des anciennes versions (inc_connect...)
1570
-	if (!defined('_FILE_CONNECT_INS')) define('_FILE_CONNECT_INS', 'connect');
1571
-	if (!defined('_FILE_CONNECT')) define('_FILE_CONNECT',
1782
+	if (!defined('_FILE_CONNECT_INS')) {
1783
+	    define('_FILE_CONNECT_INS', 'connect');
1784
+	}
1785
+	if (!defined('_FILE_CONNECT')) {
1786
+	    define('_FILE_CONNECT',
1572 1787
 		(@is_readable($f = _DIR_CONNECT . _FILE_CONNECT_INS . '.php') ? $f
1573 1788
 	:	(@is_readable($f = _DIR_RESTREINT . 'inc_connect.php') ? $f
1574 1789
 	:	false)));
1790
+	}
1575 1791
 
1576 1792
 	// Le fichier de reglages des droits
1577
-	if (!defined('_FILE_CHMOD_INS')) define('_FILE_CHMOD_INS', 'chmod');
1578
-	if (!defined('_FILE_CHMOD')) define('_FILE_CHMOD',
1793
+	if (!defined('_FILE_CHMOD_INS')) {
1794
+	    define('_FILE_CHMOD_INS', 'chmod');
1795
+	}
1796
+	if (!defined('_FILE_CHMOD')) {
1797
+	    define('_FILE_CHMOD',
1579 1798
 		(@is_readable($f = _DIR_CHMOD . _FILE_CHMOD_INS . '.php') ? $f
1580 1799
 	:	false));
1800
+	}
1581 1801
 
1582
-	if (!defined('_FILE_LDAP')) define('_FILE_LDAP', 'ldap.php');
1802
+	if (!defined('_FILE_LDAP')) {
1803
+	    define('_FILE_LDAP', 'ldap.php');
1804
+	}
1583 1805
 
1584
-	if (!defined('_FILE_TMP_SUFFIX')) define('_FILE_TMP_SUFFIX', '.tmp.php');
1585
-	if (!defined('_FILE_CONNECT_TMP')) define('_FILE_CONNECT_TMP', _DIR_CONNECT . _FILE_CONNECT_INS . _FILE_TMP_SUFFIX);
1586
-	if (!defined('_FILE_CHMOD_TMP')) define('_FILE_CHMOD_TMP', _DIR_CHMOD . _FILE_CHMOD_INS . _FILE_TMP_SUFFIX);
1806
+	if (!defined('_FILE_TMP_SUFFIX')) {
1807
+	    define('_FILE_TMP_SUFFIX', '.tmp.php');
1808
+	}
1809
+	if (!defined('_FILE_CONNECT_TMP')) {
1810
+	    define('_FILE_CONNECT_TMP', _DIR_CONNECT . _FILE_CONNECT_INS . _FILE_TMP_SUFFIX);
1811
+	}
1812
+	if (!defined('_FILE_CHMOD_TMP')) {
1813
+	    define('_FILE_CHMOD_TMP', _DIR_CHMOD . _FILE_CHMOD_INS . _FILE_TMP_SUFFIX);
1814
+	}
1587 1815
 
1588 1816
 	// Definition des droits d'acces en ecriture
1589
-	if (!defined('_SPIP_CHMOD') AND _FILE_CHMOD)
1590
-		include_once _FILE_CHMOD;
1817
+	if (!defined('_SPIP_CHMOD') AND _FILE_CHMOD) {
1818
+			include_once _FILE_CHMOD;
1819
+	}
1591 1820
 
1592 1821
 	// Se mefier des fichiers mal remplis!
1593
-	if (!defined('_SPIP_CHMOD')) define('_SPIP_CHMOD', 0777);
1822
+	if (!defined('_SPIP_CHMOD')) {
1823
+	    define('_SPIP_CHMOD', 0777);
1824
+	}
1594 1825
 
1595 1826
 	// Le charset par defaut lors de l'installation
1596
-	if (!defined('_DEFAULT_CHARSET')) define('_DEFAULT_CHARSET', 'utf-8');
1597
-	if (!defined('_ROOT_PLUGINS')) define('_ROOT_PLUGINS', _ROOT_RACINE . "plugins/");
1598
-	if (!defined('_ROOT_PLUGINS_DIST')) define('_ROOT_PLUGINS_DIST', _ROOT_RACINE . "plugins-dist/");
1599
-	if (!defined('_ROOT_PLUGINS_SUPPL') && defined('_DIR_PLUGINS_SUPPL') && _DIR_PLUGINS_SUPPL) define('_ROOT_PLUGINS_SUPPL', _ROOT_RACINE . str_replace(_DIR_RACINE,'',_DIR_PLUGINS_SUPPL));
1827
+	if (!defined('_DEFAULT_CHARSET')) {
1828
+	    define('_DEFAULT_CHARSET', 'utf-8');
1829
+	}
1830
+	if (!defined('_ROOT_PLUGINS')) {
1831
+	    define('_ROOT_PLUGINS', _ROOT_RACINE . "plugins/");
1832
+	}
1833
+	if (!defined('_ROOT_PLUGINS_DIST')) {
1834
+	    define('_ROOT_PLUGINS_DIST', _ROOT_RACINE . "plugins-dist/");
1835
+	}
1836
+	if (!defined('_ROOT_PLUGINS_SUPPL') && defined('_DIR_PLUGINS_SUPPL') && _DIR_PLUGINS_SUPPL) {
1837
+	    define('_ROOT_PLUGINS_SUPPL', _ROOT_RACINE . str_replace(_DIR_RACINE,'',_DIR_PLUGINS_SUPPL));
1838
+	}
1600 1839
 
1601 1840
 	// La taille des Log
1602
-	if (!defined('_MAX_LOG')) define('_MAX_LOG', 100);
1841
+	if (!defined('_MAX_LOG')) {
1842
+	    define('_MAX_LOG', 100);
1843
+	}
1603 1844
 
1604 1845
 	// Sommes-nous dans l'empire du Mal ?
1605 1846
 	// (ou sous le signe du Pingouin, ascendant GNU ?)
1606 1847
 	if (strpos($_SERVER['SERVER_SOFTWARE'], '(Win') !== false){
1607
-		if (!defined('_OS_SERVEUR')) define('_OS_SERVEUR', 'windows');
1608
-		if (!defined('_SPIP_LOCK_MODE')) define('_SPIP_LOCK_MODE',1); // utiliser le flock php
1609
-	}
1610
-	else {
1611
-		if (!defined('_OS_SERVEUR')) define('_OS_SERVEUR', '');
1612
-		if (!defined('_SPIP_LOCK_MODE')) define('_SPIP_LOCK_MODE',1); // utiliser le flock php
1848
+		if (!defined('_OS_SERVEUR')) {
1849
+		    define('_OS_SERVEUR', 'windows');
1850
+		}
1851
+		if (!defined('_SPIP_LOCK_MODE')) {
1852
+		    define('_SPIP_LOCK_MODE',1);
1853
+		}
1854
+		// utiliser le flock php
1855
+	} else {
1856
+		if (!defined('_OS_SERVEUR')) {
1857
+		    define('_OS_SERVEUR', '');
1858
+		}
1859
+		if (!defined('_SPIP_LOCK_MODE')) {
1860
+		    define('_SPIP_LOCK_MODE',1);
1861
+		}
1862
+		// utiliser le flock php
1613 1863
 		#if (!defined('_SPIP_LOCK_MODE')) define('_SPIP_LOCK_MODE',2); // utiliser le nfslock de spip mais link() est tres souvent interdite
1614 1864
 	}
1615 1865
 
1616 1866
 	// Langue par defaut
1617
-	if (!defined('_LANGUE_PAR_DEFAUT')) define('_LANGUE_PAR_DEFAUT','fr');
1867
+	if (!defined('_LANGUE_PAR_DEFAUT')) {
1868
+	    define('_LANGUE_PAR_DEFAUT','fr');
1869
+	}
1618 1870
 
1619 1871
 	// PHP_VERSION_ID dispo depuis PHP 5.2.7
1620 1872
 	if (!defined('PHP_VERSION_ID')) {
@@ -1639,7 +1891,9 @@  discard block
 block discarded – undo
1639 1891
 	//
1640 1892
 
1641 1893
 	// Ne pas se faire manger par un bug php qui accepte ?GLOBALS[truc]=toto
1642
-	if (isset($_REQUEST['GLOBALS'])) die();
1894
+	if (isset($_REQUEST['GLOBALS'])) {
1895
+	    die();
1896
+	}
1643 1897
 	// nettoyer les magic quotes \' et les caracteres nuls %00
1644 1898
 	spip_desinfecte($_GET);
1645 1899
 	spip_desinfecte($_POST);
@@ -1658,8 +1912,9 @@  discard block
 block discarded – undo
1658 1912
 		// ne pas desinfecter les globales en profondeur car elle contient aussi les
1659 1913
 		// precedentes, qui seraient desinfectees 2 fois.
1660 1914
 		spip_desinfecte($GLOBALS,false);
1661
-		if (include_spip('inc/php3'))
1662
-			spip_register_globals(true);
1915
+		if (include_spip('inc/php3')) {
1916
+					spip_register_globals(true);
1917
+		}
1663 1918
 
1664 1919
 		$avertir_register_globals = true;
1665 1920
 	}
@@ -1688,12 +1943,15 @@  discard block
 block discarded – undo
1688 1943
 	} else {
1689 1944
 		$GLOBALS['REQUEST_URI'] = $_SERVER['PHP_SELF'];
1690 1945
 		if ($_SERVER['QUERY_STRING']
1691
-		AND !strpos($_SERVER['REQUEST_URI'], '?'))
1692
-			$GLOBALS['REQUEST_URI'] .= '?'.$_SERVER['QUERY_STRING'];
1946
+		AND !strpos($_SERVER['REQUEST_URI'], '?')) {
1947
+					$GLOBALS['REQUEST_URI'] .= '?'.$_SERVER['QUERY_STRING'];
1948
+		}
1693 1949
 	}
1694 1950
 
1695 1951
 	// Duree de validite de l'alea pour les cookies et ce qui s'ensuit.
1696
-	if (!defined('_RENOUVELLE_ALEA')) define('_RENOUVELLE_ALEA', 12 * 3600);
1952
+	if (!defined('_RENOUVELLE_ALEA')) {
1953
+	    define('_RENOUVELLE_ALEA', 12 * 3600);
1954
+	}
1697 1955
 
1698 1956
 	// charger les meta si possible et renouveller l'alea au besoin
1699 1957
 	// charge aussi effacer_meta et ecrire_meta
@@ -1701,16 +1959,17 @@  discard block
 block discarded – undo
1701 1959
 	$inc_meta();
1702 1960
 
1703 1961
 	// on a pas pu le faire plus tot
1704
-	if  ($avertir_register_globals)
1705
-		avertir_auteurs("register_globals",_L("Probl&egrave;me de s&eacute;curit&eacute; : register_globals=on; dans php.ini &agrave; corriger."));
1962
+	if  ($avertir_register_globals) {
1963
+			avertir_auteurs("register_globals",_L("Probl&egrave;me de s&eacute;curit&eacute; : register_globals=on; dans php.ini &agrave; corriger."));
1964
+	}
1706 1965
 
1707 1966
 	// nombre de repertoires depuis la racine
1708 1967
 	// on compare a l'adresse de spip.php : $_SERVER["SCRIPT_NAME"]
1709 1968
 	// ou a defaut celle donnee en meta ; (mais si celle-ci est fausse
1710 1969
 	// le calcul est faux)
1711
-	if (!_DIR_RESTREINT)
1712
-		$GLOBALS['profondeur_url'] = 1;
1713
-	else {
1970
+	if (!_DIR_RESTREINT) {
1971
+			$GLOBALS['profondeur_url'] = 1;
1972
+	} else {
1714 1973
 		$uri = isset($_SERVER['REQUEST_URI']) ? explode('?', $_SERVER['REQUEST_URI']) : '';
1715 1974
 		$uri_ref = $_SERVER["SCRIPT_NAME"];
1716 1975
 		if (!$uri_ref
@@ -1723,13 +1982,13 @@  discard block
 block discarded – undo
1723 1982
 			if (isset($GLOBALS['meta']['adresse_site'])) {
1724 1983
 				$uri_ref = parse_url($GLOBALS['meta']['adresse_site']);
1725 1984
 				$uri_ref = $uri_ref['path'].'/';
1726
-			}
1727
-		  else
1728
-			  $uri_ref = "";
1985
+			} else {
1986
+		  			  $uri_ref = "";
1987
+		  }
1729 1988
 		}
1730
-		if (!$uri OR !$uri_ref)
1731
-			$GLOBALS['profondeur_url'] = 0;
1732
-		else {
1989
+		if (!$uri OR !$uri_ref) {
1990
+					$GLOBALS['profondeur_url'] = 0;
1991
+		} else {
1733 1992
 			$GLOBALS['profondeur_url'] = max(0,
1734 1993
 				substr_count($uri[0], '/')
1735 1994
 				- substr_count($uri_ref,'/'));
@@ -1739,8 +1998,9 @@  discard block
 block discarded – undo
1739 1998
 	if (_FILE_CONNECT) {
1740 1999
 		if (verifier_visiteur()=='0minirezo'
1741 2000
 			// si c'est un admin sans cookie admin, il faut ignorer le cache chemin !
1742
-		  AND !isset($_COOKIE['spip_admin']))
1743
-			clear_path_cache();
2001
+		  AND !isset($_COOKIE['spip_admin'])) {
2002
+					clear_path_cache();
2003
+		}
1744 2004
 	}
1745 2005
 
1746 2006
 }
@@ -1752,74 +2012,140 @@  discard block
 block discarded – undo
1752 2012
  */
1753 2013
 function spip_initialisation_suite() {
1754 2014
 	static $too_late = 0;
1755
-	if ($too_late++) return;
2015
+	if ($too_late++) {
2016
+	    return;
2017
+	}
1756 2018
 
1757 2019
 	// taille mini des login
1758
-	if (!defined('_LOGIN_TROP_COURT')) define('_LOGIN_TROP_COURT', 4);
2020
+	if (!defined('_LOGIN_TROP_COURT')) {
2021
+	    define('_LOGIN_TROP_COURT', 4);
2022
+	}
1759 2023
 
1760 2024
 	// la taille maxi des logos (0 : pas de limite)
1761
-	if (!defined('_LOGO_MAX_SIZE')) define('_LOGO_MAX_SIZE', 0); # poids en ko
1762
-	if (!defined('_LOGO_MAX_WIDTH')) define('_LOGO_MAX_WIDTH', 0); # largeur en pixels
1763
-	if (!defined('_LOGO_MAX_HEIGHT')) define('_LOGO_MAX_HEIGHT', 0); # hauteur en pixels
2025
+	if (!defined('_LOGO_MAX_SIZE')) {
2026
+	    define('_LOGO_MAX_SIZE', 0);
2027
+	}
2028
+	# poids en ko
2029
+	if (!defined('_LOGO_MAX_WIDTH')) {
2030
+	    define('_LOGO_MAX_WIDTH', 0);
2031
+	}
2032
+	# largeur en pixels
2033
+	if (!defined('_LOGO_MAX_HEIGHT')) {
2034
+	    define('_LOGO_MAX_HEIGHT', 0);
2035
+	}
2036
+	# hauteur en pixels
1764 2037
 
1765
-	if (!defined('_DOC_MAX_SIZE')) define('_DOC_MAX_SIZE', 0); # poids en ko
2038
+	if (!defined('_DOC_MAX_SIZE')) {
2039
+	    define('_DOC_MAX_SIZE', 0);
2040
+	}
2041
+	# poids en ko
1766 2042
 
1767
-	if (!defined('_IMG_MAX_SIZE')) define('_IMG_MAX_SIZE', 0); # poids en ko
1768
-	if (!defined('_IMG_MAX_WIDTH')) define('_IMG_MAX_WIDTH', 0); # largeur en pixels
1769
-	if (!defined('_IMG_MAX_HEIGHT')) define('_IMG_MAX_HEIGHT', 0); # hauteur en pixels
1770
-	if (!defined('_PASS_LONGUEUR_MINI')) define('_PASS_LONGUEUR_MINI',6);
2043
+	if (!defined('_IMG_MAX_SIZE')) {
2044
+	    define('_IMG_MAX_SIZE', 0);
2045
+	}
2046
+	# poids en ko
2047
+	if (!defined('_IMG_MAX_WIDTH')) {
2048
+	    define('_IMG_MAX_WIDTH', 0);
2049
+	}
2050
+	# largeur en pixels
2051
+	if (!defined('_IMG_MAX_HEIGHT')) {
2052
+	    define('_IMG_MAX_HEIGHT', 0);
2053
+	}
2054
+	# hauteur en pixels
2055
+	if (!defined('_PASS_LONGUEUR_MINI')) {
2056
+	    define('_PASS_LONGUEUR_MINI',6);
2057
+	}
1771 2058
 
1772 2059
 
1773 2060
 	// Qualite des images calculees automatiquement. C'est un nombre entre 0 et 100, meme pour imagick (on ramene a 0..1 par la suite)
1774
-        if (!defined('_IMG_QUALITE')) define('_IMG_QUALITE', 85); # valeur par defaut
1775
-        if (!defined('_IMG_GD_QUALITE')) define('_IMG_GD_QUALITE', _IMG_QUALITE); # surcharge pour la lib GD
1776
-        if (!defined('_IMG_CONVERT_QUALITE')) define('_IMG_CONVERT_QUALITE', _IMG_QUALITE); # surcharge pour imagick en ligne de commande
2061
+        if (!defined('_IMG_QUALITE')) {
2062
+            define('_IMG_QUALITE', 85);
2063
+        }
2064
+        # valeur par defaut
2065
+        if (!defined('_IMG_GD_QUALITE')) {
2066
+            define('_IMG_GD_QUALITE', _IMG_QUALITE);
2067
+        }
2068
+        # surcharge pour la lib GD
2069
+        if (!defined('_IMG_CONVERT_QUALITE')) {
2070
+            define('_IMG_CONVERT_QUALITE', _IMG_QUALITE);
2071
+        }
2072
+        # surcharge pour imagick en ligne de commande
1777 2073
 	// Historiquement la valeur pour imagick semble differente. Si ca n'est pas necessaire, il serait preferable de garder _IMG_QUALITE
1778
-        if (!defined('_IMG_IMAGICK_QUALITE')) define('_IMG_IMAGICK_QUALITE', 75); # surcharge pour imagick en PHP
2074
+        if (!defined('_IMG_IMAGICK_QUALITE')) {
2075
+            define('_IMG_IMAGICK_QUALITE', 75);
2076
+        }
2077
+        # surcharge pour imagick en PHP
1779 2078
 
1780
-	if (!defined('_COPIE_LOCALE_MAX_SIZE')) define('_COPIE_LOCALE_MAX_SIZE',16777216); // poids en octet
2079
+	if (!defined('_COPIE_LOCALE_MAX_SIZE')) {
2080
+	    define('_COPIE_LOCALE_MAX_SIZE',16777216);
2081
+	}
2082
+	// poids en octet
1781 2083
 
1782 2084
 	// qq chaines standard
1783
-	if (!defined('_ACCESS_FILE_NAME')) define('_ACCESS_FILE_NAME', '.htaccess');
1784
-	if (!defined('_AUTH_USER_FILE')) define('_AUTH_USER_FILE', '.htpasswd');
1785
-	if (!defined('_SPIP_DUMP')) define('_SPIP_DUMP', 'dump@nom_site@@[email protected]');
1786
-	if (!defined('_CACHE_RUBRIQUES')) define('_CACHE_RUBRIQUES', _DIR_TMP.'menu-rubriques-cache.txt');
1787
-	if (!defined('_CACHE_RUBRIQUES_MAX')) define('_CACHE_RUBRIQUES_MAX', 500);
2085
+	if (!defined('_ACCESS_FILE_NAME')) {
2086
+	    define('_ACCESS_FILE_NAME', '.htaccess');
2087
+	}
2088
+	if (!defined('_AUTH_USER_FILE')) {
2089
+	    define('_AUTH_USER_FILE', '.htpasswd');
2090
+	}
2091
+	if (!defined('_SPIP_DUMP')) {
2092
+	    define('_SPIP_DUMP', 'dump@nom_site@@[email protected]');
2093
+	}
2094
+	if (!defined('_CACHE_RUBRIQUES')) {
2095
+	    define('_CACHE_RUBRIQUES', _DIR_TMP.'menu-rubriques-cache.txt');
2096
+	}
2097
+	if (!defined('_CACHE_RUBRIQUES_MAX')) {
2098
+	    define('_CACHE_RUBRIQUES_MAX', 500);
2099
+	}
1788 2100
 
1789
-	if (!defined('_EXTENSION_SQUELETTES')) define('_EXTENSION_SQUELETTES', 'html');
2101
+	if (!defined('_EXTENSION_SQUELETTES')) {
2102
+	    define('_EXTENSION_SQUELETTES', 'html');
2103
+	}
1790 2104
 
1791
-	if (!defined('_DOCTYPE_ECRIRE')) define('_DOCTYPE_ECRIRE',
2105
+	if (!defined('_DOCTYPE_ECRIRE')) {
2106
+	    define('_DOCTYPE_ECRIRE',
1792 2107
 		// "<!DOCTYPE HTML PUBLIC '-//W3C//DTD HTML 4.01 Transitional//EN' 'http://www.w3.org/TR/html4/loose.dtd'>\n");
1793 2108
 		//"<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Transitional//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd'>\n");
1794 2109
 		//"<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Strict//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'>\n");
1795 2110
 	       // "<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.1 //EN' 'http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd'>\n");
1796 2111
 		"<!DOCTYPE html>\n");
1797
-	if (!defined('_DOCTYPE_AIDE')) define('_DOCTYPE_AIDE',
2112
+	}
2113
+	if (!defined('_DOCTYPE_AIDE')) {
2114
+	    define('_DOCTYPE_AIDE',
1798 2115
 	       "<!DOCTYPE html PUBLIC '-//W3C//DTD HTML 4.01 Frameset//EN' 'http://www.w3.org/TR/1999/REC-html401-19991224/frameset.dtd'>");
2116
+	}
1799 2117
 
1800 2118
 	// L'adresse de base du site ; on peut mettre '' si la racine est geree par
1801 2119
 	// le script de l'espace public, alias  index.php
1802
-	if (!defined('_SPIP_SCRIPT')) define('_SPIP_SCRIPT', 'spip.php');
2120
+	if (!defined('_SPIP_SCRIPT')) {
2121
+	    define('_SPIP_SCRIPT', 'spip.php');
2122
+	}
1803 2123
 	// argument page, personalisable en cas de conflit avec un autre script
1804
-	if (!defined('_SPIP_PAGE')) define('_SPIP_PAGE', 'page');
2124
+	if (!defined('_SPIP_PAGE')) {
2125
+	    define('_SPIP_PAGE', 'page');
2126
+	}
1805 2127
 
1806 2128
 	// le script de l'espace prive
1807 2129
 	// Mettre a "index.php" si DirectoryIndex ne le fait pas ou pb connexes:
1808 2130
 	// les anciens IIS n'acceptent pas les POST sur ecrire/ (#419)
1809 2131
 	// meme pb sur thttpd cf. http://forum.spip.org/fr_184153.html
1810 2132
 
1811
-	if (!defined('_SPIP_ECRIRE_SCRIPT')) define('_SPIP_ECRIRE_SCRIPT', // true ? #decommenter ici et commenter la
2133
+	if (!defined('_SPIP_ECRIRE_SCRIPT')) {
2134
+	    define('_SPIP_ECRIRE_SCRIPT', // true ? #decommenter ici et commenter la
1812 2135
 	       preg_match(',IIS|thttpd,',$_SERVER['SERVER_SOFTWARE']) ?
1813 2136
 	       'index.php' : '');
2137
+	}
1814 2138
 
1815 2139
 
1816
-	if (!defined('_SPIP_AJAX'))
1817
-		define('_SPIP_AJAX', ((!isset($_COOKIE['spip_accepte_ajax']))
2140
+	if (!defined('_SPIP_AJAX')) {
2141
+			define('_SPIP_AJAX', ((!isset($_COOKIE['spip_accepte_ajax']))
1818 2142
 			? 1
1819 2143
 		       : (($_COOKIE['spip_accepte_ajax'] != -1) ? 1 : 0)));
2144
+	}
1820 2145
 
1821 2146
 	// La requete est-elle en ajax ?
1822
-	if (!defined('_AJAX')) define('_AJAX',
2147
+	if (!defined('_AJAX')) {
2148
+	    define('_AJAX',
1823 2149
 		(isset($_SERVER['HTTP_X_REQUESTED_WITH']) # ajax jQuery
1824 2150
 		OR @$_REQUEST['var_ajax_redir'] # redirection 302 apres ajax jQuery
1825 2151
 		OR @$_REQUEST['var_ajaxcharset'] # compat ascendante pour plugins
@@ -1827,16 +2153,22 @@  discard block
 block discarded – undo
1827 2153
 		)
1828 2154
 		AND !@$_REQUEST['var_noajax'] # horrible exception, car c'est pas parce que la requete est ajax jquery qu'il faut tuer tous les formulaires ajax qu'elle contient
1829 2155
 	);
2156
+	}
1830 2157
 
1831 2158
 	# nombre de pixels maxi pour calcul de la vignette avec gd
1832 2159
 	# au dela de 5500000 on considere que php n'est pas limite en memoire pour cette operation
1833 2160
 	# les configurations limitees en memoire ont un seuil plutot vers 1MPixel
1834
-	if (!defined('_IMG_GD_MAX_PIXELS')) define('_IMG_GD_MAX_PIXELS',
2161
+	if (!defined('_IMG_GD_MAX_PIXELS')) {
2162
+	    define('_IMG_GD_MAX_PIXELS',
1835 2163
 		(isset($GLOBALS['meta']['max_taille_vignettes'])&&$GLOBALS['meta']['max_taille_vignettes']<5500000)
1836 2164
 		 ? $GLOBALS['meta']['max_taille_vignettes']
1837 2165
 		 : 0);
2166
+	}
1838 2167
 
1839
-	if (!defined('_MEMORY_LIMIT_MIN')) define('_MEMORY_LIMIT_MIN',10); // en Mo
2168
+	if (!defined('_MEMORY_LIMIT_MIN')) {
2169
+	    define('_MEMORY_LIMIT_MIN',10);
2170
+	}
2171
+	// en Mo
1840 2172
 	// si on est dans l'espace prive et si le besoin est superieur a 8Mo (qui est vraiment le standard)
1841 2173
 	// on verifie que la memoire est suffisante pour le compactage css+js pour eviter la page blanche
1842 2174
 	// il y aura d'autres problemes et l'utilisateur n'ira pas tres loin, mais ce sera plus comprehensible qu'une page blanche
@@ -1852,16 +2184,22 @@  discard block
 block discarded – undo
1852 2184
 			if ($memory<_MEMORY_LIMIT_MIN*1024*1024){
1853 2185
 				ini_set('memory_limit',$m=_MEMORY_LIMIT_MIN.'M');
1854 2186
 				if (trim(ini_get('memory_limit'))!=$m){
1855
-					if (!defined('_INTERDIRE_COMPACTE_HEAD_ECRIRE')) define('_INTERDIRE_COMPACTE_HEAD_ECRIRE',true); // evite une page blanche car on ne saura pas calculer la css dans ce hit
2187
+					if (!defined('_INTERDIRE_COMPACTE_HEAD_ECRIRE')) {
2188
+					    define('_INTERDIRE_COMPACTE_HEAD_ECRIRE',true);
2189
+					}
2190
+					// evite une page blanche car on ne saura pas calculer la css dans ce hit
1856 2191
 				}
1857 2192
 			}
1858
-		}
1859
-		else
1860
-			if (!defined('_INTERDIRE_COMPACTE_HEAD_ECRIRE')) define('_INTERDIRE_COMPACTE_HEAD_ECRIRE',true); // evite une page blanche car on ne saura pas calculer la css dans ce hit
2193
+		} else
2194
+			if (!defined('_INTERDIRE_COMPACTE_HEAD_ECRIRE')) {
2195
+			    define('_INTERDIRE_COMPACTE_HEAD_ECRIRE',true);
2196
+			}
2197
+			// evite une page blanche car on ne saura pas calculer la css dans ce hit
1861 2198
 	}
1862 2199
 	// Protocoles a normaliser dans les chaines de langues
1863
-	if (!defined('_PROTOCOLES_STD'))
1864
-		define('_PROTOCOLES_STD', 'http|https|ftp|mailto|webcal');
2200
+	if (!defined('_PROTOCOLES_STD')) {
2201
+			define('_PROTOCOLES_STD', 'http|https|ftp|mailto|webcal');
2202
+	}
1865 2203
 
1866 2204
 	init_var_mode();
1867 2205
 }
@@ -1877,7 +2215,9 @@  discard block
 block discarded – undo
1877 2215
 			// tout le monde peut calcul/recalcul
1878 2216
 			if ($_GET['var_mode'] == 'calcul'
1879 2217
 			OR $_GET['var_mode'] == 'recalcul') {
1880
-				if (!defined('_VAR_MODE')) define('_VAR_MODE',$_GET['var_mode']);
2218
+				if (!defined('_VAR_MODE')) {
2219
+				    define('_VAR_MODE',$_GET['var_mode']);
2220
+				}
1881 2221
 			}
1882 2222
 			// preview, debug, blocs, urls et images necessitent une autorisation
1883 2223
 			else if (in_array($_GET['var_mode'],array('preview','debug','inclure','urls','images','traduction'))) {
@@ -1890,48 +2230,79 @@  discard block
 block discarded – undo
1890 2230
 					switch($_GET['var_mode']){
1891 2231
 						case 'traduction':
1892 2232
 							// forcer le calcul pour passer dans traduire
1893
-							if (!defined('_VAR_MODE')) define('_VAR_MODE','calcul');
2233
+							if (!defined('_VAR_MODE')) {
2234
+							    define('_VAR_MODE','calcul');
2235
+							}
1894 2236
 							// et ne pas enregistrer de cache pour ne pas trainer les surlignages sur d'autres pages
1895
-							if (!defined('_VAR_NOCACHE')) define('_VAR_NOCACHE',true);
2237
+							if (!defined('_VAR_NOCACHE')) {
2238
+							    define('_VAR_NOCACHE',true);
2239
+							}
1896 2240
 							break;
1897 2241
 						case 'preview':
1898 2242
 							// basculer sur les criteres de preview dans les boucles
1899
-							if (!defined('_VAR_PREVIEW')) define('_VAR_PREVIEW',true);
2243
+							if (!defined('_VAR_PREVIEW')) {
2244
+							    define('_VAR_PREVIEW',true);
2245
+							}
1900 2246
 							// forcer le calcul
1901
-							if (!defined('_VAR_MODE')) define('_VAR_MODE','calcul');
2247
+							if (!defined('_VAR_MODE')) {
2248
+							    define('_VAR_MODE','calcul');
2249
+							}
1902 2250
 							// et ne pas enregistrer de cache
1903
-							if (!defined('_VAR_NOCACHE')) define('_VAR_NOCACHE',true);
2251
+							if (!defined('_VAR_NOCACHE')) {
2252
+							    define('_VAR_NOCACHE',true);
2253
+							}
1904 2254
 							break;
1905 2255
 						case 'inclure':
1906 2256
 							// forcer le compilo et ignorer les caches existants
1907
-							if (!defined('_VAR_MODE')) define('_VAR_MODE','calcul');
1908
-							if (!defined('_VAR_INCLURE')) define('_VAR_INCLURE',true);
2257
+							if (!defined('_VAR_MODE')) {
2258
+							    define('_VAR_MODE','calcul');
2259
+							}
2260
+							if (!defined('_VAR_INCLURE')) {
2261
+							    define('_VAR_INCLURE',true);
2262
+							}
1909 2263
 							// et ne pas enregistrer de cache
1910
-							if (!defined('_VAR_NOCACHE')) define('_VAR_NOCACHE',true);
2264
+							if (!defined('_VAR_NOCACHE')) {
2265
+							    define('_VAR_NOCACHE',true);
2266
+							}
1911 2267
 							break;
1912 2268
 						case 'urls':
1913 2269
 							// forcer le compilo et ignorer les caches existants
1914
-							if (!defined('_VAR_MODE')) define('_VAR_MODE','calcul');
1915
-							if (!defined('_VAR_URLS')) define('_VAR_URLS',true);
2270
+							if (!defined('_VAR_MODE')) {
2271
+							    define('_VAR_MODE','calcul');
2272
+							}
2273
+							if (!defined('_VAR_URLS')) {
2274
+							    define('_VAR_URLS',true);
2275
+							}
1916 2276
 							break;
1917 2277
 						case 'images':
1918 2278
 							// forcer le compilo et ignorer les caches existants
1919
-							if (!defined('_VAR_MODE')) define('_VAR_MODE','calcul');
2279
+							if (!defined('_VAR_MODE')) {
2280
+							    define('_VAR_MODE','calcul');
2281
+							}
1920 2282
 							// indiquer qu'on doit recalculer les images
1921
-							if (!defined('_VAR_IMAGES')) define('_VAR_IMAGES',true);
2283
+							if (!defined('_VAR_IMAGES')) {
2284
+							    define('_VAR_IMAGES',true);
2285
+							}
1922 2286
 							break;
1923 2287
 						case 'debug':
1924
-							if (!defined('_VAR_MODE')) define('_VAR_MODE','debug');
2288
+							if (!defined('_VAR_MODE')) {
2289
+							    define('_VAR_MODE','debug');
2290
+							}
1925 2291
 							// et ne pas enregistrer de cache
1926
-							if (!defined('_VAR_NOCACHE')) define('_VAR_NOCACHE',true);
2292
+							if (!defined('_VAR_NOCACHE')) {
2293
+							    define('_VAR_NOCACHE',true);
2294
+							}
1927 2295
 							break;
1928 2296
 						default :
1929
-							if (!defined('_VAR_MODE')) define('_VAR_MODE',$_GET['var_mode']);
2297
+							if (!defined('_VAR_MODE')) {
2298
+							    define('_VAR_MODE',$_GET['var_mode']);
2299
+							}
1930 2300
 							break;
1931 2301
 					}
1932
-          if (isset($GLOBALS['visiteur_session']['nom']))
1933
-					spip_log($GLOBALS['visiteur_session']['nom']
2302
+          if (isset($GLOBALS['visiteur_session']['nom'])) {
2303
+          					spip_log($GLOBALS['visiteur_session']['nom']
1934 2304
 						. " "._VAR_MODE);
2305
+          }
1935 2306
 				}
1936 2307
 				// pas autorise ?
1937 2308
 				else {
@@ -1946,7 +2317,9 @@  discard block
 block discarded – undo
1946 2317
 					// sinon tant pis
1947 2318
 				}
1948 2319
 			}
1949
-			if (!defined('_VAR_MODE')) define('_VAR_MODE',false);
2320
+			if (!defined('_VAR_MODE')) {
2321
+			    define('_VAR_MODE',false);
2322
+			}
1950 2323
 		}
1951 2324
 		$done = true;
1952 2325
 	}
@@ -1958,18 +2331,21 @@  discard block
 block discarded – undo
1958 2331
 // http://doc.spip.org/@spip_desinfecte
1959 2332
 function spip_desinfecte(&$t,$deep = true) {
1960 2333
 	static $magic_quotes;
1961
-	if (!isset($magic_quotes))
1962
-		$magic_quotes = @get_magic_quotes_gpc();
2334
+	if (!isset($magic_quotes)) {
2335
+			$magic_quotes = @get_magic_quotes_gpc();
2336
+	}
1963 2337
 
1964 2338
 	foreach ($t as $key => $val) {
1965 2339
 		if (is_string($t[$key])) {
1966
-			if ($magic_quotes)
1967
-				$t[$key] = stripslashes($t[$key]);
2340
+			if ($magic_quotes) {
2341
+							$t[$key] = stripslashes($t[$key]);
2342
+			}
1968 2343
 			$t[$key] = str_replace(chr(0), '-', $t[$key]);
1969 2344
 		}
1970 2345
 		// traiter aussi les "texte_plus" de article_edit
1971
-		else if ($deep AND is_array($t[$key]) AND $key!=='GLOBALS')
1972
-			spip_desinfecte($t[$key],$deep);
2346
+		else if ($deep AND is_array($t[$key]) AND $key!=='GLOBALS') {
2347
+					spip_desinfecte($t[$key],$deep);
2348
+		}
1973 2349
 	}
1974 2350
 }
1975 2351
 
@@ -2004,11 +2380,13 @@  discard block
 block discarded – undo
2004 2380
 		$session = charger_fonction('session', 'inc');
2005 2381
 		$session();
2006 2382
 		include_spip('inc/texte');
2007
-		foreach($variables_session as $var)
2008
-			if (($a = _request($var)) !== null)
2383
+		foreach($variables_session as $var) {
2384
+					if (($a = _request($var)) !== null)
2009 2385
 				$GLOBALS['visiteur_session'][$var] = safehtml($a);
2010
-		if (!isset($GLOBALS['visiteur_session']['id_auteur']))
2011
-			$GLOBALS['visiteur_session']['id_auteur'] = 0;
2386
+		}
2387
+		if (!isset($GLOBALS['visiteur_session']['id_auteur'])) {
2388
+					$GLOBALS['visiteur_session']['id_auteur'] = 0;
2389
+		}
2012 2390
 		$session($GLOBALS['visiteur_session']);
2013 2391
 		return 0;
2014 2392
 	}
@@ -2047,15 +2425,17 @@  discard block
 block discarded – undo
2047 2425
 // http://doc.spip.org/@lang_select
2048 2426
 function lang_select ($lang=NULL) {
2049 2427
 	static $pile_langues = array();
2050
-	if (!function_exists('changer_langue'))
2051
-		include_spip('inc/lang');
2052
-	if ($lang === NULL)
2053
-		$lang = array_pop($pile_langues);
2054
-	else {
2428
+	if (!function_exists('changer_langue')) {
2429
+			include_spip('inc/lang');
2430
+	}
2431
+	if ($lang === NULL) {
2432
+			$lang = array_pop($pile_langues);
2433
+	} else {
2055 2434
 		array_push($pile_langues, $GLOBALS['spip_lang']);
2056 2435
 	}
2057
-	if (isset($GLOBALS['spip_lang']) AND $lang == $GLOBALS['spip_lang'])
2058
-		return $lang;
2436
+	if (isset($GLOBALS['spip_lang']) AND $lang == $GLOBALS['spip_lang']) {
2437
+			return $lang;
2438
+	}
2059 2439
 	changer_langue($lang);
2060 2440
 	return $lang;
2061 2441
 }
@@ -2106,11 +2486,12 @@  discard block
 block discarded – undo
2106 2486
 // http://doc.spip.org/@exec_info_dist
2107 2487
 function exec_info_dist() {
2108 2488
 	global $connect_statut;
2109
-	if ($connect_statut == '0minirezo')
2110
-		phpinfo();
2111
-	else
2112
-		echo "pas admin";
2113
-}
2489
+	if ($connect_statut == '0minirezo') {
2490
+			phpinfo();
2491
+	} else {
2492
+			echo "pas admin";
2493
+	}
2494
+	}
2114 2495
 
2115 2496
 /**
2116 2497
  * Génère une erreur de squelette
@@ -2169,12 +2550,17 @@  discard block
 block discarded – undo
2169 2550
  * 		ou tableau d'information sur le squelette.
2170 2551
  */
2171 2552
 function recuperer_fond($fond, $contexte=array(), $options = array(), $connect='') {
2172
-	if (!function_exists('evaluer_fond'))
2173
-		include_spip('public/assembler');
2553
+	if (!function_exists('evaluer_fond')) {
2554
+			include_spip('public/assembler');
2555
+	}
2174 2556
 	// assurer la compat avec l'ancienne syntaxe
2175 2557
 	// (trim etait le 3eme argument, par defaut a true)
2176
-	if (!is_array($options)) $options = array('trim'=>$options);
2177
-	if (!isset($options['trim'])) $options['trim']=true;
2558
+	if (!is_array($options)) {
2559
+	    $options = array('trim'=>$options);
2560
+	}
2561
+	if (!isset($options['trim'])) {
2562
+	    $options['trim']=true;
2563
+	}
2178 2564
 
2179 2565
 	if (isset($contexte['connect'])){
2180 2566
 		$connect = ($connect ? $connect : $contexte['connect']);
@@ -2186,8 +2572,9 @@  discard block
 block discarded – undo
2186 2572
 	$lang_select = '';
2187 2573
 	if (!isset($options['etoile']) OR !$options['etoile']){
2188 2574
 		// Si on a inclus sans fixer le critere de lang, on prend la langue courante
2189
-		if (!isset($contexte['lang']))
2190
-			$contexte['lang'] = $GLOBALS['spip_lang'];
2575
+		if (!isset($contexte['lang'])) {
2576
+					$contexte['lang'] = $GLOBALS['spip_lang'];
2577
+		}
2191 2578
 
2192 2579
 		if ($contexte['lang'] != $GLOBALS['meta']['langue_site']) {
2193 2580
 			$lang_select = lang_select($contexte['lang']);
@@ -2212,25 +2599,30 @@  discard block
 block discarded – undo
2212 2599
 			'data'=>$page
2213 2600
 		));
2214 2601
 		if (isset($options['ajax']) AND $options['ajax']){
2215
-			if (!function_exists('encoder_contexte_ajax'))
2216
-				include_spip('inc/filtres');
2602
+			if (!function_exists('encoder_contexte_ajax')) {
2603
+							include_spip('inc/filtres');
2604
+			}
2217 2605
 			$page['texte'] = encoder_contexte_ajax(array_merge($contexte,array('fond'=>$f)),'',$page['texte'], $options['ajax']);
2218 2606
 		}
2219 2607
 
2220
-		if (isset($options['raw']) AND $options['raw'])
2221
-			$pages[] = $page;
2222
-		else
2223
-			$texte .= $options['trim'] ? rtrim($page['texte']) : $page['texte'];
2608
+		if (isset($options['raw']) AND $options['raw']) {
2609
+					$pages[] = $page;
2610
+		} else {
2611
+					$texte .= $options['trim'] ? rtrim($page['texte']) : $page['texte'];
2612
+		}
2224 2613
 	}
2225 2614
 
2226 2615
 	$GLOBALS['_INC_PUBLIC']--;
2227 2616
 
2228
-	if ($lang_select) lang_select();
2229
-	if (isset($options['raw']) AND $options['raw'])
2230
-		return is_array($fond)?$pages:reset($pages);
2231
-	else
2232
-		return $options['trim'] ? ltrim($texte) : $texte;
2233
-}
2617
+	if ($lang_select) {
2618
+	    lang_select();
2619
+	}
2620
+	if (isset($options['raw']) AND $options['raw']) {
2621
+			return is_array($fond)?$pages:reset($pages);
2622
+	} else {
2623
+			return $options['trim'] ? ltrim($texte) : $texte;
2624
+	}
2625
+	}
2234 2626
 
2235 2627
 /**
2236 2628
  * Trouve un squelette dans le repertoire modeles/
@@ -2256,7 +2648,9 @@  discard block
 block discarded – undo
2256 2648
  */
2257 2649
 function trouver_fond($nom, $dir='', $pathinfo = false) {
2258 2650
 	$f = find_in_path($nom.'.'. _EXTENSION_SQUELETTES, $dir?rtrim($dir,'/').'/':'');
2259
-	if (!$pathinfo) return $f;
2651
+	if (!$pathinfo) {
2652
+	    return $f;
2653
+	}
2260 2654
 	// renvoyer un tableau detaille si $pathinfo==true
2261 2655
 	$p = pathinfo($f);
2262 2656
 	if (!isset($p['extension']) OR !$p['extension']) {
@@ -2271,16 +2665,21 @@  discard block
 block discarded – undo
2271 2665
 
2272 2666
 function tester_url_ecrire($nom){
2273 2667
 	static $exec=array();
2274
-	if (isset($exec[$nom])) return $exec[$nom];
2668
+	if (isset($exec[$nom])) {
2669
+	    return $exec[$nom];
2670
+	}
2275 2671
 	// tester si c'est une page en squelette
2276
-	if (trouver_fond($nom, 'prive/squelettes/contenu/'))
2277
-		return $exec[$nom] = 'fond';
2672
+	if (trouver_fond($nom, 'prive/squelettes/contenu/')) {
2673
+			return $exec[$nom] = 'fond';
2674
+	}
2278 2675
 	// compat skels orthogonaux version precedente
2279
-	elseif (trouver_fond($nom, 'prive/exec/'))
2280
-		return $exec[$nom] = 'fond_monobloc';
2676
+	elseif (trouver_fond($nom, 'prive/exec/')) {
2677
+			return $exec[$nom] = 'fond_monobloc';
2678
+	}
2281 2679
 	// echafaudage d'un fond !
2282
-	elseif(include_spip('public/styliser_par_z') AND z_echafaudable($nom))
2283
-		return $exec[$nom] = 'fond';
2680
+	elseif(include_spip('public/styliser_par_z') AND z_echafaudable($nom)) {
2681
+			return $exec[$nom] = 'fond';
2682
+	}
2284 2683
 	// attention, il ne faut pas inclure l'exec ici
2285 2684
 	// car sinon #URL_ECRIRE provoque des inclusions
2286 2685
 	// et des define intrusifs potentiels
@@ -2324,13 +2723,23 @@  discard block
 block discarded – undo
2324 2723
 // http://doc.spip.org/@spip_fetch_array
2325 2724
 function spip_fetch_array($r, $t=NULL) {
2326 2725
 	if (!isset($t)) {
2327
-		if ($r) return sql_fetch($r);
2726
+		if ($r) {
2727
+		    return sql_fetch($r);
2728
+		}
2328 2729
 	} else {
2329
-		if ($t=='SPIP_NUM') $t = MYSQL_NUM;
2330
-		if ($t=='SPIP_BOTH') $t = MYSQL_BOTH;
2331
-		if ($t=='SPIP_ASSOC') $t = MYSQL_ASSOC;
2730
+		if ($t=='SPIP_NUM') {
2731
+		    $t = MYSQL_NUM;
2732
+		}
2733
+		if ($t=='SPIP_BOTH') {
2734
+		    $t = MYSQL_BOTH;
2735
+		}
2736
+		if ($t=='SPIP_ASSOC') {
2737
+		    $t = MYSQL_ASSOC;
2738
+		}
2332 2739
 		spip_log("appel deprecie de spip_fetch_array(..., $t)", 'vieilles_defs');
2333
-		if ($r) return mysql_fetch_array($r, $t);
2740
+		if ($r) {
2741
+		    return mysql_fetch_array($r, $t);
2742
+		}
2334 2743
 	}
2335 2744
 }
2336 2745
 
@@ -2347,11 +2756,13 @@  discard block
 block discarded – undo
2347 2756
 function avertir_auteurs($nom,$message, $statut=''){
2348 2757
 	$alertes = $GLOBALS['meta']['message_alertes_auteurs'];
2349 2758
 	if (!$alertes
2350
-		OR !is_array($alertes = unserialize($alertes)))
2351
-		$alertes = array();
2759
+		OR !is_array($alertes = unserialize($alertes))) {
2760
+			$alertes = array();
2761
+	}
2352 2762
 
2353
-	if (!isset($alertes[$statut]))
2354
-		$alertes[$statut] = array();
2763
+	if (!isset($alertes[$statut])) {
2764
+			$alertes[$statut] = array();
2765
+	}
2355 2766
 	$alertes[$statut][$nom] = $message;
2356 2767
 	ecrire_meta("message_alertes_auteurs",serialize($alertes));
2357 2768
 }
Please login to merge, or discard this patch.
ecrire/inc/lang_liste.php 1 patch
Indentation   +196 added lines, -196 removed lines patch added patch discarded remove patch
@@ -22,202 +22,202 @@
 block discarded – undo
22 22
 if (!defined('_ECRIRE_INC_VERSION')) return;
23 23
 
24 24
 $GLOBALS['codes_langues'] = array(
25
-	'aa' => "Afar",
26
-	'ab' => "Abkhazian",
27
-	'af' => "Afrikaans",
28
-	'am' => "Amharic",
29
-	'an' => "Aragon&#233;s",
30
-	'ar' => "&#1593;&#1585;&#1576;&#1610;",
31
-	'as' => "Assamese",
32
-	'ast' => "asturianu",
33
-	'ay' => "Aymara",
34
-	'az' => "Az&#601;rbaycan dili",
35
-	'ba' => "Bashkir",
36
-	'be' => "&#1041;&#1077;&#1083;&#1072;&#1088;&#1091;&#1089;&#1082;&#1072;&#1103;",
37
-	'ber_tam' => "Tamazigh",
38
-	'ber_tam_tfng' => "Tamazigh tifinagh",
39
-	'bg' => "&#1073;&#1098;&#1083;&#1075;&#1072;&#1088;&#1089;&#1082;&#1080;",
40
-	'bh' => "Bihari",
41
-	'bi' => "Bislama",
42
-	'bm' => "Bambara",
43
-	'bn' => "Bengali; Bangla",
44
-	'bo' => "Tibetan",
45
-	'br' => "brezhoneg",
46
-	'bs' => "bosanski",
47
-	'ca' => "catal&#224;",
48
-	'co' => "corsu",
49
-	'cpf' => "Kr&eacute;ol r&eacute;yon&eacute;",
50
-	'cpf_dom' => "Krey&ograve;l",
51
-	'cpf_hat' => "Krey&ograve;l (Peyi Dayiti)",
52
-	'cs' => "&#269;e&#353;tina",
53
-	'cy' => "Cymraeg",	# welsh, gallois
54
-	'da' => "dansk",
55
-	'de' => "Deutsch",
56
-	'dz' => "Bhutani",
57
-	'el' => "&#949;&#955;&#955;&#951;&#957;&#953;&#954;&#940;",
58
-	'en' => "English",
59
-	'en_hx' => "H4ck3R",
60
-	'en_sm' => "Smurf",
61
-	'eo' => "Esperanto",
62
-	'es' => "Espa&#241;ol",
63
-	'es_co' => "Colombiano",
64
-	'es_mx_pop' => "Mexicano a lo g&#252;ey",
65
-	'et' => "eesti",
66
-	'eu' => "euskara",
67
-	'fa' => "&#1601;&#1575;&#1585;&#1587;&#1609;",
68
-	'ff' => "Fulah", // peul
69
-	'fi' => "suomi",
70
-	'fj' => "Fiji",
71
-	'fo' => "f&#248;royskt",
72
-	'fon' => "fongb&egrave;",
73
-	'fr' => "fran&#231;ais",
74
-	'fr_fem' => "fran&#231;ais f&#233;minin",
75
-	'fr_sc' => "schtroumpf",
76
-	'fr_lpc' => "langue parl&#233;e compl&#233;t&#233;e",
77
-	'fr_lsf' => "langue des signes fran&#231;aise",
78
-	'fr_spl' => "fran&#231;ais simplifi&#233;",
79
-	'fr_tu' => "fran&#231;ais copain",
80
-	'fy' => "Frisian",
81
-	'ga' => "Irish",
82
-	'gd' => "Scots Gaelic",
83
-	'gl' => "galego",
84
-	'gn' => "Guarani",
85
-	'grc' => "&#7944;&#961;&#967;&#945;&#943;&#945; &#7961;&#955;&#955;&#951;&#957;&#953;&#954;&#942;", // grec ancien
86
-	'gu' => "Gujarati",
87
-	'ha' => "Hausa",
88
-	'hac' => "&#1705;-&#1607;&#1734;&#1585;&#1575;&#1605;&#1740;", //"Kurdish-Horami"
89
-	'hbo' => "&#1506;&#1489;&#1512;&#1497;&#1514;&#1470;&#1492;&#1514;&#1504;&#1498;", // hebreu classique ou biblique
90
-	'he' => "&#1506;&#1489;&#1512;&#1497;&#1514;",
91
-	'hi' => "&#2361;&#2367;&#2306;&#2342;&#2368;",
92
-	'hr' => "hrvatski",
93
-	'hu' => "magyar",
94
-	'hy' => "&#1344;&#1377;&#1397;&#1381;&#1408;&#1381;&#1398;",// Arménien
95
-	'ia' => "Interlingua",
96
-	'id' => "Indonesia",
97
-	'ie' => "Interlingue",
98
-	'ik' => "Inupiak",
99
-	'is' => "&#237;slenska",
100
-	'it' => "italiano",
101
-	'it_fem' => "italiana",
102
-	'iu' => "Inuktitut",
103
-	'ja' => "&#26085;&#26412;&#35486;",
104
-	'jv' => "Javanese",
105
-	'ka' => "&#4325;&#4304;&#4320;&#4311;&#4323;&#4314;&#4312;",
106
-	'kk' => "&#1179;&#1072;&#1079;&#1072;&#1179;&#32;&#1090;&#1110;&#1083;&#1110;", // Kazakh
107
-	'kl' => "kalaallisut",
108
-	'km' => "&#6039;&#6070;&#6047;&#6070;&#6017;&#6098;&#6040;&#6082;&#6042;",// Khmer
109
-	'kn' => "Kannada",
110
-	'ko' => "&#54620;&#44397;&#50612;",
111
-	'kok' => "&#2325;&#2379;&#2306;&#2325;&#2339;&#2368;", // Konkani
112
-	'ks' => "Kashmiri",
113
-	'ku' => "&#1705;&#1608;&#1585;&#1583;&#1740;",
114
-	'ky' => "Kirghiz",
115
-	'la' => "lingua latina",
116
-	'lb' => "L&euml;tzebuergesch",
117
-	'ln' => "Lingala",
118
-	'lo' => "&#3742;&#3762;&#3754;&#3762;&#3749;&#3762;&#3751;", # lao
119
-	'lt' => "lietuvi&#371;",
120
-	'lu' => "luba-katanga",
121
-	'lv' => "latvie&#353;u",
122
-	'man' => "mandingue", # a traduire en mandingue
123
-	'mfv' => "manjak", # ISO-639-3
124
-	'mg' => "Malagasy",
125
-	'mi' => "Maori",
126
-	'mk' => "&#1084;&#1072;&#1082;&#1077;&#1076;&#1086;&#1085;&#1089;&#1082;&#1080; &#1112;&#1072;&#1079;&#1080;&#1082;",
127
-	'ml' => "Malayalam",
128
-	'mn' => "Монгол хэл",
129
-	'mo' => "Moldavian",
130
-	'mos' => "Mor&eacute;",
131
-	'mr' => "&#2350;&#2352;&#2366;&#2336;&#2368;",
132
-	'ms' => "Bahasa Malaysia",
133
-	'mt' => "Maltese",
134
-	'my' => "Burmese",
135
-	'na' => "Nauru",
136
-	'nap' => "napulitano",
137
-	'ne' => "Nepali",
138
-	'nqo' => "N'ko", // www.manden.org
139
-	'nl' => "Nederlands",
140
-	'no' => "norsk",
141
-	'nb' => "norsk bokm&aring;l",
142
-	'nn' => "norsk nynorsk",
143
-	'oc' => "&ograve;c",
144
-	'oc_lnc' => "&ograve;c lengadocian",
145
-	'oc_ni' => "&ograve;c ni&ccedil;ard",
146
-	'oc_ni_la' => "&ograve;c ni&ccedil;ard (larg)",
147
-	'oc_ni_mis' => "&ograve;c nissart (mistralenc)",
148
-	'oc_prv' => "&ograve;c proven&ccedil;au",
149
-	'oc_gsc' => "&ograve;c gascon",
150
-	'oc_lms' => "&ograve;c lemosin",
151
-	'oc_auv' => "&ograve;c auvernhat",
152
-	'oc_va' => "&ograve;c vivaroaupenc",
153
-	'om' => "(Afan) Oromo",
154
-	'or' => "Oriya",
155
-	'pa' => "Punjabi",
156
-	'pbb' => 'Nasa Yuwe',
157
-	'pl' => "polski",
158
-	'prs' => "&#1583;&#1585;&#1740;", // ISO-639-3 Dari (Afghanistan)
159
-	'ps' => "&#1662;&#1690;&#1578;&#1608;",
160
-	'pt' => "Portugu&#234;s",
161
-	'pt_br' => "Portugu&#234;s do Brasil",
162
-	'qu' => "Quechua",
163
-	'rm' => "Rhaeto-Romance",
164
-	'rn' => "Kirundi",
165
-	'ro' => "rom&#226;n&#259;",
166
-	'roa' => "ch'ti",
167
-	'ru' => "&#1088;&#1091;&#1089;&#1089;&#1082;&#1080;&#1081;",
168
-	'rw' => "Kinyarwanda",
169
-	'sa' => "&#2360;&#2306;&#2360;&#2381;&#2325;&#2371;&#2340;",
170
-	'sc' => "sardu",
171
-	'scn' => "sicilianu",
172
-	'sd' => "Sindhi",
173
-	'sg' => "Sangho",
174
-	'sh' => "srpskohrvastski",
175
-	'sh_latn' => 'srpskohrvastski',
176
-	'sh_cyrl' => '&#1057;&#1088;&#1087;&#1089;&#1082;&#1086;&#1093;&#1088;&#1074;&#1072;&#1090;&#1089;&#1082;&#1080;',
177
-	'si' => "Sinhalese",
178
-	'sk' => "sloven&#269;ina",	// (Slovakia)
179
-	'sl' => "sloven&#353;&#269;ina",	// (Slovenia)
180
-	'sm' => "Samoan",
181
-	'sn' => "Shona",
182
-	'so' => "Somali",
183
-	'sq' => "shqip",
184
-	'sr' => "&#1089;&#1088;&#1087;&#1089;&#1082;&#1080;",
185
-	'src' => 'sardu logudor&#233;su', // sarde cf 'sc'
186
-	'sro' => 'sardu campidan&#233;su',
187
-	'ss' => "Siswati",
188
-	'st' => "Sesotho",
189
-	'su' => "Sundanese",
190
-	'sv' => "svenska",
191
-	'sw' => "Kiswahili",
192
-	'ta' => "&#2980;&#2990;&#3007;&#2996;&#3021;", // Tamil
193
-	'te' => "Telugu",
194
-	'tg' => "Tajik",
195
-	'th' => "&#3652;&#3607;&#3618;",
196
-	'ti' => "Tigrinya",
197
-	'tk' => "Turkmen",
198
-	'tl' => "Tagalog",
199
-	'tn' => "Setswana",
200
-	'to' => "Tonga",
201
-	'tr' => "T&#252;rk&#231;e",
202
-	'ts' => "Tsonga",
203
-	'tt' => "&#1058;&#1072;&#1090;&#1072;&#1088;",
204
-	'tw' => "Twi",
205
-	'ty' => "reo m&#257;`ohi", // tahitien
206
-	'ug' => "Uighur",
207
-	'uk' => "&#1091;&#1082;&#1088;&#1072;&#1111;&#1085;&#1089;&#1100;&#1082;&#1072;",
208
-	'ur' => "&#1649;&#1585;&#1583;&#1608;",
209
-	'uz' => "O'zbekcha",
210
-	'vi' => "Ti&#7871;ng Vi&#7879;t",
211
-	'vo' => "Volapuk",
212
-	'wa' => "walon",
213
-	'wo' => "Wolof",
214
-	'xh' => "Xhosa",
215
-	'yi' => "Yiddish",
216
-	'yo' => "Yoruba",
217
-	'za' => "Zhuang",
218
-	'zh' => "&#20013;&#25991;", // chinois (ecriture simplifiee)
219
-	'zh_tw' => "&#21488;&#28771;&#20013;&#25991;", // chinois taiwan (ecr. traditionnelle)
220
-	'zu' => "Zulu"
25
+    'aa' => "Afar",
26
+    'ab' => "Abkhazian",
27
+    'af' => "Afrikaans",
28
+    'am' => "Amharic",
29
+    'an' => "Aragon&#233;s",
30
+    'ar' => "&#1593;&#1585;&#1576;&#1610;",
31
+    'as' => "Assamese",
32
+    'ast' => "asturianu",
33
+    'ay' => "Aymara",
34
+    'az' => "Az&#601;rbaycan dili",
35
+    'ba' => "Bashkir",
36
+    'be' => "&#1041;&#1077;&#1083;&#1072;&#1088;&#1091;&#1089;&#1082;&#1072;&#1103;",
37
+    'ber_tam' => "Tamazigh",
38
+    'ber_tam_tfng' => "Tamazigh tifinagh",
39
+    'bg' => "&#1073;&#1098;&#1083;&#1075;&#1072;&#1088;&#1089;&#1082;&#1080;",
40
+    'bh' => "Bihari",
41
+    'bi' => "Bislama",
42
+    'bm' => "Bambara",
43
+    'bn' => "Bengali; Bangla",
44
+    'bo' => "Tibetan",
45
+    'br' => "brezhoneg",
46
+    'bs' => "bosanski",
47
+    'ca' => "catal&#224;",
48
+    'co' => "corsu",
49
+    'cpf' => "Kr&eacute;ol r&eacute;yon&eacute;",
50
+    'cpf_dom' => "Krey&ograve;l",
51
+    'cpf_hat' => "Krey&ograve;l (Peyi Dayiti)",
52
+    'cs' => "&#269;e&#353;tina",
53
+    'cy' => "Cymraeg",	# welsh, gallois
54
+    'da' => "dansk",
55
+    'de' => "Deutsch",
56
+    'dz' => "Bhutani",
57
+    'el' => "&#949;&#955;&#955;&#951;&#957;&#953;&#954;&#940;",
58
+    'en' => "English",
59
+    'en_hx' => "H4ck3R",
60
+    'en_sm' => "Smurf",
61
+    'eo' => "Esperanto",
62
+    'es' => "Espa&#241;ol",
63
+    'es_co' => "Colombiano",
64
+    'es_mx_pop' => "Mexicano a lo g&#252;ey",
65
+    'et' => "eesti",
66
+    'eu' => "euskara",
67
+    'fa' => "&#1601;&#1575;&#1585;&#1587;&#1609;",
68
+    'ff' => "Fulah", // peul
69
+    'fi' => "suomi",
70
+    'fj' => "Fiji",
71
+    'fo' => "f&#248;royskt",
72
+    'fon' => "fongb&egrave;",
73
+    'fr' => "fran&#231;ais",
74
+    'fr_fem' => "fran&#231;ais f&#233;minin",
75
+    'fr_sc' => "schtroumpf",
76
+    'fr_lpc' => "langue parl&#233;e compl&#233;t&#233;e",
77
+    'fr_lsf' => "langue des signes fran&#231;aise",
78
+    'fr_spl' => "fran&#231;ais simplifi&#233;",
79
+    'fr_tu' => "fran&#231;ais copain",
80
+    'fy' => "Frisian",
81
+    'ga' => "Irish",
82
+    'gd' => "Scots Gaelic",
83
+    'gl' => "galego",
84
+    'gn' => "Guarani",
85
+    'grc' => "&#7944;&#961;&#967;&#945;&#943;&#945; &#7961;&#955;&#955;&#951;&#957;&#953;&#954;&#942;", // grec ancien
86
+    'gu' => "Gujarati",
87
+    'ha' => "Hausa",
88
+    'hac' => "&#1705;-&#1607;&#1734;&#1585;&#1575;&#1605;&#1740;", //"Kurdish-Horami"
89
+    'hbo' => "&#1506;&#1489;&#1512;&#1497;&#1514;&#1470;&#1492;&#1514;&#1504;&#1498;", // hebreu classique ou biblique
90
+    'he' => "&#1506;&#1489;&#1512;&#1497;&#1514;",
91
+    'hi' => "&#2361;&#2367;&#2306;&#2342;&#2368;",
92
+    'hr' => "hrvatski",
93
+    'hu' => "magyar",
94
+    'hy' => "&#1344;&#1377;&#1397;&#1381;&#1408;&#1381;&#1398;",// Arménien
95
+    'ia' => "Interlingua",
96
+    'id' => "Indonesia",
97
+    'ie' => "Interlingue",
98
+    'ik' => "Inupiak",
99
+    'is' => "&#237;slenska",
100
+    'it' => "italiano",
101
+    'it_fem' => "italiana",
102
+    'iu' => "Inuktitut",
103
+    'ja' => "&#26085;&#26412;&#35486;",
104
+    'jv' => "Javanese",
105
+    'ka' => "&#4325;&#4304;&#4320;&#4311;&#4323;&#4314;&#4312;",
106
+    'kk' => "&#1179;&#1072;&#1079;&#1072;&#1179;&#32;&#1090;&#1110;&#1083;&#1110;", // Kazakh
107
+    'kl' => "kalaallisut",
108
+    'km' => "&#6039;&#6070;&#6047;&#6070;&#6017;&#6098;&#6040;&#6082;&#6042;",// Khmer
109
+    'kn' => "Kannada",
110
+    'ko' => "&#54620;&#44397;&#50612;",
111
+    'kok' => "&#2325;&#2379;&#2306;&#2325;&#2339;&#2368;", // Konkani
112
+    'ks' => "Kashmiri",
113
+    'ku' => "&#1705;&#1608;&#1585;&#1583;&#1740;",
114
+    'ky' => "Kirghiz",
115
+    'la' => "lingua latina",
116
+    'lb' => "L&euml;tzebuergesch",
117
+    'ln' => "Lingala",
118
+    'lo' => "&#3742;&#3762;&#3754;&#3762;&#3749;&#3762;&#3751;", # lao
119
+    'lt' => "lietuvi&#371;",
120
+    'lu' => "luba-katanga",
121
+    'lv' => "latvie&#353;u",
122
+    'man' => "mandingue", # a traduire en mandingue
123
+    'mfv' => "manjak", # ISO-639-3
124
+    'mg' => "Malagasy",
125
+    'mi' => "Maori",
126
+    'mk' => "&#1084;&#1072;&#1082;&#1077;&#1076;&#1086;&#1085;&#1089;&#1082;&#1080; &#1112;&#1072;&#1079;&#1080;&#1082;",
127
+    'ml' => "Malayalam",
128
+    'mn' => "Монгол хэл",
129
+    'mo' => "Moldavian",
130
+    'mos' => "Mor&eacute;",
131
+    'mr' => "&#2350;&#2352;&#2366;&#2336;&#2368;",
132
+    'ms' => "Bahasa Malaysia",
133
+    'mt' => "Maltese",
134
+    'my' => "Burmese",
135
+    'na' => "Nauru",
136
+    'nap' => "napulitano",
137
+    'ne' => "Nepali",
138
+    'nqo' => "N'ko", // www.manden.org
139
+    'nl' => "Nederlands",
140
+    'no' => "norsk",
141
+    'nb' => "norsk bokm&aring;l",
142
+    'nn' => "norsk nynorsk",
143
+    'oc' => "&ograve;c",
144
+    'oc_lnc' => "&ograve;c lengadocian",
145
+    'oc_ni' => "&ograve;c ni&ccedil;ard",
146
+    'oc_ni_la' => "&ograve;c ni&ccedil;ard (larg)",
147
+    'oc_ni_mis' => "&ograve;c nissart (mistralenc)",
148
+    'oc_prv' => "&ograve;c proven&ccedil;au",
149
+    'oc_gsc' => "&ograve;c gascon",
150
+    'oc_lms' => "&ograve;c lemosin",
151
+    'oc_auv' => "&ograve;c auvernhat",
152
+    'oc_va' => "&ograve;c vivaroaupenc",
153
+    'om' => "(Afan) Oromo",
154
+    'or' => "Oriya",
155
+    'pa' => "Punjabi",
156
+    'pbb' => 'Nasa Yuwe',
157
+    'pl' => "polski",
158
+    'prs' => "&#1583;&#1585;&#1740;", // ISO-639-3 Dari (Afghanistan)
159
+    'ps' => "&#1662;&#1690;&#1578;&#1608;",
160
+    'pt' => "Portugu&#234;s",
161
+    'pt_br' => "Portugu&#234;s do Brasil",
162
+    'qu' => "Quechua",
163
+    'rm' => "Rhaeto-Romance",
164
+    'rn' => "Kirundi",
165
+    'ro' => "rom&#226;n&#259;",
166
+    'roa' => "ch'ti",
167
+    'ru' => "&#1088;&#1091;&#1089;&#1089;&#1082;&#1080;&#1081;",
168
+    'rw' => "Kinyarwanda",
169
+    'sa' => "&#2360;&#2306;&#2360;&#2381;&#2325;&#2371;&#2340;",
170
+    'sc' => "sardu",
171
+    'scn' => "sicilianu",
172
+    'sd' => "Sindhi",
173
+    'sg' => "Sangho",
174
+    'sh' => "srpskohrvastski",
175
+    'sh_latn' => 'srpskohrvastski',
176
+    'sh_cyrl' => '&#1057;&#1088;&#1087;&#1089;&#1082;&#1086;&#1093;&#1088;&#1074;&#1072;&#1090;&#1089;&#1082;&#1080;',
177
+    'si' => "Sinhalese",
178
+    'sk' => "sloven&#269;ina",	// (Slovakia)
179
+    'sl' => "sloven&#353;&#269;ina",	// (Slovenia)
180
+    'sm' => "Samoan",
181
+    'sn' => "Shona",
182
+    'so' => "Somali",
183
+    'sq' => "shqip",
184
+    'sr' => "&#1089;&#1088;&#1087;&#1089;&#1082;&#1080;",
185
+    'src' => 'sardu logudor&#233;su', // sarde cf 'sc'
186
+    'sro' => 'sardu campidan&#233;su',
187
+    'ss' => "Siswati",
188
+    'st' => "Sesotho",
189
+    'su' => "Sundanese",
190
+    'sv' => "svenska",
191
+    'sw' => "Kiswahili",
192
+    'ta' => "&#2980;&#2990;&#3007;&#2996;&#3021;", // Tamil
193
+    'te' => "Telugu",
194
+    'tg' => "Tajik",
195
+    'th' => "&#3652;&#3607;&#3618;",
196
+    'ti' => "Tigrinya",
197
+    'tk' => "Turkmen",
198
+    'tl' => "Tagalog",
199
+    'tn' => "Setswana",
200
+    'to' => "Tonga",
201
+    'tr' => "T&#252;rk&#231;e",
202
+    'ts' => "Tsonga",
203
+    'tt' => "&#1058;&#1072;&#1090;&#1072;&#1088;",
204
+    'tw' => "Twi",
205
+    'ty' => "reo m&#257;`ohi", // tahitien
206
+    'ug' => "Uighur",
207
+    'uk' => "&#1091;&#1082;&#1088;&#1072;&#1111;&#1085;&#1089;&#1100;&#1082;&#1072;",
208
+    'ur' => "&#1649;&#1585;&#1583;&#1608;",
209
+    'uz' => "O'zbekcha",
210
+    'vi' => "Ti&#7871;ng Vi&#7879;t",
211
+    'vo' => "Volapuk",
212
+    'wa' => "walon",
213
+    'wo' => "Wolof",
214
+    'xh' => "Xhosa",
215
+    'yi' => "Yiddish",
216
+    'yo' => "Yoruba",
217
+    'za' => "Zhuang",
218
+    'zh' => "&#20013;&#25991;", // chinois (ecriture simplifiee)
219
+    'zh_tw' => "&#21488;&#28771;&#20013;&#25991;", // chinois taiwan (ecr. traditionnelle)
220
+    'zu' => "Zulu"
221 221
 
222 222
 );
223 223
 
Please login to merge, or discard this patch.
ecrire/inc/texte.php 3 patches
Indentation   +163 added lines, -163 removed lines patch added patch discarded remove patch
@@ -22,7 +22,7 @@  discard block
 block discarded – undo
22 22
 
23 23
 // Raccourcis dependant du sens de la langue
24 24
 function definir_raccourcis_alineas(){
25
-	return array('','');
25
+    return array('','');
26 26
 }
27 27
 
28 28
 
@@ -31,7 +31,7 @@  discard block
 block discarded – undo
31 31
 //
32 32
 // http://doc.spip.org/@traiter_tableau
33 33
 function traiter_tableau($bloc) {
34
-	return $bloc;
34
+    return $bloc;
35 35
 }
36 36
 
37 37
 
@@ -40,23 +40,23 @@  discard block
 block discarded – undo
40 40
 //
41 41
 // http://doc.spip.org/@traiter_listes
42 42
 function traiter_listes ($texte) {
43
-	return $texte;
43
+    return $texte;
44 44
 }
45 45
 
46 46
 // Nettoie un texte, traite les raccourcis autre qu'URL, la typo, etc.
47 47
 // http://doc.spip.org/@traiter_raccourcis
48 48
 function traiter_raccourcis($letexte) {
49 49
 
50
-	// Appeler les fonctions de pre_traitement
51
-	$letexte = pipeline('pre_propre', $letexte);
50
+    // Appeler les fonctions de pre_traitement
51
+    $letexte = pipeline('pre_propre', $letexte);
52 52
 
53
-	// APPELER ICI UN PIPELINE traiter_raccourcis ?
54
-	// $letexte = pipeline('traiter_raccourcis', $letexte);
53
+    // APPELER ICI UN PIPELINE traiter_raccourcis ?
54
+    // $letexte = pipeline('traiter_raccourcis', $letexte);
55 55
 
56
-	// Appeler les fonctions de post-traitement
57
-	$letexte = pipeline('post_propre', $letexte);
56
+    // Appeler les fonctions de post-traitement
57
+    $letexte = pipeline('post_propre', $letexte);
58 58
 
59
-	return $letexte;
59
+    return $letexte;
60 60
 }
61 61
 
62 62
 /*************************************************************************************************************************
@@ -66,12 +66,12 @@  discard block
 block discarded – undo
66 66
 // afficher joliment les <script>
67 67
 // http://doc.spip.org/@echappe_js
68 68
 function echappe_js($t,$class=' class="echappe-js"') {
69
-	if (preg_match_all(',<script.*?($|</script.),isS', $t, $r, PREG_SET_ORDER))
70
-	foreach ($r as $regs)
71
-		$t = str_replace($regs[0],
72
-			"<code$class>".nl2br(spip_htmlspecialchars($regs[0])).'</code>',
73
-			$t);
74
-	return $t;
69
+    if (preg_match_all(',<script.*?($|</script.),isS', $t, $r, PREG_SET_ORDER))
70
+    foreach ($r as $regs)
71
+        $t = str_replace($regs[0],
72
+            "<code$class>".nl2br(spip_htmlspecialchars($regs[0])).'</code>',
73
+            $t);
74
+    return $t;
75 75
 }
76 76
 
77 77
 
@@ -101,50 +101,50 @@  discard block
 block discarded – undo
101 101
  *     Code protégé
102 102
 **/
103 103
 function interdire_scripts($arg, $mode_filtre=null) {
104
-	// on memorise le resultat sur les arguments non triviaux
105
-	static $dejavu = array();
106
-
107
-	// Attention, si ce n'est pas une chaine, laisser intact
108
-	if (!$arg OR !is_string($arg) OR !strstr($arg, '<')) return $arg; 
109
-
110
-	if (is_null($mode_filtre) or !in_array($mode_filtre, array(-1, 0, 1))) {
111
-		$mode_filtre = $GLOBALS['filtrer_javascript'];
112
-	}
113
-
114
-	if (isset($dejavu[$mode_filtre][$arg])) {
115
-		return $dejavu[$mode_filtre][$arg];
116
-	}
117
-
118
-	// echapper les tags asp/php
119
-	$t = str_replace('<'.'%', '&lt;%', $arg);
120
-
121
-	// echapper le php
122
-	$t = str_replace('<'.'?', '&lt;?', $t);
123
-
124
-	// echapper le < script language=php >
125
-	$t = preg_replace(',<(script\b[^>]+\blanguage\b[^\w>]+php\b),UimsS', '&lt;\1', $t);
126
-
127
-	// Pour le js, trois modes : parano (-1), prive (0), ok (1)
128
-	switch ($mode_filtre) {
129
-		case 0:
130
-			if (!_DIR_RESTREINT)
131
-				$t = echappe_js($t);
132
-			break;
133
-		case -1:
134
-			$t = echappe_js($t);
135
-			break;
136
-	}
137
-
138
-	// pas de <base href /> svp !
139
-	$t = preg_replace(',<(base\b),iS', '&lt;\1', $t);
140
-
141
-	// Reinserer les echappements des modeles
142
-	if (defined('_PROTEGE_JS_MODELES'))
143
-		$t = echappe_retour($t,"javascript"._PROTEGE_JS_MODELES);
144
-	if (defined('_PROTEGE_PHP_MODELES'))
145
-		$t = echappe_retour($t,"php"._PROTEGE_PHP_MODELES);
146
-
147
-	return $dejavu[$mode_filtre][$arg] = $t;
104
+    // on memorise le resultat sur les arguments non triviaux
105
+    static $dejavu = array();
106
+
107
+    // Attention, si ce n'est pas une chaine, laisser intact
108
+    if (!$arg OR !is_string($arg) OR !strstr($arg, '<')) return $arg; 
109
+
110
+    if (is_null($mode_filtre) or !in_array($mode_filtre, array(-1, 0, 1))) {
111
+        $mode_filtre = $GLOBALS['filtrer_javascript'];
112
+    }
113
+
114
+    if (isset($dejavu[$mode_filtre][$arg])) {
115
+        return $dejavu[$mode_filtre][$arg];
116
+    }
117
+
118
+    // echapper les tags asp/php
119
+    $t = str_replace('<'.'%', '&lt;%', $arg);
120
+
121
+    // echapper le php
122
+    $t = str_replace('<'.'?', '&lt;?', $t);
123
+
124
+    // echapper le < script language=php >
125
+    $t = preg_replace(',<(script\b[^>]+\blanguage\b[^\w>]+php\b),UimsS', '&lt;\1', $t);
126
+
127
+    // Pour le js, trois modes : parano (-1), prive (0), ok (1)
128
+    switch ($mode_filtre) {
129
+        case 0:
130
+            if (!_DIR_RESTREINT)
131
+                $t = echappe_js($t);
132
+            break;
133
+        case -1:
134
+            $t = echappe_js($t);
135
+            break;
136
+    }
137
+
138
+    // pas de <base href /> svp !
139
+    $t = preg_replace(',<(base\b),iS', '&lt;\1', $t);
140
+
141
+    // Reinserer les echappements des modeles
142
+    if (defined('_PROTEGE_JS_MODELES'))
143
+        $t = echappe_retour($t,"javascript"._PROTEGE_JS_MODELES);
144
+    if (defined('_PROTEGE_PHP_MODELES'))
145
+        $t = echappe_retour($t,"php"._PROTEGE_PHP_MODELES);
146
+
147
+    return $dejavu[$mode_filtre][$arg] = $t;
148 148
 }
149 149
 
150 150
 // Typographie generale
@@ -152,54 +152,54 @@  discard block
 block discarded – undo
152 152
 
153 153
 // http://doc.spip.org/@typo
154 154
 function typo($letexte, $echapper=true, $connect=null, $env=array()) {
155
-	// Plus vite !
156
-	if (!$letexte) return $letexte;
157
-
158
-	// les appels directs a cette fonction depuis le php de l'espace
159
-	// prive etant historiquement ecrit sans argment $connect
160
-	// on utilise la presence de celui-ci pour distinguer les cas
161
-	// ou il faut passer interdire_script explicitement
162
-	// les appels dans les squelettes (de l'espace prive) fournissant un $connect
163
-	// ne seront pas perturbes
164
-	$interdire_script = false;
165
-	if (is_null($connect)){
166
-		$connect = '';
167
-		$interdire_script = true;
168
-		$env['espace_prive'] = 1;
169
-	}
170
-
171
-	// Echapper les codes <html> etc
172
-	if ($echapper)
173
-		$letexte = echappe_html($letexte, 'TYPO');
174
-
175
-	//
176
-	// Installer les modeles, notamment images et documents ;
177
-	//
178
-	// NOTE : propre() ne passe pas par ici mais directement par corriger_typo
179
-	// cf. inc/lien
180
-
181
-	$letexte = traiter_modeles($mem = $letexte, false, $echapper ? 'TYPO' : '', $connect, null, $env);
182
-	if ($letexte != $mem) $echapper = true;
183
-	unset($mem);
184
-
185
-	$letexte = corriger_typo($letexte);
186
-	$letexte = echapper_faux_tags($letexte);
187
-
188
-	// reintegrer les echappements
189
-	if ($echapper)
190
-		$letexte = echappe_retour($letexte, 'TYPO');
191
-
192
-	// Dans les appels directs hors squelette, securiser ici aussi
193
-	if ($interdire_script)
194
-		$letexte = interdire_scripts($letexte);
195
-
196
-	// Dans l'espace prive on se mefie de tout contenu dangereux
197
-	// https://core.spip.net/issues/3371
198
-	if (isset($env['espace_prive']) AND $env['espace_prive']){
199
-		$letexte = echapper_html_suspect($letexte);
200
-	}
201
-
202
-	return $letexte;
155
+    // Plus vite !
156
+    if (!$letexte) return $letexte;
157
+
158
+    // les appels directs a cette fonction depuis le php de l'espace
159
+    // prive etant historiquement ecrit sans argment $connect
160
+    // on utilise la presence de celui-ci pour distinguer les cas
161
+    // ou il faut passer interdire_script explicitement
162
+    // les appels dans les squelettes (de l'espace prive) fournissant un $connect
163
+    // ne seront pas perturbes
164
+    $interdire_script = false;
165
+    if (is_null($connect)){
166
+        $connect = '';
167
+        $interdire_script = true;
168
+        $env['espace_prive'] = 1;
169
+    }
170
+
171
+    // Echapper les codes <html> etc
172
+    if ($echapper)
173
+        $letexte = echappe_html($letexte, 'TYPO');
174
+
175
+    //
176
+    // Installer les modeles, notamment images et documents ;
177
+    //
178
+    // NOTE : propre() ne passe pas par ici mais directement par corriger_typo
179
+    // cf. inc/lien
180
+
181
+    $letexte = traiter_modeles($mem = $letexte, false, $echapper ? 'TYPO' : '', $connect, null, $env);
182
+    if ($letexte != $mem) $echapper = true;
183
+    unset($mem);
184
+
185
+    $letexte = corriger_typo($letexte);
186
+    $letexte = echapper_faux_tags($letexte);
187
+
188
+    // reintegrer les echappements
189
+    if ($echapper)
190
+        $letexte = echappe_retour($letexte, 'TYPO');
191
+
192
+    // Dans les appels directs hors squelette, securiser ici aussi
193
+    if ($interdire_script)
194
+        $letexte = interdire_scripts($letexte);
195
+
196
+    // Dans l'espace prive on se mefie de tout contenu dangereux
197
+    // https://core.spip.net/issues/3371
198
+    if (isset($env['espace_prive']) AND $env['espace_prive']){
199
+        $letexte = echapper_html_suspect($letexte);
200
+    }
201
+
202
+    return $letexte;
203 203
 }
204 204
 
205 205
 // Correcteur typographique
@@ -211,46 +211,46 @@  discard block
 block discarded – undo
211 211
 // http://doc.spip.org/@corriger_typo
212 212
 function corriger_typo($letexte, $lang='') {
213 213
 
214
-	// Plus vite !
215
-	if (!$letexte) return $letexte;
214
+    // Plus vite !
215
+    if (!$letexte) return $letexte;
216 216
 
217
-	$letexte = pipeline('pre_typo', $letexte);
217
+    $letexte = pipeline('pre_typo', $letexte);
218 218
 
219
-	// Caracteres de controle "illegaux"
220
-	$letexte = corriger_caracteres($letexte);
219
+    // Caracteres de controle "illegaux"
220
+    $letexte = corriger_caracteres($letexte);
221 221
 
222
-	// Proteger les caracteres typographiques a l'interieur des tags html
223
-	if (preg_match_all(_TYPO_BALISE, $letexte, $regs, PREG_SET_ORDER)) {
224
-		foreach ($regs as $reg) {
225
-			$insert = $reg[0];
226
-			// hack: on transforme les caracteres a proteger en les remplacant
227
-			// par des caracteres "illegaux". (cf corriger_caracteres())
228
-			$insert = strtr($insert, _TYPO_PROTEGER, _TYPO_PROTECTEUR);
229
-			$letexte = str_replace($reg[0], $insert, $letexte);
230
-		}
231
-	}
222
+    // Proteger les caracteres typographiques a l'interieur des tags html
223
+    if (preg_match_all(_TYPO_BALISE, $letexte, $regs, PREG_SET_ORDER)) {
224
+        foreach ($regs as $reg) {
225
+            $insert = $reg[0];
226
+            // hack: on transforme les caracteres a proteger en les remplacant
227
+            // par des caracteres "illegaux". (cf corriger_caracteres())
228
+            $insert = strtr($insert, _TYPO_PROTEGER, _TYPO_PROTECTEUR);
229
+            $letexte = str_replace($reg[0], $insert, $letexte);
230
+        }
231
+    }
232 232
 
233
-	// trouver les blocs multi et les traiter a part
234
-	$letexte = extraire_multi($e = $letexte, $lang, true);
235
-	$e = ($e === $letexte);
233
+    // trouver les blocs multi et les traiter a part
234
+    $letexte = extraire_multi($e = $letexte, $lang, true);
235
+    $e = ($e === $letexte);
236 236
 
237
-	// Charger & appliquer les fonctions de typographie
238
-	$typographie = charger_fonction(lang_typo($lang), 'typographie');
239
-	$letexte = $typographie($letexte);
237
+    // Charger & appliquer les fonctions de typographie
238
+    $typographie = charger_fonction(lang_typo($lang), 'typographie');
239
+    $letexte = $typographie($letexte);
240 240
 
241
-	// Les citations en une autre langue, s'il y a lieu
242
-	if (!$e) $letexte = echappe_retour($letexte, 'multi');
241
+    // Les citations en une autre langue, s'il y a lieu
242
+    if (!$e) $letexte = echappe_retour($letexte, 'multi');
243 243
 
244
-	// Retablir les caracteres proteges
245
-	$letexte = strtr($letexte, _TYPO_PROTECTEUR, _TYPO_PROTEGER);
244
+    // Retablir les caracteres proteges
245
+    $letexte = strtr($letexte, _TYPO_PROTECTEUR, _TYPO_PROTEGER);
246 246
 
247
-	// pipeline
248
-	$letexte = pipeline('post_typo', $letexte);
247
+    // pipeline
248
+    $letexte = pipeline('post_typo', $letexte);
249 249
 
250
-	# un message pour abs_url - on est passe en mode texte
251
-	$GLOBALS['mode_abs_url'] = 'texte';
250
+    # un message pour abs_url - on est passe en mode texte
251
+    $GLOBALS['mode_abs_url'] = 'texte';
252 252
 
253
-	return $letexte;
253
+    return $letexte;
254 254
 }
255 255
 
256 256
 
@@ -266,43 +266,43 @@  discard block
 block discarded – undo
266 266
 // http://doc.spip.org/@paragrapher
267 267
 // /!\ appelee dans inc/filtres et public/composer
268 268
 function paragrapher($letexte, $forcer=true) {
269
-	return $letexte;
269
+    return $letexte;
270 270
 }
271 271
 
272 272
 // Harmonise les retours chariots et mange les paragraphes html
273 273
 // http://doc.spip.org/@traiter_retours_chariots
274 274
 // ne sert plus
275 275
 function traiter_retours_chariots($letexte) {
276
-	$letexte = preg_replace(",\r\n?,S", "\n", $letexte);
277
-	$letexte = preg_replace(",<p[>[:space:]],iS", "\n\n\\0", $letexte);
278
-	$letexte = preg_replace(",</p[>[:space:]],iS", "\\0\n\n", $letexte);
279
-	return $letexte;
276
+    $letexte = preg_replace(",\r\n?,S", "\n", $letexte);
277
+    $letexte = preg_replace(",<p[>[:space:]],iS", "\n\n\\0", $letexte);
278
+    $letexte = preg_replace(",</p[>[:space:]],iS", "\\0\n\n", $letexte);
279
+    return $letexte;
280 280
 }
281 281
 
282 282
 
283 283
 // Filtre a appliquer aux champs du type #TEXTE*
284 284
 // http://doc.spip.org/@propre
285 285
 function propre($t, $connect=null, $env=array()) {
286
-	// les appels directs a cette fonction depuis le php de l'espace
287
-	// prive etant historiquement ecrits sans argment $connect
288
-	// on utilise la presence de celui-ci pour distinguer les cas
289
-	// ou il faut passer interdire_script explicitement
290
-	// les appels dans les squelettes (de l'espace prive) fournissant un $connect
291
-	// ne seront pas perturbes
292
-	$interdire_script = false;
293
-	if (is_null($connect)){
294
-		$connect = '';
295
-		$interdire_script = true;
296
-	}
297
-
298
-	if (!$t) return strval($t);
299
-
300
-	$t = echappe_html($t);
301
-	$t = expanser_liens($t,$connect, $env);
302
-	$t = traiter_raccourcis($t);
303
-	$t = echappe_retour_modeles($t, $interdire_script);
304
-
305
-	return $t;
286
+    // les appels directs a cette fonction depuis le php de l'espace
287
+    // prive etant historiquement ecrits sans argment $connect
288
+    // on utilise la presence de celui-ci pour distinguer les cas
289
+    // ou il faut passer interdire_script explicitement
290
+    // les appels dans les squelettes (de l'espace prive) fournissant un $connect
291
+    // ne seront pas perturbes
292
+    $interdire_script = false;
293
+    if (is_null($connect)){
294
+        $connect = '';
295
+        $interdire_script = true;
296
+    }
297
+
298
+    if (!$t) return strval($t);
299
+
300
+    $t = echappe_html($t);
301
+    $t = expanser_liens($t,$connect, $env);
302
+    $t = traiter_raccourcis($t);
303
+    $t = echappe_retour_modeles($t, $interdire_script);
304
+
305
+    return $t;
306 306
 }
307 307
 
308 308
 ?>
Please login to merge, or discard this patch.
Spacing   +15 added lines, -15 removed lines patch added patch discarded remove patch
@@ -21,8 +21,8 @@  discard block
 block discarded – undo
21 21
  */
22 22
 
23 23
 // Raccourcis dependant du sens de la langue
24
-function definir_raccourcis_alineas(){
25
-	return array('','');
24
+function definir_raccourcis_alineas() {
25
+	return array('', '');
26 26
 }
27 27
 
28 28
 
@@ -39,7 +39,7 @@  discard block
 block discarded – undo
39 39
 // Traitement des listes (merci a Michael Parienti)
40 40
 //
41 41
 // http://doc.spip.org/@traiter_listes
42
-function traiter_listes ($texte) {
42
+function traiter_listes($texte) {
43 43
 	return $texte;
44 44
 }
45 45
 
@@ -65,7 +65,7 @@  discard block
 block discarded – undo
65 65
 
66 66
 // afficher joliment les <script>
67 67
 // http://doc.spip.org/@echappe_js
68
-function echappe_js($t,$class=' class="echappe-js"') {
68
+function echappe_js($t, $class = ' class="echappe-js"') {
69 69
 	if (preg_match_all(',<script.*?($|</script.),isS', $t, $r, PREG_SET_ORDER))
70 70
 	foreach ($r as $regs)
71 71
 		$t = str_replace($regs[0],
@@ -100,7 +100,7 @@  discard block
 block discarded – undo
100 100
  * @return string
101 101
  *     Code protégé
102 102
 **/
103
-function interdire_scripts($arg, $mode_filtre=null) {
103
+function interdire_scripts($arg, $mode_filtre = null) {
104 104
 	// on memorise le resultat sur les arguments non triviaux
105 105
 	static $dejavu = array();
106 106
 
@@ -140,9 +140,9 @@  discard block
 block discarded – undo
140 140
 
141 141
 	// Reinserer les echappements des modeles
142 142
 	if (defined('_PROTEGE_JS_MODELES'))
143
-		$t = echappe_retour($t,"javascript"._PROTEGE_JS_MODELES);
143
+		$t = echappe_retour($t, "javascript"._PROTEGE_JS_MODELES);
144 144
 	if (defined('_PROTEGE_PHP_MODELES'))
145
-		$t = echappe_retour($t,"php"._PROTEGE_PHP_MODELES);
145
+		$t = echappe_retour($t, "php"._PROTEGE_PHP_MODELES);
146 146
 
147 147
 	return $dejavu[$mode_filtre][$arg] = $t;
148 148
 }
@@ -151,7 +151,7 @@  discard block
 block discarded – undo
151 151
 // avec protection prealable des balises HTML et SPIP
152 152
 
153 153
 // http://doc.spip.org/@typo
154
-function typo($letexte, $echapper=true, $connect=null, $env=array()) {
154
+function typo($letexte, $echapper = true, $connect = null, $env = array()) {
155 155
 	// Plus vite !
156 156
 	if (!$letexte) return $letexte;
157 157
 
@@ -162,7 +162,7 @@  discard block
 block discarded – undo
162 162
 	// les appels dans les squelettes (de l'espace prive) fournissant un $connect
163 163
 	// ne seront pas perturbes
164 164
 	$interdire_script = false;
165
-	if (is_null($connect)){
165
+	if (is_null($connect)) {
166 166
 		$connect = '';
167 167
 		$interdire_script = true;
168 168
 		$env['espace_prive'] = 1;
@@ -195,7 +195,7 @@  discard block
 block discarded – undo
195 195
 
196 196
 	// Dans l'espace prive on se mefie de tout contenu dangereux
197 197
 	// https://core.spip.net/issues/3371
198
-	if (isset($env['espace_prive']) AND $env['espace_prive']){
198
+	if (isset($env['espace_prive']) AND $env['espace_prive']) {
199 199
 		$letexte = echapper_html_suspect($letexte);
200 200
 	}
201 201
 
@@ -209,7 +209,7 @@  discard block
 block discarded – undo
209 209
 define('_TYPO_BALISE', ",</?[a-z!][^<>]*[".preg_quote(_TYPO_PROTEGER)."][^<>]*>,imsS");
210 210
 
211 211
 // http://doc.spip.org/@corriger_typo
212
-function corriger_typo($letexte, $lang='') {
212
+function corriger_typo($letexte, $lang = '') {
213 213
 
214 214
 	// Plus vite !
215 215
 	if (!$letexte) return $letexte;
@@ -265,7 +265,7 @@  discard block
 block discarded – undo
265 265
 //
266 266
 // http://doc.spip.org/@paragrapher
267 267
 // /!\ appelee dans inc/filtres et public/composer
268
-function paragrapher($letexte, $forcer=true) {
268
+function paragrapher($letexte, $forcer = true) {
269 269
 	return $letexte;
270 270
 }
271 271
 
@@ -282,7 +282,7 @@  discard block
 block discarded – undo
282 282
 
283 283
 // Filtre a appliquer aux champs du type #TEXTE*
284 284
 // http://doc.spip.org/@propre
285
-function propre($t, $connect=null, $env=array()) {
285
+function propre($t, $connect = null, $env = array()) {
286 286
 	// les appels directs a cette fonction depuis le php de l'espace
287 287
 	// prive etant historiquement ecrits sans argment $connect
288 288
 	// on utilise la presence de celui-ci pour distinguer les cas
@@ -290,7 +290,7 @@  discard block
 block discarded – undo
290 290
 	// les appels dans les squelettes (de l'espace prive) fournissant un $connect
291 291
 	// ne seront pas perturbes
292 292
 	$interdire_script = false;
293
-	if (is_null($connect)){
293
+	if (is_null($connect)) {
294 294
 		$connect = '';
295 295
 		$interdire_script = true;
296 296
 	}
@@ -298,7 +298,7 @@  discard block
 block discarded – undo
298 298
 	if (!$t) return strval($t);
299 299
 
300 300
 	$t = echappe_html($t);
301
-	$t = expanser_liens($t,$connect, $env);
301
+	$t = expanser_liens($t, $connect, $env);
302 302
 	$t = traiter_raccourcis($t);
303 303
 	$t = echappe_retour_modeles($t, $interdire_script);
304 304
 
Please login to merge, or discard this patch.
Braces   +42 added lines, -21 removed lines patch added patch discarded remove patch
@@ -10,7 +10,9 @@  discard block
 block discarded – undo
10 10
  *  Pour plus de details voir le fichier COPYING.txt ou l'aide en ligne.   *
11 11
 \***************************************************************************/
12 12
 
13
-if (!defined('_ECRIRE_INC_VERSION')) return;
13
+if (!defined('_ECRIRE_INC_VERSION')) {
14
+    return;
15
+}
14 16
 
15 17
 include_spip('inc/texte_mini');
16 18
 include_spip('inc/lien');
@@ -66,11 +68,12 @@  discard block
 block discarded – undo
66 68
 // afficher joliment les <script>
67 69
 // http://doc.spip.org/@echappe_js
68 70
 function echappe_js($t,$class=' class="echappe-js"') {
69
-	if (preg_match_all(',<script.*?($|</script.),isS', $t, $r, PREG_SET_ORDER))
70
-	foreach ($r as $regs)
71
+	if (preg_match_all(',<script.*?($|</script.),isS', $t, $r, PREG_SET_ORDER)) {
72
+		foreach ($r as $regs)
71 73
 		$t = str_replace($regs[0],
72 74
 			"<code$class>".nl2br(spip_htmlspecialchars($regs[0])).'</code>',
73 75
 			$t);
76
+	}
74 77
 	return $t;
75 78
 }
76 79
 
@@ -105,7 +108,9 @@  discard block
 block discarded – undo
105 108
 	static $dejavu = array();
106 109
 
107 110
 	// Attention, si ce n'est pas une chaine, laisser intact
108
-	if (!$arg OR !is_string($arg) OR !strstr($arg, '<')) return $arg; 
111
+	if (!$arg OR !is_string($arg) OR !strstr($arg, '<')) {
112
+	    return $arg;
113
+	}
109 114
 
110 115
 	if (is_null($mode_filtre) or !in_array($mode_filtre, array(-1, 0, 1))) {
111 116
 		$mode_filtre = $GLOBALS['filtrer_javascript'];
@@ -127,8 +132,9 @@  discard block
 block discarded – undo
127 132
 	// Pour le js, trois modes : parano (-1), prive (0), ok (1)
128 133
 	switch ($mode_filtre) {
129 134
 		case 0:
130
-			if (!_DIR_RESTREINT)
131
-				$t = echappe_js($t);
135
+			if (!_DIR_RESTREINT) {
136
+							$t = echappe_js($t);
137
+			}
132 138
 			break;
133 139
 		case -1:
134 140
 			$t = echappe_js($t);
@@ -139,10 +145,12 @@  discard block
 block discarded – undo
139 145
 	$t = preg_replace(',<(base\b),iS', '&lt;\1', $t);
140 146
 
141 147
 	// Reinserer les echappements des modeles
142
-	if (defined('_PROTEGE_JS_MODELES'))
143
-		$t = echappe_retour($t,"javascript"._PROTEGE_JS_MODELES);
144
-	if (defined('_PROTEGE_PHP_MODELES'))
145
-		$t = echappe_retour($t,"php"._PROTEGE_PHP_MODELES);
148
+	if (defined('_PROTEGE_JS_MODELES')) {
149
+			$t = echappe_retour($t,"javascript"._PROTEGE_JS_MODELES);
150
+	}
151
+	if (defined('_PROTEGE_PHP_MODELES')) {
152
+			$t = echappe_retour($t,"php"._PROTEGE_PHP_MODELES);
153
+	}
146 154
 
147 155
 	return $dejavu[$mode_filtre][$arg] = $t;
148 156
 }
@@ -153,7 +161,9 @@  discard block
 block discarded – undo
153 161
 // http://doc.spip.org/@typo
154 162
 function typo($letexte, $echapper=true, $connect=null, $env=array()) {
155 163
 	// Plus vite !
156
-	if (!$letexte) return $letexte;
164
+	if (!$letexte) {
165
+	    return $letexte;
166
+	}
157 167
 
158 168
 	// les appels directs a cette fonction depuis le php de l'espace
159 169
 	// prive etant historiquement ecrit sans argment $connect
@@ -169,8 +179,9 @@  discard block
 block discarded – undo
169 179
 	}
170 180
 
171 181
 	// Echapper les codes <html> etc
172
-	if ($echapper)
173
-		$letexte = echappe_html($letexte, 'TYPO');
182
+	if ($echapper) {
183
+			$letexte = echappe_html($letexte, 'TYPO');
184
+	}
174 185
 
175 186
 	//
176 187
 	// Installer les modeles, notamment images et documents ;
@@ -179,19 +190,23 @@  discard block
 block discarded – undo
179 190
 	// cf. inc/lien
180 191
 
181 192
 	$letexte = traiter_modeles($mem = $letexte, false, $echapper ? 'TYPO' : '', $connect, null, $env);
182
-	if ($letexte != $mem) $echapper = true;
193
+	if ($letexte != $mem) {
194
+	    $echapper = true;
195
+	}
183 196
 	unset($mem);
184 197
 
185 198
 	$letexte = corriger_typo($letexte);
186 199
 	$letexte = echapper_faux_tags($letexte);
187 200
 
188 201
 	// reintegrer les echappements
189
-	if ($echapper)
190
-		$letexte = echappe_retour($letexte, 'TYPO');
202
+	if ($echapper) {
203
+			$letexte = echappe_retour($letexte, 'TYPO');
204
+	}
191 205
 
192 206
 	// Dans les appels directs hors squelette, securiser ici aussi
193
-	if ($interdire_script)
194
-		$letexte = interdire_scripts($letexte);
207
+	if ($interdire_script) {
208
+			$letexte = interdire_scripts($letexte);
209
+	}
195 210
 
196 211
 	// Dans l'espace prive on se mefie de tout contenu dangereux
197 212
 	// https://core.spip.net/issues/3371
@@ -212,7 +227,9 @@  discard block
 block discarded – undo
212 227
 function corriger_typo($letexte, $lang='') {
213 228
 
214 229
 	// Plus vite !
215
-	if (!$letexte) return $letexte;
230
+	if (!$letexte) {
231
+	    return $letexte;
232
+	}
216 233
 
217 234
 	$letexte = pipeline('pre_typo', $letexte);
218 235
 
@@ -239,7 +256,9 @@  discard block
 block discarded – undo
239 256
 	$letexte = $typographie($letexte);
240 257
 
241 258
 	// Les citations en une autre langue, s'il y a lieu
242
-	if (!$e) $letexte = echappe_retour($letexte, 'multi');
259
+	if (!$e) {
260
+	    $letexte = echappe_retour($letexte, 'multi');
261
+	}
243 262
 
244 263
 	// Retablir les caracteres proteges
245 264
 	$letexte = strtr($letexte, _TYPO_PROTECTEUR, _TYPO_PROTEGER);
@@ -295,7 +314,9 @@  discard block
 block discarded – undo
295 314
 		$interdire_script = true;
296 315
 	}
297 316
 
298
-	if (!$t) return strval($t);
317
+	if (!$t) {
318
+	    return strval($t);
319
+	}
299 320
 
300 321
 	$t = echappe_html($t);
301 322
 	$t = expanser_liens($t,$connect, $env);
Please login to merge, or discard this patch.
ecrire/inc/rechercher.php 3 patches
Indentation   +275 added lines, -275 removed lines patch added patch discarded remove patch
@@ -18,21 +18,21 @@  discard block
 block discarded – undo
18 18
 // avec un poids pour le score
19 19
 // http://doc.spip.org/@liste_des_champs
20 20
 function liste_des_champs() {
21
-	static $liste=null;
22
-	if (is_null($liste)) {
23
-		$liste = array();
24
-		// recuperer les tables_objets_sql declarees
25
-		include_spip('base/objets');
26
-		$tables_objets = lister_tables_objets_sql();
27
-		foreach($tables_objets as $t=>$infos){
28
-			if ($infos['rechercher_champs']){
29
-				$liste[$infos['type']] = $infos['rechercher_champs'];
30
-			}
31
-		}
32
-		// puis passer dans le pipeline
33
-		$liste = pipeline('rechercher_liste_des_champs', $liste);
34
-	}
35
-	return $liste;
21
+    static $liste=null;
22
+    if (is_null($liste)) {
23
+        $liste = array();
24
+        // recuperer les tables_objets_sql declarees
25
+        include_spip('base/objets');
26
+        $tables_objets = lister_tables_objets_sql();
27
+        foreach($tables_objets as $t=>$infos){
28
+            if ($infos['rechercher_champs']){
29
+                $liste[$infos['type']] = $infos['rechercher_champs'];
30
+            }
31
+        }
32
+        // puis passer dans le pipeline
33
+        $liste = pipeline('rechercher_liste_des_champs', $liste);
34
+    }
35
+    return $liste;
36 36
 }
37 37
 
38 38
 
@@ -40,162 +40,162 @@  discard block
 block discarded – undo
40 40
 // en ne regardant que le titre ou le nom
41 41
 // http://doc.spip.org/@liste_des_jointures
42 42
 function liste_des_jointures() {
43
-	static $liste=null;
44
-	if (is_null($liste)) {
45
-		$liste = array();
46
-		// recuperer les tables_objets_sql declarees
47
-		include_spip('base/objets');
48
-		$tables_objets = lister_tables_objets_sql();
49
-		foreach($tables_objets as $t=>$infos){
50
-			if ($infos['rechercher_jointures']){
51
-				$liste[$infos['type']] = $infos['rechercher_jointures'];
52
-			}
53
-		}
54
-		// puis passer dans le pipeline
55
-		$liste = pipeline('rechercher_liste_des_jointures', $liste);
56
-	}
57
-	return $liste;
43
+    static $liste=null;
44
+    if (is_null($liste)) {
45
+        $liste = array();
46
+        // recuperer les tables_objets_sql declarees
47
+        include_spip('base/objets');
48
+        $tables_objets = lister_tables_objets_sql();
49
+        foreach($tables_objets as $t=>$infos){
50
+            if ($infos['rechercher_jointures']){
51
+                $liste[$infos['type']] = $infos['rechercher_jointures'];
52
+            }
53
+        }
54
+        // puis passer dans le pipeline
55
+        $liste = pipeline('rechercher_liste_des_jointures', $liste);
56
+    }
57
+    return $liste;
58 58
 }
59 59
 
60 60
 function expression_recherche($recherche, $options) {
61
-	// ne calculer qu'une seule fois l'expression par hit
62
-	// (meme si utilisee dans plusieurs boucles)
63
-	static $expression = array();
64
-	$key = serialize(array($recherche, $options['preg_flags']));
65
-	if (isset($expression[$key])) {
66
-		return $expression[$key];
67
-	}
68
-
69
-	$u = $GLOBALS['meta']['pcre_u'];
70
-	if ($u and strpos($options['preg_flags'], $u) === false) {
71
-		$options['preg_flags'] .= $u;
72
-	}
73
-	include_spip('inc/charsets');
74
-	$recherche = trim($recherche);
75
-
76
-	$is_preg = false;
77
-	if (substr($recherche, 0, 1) == '/' and substr($recherche, -1, 1) == '/' and strlen($recherche) > 2) {
78
-		// c'est une preg
79
-		$recherche_trans = translitteration($recherche);
80
-		$preg = $recherche_trans . $options['preg_flags'];
81
-		$is_preg = true;
82
-	} else {
83
-		// s'il y a plusieurs mots il faut les chercher tous : oblige REGEXP,
84
-		// sauf ceux de moins de 4 lettres (on supprime ainsi 'le', 'les', 'un',
85
-		// 'une', 'des' ...)
86
-
87
-		// attention : plusieurs mots entre guillemets sont a rechercher tels quels
88
-		$recherche_trans = $recherche_mod = $recherche;
89
-
90
-		// les expressions entre " " sont un mot a chercher tel quel
91
-		// -> on remplace les espaces par un \x1 et on enleve les guillemets
92
-		if (preg_match(',["][^"]+["],Uims', $recherche_mod, $matches)) {
93
-			foreach ($matches as $match) {
94
-				$word = preg_replace(",\s+,Uims", "\x1", $match);
95
-				$word = trim($word, '"');
96
-				$recherche_mod = str_replace($match, $word, $recherche_mod);
97
-			}
98
-		}
99
-
100
-		if (preg_match(",\s+," . $u, $recherche_mod)) {
101
-			$is_preg = true;
102
-
103
-			$recherche_inter = '|';
104
-			$recherche_mots = explode(' ', $recherche_mod);
105
-			$min_long = defined('_RECHERCHE_MIN_CAR') ? _RECHERCHE_MIN_CAR : 4;
106
-			foreach ($recherche_mots as $mot) {
107
-				if (strlen($mot) >= $min_long) {
108
-					// echapper les caracteres de regexp qui sont eventuellement dans la recherche
109
-					$recherche_inter .= preg_quote($mot) . ' ';
110
-				}
111
-			}
112
-			$recherche_inter = str_replace("\x1", '\s', $recherche_inter);
113
-
114
-			// mais on cherche quand même l'expression complète, même si elle
115
-			// comporte des mots de moins de quatre lettres
116
-			$recherche = rtrim(preg_quote($recherche) . preg_replace(',\s+,' . $u, '|', $recherche_inter), '|');
117
-			$recherche_trans = translitteration($recherche);
118
-		}
119
-
120
-		$preg = '/' . str_replace('/', '\\/', $recherche_trans) . '/' . $options['preg_flags'];
121
-	}
122
-
123
-	// Si la chaine est inactive, on va utiliser LIKE pour aller plus vite
124
-	// ou si l'expression reguliere est invalide
125
-	if (!$is_preg
126
-		or (@preg_match($preg, '') === false)
127
-	) {
128
-		$methode = 'LIKE';
129
-		$u = $GLOBALS['meta']['pcre_u'];
130
-
131
-		// echapper les % et _
132
-		$q = str_replace(array('%', '_'), array('\%', '\_'), trim($recherche));
133
-
134
-		// eviter les parentheses et autres caractères qui interferent avec pcre par la suite (dans le preg_match_all) s'il y a des reponses
135
-		$recherche = preg_quote($recherche, '/');
136
-		$recherche_trans = translitteration($recherche);
137
-		$recherche_mod = $recherche_trans;
138
-
139
-		// les expressions entre " " sont un mot a chercher tel quel
140
-		// -> on remplace les espaces par un _ et on enleve les guillemets
141
-		// corriger le like dans le $q
142
-		if (preg_match(',["][^"]+["],Uims', $q, $matches)) {
143
-			foreach ($matches as $match) {
144
-				$word = preg_replace(",\s+,Uims", "_", $match);
145
-				$word = trim($word, '"');
146
-				$q = str_replace($match, $word, $q);
147
-			}
148
-		}
149
-		// corriger la regexp
150
-		if (preg_match(',["][^"]+["],Uims', $recherche_mod, $matches)) {
151
-			foreach ($matches as $match) {
152
-				$word = preg_replace(",\s+,Uims", "[\s]", $match);
153
-				$word = trim($word, '"');
154
-				$recherche_mod = str_replace($match, $word, $recherche_mod);
155
-			}
156
-		}
157
-		$q = sql_quote(
158
-			"%"
159
-			. preg_replace(",\s+," . $u, "%", $q)
160
-			. "%"
161
-		);
162
-
163
-		$preg = '/' . preg_replace(",\s+," . $u, ".+", trim($recherche_mod)) . '/' . $options['preg_flags'];
164
-
165
-	} else {
166
-		$methode = 'REGEXP';
167
-		$q = sql_quote(trim($recherche, '/'));
168
-	}
169
-
170
-	// tous les caracteres transliterables de $q sont remplaces par un joker
171
-	// permet de matcher en SQL meme si on est sensible aux accents (SQLite)
172
-	$q_t = $q;
173
-	for ($i = 0; $i < spip_strlen($q); $i++) {
174
-		$char = spip_substr($q, $i, 1);
175
-		if (!is_ascii($char)
176
-			and $char_t = translitteration($char)
177
-			and $char_t !== $char
178
-		) {
179
-			$q_t = str_replace($char, $is_preg ? "." : "_", $q_t);
180
-		}
181
-	}
182
-
183
-	$q = $q_t;
184
-
185
-	// fix : SQLite 3 est sensible aux accents, on jokerise les caracteres
186
-	// les plus frequents qui peuvent etre accentues
187
-	// (oui c'est tres dicustable...)
188
-	if (isset($GLOBALS['connexions'][$options['serveur'] ? $options['serveur'] : 0]['type'])
189
-		and strncmp($GLOBALS['connexions'][$options['serveur'] ? $options['serveur'] : 0]['type'], 'sqlite', 6) == 0
190
-	) {
191
-		$q_t = strtr($q, "aeuioc", $is_preg ? "......" : "______");
192
-		// si il reste au moins un char significatif...
193
-		if (preg_match(",[^'%_.],", $q_t)) {
194
-			$q = $q_t;
195
-		}
196
-	}
197
-
198
-	return $expression[$key] = array($methode, $q, $preg);
61
+    // ne calculer qu'une seule fois l'expression par hit
62
+    // (meme si utilisee dans plusieurs boucles)
63
+    static $expression = array();
64
+    $key = serialize(array($recherche, $options['preg_flags']));
65
+    if (isset($expression[$key])) {
66
+        return $expression[$key];
67
+    }
68
+
69
+    $u = $GLOBALS['meta']['pcre_u'];
70
+    if ($u and strpos($options['preg_flags'], $u) === false) {
71
+        $options['preg_flags'] .= $u;
72
+    }
73
+    include_spip('inc/charsets');
74
+    $recherche = trim($recherche);
75
+
76
+    $is_preg = false;
77
+    if (substr($recherche, 0, 1) == '/' and substr($recherche, -1, 1) == '/' and strlen($recherche) > 2) {
78
+        // c'est une preg
79
+        $recherche_trans = translitteration($recherche);
80
+        $preg = $recherche_trans . $options['preg_flags'];
81
+        $is_preg = true;
82
+    } else {
83
+        // s'il y a plusieurs mots il faut les chercher tous : oblige REGEXP,
84
+        // sauf ceux de moins de 4 lettres (on supprime ainsi 'le', 'les', 'un',
85
+        // 'une', 'des' ...)
86
+
87
+        // attention : plusieurs mots entre guillemets sont a rechercher tels quels
88
+        $recherche_trans = $recherche_mod = $recherche;
89
+
90
+        // les expressions entre " " sont un mot a chercher tel quel
91
+        // -> on remplace les espaces par un \x1 et on enleve les guillemets
92
+        if (preg_match(',["][^"]+["],Uims', $recherche_mod, $matches)) {
93
+            foreach ($matches as $match) {
94
+                $word = preg_replace(",\s+,Uims", "\x1", $match);
95
+                $word = trim($word, '"');
96
+                $recherche_mod = str_replace($match, $word, $recherche_mod);
97
+            }
98
+        }
99
+
100
+        if (preg_match(",\s+," . $u, $recherche_mod)) {
101
+            $is_preg = true;
102
+
103
+            $recherche_inter = '|';
104
+            $recherche_mots = explode(' ', $recherche_mod);
105
+            $min_long = defined('_RECHERCHE_MIN_CAR') ? _RECHERCHE_MIN_CAR : 4;
106
+            foreach ($recherche_mots as $mot) {
107
+                if (strlen($mot) >= $min_long) {
108
+                    // echapper les caracteres de regexp qui sont eventuellement dans la recherche
109
+                    $recherche_inter .= preg_quote($mot) . ' ';
110
+                }
111
+            }
112
+            $recherche_inter = str_replace("\x1", '\s', $recherche_inter);
113
+
114
+            // mais on cherche quand même l'expression complète, même si elle
115
+            // comporte des mots de moins de quatre lettres
116
+            $recherche = rtrim(preg_quote($recherche) . preg_replace(',\s+,' . $u, '|', $recherche_inter), '|');
117
+            $recherche_trans = translitteration($recherche);
118
+        }
119
+
120
+        $preg = '/' . str_replace('/', '\\/', $recherche_trans) . '/' . $options['preg_flags'];
121
+    }
122
+
123
+    // Si la chaine est inactive, on va utiliser LIKE pour aller plus vite
124
+    // ou si l'expression reguliere est invalide
125
+    if (!$is_preg
126
+        or (@preg_match($preg, '') === false)
127
+    ) {
128
+        $methode = 'LIKE';
129
+        $u = $GLOBALS['meta']['pcre_u'];
130
+
131
+        // echapper les % et _
132
+        $q = str_replace(array('%', '_'), array('\%', '\_'), trim($recherche));
133
+
134
+        // eviter les parentheses et autres caractères qui interferent avec pcre par la suite (dans le preg_match_all) s'il y a des reponses
135
+        $recherche = preg_quote($recherche, '/');
136
+        $recherche_trans = translitteration($recherche);
137
+        $recherche_mod = $recherche_trans;
138
+
139
+        // les expressions entre " " sont un mot a chercher tel quel
140
+        // -> on remplace les espaces par un _ et on enleve les guillemets
141
+        // corriger le like dans le $q
142
+        if (preg_match(',["][^"]+["],Uims', $q, $matches)) {
143
+            foreach ($matches as $match) {
144
+                $word = preg_replace(",\s+,Uims", "_", $match);
145
+                $word = trim($word, '"');
146
+                $q = str_replace($match, $word, $q);
147
+            }
148
+        }
149
+        // corriger la regexp
150
+        if (preg_match(',["][^"]+["],Uims', $recherche_mod, $matches)) {
151
+            foreach ($matches as $match) {
152
+                $word = preg_replace(",\s+,Uims", "[\s]", $match);
153
+                $word = trim($word, '"');
154
+                $recherche_mod = str_replace($match, $word, $recherche_mod);
155
+            }
156
+        }
157
+        $q = sql_quote(
158
+            "%"
159
+            . preg_replace(",\s+," . $u, "%", $q)
160
+            . "%"
161
+        );
162
+
163
+        $preg = '/' . preg_replace(",\s+," . $u, ".+", trim($recherche_mod)) . '/' . $options['preg_flags'];
164
+
165
+    } else {
166
+        $methode = 'REGEXP';
167
+        $q = sql_quote(trim($recherche, '/'));
168
+    }
169
+
170
+    // tous les caracteres transliterables de $q sont remplaces par un joker
171
+    // permet de matcher en SQL meme si on est sensible aux accents (SQLite)
172
+    $q_t = $q;
173
+    for ($i = 0; $i < spip_strlen($q); $i++) {
174
+        $char = spip_substr($q, $i, 1);
175
+        if (!is_ascii($char)
176
+            and $char_t = translitteration($char)
177
+            and $char_t !== $char
178
+        ) {
179
+            $q_t = str_replace($char, $is_preg ? "." : "_", $q_t);
180
+        }
181
+    }
182
+
183
+    $q = $q_t;
184
+
185
+    // fix : SQLite 3 est sensible aux accents, on jokerise les caracteres
186
+    // les plus frequents qui peuvent etre accentues
187
+    // (oui c'est tres dicustable...)
188
+    if (isset($GLOBALS['connexions'][$options['serveur'] ? $options['serveur'] : 0]['type'])
189
+        and strncmp($GLOBALS['connexions'][$options['serveur'] ? $options['serveur'] : 0]['type'], 'sqlite', 6) == 0
190
+    ) {
191
+        $q_t = strtr($q, "aeuioc", $is_preg ? "......" : "______");
192
+        // si il reste au moins un char significatif...
193
+        if (preg_match(",[^'%_.],", $q_t)) {
194
+            $q = $q_t;
195
+        }
196
+    }
197
+
198
+    return $expression[$key] = array($methode, $q, $preg);
199 199
 }
200 200
 
201 201
 
@@ -208,119 +208,119 @@  discard block
 block discarded – undo
208 208
 // On peut passer les tables, ou une chaine listant les tables souhaitees
209 209
 // http://doc.spip.org/@recherche_en_base
210 210
 function recherche_en_base($recherche='', $tables=NULL, $options=array(), $serveur='') {
211
-	include_spip('base/abstract_sql');
212
-
213
-	if (!is_array($tables)) {
214
-		$liste = liste_des_champs();
215
-
216
-		if (is_string($tables)
217
-		AND $tables != '') {
218
-			$toutes = array();
219
-			foreach(explode(',', $tables) as $t)
220
-				if (isset($liste[$t]))
221
-					$toutes[$t] = $liste[$t];
222
-			$tables = $toutes;
223
-			unset($toutes);
224
-		} else
225
-			$tables = $liste;
226
-	}
227
-
228
-	if (!strlen($recherche) OR !count($tables))
229
-		return array();
230
-
231
-	include_spip('inc/autoriser');
232
-
233
-	// options par defaut
234
-	$options = array_merge(array(
235
-		'preg_flags' => 'UimsS',
236
-		'toutvoir' => false,
237
-		'champs' => false,
238
-		'score' => false,
239
-		'matches' => false,
240
-		'jointures' => false,
241
-		'serveur' => $serveur
242
-		),
243
-		$options
244
-	);
245
-
246
-	$results = array();
247
-
248
-	// Utiliser l'iterateur (DATA:recherche)
249
-	// pour recuperer les couples (id_objet, score)
250
-	// Le resultat est au format { 
251
-	//      id1 = { 'score' => x, attrs => { } },
252
-	//      id2 = { 'score' => x, attrs => { } },
253
-	// }
254
-	include_spip('inc/memoization');
255
-	foreach ($tables as $table => $champs) {
256
-		# lock via memoization, si dispo
257
-		if (function_exists('cache_lock'))
258
-			cache_lock($lock = 'recherche '.$table.' '.$recherche);
259
-
260
-		spip_timer('rech');
261
-
262
-		// TODO: ici plutot charger un iterateur via l'API iterateurs
263
-		include_spip('inc/recherche_to_array');
264
-		$to_array = charger_fonction('recherche_to_array', 'inc');
265
-		$results[$table] = $to_array($recherche,
266
-			array_merge($options, array('table' => $table, 'champs' => $champs))
267
-		);
268
-		##var_dump($results[$table]);
269
-
270
-
271
-		spip_log("recherche $table ($recherche) : ".count($results[$table])." resultats ".spip_timer('rech'),'recherche');
272
-
273
-		if (isset($lock))
274
-			cache_unlock($lock);
275
-	}
276
-
277
-	return $results;
211
+    include_spip('base/abstract_sql');
212
+
213
+    if (!is_array($tables)) {
214
+        $liste = liste_des_champs();
215
+
216
+        if (is_string($tables)
217
+        AND $tables != '') {
218
+            $toutes = array();
219
+            foreach(explode(',', $tables) as $t)
220
+                if (isset($liste[$t]))
221
+                    $toutes[$t] = $liste[$t];
222
+            $tables = $toutes;
223
+            unset($toutes);
224
+        } else
225
+            $tables = $liste;
226
+    }
227
+
228
+    if (!strlen($recherche) OR !count($tables))
229
+        return array();
230
+
231
+    include_spip('inc/autoriser');
232
+
233
+    // options par defaut
234
+    $options = array_merge(array(
235
+        'preg_flags' => 'UimsS',
236
+        'toutvoir' => false,
237
+        'champs' => false,
238
+        'score' => false,
239
+        'matches' => false,
240
+        'jointures' => false,
241
+        'serveur' => $serveur
242
+        ),
243
+        $options
244
+    );
245
+
246
+    $results = array();
247
+
248
+    // Utiliser l'iterateur (DATA:recherche)
249
+    // pour recuperer les couples (id_objet, score)
250
+    // Le resultat est au format { 
251
+    //      id1 = { 'score' => x, attrs => { } },
252
+    //      id2 = { 'score' => x, attrs => { } },
253
+    // }
254
+    include_spip('inc/memoization');
255
+    foreach ($tables as $table => $champs) {
256
+        # lock via memoization, si dispo
257
+        if (function_exists('cache_lock'))
258
+            cache_lock($lock = 'recherche '.$table.' '.$recherche);
259
+
260
+        spip_timer('rech');
261
+
262
+        // TODO: ici plutot charger un iterateur via l'API iterateurs
263
+        include_spip('inc/recherche_to_array');
264
+        $to_array = charger_fonction('recherche_to_array', 'inc');
265
+        $results[$table] = $to_array($recherche,
266
+            array_merge($options, array('table' => $table, 'champs' => $champs))
267
+        );
268
+        ##var_dump($results[$table]);
269
+
270
+
271
+        spip_log("recherche $table ($recherche) : ".count($results[$table])." resultats ".spip_timer('rech'),'recherche');
272
+
273
+        if (isset($lock))
274
+            cache_unlock($lock);
275
+    }
276
+
277
+    return $results;
278 278
 }
279 279
 
280 280
 
281 281
 // Effectue une recherche sur toutes les tables de la base de donnees
282 282
 // http://doc.spip.org/@remplace_en_base
283 283
 function remplace_en_base($recherche='', $remplace=NULL, $tables=NULL, $options=array()) {
284
-	include_spip('inc/modifier');
285
-
286
-	// options par defaut
287
-	$options = array_merge(array(
288
-		'preg_flags' => 'UimsS',
289
-		'toutmodifier' => false
290
-		),
291
-		$options
292
-	);
293
-	$options['champs'] = true;
294
-
295
-
296
-	if (!is_array($tables))
297
-		$tables = liste_des_champs();
298
-
299
-	$results = recherche_en_base($recherche, $tables, $options);
300
-
301
-	$preg = '/'.str_replace('/', '\\/', $recherche).'/' . $options['preg_flags'];
302
-
303
-	foreach ($results as $table => $r) {
304
-		$_id_table = id_table_objet($table);
305
-		foreach ($r as $id => $x) {
306
-			if ($options['toutmodifier']
307
-			OR autoriser('modifier', $table, $id)) {
308
-				$modifs = array();
309
-				foreach ($x['champs'] as $key => $val) {
310
-					if ($key == $_id_table) next;
311
-					$repl = preg_replace($preg, $remplace, $val);
312
-					if ($repl <> $val)
313
-						$modifs[$key] = $repl;
314
-				}
315
-				if ($modifs)
316
-					objet_modifier_champs($table, $id,
317
-						array(
318
-							'champs' => array_keys($modifs),
319
-						),
320
-						$modifs);
321
-			}
322
-		}
323
-	}
284
+    include_spip('inc/modifier');
285
+
286
+    // options par defaut
287
+    $options = array_merge(array(
288
+        'preg_flags' => 'UimsS',
289
+        'toutmodifier' => false
290
+        ),
291
+        $options
292
+    );
293
+    $options['champs'] = true;
294
+
295
+
296
+    if (!is_array($tables))
297
+        $tables = liste_des_champs();
298
+
299
+    $results = recherche_en_base($recherche, $tables, $options);
300
+
301
+    $preg = '/'.str_replace('/', '\\/', $recherche).'/' . $options['preg_flags'];
302
+
303
+    foreach ($results as $table => $r) {
304
+        $_id_table = id_table_objet($table);
305
+        foreach ($r as $id => $x) {
306
+            if ($options['toutmodifier']
307
+            OR autoriser('modifier', $table, $id)) {
308
+                $modifs = array();
309
+                foreach ($x['champs'] as $key => $val) {
310
+                    if ($key == $_id_table) next;
311
+                    $repl = preg_replace($preg, $remplace, $val);
312
+                    if ($repl <> $val)
313
+                        $modifs[$key] = $repl;
314
+                }
315
+                if ($modifs)
316
+                    objet_modifier_champs($table, $id,
317
+                        array(
318
+                            'champs' => array_keys($modifs),
319
+                        ),
320
+                        $modifs);
321
+            }
322
+        }
323
+    }
324 324
 }
325 325
 
326 326
 ?>
Please login to merge, or discard this patch.
Spacing   +18 added lines, -18 removed lines patch added patch discarded remove patch
@@ -18,14 +18,14 @@  discard block
 block discarded – undo
18 18
 // avec un poids pour le score
19 19
 // http://doc.spip.org/@liste_des_champs
20 20
 function liste_des_champs() {
21
-	static $liste=null;
21
+	static $liste = null;
22 22
 	if (is_null($liste)) {
23 23
 		$liste = array();
24 24
 		// recuperer les tables_objets_sql declarees
25 25
 		include_spip('base/objets');
26 26
 		$tables_objets = lister_tables_objets_sql();
27
-		foreach($tables_objets as $t=>$infos){
28
-			if ($infos['rechercher_champs']){
27
+		foreach ($tables_objets as $t=>$infos) {
28
+			if ($infos['rechercher_champs']) {
29 29
 				$liste[$infos['type']] = $infos['rechercher_champs'];
30 30
 			}
31 31
 		}
@@ -40,14 +40,14 @@  discard block
 block discarded – undo
40 40
 // en ne regardant que le titre ou le nom
41 41
 // http://doc.spip.org/@liste_des_jointures
42 42
 function liste_des_jointures() {
43
-	static $liste=null;
43
+	static $liste = null;
44 44
 	if (is_null($liste)) {
45 45
 		$liste = array();
46 46
 		// recuperer les tables_objets_sql declarees
47 47
 		include_spip('base/objets');
48 48
 		$tables_objets = lister_tables_objets_sql();
49
-		foreach($tables_objets as $t=>$infos){
50
-			if ($infos['rechercher_jointures']){
49
+		foreach ($tables_objets as $t=>$infos) {
50
+			if ($infos['rechercher_jointures']) {
51 51
 				$liste[$infos['type']] = $infos['rechercher_jointures'];
52 52
 			}
53 53
 		}
@@ -77,7 +77,7 @@  discard block
 block discarded – undo
77 77
 	if (substr($recherche, 0, 1) == '/' and substr($recherche, -1, 1) == '/' and strlen($recherche) > 2) {
78 78
 		// c'est une preg
79 79
 		$recherche_trans = translitteration($recherche);
80
-		$preg = $recherche_trans . $options['preg_flags'];
80
+		$preg = $recherche_trans.$options['preg_flags'];
81 81
 		$is_preg = true;
82 82
 	} else {
83 83
 		// s'il y a plusieurs mots il faut les chercher tous : oblige REGEXP,
@@ -97,7 +97,7 @@  discard block
 block discarded – undo
97 97
 			}
98 98
 		}
99 99
 
100
-		if (preg_match(",\s+," . $u, $recherche_mod)) {
100
+		if (preg_match(",\s+,".$u, $recherche_mod)) {
101 101
 			$is_preg = true;
102 102
 
103 103
 			$recherche_inter = '|';
@@ -106,18 +106,18 @@  discard block
 block discarded – undo
106 106
 			foreach ($recherche_mots as $mot) {
107 107
 				if (strlen($mot) >= $min_long) {
108 108
 					// echapper les caracteres de regexp qui sont eventuellement dans la recherche
109
-					$recherche_inter .= preg_quote($mot) . ' ';
109
+					$recherche_inter .= preg_quote($mot).' ';
110 110
 				}
111 111
 			}
112 112
 			$recherche_inter = str_replace("\x1", '\s', $recherche_inter);
113 113
 
114 114
 			// mais on cherche quand même l'expression complète, même si elle
115 115
 			// comporte des mots de moins de quatre lettres
116
-			$recherche = rtrim(preg_quote($recherche) . preg_replace(',\s+,' . $u, '|', $recherche_inter), '|');
116
+			$recherche = rtrim(preg_quote($recherche).preg_replace(',\s+,'.$u, '|', $recherche_inter), '|');
117 117
 			$recherche_trans = translitteration($recherche);
118 118
 		}
119 119
 
120
-		$preg = '/' . str_replace('/', '\\/', $recherche_trans) . '/' . $options['preg_flags'];
120
+		$preg = '/'.str_replace('/', '\\/', $recherche_trans).'/'.$options['preg_flags'];
121 121
 	}
122 122
 
123 123
 	// Si la chaine est inactive, on va utiliser LIKE pour aller plus vite
@@ -156,11 +156,11 @@  discard block
 block discarded – undo
156 156
 		}
157 157
 		$q = sql_quote(
158 158
 			"%"
159
-			. preg_replace(",\s+," . $u, "%", $q)
159
+			. preg_replace(",\s+,".$u, "%", $q)
160 160
 			. "%"
161 161
 		);
162 162
 
163
-		$preg = '/' . preg_replace(",\s+," . $u, ".+", trim($recherche_mod)) . '/' . $options['preg_flags'];
163
+		$preg = '/'.preg_replace(",\s+,".$u, ".+", trim($recherche_mod)).'/'.$options['preg_flags'];
164 164
 
165 165
 	} else {
166 166
 		$methode = 'REGEXP';
@@ -207,7 +207,7 @@  discard block
 block discarded – undo
207 207
 // - score pour retourner un score
208 208
 // On peut passer les tables, ou une chaine listant les tables souhaitees
209 209
 // http://doc.spip.org/@recherche_en_base
210
-function recherche_en_base($recherche='', $tables=NULL, $options=array(), $serveur='') {
210
+function recherche_en_base($recherche = '', $tables = NULL, $options = array(), $serveur = '') {
211 211
 	include_spip('base/abstract_sql');
212 212
 
213 213
 	if (!is_array($tables)) {
@@ -216,7 +216,7 @@  discard block
 block discarded – undo
216 216
 		if (is_string($tables)
217 217
 		AND $tables != '') {
218 218
 			$toutes = array();
219
-			foreach(explode(',', $tables) as $t)
219
+			foreach (explode(',', $tables) as $t)
220 220
 				if (isset($liste[$t]))
221 221
 					$toutes[$t] = $liste[$t];
222 222
 			$tables = $toutes;
@@ -268,7 +268,7 @@  discard block
 block discarded – undo
268 268
 		##var_dump($results[$table]);
269 269
 
270 270
 
271
-		spip_log("recherche $table ($recherche) : ".count($results[$table])." resultats ".spip_timer('rech'),'recherche');
271
+		spip_log("recherche $table ($recherche) : ".count($results[$table])." resultats ".spip_timer('rech'), 'recherche');
272 272
 
273 273
 		if (isset($lock))
274 274
 			cache_unlock($lock);
@@ -280,7 +280,7 @@  discard block
 block discarded – undo
280 280
 
281 281
 // Effectue une recherche sur toutes les tables de la base de donnees
282 282
 // http://doc.spip.org/@remplace_en_base
283
-function remplace_en_base($recherche='', $remplace=NULL, $tables=NULL, $options=array()) {
283
+function remplace_en_base($recherche = '', $remplace = NULL, $tables = NULL, $options = array()) {
284 284
 	include_spip('inc/modifier');
285 285
 
286 286
 	// options par defaut
@@ -298,7 +298,7 @@  discard block
 block discarded – undo
298 298
 
299 299
 	$results = recherche_en_base($recherche, $tables, $options);
300 300
 
301
-	$preg = '/'.str_replace('/', '\\/', $recherche).'/' . $options['preg_flags'];
301
+	$preg = '/'.str_replace('/', '\\/', $recherche).'/'.$options['preg_flags'];
302 302
 
303 303
 	foreach ($results as $table => $r) {
304 304
 		$_id_table = id_table_objet($table);
Please login to merge, or discard this patch.
Braces   +30 added lines, -18 removed lines patch added patch discarded remove patch
@@ -11,7 +11,9 @@  discard block
 block discarded – undo
11 11
 \***************************************************************************/
12 12
 
13 13
 
14
-if (!defined('_ECRIRE_INC_VERSION')) return;
14
+if (!defined('_ECRIRE_INC_VERSION')) {
15
+    return;
16
+}
15 17
 
16 18
 
17 19
 // Donne la liste des champs/tables ou l'on sait chercher/remplacer
@@ -216,17 +218,20 @@  discard block
 block discarded – undo
216 218
 		if (is_string($tables)
217 219
 		AND $tables != '') {
218 220
 			$toutes = array();
219
-			foreach(explode(',', $tables) as $t)
220
-				if (isset($liste[$t]))
221
+			foreach(explode(',', $tables) as $t) {
222
+							if (isset($liste[$t]))
221 223
 					$toutes[$t] = $liste[$t];
224
+			}
222 225
 			$tables = $toutes;
223 226
 			unset($toutes);
224
-		} else
225
-			$tables = $liste;
227
+		} else {
228
+					$tables = $liste;
229
+		}
226 230
 	}
227 231
 
228
-	if (!strlen($recherche) OR !count($tables))
229
-		return array();
232
+	if (!strlen($recherche) OR !count($tables)) {
233
+			return array();
234
+	}
230 235
 
231 236
 	include_spip('inc/autoriser');
232 237
 
@@ -254,8 +259,9 @@  discard block
 block discarded – undo
254 259
 	include_spip('inc/memoization');
255 260
 	foreach ($tables as $table => $champs) {
256 261
 		# lock via memoization, si dispo
257
-		if (function_exists('cache_lock'))
258
-			cache_lock($lock = 'recherche '.$table.' '.$recherche);
262
+		if (function_exists('cache_lock')) {
263
+					cache_lock($lock = 'recherche '.$table.' '.$recherche);
264
+		}
259 265
 
260 266
 		spip_timer('rech');
261 267
 
@@ -270,8 +276,9 @@  discard block
 block discarded – undo
270 276
 
271 277
 		spip_log("recherche $table ($recherche) : ".count($results[$table])." resultats ".spip_timer('rech'),'recherche');
272 278
 
273
-		if (isset($lock))
274
-			cache_unlock($lock);
279
+		if (isset($lock)) {
280
+					cache_unlock($lock);
281
+		}
275 282
 	}
276 283
 
277 284
 	return $results;
@@ -293,8 +300,9 @@  discard block
 block discarded – undo
293 300
 	$options['champs'] = true;
294 301
 
295 302
 
296
-	if (!is_array($tables))
297
-		$tables = liste_des_champs();
303
+	if (!is_array($tables)) {
304
+			$tables = liste_des_champs();
305
+	}
298 306
 
299 307
 	$results = recherche_en_base($recherche, $tables, $options);
300 308
 
@@ -307,17 +315,21 @@  discard block
 block discarded – undo
307 315
 			OR autoriser('modifier', $table, $id)) {
308 316
 				$modifs = array();
309 317
 				foreach ($x['champs'] as $key => $val) {
310
-					if ($key == $_id_table) next;
318
+					if ($key == $_id_table) {
319
+					    next;
320
+					}
311 321
 					$repl = preg_replace($preg, $remplace, $val);
312
-					if ($repl <> $val)
313
-						$modifs[$key] = $repl;
322
+					if ($repl <> $val) {
323
+											$modifs[$key] = $repl;
324
+					}
314 325
 				}
315
-				if ($modifs)
316
-					objet_modifier_champs($table, $id,
326
+				if ($modifs) {
327
+									objet_modifier_champs($table, $id,
317 328
 						array(
318 329
 							'champs' => array_keys($modifs),
319 330
 						),
320 331
 						$modifs);
332
+				}
321 333
 			}
322 334
 		}
323 335
 	}
Please login to merge, or discard this patch.
ecrire/inc/presentation_mini.php 2 patches
Indentation   +101 added lines, -101 removed lines patch added patch discarded remove patch
@@ -33,10 +33,10 @@  discard block
 block discarded – undo
33 33
  * @return void
34 34
 **/
35 35
 function echo_log($f, $ret) {
36
-	spip_log("Page " . self() . " function $f: echo ".substr($ret,0,50)."...",'echo');
37
-	echo
38
-	(_SIGNALER_ECHOS?"#Echo par $f#" :"")
39
-		. $ret;
36
+    spip_log("Page " . self() . " function $f: echo ".substr($ret,0,50)."...",'echo');
37
+    echo
38
+    (_SIGNALER_ECHOS?"#Echo par $f#" :"")
39
+        . $ret;
40 40
 }
41 41
 
42 42
 /**
@@ -74,10 +74,10 @@  discard block
 block discarded – undo
74 74
  * @return string Code HTML
75 75
  */
76 76
 function creer_colonne_droite(){
77
-	static $deja_colonne_droite;
78
-	if ($GLOBALS['spip_ecran']!='large' OR $deja_colonne_droite) return '';
79
-	$deja_colonne_droite = true;
80
-	return "\n</div><div id='extra' class='lat' role='complementary'>";
77
+    static $deja_colonne_droite;
78
+    if ($GLOBALS['spip_ecran']!='large' OR $deja_colonne_droite) return '';
79
+    $deja_colonne_droite = true;
80
+    return "\n</div><div id='extra' class='lat' role='complementary'>";
81 81
 }
82 82
 
83 83
 /**
@@ -85,129 +85,129 @@  discard block
 block discarded – undo
85 85
  * @return string Code HTML
86 86
  */
87 87
 function debut_droite() {
88
-	return liste_objets_bloques(_request('exec'))
89
-	  . creer_colonne_droite()
90
-	  . "</div>"
91
-	  . "\n<div id='contenu'>";
88
+    return liste_objets_bloques(_request('exec'))
89
+        . creer_colonne_droite()
90
+        . "</div>"
91
+        . "\n<div id='contenu'>";
92 92
 }
93 93
 
94 94
 // http://doc.spip.org/@liste_articles_bloques
95 95
 function liste_objets_bloques($exec,$contexte=array(),$auteur=null){
96
-	$res = '';
97
-	if ($GLOBALS['meta']["articles_modif"] != "non") {
98
-		include_spip('inc/drapeau_edition');
99
-		if (is_null($auteur))
100
-			$auteur = $GLOBALS['visiteur_session'];
101
-		if ($en_cours=trouver_objet_exec($exec)
102
-			AND $en_cours['edition']
103
-			AND $type = $en_cours['type']
104
-		  AND ($id = $contexte[$en_cours['id_table_objet']] OR $id = _request($en_cours['id_table_objet']))) {
105
-			// marquer le fait que l'objet est ouvert en edition par toto
106
-			// a telle date ; une alerte sera donnee aux autres redacteurs
107
-			signale_edition ($id,  $auteur, $type);
108
-		}
109
-
110
-		$objets_ouverts = liste_drapeau_edition($auteur['id_auteur']);
111
-		if (count($objets_ouverts)) {
112
-			$res .= recuperer_fond('prive/objets/liste/objets-en-edition',array(),array('ajax'=>true));
113
-		}
114
-	}
115
-	return $res;
96
+    $res = '';
97
+    if ($GLOBALS['meta']["articles_modif"] != "non") {
98
+        include_spip('inc/drapeau_edition');
99
+        if (is_null($auteur))
100
+            $auteur = $GLOBALS['visiteur_session'];
101
+        if ($en_cours=trouver_objet_exec($exec)
102
+            AND $en_cours['edition']
103
+            AND $type = $en_cours['type']
104
+          AND ($id = $contexte[$en_cours['id_table_objet']] OR $id = _request($en_cours['id_table_objet']))) {
105
+            // marquer le fait que l'objet est ouvert en edition par toto
106
+            // a telle date ; une alerte sera donnee aux autres redacteurs
107
+            signale_edition ($id,  $auteur, $type);
108
+        }
109
+
110
+        $objets_ouverts = liste_drapeau_edition($auteur['id_auteur']);
111
+        if (count($objets_ouverts)) {
112
+            $res .= recuperer_fond('prive/objets/liste/objets-en-edition',array(),array('ajax'=>true));
113
+        }
114
+    }
115
+    return $res;
116 116
 }
117 117
 
118 118
 // Fin de page de l'interface privee.
119 119
 // Elle comporte une image invisible declenchant une tache de fond
120 120
 // http://doc.spip.org/@fin_page
121 121
 function fin_page(){
122
-	include_spip('inc/pipelines');
123
-	// avec &var_profile=1 on a le tableau de mesures SQL
124
-	$debug = ((_request('exec') !== 'valider_xml')
125
-		AND ((_request('var_mode') == 'debug')
126
-			OR (isset($GLOBALS['tableau_des_temps']) AND $GLOBALS['tableau_des_temps'])
127
-			AND isset($_COOKIE['spip_admin'])));
128
-	$t = '</div><div id="pied"><div class="largeur">'
129
-	. recuperer_fond('prive/squelettes/inclure/pied')
130
-	. "</div>"
131
-	. "</div></div>" // cf. div#page et div.largeur ouvertes dans conmmencer_page()
132
-	. ($debug?erreur_squelette():'')
133
-	. "</body></html>\n";
134
-	return f_queue($t);
122
+    include_spip('inc/pipelines');
123
+    // avec &var_profile=1 on a le tableau de mesures SQL
124
+    $debug = ((_request('exec') !== 'valider_xml')
125
+        AND ((_request('var_mode') == 'debug')
126
+            OR (isset($GLOBALS['tableau_des_temps']) AND $GLOBALS['tableau_des_temps'])
127
+            AND isset($_COOKIE['spip_admin'])));
128
+    $t = '</div><div id="pied"><div class="largeur">'
129
+    . recuperer_fond('prive/squelettes/inclure/pied')
130
+    . "</div>"
131
+    . "</div></div>" // cf. div#page et div.largeur ouvertes dans conmmencer_page()
132
+    . ($debug?erreur_squelette():'')
133
+    . "</body></html>\n";
134
+    return f_queue($t);
135 135
 }
136 136
 
137 137
 function html_tests_js(){
138
-	if (_SPIP_AJAX AND !defined('_TESTER_NOSCRIPT')) {
139
-	  // pour le pied de page (deja defini si on est validation XML)
140
-		define('_TESTER_NOSCRIPT',
141
-			"<noscript>\n<div style='display:none;'><img src='"
142
-		        . generer_url_ecrire('test_ajax', 'js=-1')
143
-		        . "' width='1' height='1' alt='' /></div></noscript>\n");
144
-	}
145
-	return
146
-		(defined('_SESSION_REJOUER') ? _SESSION_REJOUER : '')
147
-	. (defined('_TESTER_NOSCRIPT') ? _TESTER_NOSCRIPT : '');
138
+    if (_SPIP_AJAX AND !defined('_TESTER_NOSCRIPT')) {
139
+        // pour le pied de page (deja defini si on est validation XML)
140
+        define('_TESTER_NOSCRIPT',
141
+            "<noscript>\n<div style='display:none;'><img src='"
142
+                . generer_url_ecrire('test_ajax', 'js=-1')
143
+                . "' width='1' height='1' alt='' /></div></noscript>\n");
144
+    }
145
+    return
146
+        (defined('_SESSION_REJOUER') ? _SESSION_REJOUER : '')
147
+    . (defined('_TESTER_NOSCRIPT') ? _TESTER_NOSCRIPT : '');
148 148
 }
149 149
 
150 150
 function info_maj_spip(){
151 151
 
152
-	$maj = $GLOBALS['meta']['info_maj_spip'];
153
-	if (!$maj)
154
-		return "";
152
+    $maj = $GLOBALS['meta']['info_maj_spip'];
153
+    if (!$maj)
154
+        return "";
155 155
 
156
-	$maj = explode('|',$maj);
157
-	// c'est une ancienne notif, on a fait la maj depuis !
158
-	if ($GLOBALS['spip_version_branche']!==reset($maj))
159
-		return "";
156
+    $maj = explode('|',$maj);
157
+    // c'est une ancienne notif, on a fait la maj depuis !
158
+    if ($GLOBALS['spip_version_branche']!==reset($maj))
159
+        return "";
160 160
 
161
-	if (!autoriser('webmestre'))
162
-		return "";
161
+    if (!autoriser('webmestre'))
162
+        return "";
163 163
 
164
-	array_shift($maj);
165
-	$maj = implode('|',$maj);
164
+    array_shift($maj);
165
+    $maj = implode('|',$maj);
166 166
 
167
-	return "$maj<br />";
167
+    return "$maj<br />";
168 168
 }
169 169
 
170 170
 // http://doc.spip.org/@info_copyright
171 171
 function info_copyright() {
172
-	global $spip_version_affichee, $spip_lang;
173
-
174
-	$version = $spip_version_affichee;
175
-
176
-	//
177
-	// Mention, le cas echeant, de la revision SVN courante
178
-	//
179
-	if ($svn_revision = version_svn_courante(_DIR_RACINE)) {
180
-		$version .= ' ' . (($svn_revision < 0) ? 'SVN ':'')
181
-		. "[<a href='http://core.spip.net/projects/spip/repository/revisions/"
182
-		. abs($svn_revision) . "' target=\"_blank\" rel=\"noopener noreferrer\">"
183
-		. abs($svn_revision) . "</a>]";
184
-	}
185
-
186
-	// et la version de l'ecran de securite
187
-	$secu = defined('_ECRAN_SECURITE')
188
-		? "<br />"._T('ecran_securite',array('version'=>_ECRAN_SECURITE))
189
-		: '';
190
-
191
-	return _T('info_copyright',
192
-		   array('spip' => "<b>SPIP $version</b> ",
193
-			 'lien_gpl' =>
194
-			 "<a href='". generer_url_ecrire("aide", "aide=licence&var_lang=$spip_lang") . "' onclick=\"window.open(this.href, 'spip_aide', 'scrollbars=yes,resizable=yes,width=740,height=580'); return false;\">" . _T('info_copyright_gpl')."</a>"))
195
-		. $secu;
172
+    global $spip_version_affichee, $spip_lang;
173
+
174
+    $version = $spip_version_affichee;
175
+
176
+    //
177
+    // Mention, le cas echeant, de la revision SVN courante
178
+    //
179
+    if ($svn_revision = version_svn_courante(_DIR_RACINE)) {
180
+        $version .= ' ' . (($svn_revision < 0) ? 'SVN ':'')
181
+        . "[<a href='http://core.spip.net/projects/spip/repository/revisions/"
182
+        . abs($svn_revision) . "' target=\"_blank\" rel=\"noopener noreferrer\">"
183
+        . abs($svn_revision) . "</a>]";
184
+    }
185
+
186
+    // et la version de l'ecran de securite
187
+    $secu = defined('_ECRAN_SECURITE')
188
+        ? "<br />"._T('ecran_securite',array('version'=>_ECRAN_SECURITE))
189
+        : '';
190
+
191
+    return _T('info_copyright',
192
+            array('spip' => "<b>SPIP $version</b> ",
193
+                'lien_gpl' =>
194
+                "<a href='". generer_url_ecrire("aide", "aide=licence&var_lang=$spip_lang") . "' onclick=\"window.open(this.href, 'spip_aide', 'scrollbars=yes,resizable=yes,width=740,height=580'); return false;\">" . _T('info_copyright_gpl')."</a>"))
195
+        . $secu;
196 196
 
197 197
 }
198 198
 
199 199
 // http://doc.spip.org/@formulaire_recherche
200 200
 function formulaire_recherche($page, $complement=""){
201
-	$recherche = _request('recherche');
202
-	$recherche_aff = entites_html($recherche);
203
-	if (!strlen($recherche)) {
204
-		$recherche_aff = _T('info_rechercher');
205
-		$onfocus = " onfocus=\"this.value='';\"";
206
-	} else $onfocus = '';
207
-
208
-	$form = '<input type="text" size="10" value="'.$recherche_aff.'" name="recherche" class="recherche" accesskey="r"' . $onfocus . ' />';
209
-	$form .= "<input type='image' src='" . chemin_image('rechercher-20.png') . "' name='submit' class='submit' alt='"._T('info_rechercher')."' />";
210
-	return "<div class='spip_recherche'>".generer_form_ecrire($page, $form . $complement, " method='get'")."</div>";
201
+    $recherche = _request('recherche');
202
+    $recherche_aff = entites_html($recherche);
203
+    if (!strlen($recherche)) {
204
+        $recherche_aff = _T('info_rechercher');
205
+        $onfocus = " onfocus=\"this.value='';\"";
206
+    } else $onfocus = '';
207
+
208
+    $form = '<input type="text" size="10" value="'.$recherche_aff.'" name="recherche" class="recherche" accesskey="r"' . $onfocus . ' />';
209
+    $form .= "<input type='image' src='" . chemin_image('rechercher-20.png') . "' name='submit' class='submit' alt='"._T('info_rechercher')."' />";
210
+    return "<div class='spip_recherche'>".generer_form_ecrire($page, $form . $complement, " method='get'")."</div>";
211 211
 }
212 212
 
213 213
 ?>
Please login to merge, or discard this patch.
Spacing   +28 added lines, -28 removed lines patch added patch discarded remove patch
@@ -33,9 +33,9 @@  discard block
 block discarded – undo
33 33
  * @return void
34 34
 **/
35 35
 function echo_log($f, $ret) {
36
-	spip_log("Page " . self() . " function $f: echo ".substr($ret,0,50)."...",'echo');
36
+	spip_log("Page ".self()." function $f: echo ".substr($ret, 0, 50)."...", 'echo');
37 37
 	echo
38
-	(_SIGNALER_ECHOS?"#Echo par $f#" :"")
38
+	(_SIGNALER_ECHOS ? "#Echo par $f#" : "")
39 39
 		. $ret;
40 40
 }
41 41
 
@@ -43,13 +43,13 @@  discard block
 block discarded – undo
43 43
  * Retourne le code HTML d'un début de cadre pour le centre de page (haut de page)
44 44
  * @return string Code HTML
45 45
  */
46
-function debut_grand_cadre(){ return "\n<div class='table_page'>\n";}
46
+function debut_grand_cadre() { return "\n<div class='table_page'>\n"; }
47 47
 
48 48
 /**
49 49
  * Retourne le code HTML d'une fin de cadre pour le centre de page (haut de page)
50 50
  * @return string Code HTML
51 51
  */
52
-function fin_grand_cadre(){ return "\n</div>";}
52
+function fin_grand_cadre() { return "\n</div>"; }
53 53
 
54 54
 // Debut de la colonne de gauche
55 55
 // div navigation fermee par creer_colonne_droite qui ouvre
@@ -61,21 +61,21 @@  discard block
 block discarded – undo
61 61
  * Retourne le code HTML du début de la colonne gauche
62 62
  * @return string Code HTML
63 63
  */
64
-function debut_gauche() {	return "<div id='conteneur' class=''>\n<div id='navigation' class='lat' role='contentinfo'>\n";}
64
+function debut_gauche() {	return "<div id='conteneur' class=''>\n<div id='navigation' class='lat' role='contentinfo'>\n"; }
65 65
 
66 66
 /**
67 67
  * Retourne le code HTML de la fin de la colonne
68 68
  * @return string Code HTML
69 69
  */
70
-function fin_gauche(){return "</div></div><br class='nettoyeur' />";}
70
+function fin_gauche() {return "</div></div><br class='nettoyeur' />"; }
71 71
 
72 72
 /**
73 73
  * Retourne le code HTML du changement de colonne (passer de la gauche à la droite)
74 74
  * @return string Code HTML
75 75
  */
76
-function creer_colonne_droite(){
76
+function creer_colonne_droite() {
77 77
 	static $deja_colonne_droite;
78
-	if ($GLOBALS['spip_ecran']!='large' OR $deja_colonne_droite) return '';
78
+	if ($GLOBALS['spip_ecran'] != 'large' OR $deja_colonne_droite) return '';
79 79
 	$deja_colonne_droite = true;
80 80
 	return "\n</div><div id='extra' class='lat' role='complementary'>";
81 81
 }
@@ -92,24 +92,24 @@  discard block
 block discarded – undo
92 92
 }
93 93
 
94 94
 // http://doc.spip.org/@liste_articles_bloques
95
-function liste_objets_bloques($exec,$contexte=array(),$auteur=null){
95
+function liste_objets_bloques($exec, $contexte = array(), $auteur = null) {
96 96
 	$res = '';
97 97
 	if ($GLOBALS['meta']["articles_modif"] != "non") {
98 98
 		include_spip('inc/drapeau_edition');
99 99
 		if (is_null($auteur))
100 100
 			$auteur = $GLOBALS['visiteur_session'];
101
-		if ($en_cours=trouver_objet_exec($exec)
101
+		if ($en_cours = trouver_objet_exec($exec)
102 102
 			AND $en_cours['edition']
103 103
 			AND $type = $en_cours['type']
104 104
 		  AND ($id = $contexte[$en_cours['id_table_objet']] OR $id = _request($en_cours['id_table_objet']))) {
105 105
 			// marquer le fait que l'objet est ouvert en edition par toto
106 106
 			// a telle date ; une alerte sera donnee aux autres redacteurs
107
-			signale_edition ($id,  $auteur, $type);
107
+			signale_edition($id, $auteur, $type);
108 108
 		}
109 109
 
110 110
 		$objets_ouverts = liste_drapeau_edition($auteur['id_auteur']);
111 111
 		if (count($objets_ouverts)) {
112
-			$res .= recuperer_fond('prive/objets/liste/objets-en-edition',array(),array('ajax'=>true));
112
+			$res .= recuperer_fond('prive/objets/liste/objets-en-edition', array(), array('ajax'=>true));
113 113
 		}
114 114
 	}
115 115
 	return $res;
@@ -118,7 +118,7 @@  discard block
 block discarded – undo
118 118
 // Fin de page de l'interface privee.
119 119
 // Elle comporte une image invisible declenchant une tache de fond
120 120
 // http://doc.spip.org/@fin_page
121
-function fin_page(){
121
+function fin_page() {
122 122
 	include_spip('inc/pipelines');
123 123
 	// avec &var_profile=1 on a le tableau de mesures SQL
124 124
 	$debug = ((_request('exec') !== 'valider_xml')
@@ -129,12 +129,12 @@  discard block
 block discarded – undo
129 129
 	. recuperer_fond('prive/squelettes/inclure/pied')
130 130
 	. "</div>"
131 131
 	. "</div></div>" // cf. div#page et div.largeur ouvertes dans conmmencer_page()
132
-	. ($debug?erreur_squelette():'')
132
+	. ($debug ?erreur_squelette() : '')
133 133
 	. "</body></html>\n";
134 134
 	return f_queue($t);
135 135
 }
136 136
 
137
-function html_tests_js(){
137
+function html_tests_js() {
138 138
 	if (_SPIP_AJAX AND !defined('_TESTER_NOSCRIPT')) {
139 139
 	  // pour le pied de page (deja defini si on est validation XML)
140 140
 		define('_TESTER_NOSCRIPT',
@@ -147,22 +147,22 @@  discard block
 block discarded – undo
147 147
 	. (defined('_TESTER_NOSCRIPT') ? _TESTER_NOSCRIPT : '');
148 148
 }
149 149
 
150
-function info_maj_spip(){
150
+function info_maj_spip() {
151 151
 
152 152
 	$maj = $GLOBALS['meta']['info_maj_spip'];
153 153
 	if (!$maj)
154 154
 		return "";
155 155
 
156
-	$maj = explode('|',$maj);
156
+	$maj = explode('|', $maj);
157 157
 	// c'est une ancienne notif, on a fait la maj depuis !
158
-	if ($GLOBALS['spip_version_branche']!==reset($maj))
158
+	if ($GLOBALS['spip_version_branche'] !== reset($maj))
159 159
 		return "";
160 160
 
161 161
 	if (!autoriser('webmestre'))
162 162
 		return "";
163 163
 
164 164
 	array_shift($maj);
165
-	$maj = implode('|',$maj);
165
+	$maj = implode('|', $maj);
166 166
 
167 167
 	return "$maj<br />";
168 168
 }
@@ -177,27 +177,27 @@  discard block
 block discarded – undo
177 177
 	// Mention, le cas echeant, de la revision SVN courante
178 178
 	//
179 179
 	if ($svn_revision = version_svn_courante(_DIR_RACINE)) {
180
-		$version .= ' ' . (($svn_revision < 0) ? 'SVN ':'')
180
+		$version .= ' '.(($svn_revision < 0) ? 'SVN ' : '')
181 181
 		. "[<a href='http://core.spip.net/projects/spip/repository/revisions/"
182
-		. abs($svn_revision) . "' target=\"_blank\" rel=\"noopener noreferrer\">"
183
-		. abs($svn_revision) . "</a>]";
182
+		. abs($svn_revision)."' target=\"_blank\" rel=\"noopener noreferrer\">"
183
+		. abs($svn_revision)."</a>]";
184 184
 	}
185 185
 
186 186
 	// et la version de l'ecran de securite
187 187
 	$secu = defined('_ECRAN_SECURITE')
188
-		? "<br />"._T('ecran_securite',array('version'=>_ECRAN_SECURITE))
188
+		? "<br />"._T('ecran_securite', array('version'=>_ECRAN_SECURITE))
189 189
 		: '';
190 190
 
191 191
 	return _T('info_copyright',
192 192
 		   array('spip' => "<b>SPIP $version</b> ",
193 193
 			 'lien_gpl' =>
194
-			 "<a href='". generer_url_ecrire("aide", "aide=licence&var_lang=$spip_lang") . "' onclick=\"window.open(this.href, 'spip_aide', 'scrollbars=yes,resizable=yes,width=740,height=580'); return false;\">" . _T('info_copyright_gpl')."</a>"))
194
+			 "<a href='".generer_url_ecrire("aide", "aide=licence&var_lang=$spip_lang")."' onclick=\"window.open(this.href, 'spip_aide', 'scrollbars=yes,resizable=yes,width=740,height=580'); return false;\">"._T('info_copyright_gpl')."</a>"))
195 195
 		. $secu;
196 196
 
197 197
 }
198 198
 
199 199
 // http://doc.spip.org/@formulaire_recherche
200
-function formulaire_recherche($page, $complement=""){
200
+function formulaire_recherche($page, $complement = "") {
201 201
 	$recherche = _request('recherche');
202 202
 	$recherche_aff = entites_html($recherche);
203 203
 	if (!strlen($recherche)) {
@@ -205,9 +205,9 @@  discard block
 block discarded – undo
205 205
 		$onfocus = " onfocus=\"this.value='';\"";
206 206
 	} else $onfocus = '';
207 207
 
208
-	$form = '<input type="text" size="10" value="'.$recherche_aff.'" name="recherche" class="recherche" accesskey="r"' . $onfocus . ' />';
209
-	$form .= "<input type='image' src='" . chemin_image('rechercher-20.png') . "' name='submit' class='submit' alt='"._T('info_rechercher')."' />";
210
-	return "<div class='spip_recherche'>".generer_form_ecrire($page, $form . $complement, " method='get'")."</div>";
208
+	$form = '<input type="text" size="10" value="'.$recherche_aff.'" name="recherche" class="recherche" accesskey="r"'.$onfocus.' />';
209
+	$form .= "<input type='image' src='".chemin_image('rechercher-20.png')."' name='submit' class='submit' alt='"._T('info_rechercher')."' />";
210
+	return "<div class='spip_recherche'>".generer_form_ecrire($page, $form.$complement, " method='get'")."</div>";
211 211
 }
212 212
 
213 213
 ?>
Please login to merge, or discard this patch.
ecrire/inc/informer.php 2 patches
Indentation   +46 added lines, -46 removed lines patch added patch discarded remove patch
@@ -17,57 +17,57 @@
 block discarded – undo
17 17
 // http://doc.spip.org/@inc_informer_dist
18 18
 function inc_informer_dist($id, $col, $exclus, $rac, $type, $do='aff')
19 19
 {
20
-	include_spip('inc/texte');
21
-	if ($type == "rubrique") {
22
-		$row = sql_fetsel("titre, descriptif", "spip_rubriques", "id_rubrique = " . intval($id));
23
-		if ($row) {
24
-			$titre = typo($row["titre"]);
25
-			$descriptif = propre($row["descriptif"]);
26
-		} else {
27
-			$titre = _T('info_racine_site');
28
-		}
29
-	} else
30
-		$titre = '';
20
+    include_spip('inc/texte');
21
+    if ($type == "rubrique") {
22
+        $row = sql_fetsel("titre, descriptif", "spip_rubriques", "id_rubrique = " . intval($id));
23
+        if ($row) {
24
+            $titre = typo($row["titre"]);
25
+            $descriptif = propre($row["descriptif"]);
26
+        } else {
27
+            $titre = _T('info_racine_site');
28
+        }
29
+    } else
30
+        $titre = '';
31 31
 
32
-	$res = '';
33
-	if ($type == "rubrique" AND $GLOBALS['spip_display'] != 1 AND isset($GLOBALS['meta']['image_process']))
34
-	  if ($GLOBALS['meta']['image_process'] != "non") {
35
-		$chercher_logo = charger_fonction('chercher_logo', 'inc');
36
-		if ($res = $chercher_logo($id, 'id_rubrique', 'on'))  {
37
-			list($fid, $dir, $nom, $format) = $res;
38
-			include_spip('inc/filtres_images_mini');
39
-			$res = image_reduire("<img src='$fid' alt='' />", 100, 48);
40
-			if ($res)
41
-				$res =  "<div style='float: ".$GLOBALS['spip_lang_right']."; margin-".$GLOBALS['spip_lang_right'].": -5px; margin-top: -5px;'>$res</div>";
42
-		}
43
-	}
32
+    $res = '';
33
+    if ($type == "rubrique" AND $GLOBALS['spip_display'] != 1 AND isset($GLOBALS['meta']['image_process']))
34
+        if ($GLOBALS['meta']['image_process'] != "non") {
35
+        $chercher_logo = charger_fonction('chercher_logo', 'inc');
36
+        if ($res = $chercher_logo($id, 'id_rubrique', 'on'))  {
37
+            list($fid, $dir, $nom, $format) = $res;
38
+            include_spip('inc/filtres_images_mini');
39
+            $res = image_reduire("<img src='$fid' alt='' />", 100, 48);
40
+            if ($res)
41
+                $res =  "<div style='float: ".$GLOBALS['spip_lang_right']."; margin-".$GLOBALS['spip_lang_right'].": -5px; margin-top: -5px;'>$res</div>";
42
+        }
43
+    }
44 44
 
45
-	$rac = spip_htmlentities($rac, ENT_QUOTES);
46
-	$do = spip_htmlentities($do, ENT_QUOTES);
47
-	$id = intval($id);
45
+    $rac = spip_htmlentities($rac, ENT_QUOTES);
46
+    $do = spip_htmlentities($do, ENT_QUOTES);
47
+    $id = intval($id);
48 48
 
49 49
 # ce lien provoque la selection (directe) de la rubrique cliquee
50 50
 # et l'affichage de son titre dans le bandeau
51
-	$titre = strtr(str_replace("'", "&#8217;",
52
-			str_replace('"', "&#34;", textebrut($titre))),
53
-		       "\n\r", "  ");
51
+    $titre = strtr(str_replace("'", "&#8217;",
52
+            str_replace('"', "&#34;", textebrut($titre))),
53
+                "\n\r", "  ");
54 54
 
55
-	$js_func = $do . '_selection_titre';
56
-	return "<div style='display: none;'>"
57
-	. "<input type='text' id='".$rac."_sel' value='$id' />"
58
-	. "<input type='text' id='".$rac."_sel2' value=\""
59
-	. entites_html($titre)
60
-	. "\" />"
61
-	. "</div>"
62
-	. "<div class='informer' style='padding: 5px; border-top: 0px;'>"
63
-	. (!$res ? '' : $res)
64
-	. "<p><b>".safehtml($titre)."</b></p>"
65
-	. (!$descriptif ? '' : "<div>".safehtml($descriptif)."</div>")
66
-	. "<div style='text-align: ".$GLOBALS['spip_lang_right'].";'>"
67
-	. "<input type='submit' class='fondo' value='"
68
-	. _T('bouton_choisir')
69
-	. "'\nonclick=\"$js_func('$titre',$id,'selection_rubrique','id_parent'); return false;\" />"
70
-	.  "</div>"
71
-	.  "</div>";
55
+    $js_func = $do . '_selection_titre';
56
+    return "<div style='display: none;'>"
57
+    . "<input type='text' id='".$rac."_sel' value='$id' />"
58
+    . "<input type='text' id='".$rac."_sel2' value=\""
59
+    . entites_html($titre)
60
+    . "\" />"
61
+    . "</div>"
62
+    . "<div class='informer' style='padding: 5px; border-top: 0px;'>"
63
+    . (!$res ? '' : $res)
64
+    . "<p><b>".safehtml($titre)."</b></p>"
65
+    . (!$descriptif ? '' : "<div>".safehtml($descriptif)."</div>")
66
+    . "<div style='text-align: ".$GLOBALS['spip_lang_right'].";'>"
67
+    . "<input type='submit' class='fondo' value='"
68
+    . _T('bouton_choisir')
69
+    . "'\nonclick=\"$js_func('$titre',$id,'selection_rubrique','id_parent'); return false;\" />"
70
+    .  "</div>"
71
+    .  "</div>";
72 72
 }
73 73
 ?>
Please login to merge, or discard this patch.
Spacing   +5 added lines, -5 removed lines patch added patch discarded remove patch
@@ -15,11 +15,11 @@  discard block
 block discarded – undo
15 15
 # Les information d'une rubrique selectionnee dans le mini navigateur
16 16
 
17 17
 // http://doc.spip.org/@inc_informer_dist
18
-function inc_informer_dist($id, $col, $exclus, $rac, $type, $do='aff')
18
+function inc_informer_dist($id, $col, $exclus, $rac, $type, $do = 'aff')
19 19
 {
20 20
 	include_spip('inc/texte');
21 21
 	if ($type == "rubrique") {
22
-		$row = sql_fetsel("titre, descriptif", "spip_rubriques", "id_rubrique = " . intval($id));
22
+		$row = sql_fetsel("titre, descriptif", "spip_rubriques", "id_rubrique = ".intval($id));
23 23
 		if ($row) {
24 24
 			$titre = typo($row["titre"]);
25 25
 			$descriptif = propre($row["descriptif"]);
@@ -33,12 +33,12 @@  discard block
 block discarded – undo
33 33
 	if ($type == "rubrique" AND $GLOBALS['spip_display'] != 1 AND isset($GLOBALS['meta']['image_process']))
34 34
 	  if ($GLOBALS['meta']['image_process'] != "non") {
35 35
 		$chercher_logo = charger_fonction('chercher_logo', 'inc');
36
-		if ($res = $chercher_logo($id, 'id_rubrique', 'on'))  {
36
+		if ($res = $chercher_logo($id, 'id_rubrique', 'on')) {
37 37
 			list($fid, $dir, $nom, $format) = $res;
38 38
 			include_spip('inc/filtres_images_mini');
39 39
 			$res = image_reduire("<img src='$fid' alt='' />", 100, 48);
40 40
 			if ($res)
41
-				$res =  "<div style='float: ".$GLOBALS['spip_lang_right']."; margin-".$GLOBALS['spip_lang_right'].": -5px; margin-top: -5px;'>$res</div>";
41
+				$res = "<div style='float: ".$GLOBALS['spip_lang_right']."; margin-".$GLOBALS['spip_lang_right'].": -5px; margin-top: -5px;'>$res</div>";
42 42
 		}
43 43
 	}
44 44
 
@@ -52,7 +52,7 @@  discard block
 block discarded – undo
52 52
 			str_replace('"', "&#34;", textebrut($titre))),
53 53
 		       "\n\r", "  ");
54 54
 
55
-	$js_func = $do . '_selection_titre';
55
+	$js_func = $do.'_selection_titre';
56 56
 	return "<div style='display: none;'>"
57 57
 	. "<input type='text' id='".$rac."_sel' value='$id' />"
58 58
 	. "<input type='text' id='".$rac."_sel2' value=\""
Please login to merge, or discard this patch.
ecrire/public/assembler.php 3 patches
Indentation   +464 added lines, -464 removed lines patch added patch discarded remove patch
@@ -22,132 +22,132 @@  discard block
 block discarded – undo
22 22
 // http://doc.spip.org/@assembler
23 23
 function assembler($fond, $connect='') {
24 24
 
25
-	// flag_preserver est modifie ici, et utilise en globale
26
-	// use_cache sert a informer le bouton d'admin pr savoir s'il met un *
27
-	// contexte est utilise en globale dans le formulaire d'admin
28
-	global $flag_preserver, $use_cache, $contexte;
29
-
30
-	$contexte = calculer_contexte();
31
-	$page = array('contexte_implicite'=>calculer_contexte_implicite());
32
-	$page['contexte_implicite']['cache'] = $fond . preg_replace(',\.[a-zA-Z0-9]*$,', '', preg_replace('/[?].*$/', '', $GLOBALS['REQUEST_URI']));
33
-	// Cette fonction est utilisee deux fois
34
-	$cacher = charger_fonction('cacher', 'public', true);
35
-	// Les quatre derniers parametres sont modifies par la fonction:
36
-	// emplacement, validite, et, s'il est valide, contenu & age
37
-	if ($cacher)
38
-		$res = $cacher($GLOBALS['contexte'], $use_cache, $chemin_cache, $page, $lastmodified);
39
-	else
40
-		$use_cache = -1;
41
-	// Si un resultat est retourne, c'est un message d'impossibilite
42
-	if ($res) {return array('texte' => $res);}
43
-
44
-	if (!$chemin_cache || !$lastmodified) $lastmodified = time();
45
-
46
-	$headers_only = ($_SERVER['REQUEST_METHOD'] == 'HEAD');
47
-	$calculer_page = true;
48
-
49
-	// Pour les pages non-dynamiques (indiquees par #CACHE{duree,cache-client})
50
-	// une perennite valide a meme reponse qu'une requete HEAD (par defaut les
51
-	// pages sont dynamiques)
52
-	if (isset($_SERVER['HTTP_IF_MODIFIED_SINCE'])
53
-	AND (!defined('_VAR_MODE') OR !_VAR_MODE)
54
-	AND $chemin_cache
55
-	AND isset($page['entetes'])
56
-	AND isset($page['entetes']['Cache-Control'])
57
-	AND strstr($page['entetes']['Cache-Control'],'max-age=')
58
-	AND !strstr($_SERVER['SERVER_SOFTWARE'],'IIS/')
59
-	) {
60
-		$since = preg_replace('/;.*/', '',
61
-			$_SERVER['HTTP_IF_MODIFIED_SINCE']);
62
-		$since = str_replace('GMT', '', $since);
63
-		if (trim($since) == gmdate("D, d M Y H:i:s", $lastmodified)) {
64
-			$page['status'] = 304;
65
-			$headers_only = true;
66
-			$calculer_page = false;
67
-		}
68
-	}
69
-
70
-	// Si requete HEAD ou Last-modified compatible, ignorer le texte
71
-	// et pas de content-type (pour contrer le bouton admin de inc-public)
72
-	if (!$calculer_page) {
73
-		$page['texte'] = "";
74
-	} else {
75
-		// si la page est prise dans le cache
76
-		if (!$use_cache)  {
77
-			// Informer les boutons d'admin du contexte
78
-			// (fourni par urls_decoder_url ci-dessous lors de la mise en cache)
79
-			$contexte = $page['contexte'];
80
-
81
-			// vider les globales url propres qui ne doivent plus etre utilisees en cas
82
-			// d'inversion url => objet
83
-			// plus necessaire si on utilise bien la fonction urls_decoder_url
84
-			#unset($_SERVER['REDIRECT_url_propre']);
85
-			#unset($_ENV['url_propre']);
86
-		}
87
-		else {
88
-			// Compat ascendante :
89
-			// 1. $contexte est global
90
-			// (a evacuer car urls_decoder_url gere ce probleme ?)
91
-			// et calculer la page
92
-			if (!test_espace_prive()) {
93
-				include_spip('inc/urls');
94
-				list($fond,$contexte,$url_redirect) = urls_decoder_url(nettoyer_uri(),$fond,$contexte,true);
95
-			}
96
-			// squelette par defaut
97
-			if (!strlen($fond))
98
-				$fond = 'sommaire';
99
-
100
-			// produire la page : peut mettre a jour $lastmodified
101
-			$produire_page = charger_fonction('produire_page','public');
102
-			$page = $produire_page($fond, $contexte, $use_cache, $chemin_cache, NULL, $page, $lastmodified, $connect);
103
-			if ($page === '') {
104
-				$erreur = _T('info_erreur_squelette2',
105
-					array('fichier'=>spip_htmlspecialchars($fond).'.'._EXTENSION_SQUELETTES));
106
-				erreur_squelette($erreur);
107
-				// eviter des erreurs strictes ensuite sur $page['cle'] en PHP >= 5.4
108
-				$page = array('texte' => '', 'erreur' => $erreur);
109
-			}
110
-		}
111
-
112
-		if ($page AND $chemin_cache) $page['cache'] = $chemin_cache;
113
-
114
-		auto_content_type($page);
115
-
116
-		$flag_preserver |=  headers_sent();
117
-
118
-		// Definir les entetes si ce n'est fait 
119
-		if (!$flag_preserver) {
120
-			if ($GLOBALS['flag_ob']) {
121
-				// Si la page est vide, produire l'erreur 404 ou message d'erreur pour les inclusions
122
-				if (trim($page['texte']) === ''
123
-				AND _VAR_MODE != 'debug'
124
-				AND !isset($page['entetes']['Location']) // cette page realise une redirection, donc pas d'erreur
125
-				) {
126
-					$contexte['fond_erreur'] = $fond;
127
-				  $page = message_page_indisponible($page, $contexte);
128
-				}
129
-				// pas de cache client en mode 'observation'
130
-				if (defined('_VAR_MODE') AND _VAR_MODE) {
131
-					$page['entetes']["Cache-Control"]= "no-cache,must-revalidate";
132
-					$page['entetes']["Pragma"] = "no-cache";
133
-				}
134
-			}
135
-		}
136
-	}
137
-
138
-	// Entete Last-Modified:
139
-	// eviter d'etre incoherent en envoyant un lastmodified identique
140
-	// a celui qu'on a refuse d'honorer plus haut (cf. #655)
141
-	if ($lastmodified
142
-	AND !isset($_SERVER['HTTP_IF_MODIFIED_SINCE'])
143
-	AND !isset($page['entetes']["Last-Modified"]))
144
-		$page['entetes']["Last-Modified"]=gmdate("D, d M Y H:i:s", $lastmodified)." GMT";
145
-
146
-	// fermer la connexion apres les headers si requete HEAD
147
-	if ($headers_only)
148
-		$page['entetes']["Connection"] = "close";
149
-
150
-	return $page;
25
+    // flag_preserver est modifie ici, et utilise en globale
26
+    // use_cache sert a informer le bouton d'admin pr savoir s'il met un *
27
+    // contexte est utilise en globale dans le formulaire d'admin
28
+    global $flag_preserver, $use_cache, $contexte;
29
+
30
+    $contexte = calculer_contexte();
31
+    $page = array('contexte_implicite'=>calculer_contexte_implicite());
32
+    $page['contexte_implicite']['cache'] = $fond . preg_replace(',\.[a-zA-Z0-9]*$,', '', preg_replace('/[?].*$/', '', $GLOBALS['REQUEST_URI']));
33
+    // Cette fonction est utilisee deux fois
34
+    $cacher = charger_fonction('cacher', 'public', true);
35
+    // Les quatre derniers parametres sont modifies par la fonction:
36
+    // emplacement, validite, et, s'il est valide, contenu & age
37
+    if ($cacher)
38
+        $res = $cacher($GLOBALS['contexte'], $use_cache, $chemin_cache, $page, $lastmodified);
39
+    else
40
+        $use_cache = -1;
41
+    // Si un resultat est retourne, c'est un message d'impossibilite
42
+    if ($res) {return array('texte' => $res);}
43
+
44
+    if (!$chemin_cache || !$lastmodified) $lastmodified = time();
45
+
46
+    $headers_only = ($_SERVER['REQUEST_METHOD'] == 'HEAD');
47
+    $calculer_page = true;
48
+
49
+    // Pour les pages non-dynamiques (indiquees par #CACHE{duree,cache-client})
50
+    // une perennite valide a meme reponse qu'une requete HEAD (par defaut les
51
+    // pages sont dynamiques)
52
+    if (isset($_SERVER['HTTP_IF_MODIFIED_SINCE'])
53
+    AND (!defined('_VAR_MODE') OR !_VAR_MODE)
54
+    AND $chemin_cache
55
+    AND isset($page['entetes'])
56
+    AND isset($page['entetes']['Cache-Control'])
57
+    AND strstr($page['entetes']['Cache-Control'],'max-age=')
58
+    AND !strstr($_SERVER['SERVER_SOFTWARE'],'IIS/')
59
+    ) {
60
+        $since = preg_replace('/;.*/', '',
61
+            $_SERVER['HTTP_IF_MODIFIED_SINCE']);
62
+        $since = str_replace('GMT', '', $since);
63
+        if (trim($since) == gmdate("D, d M Y H:i:s", $lastmodified)) {
64
+            $page['status'] = 304;
65
+            $headers_only = true;
66
+            $calculer_page = false;
67
+        }
68
+    }
69
+
70
+    // Si requete HEAD ou Last-modified compatible, ignorer le texte
71
+    // et pas de content-type (pour contrer le bouton admin de inc-public)
72
+    if (!$calculer_page) {
73
+        $page['texte'] = "";
74
+    } else {
75
+        // si la page est prise dans le cache
76
+        if (!$use_cache)  {
77
+            // Informer les boutons d'admin du contexte
78
+            // (fourni par urls_decoder_url ci-dessous lors de la mise en cache)
79
+            $contexte = $page['contexte'];
80
+
81
+            // vider les globales url propres qui ne doivent plus etre utilisees en cas
82
+            // d'inversion url => objet
83
+            // plus necessaire si on utilise bien la fonction urls_decoder_url
84
+            #unset($_SERVER['REDIRECT_url_propre']);
85
+            #unset($_ENV['url_propre']);
86
+        }
87
+        else {
88
+            // Compat ascendante :
89
+            // 1. $contexte est global
90
+            // (a evacuer car urls_decoder_url gere ce probleme ?)
91
+            // et calculer la page
92
+            if (!test_espace_prive()) {
93
+                include_spip('inc/urls');
94
+                list($fond,$contexte,$url_redirect) = urls_decoder_url(nettoyer_uri(),$fond,$contexte,true);
95
+            }
96
+            // squelette par defaut
97
+            if (!strlen($fond))
98
+                $fond = 'sommaire';
99
+
100
+            // produire la page : peut mettre a jour $lastmodified
101
+            $produire_page = charger_fonction('produire_page','public');
102
+            $page = $produire_page($fond, $contexte, $use_cache, $chemin_cache, NULL, $page, $lastmodified, $connect);
103
+            if ($page === '') {
104
+                $erreur = _T('info_erreur_squelette2',
105
+                    array('fichier'=>spip_htmlspecialchars($fond).'.'._EXTENSION_SQUELETTES));
106
+                erreur_squelette($erreur);
107
+                // eviter des erreurs strictes ensuite sur $page['cle'] en PHP >= 5.4
108
+                $page = array('texte' => '', 'erreur' => $erreur);
109
+            }
110
+        }
111
+
112
+        if ($page AND $chemin_cache) $page['cache'] = $chemin_cache;
113
+
114
+        auto_content_type($page);
115
+
116
+        $flag_preserver |=  headers_sent();
117
+
118
+        // Definir les entetes si ce n'est fait 
119
+        if (!$flag_preserver) {
120
+            if ($GLOBALS['flag_ob']) {
121
+                // Si la page est vide, produire l'erreur 404 ou message d'erreur pour les inclusions
122
+                if (trim($page['texte']) === ''
123
+                AND _VAR_MODE != 'debug'
124
+                AND !isset($page['entetes']['Location']) // cette page realise une redirection, donc pas d'erreur
125
+                ) {
126
+                    $contexte['fond_erreur'] = $fond;
127
+                    $page = message_page_indisponible($page, $contexte);
128
+                }
129
+                // pas de cache client en mode 'observation'
130
+                if (defined('_VAR_MODE') AND _VAR_MODE) {
131
+                    $page['entetes']["Cache-Control"]= "no-cache,must-revalidate";
132
+                    $page['entetes']["Pragma"] = "no-cache";
133
+                }
134
+            }
135
+        }
136
+    }
137
+
138
+    // Entete Last-Modified:
139
+    // eviter d'etre incoherent en envoyant un lastmodified identique
140
+    // a celui qu'on a refuse d'honorer plus haut (cf. #655)
141
+    if ($lastmodified
142
+    AND !isset($_SERVER['HTTP_IF_MODIFIED_SINCE'])
143
+    AND !isset($page['entetes']["Last-Modified"]))
144
+        $page['entetes']["Last-Modified"]=gmdate("D, d M Y H:i:s", $lastmodified)." GMT";
145
+
146
+    // fermer la connexion apres les headers si requete HEAD
147
+    if ($headers_only)
148
+        $page['entetes']["Connection"] = "close";
149
+
150
+    return $page;
151 151
 }
152 152
 
153 153
 //
@@ -160,17 +160,17 @@  discard block
 block discarded – undo
160 160
 // http://doc.spip.org/@calculer_contexte
161 161
 function calculer_contexte() {
162 162
 
163
-	$contexte = array();
164
-	foreach($_GET as $var => $val) {
165
-		if (!preg_match(_CONTEXTE_IGNORE_VARIABLES,$var))
166
-			$contexte[$var] = $val;
167
-	}
168
-	foreach($_POST as $var => $val) {
169
-		if (!preg_match(_CONTEXTE_IGNORE_VARIABLES,$var))
170
-			$contexte[$var] = $val;
171
-	}
172
-
173
-	return $contexte;
163
+    $contexte = array();
164
+    foreach($_GET as $var => $val) {
165
+        if (!preg_match(_CONTEXTE_IGNORE_VARIABLES,$var))
166
+            $contexte[$var] = $val;
167
+    }
168
+    foreach($_POST as $var => $val) {
169
+        if (!preg_match(_CONTEXTE_IGNORE_VARIABLES,$var))
170
+            $contexte[$var] = $val;
171
+    }
172
+
173
+    return $contexte;
174 174
 }
175 175
 
176 176
 /**
@@ -181,20 +181,20 @@  discard block
 block discarded – undo
181 181
  * @return array
182 182
  */
183 183
 function calculer_contexte_implicite(){
184
-	static $notes = null;
185
-	if (is_null($notes))
186
-		$notes = charger_fonction('notes','inc',true);
187
-	$contexte_implicite = array(
188
-		'squelettes' => $GLOBALS['dossier_squelettes'], // devrait etre 'chemin' => $GLOBALS['path_sig'], ?
189
-		'host' => $_SERVER['HTTP_HOST'],
190
-		'https' => (isset($_SERVER['HTTPS']) ? $_SERVER['HTTPS'] : ''),
191
-		'espace' => test_espace_prive(),
192
-		'marqueur' => (isset($GLOBALS['marqueur']) ?  $GLOBALS['marqueur'] : ''),
193
-		'marqueur_skel' => (isset($GLOBALS['marqueur_skel']) ?  $GLOBALS['marqueur_skel'] : ''),
194
-		'notes' => $notes?$notes('','contexter_cache'):'',
195
-		'spip_version_code' => $GLOBALS['spip_version_code'],
196
-	);
197
-	return $contexte_implicite;
184
+    static $notes = null;
185
+    if (is_null($notes))
186
+        $notes = charger_fonction('notes','inc',true);
187
+    $contexte_implicite = array(
188
+        'squelettes' => $GLOBALS['dossier_squelettes'], // devrait etre 'chemin' => $GLOBALS['path_sig'], ?
189
+        'host' => $_SERVER['HTTP_HOST'],
190
+        'https' => (isset($_SERVER['HTTPS']) ? $_SERVER['HTTPS'] : ''),
191
+        'espace' => test_espace_prive(),
192
+        'marqueur' => (isset($GLOBALS['marqueur']) ?  $GLOBALS['marqueur'] : ''),
193
+        'marqueur_skel' => (isset($GLOBALS['marqueur_skel']) ?  $GLOBALS['marqueur_skel'] : ''),
194
+        'notes' => $notes?$notes('','contexter_cache'):'',
195
+        'spip_version_code' => $GLOBALS['spip_version_code'],
196
+    );
197
+    return $contexte_implicite;
198 198
 }
199 199
 
200 200
 //
@@ -204,47 +204,47 @@  discard block
 block discarded – undo
204 204
 // http://doc.spip.org/@auto_content_type
205 205
 function auto_content_type($page)
206 206
 {
207
-	global $flag_preserver;
208
-	if (!isset($flag_preserver))
209
-	  {
210
-	    $flag_preserver = ($page && preg_match("/header\s*\(\s*.content\-type:/isx",$page['texte']) || (isset($page['entetes']['Content-Type'])));
211
-	  }
207
+    global $flag_preserver;
208
+    if (!isset($flag_preserver))
209
+        {
210
+        $flag_preserver = ($page && preg_match("/header\s*\(\s*.content\-type:/isx",$page['texte']) || (isset($page['entetes']['Content-Type'])));
211
+        }
212 212
 }
213 213
 
214 214
 // http://doc.spip.org/@inclure_page
215 215
 function inclure_page($fond, $contexte, $connect='') {
216
-	static $cacher, $produire_page;
217
-	global $lastmodified;
218
-
219
-	// enlever le fond de contexte inclus car sinon il prend la main
220
-	// dans les sous inclusions -> boucle infinie d'inclusion identique
221
-	// (cette precaution n'est probablement plus utile)
222
-	unset($contexte['fond']);
223
-	$page = array('contexte_implicite'=>calculer_contexte_implicite());
224
-	$page['contexte_implicite']['cache'] = $fond;
225
-	if (is_null($cacher))
226
-		$cacher = charger_fonction('cacher', 'public', true);
227
-	// Les quatre derniers parametres sont modifies par la fonction:
228
-	// emplacement, validite, et, s'il est valide, contenu & age
229
-	if ($cacher)
230
-		$res = $cacher($contexte, $use_cache, $chemin_cache, $page, $lastinclude);
231
-	else
232
-		$use_cache = -1;
233
-	// $res = message d'erreur : on sort de la
234
-	if ($res) {return array('texte' => $res);}
235
-
236
-	// Si use_cache ne vaut pas 0, la page doit etre calculee
237
-	// produire la page : peut mettre a jour $lastinclude
238
-	// le contexte_cache envoye a cacher() a ete conserve et est passe a produire
239
-	if ($use_cache) {
240
-		if (is_null($produire_page))
241
-			$produire_page = charger_fonction('produire_page','public');
242
-		$page = $produire_page($fond, $contexte, $use_cache, $chemin_cache, $contexte, $page, $lastinclude, $connect);
243
-	}
244
-	// dans tous les cas, mettre a jour $lastmodified
245
-	$lastmodified = max($lastmodified, $lastinclude);
246
-
247
-	return $page;
216
+    static $cacher, $produire_page;
217
+    global $lastmodified;
218
+
219
+    // enlever le fond de contexte inclus car sinon il prend la main
220
+    // dans les sous inclusions -> boucle infinie d'inclusion identique
221
+    // (cette precaution n'est probablement plus utile)
222
+    unset($contexte['fond']);
223
+    $page = array('contexte_implicite'=>calculer_contexte_implicite());
224
+    $page['contexte_implicite']['cache'] = $fond;
225
+    if (is_null($cacher))
226
+        $cacher = charger_fonction('cacher', 'public', true);
227
+    // Les quatre derniers parametres sont modifies par la fonction:
228
+    // emplacement, validite, et, s'il est valide, contenu & age
229
+    if ($cacher)
230
+        $res = $cacher($contexte, $use_cache, $chemin_cache, $page, $lastinclude);
231
+    else
232
+        $use_cache = -1;
233
+    // $res = message d'erreur : on sort de la
234
+    if ($res) {return array('texte' => $res);}
235
+
236
+    // Si use_cache ne vaut pas 0, la page doit etre calculee
237
+    // produire la page : peut mettre a jour $lastinclude
238
+    // le contexte_cache envoye a cacher() a ete conserve et est passe a produire
239
+    if ($use_cache) {
240
+        if (is_null($produire_page))
241
+            $produire_page = charger_fonction('produire_page','public');
242
+        $page = $produire_page($fond, $contexte, $use_cache, $chemin_cache, $contexte, $page, $lastinclude, $connect);
243
+    }
244
+    // dans tous les cas, mettre a jour $lastmodified
245
+    $lastmodified = max($lastmodified, $lastinclude);
246
+
247
+    return $page;
248 248
 }
249 249
 
250 250
 /**
@@ -262,25 +262,25 @@  discard block
 block discarded – undo
262 262
  * @return array
263 263
  */
264 264
 function public_produire_page_dist($fond, $contexte, $use_cache, $chemin_cache, $contexte_cache, &$page, &$lastinclude, $connect=''){
265
-	static $parametrer,$cacher;
266
-	if (!$parametrer)
267
-		$parametrer = charger_fonction('parametrer', 'public');
268
-	$page = $parametrer($fond, $contexte, $chemin_cache, $connect);
269
-	// et on l'enregistre sur le disque
270
-	if ($chemin_cache
271
-	AND $use_cache>-1
272
-	AND is_array($page)
273
-	AND count($page)
274
-	AND $page['entetes']['X-Spip-Cache'] > 0){
275
-		if (is_null($cacher))
276
-			$cacher = charger_fonction('cacher', 'public', true);
277
-		$lastinclude = time();
278
-		if ($cacher)
279
-			$cacher($contexte_cache, $use_cache, $chemin_cache, $page, $lastinclude);
280
-		else
281
-			$use_cache = -1;
282
-	}
283
-	return $page;
265
+    static $parametrer,$cacher;
266
+    if (!$parametrer)
267
+        $parametrer = charger_fonction('parametrer', 'public');
268
+    $page = $parametrer($fond, $contexte, $chemin_cache, $connect);
269
+    // et on l'enregistre sur le disque
270
+    if ($chemin_cache
271
+    AND $use_cache>-1
272
+    AND is_array($page)
273
+    AND count($page)
274
+    AND $page['entetes']['X-Spip-Cache'] > 0){
275
+        if (is_null($cacher))
276
+            $cacher = charger_fonction('cacher', 'public', true);
277
+        $lastinclude = time();
278
+        if ($cacher)
279
+            $cacher($contexte_cache, $use_cache, $chemin_cache, $page, $lastinclude);
280
+        else
281
+            $use_cache = -1;
282
+    }
283
+    return $page;
284 284
 }
285 285
 
286 286
 
@@ -296,11 +296,11 @@  discard block
 block discarded – undo
296 296
 
297 297
 function inserer_balise_dynamique($contexte_exec, $contexte_compil)
298 298
 {
299
-	if (!is_array($contexte_exec))
300
-		echo $contexte_exec; // message d'erreur etc
301
-	else {
302
-		inclure_balise_dynamique($contexte_exec, true, $contexte_compil);
303
-	}
299
+    if (!is_array($contexte_exec))
300
+        echo $contexte_exec; // message d'erreur etc
301
+    else {
302
+        inclure_balise_dynamique($contexte_exec, true, $contexte_compil);
303
+    }
304 304
 }
305 305
 
306 306
 // Attention, un appel explicite a cette fonction suppose certains include
@@ -309,204 +309,204 @@  discard block
 block discarded – undo
309 309
 // http://doc.spip.org/@inclure_balise_dynamique
310 310
 function inclure_balise_dynamique($texte, $echo=true, $contexte_compil=array())
311 311
 {
312
-	if (is_array($texte)) {
313
-
314
-		list($fond, $delainc, $contexte_inclus) = $texte;
315
-
316
-		// delais a l'ancienne, c'est pratiquement mort
317
-		$d = isset($GLOBALS['delais']) ? $GLOBALS['delais'] : NULL;
318
-		$GLOBALS['delais'] = $delainc;
319
-
320
-		$page = recuperer_fond($fond,$contexte_inclus,array('trim'=>false, 'raw' => true, 'compil' => $contexte_compil));
321
-
322
-		$texte = $page['texte'];
323
-
324
-		$GLOBALS['delais'] = $d;
325
-		// Faire remonter les entetes
326
-		if (is_array($page['entetes'])) {
327
-			// mais pas toutes
328
-			unset($page['entetes']['X-Spip-Cache']);
329
-			unset($page['entetes']['Content-Type']);
330
-			if (isset($GLOBALS['page']) AND is_array($GLOBALS['page'])) {
331
-				if (!is_array($GLOBALS['page']['entetes']))
332
-					$GLOBALS['page']['entetes'] = array();
333
-				$GLOBALS['page']['entetes'] = 
334
-					array_merge($GLOBALS['page']['entetes'],$page['entetes']);
335
-			}
336
-		}
337
-		// _pipelines au pluriel array('nom_pipeline' => $args...) avec une syntaxe permettant plusieurs pipelines
338
-		if (isset($page['contexte']['_pipelines'])
339
-		  AND is_array($page['contexte']['_pipelines'])
340
-			AND count($page['contexte']['_pipelines'])) {
341
-			foreach($page['contexte']['_pipelines'] as $pipe=>$args){
342
-				$args['contexte'] = $page['contexte'];
343
-				unset($args['contexte']['_pipelines']); // par precaution, meme si le risque de boucle infinie est a priori nul
344
-				$texte = pipeline(
345
-					$pipe,
346
-					array(
347
-						'data'=>$texte,
348
-						'args'=>$args
349
-					),
350
-					false
351
-				);
352
-			}
353
-		}
354
-	}
355
-
356
-	if (defined('_VAR_MODE') AND _VAR_MODE == 'debug') {
357
-		// compatibilite : avant on donnait le numero de ligne ou rien.
358
-		$ligne =  intval(isset($contexte_compil[3]) ? $contexte_compil[3] : $contexte_compil);
359
-		$GLOBALS['debug_objets']['resultat'][$ligne] = $texte;
360
-	}
361
-	if ($echo)
362
-		echo $texte;
363
-	else
364
-		return $texte;
312
+    if (is_array($texte)) {
313
+
314
+        list($fond, $delainc, $contexte_inclus) = $texte;
315
+
316
+        // delais a l'ancienne, c'est pratiquement mort
317
+        $d = isset($GLOBALS['delais']) ? $GLOBALS['delais'] : NULL;
318
+        $GLOBALS['delais'] = $delainc;
319
+
320
+        $page = recuperer_fond($fond,$contexte_inclus,array('trim'=>false, 'raw' => true, 'compil' => $contexte_compil));
321
+
322
+        $texte = $page['texte'];
323
+
324
+        $GLOBALS['delais'] = $d;
325
+        // Faire remonter les entetes
326
+        if (is_array($page['entetes'])) {
327
+            // mais pas toutes
328
+            unset($page['entetes']['X-Spip-Cache']);
329
+            unset($page['entetes']['Content-Type']);
330
+            if (isset($GLOBALS['page']) AND is_array($GLOBALS['page'])) {
331
+                if (!is_array($GLOBALS['page']['entetes']))
332
+                    $GLOBALS['page']['entetes'] = array();
333
+                $GLOBALS['page']['entetes'] = 
334
+                    array_merge($GLOBALS['page']['entetes'],$page['entetes']);
335
+            }
336
+        }
337
+        // _pipelines au pluriel array('nom_pipeline' => $args...) avec une syntaxe permettant plusieurs pipelines
338
+        if (isset($page['contexte']['_pipelines'])
339
+          AND is_array($page['contexte']['_pipelines'])
340
+            AND count($page['contexte']['_pipelines'])) {
341
+            foreach($page['contexte']['_pipelines'] as $pipe=>$args){
342
+                $args['contexte'] = $page['contexte'];
343
+                unset($args['contexte']['_pipelines']); // par precaution, meme si le risque de boucle infinie est a priori nul
344
+                $texte = pipeline(
345
+                    $pipe,
346
+                    array(
347
+                        'data'=>$texte,
348
+                        'args'=>$args
349
+                    ),
350
+                    false
351
+                );
352
+            }
353
+        }
354
+    }
355
+
356
+    if (defined('_VAR_MODE') AND _VAR_MODE == 'debug') {
357
+        // compatibilite : avant on donnait le numero de ligne ou rien.
358
+        $ligne =  intval(isset($contexte_compil[3]) ? $contexte_compil[3] : $contexte_compil);
359
+        $GLOBALS['debug_objets']['resultat'][$ligne] = $texte;
360
+    }
361
+    if ($echo)
362
+        echo $texte;
363
+    else
364
+        return $texte;
365 365
 
366 366
 }
367 367
 
368 368
 // http://doc.spip.org/@message_page_indisponible
369 369
 function message_page_indisponible ($page, $contexte) {
370
-	static $deja = false;
371
-	if ($deja) return "erreur";
372
-	$codes = array(
373
-		'404' => '404 Not Found',
374
-		'503' => '503 Service Unavailable',
375
-	);
376
-
377
-	$contexte['status'] = ($page !== false) ? '404' : '503';
378
-	$contexte['code'] = $codes[$contexte['status']];
379
-	$contexte['fond'] = '404'; // gere les 2 erreurs
380
-	if (!isset($contexte['lang']))
381
-		$contexte['lang'] = $GLOBALS['spip_lang'];
382
-
383
-	$deja = true;
384
-	// passer aux plugins qui peuvent decider d'une page d'erreur plus pertinent
385
-	// ex restriction d'acces => 401
386
-	$contexte = pipeline('page_indisponible',$contexte);
387
-
388
-	// produire la page d'erreur
389
-	$page = inclure_page($contexte['fond'], $contexte);
390
-	if (!$page)
391
-		$page = inclure_page('404', $contexte);
392
-	$page['status'] = $contexte['status'];
393
-
394
-	return $page;
370
+    static $deja = false;
371
+    if ($deja) return "erreur";
372
+    $codes = array(
373
+        '404' => '404 Not Found',
374
+        '503' => '503 Service Unavailable',
375
+    );
376
+
377
+    $contexte['status'] = ($page !== false) ? '404' : '503';
378
+    $contexte['code'] = $codes[$contexte['status']];
379
+    $contexte['fond'] = '404'; // gere les 2 erreurs
380
+    if (!isset($contexte['lang']))
381
+        $contexte['lang'] = $GLOBALS['spip_lang'];
382
+
383
+    $deja = true;
384
+    // passer aux plugins qui peuvent decider d'une page d'erreur plus pertinent
385
+    // ex restriction d'acces => 401
386
+    $contexte = pipeline('page_indisponible',$contexte);
387
+
388
+    // produire la page d'erreur
389
+    $page = inclure_page($contexte['fond'], $contexte);
390
+    if (!$page)
391
+        $page = inclure_page('404', $contexte);
392
+    $page['status'] = $contexte['status'];
393
+
394
+    return $page;
395 395
 }
396 396
 
397 397
 // temporairement ici : a mettre dans le futur inc/modeles
398 398
 // creer_contexte_de_modele('left', 'autostart=true', ...) renvoie un array()
399 399
 // http://doc.spip.org/@creer_contexte_de_modele
400 400
 function creer_contexte_de_modele($args) {
401
-	$contexte = array();
402
-	foreach ($args as $var=>$val) {
403
-		if (is_int($var)){ // argument pas formate
404
-			if (in_array($val, array('left', 'right', 'center'))) {
405
-				$var = 'align';
406
-				$contexte[$var] = $val;
407
-			} else {
408
-				$args = explode('=', $val);
409
-				if (count($args)>=2) // Flashvars=arg1=machin&arg2=truc genere plus de deux args
410
-					$contexte[trim($args[0])] = substr($val,strlen($args[0])+1);
411
-				else // notation abregee
412
-					$contexte[trim($val)] = trim($val);
413
-			}
414
-		}
415
-		else
416
-			$contexte[$var] = $val;
417
-	}
418
-
419
-	return $contexte;
401
+    $contexte = array();
402
+    foreach ($args as $var=>$val) {
403
+        if (is_int($var)){ // argument pas formate
404
+            if (in_array($val, array('left', 'right', 'center'))) {
405
+                $var = 'align';
406
+                $contexte[$var] = $val;
407
+            } else {
408
+                $args = explode('=', $val);
409
+                if (count($args)>=2) // Flashvars=arg1=machin&arg2=truc genere plus de deux args
410
+                    $contexte[trim($args[0])] = substr($val,strlen($args[0])+1);
411
+                else // notation abregee
412
+                    $contexte[trim($val)] = trim($val);
413
+            }
414
+        }
415
+        else
416
+            $contexte[$var] = $val;
417
+    }
418
+
419
+    return $contexte;
420 420
 }
421 421
 
422 422
 // Calcule le modele et retourne la mini-page ainsi calculee
423 423
 // http://doc.spip.org/@inclure_modele
424 424
 function inclure_modele($type, $id, $params, $lien, $connect='', $env=array()) {
425 425
 
426
-	static $compteur;
427
-	if (++$compteur>10) return ''; # ne pas boucler indefiniment
428
-
429
-	$type = strtolower($type);
430
-
431
-	$fond = $class = '';
432
-
433
-	$params = array_filter(explode('|', $params));
434
-	if ($params) {
435
-		list(,$soustype) = each($params);
436
-		$soustype = strtolower(trim($soustype));
437
-		if (in_array($soustype,
438
-		array('left', 'right', 'center', 'ajax'))) {
439
-			list(,$soustype) = each($params);
440
-			$soustype = strtolower($soustype);
441
-		}
442
-
443
-		if (preg_match(',^[a-z0-9_]+$,', $soustype)) {
444
-			if (!trouve_modele($fond = ($type.'_'.$soustype))) {
445
-				$fond = '';
446
-				$class = $soustype;
447
-			}
448
-			// enlever le sous type des params
449
-			$params = array_diff($params,array($soustype));
450
-		}
451
-	}
452
-
453
-	// Si ca marche pas en precisant le sous-type, prendre le type
454
-	if (!$fond AND !trouve_modele($fond = $type)){
455
-		spip_log("Modele $type introuvable",_LOG_INFO_IMPORTANTE);
456
-		return false;
457
-	}
458
-	$fond = 'modeles/'.$fond;
459
-	// Creer le contexte
460
-	$contexte = $env;
461
-	$contexte['dir_racine'] = _DIR_RACINE; # eviter de mixer un cache racine et un cache ecrire (meme si pour l'instant les modeles ne sont pas caches, le resultat etant different il faut que le contexte en tienne compte
462
-
463
-	// Le numero du modele est mis dans l'environnement
464
-	// d'une part sous l'identifiant "id"
465
-	// et d'autre part sous l'identifiant de la cle primaire
466
-	// par la fonction id_table_objet,
467
-	// (<article1> =>> article =>> id_article =>> id_article=1)
468
-	$_id = id_table_objet($type);
469
-	$contexte['id'] = $contexte[$_id] = $id;
470
-
471
-	if (isset($class))
472
-		$contexte['class'] = $class;
473
-
474
-	// Si un lien a ete passe en parametre, ex: [<modele1>->url]
475
-	if ($lien) {
476
-		# un eventuel guillemet (") sera reechappe par #ENV
477
-		$contexte['lien'] = str_replace("&quot;",'"', $lien['href']);
478
-		$contexte['lien_class'] = $lien['class'];
479
-		$contexte['lien_mime'] = $lien['mime'];
480
-		$contexte['lien_title'] = $lien['title'];
481
-		$contexte['lien_hreflang'] = $lien['hreflang'];
482
-	}
483
-
484
-	// Traiter les parametres
485
-	// par exemple : <img1|center>, <emb12|autostart=true> ou <doc1|lang=en>
486
-	$arg_list = creer_contexte_de_modele($params);
487
-	$contexte['args'] = $arg_list; // on passe la liste des arguments du modeles dans une variable args
488
-	$contexte = array_merge($contexte,$arg_list);
489
-
490
-
491
-	// Appliquer le modele avec le contexte
492
-	$retour = recuperer_fond($fond, $contexte, array(), $connect);
493
-
494
-
495
-	// Regarder si le modele tient compte des liens (il *doit* alors indiquer
496
-	// spip_lien_ok dans les classes de son conteneur de premier niveau ;
497
-	// sinon, s'il y a un lien, on l'ajoute classiquement
498
-	if (strstr(' ' . ($classes = extraire_attribut($retour, 'class')).' ',
499
-	'spip_lien_ok')) {
500
-		$retour = inserer_attribut($retour, 'class',
501
-			trim(str_replace(' spip_lien_ok ', ' ', " $classes ")));
502
-	} else if ($lien)
503
-		$retour = "<a href='".$lien['href']."' class='".$lien['class']."'>".$retour."</a>";
504
-
505
-	$compteur--;
506
-
507
-	return  (isset($arg_list['ajax'])AND $arg_list['ajax']=='ajax')
508
-	? encoder_contexte_ajax($contexte,'',$retour)
509
-	: $retour; 
426
+    static $compteur;
427
+    if (++$compteur>10) return ''; # ne pas boucler indefiniment
428
+
429
+    $type = strtolower($type);
430
+
431
+    $fond = $class = '';
432
+
433
+    $params = array_filter(explode('|', $params));
434
+    if ($params) {
435
+        list(,$soustype) = each($params);
436
+        $soustype = strtolower(trim($soustype));
437
+        if (in_array($soustype,
438
+        array('left', 'right', 'center', 'ajax'))) {
439
+            list(,$soustype) = each($params);
440
+            $soustype = strtolower($soustype);
441
+        }
442
+
443
+        if (preg_match(',^[a-z0-9_]+$,', $soustype)) {
444
+            if (!trouve_modele($fond = ($type.'_'.$soustype))) {
445
+                $fond = '';
446
+                $class = $soustype;
447
+            }
448
+            // enlever le sous type des params
449
+            $params = array_diff($params,array($soustype));
450
+        }
451
+    }
452
+
453
+    // Si ca marche pas en precisant le sous-type, prendre le type
454
+    if (!$fond AND !trouve_modele($fond = $type)){
455
+        spip_log("Modele $type introuvable",_LOG_INFO_IMPORTANTE);
456
+        return false;
457
+    }
458
+    $fond = 'modeles/'.$fond;
459
+    // Creer le contexte
460
+    $contexte = $env;
461
+    $contexte['dir_racine'] = _DIR_RACINE; # eviter de mixer un cache racine et un cache ecrire (meme si pour l'instant les modeles ne sont pas caches, le resultat etant different il faut que le contexte en tienne compte
462
+
463
+    // Le numero du modele est mis dans l'environnement
464
+    // d'une part sous l'identifiant "id"
465
+    // et d'autre part sous l'identifiant de la cle primaire
466
+    // par la fonction id_table_objet,
467
+    // (<article1> =>> article =>> id_article =>> id_article=1)
468
+    $_id = id_table_objet($type);
469
+    $contexte['id'] = $contexte[$_id] = $id;
470
+
471
+    if (isset($class))
472
+        $contexte['class'] = $class;
473
+
474
+    // Si un lien a ete passe en parametre, ex: [<modele1>->url]
475
+    if ($lien) {
476
+        # un eventuel guillemet (") sera reechappe par #ENV
477
+        $contexte['lien'] = str_replace("&quot;",'"', $lien['href']);
478
+        $contexte['lien_class'] = $lien['class'];
479
+        $contexte['lien_mime'] = $lien['mime'];
480
+        $contexte['lien_title'] = $lien['title'];
481
+        $contexte['lien_hreflang'] = $lien['hreflang'];
482
+    }
483
+
484
+    // Traiter les parametres
485
+    // par exemple : <img1|center>, <emb12|autostart=true> ou <doc1|lang=en>
486
+    $arg_list = creer_contexte_de_modele($params);
487
+    $contexte['args'] = $arg_list; // on passe la liste des arguments du modeles dans une variable args
488
+    $contexte = array_merge($contexte,$arg_list);
489
+
490
+
491
+    // Appliquer le modele avec le contexte
492
+    $retour = recuperer_fond($fond, $contexte, array(), $connect);
493
+
494
+
495
+    // Regarder si le modele tient compte des liens (il *doit* alors indiquer
496
+    // spip_lien_ok dans les classes de son conteneur de premier niveau ;
497
+    // sinon, s'il y a un lien, on l'ajoute classiquement
498
+    if (strstr(' ' . ($classes = extraire_attribut($retour, 'class')).' ',
499
+    'spip_lien_ok')) {
500
+        $retour = inserer_attribut($retour, 'class',
501
+            trim(str_replace(' spip_lien_ok ', ' ', " $classes ")));
502
+    } else if ($lien)
503
+        $retour = "<a href='".$lien['href']."' class='".$lien['class']."'>".$retour."</a>";
504
+
505
+    $compteur--;
506
+
507
+    return  (isset($arg_list['ajax'])AND $arg_list['ajax']=='ajax')
508
+    ? encoder_contexte_ajax($contexte,'',$retour)
509
+    : $retour; 
510 510
 }
511 511
 
512 512
 // Un inclure_page qui marche aussi pour l'espace prive
@@ -516,81 +516,81 @@  discard block
 block discarded – undo
516 516
 // http://doc.spip.org/@evaluer_fond
517 517
 function evaluer_fond ($fond, $contexte=array(), $connect=null) {
518 518
 
519
-	$page = inclure_page($fond, $contexte, $connect);
519
+    $page = inclure_page($fond, $contexte, $connect);
520 520
 
521
-	if (!$page) return $page;
522
-	// eval $page et affecte $res
523
-	include _ROOT_RESTREINT."public/evaluer_page.php";
521
+    if (!$page) return $page;
522
+    // eval $page et affecte $res
523
+    include _ROOT_RESTREINT."public/evaluer_page.php";
524 524
 	
525
-	// Lever un drapeau (global) si le fond utilise #SESSION
526
-	// a destination de public/parametrer
527
-	// pour remonter vers les inclusions appelantes
528
-	// il faut bien lever ce drapeau apres avoir evalue le fond
529
-	// pour ne pas faire descendre le flag vers les inclusions appelees
530
-	if (isset($page['invalideurs'])
531
-	AND isset($page['invalideurs']['session']))
532
-		$GLOBALS['cache_utilise_session'] = $page['invalideurs']['session'];
533
-
534
-	return $page;
525
+    // Lever un drapeau (global) si le fond utilise #SESSION
526
+    // a destination de public/parametrer
527
+    // pour remonter vers les inclusions appelantes
528
+    // il faut bien lever ce drapeau apres avoir evalue le fond
529
+    // pour ne pas faire descendre le flag vers les inclusions appelees
530
+    if (isset($page['invalideurs'])
531
+    AND isset($page['invalideurs']['session']))
532
+        $GLOBALS['cache_utilise_session'] = $page['invalideurs']['session'];
533
+
534
+    return $page;
535 535
 }
536 536
 
537 537
 
538 538
 // http://doc.spip.org/@page_base_href
539 539
 function page_base_href(&$texte){
540
-	static $set_html_base = null;
541
-	if (is_null($set_html_base)){
542
-		if (!defined('_SET_HTML_BASE'))
543
-			// si la profondeur est superieure a 1
544
-			// est que ce n'est pas une url page ni une url action
545
-			// activer par defaut
546
-			$set_html_base = ((
547
-				$GLOBALS['profondeur_url'] >= (_DIR_RESTREINT?1:2)
548
-				AND _request(_SPIP_PAGE) !== 'login'
549
-				AND !_request('action'))?true:false);
550
-		else
551
-			$set_html_base = _SET_HTML_BASE;
552
-	}
553
-
554
-	if ($set_html_base
555
-	  AND isset($GLOBALS['html']) AND $GLOBALS['html']
556
-	  AND $GLOBALS['profondeur_url']>0
557
-	  AND ($poshead = strpos($texte,'</head>'))!==FALSE){
558
-		$head = substr($texte,0,$poshead);
559
-		$insert = false;
560
-		if (strpos($head, '<base')===false) 
561
-			$insert = true;
562
-		else {
563
-			// si aucun <base ...> n'a de href c'est bon quand meme !
564
-			$insert = true;
565
-			include_spip('inc/filtres');
566
-			$bases = extraire_balises($head,'base');
567
-			foreach ($bases as $base)
568
-				if (extraire_attribut($base,'href'))
569
-					$insert = false;
570
-		}
571
-		if ($insert) {
572
-			include_spip('inc/filtres_mini');
573
-			// ajouter un base qui reglera tous les liens relatifs
574
-			$base = url_absolue('./');
575
-			$bbase = "\n<base href=\"$base\" />";
576
-			if (($pos = strpos($head, '<head>')) !== false)
577
-				$head = substr_replace($head, $bbase, $pos+6, 0);
578
-			elseif(preg_match(",<head[^>]*>,i",$head,$r)){
579
-				$head = str_replace($r[0], $r[0].$bbase, $head);
580
-			}
581
-			$texte = $head . substr($texte,$poshead);
582
-			// gerer les ancres
583
-			$base = $_SERVER['REQUEST_URI'];
584
-			// pas de guillemets ni < dans l'URL qu'on insere dans le HTML
585
-			if (strpos($base,"'") or strpos($base,'"') or strpos($base,'<')) {
586
-				$base = str_replace(array("'",'"','<'),array("%27",'%22','%3C'), $base);
587
-			}
588
-			if (strpos($texte,"href='#")!==false)
589
-				$texte = str_replace("href='#","href='$base#",$texte);
590
-			if (strpos($texte, "href=\"#")!==false)
591
-				$texte = str_replace("href=\"#","href=\"$base#",$texte);
592
-		}
593
-	}
540
+    static $set_html_base = null;
541
+    if (is_null($set_html_base)){
542
+        if (!defined('_SET_HTML_BASE'))
543
+            // si la profondeur est superieure a 1
544
+            // est que ce n'est pas une url page ni une url action
545
+            // activer par defaut
546
+            $set_html_base = ((
547
+                $GLOBALS['profondeur_url'] >= (_DIR_RESTREINT?1:2)
548
+                AND _request(_SPIP_PAGE) !== 'login'
549
+                AND !_request('action'))?true:false);
550
+        else
551
+            $set_html_base = _SET_HTML_BASE;
552
+    }
553
+
554
+    if ($set_html_base
555
+      AND isset($GLOBALS['html']) AND $GLOBALS['html']
556
+      AND $GLOBALS['profondeur_url']>0
557
+      AND ($poshead = strpos($texte,'</head>'))!==FALSE){
558
+        $head = substr($texte,0,$poshead);
559
+        $insert = false;
560
+        if (strpos($head, '<base')===false) 
561
+            $insert = true;
562
+        else {
563
+            // si aucun <base ...> n'a de href c'est bon quand meme !
564
+            $insert = true;
565
+            include_spip('inc/filtres');
566
+            $bases = extraire_balises($head,'base');
567
+            foreach ($bases as $base)
568
+                if (extraire_attribut($base,'href'))
569
+                    $insert = false;
570
+        }
571
+        if ($insert) {
572
+            include_spip('inc/filtres_mini');
573
+            // ajouter un base qui reglera tous les liens relatifs
574
+            $base = url_absolue('./');
575
+            $bbase = "\n<base href=\"$base\" />";
576
+            if (($pos = strpos($head, '<head>')) !== false)
577
+                $head = substr_replace($head, $bbase, $pos+6, 0);
578
+            elseif(preg_match(",<head[^>]*>,i",$head,$r)){
579
+                $head = str_replace($r[0], $r[0].$bbase, $head);
580
+            }
581
+            $texte = $head . substr($texte,$poshead);
582
+            // gerer les ancres
583
+            $base = $_SERVER['REQUEST_URI'];
584
+            // pas de guillemets ni < dans l'URL qu'on insere dans le HTML
585
+            if (strpos($base,"'") or strpos($base,'"') or strpos($base,'<')) {
586
+                $base = str_replace(array("'",'"','<'),array("%27",'%22','%3C'), $base);
587
+            }
588
+            if (strpos($texte,"href='#")!==false)
589
+                $texte = str_replace("href='#","href='$base#",$texte);
590
+            if (strpos($texte, "href=\"#")!==false)
591
+                $texte = str_replace("href=\"#","href=\"$base#",$texte);
592
+        }
593
+    }
594 594
 }
595 595
 
596 596
 
@@ -598,9 +598,9 @@  discard block
 block discarded – undo
598 598
 // et demarrent par X-Spip-...
599 599
 // http://doc.spip.org/@envoyer_entetes
600 600
 function envoyer_entetes($entetes) {
601
-	foreach ($entetes as $k => $v)
602
-	#	if (strncmp($k, 'X-Spip-', 7))
603
-			@header(strlen($v)?"$k: $v":$k); 
601
+    foreach ($entetes as $k => $v)
602
+    #	if (strncmp($k, 'X-Spip-', 7))
603
+            @header(strlen($v)?"$k: $v":$k); 
604 604
 }
605 605
 
606 606
 ?>
Please login to merge, or discard this patch.
Spacing   +69 added lines, -69 removed lines patch added patch discarded remove patch
@@ -20,7 +20,7 @@  discard block
 block discarded – undo
20 20
 //
21 21
 
22 22
 // http://doc.spip.org/@assembler
23
-function assembler($fond, $connect='') {
23
+function assembler($fond, $connect = '') {
24 24
 
25 25
 	// flag_preserver est modifie ici, et utilise en globale
26 26
 	// use_cache sert a informer le bouton d'admin pr savoir s'il met un *
@@ -29,7 +29,7 @@  discard block
 block discarded – undo
29 29
 
30 30
 	$contexte = calculer_contexte();
31 31
 	$page = array('contexte_implicite'=>calculer_contexte_implicite());
32
-	$page['contexte_implicite']['cache'] = $fond . preg_replace(',\.[a-zA-Z0-9]*$,', '', preg_replace('/[?].*$/', '', $GLOBALS['REQUEST_URI']));
32
+	$page['contexte_implicite']['cache'] = $fond.preg_replace(',\.[a-zA-Z0-9]*$,', '', preg_replace('/[?].*$/', '', $GLOBALS['REQUEST_URI']));
33 33
 	// Cette fonction est utilisee deux fois
34 34
 	$cacher = charger_fonction('cacher', 'public', true);
35 35
 	// Les quatre derniers parametres sont modifies par la fonction:
@@ -39,7 +39,7 @@  discard block
 block discarded – undo
39 39
 	else
40 40
 		$use_cache = -1;
41 41
 	// Si un resultat est retourne, c'est un message d'impossibilite
42
-	if ($res) {return array('texte' => $res);}
42
+	if ($res) {return array('texte' => $res); }
43 43
 
44 44
 	if (!$chemin_cache || !$lastmodified) $lastmodified = time();
45 45
 
@@ -54,8 +54,8 @@  discard block
 block discarded – undo
54 54
 	AND $chemin_cache
55 55
 	AND isset($page['entetes'])
56 56
 	AND isset($page['entetes']['Cache-Control'])
57
-	AND strstr($page['entetes']['Cache-Control'],'max-age=')
58
-	AND !strstr($_SERVER['SERVER_SOFTWARE'],'IIS/')
57
+	AND strstr($page['entetes']['Cache-Control'], 'max-age=')
58
+	AND !strstr($_SERVER['SERVER_SOFTWARE'], 'IIS/')
59 59
 	) {
60 60
 		$since = preg_replace('/;.*/', '',
61 61
 			$_SERVER['HTTP_IF_MODIFIED_SINCE']);
@@ -73,7 +73,7 @@  discard block
 block discarded – undo
73 73
 		$page['texte'] = "";
74 74
 	} else {
75 75
 		// si la page est prise dans le cache
76
-		if (!$use_cache)  {
76
+		if (!$use_cache) {
77 77
 			// Informer les boutons d'admin du contexte
78 78
 			// (fourni par urls_decoder_url ci-dessous lors de la mise en cache)
79 79
 			$contexte = $page['contexte'];
@@ -91,14 +91,14 @@  discard block
 block discarded – undo
91 91
 			// et calculer la page
92 92
 			if (!test_espace_prive()) {
93 93
 				include_spip('inc/urls');
94
-				list($fond,$contexte,$url_redirect) = urls_decoder_url(nettoyer_uri(),$fond,$contexte,true);
94
+				list($fond, $contexte, $url_redirect) = urls_decoder_url(nettoyer_uri(), $fond, $contexte, true);
95 95
 			}
96 96
 			// squelette par defaut
97 97
 			if (!strlen($fond))
98 98
 				$fond = 'sommaire';
99 99
 
100 100
 			// produire la page : peut mettre a jour $lastmodified
101
-			$produire_page = charger_fonction('produire_page','public');
101
+			$produire_page = charger_fonction('produire_page', 'public');
102 102
 			$page = $produire_page($fond, $contexte, $use_cache, $chemin_cache, NULL, $page, $lastmodified, $connect);
103 103
 			if ($page === '') {
104 104
 				$erreur = _T('info_erreur_squelette2',
@@ -113,7 +113,7 @@  discard block
 block discarded – undo
113 113
 
114 114
 		auto_content_type($page);
115 115
 
116
-		$flag_preserver |=  headers_sent();
116
+		$flag_preserver |= headers_sent();
117 117
 
118 118
 		// Definir les entetes si ce n'est fait 
119 119
 		if (!$flag_preserver) {
@@ -128,7 +128,7 @@  discard block
 block discarded – undo
128 128
 				}
129 129
 				// pas de cache client en mode 'observation'
130 130
 				if (defined('_VAR_MODE') AND _VAR_MODE) {
131
-					$page['entetes']["Cache-Control"]= "no-cache,must-revalidate";
131
+					$page['entetes']["Cache-Control"] = "no-cache,must-revalidate";
132 132
 					$page['entetes']["Pragma"] = "no-cache";
133 133
 				}
134 134
 			}
@@ -141,7 +141,7 @@  discard block
 block discarded – undo
141 141
 	if ($lastmodified
142 142
 	AND !isset($_SERVER['HTTP_IF_MODIFIED_SINCE'])
143 143
 	AND !isset($page['entetes']["Last-Modified"]))
144
-		$page['entetes']["Last-Modified"]=gmdate("D, d M Y H:i:s", $lastmodified)." GMT";
144
+		$page['entetes']["Last-Modified"] = gmdate("D, d M Y H:i:s", $lastmodified)." GMT";
145 145
 
146 146
 	// fermer la connexion apres les headers si requete HEAD
147 147
 	if ($headers_only)
@@ -161,12 +161,12 @@  discard block
 block discarded – undo
161 161
 function calculer_contexte() {
162 162
 
163 163
 	$contexte = array();
164
-	foreach($_GET as $var => $val) {
165
-		if (!preg_match(_CONTEXTE_IGNORE_VARIABLES,$var))
164
+	foreach ($_GET as $var => $val) {
165
+		if (!preg_match(_CONTEXTE_IGNORE_VARIABLES, $var))
166 166
 			$contexte[$var] = $val;
167 167
 	}
168
-	foreach($_POST as $var => $val) {
169
-		if (!preg_match(_CONTEXTE_IGNORE_VARIABLES,$var))
168
+	foreach ($_POST as $var => $val) {
169
+		if (!preg_match(_CONTEXTE_IGNORE_VARIABLES, $var))
170 170
 			$contexte[$var] = $val;
171 171
 	}
172 172
 
@@ -180,18 +180,18 @@  discard block
 block discarded – undo
180 180
  * @staticvar string $notes
181 181
  * @return array
182 182
  */
183
-function calculer_contexte_implicite(){
183
+function calculer_contexte_implicite() {
184 184
 	static $notes = null;
185 185
 	if (is_null($notes))
186
-		$notes = charger_fonction('notes','inc',true);
186
+		$notes = charger_fonction('notes', 'inc', true);
187 187
 	$contexte_implicite = array(
188 188
 		'squelettes' => $GLOBALS['dossier_squelettes'], // devrait etre 'chemin' => $GLOBALS['path_sig'], ?
189 189
 		'host' => $_SERVER['HTTP_HOST'],
190 190
 		'https' => (isset($_SERVER['HTTPS']) ? $_SERVER['HTTPS'] : ''),
191 191
 		'espace' => test_espace_prive(),
192
-		'marqueur' => (isset($GLOBALS['marqueur']) ?  $GLOBALS['marqueur'] : ''),
193
-		'marqueur_skel' => (isset($GLOBALS['marqueur_skel']) ?  $GLOBALS['marqueur_skel'] : ''),
194
-		'notes' => $notes?$notes('','contexter_cache'):'',
192
+		'marqueur' => (isset($GLOBALS['marqueur']) ? $GLOBALS['marqueur'] : ''),
193
+		'marqueur_skel' => (isset($GLOBALS['marqueur_skel']) ? $GLOBALS['marqueur_skel'] : ''),
194
+		'notes' => $notes ? $notes('', 'contexter_cache') : '',
195 195
 		'spip_version_code' => $GLOBALS['spip_version_code'],
196 196
 	);
197 197
 	return $contexte_implicite;
@@ -207,12 +207,12 @@  discard block
 block discarded – undo
207 207
 	global $flag_preserver;
208 208
 	if (!isset($flag_preserver))
209 209
 	  {
210
-	    $flag_preserver = ($page && preg_match("/header\s*\(\s*.content\-type:/isx",$page['texte']) || (isset($page['entetes']['Content-Type'])));
210
+	    $flag_preserver = ($page && preg_match("/header\s*\(\s*.content\-type:/isx", $page['texte']) || (isset($page['entetes']['Content-Type'])));
211 211
 	  }
212 212
 }
213 213
 
214 214
 // http://doc.spip.org/@inclure_page
215
-function inclure_page($fond, $contexte, $connect='') {
215
+function inclure_page($fond, $contexte, $connect = '') {
216 216
 	static $cacher, $produire_page;
217 217
 	global $lastmodified;
218 218
 
@@ -231,14 +231,14 @@  discard block
 block discarded – undo
231 231
 	else
232 232
 		$use_cache = -1;
233 233
 	// $res = message d'erreur : on sort de la
234
-	if ($res) {return array('texte' => $res);}
234
+	if ($res) {return array('texte' => $res); }
235 235
 
236 236
 	// Si use_cache ne vaut pas 0, la page doit etre calculee
237 237
 	// produire la page : peut mettre a jour $lastinclude
238 238
 	// le contexte_cache envoye a cacher() a ete conserve et est passe a produire
239 239
 	if ($use_cache) {
240 240
 		if (is_null($produire_page))
241
-			$produire_page = charger_fonction('produire_page','public');
241
+			$produire_page = charger_fonction('produire_page', 'public');
242 242
 		$page = $produire_page($fond, $contexte, $use_cache, $chemin_cache, $contexte, $page, $lastinclude, $connect);
243 243
 	}
244 244
 	// dans tous les cas, mettre a jour $lastmodified
@@ -261,17 +261,17 @@  discard block
 block discarded – undo
261 261
  * @param string $connect
262 262
  * @return array
263 263
  */
264
-function public_produire_page_dist($fond, $contexte, $use_cache, $chemin_cache, $contexte_cache, &$page, &$lastinclude, $connect=''){
265
-	static $parametrer,$cacher;
264
+function public_produire_page_dist($fond, $contexte, $use_cache, $chemin_cache, $contexte_cache, &$page, &$lastinclude, $connect = '') {
265
+	static $parametrer, $cacher;
266 266
 	if (!$parametrer)
267 267
 		$parametrer = charger_fonction('parametrer', 'public');
268 268
 	$page = $parametrer($fond, $contexte, $chemin_cache, $connect);
269 269
 	// et on l'enregistre sur le disque
270 270
 	if ($chemin_cache
271
-	AND $use_cache>-1
271
+	AND $use_cache > -1
272 272
 	AND is_array($page)
273 273
 	AND count($page)
274
-	AND $page['entetes']['X-Spip-Cache'] > 0){
274
+	AND $page['entetes']['X-Spip-Cache'] > 0) {
275 275
 		if (is_null($cacher))
276 276
 			$cacher = charger_fonction('cacher', 'public', true);
277 277
 		$lastinclude = time();
@@ -307,7 +307,7 @@  discard block
 block discarded – undo
307 307
 // $echo = faut-il faire echo ou return
308 308
 
309 309
 // http://doc.spip.org/@inclure_balise_dynamique
310
-function inclure_balise_dynamique($texte, $echo=true, $contexte_compil=array())
310
+function inclure_balise_dynamique($texte, $echo = true, $contexte_compil = array())
311 311
 {
312 312
 	if (is_array($texte)) {
313 313
 
@@ -317,7 +317,7 @@  discard block
 block discarded – undo
317 317
 		$d = isset($GLOBALS['delais']) ? $GLOBALS['delais'] : NULL;
318 318
 		$GLOBALS['delais'] = $delainc;
319 319
 
320
-		$page = recuperer_fond($fond,$contexte_inclus,array('trim'=>false, 'raw' => true, 'compil' => $contexte_compil));
320
+		$page = recuperer_fond($fond, $contexte_inclus, array('trim'=>false, 'raw' => true, 'compil' => $contexte_compil));
321 321
 
322 322
 		$texte = $page['texte'];
323 323
 
@@ -331,14 +331,14 @@  discard block
 block discarded – undo
331 331
 				if (!is_array($GLOBALS['page']['entetes']))
332 332
 					$GLOBALS['page']['entetes'] = array();
333 333
 				$GLOBALS['page']['entetes'] = 
334
-					array_merge($GLOBALS['page']['entetes'],$page['entetes']);
334
+					array_merge($GLOBALS['page']['entetes'], $page['entetes']);
335 335
 			}
336 336
 		}
337 337
 		// _pipelines au pluriel array('nom_pipeline' => $args...) avec une syntaxe permettant plusieurs pipelines
338 338
 		if (isset($page['contexte']['_pipelines'])
339 339
 		  AND is_array($page['contexte']['_pipelines'])
340 340
 			AND count($page['contexte']['_pipelines'])) {
341
-			foreach($page['contexte']['_pipelines'] as $pipe=>$args){
341
+			foreach ($page['contexte']['_pipelines'] as $pipe=>$args) {
342 342
 				$args['contexte'] = $page['contexte'];
343 343
 				unset($args['contexte']['_pipelines']); // par precaution, meme si le risque de boucle infinie est a priori nul
344 344
 				$texte = pipeline(
@@ -355,7 +355,7 @@  discard block
 block discarded – undo
355 355
 
356 356
 	if (defined('_VAR_MODE') AND _VAR_MODE == 'debug') {
357 357
 		// compatibilite : avant on donnait le numero de ligne ou rien.
358
-		$ligne =  intval(isset($contexte_compil[3]) ? $contexte_compil[3] : $contexte_compil);
358
+		$ligne = intval(isset($contexte_compil[3]) ? $contexte_compil[3] : $contexte_compil);
359 359
 		$GLOBALS['debug_objets']['resultat'][$ligne] = $texte;
360 360
 	}
361 361
 	if ($echo)
@@ -366,7 +366,7 @@  discard block
 block discarded – undo
366 366
 }
367 367
 
368 368
 // http://doc.spip.org/@message_page_indisponible
369
-function message_page_indisponible ($page, $contexte) {
369
+function message_page_indisponible($page, $contexte) {
370 370
 	static $deja = false;
371 371
 	if ($deja) return "erreur";
372 372
 	$codes = array(
@@ -383,7 +383,7 @@  discard block
 block discarded – undo
383 383
 	$deja = true;
384 384
 	// passer aux plugins qui peuvent decider d'une page d'erreur plus pertinent
385 385
 	// ex restriction d'acces => 401
386
-	$contexte = pipeline('page_indisponible',$contexte);
386
+	$contexte = pipeline('page_indisponible', $contexte);
387 387
 
388 388
 	// produire la page d'erreur
389 389
 	$page = inclure_page($contexte['fond'], $contexte);
@@ -400,14 +400,14 @@  discard block
 block discarded – undo
400 400
 function creer_contexte_de_modele($args) {
401 401
 	$contexte = array();
402 402
 	foreach ($args as $var=>$val) {
403
-		if (is_int($var)){ // argument pas formate
403
+		if (is_int($var)) { // argument pas formate
404 404
 			if (in_array($val, array('left', 'right', 'center'))) {
405 405
 				$var = 'align';
406 406
 				$contexte[$var] = $val;
407 407
 			} else {
408 408
 				$args = explode('=', $val);
409
-				if (count($args)>=2) // Flashvars=arg1=machin&arg2=truc genere plus de deux args
410
-					$contexte[trim($args[0])] = substr($val,strlen($args[0])+1);
409
+				if (count($args) >= 2) // Flashvars=arg1=machin&arg2=truc genere plus de deux args
410
+					$contexte[trim($args[0])] = substr($val, strlen($args[0]) + 1);
411 411
 				else // notation abregee
412 412
 					$contexte[trim($val)] = trim($val);
413 413
 			}
@@ -421,10 +421,10 @@  discard block
 block discarded – undo
421 421
 
422 422
 // Calcule le modele et retourne la mini-page ainsi calculee
423 423
 // http://doc.spip.org/@inclure_modele
424
-function inclure_modele($type, $id, $params, $lien, $connect='', $env=array()) {
424
+function inclure_modele($type, $id, $params, $lien, $connect = '', $env = array()) {
425 425
 
426 426
 	static $compteur;
427
-	if (++$compteur>10) return ''; # ne pas boucler indefiniment
427
+	if (++$compteur > 10) return ''; # ne pas boucler indefiniment
428 428
 
429 429
 	$type = strtolower($type);
430 430
 
@@ -446,13 +446,13 @@  discard block
 block discarded – undo
446 446
 				$class = $soustype;
447 447
 			}
448 448
 			// enlever le sous type des params
449
-			$params = array_diff($params,array($soustype));
449
+			$params = array_diff($params, array($soustype));
450 450
 		}
451 451
 	}
452 452
 
453 453
 	// Si ca marche pas en precisant le sous-type, prendre le type
454
-	if (!$fond AND !trouve_modele($fond = $type)){
455
-		spip_log("Modele $type introuvable",_LOG_INFO_IMPORTANTE);
454
+	if (!$fond AND !trouve_modele($fond = $type)) {
455
+		spip_log("Modele $type introuvable", _LOG_INFO_IMPORTANTE);
456 456
 		return false;
457 457
 	}
458 458
 	$fond = 'modeles/'.$fond;
@@ -474,7 +474,7 @@  discard block
 block discarded – undo
474 474
 	// Si un lien a ete passe en parametre, ex: [<modele1>->url]
475 475
 	if ($lien) {
476 476
 		# un eventuel guillemet (") sera reechappe par #ENV
477
-		$contexte['lien'] = str_replace("&quot;",'"', $lien['href']);
477
+		$contexte['lien'] = str_replace("&quot;", '"', $lien['href']);
478 478
 		$contexte['lien_class'] = $lien['class'];
479 479
 		$contexte['lien_mime'] = $lien['mime'];
480 480
 		$contexte['lien_title'] = $lien['title'];
@@ -485,7 +485,7 @@  discard block
 block discarded – undo
485 485
 	// par exemple : <img1|center>, <emb12|autostart=true> ou <doc1|lang=en>
486 486
 	$arg_list = creer_contexte_de_modele($params);
487 487
 	$contexte['args'] = $arg_list; // on passe la liste des arguments du modeles dans une variable args
488
-	$contexte = array_merge($contexte,$arg_list);
488
+	$contexte = array_merge($contexte, $arg_list);
489 489
 
490 490
 
491 491
 	// Appliquer le modele avec le contexte
@@ -495,7 +495,7 @@  discard block
 block discarded – undo
495 495
 	// Regarder si le modele tient compte des liens (il *doit* alors indiquer
496 496
 	// spip_lien_ok dans les classes de son conteneur de premier niveau ;
497 497
 	// sinon, s'il y a un lien, on l'ajoute classiquement
498
-	if (strstr(' ' . ($classes = extraire_attribut($retour, 'class')).' ',
498
+	if (strstr(' '.($classes = extraire_attribut($retour, 'class')).' ',
499 499
 	'spip_lien_ok')) {
500 500
 		$retour = inserer_attribut($retour, 'class',
501 501
 			trim(str_replace(' spip_lien_ok ', ' ', " $classes ")));
@@ -504,8 +504,8 @@  discard block
 block discarded – undo
504 504
 
505 505
 	$compteur--;
506 506
 
507
-	return  (isset($arg_list['ajax'])AND $arg_list['ajax']=='ajax')
508
-	? encoder_contexte_ajax($contexte,'',$retour)
507
+	return  (isset($arg_list['ajax']) AND $arg_list['ajax'] == 'ajax')
508
+	? encoder_contexte_ajax($contexte, '', $retour)
509 509
 	: $retour; 
510 510
 }
511 511
 
@@ -514,7 +514,7 @@  discard block
 block discarded – undo
514 514
 // pour recuperer $page complet, utiliser:
515 515
 // 	recuperer_fond($fond,$contexte,array('raw'=>true))
516 516
 // http://doc.spip.org/@evaluer_fond
517
-function evaluer_fond ($fond, $contexte=array(), $connect=null) {
517
+function evaluer_fond($fond, $contexte = array(), $connect = null) {
518 518
 
519 519
 	$page = inclure_page($fond, $contexte, $connect);
520 520
 
@@ -536,36 +536,36 @@  discard block
 block discarded – undo
536 536
 
537 537
 
538 538
 // http://doc.spip.org/@page_base_href
539
-function page_base_href(&$texte){
539
+function page_base_href(&$texte) {
540 540
 	static $set_html_base = null;
541
-	if (is_null($set_html_base)){
541
+	if (is_null($set_html_base)) {
542 542
 		if (!defined('_SET_HTML_BASE'))
543 543
 			// si la profondeur est superieure a 1
544 544
 			// est que ce n'est pas une url page ni une url action
545 545
 			// activer par defaut
546 546
 			$set_html_base = ((
547
-				$GLOBALS['profondeur_url'] >= (_DIR_RESTREINT?1:2)
547
+				$GLOBALS['profondeur_url'] >= (_DIR_RESTREINT ? 1 : 2)
548 548
 				AND _request(_SPIP_PAGE) !== 'login'
549
-				AND !_request('action'))?true:false);
549
+				AND !_request('action')) ?true:false);
550 550
 		else
551 551
 			$set_html_base = _SET_HTML_BASE;
552 552
 	}
553 553
 
554 554
 	if ($set_html_base
555 555
 	  AND isset($GLOBALS['html']) AND $GLOBALS['html']
556
-	  AND $GLOBALS['profondeur_url']>0
557
-	  AND ($poshead = strpos($texte,'</head>'))!==FALSE){
558
-		$head = substr($texte,0,$poshead);
556
+	  AND $GLOBALS['profondeur_url'] > 0
557
+	  AND ($poshead = strpos($texte, '</head>')) !== FALSE) {
558
+		$head = substr($texte, 0, $poshead);
559 559
 		$insert = false;
560
-		if (strpos($head, '<base')===false) 
560
+		if (strpos($head, '<base') === false) 
561 561
 			$insert = true;
562 562
 		else {
563 563
 			// si aucun <base ...> n'a de href c'est bon quand meme !
564 564
 			$insert = true;
565 565
 			include_spip('inc/filtres');
566
-			$bases = extraire_balises($head,'base');
566
+			$bases = extraire_balises($head, 'base');
567 567
 			foreach ($bases as $base)
568
-				if (extraire_attribut($base,'href'))
568
+				if (extraire_attribut($base, 'href'))
569 569
 					$insert = false;
570 570
 		}
571 571
 		if ($insert) {
@@ -574,21 +574,21 @@  discard block
 block discarded – undo
574 574
 			$base = url_absolue('./');
575 575
 			$bbase = "\n<base href=\"$base\" />";
576 576
 			if (($pos = strpos($head, '<head>')) !== false)
577
-				$head = substr_replace($head, $bbase, $pos+6, 0);
578
-			elseif(preg_match(",<head[^>]*>,i",$head,$r)){
577
+				$head = substr_replace($head, $bbase, $pos + 6, 0);
578
+			elseif (preg_match(",<head[^>]*>,i", $head, $r)) {
579 579
 				$head = str_replace($r[0], $r[0].$bbase, $head);
580 580
 			}
581
-			$texte = $head . substr($texte,$poshead);
581
+			$texte = $head.substr($texte, $poshead);
582 582
 			// gerer les ancres
583 583
 			$base = $_SERVER['REQUEST_URI'];
584 584
 			// pas de guillemets ni < dans l'URL qu'on insere dans le HTML
585
-			if (strpos($base,"'") or strpos($base,'"') or strpos($base,'<')) {
586
-				$base = str_replace(array("'",'"','<'),array("%27",'%22','%3C'), $base);
585
+			if (strpos($base, "'") or strpos($base, '"') or strpos($base, '<')) {
586
+				$base = str_replace(array("'", '"', '<'), array("%27", '%22', '%3C'), $base);
587 587
 			}
588
-			if (strpos($texte,"href='#")!==false)
589
-				$texte = str_replace("href='#","href='$base#",$texte);
590
-			if (strpos($texte, "href=\"#")!==false)
591
-				$texte = str_replace("href=\"#","href=\"$base#",$texte);
588
+			if (strpos($texte, "href='#") !== false)
589
+				$texte = str_replace("href='#", "href='$base#", $texte);
590
+			if (strpos($texte, "href=\"#") !== false)
591
+				$texte = str_replace("href=\"#", "href=\"$base#", $texte);
592 592
 		}
593 593
 	}
594 594
 }
@@ -600,7 +600,7 @@  discard block
 block discarded – undo
600 600
 function envoyer_entetes($entetes) {
601 601
 	foreach ($entetes as $k => $v)
602 602
 	#	if (strncmp($k, 'X-Spip-', 7))
603
-			@header(strlen($v)?"$k: $v":$k); 
603
+			@header(strlen($v) ? "$k: $v" : $k); 
604 604
 }
605 605
 
606 606
 ?>
Please login to merge, or discard this patch.
Braces   +127 added lines, -83 removed lines patch added patch discarded remove patch
@@ -10,9 +10,13 @@  discard block
 block discarded – undo
10 10
  *  Pour plus de details voir le fichier COPYING.txt ou l'aide en ligne.   *
11 11
 \***************************************************************************/
12 12
 
13
-if (!defined('_ECRIRE_INC_VERSION')) return;
13
+if (!defined('_ECRIRE_INC_VERSION')) {
14
+    return;
15
+}
14 16
 
15
-if (!defined('_CONTEXTE_IGNORE_VARIABLES')) define('_CONTEXTE_IGNORE_VARIABLES', "/(^var_|^PHPSESSID$)/");
17
+if (!defined('_CONTEXTE_IGNORE_VARIABLES')) {
18
+    define('_CONTEXTE_IGNORE_VARIABLES', "/(^var_|^PHPSESSID$)/");
19
+}
16 20
 //
17 21
 // calcule la page et les entetes
18 22
 // determine le contexte donne par l'URL (en tenant compte des reecritures) 
@@ -34,14 +38,17 @@  discard block
 block discarded – undo
34 38
 	$cacher = charger_fonction('cacher', 'public', true);
35 39
 	// Les quatre derniers parametres sont modifies par la fonction:
36 40
 	// emplacement, validite, et, s'il est valide, contenu & age
37
-	if ($cacher)
38
-		$res = $cacher($GLOBALS['contexte'], $use_cache, $chemin_cache, $page, $lastmodified);
39
-	else
40
-		$use_cache = -1;
41
+	if ($cacher) {
42
+			$res = $cacher($GLOBALS['contexte'], $use_cache, $chemin_cache, $page, $lastmodified);
43
+	} else {
44
+			$use_cache = -1;
45
+	}
41 46
 	// Si un resultat est retourne, c'est un message d'impossibilite
42 47
 	if ($res) {return array('texte' => $res);}
43 48
 
44
-	if (!$chemin_cache || !$lastmodified) $lastmodified = time();
49
+	if (!$chemin_cache || !$lastmodified) {
50
+	    $lastmodified = time();
51
+	}
45 52
 
46 53
 	$headers_only = ($_SERVER['REQUEST_METHOD'] == 'HEAD');
47 54
 	$calculer_page = true;
@@ -83,8 +90,7 @@  discard block
 block discarded – undo
83 90
 			// plus necessaire si on utilise bien la fonction urls_decoder_url
84 91
 			#unset($_SERVER['REDIRECT_url_propre']);
85 92
 			#unset($_ENV['url_propre']);
86
-		}
87
-		else {
93
+		} else {
88 94
 			// Compat ascendante :
89 95
 			// 1. $contexte est global
90 96
 			// (a evacuer car urls_decoder_url gere ce probleme ?)
@@ -94,8 +100,9 @@  discard block
 block discarded – undo
94 100
 				list($fond,$contexte,$url_redirect) = urls_decoder_url(nettoyer_uri(),$fond,$contexte,true);
95 101
 			}
96 102
 			// squelette par defaut
97
-			if (!strlen($fond))
98
-				$fond = 'sommaire';
103
+			if (!strlen($fond)) {
104
+							$fond = 'sommaire';
105
+			}
99 106
 
100 107
 			// produire la page : peut mettre a jour $lastmodified
101 108
 			$produire_page = charger_fonction('produire_page','public');
@@ -109,7 +116,9 @@  discard block
 block discarded – undo
109 116
 			}
110 117
 		}
111 118
 
112
-		if ($page AND $chemin_cache) $page['cache'] = $chemin_cache;
119
+		if ($page AND $chemin_cache) {
120
+		    $page['cache'] = $chemin_cache;
121
+		}
113 122
 
114 123
 		auto_content_type($page);
115 124
 
@@ -140,12 +149,14 @@  discard block
 block discarded – undo
140 149
 	// a celui qu'on a refuse d'honorer plus haut (cf. #655)
141 150
 	if ($lastmodified
142 151
 	AND !isset($_SERVER['HTTP_IF_MODIFIED_SINCE'])
143
-	AND !isset($page['entetes']["Last-Modified"]))
144
-		$page['entetes']["Last-Modified"]=gmdate("D, d M Y H:i:s", $lastmodified)." GMT";
152
+	AND !isset($page['entetes']["Last-Modified"])) {
153
+			$page['entetes']["Last-Modified"]=gmdate("D, d M Y H:i:s", $lastmodified)." GMT";
154
+	}
145 155
 
146 156
 	// fermer la connexion apres les headers si requete HEAD
147
-	if ($headers_only)
148
-		$page['entetes']["Connection"] = "close";
157
+	if ($headers_only) {
158
+			$page['entetes']["Connection"] = "close";
159
+	}
149 160
 
150 161
 	return $page;
151 162
 }
@@ -162,12 +173,14 @@  discard block
 block discarded – undo
162 173
 
163 174
 	$contexte = array();
164 175
 	foreach($_GET as $var => $val) {
165
-		if (!preg_match(_CONTEXTE_IGNORE_VARIABLES,$var))
166
-			$contexte[$var] = $val;
176
+		if (!preg_match(_CONTEXTE_IGNORE_VARIABLES,$var)) {
177
+					$contexte[$var] = $val;
178
+		}
167 179
 	}
168 180
 	foreach($_POST as $var => $val) {
169
-		if (!preg_match(_CONTEXTE_IGNORE_VARIABLES,$var))
170
-			$contexte[$var] = $val;
181
+		if (!preg_match(_CONTEXTE_IGNORE_VARIABLES,$var)) {
182
+					$contexte[$var] = $val;
183
+		}
171 184
 	}
172 185
 
173 186
 	return $contexte;
@@ -182,8 +195,9 @@  discard block
 block discarded – undo
182 195
  */
183 196
 function calculer_contexte_implicite(){
184 197
 	static $notes = null;
185
-	if (is_null($notes))
186
-		$notes = charger_fonction('notes','inc',true);
198
+	if (is_null($notes)) {
199
+			$notes = charger_fonction('notes','inc',true);
200
+	}
187 201
 	$contexte_implicite = array(
188 202
 		'squelettes' => $GLOBALS['dossier_squelettes'], // devrait etre 'chemin' => $GLOBALS['path_sig'], ?
189 203
 		'host' => $_SERVER['HTTP_HOST'],
@@ -222,14 +236,16 @@  discard block
 block discarded – undo
222 236
 	unset($contexte['fond']);
223 237
 	$page = array('contexte_implicite'=>calculer_contexte_implicite());
224 238
 	$page['contexte_implicite']['cache'] = $fond;
225
-	if (is_null($cacher))
226
-		$cacher = charger_fonction('cacher', 'public', true);
239
+	if (is_null($cacher)) {
240
+			$cacher = charger_fonction('cacher', 'public', true);
241
+	}
227 242
 	// Les quatre derniers parametres sont modifies par la fonction:
228 243
 	// emplacement, validite, et, s'il est valide, contenu & age
229
-	if ($cacher)
230
-		$res = $cacher($contexte, $use_cache, $chemin_cache, $page, $lastinclude);
231
-	else
232
-		$use_cache = -1;
244
+	if ($cacher) {
245
+			$res = $cacher($contexte, $use_cache, $chemin_cache, $page, $lastinclude);
246
+	} else {
247
+			$use_cache = -1;
248
+	}
233 249
 	// $res = message d'erreur : on sort de la
234 250
 	if ($res) {return array('texte' => $res);}
235 251
 
@@ -237,8 +253,9 @@  discard block
 block discarded – undo
237 253
 	// produire la page : peut mettre a jour $lastinclude
238 254
 	// le contexte_cache envoye a cacher() a ete conserve et est passe a produire
239 255
 	if ($use_cache) {
240
-		if (is_null($produire_page))
241
-			$produire_page = charger_fonction('produire_page','public');
256
+		if (is_null($produire_page)) {
257
+					$produire_page = charger_fonction('produire_page','public');
258
+		}
242 259
 		$page = $produire_page($fond, $contexte, $use_cache, $chemin_cache, $contexte, $page, $lastinclude, $connect);
243 260
 	}
244 261
 	// dans tous les cas, mettre a jour $lastmodified
@@ -263,8 +280,9 @@  discard block
 block discarded – undo
263 280
  */
264 281
 function public_produire_page_dist($fond, $contexte, $use_cache, $chemin_cache, $contexte_cache, &$page, &$lastinclude, $connect=''){
265 282
 	static $parametrer,$cacher;
266
-	if (!$parametrer)
267
-		$parametrer = charger_fonction('parametrer', 'public');
283
+	if (!$parametrer) {
284
+			$parametrer = charger_fonction('parametrer', 'public');
285
+	}
268 286
 	$page = $parametrer($fond, $contexte, $chemin_cache, $connect);
269 287
 	// et on l'enregistre sur le disque
270 288
 	if ($chemin_cache
@@ -272,13 +290,15 @@  discard block
 block discarded – undo
272 290
 	AND is_array($page)
273 291
 	AND count($page)
274 292
 	AND $page['entetes']['X-Spip-Cache'] > 0){
275
-		if (is_null($cacher))
276
-			$cacher = charger_fonction('cacher', 'public', true);
293
+		if (is_null($cacher)) {
294
+					$cacher = charger_fonction('cacher', 'public', true);
295
+		}
277 296
 		$lastinclude = time();
278
-		if ($cacher)
279
-			$cacher($contexte_cache, $use_cache, $chemin_cache, $page, $lastinclude);
280
-		else
281
-			$use_cache = -1;
297
+		if ($cacher) {
298
+					$cacher($contexte_cache, $use_cache, $chemin_cache, $page, $lastinclude);
299
+		} else {
300
+					$use_cache = -1;
301
+		}
282 302
 	}
283 303
 	return $page;
284 304
 }
@@ -296,8 +316,10 @@  discard block
 block discarded – undo
296 316
 
297 317
 function inserer_balise_dynamique($contexte_exec, $contexte_compil)
298 318
 {
299
-	if (!is_array($contexte_exec))
300
-		echo $contexte_exec; // message d'erreur etc
319
+	if (!is_array($contexte_exec)) {
320
+			echo $contexte_exec;
321
+	}
322
+	// message d'erreur etc
301 323
 	else {
302 324
 		inclure_balise_dynamique($contexte_exec, true, $contexte_compil);
303 325
 	}
@@ -328,8 +350,9 @@  discard block
 block discarded – undo
328 350
 			unset($page['entetes']['X-Spip-Cache']);
329 351
 			unset($page['entetes']['Content-Type']);
330 352
 			if (isset($GLOBALS['page']) AND is_array($GLOBALS['page'])) {
331
-				if (!is_array($GLOBALS['page']['entetes']))
332
-					$GLOBALS['page']['entetes'] = array();
353
+				if (!is_array($GLOBALS['page']['entetes'])) {
354
+									$GLOBALS['page']['entetes'] = array();
355
+				}
333 356
 				$GLOBALS['page']['entetes'] = 
334 357
 					array_merge($GLOBALS['page']['entetes'],$page['entetes']);
335 358
 			}
@@ -358,17 +381,20 @@  discard block
 block discarded – undo
358 381
 		$ligne =  intval(isset($contexte_compil[3]) ? $contexte_compil[3] : $contexte_compil);
359 382
 		$GLOBALS['debug_objets']['resultat'][$ligne] = $texte;
360 383
 	}
361
-	if ($echo)
362
-		echo $texte;
363
-	else
364
-		return $texte;
384
+	if ($echo) {
385
+			echo $texte;
386
+	} else {
387
+			return $texte;
388
+	}
365 389
 
366 390
 }
367 391
 
368 392
 // http://doc.spip.org/@message_page_indisponible
369 393
 function message_page_indisponible ($page, $contexte) {
370 394
 	static $deja = false;
371
-	if ($deja) return "erreur";
395
+	if ($deja) {
396
+	    return "erreur";
397
+	}
372 398
 	$codes = array(
373 399
 		'404' => '404 Not Found',
374 400
 		'503' => '503 Service Unavailable',
@@ -377,8 +403,9 @@  discard block
 block discarded – undo
377 403
 	$contexte['status'] = ($page !== false) ? '404' : '503';
378 404
 	$contexte['code'] = $codes[$contexte['status']];
379 405
 	$contexte['fond'] = '404'; // gere les 2 erreurs
380
-	if (!isset($contexte['lang']))
381
-		$contexte['lang'] = $GLOBALS['spip_lang'];
406
+	if (!isset($contexte['lang'])) {
407
+			$contexte['lang'] = $GLOBALS['spip_lang'];
408
+	}
382 409
 
383 410
 	$deja = true;
384 411
 	// passer aux plugins qui peuvent decider d'une page d'erreur plus pertinent
@@ -387,8 +414,9 @@  discard block
 block discarded – undo
387 414
 
388 415
 	// produire la page d'erreur
389 416
 	$page = inclure_page($contexte['fond'], $contexte);
390
-	if (!$page)
391
-		$page = inclure_page('404', $contexte);
417
+	if (!$page) {
418
+			$page = inclure_page('404', $contexte);
419
+	}
392 420
 	$page['status'] = $contexte['status'];
393 421
 
394 422
 	return $page;
@@ -406,14 +434,17 @@  discard block
 block discarded – undo
406 434
 				$contexte[$var] = $val;
407 435
 			} else {
408 436
 				$args = explode('=', $val);
409
-				if (count($args)>=2) // Flashvars=arg1=machin&arg2=truc genere plus de deux args
437
+				if (count($args)>=2) {
438
+				    // Flashvars=arg1=machin&arg2=truc genere plus de deux args
410 439
 					$contexte[trim($args[0])] = substr($val,strlen($args[0])+1);
411
-				else // notation abregee
440
+				} else {
441
+				    // notation abregee
412 442
 					$contexte[trim($val)] = trim($val);
443
+				}
413 444
 			}
445
+		} else {
446
+					$contexte[$var] = $val;
414 447
 		}
415
-		else
416
-			$contexte[$var] = $val;
417 448
 	}
418 449
 
419 450
 	return $contexte;
@@ -424,7 +455,10 @@  discard block
 block discarded – undo
424 455
 function inclure_modele($type, $id, $params, $lien, $connect='', $env=array()) {
425 456
 
426 457
 	static $compteur;
427
-	if (++$compteur>10) return ''; # ne pas boucler indefiniment
458
+	if (++$compteur>10) {
459
+	    return '';
460
+	}
461
+	# ne pas boucler indefiniment
428 462
 
429 463
 	$type = strtolower($type);
430 464
 
@@ -468,8 +502,9 @@  discard block
 block discarded – undo
468 502
 	$_id = id_table_objet($type);
469 503
 	$contexte['id'] = $contexte[$_id] = $id;
470 504
 
471
-	if (isset($class))
472
-		$contexte['class'] = $class;
505
+	if (isset($class)) {
506
+			$contexte['class'] = $class;
507
+	}
473 508
 
474 509
 	// Si un lien a ete passe en parametre, ex: [<modele1>->url]
475 510
 	if ($lien) {
@@ -499,8 +534,9 @@  discard block
 block discarded – undo
499 534
 	'spip_lien_ok')) {
500 535
 		$retour = inserer_attribut($retour, 'class',
501 536
 			trim(str_replace(' spip_lien_ok ', ' ', " $classes ")));
502
-	} else if ($lien)
503
-		$retour = "<a href='".$lien['href']."' class='".$lien['class']."'>".$retour."</a>";
537
+	} else if ($lien) {
538
+			$retour = "<a href='".$lien['href']."' class='".$lien['class']."'>".$retour."</a>";
539
+	}
504 540
 
505 541
 	$compteur--;
506 542
 
@@ -518,7 +554,9 @@  discard block
 block discarded – undo
518 554
 
519 555
 	$page = inclure_page($fond, $contexte, $connect);
520 556
 
521
-	if (!$page) return $page;
557
+	if (!$page) {
558
+	    return $page;
559
+	}
522 560
 	// eval $page et affecte $res
523 561
 	include _ROOT_RESTREINT."public/evaluer_page.php";
524 562
 	
@@ -528,8 +566,9 @@  discard block
 block discarded – undo
528 566
 	// il faut bien lever ce drapeau apres avoir evalue le fond
529 567
 	// pour ne pas faire descendre le flag vers les inclusions appelees
530 568
 	if (isset($page['invalideurs'])
531
-	AND isset($page['invalideurs']['session']))
532
-		$GLOBALS['cache_utilise_session'] = $page['invalideurs']['session'];
569
+	AND isset($page['invalideurs']['session'])) {
570
+			$GLOBALS['cache_utilise_session'] = $page['invalideurs']['session'];
571
+	}
533 572
 
534 573
 	return $page;
535 574
 }
@@ -539,16 +578,17 @@  discard block
 block discarded – undo
539 578
 function page_base_href(&$texte){
540 579
 	static $set_html_base = null;
541 580
 	if (is_null($set_html_base)){
542
-		if (!defined('_SET_HTML_BASE'))
543
-			// si la profondeur est superieure a 1
581
+		if (!defined('_SET_HTML_BASE')) {
582
+					// si la profondeur est superieure a 1
544 583
 			// est que ce n'est pas une url page ni une url action
545 584
 			// activer par defaut
546 585
 			$set_html_base = ((
547 586
 				$GLOBALS['profondeur_url'] >= (_DIR_RESTREINT?1:2)
548 587
 				AND _request(_SPIP_PAGE) !== 'login'
549 588
 				AND !_request('action'))?true:false);
550
-		else
551
-			$set_html_base = _SET_HTML_BASE;
589
+		} else {
590
+					$set_html_base = _SET_HTML_BASE;
591
+		}
552 592
 	}
553 593
 
554 594
 	if ($set_html_base
@@ -557,25 +597,26 @@  discard block
 block discarded – undo
557 597
 	  AND ($poshead = strpos($texte,'</head>'))!==FALSE){
558 598
 		$head = substr($texte,0,$poshead);
559 599
 		$insert = false;
560
-		if (strpos($head, '<base')===false) 
561
-			$insert = true;
562
-		else {
600
+		if (strpos($head, '<base')===false) {
601
+					$insert = true;
602
+		} else {
563 603
 			// si aucun <base ...> n'a de href c'est bon quand meme !
564 604
 			$insert = true;
565 605
 			include_spip('inc/filtres');
566 606
 			$bases = extraire_balises($head,'base');
567
-			foreach ($bases as $base)
568
-				if (extraire_attribut($base,'href'))
607
+			foreach ($bases as $base) {
608
+							if (extraire_attribut($base,'href'))
569 609
 					$insert = false;
610
+			}
570 611
 		}
571 612
 		if ($insert) {
572 613
 			include_spip('inc/filtres_mini');
573 614
 			// ajouter un base qui reglera tous les liens relatifs
574 615
 			$base = url_absolue('./');
575 616
 			$bbase = "\n<base href=\"$base\" />";
576
-			if (($pos = strpos($head, '<head>')) !== false)
577
-				$head = substr_replace($head, $bbase, $pos+6, 0);
578
-			elseif(preg_match(",<head[^>]*>,i",$head,$r)){
617
+			if (($pos = strpos($head, '<head>')) !== false) {
618
+							$head = substr_replace($head, $bbase, $pos+6, 0);
619
+			} elseif(preg_match(",<head[^>]*>,i",$head,$r)){
579 620
 				$head = str_replace($r[0], $r[0].$bbase, $head);
580 621
 			}
581 622
 			$texte = $head . substr($texte,$poshead);
@@ -585,10 +626,12 @@  discard block
 block discarded – undo
585 626
 			if (strpos($base,"'") or strpos($base,'"') or strpos($base,'<')) {
586 627
 				$base = str_replace(array("'",'"','<'),array("%27",'%22','%3C'), $base);
587 628
 			}
588
-			if (strpos($texte,"href='#")!==false)
589
-				$texte = str_replace("href='#","href='$base#",$texte);
590
-			if (strpos($texte, "href=\"#")!==false)
591
-				$texte = str_replace("href=\"#","href=\"$base#",$texte);
629
+			if (strpos($texte,"href='#")!==false) {
630
+							$texte = str_replace("href='#","href='$base#",$texte);
631
+			}
632
+			if (strpos($texte, "href=\"#")!==false) {
633
+							$texte = str_replace("href=\"#","href=\"$base#",$texte);
634
+			}
592 635
 		}
593 636
 	}
594 637
 }
@@ -598,9 +641,10 @@  discard block
 block discarded – undo
598 641
 // et demarrent par X-Spip-...
599 642
 // http://doc.spip.org/@envoyer_entetes
600 643
 function envoyer_entetes($entetes) {
601
-	foreach ($entetes as $k => $v)
602
-	#	if (strncmp($k, 'X-Spip-', 7))
603
-			@header(strlen($v)?"$k: $v":$k); 
604
-}
644
+	foreach ($entetes as $k => $v) {
645
+		#	if (strncmp($k, 'X-Spip-', 7))
646
+			@header(strlen($v)?"$k: $v":$k);
647
+	}
648
+	}
605 649
 
606 650
 ?>
Please login to merge, or discard this patch.