Completed
Push — master ( 62aed1...8add54 )
by cam
01:34
created
prive/formulaires/editer_article.php 1 patch
Indentation   +93 added lines, -93 removed lines patch added patch discarded remove patch
@@ -16,7 +16,7 @@  discard block
 block discarded – undo
16 16
  **/
17 17
 
18 18
 if (!defined('_ECRIRE_INC_VERSION')) {
19
-	return;
19
+    return;
20 20
 }
21 21
 
22 22
 include_spip('inc/actions');
@@ -45,30 +45,30 @@  discard block
 block discarded – undo
45 45
  *     Environnement du formulaire
46 46
  **/
47 47
 function formulaires_editer_article_charger_dist(
48
-	$id_article = 'new',
49
-	$id_rubrique = 0,
50
-	$retour = '',
51
-	$lier_trad = 0,
52
-	$config_fonc = 'articles_edit_config',
53
-	$row = [],
54
-	$hidden = ''
48
+    $id_article = 'new',
49
+    $id_rubrique = 0,
50
+    $retour = '',
51
+    $lier_trad = 0,
52
+    $config_fonc = 'articles_edit_config',
53
+    $row = [],
54
+    $hidden = ''
55 55
 ) {
56
-	$valeurs = formulaires_editer_objet_charger(
57
-		'article',
58
-		$id_article,
59
-		$id_rubrique,
60
-		$lier_trad,
61
-		$retour,
62
-		$config_fonc,
63
-		$row,
64
-		$hidden
65
-	);
56
+    $valeurs = formulaires_editer_objet_charger(
57
+        'article',
58
+        $id_article,
59
+        $id_rubrique,
60
+        $lier_trad,
61
+        $retour,
62
+        $config_fonc,
63
+        $row,
64
+        $hidden
65
+    );
66 66
 
67
-	if ((int) $id_article && !autoriser('modifier', 'article', (int) $id_article)) {
68
-		$valeurs['editable'] = '';
69
-	}
67
+    if ((int) $id_article && !autoriser('modifier', 'article', (int) $id_article)) {
68
+        $valeurs['editable'] = '';
69
+    }
70 70
 
71
-	return $valeurs;
71
+    return $valeurs;
72 72
 }
73 73
 
74 74
 /**
@@ -93,15 +93,15 @@  discard block
 block discarded – undo
93 93
  *     Hash du formulaire
94 94
  */
95 95
 function formulaires_editer_article_identifier_dist(
96
-	$id_article = 'new',
97
-	$id_rubrique = 0,
98
-	$retour = '',
99
-	$lier_trad = 0,
100
-	$config_fonc = 'articles_edit_config',
101
-	$row = [],
102
-	$hidden = ''
96
+    $id_article = 'new',
97
+    $id_rubrique = 0,
98
+    $retour = '',
99
+    $lier_trad = 0,
100
+    $config_fonc = 'articles_edit_config',
101
+    $row = [],
102
+    $hidden = ''
103 103
 ) {
104
-	return serialize([(int) $id_article, $lier_trad]);
104
+    return serialize([(int) $id_article, $lier_trad]);
105 105
 }
106 106
 
107 107
 /**
@@ -113,11 +113,11 @@  discard block
 block discarded – undo
113 113
  *     Configuration pour le formulaire
114 114
  */
115 115
 function articles_edit_config(array $row): array {
116
-	return [
117
-		'lignes' => 8,
118
-		'langue' => $GLOBALS['spip_lang'],
119
-		'restreint' => $row['statut'] === 'publie'
120
-	];
116
+    return [
117
+        'lignes' => 8,
118
+        'langue' => $GLOBALS['spip_lang'],
119
+        'restreint' => $row['statut'] === 'publie'
120
+    ];
121 121
 }
122 122
 
123 123
 /**
@@ -143,43 +143,43 @@  discard block
 block discarded – undo
143 143
  *     Erreurs du formulaire
144 144
  **/
145 145
 function formulaires_editer_article_verifier_dist(
146
-	$id_article = 'new',
147
-	$id_rubrique = 0,
148
-	$retour = '',
149
-	$lier_trad = 0,
150
-	$config_fonc = 'articles_edit_config',
151
-	$row = [],
152
-	$hidden = ''
146
+    $id_article = 'new',
147
+    $id_rubrique = 0,
148
+    $retour = '',
149
+    $lier_trad = 0,
150
+    $config_fonc = 'articles_edit_config',
151
+    $row = [],
152
+    $hidden = ''
153 153
 ) {
154
-	// auto-renseigner le titre si il n'existe pas
155
-	titre_automatique('titre', ['descriptif', 'chapo', 'texte']);
156
-	if (!_request('id_parent') && !(int) $id_article) {
157
-		$valeurs = formulaires_editer_objet_charger(
158
-			'article',
159
-			$id_article,
160
-			$id_rubrique,
161
-			$lier_trad,
162
-			$retour,
163
-			$config_fonc,
164
-			$row,
165
-			$hidden
166
-		);
167
-		set_request('id_parent', $valeurs['id_parent']);
168
-	}
169
-	// on ne demande pas le titre obligatoire : il sera rempli a la volee dans editer_article si vide
170
-	$erreurs = formulaires_editer_objet_verifier('article', $id_article, ['id_parent']);
171
-	// si on utilise le formulaire dans le public
172
-	if (!function_exists('autoriser')) {
173
-		include_spip('inc/autoriser');
174
-	}
175
-	if (
176
-		!isset($erreurs['id_parent'])
177
-		&& !autoriser('creerarticledans', 'rubrique', _request('id_parent'))
178
-	) {
179
-		$erreurs['id_parent'] = _T('info_creerdansrubrique_non_autorise');
180
-	}
154
+    // auto-renseigner le titre si il n'existe pas
155
+    titre_automatique('titre', ['descriptif', 'chapo', 'texte']);
156
+    if (!_request('id_parent') && !(int) $id_article) {
157
+        $valeurs = formulaires_editer_objet_charger(
158
+            'article',
159
+            $id_article,
160
+            $id_rubrique,
161
+            $lier_trad,
162
+            $retour,
163
+            $config_fonc,
164
+            $row,
165
+            $hidden
166
+        );
167
+        set_request('id_parent', $valeurs['id_parent']);
168
+    }
169
+    // on ne demande pas le titre obligatoire : il sera rempli a la volee dans editer_article si vide
170
+    $erreurs = formulaires_editer_objet_verifier('article', $id_article, ['id_parent']);
171
+    // si on utilise le formulaire dans le public
172
+    if (!function_exists('autoriser')) {
173
+        include_spip('inc/autoriser');
174
+    }
175
+    if (
176
+        !isset($erreurs['id_parent'])
177
+        && !autoriser('creerarticledans', 'rubrique', _request('id_parent'))
178
+    ) {
179
+        $erreurs['id_parent'] = _T('info_creerdansrubrique_non_autorise');
180
+    }
181 181
 
182
-	return $erreurs;
182
+    return $erreurs;
183 183
 }
184 184
 
185 185
 /**
@@ -205,29 +205,29 @@  discard block
 block discarded – undo
205 205
  *     Retours des traitements
206 206
  **/
207 207
 function formulaires_editer_article_traiter_dist(
208
-	$id_article = 'new',
209
-	$id_rubrique = 0,
210
-	$retour = '',
211
-	$lier_trad = 0,
212
-	$config_fonc = 'articles_edit_config',
213
-	$row = [],
214
-	$hidden = ''
208
+    $id_article = 'new',
209
+    $id_rubrique = 0,
210
+    $retour = '',
211
+    $lier_trad = 0,
212
+    $config_fonc = 'articles_edit_config',
213
+    $row = [],
214
+    $hidden = ''
215 215
 ) {
216
-	// ici on ignore changer_lang qui est poste en cas de trad,
217
-	// car l'heuristique du choix de la langue est pris en charge par article_inserer
218
-	// en fonction de la config du site et de la rubrique choisie
219
-	if (!$lier_trad) {
220
-		set_request('changer_lang');
221
-	}
216
+    // ici on ignore changer_lang qui est poste en cas de trad,
217
+    // car l'heuristique du choix de la langue est pris en charge par article_inserer
218
+    // en fonction de la config du site et de la rubrique choisie
219
+    if (!$lier_trad) {
220
+        set_request('changer_lang');
221
+    }
222 222
 
223
-	return formulaires_editer_objet_traiter(
224
-		'article',
225
-		$id_article,
226
-		$id_rubrique,
227
-		$lier_trad,
228
-		$retour,
229
-		$config_fonc,
230
-		$row,
231
-		$hidden
232
-	);
223
+    return formulaires_editer_objet_traiter(
224
+        'article',
225
+        $id_article,
226
+        $id_rubrique,
227
+        $lier_trad,
228
+        $retour,
229
+        $config_fonc,
230
+        $row,
231
+        $hidden
232
+    );
233 233
 }
Please login to merge, or discard this patch.
prive/formulaires/editer_logo.php 2 patches
Spacing   +8 added lines, -8 removed lines patch added patch discarded remove patch
@@ -75,19 +75,19 @@  discard block
 block discarded – undo
75 75
 		}
76 76
 		switch ($objet) {
77 77
 			case 'article':
78
-				$libelle .= ' ' . aider('logoart');
78
+				$libelle .= ' '.aider('logoart');
79 79
 				break;
80 80
 			case 'breve':
81
-				$libelle .= ' ' . aider('breveslogo');
81
+				$libelle .= ' '.aider('breveslogo');
82 82
 				break;
83 83
 			case 'rubrique':
84
-				$libelle .= ' ' . aider('rublogo');
84
+				$libelle .= ' '.aider('rublogo');
85 85
 				break;
86 86
 			default:
87 87
 				break;
88 88
 		}
89 89
 
90
-		$options['titre'] = $img . $libelle;
90
+		$options['titre'] = $img.$libelle;
91 91
 	}
92 92
 	if (!isset($options['editable'])) {
93 93
 		include_spip('inc/autoriser');
@@ -112,8 +112,8 @@  discard block
 block discarded – undo
112 112
 	foreach ($etats as $etat) {
113 113
 		$logo = $chercher_logo($id_objet, $_id_objet, $etat);
114 114
 		if ($logo) {
115
-			$res['logo_' . $etat] = $logo[0];
116
-			$res['logo_id_' . $etat] = $logo[5]['id_document'] ?? '';
115
+			$res['logo_'.$etat] = $logo[0];
116
+			$res['logo_id_'.$etat] = $logo[5]['id_document'] ?? '';
117 117
 		}
118 118
 	}
119 119
 	// pas de logo_on -> pas de formulaire pour le survol
@@ -175,7 +175,7 @@  discard block
 block discarded – undo
175 175
 					$extensions_possibles
176 176
 				)
177 177
 			) {
178
-				$erreurs['logo_' . $etat] = _L('Extension non reconnue');
178
+				$erreurs['logo_'.$etat] = _L('Extension non reconnue');
179 179
 			}
180 180
 		} elseif ($file && $file['error'] != 0 && isset($file['msg'])) {
181 181
 			$erreurs['message_erreur'] = $file['msg'];
@@ -260,7 +260,7 @@  discard block
 block discarded – undo
260 260
 	include_spip('inc/documents');
261 261
 	$sources = [];
262 262
 	foreach (['on', 'off'] as $etat) {
263
-		$logo = 'logo_' . $etat;
263
+		$logo = 'logo_'.$etat;
264 264
 		if (isset($_FILES[$logo])) {
265 265
 			if ($_FILES[$logo]['error'] == 0) {
266 266
 				$sources[$etat] = $_FILES[$logo];
Please login to merge, or discard this patch.
Indentation   +157 added lines, -157 removed lines patch added patch discarded remove patch
@@ -29,7 +29,7 @@  discard block
 block discarded – undo
29 29
  **/
30 30
 
31 31
 if (!defined('_ECRIRE_INC_VERSION')) {
32
-	return;
32
+    return;
33 33
 }
34 34
 
35 35
 // utilise pour le logo du site, donc doit rester ici
@@ -47,88 +47,88 @@  discard block
 block discarded – undo
47 47
  * @return array|false Variables d'environnement pour le fond
48 48
  */
49 49
 function formulaires_editer_logo_charger_dist($objet, $id_objet, $retour = '', $options = []) {
50
-	// pas dans une boucle ? formulaire pour le logo du site
51
-	// dans ce cas, il faut chercher un 'siteon0.ext'
52
-	if (!$objet) {
53
-		$objet = 'site';
54
-	}
50
+    // pas dans une boucle ? formulaire pour le logo du site
51
+    // dans ce cas, il faut chercher un 'siteon0.ext'
52
+    if (!$objet) {
53
+        $objet = 'site';
54
+    }
55 55
 
56
-	$objet = objet_type($objet);
57
-	$_id_objet = id_table_objet($objet);
56
+    $objet = objet_type($objet);
57
+    $_id_objet = id_table_objet($objet);
58 58
 
59
-	if (!is_array($options)) {
60
-		$options = unserialize($options);
61
-	}
62
-	$options = spip_sanitize_from_request($options, '*');
59
+    if (!is_array($options)) {
60
+        $options = unserialize($options);
61
+    }
62
+    $options = spip_sanitize_from_request($options, '*');
63 63
 
64
-	if (!isset($options['titre'])) {
65
-		$balise_img = chercher_filtre('balise_img');
66
-		$img = $balise_img(chemin_image('image-24.png'), '', 'cadre-icone');
67
-		$libelles = pipeline('libeller_logo', $GLOBALS['logo_libelles']);
68
-		$libelle = (($id_objet || $objet != 'rubrique') ? $objet : 'racine');
69
-		if (isset($libelles[$libelle])) {
70
-			$libelle = $libelles[$libelle];
71
-		} elseif ($libelle = objet_info($objet, 'texte_logo_objet')) {
72
-			$libelle = _T($libelle);
73
-		} else {
74
-			$libelle = _L('Logo');
75
-		}
76
-		switch ($objet) {
77
-			case 'article':
78
-				$libelle .= ' ' . aider('logoart');
79
-				break;
80
-			case 'breve':
81
-				$libelle .= ' ' . aider('breveslogo');
82
-				break;
83
-			case 'rubrique':
84
-				$libelle .= ' ' . aider('rublogo');
85
-				break;
86
-			default:
87
-				break;
88
-		}
64
+    if (!isset($options['titre'])) {
65
+        $balise_img = chercher_filtre('balise_img');
66
+        $img = $balise_img(chemin_image('image-24.png'), '', 'cadre-icone');
67
+        $libelles = pipeline('libeller_logo', $GLOBALS['logo_libelles']);
68
+        $libelle = (($id_objet || $objet != 'rubrique') ? $objet : 'racine');
69
+        if (isset($libelles[$libelle])) {
70
+            $libelle = $libelles[$libelle];
71
+        } elseif ($libelle = objet_info($objet, 'texte_logo_objet')) {
72
+            $libelle = _T($libelle);
73
+        } else {
74
+            $libelle = _L('Logo');
75
+        }
76
+        switch ($objet) {
77
+            case 'article':
78
+                $libelle .= ' ' . aider('logoart');
79
+                break;
80
+            case 'breve':
81
+                $libelle .= ' ' . aider('breveslogo');
82
+                break;
83
+            case 'rubrique':
84
+                $libelle .= ' ' . aider('rublogo');
85
+                break;
86
+            default:
87
+                break;
88
+        }
89 89
 
90
-		$options['titre'] = $img . $libelle;
91
-	}
92
-	if (!isset($options['editable'])) {
93
-		include_spip('inc/autoriser');
94
-		$options['editable'] = autoriser('iconifier', $objet, $id_objet);
95
-	}
90
+        $options['titre'] = $img . $libelle;
91
+    }
92
+    if (!isset($options['editable'])) {
93
+        include_spip('inc/autoriser');
94
+        $options['editable'] = autoriser('iconifier', $objet, $id_objet);
95
+    }
96 96
 
97
-	$res = [
98
-		'editable' => ($GLOBALS['meta']['activer_logos'] == 'oui' ? ' ' : '') && (!isset($options['editable']) || $options['editable']),
99
-		'logo_survol' => ($GLOBALS['meta']['activer_logos_survol'] == 'oui' ? ' ' : ''),
100
-		'objet' => $objet,
101
-		'id_objet' => $id_objet,
102
-		'_options' => $options,
103
-		'_show_upload_off' => '',
104
-	];
97
+    $res = [
98
+        'editable' => ($GLOBALS['meta']['activer_logos'] == 'oui' ? ' ' : '') && (!isset($options['editable']) || $options['editable']),
99
+        'logo_survol' => ($GLOBALS['meta']['activer_logos_survol'] == 'oui' ? ' ' : ''),
100
+        'objet' => $objet,
101
+        'id_objet' => $id_objet,
102
+        '_options' => $options,
103
+        '_show_upload_off' => '',
104
+    ];
105 105
 
106
-	// rechercher le logo de l'objet
107
-	// la fonction prend un parametre '_id_objet' etrange :
108
-	// le nom de la cle primaire (et non le nom de la table)
109
-	// ou directement le nom du raccourcis a chercher
110
-	$chercher_logo = charger_fonction('chercher_logo', 'inc');
111
-	$etats = $res['logo_survol'] ? ['on', 'off'] : ['on'];
112
-	foreach ($etats as $etat) {
113
-		$logo = $chercher_logo($id_objet, $_id_objet, $etat);
114
-		if ($logo) {
115
-			$res['logo_' . $etat] = $logo[0];
116
-			$res['logo_id_' . $etat] = $logo[5]['id_document'] ?? '';
117
-		}
118
-	}
119
-	// pas de logo_on -> pas de formulaire pour le survol
120
-	if (!isset($res['logo_on'])) {
121
-		$res['logo_survol'] = '';
122
-	} elseif (!isset($res['logo_off']) && _request('logo_up')) {
123
-		$res['_show_upload_off'] = ' ';
124
-	}
106
+    // rechercher le logo de l'objet
107
+    // la fonction prend un parametre '_id_objet' etrange :
108
+    // le nom de la cle primaire (et non le nom de la table)
109
+    // ou directement le nom du raccourcis a chercher
110
+    $chercher_logo = charger_fonction('chercher_logo', 'inc');
111
+    $etats = $res['logo_survol'] ? ['on', 'off'] : ['on'];
112
+    foreach ($etats as $etat) {
113
+        $logo = $chercher_logo($id_objet, $_id_objet, $etat);
114
+        if ($logo) {
115
+            $res['logo_' . $etat] = $logo[0];
116
+            $res['logo_id_' . $etat] = $logo[5]['id_document'] ?? '';
117
+        }
118
+    }
119
+    // pas de logo_on -> pas de formulaire pour le survol
120
+    if (!isset($res['logo_on'])) {
121
+        $res['logo_survol'] = '';
122
+    } elseif (!isset($res['logo_off']) && _request('logo_up')) {
123
+        $res['_show_upload_off'] = ' ';
124
+    }
125 125
 
126
-	// si le logo n'est pas editable et qu'il n'y en a pas, on affiche pas du tout le formulaire
127
-	if (!$res['editable'] && !isset($res['logo_off']) && !isset($res['logo_on'])) {
128
-		return false;
129
-	}
126
+    // si le logo n'est pas editable et qu'il n'y en a pas, on affiche pas du tout le formulaire
127
+    if (!$res['editable'] && !isset($res['logo_off']) && !isset($res['logo_on'])) {
128
+        return false;
129
+    }
130 130
 
131
-	return $res;
131
+    return $res;
132 132
 }
133 133
 
134 134
 /**
@@ -142,7 +142,7 @@  discard block
 block discarded – undo
142 142
  * @return string              Hash du formulaire
143 143
  */
144 144
 function formulaires_editer_logo_identifier_dist($objet, $id_objet, $retour = '', $options = []) {
145
-	return serialize([$objet, $id_objet]);
145
+    return serialize([$objet, $id_objet]);
146 146
 }
147 147
 
148 148
 /**
@@ -158,31 +158,31 @@  discard block
 block discarded – undo
158 158
  * @return array               Erreurs du formulaire
159 159
  */
160 160
 function formulaires_editer_logo_verifier_dist($objet, $id_objet, $retour = '', $options = []) {
161
-	$erreurs = [];
162
-	// verifier les extensions
163
-	$sources = formulaire_editer_logo_get_sources();
164
-	include_spip('action/editer_logo');
165
-	$extensions_possibles = $GLOBALS['formats_logos'];
166
-	if (in_array('jpg', $extensions_possibles)) {
167
-		$extensions_possibles[] = 'jpeg';
168
-	}
169
-	foreach ($sources as $etat => $file) {
170
-		// seulement si une reception correcte a eu lieu
171
-		if ($file && $file['error'] == 0) {
172
-			if (
173
-				!in_array(
174
-					strtolower(pathinfo((string) $file['name'], PATHINFO_EXTENSION)),
175
-					$extensions_possibles
176
-				)
177
-			) {
178
-				$erreurs['logo_' . $etat] = _L('Extension non reconnue');
179
-			}
180
-		} elseif ($file && $file['error'] != 0 && isset($file['msg'])) {
181
-			$erreurs['message_erreur'] = $file['msg'];
182
-		}
183
-	}
161
+    $erreurs = [];
162
+    // verifier les extensions
163
+    $sources = formulaire_editer_logo_get_sources();
164
+    include_spip('action/editer_logo');
165
+    $extensions_possibles = $GLOBALS['formats_logos'];
166
+    if (in_array('jpg', $extensions_possibles)) {
167
+        $extensions_possibles[] = 'jpeg';
168
+    }
169
+    foreach ($sources as $etat => $file) {
170
+        // seulement si une reception correcte a eu lieu
171
+        if ($file && $file['error'] == 0) {
172
+            if (
173
+                !in_array(
174
+                    strtolower(pathinfo((string) $file['name'], PATHINFO_EXTENSION)),
175
+                    $extensions_possibles
176
+                )
177
+            ) {
178
+                $erreurs['logo_' . $etat] = _L('Extension non reconnue');
179
+            }
180
+        } elseif ($file && $file['error'] != 0 && isset($file['msg'])) {
181
+            $erreurs['message_erreur'] = $file['msg'];
182
+        }
183
+    }
184 184
 
185
-	return $erreurs;
185
+    return $erreurs;
186 186
 }
187 187
 
188 188
 /**
@@ -198,47 +198,47 @@  discard block
 block discarded – undo
198 198
  * @return array               Retour des traitements
199 199
  */
200 200
 function formulaires_editer_logo_traiter_dist($objet, $id_objet, $retour = '', $options = []) {
201
-	$res = ['editable' => ' '];
201
+    $res = ['editable' => ' '];
202 202
 
203
-	// pas dans une boucle ? formulaire pour le logo du site
204
-	// dans ce cas, il faut chercher un 'siteon0.ext'
205
-	if (!$objet) {
206
-		$objet = 'site';
207
-	}
203
+    // pas dans une boucle ? formulaire pour le logo du site
204
+    // dans ce cas, il faut chercher un 'siteon0.ext'
205
+    if (!$objet) {
206
+        $objet = 'site';
207
+    }
208 208
 
209
-	include_spip('action/editer_logo');
209
+    include_spip('action/editer_logo');
210 210
 
211
-	// effectuer la suppression si demandee d'un logo
212
-	$on = _request('supprimer_logo_on');
213
-	if ($on || _request('supprimer_logo_off')) {
214
-		logo_supprimer($objet, $id_objet, $on ? 'on' : 'off');
215
-		$res['message_ok'] = ''; // pas besoin de message : la validation est visuelle
216
-		set_request('logo_up', ' ');
217
-	} // sinon supprimer ancien logo puis copier le nouveau
218
-	else {
219
-		$sources = formulaire_editer_logo_get_sources();
220
-		foreach ($sources as $etat => $file) {
221
-			if ($file && $file['error'] == 0) {
222
-				if ($err = logo_modifier($objet, $id_objet, $etat, $file)) {
223
-					$res['message_erreur'] = $err;
224
-				} else {
225
-					$res['message_ok'] = '';
226
-				} // pas besoin de message : la validation est visuelle
227
-				set_request('logo_up', ' ');
228
-			}
229
-		}
230
-	}
211
+    // effectuer la suppression si demandee d'un logo
212
+    $on = _request('supprimer_logo_on');
213
+    if ($on || _request('supprimer_logo_off')) {
214
+        logo_supprimer($objet, $id_objet, $on ? 'on' : 'off');
215
+        $res['message_ok'] = ''; // pas besoin de message : la validation est visuelle
216
+        set_request('logo_up', ' ');
217
+    } // sinon supprimer ancien logo puis copier le nouveau
218
+    else {
219
+        $sources = formulaire_editer_logo_get_sources();
220
+        foreach ($sources as $etat => $file) {
221
+            if ($file && $file['error'] == 0) {
222
+                if ($err = logo_modifier($objet, $id_objet, $etat, $file)) {
223
+                    $res['message_erreur'] = $err;
224
+                } else {
225
+                    $res['message_ok'] = '';
226
+                } // pas besoin de message : la validation est visuelle
227
+                set_request('logo_up', ' ');
228
+            }
229
+        }
230
+    }
231 231
 
232
-	// Invalider les caches de l'objet
233
-	include_spip('inc/invalideur');
234
-	suivre_invalideur("id='$objet/$id_objet'");
232
+    // Invalider les caches de l'objet
233
+    include_spip('inc/invalideur');
234
+    suivre_invalideur("id='$objet/$id_objet'");
235 235
 
236 236
 
237
-	if ($retour) {
238
-		$res['redirect'] = $retour;
239
-	}
237
+    if ($retour) {
238
+        $res['redirect'] = $retour;
239
+    }
240 240
 
241
-	return $res;
241
+    return $res;
242 242
 }
243 243
 
244 244
 
@@ -250,29 +250,29 @@  discard block
 block discarded – undo
250 250
  *     Sources des fichiers dans les clés `on` ou `off`
251 251
  */
252 252
 function formulaire_editer_logo_get_sources() {
253
-	if (!$_FILES) {
254
-		$_FILES = $GLOBALS['HTTP_POST_FILES'] ?? [];
255
-	}
256
-	if (!is_array($_FILES)) {
257
-		return [];
258
-	}
253
+    if (!$_FILES) {
254
+        $_FILES = $GLOBALS['HTTP_POST_FILES'] ?? [];
255
+    }
256
+    if (!is_array($_FILES)) {
257
+        return [];
258
+    }
259 259
 
260
-	include_spip('inc/documents');
261
-	$sources = [];
262
-	foreach (['on', 'off'] as $etat) {
263
-		$logo = 'logo_' . $etat;
264
-		if (isset($_FILES[$logo])) {
265
-			if ($_FILES[$logo]['error'] == 0) {
266
-				$sources[$etat] = $_FILES[$logo];
267
-			} elseif ($_FILES[$logo]['error'] != 0) {
268
-				$msg = check_upload_error($_FILES[$logo]['error'], false, true);
269
-				if ($msg && is_string($msg)) {
270
-					$sources[$etat] = $_FILES[$logo];
271
-					$sources[$etat]['msg'] = $msg;
272
-				}
273
-			}
274
-		}
275
-	}
260
+    include_spip('inc/documents');
261
+    $sources = [];
262
+    foreach (['on', 'off'] as $etat) {
263
+        $logo = 'logo_' . $etat;
264
+        if (isset($_FILES[$logo])) {
265
+            if ($_FILES[$logo]['error'] == 0) {
266
+                $sources[$etat] = $_FILES[$logo];
267
+            } elseif ($_FILES[$logo]['error'] != 0) {
268
+                $msg = check_upload_error($_FILES[$logo]['error'], false, true);
269
+                if ($msg && is_string($msg)) {
270
+                    $sources[$etat] = $_FILES[$logo];
271
+                    $sources[$etat]['msg'] = $msg;
272
+                }
273
+            }
274
+        }
275
+    }
276 276
 
277
-	return $sources;
277
+    return $sources;
278 278
 }
Please login to merge, or discard this patch.
prive/formulaires/traduire.php 2 patches
Spacing   +6 added lines, -6 removed lines patch added patch discarded remove patch
@@ -59,7 +59,7 @@  discard block
 block discarded – undo
59 59
 		$id_parent = $valeurs['id_parent'];
60 60
 	}
61 61
 	if ($id_parent) {
62
-		$langue_parent = sql_getfetsel('lang', 'spip_rubriques', 'id_rubrique=' . (int) $id_parent);
62
+		$langue_parent = sql_getfetsel('lang', 'spip_rubriques', 'id_rubrique='.(int) $id_parent);
63 63
 	}
64 64
 
65 65
 	if (!$langue_parent) {
@@ -82,8 +82,8 @@  discard block
 block discarded – undo
82 82
 	$valeurs['_traduire'] = '';
83 83
 	if (isset($valeurs['id_trad'])) {
84 84
 		$valeurs['_traduire'] = ($traduire ? ' ' : '');
85
-		$valeurs['_vue_traductions'] = 'prive/objets/liste/' . (trouver_fond(
86
-			$f = table_objet($objet) . '-trad',
85
+		$valeurs['_vue_traductions'] = 'prive/objets/liste/'.(trouver_fond(
86
+			$f = table_objet($objet).'-trad',
87 87
 			'prive/objets/liste'
88 88
 		) ? $f : 'objets-trad');
89 89
 		// pour afficher la liste des trad sur la base de l'id_trad en base
@@ -129,12 +129,12 @@  discard block
 block discarded – undo
129 129
 			sql_getfetsel(
130 130
 				'id_trad',
131 131
 				$table_objet_sql,
132
-				"$_id_table_objet=" . (int) $id_objet
132
+				"$_id_table_objet=".(int) $id_objet
133 133
 			)
134 134
 		) {
135 135
 			// ne devrait jamais arriver sauf concurence de saisie
136 136
 			$erreurs['id_trad'] = _L('Une traduction est deja referencee');
137
-		} elseif (!sql_getfetsel($_id_table_objet, $table_objet_sql, "$_id_table_objet=" . (int) $id_trad)) {
137
+		} elseif (!sql_getfetsel($_id_table_objet, $table_objet_sql, "$_id_table_objet=".(int) $id_trad)) {
138 138
 			$erreurs['id_trad'] = _L('Indiquez un contenu existant');
139 139
 		}
140 140
 	}
@@ -172,7 +172,7 @@  discard block
 block discarded – undo
172 172
 		) {
173 173
 			$table_objet_sql = table_objet_sql($objet);
174 174
 			$_id_table_objet = id_table_objet($objet);
175
-			if ($id_trad = sql_getfetsel('id_trad', $table_objet_sql, "$_id_table_objet=" . (int) $id_objet)) {
175
+			if ($id_trad = sql_getfetsel('id_trad', $table_objet_sql, "$_id_table_objet=".(int) $id_objet)) {
176 176
 				$referencer_traduction = charger_fonction('referencer_traduction', 'action');
177 177
 				$referencer_traduction($objet, $id_trad, $new_id_trad);
178 178
 			}
Please login to merge, or discard this patch.
Indentation   +112 added lines, -112 removed lines patch added patch discarded remove patch
@@ -16,7 +16,7 @@  discard block
 block discarded – undo
16 16
  **/
17 17
 
18 18
 if (!defined('_ECRIRE_INC_VERSION')) {
19
-	return;
19
+    return;
20 20
 }
21 21
 
22 22
 include_spip('inc/actions');
@@ -38,65 +38,65 @@  discard block
 block discarded – undo
38 38
  *     Contexte à transmettre au squelette du formulaire sinon
39 39
  */
40 40
 function formulaires_traduire_charger_dist($objet, $id_objet, $retour = '', $traduire = true) {
41
-	if (!(int) $id_objet) {
42
-		return false;
43
-	}
44
-	$valeurs = formulaires_editer_objet_charger($objet, $id_objet, null, 0, $retour, '');
45
-	// verifier que l'objet indique possede bien des champs id_trad et lang
46
-	// attention, charger renomme lang => langue pour ne pas perturber la langue d'affichage du squelette
47
-	if (!isset($valeurs['langue'])) {
48
-		return false;
49
-	}
50
-
51
-	$valeurs['editable'] = autoriser('changerlangue', $objet, $id_objet);
52
-	$valeurs['_langue'] = '';
53
-	$langue_parent = '';
54
-	$id_parent = '';
55
-	if (isset($valeurs['id_rubrique'])) {
56
-		$id_parent = $valeurs['id_rubrique'];
57
-	}
58
-	if (isset($valeurs['id_parent'])) {
59
-		$id_parent = $valeurs['id_parent'];
60
-	}
61
-	if ($id_parent) {
62
-		$langue_parent = sql_getfetsel('lang', 'spip_rubriques', 'id_rubrique=' . (int) $id_parent);
63
-	}
64
-
65
-	if (!$langue_parent) {
66
-		$langue_parent = $GLOBALS['meta']['langue_site'];
67
-	}
68
-	if (
69
-		$valeurs['editable']
70
-		&& in_array(table_objet_sql($objet), explode(',', (string) $GLOBALS['meta']['multi_objets']))
71
-	) {
72
-		$valeurs['_langue'] = $valeurs['langue'];
73
-	}
74
-	$valeurs['langue_parent'] = $langue_parent;
75
-
76
-	$valeurs['_objet'] = $objet;
77
-	$valeurs['_id_objet'] = $id_objet;
78
-	$valeurs['changer_lang'] = '';
79
-
80
-
81
-	$valeurs['_traduisible'] = autoriser('changertraduction', $objet, $id_objet);
82
-	$valeurs['_traduire'] = '';
83
-	if (isset($valeurs['id_trad'])) {
84
-		$valeurs['_traduire'] = ($traduire ? ' ' : '');
85
-		$valeurs['_vue_traductions'] = 'prive/objets/liste/' . (trouver_fond(
86
-			$f = table_objet($objet) . '-trad',
87
-			'prive/objets/liste'
88
-		) ? $f : 'objets-trad');
89
-		// pour afficher la liste des trad sur la base de l'id_trad en base
90
-		// independamment d'une saisie en cours sur id_trad
91
-		$valeurs['_lister_id_trad'] = $valeurs['id_trad'];
92
-		$valeurs['_id_parent'] = $id_parent;
93
-	}
94
-
95
-	$valeurs['_saisie_en_cours'] = (!_request('annuler') && (_request('changer_lang') !== null
96
-		|| _request('changer_id_trad') !== null));
97
-	$valeurs['_pipeline'] = ['traduire', ['type' => $objet, 'id' => $id_objet]];
98
-
99
-	return $valeurs;
41
+    if (!(int) $id_objet) {
42
+        return false;
43
+    }
44
+    $valeurs = formulaires_editer_objet_charger($objet, $id_objet, null, 0, $retour, '');
45
+    // verifier que l'objet indique possede bien des champs id_trad et lang
46
+    // attention, charger renomme lang => langue pour ne pas perturber la langue d'affichage du squelette
47
+    if (!isset($valeurs['langue'])) {
48
+        return false;
49
+    }
50
+
51
+    $valeurs['editable'] = autoriser('changerlangue', $objet, $id_objet);
52
+    $valeurs['_langue'] = '';
53
+    $langue_parent = '';
54
+    $id_parent = '';
55
+    if (isset($valeurs['id_rubrique'])) {
56
+        $id_parent = $valeurs['id_rubrique'];
57
+    }
58
+    if (isset($valeurs['id_parent'])) {
59
+        $id_parent = $valeurs['id_parent'];
60
+    }
61
+    if ($id_parent) {
62
+        $langue_parent = sql_getfetsel('lang', 'spip_rubriques', 'id_rubrique=' . (int) $id_parent);
63
+    }
64
+
65
+    if (!$langue_parent) {
66
+        $langue_parent = $GLOBALS['meta']['langue_site'];
67
+    }
68
+    if (
69
+        $valeurs['editable']
70
+        && in_array(table_objet_sql($objet), explode(',', (string) $GLOBALS['meta']['multi_objets']))
71
+    ) {
72
+        $valeurs['_langue'] = $valeurs['langue'];
73
+    }
74
+    $valeurs['langue_parent'] = $langue_parent;
75
+
76
+    $valeurs['_objet'] = $objet;
77
+    $valeurs['_id_objet'] = $id_objet;
78
+    $valeurs['changer_lang'] = '';
79
+
80
+
81
+    $valeurs['_traduisible'] = autoriser('changertraduction', $objet, $id_objet);
82
+    $valeurs['_traduire'] = '';
83
+    if (isset($valeurs['id_trad'])) {
84
+        $valeurs['_traduire'] = ($traduire ? ' ' : '');
85
+        $valeurs['_vue_traductions'] = 'prive/objets/liste/' . (trouver_fond(
86
+            $f = table_objet($objet) . '-trad',
87
+            'prive/objets/liste'
88
+        ) ? $f : 'objets-trad');
89
+        // pour afficher la liste des trad sur la base de l'id_trad en base
90
+        // independamment d'une saisie en cours sur id_trad
91
+        $valeurs['_lister_id_trad'] = $valeurs['id_trad'];
92
+        $valeurs['_id_parent'] = $id_parent;
93
+    }
94
+
95
+    $valeurs['_saisie_en_cours'] = (!_request('annuler') && (_request('changer_lang') !== null
96
+        || _request('changer_id_trad') !== null));
97
+    $valeurs['_pipeline'] = ['traduire', ['type' => $objet, 'id' => $id_objet]];
98
+
99
+    return $valeurs;
100 100
 }
101 101
 
102 102
 /**
@@ -114,32 +114,32 @@  discard block
 block discarded – undo
114 114
  *     Erreurs des saisies
115 115
  */
116 116
 function formulaires_traduire_verifier_dist($objet, $id_objet, $retour = '', $traduire = true) {
117
-	$erreurs = [];
118
-
119
-	if (null !== _request('changer_lang')) {
120
-		$erreurs = formulaires_editer_objet_verifier($objet, $id_objet, ['changer_lang']);
121
-	}
122
-
123
-	// si id_trad fourni, verifier que cela ne conflicte pas avec un id_trad existant
124
-	// et que ca reference bien un objet existant
125
-	if ($id_trad = _request('id_trad')) {
126
-		$table_objet_sql = table_objet_sql($objet);
127
-		$_id_table_objet = id_table_objet($objet);
128
-		if (
129
-			sql_getfetsel(
130
-				'id_trad',
131
-				$table_objet_sql,
132
-				"$_id_table_objet=" . (int) $id_objet
133
-			)
134
-		) {
135
-			// ne devrait jamais arriver sauf concurence de saisie
136
-			$erreurs['id_trad'] = _L('Une traduction est deja referencee');
137
-		} elseif (!sql_getfetsel($_id_table_objet, $table_objet_sql, "$_id_table_objet=" . (int) $id_trad)) {
138
-			$erreurs['id_trad'] = _L('Indiquez un contenu existant');
139
-		}
140
-	}
141
-
142
-	return $erreurs;
117
+    $erreurs = [];
118
+
119
+    if (null !== _request('changer_lang')) {
120
+        $erreurs = formulaires_editer_objet_verifier($objet, $id_objet, ['changer_lang']);
121
+    }
122
+
123
+    // si id_trad fourni, verifier que cela ne conflicte pas avec un id_trad existant
124
+    // et que ca reference bien un objet existant
125
+    if ($id_trad = _request('id_trad')) {
126
+        $table_objet_sql = table_objet_sql($objet);
127
+        $_id_table_objet = id_table_objet($objet);
128
+        if (
129
+            sql_getfetsel(
130
+                'id_trad',
131
+                $table_objet_sql,
132
+                "$_id_table_objet=" . (int) $id_objet
133
+            )
134
+        ) {
135
+            // ne devrait jamais arriver sauf concurence de saisie
136
+            $erreurs['id_trad'] = _L('Une traduction est deja referencee');
137
+        } elseif (!sql_getfetsel($_id_table_objet, $table_objet_sql, "$_id_table_objet=" . (int) $id_trad)) {
138
+            $erreurs['id_trad'] = _L('Indiquez un contenu existant');
139
+        }
140
+    }
141
+
142
+    return $erreurs;
143 143
 }
144 144
 
145 145
 
@@ -158,30 +158,30 @@  discard block
 block discarded – undo
158 158
  *     Retour des traitements
159 159
  */
160 160
 function formulaires_traduire_traiter_dist($objet, $id_objet, $retour = '', $traduire = true) {
161
-	$res = [];
162
-	if (!_request('annuler') && autoriser('changerlangue', $objet, $id_objet)) {
163
-		// action/editer_xxx doit traiter la modif de changer_lang
164
-		$res = formulaires_editer_objet_traiter($objet, $id_objet, 0, 0, $retour);
165
-	}
166
-	if (!_request('annuler') && autoriser('changertraduction', $objet, $id_objet)) {
167
-		if (($id_trad = _request('id_trad')) || _request('supprimer_trad')) {
168
-			$referencer_traduction = charger_fonction('referencer_traduction', 'action');
169
-			$referencer_traduction($objet, $id_objet, (int) $id_trad); // 0 si supprimer_trad
170
-		} elseif (
171
-			($new_id_trad = _request('changer_reference_trad')) && ($new_id_trad = array_keys($new_id_trad)) && ($new_id_trad = reset($new_id_trad))
172
-		) {
173
-			$table_objet_sql = table_objet_sql($objet);
174
-			$_id_table_objet = id_table_objet($objet);
175
-			if ($id_trad = sql_getfetsel('id_trad', $table_objet_sql, "$_id_table_objet=" . (int) $id_objet)) {
176
-				$referencer_traduction = charger_fonction('referencer_traduction', 'action');
177
-				$referencer_traduction($objet, $id_trad, $new_id_trad);
178
-			}
179
-		}
180
-	}
181
-	$res['editable'] = true;
182
-	if (!isset($res['message_erreur'])) {
183
-		set_request('annuler', 'annuler');
184
-	} // provoquer la fermeture du forumlaire
185
-
186
-	return $res;
161
+    $res = [];
162
+    if (!_request('annuler') && autoriser('changerlangue', $objet, $id_objet)) {
163
+        // action/editer_xxx doit traiter la modif de changer_lang
164
+        $res = formulaires_editer_objet_traiter($objet, $id_objet, 0, 0, $retour);
165
+    }
166
+    if (!_request('annuler') && autoriser('changertraduction', $objet, $id_objet)) {
167
+        if (($id_trad = _request('id_trad')) || _request('supprimer_trad')) {
168
+            $referencer_traduction = charger_fonction('referencer_traduction', 'action');
169
+            $referencer_traduction($objet, $id_objet, (int) $id_trad); // 0 si supprimer_trad
170
+        } elseif (
171
+            ($new_id_trad = _request('changer_reference_trad')) && ($new_id_trad = array_keys($new_id_trad)) && ($new_id_trad = reset($new_id_trad))
172
+        ) {
173
+            $table_objet_sql = table_objet_sql($objet);
174
+            $_id_table_objet = id_table_objet($objet);
175
+            if ($id_trad = sql_getfetsel('id_trad', $table_objet_sql, "$_id_table_objet=" . (int) $id_objet)) {
176
+                $referencer_traduction = charger_fonction('referencer_traduction', 'action');
177
+                $referencer_traduction($objet, $id_trad, $new_id_trad);
178
+            }
179
+        }
180
+    }
181
+    $res['editable'] = true;
182
+    if (!isset($res['message_erreur'])) {
183
+        set_request('annuler', 'annuler');
184
+    } // provoquer la fermeture du forumlaire
185
+
186
+    return $res;
187 187
 }
Please login to merge, or discard this patch.
prive/formulaires/inc-instituer_auteur_fonctions.php 1 patch
Indentation   +26 added lines, -26 removed lines patch added patch discarded remove patch
@@ -7,7 +7,7 @@  discard block
 block discarded – undo
7 7
  **/
8 8
 
9 9
 if (!defined('_ECRIRE_INC_VERSION')) {
10
-	return;
10
+    return;
11 11
 }
12 12
 
13 13
 /**
@@ -24,32 +24,32 @@  discard block
 block discarded – undo
24 24
  *     Code HTML et javascript
25 25
  */
26 26
 function choisir_rubriques_admin_restreint(
27
-	$id_auteur,
28
-	$label = '',
29
-	$sel_css = '#liste_rubriques_restreintes',
30
-	$img_remove = ''
27
+    $id_auteur,
28
+    $label = '',
29
+    $sel_css = '#liste_rubriques_restreintes',
30
+    $img_remove = ''
31 31
 ) {
32
-	global $spip_lang;
33
-	$res = '';
34
-	// Ajouter une rubrique a un administrateur restreint
35
-	if (
36
-		($chercher_rubrique = charger_fonction('chercher_rubrique', 'inc'))
37
-		&& ($a = $chercher_rubrique(0, 'auteur', false))
38
-	) {
39
-		if ($img_remove) {
40
-			$img_remove = addslashes("<a href=\"#\" onclick=\"jQuery(this).parent().remove();return false;\" class=\"removelink\">$img_remove</a>");
41
-		}
32
+    global $spip_lang;
33
+    $res = '';
34
+    // Ajouter une rubrique a un administrateur restreint
35
+    if (
36
+        ($chercher_rubrique = charger_fonction('chercher_rubrique', 'inc'))
37
+        && ($a = $chercher_rubrique(0, 'auteur', false))
38
+    ) {
39
+        if ($img_remove) {
40
+            $img_remove = addslashes("<a href=\"#\" onclick=\"jQuery(this).parent().remove();return false;\" class=\"removelink\">$img_remove</a>");
41
+        }
42 42
 
43
-		$res =
44
-			"\n<div id='ajax_rubrique'>\n"
45
-			. "<label>$label</label>\n"
46
-			. "<input name='id_auteur' value='$id_auteur' type='hidden' />\n"
47
-			. $a
48
-			. "</div>\n"
43
+        $res =
44
+            "\n<div id='ajax_rubrique'>\n"
45
+            . "<label>$label</label>\n"
46
+            . "<input name='id_auteur' value='$id_auteur' type='hidden' />\n"
47
+            . $a
48
+            . "</div>\n"
49 49
 
50
-			// onchange = pour le menu
51
-			// l'evenement doit etre provoque a la main par le selecteur ajax
52
-			. "<script type='text/javascript'>/*<![CDATA[*/
50
+            // onchange = pour le menu
51
+            // l'evenement doit etre provoque a la main par le selecteur ajax
52
+            . "<script type='text/javascript'>/*<![CDATA[*/
53 53
 jQuery(function($){
54 54
 	$('#id_parent').on('change', function(){
55 55
 		var id_parent = parseInt(this.value);
@@ -68,7 +68,7 @@  discard block
 block discarded – undo
68 68
 	.attr('name','noname');
69 69
 });
70 70
 /*]]>*/</script>";
71
-	}
71
+    }
72 72
 
73
-	return $res;
73
+    return $res;
74 74
 }
Please login to merge, or discard this patch.
prive/formulaires/configurer_redacteurs.php 1 patch
Indentation   +35 added lines, -35 removed lines patch added patch discarded remove patch
@@ -10,46 +10,46 @@
 block discarded – undo
10 10
 \***************************************************************************/
11 11
 
12 12
 if (!defined('_ECRIRE_INC_VERSION')) {
13
-	return;
13
+    return;
14 14
 }
15 15
 
16 16
 function formulaires_configurer_redacteurs_charger_dist() {
17
-	$valeurs = [];
18
-	foreach (
19
-		[
20
-			'accepter_inscriptions',
21
-		] as $m
22
-	) {
23
-		$valeurs[$m] = $GLOBALS['meta'][$m];
24
-	}
25
-
26
-	return $valeurs;
17
+    $valeurs = [];
18
+    foreach (
19
+        [
20
+            'accepter_inscriptions',
21
+        ] as $m
22
+    ) {
23
+        $valeurs[$m] = $GLOBALS['meta'][$m];
24
+    }
25
+
26
+    return $valeurs;
27 27
 }
28 28
 
29 29
 
30 30
 function formulaires_configurer_redacteurs_traiter_dist() {
31
-	$res = ['editable' => true];
32
-	// Modification du reglage accepter_inscriptions => vider le cache
33
-	// (pour repercuter la modif sur le panneau de login)
34
-	if (
35
-		(($i = _request('accepter_inscriptions'))
36
-		&& $i != $GLOBALS['meta']['accepter_inscriptions'])
37
-	) {
38
-		include_spip('inc/invalideur');
39
-		suivre_invalideur('1'); # tout effacer
40
-	}
41
-
42
-	foreach (
43
-		[
44
-			'accepter_inscriptions',
45
-		] as $m
46
-	) {
47
-		if (!is_null($v = _request($m))) {
48
-			ecrire_meta($m, $v == 'oui' ? 'oui' : 'non');
49
-		}
50
-	}
51
-
52
-	$res['message_ok'] = _T('config_info_enregistree');
53
-
54
-	return $res;
31
+    $res = ['editable' => true];
32
+    // Modification du reglage accepter_inscriptions => vider le cache
33
+    // (pour repercuter la modif sur le panneau de login)
34
+    if (
35
+        (($i = _request('accepter_inscriptions'))
36
+        && $i != $GLOBALS['meta']['accepter_inscriptions'])
37
+    ) {
38
+        include_spip('inc/invalideur');
39
+        suivre_invalideur('1'); # tout effacer
40
+    }
41
+
42
+    foreach (
43
+        [
44
+            'accepter_inscriptions',
45
+        ] as $m
46
+    ) {
47
+        if (!is_null($v = _request($m))) {
48
+            ecrire_meta($m, $v == 'oui' ? 'oui' : 'non');
49
+        }
50
+    }
51
+
52
+    $res['message_ok'] = _T('config_info_enregistree');
53
+
54
+    return $res;
55 55
 }
Please login to merge, or discard this patch.
prive/formulaires/configurer_previsualiseur.php 2 patches
Spacing   +1 added lines, -1 removed lines patch added patch discarded remove patch
@@ -23,7 +23,7 @@
 block discarded – undo
23 23
 	$res = ['editable' => true];
24 24
 
25 25
 	if (($i = _request('preview')) && is_array($i)) {
26
-		$i = ',' . implode(',', $i) . ',';
26
+		$i = ','.implode(',', $i).',';
27 27
 	}
28 28
 
29 29
 	ecrire_meta('preview', $i);
Please login to merge, or discard this patch.
Indentation   +9 added lines, -9 removed lines patch added patch discarded remove patch
@@ -10,25 +10,25 @@
 block discarded – undo
10 10
 \***************************************************************************/
11 11
 
12 12
 if (!defined('_ECRIRE_INC_VERSION')) {
13
-	return;
13
+    return;
14 14
 }
15 15
 include_spip('inc/presentation');
16 16
 
17 17
 function formulaires_configurer_previsualiseur_charger_dist() {
18
-	return ['preview' => explode(',', (string) $GLOBALS['meta']['preview'])];
18
+    return ['preview' => explode(',', (string) $GLOBALS['meta']['preview'])];
19 19
 }
20 20
 
21 21
 
22 22
 function formulaires_configurer_previsualiseur_traiter_dist() {
23
-	$res = ['editable' => true];
23
+    $res = ['editable' => true];
24 24
 
25
-	if (($i = _request('preview')) && is_array($i)) {
26
-		$i = ',' . implode(',', $i) . ',';
27
-	}
25
+    if (($i = _request('preview')) && is_array($i)) {
26
+        $i = ',' . implode(',', $i) . ',';
27
+    }
28 28
 
29
-	ecrire_meta('preview', $i);
29
+    ecrire_meta('preview', $i);
30 30
 
31
-	$res['message_ok'] = _T('config_info_enregistree');
31
+    $res['message_ok'] = _T('config_info_enregistree');
32 32
 
33
-	return $res;
33
+    return $res;
34 34
 }
Please login to merge, or discard this patch.
prive/formulaires/configurer_langue.php 2 patches
Spacing   +1 added lines, -1 removed lines patch added patch discarded remove patch
@@ -30,7 +30,7 @@
 block discarded – undo
30 30
 	foreach ($langues as $l) {
31 31
 		$res .= "<option value='$l'"
32 32
 			. ($l == $l_site ? " selected='selected'" : '')
33
-			. '>' . traduire_nom_langue($l) . "</option>\n";
33
+			. '>'.traduire_nom_langue($l)."</option>\n";
34 34
 	}
35 35
 
36 36
 	return [
Please login to merge, or discard this patch.
Indentation   +40 added lines, -40 removed lines patch added patch discarded remove patch
@@ -10,57 +10,57 @@
 block discarded – undo
10 10
 \***************************************************************************/
11 11
 
12 12
 if (!defined('_ECRIRE_INC_VERSION')) {
13
-	return;
13
+    return;
14 14
 }
15 15
 
16 16
 function formulaires_configurer_langue_charger_dist() {
17
-	$valeurs = [];
17
+    $valeurs = [];
18 18
 
19
-	include_spip('inc/lang');
20
-	$l_site = $GLOBALS['meta']['langue_site'];
21
-	$langue_site = traduire_nom_langue($l_site);
19
+    include_spip('inc/lang');
20
+    $l_site = $GLOBALS['meta']['langue_site'];
21
+    $langue_site = traduire_nom_langue($l_site);
22 22
 
23
-	$langues = explode(',', (string) $GLOBALS['meta']['langues_proposees']);
24
-	if (!in_array($l_site, $langues)) {
25
-		$langues[] = $l_site;
26
-	}
27
-	sort($langues);
23
+    $langues = explode(',', (string) $GLOBALS['meta']['langues_proposees']);
24
+    if (!in_array($l_site, $langues)) {
25
+        $langues[] = $l_site;
26
+    }
27
+    sort($langues);
28 28
 
29
-	$res = '';
30
-	foreach ($langues as $l) {
31
-		$res .= "<option value='$l'"
32
-			. ($l == $l_site ? " selected='selected'" : '')
33
-			. '>' . traduire_nom_langue($l) . "</option>\n";
34
-	}
29
+    $res = '';
30
+    foreach ($langues as $l) {
31
+        $res .= "<option value='$l'"
32
+            . ($l == $l_site ? " selected='selected'" : '')
33
+            . '>' . traduire_nom_langue($l) . "</option>\n";
34
+    }
35 35
 
36
-	return [
37
-		'_langues' => $res,
38
-		'_langue_site' => $langue_site,
39
-		'changer_langue_site' => '',
40
-	];
36
+    return [
37
+        '_langues' => $res,
38
+        '_langue_site' => $langue_site,
39
+        'changer_langue_site' => '',
40
+    ];
41 41
 }
42 42
 
43 43
 
44 44
 function formulaires_configurer_langue_traiter_dist() {
45
-	$res = ['editable' => true];
45
+    $res = ['editable' => true];
46 46
 
47
-	if ($lang = _request('changer_langue_site')) {
48
-		include_spip('inc/lang');
49
-		// verif que la langue demandee est licite
50
-		if (changer_langue($lang)) {
51
-			ecrire_meta('langue_site', $lang);
52
-			// le test a defait ca:
53
-			utiliser_langue_visiteur();
54
-			$res['message_ok'] = _T('config_info_enregistree');
55
-			include_spip('inc/rubriques');
56
-			calculer_langues_rubriques();
57
-		}
58
-		// le test a defait ca:
59
-		utiliser_langue_visiteur();
60
-	}
61
-	if (!$res['message_ok']) {
62
-		$res['message_erreur'] = _L('erreur');
63
-	}
47
+    if ($lang = _request('changer_langue_site')) {
48
+        include_spip('inc/lang');
49
+        // verif que la langue demandee est licite
50
+        if (changer_langue($lang)) {
51
+            ecrire_meta('langue_site', $lang);
52
+            // le test a defait ca:
53
+            utiliser_langue_visiteur();
54
+            $res['message_ok'] = _T('config_info_enregistree');
55
+            include_spip('inc/rubriques');
56
+            calculer_langues_rubriques();
57
+        }
58
+        // le test a defait ca:
59
+        utiliser_langue_visiteur();
60
+    }
61
+    if (!$res['message_ok']) {
62
+        $res['message_erreur'] = _L('erreur');
63
+    }
64 64
 
65
-	return $res;
65
+    return $res;
66 66
 }
Please login to merge, or discard this patch.
prive/formulaires/editer_liens.php 3 patches
Braces   +1 added lines, -2 removed lines patch added patch discarded remove patch
@@ -545,8 +545,7 @@
 block discarded – undo
545 545
 						|| empty($oups['oups_value'])
546 546
 					) {
547 547
 						$oups = null;
548
-					}
549
-					else {
548
+					} else {
550 549
 						$oups = $oups['oups_value'];
551 550
 						// controler le contenu
552 551
 						foreach ($oups as $k => $oup) {
Please login to merge, or discard this patch.
Indentation   +433 added lines, -433 removed lines patch added patch discarded remove patch
@@ -15,7 +15,7 @@  discard block
 block discarded – undo
15 15
  * @package SPIP\Core\Formulaires
16 16
  **/
17 17
 if (!defined('_ECRIRE_INC_VERSION')) {
18
-	return;
18
+    return;
19 19
 }
20 20
 
21 21
 
@@ -35,25 +35,25 @@  discard block
 block discarded – undo
35 35
  *   ($table_source,$objet,$id_objet,$objet_lien)
36 36
  */
37 37
 function determine_source_lien_objet($a, $b, $c) {
38
-	$table_source = $objet_lien = $objet = $id_objet = null;
39
-	// auteurs, article, 23 :
40
-	// associer des auteurs à l'article 23, sur la table pivot spip_auteurs_liens
41
-	if (is_numeric($c) && !is_numeric($b)) {
42
-		$table_source = table_objet($a);
43
-		$objet_lien = objet_type($a);
44
-		$objet = objet_type($b);
45
-		$id_objet = $c;
46
-	}
47
-	// article, 23, auteurs
48
-	// associer des auteurs à l'article 23, sur la table pivot spip_articles_liens
49
-	if (is_numeric($b) && !is_numeric($c)) {
50
-		$table_source = table_objet($c);
51
-		$objet_lien = objet_type($a);
52
-		$objet = objet_type($a);
53
-		$id_objet = $b;
54
-	}
55
-
56
-	return [$table_source, $objet, $id_objet, $objet_lien];
38
+    $table_source = $objet_lien = $objet = $id_objet = null;
39
+    // auteurs, article, 23 :
40
+    // associer des auteurs à l'article 23, sur la table pivot spip_auteurs_liens
41
+    if (is_numeric($c) && !is_numeric($b)) {
42
+        $table_source = table_objet($a);
43
+        $objet_lien = objet_type($a);
44
+        $objet = objet_type($b);
45
+        $id_objet = $c;
46
+    }
47
+    // article, 23, auteurs
48
+    // associer des auteurs à l'article 23, sur la table pivot spip_articles_liens
49
+    if (is_numeric($b) && !is_numeric($c)) {
50
+        $table_source = table_objet($c);
51
+        $objet_lien = objet_type($a);
52
+        $objet = objet_type($a);
53
+        $id_objet = $b;
54
+    }
55
+
56
+    return [$table_source, $objet, $id_objet, $objet_lien];
57 57
 }
58 58
 
59 59
 /**
@@ -79,87 +79,87 @@  discard block
 block discarded – undo
79 79
  */
80 80
 function formulaires_editer_liens_charger_dist($a, $b, $c, $options = []) {
81 81
 
82
-	// compat avec ancienne signature ou le 4eme argument est $editable
83
-	if (!is_array($options)) {
84
-		$options = ['editable' => $options];
85
-	} elseif (!isset($options['editable'])) {
86
-		$options['editable'] = true;
87
-	}
88
-
89
-	$editable = $options['editable'];
90
-
91
-	[$table_source, $objet, $id_objet, $objet_lien] = determine_source_lien_objet($a, $b, $c);
92
-	if (!$table_source || !$objet || !$objet_lien || !$id_objet) {
93
-		return false;
94
-	}
95
-
96
-	$objet_source = objet_type($table_source);
97
-	$table_sql_source = table_objet_sql($objet_source);
98
-
99
-	// verifier existence de la table xxx_liens
100
-	include_spip('action/editer_liens');
101
-	if (!objet_associable($objet_lien)) {
102
-		return false;
103
-	}
104
-
105
-	// L'éditabilité :) est définie par un test permanent (par exemple "associermots") ET le 4ème argument
106
-	include_spip('inc/autoriser');
107
-	$editable = ($editable
108
-		&& autoriser('associer' . $table_source, $objet, $id_objet)
109
-		&& autoriser('modifier', $objet, $id_objet));
110
-
111
-	if (
112
-		!$editable && !count(objet_trouver_liens(
113
-			[$objet_lien => '*'],
114
-			[($objet_lien == $objet_source ? $objet : $objet_source) => $id_objet]
115
-		))
116
-	) {
117
-		return false;
118
-	}
119
-
120
-	// squelettes de vue et de d'association
121
-	// ils sont différents si des rôles sont définis.
122
-	$skel_vue = $table_source . '_lies';
123
-	$skel_ajout = $table_source . '_associer';
124
-
125
-	// description des roles
126
-	include_spip('inc/roles');
127
-	if ($roles = roles_presents($objet_source, $objet)) {
128
-		// on demande de nouveaux squelettes en conséquence
129
-		$skel_vue = $table_source . '_roles_lies';
130
-		$skel_ajout = $table_source . '_roles_associer';
131
-	}
132
-
133
-	$oups = '';
134
-	if ($editable) {
135
-		$oups = lien_gerer__oups('editer_liens', 'hash');
136
-	}
137
-	$valeurs = [
138
-		'id' => "$table_source-$objet-$id_objet-$objet_lien", // identifiant unique pour les id du form
139
-		'_vue_liee' => $skel_vue,
140
-		'_vue_ajout' => $skel_ajout,
141
-		'_objet_lien' => $objet_lien,
142
-		'id_lien_ajoute' => _request('id_lien_ajoute'),
143
-		'objet' => $objet,
144
-		'id_objet' => $id_objet,
145
-		'objet_source' => $objet_source,
146
-		'table_source' => $table_source,
147
-		'recherche' => '',
148
-		'visible' => 0,
149
-		'ajouter_lien' => '',
150
-		'supprimer_lien' => '',
151
-		'qualifier_lien' => '',
152
-		'ordonner_lien' => '',
153
-		'desordonner_liens' => '',
154
-		'_roles' => $roles, # description des roles
155
-		'_oups' => entites_html($oups),
156
-		'editable' => $editable,
157
-	];
158
-
159
-	// les options non definies dans $valeurs sont passees telles quelles au formulaire html
160
-	$valeurs = array_merge($options, $valeurs);
161
-
162
-	return $valeurs;
82
+    // compat avec ancienne signature ou le 4eme argument est $editable
83
+    if (!is_array($options)) {
84
+        $options = ['editable' => $options];
85
+    } elseif (!isset($options['editable'])) {
86
+        $options['editable'] = true;
87
+    }
88
+
89
+    $editable = $options['editable'];
90
+
91
+    [$table_source, $objet, $id_objet, $objet_lien] = determine_source_lien_objet($a, $b, $c);
92
+    if (!$table_source || !$objet || !$objet_lien || !$id_objet) {
93
+        return false;
94
+    }
95
+
96
+    $objet_source = objet_type($table_source);
97
+    $table_sql_source = table_objet_sql($objet_source);
98
+
99
+    // verifier existence de la table xxx_liens
100
+    include_spip('action/editer_liens');
101
+    if (!objet_associable($objet_lien)) {
102
+        return false;
103
+    }
104
+
105
+    // L'éditabilité :) est définie par un test permanent (par exemple "associermots") ET le 4ème argument
106
+    include_spip('inc/autoriser');
107
+    $editable = ($editable
108
+        && autoriser('associer' . $table_source, $objet, $id_objet)
109
+        && autoriser('modifier', $objet, $id_objet));
110
+
111
+    if (
112
+        !$editable && !count(objet_trouver_liens(
113
+            [$objet_lien => '*'],
114
+            [($objet_lien == $objet_source ? $objet : $objet_source) => $id_objet]
115
+        ))
116
+    ) {
117
+        return false;
118
+    }
119
+
120
+    // squelettes de vue et de d'association
121
+    // ils sont différents si des rôles sont définis.
122
+    $skel_vue = $table_source . '_lies';
123
+    $skel_ajout = $table_source . '_associer';
124
+
125
+    // description des roles
126
+    include_spip('inc/roles');
127
+    if ($roles = roles_presents($objet_source, $objet)) {
128
+        // on demande de nouveaux squelettes en conséquence
129
+        $skel_vue = $table_source . '_roles_lies';
130
+        $skel_ajout = $table_source . '_roles_associer';
131
+    }
132
+
133
+    $oups = '';
134
+    if ($editable) {
135
+        $oups = lien_gerer__oups('editer_liens', 'hash');
136
+    }
137
+    $valeurs = [
138
+        'id' => "$table_source-$objet-$id_objet-$objet_lien", // identifiant unique pour les id du form
139
+        '_vue_liee' => $skel_vue,
140
+        '_vue_ajout' => $skel_ajout,
141
+        '_objet_lien' => $objet_lien,
142
+        'id_lien_ajoute' => _request('id_lien_ajoute'),
143
+        'objet' => $objet,
144
+        'id_objet' => $id_objet,
145
+        'objet_source' => $objet_source,
146
+        'table_source' => $table_source,
147
+        'recherche' => '',
148
+        'visible' => 0,
149
+        'ajouter_lien' => '',
150
+        'supprimer_lien' => '',
151
+        'qualifier_lien' => '',
152
+        'ordonner_lien' => '',
153
+        'desordonner_liens' => '',
154
+        '_roles' => $roles, # description des roles
155
+        '_oups' => entites_html($oups),
156
+        'editable' => $editable,
157
+    ];
158
+
159
+    // les options non definies dans $valeurs sont passees telles quelles au formulaire html
160
+    $valeurs = array_merge($options, $valeurs);
161
+
162
+    return $valeurs;
163 163
 }
164 164
 
165 165
 /**
@@ -203,170 +203,170 @@  discard block
 block discarded – undo
203 203
  * @return array
204 204
  */
205 205
 function formulaires_editer_liens_traiter_dist($a, $b, $c, $options = []) {
206
-	// compat avec ancienne signature ou le 4eme argument est $editable
207
-	if (!is_array($options)) {
208
-		$options = ['editable' => $options];
209
-	} elseif (!isset($options['editable'])) {
210
-		$options['editable'] = true;
211
-	}
212
-
213
-	$editable = $options['editable'];
214
-
215
-	$res = ['editable' => (bool) $editable];
216
-	[$table_source, $objet, $id_objet, $objet_lien] = determine_source_lien_objet($a, $b, $c);
217
-	if (!$table_source || !$objet || !$objet_lien) {
218
-		return $res;
219
-	}
220
-
221
-
222
-	if (_request('tout_voir')) {
223
-		set_request('recherche', '');
224
-	}
225
-
226
-	include_spip('inc/autoriser');
227
-	if (autoriser('modifier', $objet, $id_objet)) {
228
-		// recuperer le oups du coup d'avant pour le propager à charger() si on ne fait rien par exemple
229
-		lien_gerer__oups('editer_liens', 'request');
230
-
231
-		// annuler les suppressions du coup d'avant ?
232
-		if (
233
-			_request('annuler_oups')
234
-			&& ($oups = lien_gerer__oups('editer_liens', 'get'))
235
-		) {
236
-			if ($oups_objets = charger_fonction("editer_liens_oups_{$table_source}_{$objet}_{$objet_lien}", 'action', true)) {
237
-				$oups_objets($oups);
238
-			} else {
239
-				$objet_source = objet_type($table_source);
240
-				include_spip('action/editer_liens');
241
-				foreach ($oups as $oup) {
242
-					if ($objet_lien == $objet_source) {
243
-						objet_associer([$objet_source => $oup[$objet_source]], [$objet => $oup[$objet]], $oup);
244
-					} else {
245
-						objet_associer([$objet => $oup[$objet]], [$objet_source => $oup[$objet_source]], $oup);
246
-					}
247
-				}
248
-			}
249
-			# oups ne persiste que pour la derniere action, si suppression
250
-			lien_gerer__oups('editer_liens', 'reset');
251
-		}
252
-
253
-		$supprimer = _request('supprimer_lien');
254
-		$ajouter = _request('ajouter_lien');
255
-		$ordonner = _request('ordonner_lien');
256
-
257
-		if (_request('desordonner_liens')) {
258
-			include_spip('action/editer_liens');
259
-			objet_qualifier_liens([$objet_lien => '*'], [$objet => $id_objet], ['rang_lien' => 0]);
260
-		}
261
-
262
-		// il est possible de preciser dans une seule variable un remplacement :
263
-		// remplacer_lien[old][new]
264
-		if ($remplacer = _request('remplacer_lien')) {
265
-			foreach ($remplacer as $k => $v) {
266
-				if ($old = lien_verifier_action($k, '')) {
267
-					foreach (is_array($v) ? $v : [$v] as $kn => $vn) {
268
-						if ($new = lien_verifier_action($kn, $vn)) {
269
-							$supprimer[$old] = 'x';
270
-							$ajouter[$new] = '+';
271
-						}
272
-					}
273
-				}
274
-			}
275
-		}
276
-
277
-		if ($supprimer) {
278
-			if (
279
-				$supprimer_objets = charger_fonction(
280
-					"editer_liens_supprimer_{$table_source}_{$objet}_{$objet_lien}",
281
-					'action',
282
-					true
283
-				)
284
-			) {
285
-				$oups = $supprimer_objets($supprimer);
286
-			} else {
287
-				include_spip('action/editer_liens');
288
-				$oups = [];
289
-
290
-				foreach ($supprimer as $k => $v) {
291
-					if ($lien = lien_verifier_action($k, $v)) {
292
-						$lien = explode('-', $lien);
293
-						[$objet_source, $ids, $objet_lie, $idl, $role] = array_pad($lien, 5, null);
294
-						// appliquer une condition sur le rôle si défini ('*' pour tous les roles)
295
-						$cond = (is_null($role) ? [] : ['role' => $role]);
296
-						if ($objet_lien == $objet_source) {
297
-							$oups = array_merge(
298
-								$oups,
299
-								objet_trouver_liens([$objet_source => $ids], [$objet_lie => $idl], $cond)
300
-							);
301
-							objet_dissocier([$objet_source => $ids], [$objet_lie => $idl], $cond);
302
-						} else {
303
-							$oups = array_merge(
304
-								$oups,
305
-								objet_trouver_liens([$objet_lie => $idl], [$objet_source => $ids], $cond)
306
-							);
307
-							objet_dissocier([$objet_lie => $idl], [$objet_source => $ids], $cond);
308
-						}
309
-					}
310
-				}
311
-			}
312
-			if (!empty($oups)) {
313
-				lien_gerer__oups('editer_liens', 'set', $oups);
314
-			} else {
315
-				lien_gerer__oups('editer_liens', 'reset');
316
-			}
317
-		}
318
-
319
-		if ($ajouter) {
320
-			if (
321
-				$ajouter_objets = charger_fonction("editer_liens_ajouter_{$table_source}_{$objet}_{$objet_lien}", 'action', true)
322
-			) {
323
-				$ajout_ok = $ajouter_objets($ajouter);
324
-			} else {
325
-				$ajout_ok = false;
326
-				include_spip('action/editer_liens');
327
-				foreach ($ajouter as $k => $v) {
328
-					if ($lien = lien_verifier_action($k, $v)) {
329
-						$ajout_ok = true;
330
-						[$objet1, $ids, $objet2, $idl] = explode('-', $lien);
331
-						$qualifs = lien_retrouver_qualif($objet_lien, $lien);
332
-						if ($objet_lien == $objet1) {
333
-							lien_ajouter_liaisons($objet1, $ids, $objet2, $idl, $qualifs);
334
-						} else {
335
-							lien_ajouter_liaisons($objet2, $idl, $objet1, $ids, $qualifs);
336
-						}
337
-						set_request('id_lien_ajoute', $ids);
338
-					}
339
-				}
340
-			}
341
-			# oups ne persiste que pour la derniere action, si suppression
342
-			# une suppression suivie d'un ajout dans le meme hit est un remplacement
343
-			# non annulable !
344
-			if ($ajout_ok) {
345
-				lien_gerer__oups('editer_liens', 'reset');
346
-			}
347
-		}
348
-
349
-		if ($ordonner) {
350
-			include_spip('action/editer_liens');
351
-			foreach ($ordonner as $k => $rang_lien) {
352
-				if ($lien = lien_verifier_action($k, '')) {
353
-					[$objet1, $ids, $objet2, $idl] = explode('-', $lien);
354
-					$qualif = ['rang_lien' => $rang_lien];
355
-
356
-					if ($objet_lien == $objet1) {
357
-						objet_qualifier_liens([$objet1 => $ids], [$objet2 => $idl], $qualif);
358
-					} else {
359
-						objet_qualifier_liens([$objet2 => $idl], [$objet1 => $ids], $qualif);
360
-					}
361
-					set_request('id_lien_ajoute', $ids);
362
-					lien_gerer__oups('editer_liens', 'reset');
363
-				}
364
-			}
365
-		}
366
-	}
367
-
368
-
369
-	return $res;
206
+    // compat avec ancienne signature ou le 4eme argument est $editable
207
+    if (!is_array($options)) {
208
+        $options = ['editable' => $options];
209
+    } elseif (!isset($options['editable'])) {
210
+        $options['editable'] = true;
211
+    }
212
+
213
+    $editable = $options['editable'];
214
+
215
+    $res = ['editable' => (bool) $editable];
216
+    [$table_source, $objet, $id_objet, $objet_lien] = determine_source_lien_objet($a, $b, $c);
217
+    if (!$table_source || !$objet || !$objet_lien) {
218
+        return $res;
219
+    }
220
+
221
+
222
+    if (_request('tout_voir')) {
223
+        set_request('recherche', '');
224
+    }
225
+
226
+    include_spip('inc/autoriser');
227
+    if (autoriser('modifier', $objet, $id_objet)) {
228
+        // recuperer le oups du coup d'avant pour le propager à charger() si on ne fait rien par exemple
229
+        lien_gerer__oups('editer_liens', 'request');
230
+
231
+        // annuler les suppressions du coup d'avant ?
232
+        if (
233
+            _request('annuler_oups')
234
+            && ($oups = lien_gerer__oups('editer_liens', 'get'))
235
+        ) {
236
+            if ($oups_objets = charger_fonction("editer_liens_oups_{$table_source}_{$objet}_{$objet_lien}", 'action', true)) {
237
+                $oups_objets($oups);
238
+            } else {
239
+                $objet_source = objet_type($table_source);
240
+                include_spip('action/editer_liens');
241
+                foreach ($oups as $oup) {
242
+                    if ($objet_lien == $objet_source) {
243
+                        objet_associer([$objet_source => $oup[$objet_source]], [$objet => $oup[$objet]], $oup);
244
+                    } else {
245
+                        objet_associer([$objet => $oup[$objet]], [$objet_source => $oup[$objet_source]], $oup);
246
+                    }
247
+                }
248
+            }
249
+            # oups ne persiste que pour la derniere action, si suppression
250
+            lien_gerer__oups('editer_liens', 'reset');
251
+        }
252
+
253
+        $supprimer = _request('supprimer_lien');
254
+        $ajouter = _request('ajouter_lien');
255
+        $ordonner = _request('ordonner_lien');
256
+
257
+        if (_request('desordonner_liens')) {
258
+            include_spip('action/editer_liens');
259
+            objet_qualifier_liens([$objet_lien => '*'], [$objet => $id_objet], ['rang_lien' => 0]);
260
+        }
261
+
262
+        // il est possible de preciser dans une seule variable un remplacement :
263
+        // remplacer_lien[old][new]
264
+        if ($remplacer = _request('remplacer_lien')) {
265
+            foreach ($remplacer as $k => $v) {
266
+                if ($old = lien_verifier_action($k, '')) {
267
+                    foreach (is_array($v) ? $v : [$v] as $kn => $vn) {
268
+                        if ($new = lien_verifier_action($kn, $vn)) {
269
+                            $supprimer[$old] = 'x';
270
+                            $ajouter[$new] = '+';
271
+                        }
272
+                    }
273
+                }
274
+            }
275
+        }
276
+
277
+        if ($supprimer) {
278
+            if (
279
+                $supprimer_objets = charger_fonction(
280
+                    "editer_liens_supprimer_{$table_source}_{$objet}_{$objet_lien}",
281
+                    'action',
282
+                    true
283
+                )
284
+            ) {
285
+                $oups = $supprimer_objets($supprimer);
286
+            } else {
287
+                include_spip('action/editer_liens');
288
+                $oups = [];
289
+
290
+                foreach ($supprimer as $k => $v) {
291
+                    if ($lien = lien_verifier_action($k, $v)) {
292
+                        $lien = explode('-', $lien);
293
+                        [$objet_source, $ids, $objet_lie, $idl, $role] = array_pad($lien, 5, null);
294
+                        // appliquer une condition sur le rôle si défini ('*' pour tous les roles)
295
+                        $cond = (is_null($role) ? [] : ['role' => $role]);
296
+                        if ($objet_lien == $objet_source) {
297
+                            $oups = array_merge(
298
+                                $oups,
299
+                                objet_trouver_liens([$objet_source => $ids], [$objet_lie => $idl], $cond)
300
+                            );
301
+                            objet_dissocier([$objet_source => $ids], [$objet_lie => $idl], $cond);
302
+                        } else {
303
+                            $oups = array_merge(
304
+                                $oups,
305
+                                objet_trouver_liens([$objet_lie => $idl], [$objet_source => $ids], $cond)
306
+                            );
307
+                            objet_dissocier([$objet_lie => $idl], [$objet_source => $ids], $cond);
308
+                        }
309
+                    }
310
+                }
311
+            }
312
+            if (!empty($oups)) {
313
+                lien_gerer__oups('editer_liens', 'set', $oups);
314
+            } else {
315
+                lien_gerer__oups('editer_liens', 'reset');
316
+            }
317
+        }
318
+
319
+        if ($ajouter) {
320
+            if (
321
+                $ajouter_objets = charger_fonction("editer_liens_ajouter_{$table_source}_{$objet}_{$objet_lien}", 'action', true)
322
+            ) {
323
+                $ajout_ok = $ajouter_objets($ajouter);
324
+            } else {
325
+                $ajout_ok = false;
326
+                include_spip('action/editer_liens');
327
+                foreach ($ajouter as $k => $v) {
328
+                    if ($lien = lien_verifier_action($k, $v)) {
329
+                        $ajout_ok = true;
330
+                        [$objet1, $ids, $objet2, $idl] = explode('-', $lien);
331
+                        $qualifs = lien_retrouver_qualif($objet_lien, $lien);
332
+                        if ($objet_lien == $objet1) {
333
+                            lien_ajouter_liaisons($objet1, $ids, $objet2, $idl, $qualifs);
334
+                        } else {
335
+                            lien_ajouter_liaisons($objet2, $idl, $objet1, $ids, $qualifs);
336
+                        }
337
+                        set_request('id_lien_ajoute', $ids);
338
+                    }
339
+                }
340
+            }
341
+            # oups ne persiste que pour la derniere action, si suppression
342
+            # une suppression suivie d'un ajout dans le meme hit est un remplacement
343
+            # non annulable !
344
+            if ($ajout_ok) {
345
+                lien_gerer__oups('editer_liens', 'reset');
346
+            }
347
+        }
348
+
349
+        if ($ordonner) {
350
+            include_spip('action/editer_liens');
351
+            foreach ($ordonner as $k => $rang_lien) {
352
+                if ($lien = lien_verifier_action($k, '')) {
353
+                    [$objet1, $ids, $objet2, $idl] = explode('-', $lien);
354
+                    $qualif = ['rang_lien' => $rang_lien];
355
+
356
+                    if ($objet_lien == $objet1) {
357
+                        objet_qualifier_liens([$objet1 => $ids], [$objet2 => $idl], $qualif);
358
+                    } else {
359
+                        objet_qualifier_liens([$objet2 => $idl], [$objet1 => $ids], $qualif);
360
+                    }
361
+                    set_request('id_lien_ajoute', $ids);
362
+                    lien_gerer__oups('editer_liens', 'reset');
363
+                }
364
+            }
365
+        }
366
+    }
367
+
368
+
369
+    return $res;
370 370
 }
371 371
 
372 372
 
@@ -389,24 +389,24 @@  discard block
 block discarded – undo
389 389
  * @return string Action demandée si trouvée, sinon ''
390 390
  */
391 391
 function lien_verifier_action($k, $v) {
392
-	$action = '';
393
-	if (preg_match(',^\w+-[\w*]+-[\w*]+-[\w*]+(-[\w*])?,', $k)) {
394
-		$action = $k;
395
-	}
396
-	if (preg_match(',^\w+-[\w*]+-[\w*]+-[\w*]+(-[\w*])?,', $v)) {
397
-		if (is_numeric($k)) {
398
-			$action = $v;
399
-		}
400
-		if (_request($k)) {
401
-			$action = $v;
402
-		}
403
-	}
404
-	// ajout un role null fictif (plus pratique) si pas défini
405
-	if ($action && count(explode('-', $action)) == 4) {
406
-		$action .= '-';
407
-	}
408
-
409
-	return $action;
392
+    $action = '';
393
+    if (preg_match(',^\w+-[\w*]+-[\w*]+-[\w*]+(-[\w*])?,', $k)) {
394
+        $action = $k;
395
+    }
396
+    if (preg_match(',^\w+-[\w*]+-[\w*]+-[\w*]+(-[\w*])?,', $v)) {
397
+        if (is_numeric($k)) {
398
+            $action = $v;
399
+        }
400
+        if (_request($k)) {
401
+            $action = $v;
402
+        }
403
+    }
404
+    // ajout un role null fictif (plus pratique) si pas défini
405
+    if ($action && count(explode('-', $action)) == 4) {
406
+        $action .= '-';
407
+    }
408
+
409
+    return $action;
410 410
 }
411 411
 
412 412
 
@@ -422,62 +422,62 @@  discard block
 block discarded – undo
422 422
  *   Liste des qualifs pour chaque lien. Tableau vide s'il n'y en a pas.
423 423
  **/
424 424
 function lien_retrouver_qualif($objet_lien, $lien) {
425
-	// un role est défini dans la liaison
426
-	$defs = explode('-', $lien);
427
-	[$objet1, , $objet2, , $role] = array_pad($defs, 5, null);
428
-	$colonne_role = $objet_lien == $objet1 ? roles_colonne($objet1, $objet2) : roles_colonne($objet2, $objet1);
429
-
430
-	// cas ou le role est defini en 5e argument de l'action sur le lien (suppression, ajout rapide sans autre attribut)
431
-	if ($role) {
432
-		return [
433
-			// un seul lien avec ce role
434
-			[$colonne_role => $role]
435
-		];
436
-	}
437
-
438
-	// retrouver les rôles postés pour cette liaison, s'il y en a.
439
-	$qualifier_lien = _request('qualifier_lien');
440
-	if (!$qualifier_lien || !is_array($qualifier_lien)) {
441
-		return [];
442
-	}
443
-
444
-	// pas avec l'action complete (incluant le role)
445
-	$qualif = [];
446
-	if (
447
-		(!isset($qualifier_lien[$lien]) || !$qualif = $qualifier_lien[$lien])
448
-		&& count($defs) == 5
449
-	) {
450
-		// on tente avec l'action sans le role
451
-		array_pop($defs);
452
-		$lien = implode('-', $defs);
453
-		if (!isset($qualifier_lien[$lien]) || !$qualif = $qualifier_lien[$lien]) {
454
-			$qualif = [];
455
-		}
456
-	}
457
-
458
-	// $qualif de la forme array(role=>array(...),valeur=>array(...),....)
459
-	// on le reforme en array(array(role=>..,valeur=>..,..),array(role=>..,valeur=>..,..),...)
460
-	$qualifs = [];
461
-	while (is_countable($qualif) ? count($qualif) : 0) {
462
-		$q = [];
463
-		foreach ($qualif as $att => $values) {
464
-			if (is_array($values)) {
465
-				$q[$att] = array_shift($qualif[$att]);
466
-				if (!(is_countable($qualif[$att]) ? count($qualif[$att]) : 0)) {
467
-					unset($qualif[$att]);
468
-				}
469
-			} else {
470
-				$q[$att] = $values;
471
-				unset($qualif[$att]);
472
-			}
473
-		}
474
-		// pas de rôle vide
475
-		if (!$colonne_role || !isset($q[$colonne_role]) || $q[$colonne_role]) {
476
-			$qualifs[] = $q;
477
-		}
478
-	}
479
-
480
-	return $qualifs;
425
+    // un role est défini dans la liaison
426
+    $defs = explode('-', $lien);
427
+    [$objet1, , $objet2, , $role] = array_pad($defs, 5, null);
428
+    $colonne_role = $objet_lien == $objet1 ? roles_colonne($objet1, $objet2) : roles_colonne($objet2, $objet1);
429
+
430
+    // cas ou le role est defini en 5e argument de l'action sur le lien (suppression, ajout rapide sans autre attribut)
431
+    if ($role) {
432
+        return [
433
+            // un seul lien avec ce role
434
+            [$colonne_role => $role]
435
+        ];
436
+    }
437
+
438
+    // retrouver les rôles postés pour cette liaison, s'il y en a.
439
+    $qualifier_lien = _request('qualifier_lien');
440
+    if (!$qualifier_lien || !is_array($qualifier_lien)) {
441
+        return [];
442
+    }
443
+
444
+    // pas avec l'action complete (incluant le role)
445
+    $qualif = [];
446
+    if (
447
+        (!isset($qualifier_lien[$lien]) || !$qualif = $qualifier_lien[$lien])
448
+        && count($defs) == 5
449
+    ) {
450
+        // on tente avec l'action sans le role
451
+        array_pop($defs);
452
+        $lien = implode('-', $defs);
453
+        if (!isset($qualifier_lien[$lien]) || !$qualif = $qualifier_lien[$lien]) {
454
+            $qualif = [];
455
+        }
456
+    }
457
+
458
+    // $qualif de la forme array(role=>array(...),valeur=>array(...),....)
459
+    // on le reforme en array(array(role=>..,valeur=>..,..),array(role=>..,valeur=>..,..),...)
460
+    $qualifs = [];
461
+    while (is_countable($qualif) ? count($qualif) : 0) {
462
+        $q = [];
463
+        foreach ($qualif as $att => $values) {
464
+            if (is_array($values)) {
465
+                $q[$att] = array_shift($qualif[$att]);
466
+                if (!(is_countable($qualif[$att]) ? count($qualif[$att]) : 0)) {
467
+                    unset($qualif[$att]);
468
+                }
469
+            } else {
470
+                $q[$att] = $values;
471
+                unset($qualif[$att]);
472
+            }
473
+        }
474
+        // pas de rôle vide
475
+        if (!$colonne_role || !isset($q[$colonne_role]) || $q[$colonne_role]) {
476
+            $qualifs[] = $q;
477
+        }
478
+    }
479
+
480
+    return $qualifs;
481 481
 }
482 482
 
483 483
 /**
@@ -496,14 +496,14 @@  discard block
 block discarded – undo
496 496
  **/
497 497
 function lien_ajouter_liaisons($objet_source, $ids, $objet_lien, $idl, $qualifs) {
498 498
 
499
-	// retrouver la colonne de roles s'il y en a a lier
500
-	if (is_array($qualifs) && count($qualifs)) {
501
-		foreach ($qualifs as $qualif) {
502
-			objet_associer([$objet_source => $ids], [$objet_lien => $idl], $qualif);
503
-		}
504
-	} else {
505
-		objet_associer([$objet_source => $ids], [$objet_lien => $idl]);
506
-	}
499
+    // retrouver la colonne de roles s'il y en a a lier
500
+    if (is_array($qualifs) && count($qualifs)) {
501
+        foreach ($qualifs as $qualif) {
502
+            objet_associer([$objet_source => $ids], [$objet_lien => $idl], $qualif);
503
+        }
504
+    } else {
505
+        objet_associer([$objet_source => $ids], [$objet_lien => $idl]);
506
+    }
507 507
 }
508 508
 
509 509
 
@@ -513,77 +513,77 @@  discard block
 block discarded – undo
513 513
  * @return array|string|null
514 514
  */
515 515
 function lien_gerer__oups(string $form, string $action, ?array $valeur = null) {
516
-	static $_oups_value;
517
-
518
-	switch ($action) {
519
-		case 'reset':
520
-			$res = !empty($_oups_value);
521
-			$_oups_value = null;
522
-			return $res;
523
-
524
-		case 'get':
525
-			return $_oups_value ?: null;
526
-
527
-		case 'set':
528
-			$_oups_value = $valeur;
529
-			return true;
530
-
531
-		case 'request':
532
-			$_oups_value = null;
533
-			if ($oups = _request('_oups')) {
534
-				include_spip('inc/filtres');
535
-				// on accepte uniquement une valeur signée
536
-				if ($oups = decoder_contexte_ajax($oups, $form)) {
537
-					if (
538
-						!is_array($oups)
539
-						|| empty($oups['id_auteur'])
540
-						|| $oups['id_auteur'] !== $GLOBALS['visiteur_session']['id_auteur']
541
-						|| empty($oups['time'])
542
-						|| $oups['time'] < $_SERVER['REQUEST_TIME'] - 86400
543
-						|| empty($oups['args'])
544
-						|| $oups['args'] !== lien_gerer__oups_collecter_args($form, debug_backtrace(0, 5))
545
-						|| empty($oups['oups_value'])
546
-					) {
547
-						$oups = null;
548
-					}
549
-					else {
550
-						$oups = $oups['oups_value'];
551
-						// controler le contenu
552
-						foreach ($oups as $k => $oup) {
553
-							if (!is_array($oup)) {
554
-								unset($oups[$k]);
555
-							} else {
556
-								foreach ($oup as $champ => $valeur) {
557
-									if (!is_scalar($champ) || !is_scalar($valeur) || preg_match(',\W,', $champ)) {
558
-										unset($oups[$k][$champ]);
559
-									}
560
-								}
561
-								if (empty($oups[$k])) {
562
-									unset($oups[$k]);
563
-								}
564
-							}
565
-						}
566
-					}
567
-					$_oups_value = $oups;
568
-					return $_oups_value;
569
-				}
570
-			}
571
-			break;
572
-
573
-		case 'hash':
574
-			if (!$_oups_value) {
575
-				return '';
576
-			}
577
-
578
-			include_spip('inc/filtres');
579
-			$oups = [
580
-				'id_auteur' => $GLOBALS['visiteur_session']['id_auteur'] ?? 0,
581
-				'time' => strtotime(date('Y-m-d H:00:00')),
582
-				'args' => lien_gerer__oups_collecter_args($form, debug_backtrace(0, 5)),
583
-				'oups_value' => $_oups_value,
584
-			];
585
-			return encoder_contexte_ajax($oups, $form);
586
-	}
516
+    static $_oups_value;
517
+
518
+    switch ($action) {
519
+        case 'reset':
520
+            $res = !empty($_oups_value);
521
+            $_oups_value = null;
522
+            return $res;
523
+
524
+        case 'get':
525
+            return $_oups_value ?: null;
526
+
527
+        case 'set':
528
+            $_oups_value = $valeur;
529
+            return true;
530
+
531
+        case 'request':
532
+            $_oups_value = null;
533
+            if ($oups = _request('_oups')) {
534
+                include_spip('inc/filtres');
535
+                // on accepte uniquement une valeur signée
536
+                if ($oups = decoder_contexte_ajax($oups, $form)) {
537
+                    if (
538
+                        !is_array($oups)
539
+                        || empty($oups['id_auteur'])
540
+                        || $oups['id_auteur'] !== $GLOBALS['visiteur_session']['id_auteur']
541
+                        || empty($oups['time'])
542
+                        || $oups['time'] < $_SERVER['REQUEST_TIME'] - 86400
543
+                        || empty($oups['args'])
544
+                        || $oups['args'] !== lien_gerer__oups_collecter_args($form, debug_backtrace(0, 5))
545
+                        || empty($oups['oups_value'])
546
+                    ) {
547
+                        $oups = null;
548
+                    }
549
+                    else {
550
+                        $oups = $oups['oups_value'];
551
+                        // controler le contenu
552
+                        foreach ($oups as $k => $oup) {
553
+                            if (!is_array($oup)) {
554
+                                unset($oups[$k]);
555
+                            } else {
556
+                                foreach ($oup as $champ => $valeur) {
557
+                                    if (!is_scalar($champ) || !is_scalar($valeur) || preg_match(',\W,', $champ)) {
558
+                                        unset($oups[$k][$champ]);
559
+                                    }
560
+                                }
561
+                                if (empty($oups[$k])) {
562
+                                    unset($oups[$k]);
563
+                                }
564
+                            }
565
+                        }
566
+                    }
567
+                    $_oups_value = $oups;
568
+                    return $_oups_value;
569
+                }
570
+            }
571
+            break;
572
+
573
+        case 'hash':
574
+            if (!$_oups_value) {
575
+                return '';
576
+            }
577
+
578
+            include_spip('inc/filtres');
579
+            $oups = [
580
+                'id_auteur' => $GLOBALS['visiteur_session']['id_auteur'] ?? 0,
581
+                'time' => strtotime(date('Y-m-d H:00:00')),
582
+                'args' => lien_gerer__oups_collecter_args($form, debug_backtrace(0, 5)),
583
+                'oups_value' => $_oups_value,
584
+            ];
585
+            return encoder_contexte_ajax($oups, $form);
586
+    }
587 587
 }
588 588
 
589 589
 /**
@@ -593,19 +593,19 @@  discard block
 block discarded – undo
593 593
  * @return string
594 594
  */
595 595
 function lien_gerer__oups_collecter_args($form, $trace) {
596
-	$args = '';
597
-	if (!empty($trace)) {
598
-		do {
599
-			$t = array_shift($trace);
600
-			$function = $t['function'] ?? '';
601
-			if (str_starts_with((string) $function, 'formulaires_' . $form)) {
602
-				if (isset($t['args'])) {
603
-					$args = json_encode($t['args'], JSON_THROW_ON_ERROR);
604
-				}
605
-				break;
606
-			}
607
-		}
608
-		while (count($trace));
609
-	}
610
-	return $args;
596
+    $args = '';
597
+    if (!empty($trace)) {
598
+        do {
599
+            $t = array_shift($trace);
600
+            $function = $t['function'] ?? '';
601
+            if (str_starts_with((string) $function, 'formulaires_' . $form)) {
602
+                if (isset($t['args'])) {
603
+                    $args = json_encode($t['args'], JSON_THROW_ON_ERROR);
604
+                }
605
+                break;
606
+            }
607
+        }
608
+        while (count($trace));
609
+    }
610
+    return $args;
611 611
 }
Please login to merge, or discard this patch.
Spacing   +7 added lines, -7 removed lines patch added patch discarded remove patch
@@ -105,7 +105,7 @@  discard block
 block discarded – undo
105 105
 	// L'éditabilité :) est définie par un test permanent (par exemple "associermots") ET le 4ème argument
106 106
 	include_spip('inc/autoriser');
107 107
 	$editable = ($editable
108
-		&& autoriser('associer' . $table_source, $objet, $id_objet)
108
+		&& autoriser('associer'.$table_source, $objet, $id_objet)
109 109
 		&& autoriser('modifier', $objet, $id_objet));
110 110
 
111 111
 	if (
@@ -119,15 +119,15 @@  discard block
 block discarded – undo
119 119
 
120 120
 	// squelettes de vue et de d'association
121 121
 	// ils sont différents si des rôles sont définis.
122
-	$skel_vue = $table_source . '_lies';
123
-	$skel_ajout = $table_source . '_associer';
122
+	$skel_vue = $table_source.'_lies';
123
+	$skel_ajout = $table_source.'_associer';
124 124
 
125 125
 	// description des roles
126 126
 	include_spip('inc/roles');
127 127
 	if ($roles = roles_presents($objet_source, $objet)) {
128 128
 		// on demande de nouveaux squelettes en conséquence
129
-		$skel_vue = $table_source . '_roles_lies';
130
-		$skel_ajout = $table_source . '_roles_associer';
129
+		$skel_vue = $table_source.'_roles_lies';
130
+		$skel_ajout = $table_source.'_roles_associer';
131 131
 	}
132 132
 
133 133
 	$oups = '';
@@ -424,7 +424,7 @@  discard block
 block discarded – undo
424 424
 function lien_retrouver_qualif($objet_lien, $lien) {
425 425
 	// un role est défini dans la liaison
426 426
 	$defs = explode('-', $lien);
427
-	[$objet1, , $objet2, , $role] = array_pad($defs, 5, null);
427
+	[$objet1,, $objet2,, $role] = array_pad($defs, 5, null);
428 428
 	$colonne_role = $objet_lien == $objet1 ? roles_colonne($objet1, $objet2) : roles_colonne($objet2, $objet1);
429 429
 
430 430
 	// cas ou le role est defini en 5e argument de l'action sur le lien (suppression, ajout rapide sans autre attribut)
@@ -598,7 +598,7 @@  discard block
 block discarded – undo
598 598
 		do {
599 599
 			$t = array_shift($trace);
600 600
 			$function = $t['function'] ?? '';
601
-			if (str_starts_with((string) $function, 'formulaires_' . $form)) {
601
+			if (str_starts_with((string) $function, 'formulaires_'.$form)) {
602 602
 				if (isset($t['args'])) {
603 603
 					$args = json_encode($t['args'], JSON_THROW_ON_ERROR);
604 604
 				}
Please login to merge, or discard this patch.
prive/formulaires/editer_auteur.php 3 patches
Braces   +1 added lines, -2 removed lines patch added patch discarded remove patch
@@ -251,8 +251,7 @@
 block discarded – undo
251 251
 	if (_request('login')) {
252 252
 		// on n'est jamais cense poster le name 'login'
253 253
 		$erreurs['login'] = _T('info_non_modifiable');
254
-	}
255
-	elseif (
254
+	} elseif (
256 255
 		($login = _request('new_login')) && $login !== sql_getfetsel('login', 'spip_auteurs', 'id_auteur=' . (int) $id_auteur)
257 256
 	) {
258 257
 		// on verifie la meme chose que dans auteurs_edit_config()
Please login to merge, or discard this patch.
Spacing   +13 added lines, -13 removed lines patch added patch discarded remove patch
@@ -173,7 +173,7 @@  discard block
 block discarded – undo
173 173
 		unset($erreurs['new_login']);
174 174
 	}
175 175
 
176
-	$auth_methode = sql_getfetsel('source', 'spip_auteurs', 'id_auteur=' . (int) $id_auteur);
176
+	$auth_methode = sql_getfetsel('source', 'spip_auteurs', 'id_auteur='.(int) $id_auteur);
177 177
 	$auth_methode = ($auth_methode ?: 'spip');
178 178
 	include_spip('inc/auth');
179 179
 
@@ -189,7 +189,7 @@  discard block
 block discarded – undo
189 189
 			!autoriser('modifier', 'auteur', $id_auteur, null, ['email' => '?'])
190 190
 			&& $GLOBALS['visiteur_session']['id_auteur'] == $id_auteur
191 191
 			&& !strlen(trim((string) $email))
192
-			&& $email != ($email_ancien = sql_getfetsel('email', 'spip_auteurs', 'id_auteur=' . (int) $id_auteur))
192
+			&& $email != ($email_ancien = sql_getfetsel('email', 'spip_auteurs', 'id_auteur='.(int) $id_auteur))
193 193
 		) {
194 194
 			$erreurs['email'] = (($id_auteur == $GLOBALS['visiteur_session']['id_auteur']) ? _T('form_email_non_valide') : _T('form_prop_indiquer_email'));
195 195
 		} else {
@@ -204,7 +204,7 @@  discard block
 block discarded – undo
204 204
 			#Nouvel auteur
205 205
 			if ((int) $id_auteur == 0) {
206 206
 				#Un auteur existe deja avec cette adresse ?
207
-				if (sql_countsel('spip_auteurs', 'email=' . sql_quote($email)) > 0) {
207
+				if (sql_countsel('spip_auteurs', 'email='.sql_quote($email)) > 0) {
208 208
 					$erreurs['email'] = _T('erreur_email_deja_existant');
209 209
 				}
210 210
 			} else {
@@ -212,12 +212,12 @@  discard block
 block discarded – undo
212 212
 				if (
213 213
 					sql_countsel(
214 214
 						'spip_auteurs',
215
-						'email=' . sql_quote($email)
215
+						'email='.sql_quote($email)
216 216
 					) > 0
217 217
 					&& $id_auteur != ($id_auteur_ancien = sql_getfetsel(
218 218
 						'id_auteur',
219 219
 						'spip_auteurs',
220
-						'email=' . sql_quote($email)
220
+						'email='.sql_quote($email)
221 221
 					))
222 222
 				) {
223 223
 					$erreurs['email'] = _T('erreur_email_deja_existant');
@@ -238,7 +238,7 @@  discard block
 block discarded – undo
238 238
 		&& (!str_contains((string) $url, ':')
239 239
 		&& strncasecmp((string) $url, 'www.', 4) === 0)
240 240
 	) {
241
-		$url = 'http://' . $url;
241
+		$url = 'http://'.$url;
242 242
 		set_request('url_site', $url);
243 243
 	}
244 244
 	// traiter les liens implicites avant de tester l'url
@@ -253,11 +253,11 @@  discard block
 block discarded – undo
253 253
 		$erreurs['login'] = _T('info_non_modifiable');
254 254
 	}
255 255
 	elseif (
256
-		($login = _request('new_login')) && $login !== sql_getfetsel('login', 'spip_auteurs', 'id_auteur=' . (int) $id_auteur)
256
+		($login = _request('new_login')) && $login !== sql_getfetsel('login', 'spip_auteurs', 'id_auteur='.(int) $id_auteur)
257 257
 	) {
258 258
 		// on verifie la meme chose que dans auteurs_edit_config()
259 259
 		if (
260
-			! auth_autoriser_modifier_login($auth_methode)
260
+			!auth_autoriser_modifier_login($auth_methode)
261 261
 			|| !autoriser('modifier', 'auteur', (int) $id_auteur, null, ['login' => true])
262 262
 			// legacy : ne pas risquer d'autoriser la modif login si fonction d'autorisation pas mise a jour et ne teste que l'option email
263 263
 			|| !autoriser('modifier', 'auteur', (int) $id_auteur, null, ['email' => true])
@@ -384,7 +384,7 @@  discard block
 block discarded – undo
384 384
 		// et de revenir sur son profil
385 385
 		if (
386 386
 			$GLOBALS['visiteur_session']['id_auteur'] == $id_auteur
387
-			&& $email_nouveau != ($email_ancien = sql_getfetsel('email', 'spip_auteurs', 'id_auteur=' . (int) $id_auteur))
387
+			&& $email_nouveau != ($email_ancien = sql_getfetsel('email', 'spip_auteurs', 'id_auteur='.(int) $id_auteur))
388 388
 		) {
389 389
 			$envoyer_mail = charger_fonction('envoyer_mail', 'inc');
390 390
 			$texte = _T(
@@ -423,12 +423,12 @@  discard block
 block discarded – undo
423 423
 		if (isset($erreurs['message_ok'])) {
424 424
 			if (!isset($res['message_ok'])) { $res['message_ok'] = '';
425 425
 			}
426
-			$res['message_ok'] = trim($res['message_ok'] . ' ' . $erreurs['message_ok']);
426
+			$res['message_ok'] = trim($res['message_ok'].' '.$erreurs['message_ok']);
427 427
 		}
428 428
 		if (isset($erreurs['message_erreur']) && $erreurs['message_erreur']) {
429 429
 			if (!isset($res['message_erreur'])) { $res['message_erreur'] = '';
430 430
 			}
431
-			$res['message_erreur'] = trim($res['message_erreur'] . ' ' . $erreurs['message_erreur']);
431
+			$res['message_erreur'] = trim($res['message_erreur'].' '.$erreurs['message_erreur']);
432 432
 		}
433 433
 	}
434 434
 
@@ -455,7 +455,7 @@  discard block
 block discarded – undo
455 455
 
456 456
 
457 457
 function auteur_reset_password($id_auteur, $erreurs = []) {
458
-	$auteur = sql_fetsel('*', 'spip_auteurs', 'id_auteur=' . (int) $id_auteur);
458
+	$auteur = sql_fetsel('*', 'spip_auteurs', 'id_auteur='.(int) $id_auteur);
459 459
 	$config = auteurs_edit_config($auteur);
460 460
 
461 461
 	if ($config['edit_pass']) {
@@ -490,7 +490,7 @@  discard block
 block discarded – undo
490 490
 		include_spip('action/editer_auteur');
491 491
 		auteur_modifier($id_auteur, $set);
492 492
 
493
-		$row = sql_fetsel('*', 'spip_auteurs', 'id_auteur=' . (int) $id_auteur);
493
+		$row = sql_fetsel('*', 'spip_auteurs', 'id_auteur='.(int) $id_auteur);
494 494
 		include_spip('inc/filtres');
495 495
 		if (
496 496
 			$notifier
Please login to merge, or discard this patch.
Indentation   +369 added lines, -369 removed lines patch added patch discarded remove patch
@@ -7,7 +7,7 @@  discard block
 block discarded – undo
7 7
  **/
8 8
 
9 9
 if (!defined('_ECRIRE_INC_VERSION')) {
10
-	return;
10
+    return;
11 11
 }
12 12
 
13 13
 include_spip('inc/actions');
@@ -38,24 +38,24 @@  discard block
 block discarded – undo
38 38
  *     Environnement du formulaire
39 39
  **/
40 40
 function formulaires_editer_auteur_charger_dist(
41
-	$id_auteur = 'new',
42
-	$retour = '',
43
-	$associer_objet = '',
44
-	$config_fonc = 'auteurs_edit_config',
45
-	$row = [],
46
-	$hidden = ''
41
+    $id_auteur = 'new',
42
+    $retour = '',
43
+    $associer_objet = '',
44
+    $config_fonc = 'auteurs_edit_config',
45
+    $row = [],
46
+    $hidden = ''
47 47
 ) {
48
-	$valeurs = formulaires_editer_objet_charger('auteur', $id_auteur, 0, 0, $retour, $config_fonc, $row, $hidden);
49
-	$valeurs['new_login'] = $valeurs['login'];
48
+    $valeurs = formulaires_editer_objet_charger('auteur', $id_auteur, 0, 0, $retour, $config_fonc, $row, $hidden);
49
+    $valeurs['new_login'] = $valeurs['login'];
50 50
 
51
-	// S'il n'y a pas la langue, on prend la langue du site
52
-	$valeurs['langue'] = $valeurs['langue'] ?: $GLOBALS['meta']['langue_site'];
51
+    // S'il n'y a pas la langue, on prend la langue du site
52
+    $valeurs['langue'] = $valeurs['langue'] ?: $GLOBALS['meta']['langue_site'];
53 53
 
54
-	if (!autoriser('modifier', 'auteur', (int) $id_auteur)) {
55
-		$valeurs['editable'] = '';
56
-	}
54
+    if (!autoriser('modifier', 'auteur', (int) $id_auteur)) {
55
+        $valeurs['editable'] = '';
56
+    }
57 57
 
58
-	return $valeurs;
58
+    return $valeurs;
59 59
 }
60 60
 
61 61
 /**
@@ -79,14 +79,14 @@  discard block
 block discarded – undo
79 79
  *     Hash du formulaire
80 80
  */
81 81
 function formulaires_editer_auteur_identifier_dist(
82
-	$id_auteur = 'new',
83
-	$retour = '',
84
-	$associer_objet = '',
85
-	$config_fonc = 'auteurs_edit_config',
86
-	$row = [],
87
-	$hidden = ''
82
+    $id_auteur = 'new',
83
+    $retour = '',
84
+    $associer_objet = '',
85
+    $config_fonc = 'auteurs_edit_config',
86
+    $row = [],
87
+    $hidden = ''
88 88
 ) {
89
-	return serialize([(int) $id_auteur, $associer_objet]);
89
+    return serialize([(int) $id_auteur, $associer_objet]);
90 90
 }
91 91
 
92 92
 
@@ -100,27 +100,27 @@  discard block
 block discarded – undo
100 100
  */
101 101
 function auteurs_edit_config(array $row): array {
102 102
 
103
-	$config = [];
104
-	$config['lignes'] = 8;
105
-	$config['langue'] = $GLOBALS['spip_lang'];
106
-
107
-	// pour instituer_auteur
108
-	$config['auteur'] = $row;
109
-
110
-	//$config['restreint'] = ($row['statut'] == 'publie');
111
-	$auth_methode = $row['source'];
112
-	include_spip('inc/auth');
113
-	$config['edit_login'] = (
114
-		auth_autoriser_modifier_login($auth_methode)
115
-		&& autoriser('modifier', 'auteur', $row['id_auteur'], null, ['login' => true])
116
-		&& autoriser('modifier', 'auteur', $row['id_auteur'], null, ['email' => true])
117
-	);
118
-	$config['edit_pass'] = (
119
-			auth_autoriser_modifier_pass($auth_methode)
120
-			&& autoriser('modifier', 'auteur', $row['id_auteur'])
121
-	);
122
-
123
-	return $config;
103
+    $config = [];
104
+    $config['lignes'] = 8;
105
+    $config['langue'] = $GLOBALS['spip_lang'];
106
+
107
+    // pour instituer_auteur
108
+    $config['auteur'] = $row;
109
+
110
+    //$config['restreint'] = ($row['statut'] == 'publie');
111
+    $auth_methode = $row['source'];
112
+    include_spip('inc/auth');
113
+    $config['edit_login'] = (
114
+        auth_autoriser_modifier_login($auth_methode)
115
+        && autoriser('modifier', 'auteur', $row['id_auteur'], null, ['login' => true])
116
+        && autoriser('modifier', 'auteur', $row['id_auteur'], null, ['email' => true])
117
+    );
118
+    $config['edit_pass'] = (
119
+            auth_autoriser_modifier_pass($auth_methode)
120
+            && autoriser('modifier', 'auteur', $row['id_auteur'])
121
+    );
122
+
123
+    return $config;
124 124
 }
125 125
 
126 126
 /**
@@ -150,145 +150,145 @@  discard block
 block discarded – undo
150 150
  *     Erreurs des saisies
151 151
  **/
152 152
 function formulaires_editer_auteur_verifier_dist(
153
-	$id_auteur = 'new',
154
-	$retour = '',
155
-	$associer_objet = '',
156
-	$config_fonc = 'auteurs_edit_config',
157
-	$row = [],
158
-	$hidden = ''
153
+    $id_auteur = 'new',
154
+    $retour = '',
155
+    $associer_objet = '',
156
+    $config_fonc = 'auteurs_edit_config',
157
+    $row = [],
158
+    $hidden = ''
159 159
 ) {
160
-	// auto-renseigner le nom si il n'existe pas, sans couper
161
-	titre_automatique('nom', ['email', 'login'], 255);
162
-
163
-	$oblis = ['nom'];
164
-	// si on veut renvoyer des identifiants il faut un email et un login
165
-	if (_request('reset_password')) {
166
-		$oblis[] = 'email';
167
-		$oblis[] = 'new_login';
168
-	}
169
-	// mais il reste obligatoire si on a rien trouve
170
-	$erreurs = formulaires_editer_objet_verifier('auteur', $id_auteur, $oblis);
171
-	if (isset($erreurs['new_login'])) {
172
-		$erreurs['login'] = $erreurs['new_login'];
173
-		unset($erreurs['new_login']);
174
-	}
175
-
176
-	$auth_methode = sql_getfetsel('source', 'spip_auteurs', 'id_auteur=' . (int) $id_auteur);
177
-	$auth_methode = ($auth_methode ?: 'spip');
178
-	include_spip('inc/auth');
179
-
180
-	if (!nom_acceptable(_request('nom'))) {
181
-		$erreurs['nom'] = _T('info_nom_pas_conforme');
182
-	}
183
-
184
-	if ($email = _request('email')) {
185
-		include_spip('inc/filtres');
186
-		include_spip('inc/autoriser');
187
-		// un redacteur qui modifie son email n'a pas le droit de le vider si il y en avait un
188
-		if (
189
-			!autoriser('modifier', 'auteur', $id_auteur, null, ['email' => '?'])
190
-			&& $GLOBALS['visiteur_session']['id_auteur'] == $id_auteur
191
-			&& !strlen(trim((string) $email))
192
-			&& $email != ($email_ancien = sql_getfetsel('email', 'spip_auteurs', 'id_auteur=' . (int) $id_auteur))
193
-		) {
194
-			$erreurs['email'] = (($id_auteur == $GLOBALS['visiteur_session']['id_auteur']) ? _T('form_email_non_valide') : _T('form_prop_indiquer_email'));
195
-		} else {
196
-			if (!email_valide($email)) {
197
-				$erreurs['email'] = (($id_auteur == $GLOBALS['visiteur_session']['id_auteur']) ? _T('form_email_non_valide') : _T('form_prop_indiquer_email'));
198
-			}
199
-		}
200
-		# Ne pas autoriser d'avoir deux auteurs avec le même email
201
-		# cette fonctionalité nécessite que la base soit clean à l'activation : pas de
202
-		# doublon sur la requête select email,count(*) from spip_auteurs group by email ;
203
-		if (defined('_INTERDIRE_AUTEUR_MEME_EMAIL')) {
204
-			#Nouvel auteur
205
-			if ((int) $id_auteur == 0) {
206
-				#Un auteur existe deja avec cette adresse ?
207
-				if (sql_countsel('spip_auteurs', 'email=' . sql_quote($email)) > 0) {
208
-					$erreurs['email'] = _T('erreur_email_deja_existant');
209
-				}
210
-			} else {
211
-				#Un auteur existe deja avec cette adresse ? et n'est pas le user courant.
212
-				if (
213
-					sql_countsel(
214
-						'spip_auteurs',
215
-						'email=' . sql_quote($email)
216
-					) > 0
217
-					&& $id_auteur != ($id_auteur_ancien = sql_getfetsel(
218
-						'id_auteur',
219
-						'spip_auteurs',
220
-						'email=' . sql_quote($email)
221
-					))
222
-				) {
223
-					$erreurs['email'] = _T('erreur_email_deja_existant');
224
-				}
225
-			}
226
-		}
227
-	}
228
-
229
-	// quand c'est un auteur existant on fait le reset password ici
230
-	if (!(is_countable($erreurs) ? count($erreurs) : 0) && _request('reset_password') && (int) $id_auteur) {
231
-		return auteur_reset_password($id_auteur, $erreurs);
232
-	}
233
-
234
-	// corriger un cas si frequent : www.example.org sans le http:// qui precede
235
-	if (
236
-		($url = _request('url_site'))
237
-		&& !tester_url_absolue($url)
238
-		&& (!str_contains((string) $url, ':')
239
-		&& strncasecmp((string) $url, 'www.', 4) === 0)
240
-	) {
241
-		$url = 'http://' . $url;
242
-		set_request('url_site', $url);
243
-	}
244
-	// traiter les liens implicites avant de tester l'url
245
-	include_spip('inc/lien');
246
-	if (($url = calculer_url(_request('url_site'))) && !tester_url_absolue($url)) {
247
-		$erreurs['url_site'] = _T('info_url_site_pas_conforme');
248
-	}
249
-
250
-	$erreurs['message_erreur'] = '';
251
-	if (_request('login')) {
252
-		// on n'est jamais cense poster le name 'login'
253
-		$erreurs['login'] = _T('info_non_modifiable');
254
-	}
255
-	elseif (
256
-		($login = _request('new_login')) && $login !== sql_getfetsel('login', 'spip_auteurs', 'id_auteur=' . (int) $id_auteur)
257
-	) {
258
-		// on verifie la meme chose que dans auteurs_edit_config()
259
-		if (
260
-			! auth_autoriser_modifier_login($auth_methode)
261
-			|| !autoriser('modifier', 'auteur', (int) $id_auteur, null, ['login' => true])
262
-			// legacy : ne pas risquer d'autoriser la modif login si fonction d'autorisation pas mise a jour et ne teste que l'option email
263
-			|| !autoriser('modifier', 'auteur', (int) $id_auteur, null, ['email' => true])
264
-		) {
265
-			$erreurs['login'] = _T('info_non_modifiable');
266
-		}
267
-	}
268
-
269
-	if (empty($erreurs['login'])) {
270
-		if ($err = auth_verifier_login($auth_methode, _request('new_login'), $id_auteur)) {
271
-			$erreurs['login'] = $err;
272
-			$erreurs['message_erreur'] .= $err;
273
-		} else {
274
-			// pass trop court ou confirmation non identique
275
-			if ($p = _request('new_pass')) {
276
-				if ($p != _request('new_pass2')) {
277
-					$erreurs['new_pass'] = _T('info_passes_identiques');
278
-					$erreurs['message_erreur'] .= _T('info_passes_identiques');
279
-				} elseif ($err = auth_verifier_pass($auth_methode, _request('new_login'), $p, $id_auteur)) {
280
-					$erreurs['new_pass'] = $err;
281
-					$erreurs['message_erreur'] .= $err;
282
-				}
283
-			}
284
-		}
285
-	}
286
-
287
-	if (!$erreurs['message_erreur']) {
288
-		unset($erreurs['message_erreur']);
289
-	}
290
-
291
-	return $erreurs;
160
+    // auto-renseigner le nom si il n'existe pas, sans couper
161
+    titre_automatique('nom', ['email', 'login'], 255);
162
+
163
+    $oblis = ['nom'];
164
+    // si on veut renvoyer des identifiants il faut un email et un login
165
+    if (_request('reset_password')) {
166
+        $oblis[] = 'email';
167
+        $oblis[] = 'new_login';
168
+    }
169
+    // mais il reste obligatoire si on a rien trouve
170
+    $erreurs = formulaires_editer_objet_verifier('auteur', $id_auteur, $oblis);
171
+    if (isset($erreurs['new_login'])) {
172
+        $erreurs['login'] = $erreurs['new_login'];
173
+        unset($erreurs['new_login']);
174
+    }
175
+
176
+    $auth_methode = sql_getfetsel('source', 'spip_auteurs', 'id_auteur=' . (int) $id_auteur);
177
+    $auth_methode = ($auth_methode ?: 'spip');
178
+    include_spip('inc/auth');
179
+
180
+    if (!nom_acceptable(_request('nom'))) {
181
+        $erreurs['nom'] = _T('info_nom_pas_conforme');
182
+    }
183
+
184
+    if ($email = _request('email')) {
185
+        include_spip('inc/filtres');
186
+        include_spip('inc/autoriser');
187
+        // un redacteur qui modifie son email n'a pas le droit de le vider si il y en avait un
188
+        if (
189
+            !autoriser('modifier', 'auteur', $id_auteur, null, ['email' => '?'])
190
+            && $GLOBALS['visiteur_session']['id_auteur'] == $id_auteur
191
+            && !strlen(trim((string) $email))
192
+            && $email != ($email_ancien = sql_getfetsel('email', 'spip_auteurs', 'id_auteur=' . (int) $id_auteur))
193
+        ) {
194
+            $erreurs['email'] = (($id_auteur == $GLOBALS['visiteur_session']['id_auteur']) ? _T('form_email_non_valide') : _T('form_prop_indiquer_email'));
195
+        } else {
196
+            if (!email_valide($email)) {
197
+                $erreurs['email'] = (($id_auteur == $GLOBALS['visiteur_session']['id_auteur']) ? _T('form_email_non_valide') : _T('form_prop_indiquer_email'));
198
+            }
199
+        }
200
+        # Ne pas autoriser d'avoir deux auteurs avec le même email
201
+        # cette fonctionalité nécessite que la base soit clean à l'activation : pas de
202
+        # doublon sur la requête select email,count(*) from spip_auteurs group by email ;
203
+        if (defined('_INTERDIRE_AUTEUR_MEME_EMAIL')) {
204
+            #Nouvel auteur
205
+            if ((int) $id_auteur == 0) {
206
+                #Un auteur existe deja avec cette adresse ?
207
+                if (sql_countsel('spip_auteurs', 'email=' . sql_quote($email)) > 0) {
208
+                    $erreurs['email'] = _T('erreur_email_deja_existant');
209
+                }
210
+            } else {
211
+                #Un auteur existe deja avec cette adresse ? et n'est pas le user courant.
212
+                if (
213
+                    sql_countsel(
214
+                        'spip_auteurs',
215
+                        'email=' . sql_quote($email)
216
+                    ) > 0
217
+                    && $id_auteur != ($id_auteur_ancien = sql_getfetsel(
218
+                        'id_auteur',
219
+                        'spip_auteurs',
220
+                        'email=' . sql_quote($email)
221
+                    ))
222
+                ) {
223
+                    $erreurs['email'] = _T('erreur_email_deja_existant');
224
+                }
225
+            }
226
+        }
227
+    }
228
+
229
+    // quand c'est un auteur existant on fait le reset password ici
230
+    if (!(is_countable($erreurs) ? count($erreurs) : 0) && _request('reset_password') && (int) $id_auteur) {
231
+        return auteur_reset_password($id_auteur, $erreurs);
232
+    }
233
+
234
+    // corriger un cas si frequent : www.example.org sans le http:// qui precede
235
+    if (
236
+        ($url = _request('url_site'))
237
+        && !tester_url_absolue($url)
238
+        && (!str_contains((string) $url, ':')
239
+        && strncasecmp((string) $url, 'www.', 4) === 0)
240
+    ) {
241
+        $url = 'http://' . $url;
242
+        set_request('url_site', $url);
243
+    }
244
+    // traiter les liens implicites avant de tester l'url
245
+    include_spip('inc/lien');
246
+    if (($url = calculer_url(_request('url_site'))) && !tester_url_absolue($url)) {
247
+        $erreurs['url_site'] = _T('info_url_site_pas_conforme');
248
+    }
249
+
250
+    $erreurs['message_erreur'] = '';
251
+    if (_request('login')) {
252
+        // on n'est jamais cense poster le name 'login'
253
+        $erreurs['login'] = _T('info_non_modifiable');
254
+    }
255
+    elseif (
256
+        ($login = _request('new_login')) && $login !== sql_getfetsel('login', 'spip_auteurs', 'id_auteur=' . (int) $id_auteur)
257
+    ) {
258
+        // on verifie la meme chose que dans auteurs_edit_config()
259
+        if (
260
+            ! auth_autoriser_modifier_login($auth_methode)
261
+            || !autoriser('modifier', 'auteur', (int) $id_auteur, null, ['login' => true])
262
+            // legacy : ne pas risquer d'autoriser la modif login si fonction d'autorisation pas mise a jour et ne teste que l'option email
263
+            || !autoriser('modifier', 'auteur', (int) $id_auteur, null, ['email' => true])
264
+        ) {
265
+            $erreurs['login'] = _T('info_non_modifiable');
266
+        }
267
+    }
268
+
269
+    if (empty($erreurs['login'])) {
270
+        if ($err = auth_verifier_login($auth_methode, _request('new_login'), $id_auteur)) {
271
+            $erreurs['login'] = $err;
272
+            $erreurs['message_erreur'] .= $err;
273
+        } else {
274
+            // pass trop court ou confirmation non identique
275
+            if ($p = _request('new_pass')) {
276
+                if ($p != _request('new_pass2')) {
277
+                    $erreurs['new_pass'] = _T('info_passes_identiques');
278
+                    $erreurs['message_erreur'] .= _T('info_passes_identiques');
279
+                } elseif ($err = auth_verifier_pass($auth_methode, _request('new_login'), $p, $id_auteur)) {
280
+                    $erreurs['new_pass'] = $err;
281
+                    $erreurs['message_erreur'] .= $err;
282
+                }
283
+            }
284
+        }
285
+    }
286
+
287
+    if (!$erreurs['message_erreur']) {
288
+        unset($erreurs['message_erreur']);
289
+    }
290
+
291
+    return $erreurs;
292 292
 }
293 293
 
294 294
 
@@ -325,153 +325,153 @@  discard block
 block discarded – undo
325 325
  *     Retour des traitements
326 326
  **/
327 327
 function formulaires_editer_auteur_traiter_dist(
328
-	$id_auteur = 'new',
329
-	$retour = '',
330
-	$associer_objet = '',
331
-	$config_fonc = 'auteurs_edit_config',
332
-	$row = [],
333
-	$hidden = ''
328
+    $id_auteur = 'new',
329
+    $retour = '',
330
+    $associer_objet = '',
331
+    $config_fonc = 'auteurs_edit_config',
332
+    $row = [],
333
+    $hidden = ''
334 334
 ) {
335
-	if (_request('saisie_webmestre') || _request('webmestre')) {
336
-		set_request('webmestre', _request('webmestre') ?: 'non');
337
-	}
338
-
339
-	// si il y a des modifs sensibles (statut, mot de passe), on refuse le traitement en ajax
340
-	// le formulaire ne peut être traité depuis une XMLHttpRequest
341
-	$prev = formulaires_editer_objet_charger('auteur', $id_auteur, 0, 0, $retour, $config_fonc, $row, $hidden);
342
-	if (
343
-		_request('new_pass') // nouveau mot de passe
344
-		|| empty($prev['statut']) // creation auteur
345
-		|| _request('email') && $prev['email'] !== _request('email') // modification email
346
-		|| _request('statut') === '0minirezo' && $prev['statut'] !== '0minirezo' // promotion 0minirezo
347
-		|| _request('statut') && (int) _request('statut') < (int) $prev['statut'] // promotion de statut
348
-		|| _request('webmestre') && _request('webmestre') !== 'non' && $prev['webmestre'] !== 'oui' // promotion webmestre
349
-	) {
350
-		refuser_traiter_formulaire_ajax();
351
-		// si on arrive là encore en ajax c'est pas OK, on genere une erreur
352
-		if (_AJAX || !empty($_SERVER['HTTP_X_REQUESTED_WITH'])) {
353
-			return [
354
-				'message_erreur' => _T('erreur_technique_ajaxform')
355
-			];
356
-		}
357
-	}
358
-
359
-	$id_objet = null;
360
-	$retour = parametre_url($retour, 'email_confirm', '');
361
-
362
-	if ($restreintes = _request('restreintes')) {
363
-		foreach ($restreintes as $k => $v) {
364
-			if (str_starts_with((string) $v, 'rubrique|')) {
365
-				$restreintes[$k] = substr((string) $v, 9);
366
-			}
367
-		}
368
-		set_request('restreintes', $restreintes);
369
-	}
370
-
371
-	set_request(
372
-		'email',
373
-		email_valide(_request('email'))
374
-	); // eviter d'enregistrer les cas qui sont acceptés par email_valide dans le verifier :
375
-	// "[email protected]  " ou encore "Marie Toto <[email protected]>"
376
-
377
-	include_spip('inc/autoriser');
378
-	if (!autoriser('modifier', 'auteur', $id_auteur, null, ['email' => '?'])) {
379
-		$email_nouveau = _request('email');
380
-		set_request('email'); // vider la saisie car l'auteur n'a pas le droit de modifier cet email
381
-		// mais si c'est son propre profil on lui envoie un email à l'adresse qu'il a indique
382
-		// pour qu'il confirme qu'il possede bien cette adresse
383
-		// son clic sur l'url du message permettre de confirmer le changement
384
-		// et de revenir sur son profil
385
-		if (
386
-			$GLOBALS['visiteur_session']['id_auteur'] == $id_auteur
387
-			&& $email_nouveau != ($email_ancien = sql_getfetsel('email', 'spip_auteurs', 'id_auteur=' . (int) $id_auteur))
388
-		) {
389
-			$envoyer_mail = charger_fonction('envoyer_mail', 'inc');
390
-			$texte = _T(
391
-				'form_auteur_mail_confirmation',
392
-				[
393
-					'url' => generer_action_auteur(
394
-						'confirmer_email',
395
-						$email_nouveau,
396
-						parametre_url($retour, 'email_modif', 'ok')
397
-					)
398
-				]
399
-			);
400
-			$envoyer_mail($email_nouveau, _T('form_auteur_confirmation'), $texte);
401
-			set_request('email_confirm', $email_nouveau);
402
-			if ($email_ancien) {
403
-				$envoyer_mail(
404
-					$email_ancien,
405
-					_T('form_auteur_confirmation'),
406
-					_T('form_auteur_envoi_mail_confirmation', ['email' => $email_nouveau])
407
-				);
408
-			}
409
-			$retour = parametre_url($retour, 'email_confirm', $email_nouveau);
410
-		}
411
-	}
412
-
413
-	// Trafic de langue pour enregistrer la bonne
414
-	if ($langue = _request('langue')) {
415
-		set_request('lang', $langue);
416
-	}
417
-
418
-	$res = formulaires_editer_objet_traiter('auteur', $id_auteur, 0, 0, $retour, $config_fonc, $row, $hidden);
419
-
420
-	if (_request('reset_password') && !(int) $id_auteur && (int) $res['id_auteur']) {
421
-		$erreurs = [];
422
-		$erreurs = auteur_reset_password($res['id_auteur'], $erreurs);
423
-		if (isset($erreurs['message_ok'])) {
424
-			if (!isset($res['message_ok'])) { $res['message_ok'] = '';
425
-			}
426
-			$res['message_ok'] = trim($res['message_ok'] . ' ' . $erreurs['message_ok']);
427
-		}
428
-		if (isset($erreurs['message_erreur']) && $erreurs['message_erreur']) {
429
-			if (!isset($res['message_erreur'])) { $res['message_erreur'] = '';
430
-			}
431
-			$res['message_erreur'] = trim($res['message_erreur'] . ' ' . $erreurs['message_erreur']);
432
-		}
433
-	}
434
-
435
-	// Un lien auteur a prendre en compte ?
436
-	if ($associer_objet && ($id_auteur = $res['id_auteur'])) {
437
-		$objet = '';
438
-		if ((int) $associer_objet) {
439
-			$objet = 'article';
440
-			$id_objet = (int) $associer_objet;
441
-		} elseif (preg_match(',^\w+\|\d+$,', $associer_objet)) {
442
-			[$objet, $id_objet] = explode('|', $associer_objet);
443
-		}
444
-		if ((bool) $objet && (bool) $id_objet && autoriser('modifier', $objet, $id_objet)) {
445
-			include_spip('action/editer_auteur');
446
-			auteur_associer($id_auteur, [$objet => $id_objet]);
447
-			if (isset($res['redirect'])) {
448
-				$res['redirect'] = parametre_url($res['redirect'], 'id_lien_ajoute', $id_auteur, '&');
449
-			}
450
-		}
451
-	}
452
-
453
-	return $res;
335
+    if (_request('saisie_webmestre') || _request('webmestre')) {
336
+        set_request('webmestre', _request('webmestre') ?: 'non');
337
+    }
338
+
339
+    // si il y a des modifs sensibles (statut, mot de passe), on refuse le traitement en ajax
340
+    // le formulaire ne peut être traité depuis une XMLHttpRequest
341
+    $prev = formulaires_editer_objet_charger('auteur', $id_auteur, 0, 0, $retour, $config_fonc, $row, $hidden);
342
+    if (
343
+        _request('new_pass') // nouveau mot de passe
344
+        || empty($prev['statut']) // creation auteur
345
+        || _request('email') && $prev['email'] !== _request('email') // modification email
346
+        || _request('statut') === '0minirezo' && $prev['statut'] !== '0minirezo' // promotion 0minirezo
347
+        || _request('statut') && (int) _request('statut') < (int) $prev['statut'] // promotion de statut
348
+        || _request('webmestre') && _request('webmestre') !== 'non' && $prev['webmestre'] !== 'oui' // promotion webmestre
349
+    ) {
350
+        refuser_traiter_formulaire_ajax();
351
+        // si on arrive là encore en ajax c'est pas OK, on genere une erreur
352
+        if (_AJAX || !empty($_SERVER['HTTP_X_REQUESTED_WITH'])) {
353
+            return [
354
+                'message_erreur' => _T('erreur_technique_ajaxform')
355
+            ];
356
+        }
357
+    }
358
+
359
+    $id_objet = null;
360
+    $retour = parametre_url($retour, 'email_confirm', '');
361
+
362
+    if ($restreintes = _request('restreintes')) {
363
+        foreach ($restreintes as $k => $v) {
364
+            if (str_starts_with((string) $v, 'rubrique|')) {
365
+                $restreintes[$k] = substr((string) $v, 9);
366
+            }
367
+        }
368
+        set_request('restreintes', $restreintes);
369
+    }
370
+
371
+    set_request(
372
+        'email',
373
+        email_valide(_request('email'))
374
+    ); // eviter d'enregistrer les cas qui sont acceptés par email_valide dans le verifier :
375
+    // "[email protected]  " ou encore "Marie Toto <[email protected]>"
376
+
377
+    include_spip('inc/autoriser');
378
+    if (!autoriser('modifier', 'auteur', $id_auteur, null, ['email' => '?'])) {
379
+        $email_nouveau = _request('email');
380
+        set_request('email'); // vider la saisie car l'auteur n'a pas le droit de modifier cet email
381
+        // mais si c'est son propre profil on lui envoie un email à l'adresse qu'il a indique
382
+        // pour qu'il confirme qu'il possede bien cette adresse
383
+        // son clic sur l'url du message permettre de confirmer le changement
384
+        // et de revenir sur son profil
385
+        if (
386
+            $GLOBALS['visiteur_session']['id_auteur'] == $id_auteur
387
+            && $email_nouveau != ($email_ancien = sql_getfetsel('email', 'spip_auteurs', 'id_auteur=' . (int) $id_auteur))
388
+        ) {
389
+            $envoyer_mail = charger_fonction('envoyer_mail', 'inc');
390
+            $texte = _T(
391
+                'form_auteur_mail_confirmation',
392
+                [
393
+                    'url' => generer_action_auteur(
394
+                        'confirmer_email',
395
+                        $email_nouveau,
396
+                        parametre_url($retour, 'email_modif', 'ok')
397
+                    )
398
+                ]
399
+            );
400
+            $envoyer_mail($email_nouveau, _T('form_auteur_confirmation'), $texte);
401
+            set_request('email_confirm', $email_nouveau);
402
+            if ($email_ancien) {
403
+                $envoyer_mail(
404
+                    $email_ancien,
405
+                    _T('form_auteur_confirmation'),
406
+                    _T('form_auteur_envoi_mail_confirmation', ['email' => $email_nouveau])
407
+                );
408
+            }
409
+            $retour = parametre_url($retour, 'email_confirm', $email_nouveau);
410
+        }
411
+    }
412
+
413
+    // Trafic de langue pour enregistrer la bonne
414
+    if ($langue = _request('langue')) {
415
+        set_request('lang', $langue);
416
+    }
417
+
418
+    $res = formulaires_editer_objet_traiter('auteur', $id_auteur, 0, 0, $retour, $config_fonc, $row, $hidden);
419
+
420
+    if (_request('reset_password') && !(int) $id_auteur && (int) $res['id_auteur']) {
421
+        $erreurs = [];
422
+        $erreurs = auteur_reset_password($res['id_auteur'], $erreurs);
423
+        if (isset($erreurs['message_ok'])) {
424
+            if (!isset($res['message_ok'])) { $res['message_ok'] = '';
425
+            }
426
+            $res['message_ok'] = trim($res['message_ok'] . ' ' . $erreurs['message_ok']);
427
+        }
428
+        if (isset($erreurs['message_erreur']) && $erreurs['message_erreur']) {
429
+            if (!isset($res['message_erreur'])) { $res['message_erreur'] = '';
430
+            }
431
+            $res['message_erreur'] = trim($res['message_erreur'] . ' ' . $erreurs['message_erreur']);
432
+        }
433
+    }
434
+
435
+    // Un lien auteur a prendre en compte ?
436
+    if ($associer_objet && ($id_auteur = $res['id_auteur'])) {
437
+        $objet = '';
438
+        if ((int) $associer_objet) {
439
+            $objet = 'article';
440
+            $id_objet = (int) $associer_objet;
441
+        } elseif (preg_match(',^\w+\|\d+$,', $associer_objet)) {
442
+            [$objet, $id_objet] = explode('|', $associer_objet);
443
+        }
444
+        if ((bool) $objet && (bool) $id_objet && autoriser('modifier', $objet, $id_objet)) {
445
+            include_spip('action/editer_auteur');
446
+            auteur_associer($id_auteur, [$objet => $id_objet]);
447
+            if (isset($res['redirect'])) {
448
+                $res['redirect'] = parametre_url($res['redirect'], 'id_lien_ajoute', $id_auteur, '&');
449
+            }
450
+        }
451
+    }
452
+
453
+    return $res;
454 454
 }
455 455
 
456 456
 
457 457
 function auteur_reset_password($id_auteur, $erreurs = []) {
458
-	$auteur = sql_fetsel('*', 'spip_auteurs', 'id_auteur=' . (int) $id_auteur);
459
-	$config = auteurs_edit_config($auteur);
460
-
461
-	if ($config['edit_pass']) {
462
-		if ($email = auteur_regenerer_identifiants($id_auteur)) {
463
-			$erreurs['message_ok'] = _T('message_nouveaux_identifiants_ok', ['email' => $email]);
464
-			$erreurs['message_erreur'] = '';
465
-		} elseif ($email === false) {
466
-			$erreurs['message_erreur'] = _T('message_nouveaux_identifiants_echec_envoi');
467
-		} else {
468
-			$erreurs['message_erreur'] = _T('message_nouveaux_identifiants_echec');
469
-		}
470
-	} else {
471
-		$erreurs['message_erreur'] = _T('message_nouveaux_identifiants_echec');
472
-	}
473
-
474
-	return $erreurs;
458
+    $auteur = sql_fetsel('*', 'spip_auteurs', 'id_auteur=' . (int) $id_auteur);
459
+    $config = auteurs_edit_config($auteur);
460
+
461
+    if ($config['edit_pass']) {
462
+        if ($email = auteur_regenerer_identifiants($id_auteur)) {
463
+            $erreurs['message_ok'] = _T('message_nouveaux_identifiants_ok', ['email' => $email]);
464
+            $erreurs['message_erreur'] = '';
465
+        } elseif ($email === false) {
466
+            $erreurs['message_erreur'] = _T('message_nouveaux_identifiants_echec_envoi');
467
+        } else {
468
+            $erreurs['message_erreur'] = _T('message_nouveaux_identifiants_echec');
469
+        }
470
+    } else {
471
+        $erreurs['message_erreur'] = _T('message_nouveaux_identifiants_echec');
472
+    }
473
+
474
+    return $erreurs;
475 475
 }
476 476
 
477 477
 /**
@@ -482,50 +482,50 @@  discard block
 block discarded – undo
482 482
  * @return string
483 483
  */
484 484
 function auteur_regenerer_identifiants($id_auteur, $notifier = true, $contexte = []) {
485
-	if ($id_auteur) {
486
-		$set = [];
487
-		include_spip('inc/access');
488
-		$set['pass'] = creer_pass_aleatoire(max(_PASS_LONGUEUR_MINI, 16));
489
-
490
-		include_spip('action/editer_auteur');
491
-		auteur_modifier($id_auteur, $set);
492
-
493
-		$row = sql_fetsel('*', 'spip_auteurs', 'id_auteur=' . (int) $id_auteur);
494
-		include_spip('inc/filtres');
495
-		if (
496
-			$notifier
497
-			&& $row['email']
498
-			&& email_valide($row['email'])
499
-			&& trouver_fond($fond = 'modeles/mail_nouveaux_identifiants')
500
-		) {
501
-			// envoyer l'email avec login/pass
502
-			$c = [
503
-				'id_auteur' => $id_auteur,
504
-				'nom' => $row['nom'],
505
-				'mode' => $row['statut'],
506
-				'email' => $row['email'],
507
-				'pass' => $set['pass'],
508
-			];
509
-			// on merge avec les champs fournit en appel, qui sont passes au modele de notification donc
510
-			$contexte = array_merge($contexte, $c);
511
-			// si pas de langue explicitement demandee, prendre celle de l'auteur si on la connait, ou a defaut celle du site
512
-			// plutot que celle de l'admin qui vient de cliquer sur le bouton
513
-			if (!isset($contexte['lang']) || !$contexte['lang']) {
514
-				$contexte['lang'] = isset($row['lang']) && $row['lang']
515
-					? $row['lang']
516
-					: $GLOBALS['meta']['langue_site'];
517
-			}
518
-			lang_select($contexte['lang']);
519
-			$message = recuperer_fond($fond, $contexte);
520
-			include_spip('inc/notifications');
521
-			notifications_envoyer_mails($row['email'], $message);
522
-			lang_select();
523
-
524
-			return $row['email'];
525
-		}
526
-
527
-		return false;
528
-	}
529
-
530
-	return '';
485
+    if ($id_auteur) {
486
+        $set = [];
487
+        include_spip('inc/access');
488
+        $set['pass'] = creer_pass_aleatoire(max(_PASS_LONGUEUR_MINI, 16));
489
+
490
+        include_spip('action/editer_auteur');
491
+        auteur_modifier($id_auteur, $set);
492
+
493
+        $row = sql_fetsel('*', 'spip_auteurs', 'id_auteur=' . (int) $id_auteur);
494
+        include_spip('inc/filtres');
495
+        if (
496
+            $notifier
497
+            && $row['email']
498
+            && email_valide($row['email'])
499
+            && trouver_fond($fond = 'modeles/mail_nouveaux_identifiants')
500
+        ) {
501
+            // envoyer l'email avec login/pass
502
+            $c = [
503
+                'id_auteur' => $id_auteur,
504
+                'nom' => $row['nom'],
505
+                'mode' => $row['statut'],
506
+                'email' => $row['email'],
507
+                'pass' => $set['pass'],
508
+            ];
509
+            // on merge avec les champs fournit en appel, qui sont passes au modele de notification donc
510
+            $contexte = array_merge($contexte, $c);
511
+            // si pas de langue explicitement demandee, prendre celle de l'auteur si on la connait, ou a defaut celle du site
512
+            // plutot que celle de l'admin qui vient de cliquer sur le bouton
513
+            if (!isset($contexte['lang']) || !$contexte['lang']) {
514
+                $contexte['lang'] = isset($row['lang']) && $row['lang']
515
+                    ? $row['lang']
516
+                    : $GLOBALS['meta']['langue_site'];
517
+            }
518
+            lang_select($contexte['lang']);
519
+            $message = recuperer_fond($fond, $contexte);
520
+            include_spip('inc/notifications');
521
+            notifications_envoyer_mails($row['email'], $message);
522
+            lang_select();
523
+
524
+            return $row['email'];
525
+        }
526
+
527
+        return false;
528
+    }
529
+
530
+    return '';
531 531
 }
Please login to merge, or discard this patch.