Completed
Push — master ( 8ce9c8...350a8b )
by cam
01:02
created
ecrire/action/confirmer_inscription.php 2 patches
Spacing   +1 added lines, -1 removed lines patch added patch discarded remove patch
@@ -55,7 +55,7 @@
 block discarded – undo
55 55
 			if (autoriser('ecrire', '', '', $auteur['id_auteur'])) {
56 56
 				// poser un cookie admin aussi
57 57
 				$cookie = charger_fonction('cookie', 'action');
58
-				$cookie('@' . $GLOBALS['visiteur_session']['login']);
58
+				$cookie('@'.$GLOBALS['visiteur_session']['login']);
59 59
 				$GLOBALS['redirect'] = _DIR_RESTREINT_ABS;
60 60
 			} else {
61 61
 				$GLOBALS['redirect'] = $GLOBALS['meta']['adresse_site'];
Please login to merge, or discard this patch.
Indentation   +44 added lines, -44 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
 /**
@@ -27,51 +27,51 @@  discard block
 block discarded – undo
27 27
  * @return void
28 28
  */
29 29
 function action_confirmer_inscription_dist() {
30
-	$jeton = _request('jeton');
31
-	$email = _request('email');
30
+    $jeton = _request('jeton');
31
+    $email = _request('email');
32 32
 
33
-	include_spip('action/inscrire_auteur');
34
-	if (
35
-		$auteur = auteur_verifier_jeton($jeton)
36
-		and $auteur['email'] == $email
37
-		and $auteur['statut'] == 'nouveau'
38
-	) {
39
-		// d'abord on confirme son statut
40
-		$auteur = confirmer_statut_inscription($auteur);
33
+    include_spip('action/inscrire_auteur');
34
+    if (
35
+        $auteur = auteur_verifier_jeton($jeton)
36
+        and $auteur['email'] == $email
37
+        and $auteur['statut'] == 'nouveau'
38
+    ) {
39
+        // d'abord on confirme son statut
40
+        $auteur = confirmer_statut_inscription($auteur);
41 41
 
42
-		// OK c'est un nouvel inscrit qui confirme :
43
-		// on le loge => ca va confirmer son statut et c'est plus sympa
44
-		include_spip('inc/auth');
45
-		auth_loger($auteur);
42
+        // OK c'est un nouvel inscrit qui confirme :
43
+        // on le loge => ca va confirmer son statut et c'est plus sympa
44
+        include_spip('inc/auth');
45
+        auth_loger($auteur);
46 46
 
47
-		// et on efface son jeton
48
-		auteur_effacer_jeton($auteur['id_auteur']);
47
+        // et on efface son jeton
48
+        auteur_effacer_jeton($auteur['id_auteur']);
49 49
 
50
-		// si pas de redirection demandee, rediriger vers public ou prive selon le statut de l'auteur
51
-		// TODO: ne semble pas marcher si inscrit non visiteur, a debug
52
-		if (!_request('redirect')) {
53
-			// on passe id_auteur explicite pour forcer une lecture en base de toutes les infos
54
-			if (autoriser('ecrire', '', '', $auteur['id_auteur'])) {
55
-				// poser un cookie admin aussi
56
-				$cookie = charger_fonction('cookie', 'action');
57
-				$cookie('@' . $GLOBALS['visiteur_session']['login']);
58
-				$GLOBALS['redirect'] = _DIR_RESTREINT_ABS;
59
-			} else {
60
-				$GLOBALS['redirect'] = $GLOBALS['meta']['adresse_site'];
61
-			}
62
-		}
63
-	} else {
64
-		// lien perime :
65
-		if (!empty($GLOBALS['visiteur_session']['id_auteur'])) {
66
-			// on passe id_auteur explicite pour forcer une lecture en base de toutes les infos
67
-			if (autoriser('ecrire', '', '', $GLOBALS['visiteur_session']['id_auteur'])) {
68
-				$GLOBALS['redirect'] = _DIR_RESTREINT_ABS;
69
-			} else {
70
-				$GLOBALS['redirect'] = $GLOBALS['meta']['adresse_site'];
71
-			}
72
-		} else {
73
-			// rediriger vers la page de login si pas encore loge
74
-			$GLOBALS['redirect'] = parametre_url(generer_url_public('login', '', false), 'url', _request('redirect'));
75
-		}
76
-	}
50
+        // si pas de redirection demandee, rediriger vers public ou prive selon le statut de l'auteur
51
+        // TODO: ne semble pas marcher si inscrit non visiteur, a debug
52
+        if (!_request('redirect')) {
53
+            // on passe id_auteur explicite pour forcer une lecture en base de toutes les infos
54
+            if (autoriser('ecrire', '', '', $auteur['id_auteur'])) {
55
+                // poser un cookie admin aussi
56
+                $cookie = charger_fonction('cookie', 'action');
57
+                $cookie('@' . $GLOBALS['visiteur_session']['login']);
58
+                $GLOBALS['redirect'] = _DIR_RESTREINT_ABS;
59
+            } else {
60
+                $GLOBALS['redirect'] = $GLOBALS['meta']['adresse_site'];
61
+            }
62
+        }
63
+    } else {
64
+        // lien perime :
65
+        if (!empty($GLOBALS['visiteur_session']['id_auteur'])) {
66
+            // on passe id_auteur explicite pour forcer une lecture en base de toutes les infos
67
+            if (autoriser('ecrire', '', '', $GLOBALS['visiteur_session']['id_auteur'])) {
68
+                $GLOBALS['redirect'] = _DIR_RESTREINT_ABS;
69
+            } else {
70
+                $GLOBALS['redirect'] = $GLOBALS['meta']['adresse_site'];
71
+            }
72
+        } else {
73
+            // rediriger vers la page de login si pas encore loge
74
+            $GLOBALS['redirect'] = parametre_url(generer_url_public('login', '', false), 'url', _request('redirect'));
75
+        }
76
+    }
77 77
 }
Please login to merge, or discard this patch.
ecrire/action/etre_webmestre.php 1 patch
Indentation   +21 added lines, -21 removed lines patch added patch discarded remove patch
@@ -17,7 +17,7 @@  discard block
 block discarded – undo
17 17
  */
18 18
 
19 19
 if (!defined('_ECRIRE_INC_VERSION')) {
20
-	return;
20
+    return;
21 21
 }
22 22
 
23 23
 include_spip('inc/actions');
@@ -29,23 +29,23 @@  discard block
 block discarded – undo
29 29
  * @return void
30 30
  */
31 31
 function action_etre_webmestre_dist() {
32
-	$securiser_action = charger_fonction('securiser_action', 'inc');
33
-	$time = $securiser_action();
32
+    $securiser_action = charger_fonction('securiser_action', 'inc');
33
+    $time = $securiser_action();
34 34
 
35
-	if (
36
-		time() - $time < 15 * 60
37
-		and $GLOBALS['visiteur_session']['statut'] == '0minirezo'
38
-		and $GLOBALS['visiteur_session']['webmestre'] !== 'oui'
39
-	) {
40
-		$action = _T('info_admin_etre_webmestre');
41
-		$admin = charger_fonction('admin', 'inc');
42
-		// lance la verif par ftp et l'appel
43
-		// a base_etre_webmestre_dist quand c'est OK
44
-		if ($r = $admin('etre_webmestre', $action)) {
45
-			echo $r;
46
-			exit;
47
-		}
48
-	}
35
+    if (
36
+        time() - $time < 15 * 60
37
+        and $GLOBALS['visiteur_session']['statut'] == '0minirezo'
38
+        and $GLOBALS['visiteur_session']['webmestre'] !== 'oui'
39
+    ) {
40
+        $action = _T('info_admin_etre_webmestre');
41
+        $admin = charger_fonction('admin', 'inc');
42
+        // lance la verif par ftp et l'appel
43
+        // a base_etre_webmestre_dist quand c'est OK
44
+        if ($r = $admin('etre_webmestre', $action)) {
45
+            echo $r;
46
+            exit;
47
+        }
48
+    }
49 49
 }
50 50
 
51 51
 /**
@@ -54,8 +54,8 @@  discard block
 block discarded – undo
54 54
  * @return void
55 55
  */
56 56
 function base_etre_webmestre_dist() {
57
-	if ($GLOBALS['visiteur_session']['statut'] == '0minirezo' and $GLOBALS['visiteur_session']['webmestre'] !== 'oui') {
58
-		include_spip('action/editer_auteur');
59
-		auteur_instituer($GLOBALS['visiteur_session']['id_auteur'], ['webmestre' => 'oui'], true);
60
-	}
57
+    if ($GLOBALS['visiteur_session']['statut'] == '0minirezo' and $GLOBALS['visiteur_session']['webmestre'] !== 'oui') {
58
+        include_spip('action/editer_auteur');
59
+        auteur_instituer($GLOBALS['visiteur_session']['id_auteur'], ['webmestre' => 'oui'], true);
60
+    }
61 61
 }
Please login to merge, or discard this patch.
ecrire/action/confirmer_email.php 2 patches
Indentation   +19 added lines, -19 removed lines patch added patch discarded remove patch
@@ -17,7 +17,7 @@  discard block
 block discarded – undo
17 17
  */
18 18
 
19 19
 if (!defined('_ECRIRE_INC_VERSION')) {
20
-	return;
20
+    return;
21 21
 }
22 22
 
23 23
 /**
@@ -28,23 +28,23 @@  discard block
 block discarded – undo
28 28
  * @return void
29 29
  */
30 30
 function action_confirmer_email_dist() {
31
-	$securiser_action = charger_fonction('securiser_action', 'inc');
32
-	$arg = $securiser_action();
31
+    $securiser_action = charger_fonction('securiser_action', 'inc');
32
+    $arg = $securiser_action();
33 33
 
34
-	include_spip('inc/filtres');
35
-	if ($GLOBALS['visiteur_session']['id_auteur'] and email_valide($arg)) {
36
-		include_spip('action/editer_auteur');
37
-		auteur_modifier($GLOBALS['visiteur_session']['id_auteur'], ['email' => $arg]);
38
-	}
39
-	// verifier avant de rediriger pour invalider le message de confirmation
40
-	// si ca n'a pas marche
41
-	if (
42
-		$redirect = _request('redirect') and !$arg == sql_getfetsel(
43
-			'email',
44
-			'spip_auteurs',
45
-			'id_auteur=' . intval($GLOBALS['visiteur_session'])
46
-		)
47
-	) {
48
-		$GLOBALS['redirect'] = parametre_url($redirect, 'email_modif', '');
49
-	}
34
+    include_spip('inc/filtres');
35
+    if ($GLOBALS['visiteur_session']['id_auteur'] and email_valide($arg)) {
36
+        include_spip('action/editer_auteur');
37
+        auteur_modifier($GLOBALS['visiteur_session']['id_auteur'], ['email' => $arg]);
38
+    }
39
+    // verifier avant de rediriger pour invalider le message de confirmation
40
+    // si ca n'a pas marche
41
+    if (
42
+        $redirect = _request('redirect') and !$arg == sql_getfetsel(
43
+            'email',
44
+            'spip_auteurs',
45
+            'id_auteur=' . intval($GLOBALS['visiteur_session'])
46
+        )
47
+    ) {
48
+        $GLOBALS['redirect'] = parametre_url($redirect, 'email_modif', '');
49
+    }
50 50
 }
Please login to merge, or discard this patch.
Spacing   +1 added lines, -1 removed lines patch added patch discarded remove patch
@@ -42,7 +42,7 @@
 block discarded – undo
42 42
 		$redirect = _request('redirect') and !$arg == sql_getfetsel(
43 43
 			'email',
44 44
 			'spip_auteurs',
45
-			'id_auteur=' . intval($GLOBALS['visiteur_session'])
45
+			'id_auteur='.intval($GLOBALS['visiteur_session'])
46 46
 		)
47 47
 	) {
48 48
 		$GLOBALS['redirect'] = parametre_url($redirect, 'email_modif', '');
Please login to merge, or discard this patch.
ecrire/action/auth.php 1 patch
Indentation   +22 added lines, -22 removed lines patch added patch discarded remove patch
@@ -17,7 +17,7 @@  discard block
 block discarded – undo
17 17
  **/
18 18
 
19 19
 if (!defined('_ECRIRE_INC_VERSION')) {
20
-	return;
20
+    return;
21 21
 }
22 22
 
23 23
 /**
@@ -25,25 +25,25 @@  discard block
 block discarded – undo
25 25
  */
26 26
 function action_auth_dist() {
27 27
 
28
-	$securiser_action = charger_fonction('securiser_action', 'inc');
29
-	$arg = $securiser_action();
30
-
31
-	if (!preg_match(',^(\w+)[/](.+)$,', $arg, $r)) {
32
-		spip_log("action_auth_dist $arg pas compris");
33
-	} else {
34
-		$auth_methode = $r[1];
35
-		$login = $r[2];
36
-		include_spip('inc/auth');
37
-		$res = auth_terminer_identifier_login($auth_methode, $login);
38
-
39
-		if (is_string($res)) { // Erreur
40
-			$redirect = _request('redirect');
41
-			$redirect = parametre_url($redirect, 'var_erreur', $res, '&');
42
-			include_spip('inc/headers');
43
-			redirige_par_entete($redirect);
44
-		}
45
-
46
-		// sinon on loge l'auteur identifie, et on finit (redirection automatique)
47
-		auth_loger($res);
48
-	}
28
+    $securiser_action = charger_fonction('securiser_action', 'inc');
29
+    $arg = $securiser_action();
30
+
31
+    if (!preg_match(',^(\w+)[/](.+)$,', $arg, $r)) {
32
+        spip_log("action_auth_dist $arg pas compris");
33
+    } else {
34
+        $auth_methode = $r[1];
35
+        $login = $r[2];
36
+        include_spip('inc/auth');
37
+        $res = auth_terminer_identifier_login($auth_methode, $login);
38
+
39
+        if (is_string($res)) { // Erreur
40
+            $redirect = _request('redirect');
41
+            $redirect = parametre_url($redirect, 'var_erreur', $res, '&');
42
+            include_spip('inc/headers');
43
+            redirige_par_entete($redirect);
44
+        }
45
+
46
+        // sinon on loge l'auteur identifie, et on finit (redirection automatique)
47
+        auth_loger($res);
48
+    }
49 49
 }
Please login to merge, or discard this patch.
ecrire/plugins/infos_paquet.php 2 patches
Spacing   +8 added lines, -8 removed lines patch added patch discarded remove patch
@@ -25,7 +25,7 @@  discard block
 block discarded – undo
25 25
  * @return array
26 26
  */
27 27
 function plugins_infos_paquet($desc, $plug = '', $dir_plugins = _DIR_PLUGINS) {
28
-	static $process = [ // tableau constant
28
+	static $process = [// tableau constant
29 29
 		'debut' => 'paquet_debutElement',
30 30
 		'fin' => 'paquet_finElement',
31 31
 		'text' => 'paquet_textElement'
@@ -47,8 +47,8 @@  discard block
 block discarded – undo
47 47
 			unset($tree['']);
48 48
 		}
49 49
 
50
-		$tree['slogan'] = $tree['prefix'] . '_slogan';
51
-		$tree['description'] = $tree['prefix'] . '_description';
50
+		$tree['slogan'] = $tree['prefix'].'_slogan';
51
+		$tree['description'] = $tree['prefix'].'_description';
52 52
 		paquet_readable_files($tree, "$dir_plugins$plug/");
53 53
 		if (!$tree['chemin']) {
54 54
 			$tree['chemin'] = [];
@@ -80,7 +80,7 @@  discard block
 block discarded – undo
80 80
 	// Prendre les messages d'erreur sans les numeros de lignes
81 81
 	$msg = array_column($vxml->err, 0);
82 82
 	$t = _T('plugins_erreur', ['plugins' => $plug]);
83
-	array_unshift($msg, $t . " <ul class='erreur_xml'><li>" . reset($msg) . '</li></ul>');
83
+	array_unshift($msg, $t." <ul class='erreur_xml'><li>".reset($msg).'</li></ul>');
84 84
 
85 85
 	return ['erreur' => $msg];
86 86
 }
@@ -96,9 +96,9 @@  discard block
 block discarded – undo
96 96
 function paquet_readable_files(&$tree, $dir) {
97 97
 	$prefix = strtolower($tree['prefix']);
98 98
 
99
-	$tree['options'] = (is_readable($dir . $f = ($prefix . '_options.php'))) ? [$f] : [];
100
-	$tree['fonctions'] = (is_readable($dir . $f = ($prefix . '_fonctions.php'))) ? [$f] : [];
101
-	$tree['install'] = (is_readable($dir . $f = ($prefix . '_administrations.php'))) ? [$f] : [];
99
+	$tree['options'] = (is_readable($dir.$f = ($prefix.'_options.php'))) ? [$f] : [];
100
+	$tree['fonctions'] = (is_readable($dir.$f = ($prefix.'_fonctions.php'))) ? [$f] : [];
101
+	$tree['install'] = (is_readable($dir.$f = ($prefix.'_administrations.php'))) ? [$f] : [];
102 102
 }
103 103
 
104 104
 /**
@@ -186,7 +186,7 @@  discard block
 block discarded – undo
186 186
 	$texte = trim($phraseur->versions[$n]['']);
187 187
 	$phraseur->versions[$n][''] = '';
188 188
 
189
-	$f = 'info_paquet_' . $name;
189
+	$f = 'info_paquet_'.$name;
190 190
 	if (function_exists($f)) {
191 191
 		$f($phraseur, $attrs, $texte);
192 192
 	} elseif (!$attrs) {
Please login to merge, or discard this patch.
Indentation   +195 added lines, -195 removed lines patch added patch discarded remove patch
@@ -10,7 +10,7 @@  discard block
 block discarded – undo
10 10
 \***************************************************************************/
11 11
 
12 12
 if (!defined('_ECRIRE_INC_VERSION')) {
13
-	return;
13
+    return;
14 14
 }
15 15
 
16 16
 /**
@@ -24,64 +24,64 @@  discard block
 block discarded – undo
24 24
  * @return array
25 25
  */
26 26
 function plugins_infos_paquet($desc, $plug = '', $dir_plugins = _DIR_PLUGINS) {
27
-	static $process = [ // tableau constant
28
-		'debut' => 'paquet_debutElement',
29
-		'fin' => 'paquet_finElement',
30
-		'text' => 'paquet_textElement'
31
-	];
32
-
33
-	$valider_xml = charger_fonction('valider', 'xml');
34
-	$vxml = $valider_xml($desc, false, $process, 'paquet.dtd', 'utf-8');
35
-	if (!$vxml->err) {
36
-		// On veut toutes les variantes selon la version de SPIP
37
-		if (!$plug) {
38
-			return $vxml->versions;
39
-		}
40
-
41
-		// compatibilite avec l'existant:
42
-		$tree = $vxml->versions['0'];
43
-
44
-		// l'arbre renvoie parfois un tag vide... etrange. Pas la peine de garder ca.
45
-		if (isset($tree['']) && !strlen($tree[''])) {
46
-			unset($tree['']);
47
-		}
48
-
49
-		$tree['slogan'] = $tree['prefix'] . '_slogan';
50
-		$tree['description'] = $tree['prefix'] . '_description';
51
-		paquet_readable_files($tree, "$dir_plugins$plug/");
52
-		if (!$tree['chemin']) {
53
-			$tree['chemin'] = [];
54
-		}
55
-
56
-		// On verifie qu'il existe des balises spip qu'il faudrait rajouter dans
57
-		// la structure d'infos du paquet en fonction de la version spip courante
58
-		if ((is_countable($vxml->versions) ? count($vxml->versions) : 0) > 1) {
59
-			$vspip = $GLOBALS['spip_version_branche'];
60
-			foreach ($vxml->versions as $_compatibilite => $_version) {
61
-				if (
62
-					$_version['balise'] == 'spip'
63
-					&& plugin_version_compatible($_compatibilite, $vspip, 'spip')
64
-				) {
65
-					// on merge les sous-balises de la balise spip compatible avec celles de la
66
-					// balise paquet
67
-					foreach ($_version as $_index => $_balise) {
68
-						if ($_index && $_index != 'balise') {
69
-							$tree[$_index] = array_merge($tree[$_index], $_balise);
70
-						}
71
-					}
72
-				}
73
-			}
74
-		}
75
-
76
-		return $tree;
77
-	}
78
-
79
-	// Prendre les messages d'erreur sans les numeros de lignes
80
-	$msg = array_column($vxml->err, 0);
81
-	$t = _T('plugins_erreur', ['plugins' => $plug]);
82
-	array_unshift($msg, $t . " <ul class='erreur_xml'><li>" . reset($msg) . '</li></ul>');
83
-
84
-	return ['erreur' => $msg];
27
+    static $process = [ // tableau constant
28
+        'debut' => 'paquet_debutElement',
29
+        'fin' => 'paquet_finElement',
30
+        'text' => 'paquet_textElement'
31
+    ];
32
+
33
+    $valider_xml = charger_fonction('valider', 'xml');
34
+    $vxml = $valider_xml($desc, false, $process, 'paquet.dtd', 'utf-8');
35
+    if (!$vxml->err) {
36
+        // On veut toutes les variantes selon la version de SPIP
37
+        if (!$plug) {
38
+            return $vxml->versions;
39
+        }
40
+
41
+        // compatibilite avec l'existant:
42
+        $tree = $vxml->versions['0'];
43
+
44
+        // l'arbre renvoie parfois un tag vide... etrange. Pas la peine de garder ca.
45
+        if (isset($tree['']) && !strlen($tree[''])) {
46
+            unset($tree['']);
47
+        }
48
+
49
+        $tree['slogan'] = $tree['prefix'] . '_slogan';
50
+        $tree['description'] = $tree['prefix'] . '_description';
51
+        paquet_readable_files($tree, "$dir_plugins$plug/");
52
+        if (!$tree['chemin']) {
53
+            $tree['chemin'] = [];
54
+        }
55
+
56
+        // On verifie qu'il existe des balises spip qu'il faudrait rajouter dans
57
+        // la structure d'infos du paquet en fonction de la version spip courante
58
+        if ((is_countable($vxml->versions) ? count($vxml->versions) : 0) > 1) {
59
+            $vspip = $GLOBALS['spip_version_branche'];
60
+            foreach ($vxml->versions as $_compatibilite => $_version) {
61
+                if (
62
+                    $_version['balise'] == 'spip'
63
+                    && plugin_version_compatible($_compatibilite, $vspip, 'spip')
64
+                ) {
65
+                    // on merge les sous-balises de la balise spip compatible avec celles de la
66
+                    // balise paquet
67
+                    foreach ($_version as $_index => $_balise) {
68
+                        if ($_index && $_index != 'balise') {
69
+                            $tree[$_index] = array_merge($tree[$_index], $_balise);
70
+                        }
71
+                    }
72
+                }
73
+            }
74
+        }
75
+
76
+        return $tree;
77
+    }
78
+
79
+    // Prendre les messages d'erreur sans les numeros de lignes
80
+    $msg = array_column($vxml->err, 0);
81
+    $t = _T('plugins_erreur', ['plugins' => $plug]);
82
+    array_unshift($msg, $t . " <ul class='erreur_xml'><li>" . reset($msg) . '</li></ul>');
83
+
84
+    return ['erreur' => $msg];
85 85
 }
86 86
 
87 87
 /**
@@ -93,11 +93,11 @@  discard block
 block discarded – undo
93 93
  * @return void
94 94
  */
95 95
 function paquet_readable_files(&$tree, $dir) {
96
-	$prefix = strtolower($tree['prefix']);
96
+    $prefix = strtolower($tree['prefix']);
97 97
 
98
-	$tree['options'] = (is_readable($dir . $f = ($prefix . '_options.php'))) ? [$f] : [];
99
-	$tree['fonctions'] = (is_readable($dir . $f = ($prefix . '_fonctions.php'))) ? [$f] : [];
100
-	$tree['install'] = (is_readable($dir . $f = ($prefix . '_administrations.php'))) ? [$f] : [];
98
+    $tree['options'] = (is_readable($dir . $f = ($prefix . '_options.php'))) ? [$f] : [];
99
+    $tree['fonctions'] = (is_readable($dir . $f = ($prefix . '_fonctions.php'))) ? [$f] : [];
100
+    $tree['install'] = (is_readable($dir . $f = ($prefix . '_administrations.php'))) ? [$f] : [];
101 101
 }
102 102
 
103 103
 /**
@@ -114,35 +114,35 @@  discard block
 block discarded – undo
114 114
  * @param array $attrs
115 115
  */
116 116
 function paquet_debutElement($phraseur, $name, $attrs) {
117
-	xml_debutElement($phraseur, $name, $attrs);
118
-	if ($phraseur->err) {
119
-		return;
120
-	}
121
-	if ($name == 'paquet' || $name == 'spip') {
122
-		if ($name == 'spip') {
123
-			$n = $attrs['compatibilite'];
124
-			$attrs = [];
125
-		} else {
126
-			$n = '0';
127
-			$phraseur->contenu['paquet'] = $attrs;
128
-			$attrs['menu'] = [];
129
-			$attrs['chemin'] = [];
130
-			$attrs['necessite'] = [];
131
-			$attrs['lib'] = [];
132
-			$attrs['onglet'] = [];
133
-			$attrs['procure'] = [];
134
-			$attrs['pipeline'] = [];
135
-			$attrs['utilise'] = [];
136
-			$attrs['style'] = [];
137
-			$attrs['script'] = [];
138
-			$attrs['genie'] = [];
139
-		}
140
-		$phraseur->contenu['compatible'] = $n;
141
-		$phraseur->versions[$phraseur->contenu['compatible']] = $attrs;
142
-	} else {
143
-		$phraseur->versions[$phraseur->contenu['compatible']][$name][0] = $attrs;
144
-	}
145
-	$phraseur->versions[$phraseur->contenu['compatible']][''] = '';
117
+    xml_debutElement($phraseur, $name, $attrs);
118
+    if ($phraseur->err) {
119
+        return;
120
+    }
121
+    if ($name == 'paquet' || $name == 'spip') {
122
+        if ($name == 'spip') {
123
+            $n = $attrs['compatibilite'];
124
+            $attrs = [];
125
+        } else {
126
+            $n = '0';
127
+            $phraseur->contenu['paquet'] = $attrs;
128
+            $attrs['menu'] = [];
129
+            $attrs['chemin'] = [];
130
+            $attrs['necessite'] = [];
131
+            $attrs['lib'] = [];
132
+            $attrs['onglet'] = [];
133
+            $attrs['procure'] = [];
134
+            $attrs['pipeline'] = [];
135
+            $attrs['utilise'] = [];
136
+            $attrs['style'] = [];
137
+            $attrs['script'] = [];
138
+            $attrs['genie'] = [];
139
+        }
140
+        $phraseur->contenu['compatible'] = $n;
141
+        $phraseur->versions[$phraseur->contenu['compatible']] = $attrs;
142
+    } else {
143
+        $phraseur->versions[$phraseur->contenu['compatible']][$name][0] = $attrs;
144
+    }
145
+    $phraseur->versions[$phraseur->contenu['compatible']][''] = '';
146 146
 }
147 147
 
148 148
 /**
@@ -154,11 +154,11 @@  discard block
 block discarded – undo
154 154
  * @param string $data
155 155
  */
156 156
 function paquet_textElement($phraseur, $data) {
157
-	xml_textElement($phraseur, $data);
158
-	if ($phraseur->err || !(trim($data))) {
159
-		return;
160
-	}
161
-	$phraseur->versions[$phraseur->contenu['compatible']][''] .= $data;
157
+    xml_textElement($phraseur, $data);
158
+    if ($phraseur->err || !(trim($data))) {
159
+        return;
160
+    }
161
+    $phraseur->versions[$phraseur->contenu['compatible']][''] .= $data;
162 162
 }
163 163
 
164 164
 /**
@@ -170,32 +170,32 @@  discard block
 block discarded – undo
170 170
  * @param string $name
171 171
  */
172 172
 function paquet_finElement($phraseur, $name) {
173
-	if ($phraseur->err) {
174
-		return;
175
-	}
176
-	$n = $phraseur->contenu['compatible'];
177
-
178
-	if (isset($phraseur->versions[$n][$name][0]) && is_array($phraseur->versions[$n][$name][0])) {
179
-		$attrs = $phraseur->versions[$n][$name][0];
180
-		unset($phraseur->versions[$n][$name][0]);
181
-	} else {
182
-		$attrs = [];
183
-	}
184
-
185
-	$texte = trim($phraseur->versions[$n]['']);
186
-	$phraseur->versions[$n][''] = '';
187
-
188
-	$f = 'info_paquet_' . $name;
189
-	if (function_exists($f)) {
190
-		$f($phraseur, $attrs, $texte);
191
-	} elseif (!$attrs) {
192
-		$phraseur->versions[$n][$name] = $texte;
193
-	} else {
194
-		// Traitement generique. Si $attrs['nom'] n'existe pas, ce n'est pas normal ici
195
-		$phraseur->versions[$n][$name][$attrs['nom']] = $attrs;
196
-		#	  echo("<br>pour $name $n " . $attrs['nom']); var_dump($phraseur->versions[$n]);
197
-	}
198
-	xml_finElement($phraseur, $name, $attrs);
173
+    if ($phraseur->err) {
174
+        return;
175
+    }
176
+    $n = $phraseur->contenu['compatible'];
177
+
178
+    if (isset($phraseur->versions[$n][$name][0]) && is_array($phraseur->versions[$n][$name][0])) {
179
+        $attrs = $phraseur->versions[$n][$name][0];
180
+        unset($phraseur->versions[$n][$name][0]);
181
+    } else {
182
+        $attrs = [];
183
+    }
184
+
185
+    $texte = trim($phraseur->versions[$n]['']);
186
+    $phraseur->versions[$n][''] = '';
187
+
188
+    $f = 'info_paquet_' . $name;
189
+    if (function_exists($f)) {
190
+        $f($phraseur, $attrs, $texte);
191
+    } elseif (!$attrs) {
192
+        $phraseur->versions[$n][$name] = $texte;
193
+    } else {
194
+        // Traitement generique. Si $attrs['nom'] n'existe pas, ce n'est pas normal ici
195
+        $phraseur->versions[$n][$name][$attrs['nom']] = $attrs;
196
+        #	  echo("<br>pour $name $n " . $attrs['nom']); var_dump($phraseur->versions[$n]);
197
+    }
198
+    xml_finElement($phraseur, $name, $attrs);
199 199
 }
200 200
 
201 201
 /**
@@ -207,9 +207,9 @@  discard block
 block discarded – undo
207 207
  * @param string $texte
208 208
  */
209 209
 function info_paquet_licence($phraseur, $attrs, $texte) {
210
-	$lien = $attrs['lien'] ?? '';
211
-	$n = $phraseur->contenu['compatible'];
212
-	$phraseur->versions[$n]['licence'][] = ['nom' => $texte, 'url' => $lien];
210
+    $lien = $attrs['lien'] ?? '';
211
+    $n = $phraseur->contenu['compatible'];
212
+    $phraseur->versions[$n]['licence'][] = ['nom' => $texte, 'url' => $lien];
213 213
 }
214 214
 
215 215
 /**
@@ -221,14 +221,14 @@  discard block
 block discarded – undo
221 221
  * @param string $texte
222 222
  */
223 223
 function info_paquet_chemin($phraseur, $attrs, $texte) {
224
-	$n = $phraseur->contenu['compatible'];
225
-	if (isset($attrs['path'])) {
226
-		if (isset($attrs['type'])) {
227
-			$phraseur->versions[$n]['chemin'][] = ['path' => $attrs['path'], 'type' => $attrs['type']];
228
-		} else {
229
-			$phraseur->versions[$n]['chemin'][] = ['path' => $attrs['path']];
230
-		}
231
-	}
224
+    $n = $phraseur->contenu['compatible'];
225
+    if (isset($attrs['path'])) {
226
+        if (isset($attrs['type'])) {
227
+            $phraseur->versions[$n]['chemin'][] = ['path' => $attrs['path'], 'type' => $attrs['type']];
228
+        } else {
229
+            $phraseur->versions[$n]['chemin'][] = ['path' => $attrs['path']];
230
+        }
231
+    }
232 232
 }
233 233
 
234 234
 
@@ -242,20 +242,20 @@  discard block
 block discarded – undo
242 242
  * @param string $texte
243 243
  */
244 244
 function info_paquet_auteur($phraseur, $attrs, $texte) {
245
-	#  echo 'auteur ', $texte;  var_dump($attrs);
246
-	if (isset($attrs['mail'])) {
247
-		if (strpos($attrs['mail'], '@')) {
248
-			$attrs['mail'] = str_replace('@', ' AT ', $attrs['mail']);
249
-		}
250
-		$mail = $attrs['mail'];
251
-	} else {
252
-		$mail = '';
253
-	}
254
-
255
-	$lien = $attrs['lien'] ?? '';
256
-
257
-	$n = $phraseur->contenu['compatible'];
258
-	$phraseur->versions[$n]['auteur'][] = ['nom' => $texte, 'url' => $lien, 'mail' => $mail];
245
+    #  echo 'auteur ', $texte;  var_dump($attrs);
246
+    if (isset($attrs['mail'])) {
247
+        if (strpos($attrs['mail'], '@')) {
248
+            $attrs['mail'] = str_replace('@', ' AT ', $attrs['mail']);
249
+        }
250
+        $mail = $attrs['mail'];
251
+    } else {
252
+        $mail = '';
253
+    }
254
+
255
+    $lien = $attrs['lien'] ?? '';
256
+
257
+    $n = $phraseur->contenu['compatible'];
258
+    $phraseur->versions[$n]['auteur'][] = ['nom' => $texte, 'url' => $lien, 'mail' => $mail];
259 259
 }
260 260
 
261 261
 /**
@@ -268,10 +268,10 @@  discard block
 block discarded – undo
268 268
  */
269 269
 function info_paquet_credit($phraseur, $attrs, $texte) {
270 270
 
271
-	$lien = $attrs['lien'] ?? '';
271
+    $lien = $attrs['lien'] ?? '';
272 272
 
273
-	$n = $phraseur->contenu['compatible'];
274
-	$phraseur->versions[$n]['credit'][] = ['nom' => $texte, 'url' => $lien];
273
+    $n = $phraseur->contenu['compatible'];
274
+    $phraseur->versions[$n]['credit'][] = ['nom' => $texte, 'url' => $lien];
275 275
 }
276 276
 
277 277
 /**
@@ -283,8 +283,8 @@  discard block
 block discarded – undo
283 283
  * @param string $texte
284 284
  */
285 285
 function info_paquet_copyright($phraseur, $attrs, $texte) {
286
-	$n = $phraseur->contenu['compatible'];
287
-	$phraseur->versions[$n]['copyright'][] = $texte;
286
+    $n = $phraseur->contenu['compatible'];
287
+    $phraseur->versions[$n]['copyright'][] = $texte;
288 288
 }
289 289
 
290 290
 /**
@@ -296,9 +296,9 @@  discard block
 block discarded – undo
296 296
  * @param string $texte
297 297
  */
298 298
 function info_paquet_paquet($phraseur, $attrs, $texte) {
299
-	$n = 0;
300
-	$phraseur->versions[$n]['dtd'] = 'paquet';
301
-	$phraseur->versions[$n]['balise'] = 'paquet';
299
+    $n = 0;
300
+    $phraseur->versions[$n]['dtd'] = 'paquet';
301
+    $phraseur->versions[$n]['balise'] = 'paquet';
302 302
 }
303 303
 
304 304
 /**
@@ -310,8 +310,8 @@  discard block
 block discarded – undo
310 310
  * @param string $texte
311 311
  **/
312 312
 function info_paquet_traduire($phraseur, $attrs, $texte) {
313
-	$n = $phraseur->contenu['compatible'];
314
-	$phraseur->versions[$n]['traduire'][] = $attrs;
313
+    $n = $phraseur->contenu['compatible'];
314
+    $phraseur->versions[$n]['traduire'][] = $attrs;
315 315
 }
316 316
 
317 317
 /**
@@ -323,8 +323,8 @@  discard block
 block discarded – undo
323 323
  * @param string $texte
324 324
  */
325 325
 function info_paquet_spip($phraseur, $attrs, $texte) {
326
-	$n = $phraseur->contenu['compatible'];
327
-	$phraseur->versions[$n]['balise'] = 'spip';
326
+    $n = $phraseur->contenu['compatible'];
327
+    $phraseur->versions[$n]['balise'] = 'spip';
328 328
 }
329 329
 
330 330
 
@@ -336,8 +336,8 @@  discard block
 block discarded – undo
336 336
  * @param string $texte
337 337
  */
338 338
 function info_paquet_pipeline($phraseur, $attrs, $texte) {
339
-	$n = $phraseur->contenu['compatible'];
340
-	$phraseur->versions[$n]['pipeline'][] = $attrs;
339
+    $n = $phraseur->contenu['compatible'];
340
+    $phraseur->versions[$n]['pipeline'][] = $attrs;
341 341
 }
342 342
 
343 343
 
@@ -350,23 +350,23 @@  discard block
 block discarded – undo
350 350
  * @param string $texte
351 351
  */
352 352
 function info_paquet_style($phraseur, $attrs, $texte) {
353
-	$lien = $chemin = $type = $media = '';
354
-
355
-	include_spip('inc/utils');
356
-	if (tester_url_absolue($attrs['source'])) {
357
-		$lien = $attrs['source'];
358
-	} else {
359
-		$chemin = $attrs['source'];
360
-	}
361
-	if (isset($attrs['type'])) {
362
-		$type = $attrs['type'];
363
-	}
364
-	if (isset($attrs['media'])) {
365
-		$media = $attrs['media'];
366
-	}
367
-
368
-	$n = $phraseur->contenu['compatible'];
369
-	$phraseur->versions[$n]['style'][] = ['url' => $lien, 'path' => $chemin, 'type' => $type, 'media' => $media];
353
+    $lien = $chemin = $type = $media = '';
354
+
355
+    include_spip('inc/utils');
356
+    if (tester_url_absolue($attrs['source'])) {
357
+        $lien = $attrs['source'];
358
+    } else {
359
+        $chemin = $attrs['source'];
360
+    }
361
+    if (isset($attrs['type'])) {
362
+        $type = $attrs['type'];
363
+    }
364
+    if (isset($attrs['media'])) {
365
+        $media = $attrs['media'];
366
+    }
367
+
368
+    $n = $phraseur->contenu['compatible'];
369
+    $phraseur->versions[$n]['style'][] = ['url' => $lien, 'path' => $chemin, 'type' => $type, 'media' => $media];
370 370
 }
371 371
 
372 372
 
@@ -379,20 +379,20 @@  discard block
 block discarded – undo
379 379
  * @param string $texte
380 380
  */
381 381
 function info_paquet_script($phraseur, $attrs, $texte) {
382
-	$lien = $chemin = $type = $media = '';
383
-
384
-	include_spip('inc/utils');
385
-	if (tester_url_absolue($attrs['source'])) {
386
-		$lien = $attrs['source'];
387
-	} else {
388
-		$chemin = $attrs['source'];
389
-	}
390
-	if (isset($attrs['type'])) {
391
-		$type = $attrs['type'];
392
-	}
393
-
394
-	$n = $phraseur->contenu['compatible'];
395
-	$phraseur->versions[$n]['script'][] = ['url' => $lien, 'path' => $chemin, 'type' => $type];
382
+    $lien = $chemin = $type = $media = '';
383
+
384
+    include_spip('inc/utils');
385
+    if (tester_url_absolue($attrs['source'])) {
386
+        $lien = $attrs['source'];
387
+    } else {
388
+        $chemin = $attrs['source'];
389
+    }
390
+    if (isset($attrs['type'])) {
391
+        $type = $attrs['type'];
392
+    }
393
+
394
+    $n = $phraseur->contenu['compatible'];
395
+    $phraseur->versions[$n]['script'][] = ['url' => $lien, 'path' => $chemin, 'type' => $type];
396 396
 }
397 397
 
398 398
 /**
@@ -403,6 +403,6 @@  discard block
 block discarded – undo
403 403
  * @param string $texte
404 404
  */
405 405
 function info_paquet_genie($phraseur, $attrs, $texte) {
406
-	$n = $phraseur->contenu['compatible'];
407
-	$phraseur->versions[$n]['genie'][] = $attrs;
406
+    $n = $phraseur->contenu['compatible'];
407
+    $phraseur->versions[$n]['genie'][] = $attrs;
408 408
 }
Please login to merge, or discard this patch.
ecrire/lang/public_es.php 1 patch
Indentation   +115 added lines, -115 removed lines patch added patch discarded remove patch
@@ -4,123 +4,123 @@
 block discarded – undo
4 4
 // ** ne pas modifier le fichier **
5 5
 
6 6
 if (!defined('_ECRIRE_INC_VERSION')) {
7
-	return;
7
+    return;
8 8
 }
9 9
 
10 10
 $GLOBALS[$GLOBALS['idx_lang']] = array(
11 11
 
12
-	// A
13
-	'accueil_site' => 'Portada del sitio',
14
-	'article' => 'Artículo',
15
-	'articles' => 'Artículos',
16
-	'articles_auteur' => 'Artículos de esta autora o autor',
17
-	'articles_populaires' => 'Los artículos más populares',
18
-	'articles_rubrique' => 'Artículos de esta sección',
19
-	'aucun_article' => 'No hay ningún artículo en esta dirección ',
20
-	'aucun_auteur' => 'No hay autor ni autora en esta dirección ',
21
-	'aucun_site' => 'No hay ningún sitio en esta dirección',
22
-	'aucune_breve' => 'No hay ninguna breve en esta dirección',
23
-	'aucune_rubrique' => 'No hay ninguna sección en esta dirección',
24
-	'auteur' => 'Autor o autora',
25
-	'autres' => 'Otros',
26
-	'autres_breves' => 'Otros breves',
27
-	'autres_groupes_mots_clefs' => 'Otros grupos de palabras clave',
28
-	'autres_sites' => 'Otros sitios',
29
-
30
-	// B
31
-	'bonjour' => 'Hola',
32
-
33
-	// C
34
-	'commenter_site' => 'Comentar este sitio',
35
-	'contact' => 'Contacto',
36
-	'copie_document_impossible' => 'Imposible copiar el documento',
37
-
38
-	// D
39
-	'date' => 'Fecha',
40
-	'dernier_ajout' => 'Última actualización',
41
-	'dernieres_breves' => 'Últimos breves',
42
-	'derniers_articles' => 'Últimos artículos',
43
-	'derniers_commentaires' => 'Últimos comentarios',
44
-	'derniers_messages_forum' => 'Últimos mensajes publicados en los foros',
45
-
46
-	// E
47
-	'edition_mode_texte' => 'Edición en modo texto de',
48
-	'en_reponse' => 'En respuesta a:',
49
-	'en_resume' => 'En resumen',
50
-	'envoyer_message' => 'Enviar un mensaje',
51
-	'espace_prive' => 'Espacio privado',
52
-
53
-	// F
54
-	'formats_acceptes' => 'Formatos aceptados: @formats@.',
55
-
56
-	// H
57
-	'hierarchie_site' => 'Jerarquía del sitio',
58
-
59
-	// J
60
-	'jours' => 'días',
61
-
62
-	// L
63
-	'lien_connecter' => 'Conectarse',
64
-
65
-	// M
66
-	'meme_auteur' => 'Del mismo autor',
67
-	'meme_rubrique' => 'En la misma sección',
68
-	'memes_auteurs' => 'De los mismos autores',
69
-	'message' => 'Mensaje',
70
-	'messages_forum' => 'Mensajes',
71
-	'messages_recents' => 'Los mensajes más recientes del foro',
72
-	'mots_clef' => 'Palabra clave',
73
-	'mots_clefs' => 'Palabras clave',
74
-	'mots_clefs_meme_groupe' => 'Palabras claves en el mismo grupo',
75
-
76
-	// N
77
-	'navigation' => 'Navegación',
78
-	'nom' => 'Nombre',
79
-	'nouveautes' => 'Las novedades',
80
-	'nouveautes_web' => 'Novedades en la web',
81
-	'nouveaux_articles' => 'Nuevos artículos',
82
-	'nouvelles_breves' => 'Nuevas breves',
83
-
84
-	// P
85
-	'page_precedente' => 'Página anterior',
86
-	'page_suivante' => 'Página siguiente',
87
-	'par_auteur' => 'por ',
88
-	'participer_site' => 'Puedes participar en la vida de este sitio y proponer artículos inscribiéndote aqui. De inmediato recibirás un correo electrónico con tus claves de acceso al espacio privado del sitio.',
89
-	'plan_site' => 'Mapa del sitio',
90
-	'popularite' => 'Popularidad',
91
-	'poster_message' => 'Publicar un mensaje',
92
-	'proposer_site' => 'Proponga un sitio para añadir en esta sección:',
93
-
94
-	// R
95
-	'repondre_article' => 'Comentar este artículo',
96
-	'repondre_breve' => 'Comentar esta breve',
97
-	'resultats_recherche' => 'Resultados de la búsqueda',
98
-	'retour_debut_forums' => 'Volver al inicio del foro',
99
-	'rss_abonnement' => 'Copie la siguiente URL en su agregador:',
100
-	'rss_abonnement_titre' => 'Suscribirse',
101
-	'rss_abonnement_titre_page' => 'Suscribirse a',
102
-	'rss_explication' => 'Un feed RSS recoge información actualizada de un sitio. Proporciona el contenido de las entradas, comentarios o un extracto de los mismos, así como un enlace a las versiones completas y alguna otra información. Este feed está pensado para ser leído por un agregador RSS.',
103
-	'rss_explication_titre' => '¿Qué es un feed RSS?',
104
-	'rubrique' => 'Sección',
105
-	'rubriques' => 'Secciones',
106
-
107
-	// S
108
-	'signatures_petition' => 'Firmas',
109
-	'site_realise_avec_spip' => 'Sitio desarrollado con SPIP',
110
-	'sites_web' => 'Sitios Web',
111
-	'sous_rubriques' => 'Subsección',
112
-	'spam' => 'Spam',
113
-	'suite' => 'continuar',
114
-	'sur_web' => 'Del web',
115
-	'syndiquer_rubrique' => 'Sindicar esta sección',
116
-	'syndiquer_site' => 'Sindicar el sitio completo',
117
-
118
-	// T
119
-	'texte_lettre_information' => 'Este es el boletín de información del sitio',
120
-	'texte_lettre_information_2' => 'Este boletín reseña las novedades publicadas desde ',
121
-
122
-	// V
123
-	'ver_imprimer' => 'Versión para imprimir',
124
-	'voir_en_ligne' => 'Ver en línea',
125
-	'voir_squelette' => 'ver el esqueleto de esta página'
12
+    // A
13
+    'accueil_site' => 'Portada del sitio',
14
+    'article' => 'Artículo',
15
+    'articles' => 'Artículos',
16
+    'articles_auteur' => 'Artículos de esta autora o autor',
17
+    'articles_populaires' => 'Los artículos más populares',
18
+    'articles_rubrique' => 'Artículos de esta sección',
19
+    'aucun_article' => 'No hay ningún artículo en esta dirección ',
20
+    'aucun_auteur' => 'No hay autor ni autora en esta dirección ',
21
+    'aucun_site' => 'No hay ningún sitio en esta dirección',
22
+    'aucune_breve' => 'No hay ninguna breve en esta dirección',
23
+    'aucune_rubrique' => 'No hay ninguna sección en esta dirección',
24
+    'auteur' => 'Autor o autora',
25
+    'autres' => 'Otros',
26
+    'autres_breves' => 'Otros breves',
27
+    'autres_groupes_mots_clefs' => 'Otros grupos de palabras clave',
28
+    'autres_sites' => 'Otros sitios',
29
+
30
+    // B
31
+    'bonjour' => 'Hola',
32
+
33
+    // C
34
+    'commenter_site' => 'Comentar este sitio',
35
+    'contact' => 'Contacto',
36
+    'copie_document_impossible' => 'Imposible copiar el documento',
37
+
38
+    // D
39
+    'date' => 'Fecha',
40
+    'dernier_ajout' => 'Última actualización',
41
+    'dernieres_breves' => 'Últimos breves',
42
+    'derniers_articles' => 'Últimos artículos',
43
+    'derniers_commentaires' => 'Últimos comentarios',
44
+    'derniers_messages_forum' => 'Últimos mensajes publicados en los foros',
45
+
46
+    // E
47
+    'edition_mode_texte' => 'Edición en modo texto de',
48
+    'en_reponse' => 'En respuesta a:',
49
+    'en_resume' => 'En resumen',
50
+    'envoyer_message' => 'Enviar un mensaje',
51
+    'espace_prive' => 'Espacio privado',
52
+
53
+    // F
54
+    'formats_acceptes' => 'Formatos aceptados: @formats@.',
55
+
56
+    // H
57
+    'hierarchie_site' => 'Jerarquía del sitio',
58
+
59
+    // J
60
+    'jours' => 'días',
61
+
62
+    // L
63
+    'lien_connecter' => 'Conectarse',
64
+
65
+    // M
66
+    'meme_auteur' => 'Del mismo autor',
67
+    'meme_rubrique' => 'En la misma sección',
68
+    'memes_auteurs' => 'De los mismos autores',
69
+    'message' => 'Mensaje',
70
+    'messages_forum' => 'Mensajes',
71
+    'messages_recents' => 'Los mensajes más recientes del foro',
72
+    'mots_clef' => 'Palabra clave',
73
+    'mots_clefs' => 'Palabras clave',
74
+    'mots_clefs_meme_groupe' => 'Palabras claves en el mismo grupo',
75
+
76
+    // N
77
+    'navigation' => 'Navegación',
78
+    'nom' => 'Nombre',
79
+    'nouveautes' => 'Las novedades',
80
+    'nouveautes_web' => 'Novedades en la web',
81
+    'nouveaux_articles' => 'Nuevos artículos',
82
+    'nouvelles_breves' => 'Nuevas breves',
83
+
84
+    // P
85
+    'page_precedente' => 'Página anterior',
86
+    'page_suivante' => 'Página siguiente',
87
+    'par_auteur' => 'por ',
88
+    'participer_site' => 'Puedes participar en la vida de este sitio y proponer artículos inscribiéndote aqui. De inmediato recibirás un correo electrónico con tus claves de acceso al espacio privado del sitio.',
89
+    'plan_site' => 'Mapa del sitio',
90
+    'popularite' => 'Popularidad',
91
+    'poster_message' => 'Publicar un mensaje',
92
+    'proposer_site' => 'Proponga un sitio para añadir en esta sección:',
93
+
94
+    // R
95
+    'repondre_article' => 'Comentar este artículo',
96
+    'repondre_breve' => 'Comentar esta breve',
97
+    'resultats_recherche' => 'Resultados de la búsqueda',
98
+    'retour_debut_forums' => 'Volver al inicio del foro',
99
+    'rss_abonnement' => 'Copie la siguiente URL en su agregador:',
100
+    'rss_abonnement_titre' => 'Suscribirse',
101
+    'rss_abonnement_titre_page' => 'Suscribirse a',
102
+    'rss_explication' => 'Un feed RSS recoge información actualizada de un sitio. Proporciona el contenido de las entradas, comentarios o un extracto de los mismos, así como un enlace a las versiones completas y alguna otra información. Este feed está pensado para ser leído por un agregador RSS.',
103
+    'rss_explication_titre' => '¿Qué es un feed RSS?',
104
+    'rubrique' => 'Sección',
105
+    'rubriques' => 'Secciones',
106
+
107
+    // S
108
+    'signatures_petition' => 'Firmas',
109
+    'site_realise_avec_spip' => 'Sitio desarrollado con SPIP',
110
+    'sites_web' => 'Sitios Web',
111
+    'sous_rubriques' => 'Subsección',
112
+    'spam' => 'Spam',
113
+    'suite' => 'continuar',
114
+    'sur_web' => 'Del web',
115
+    'syndiquer_rubrique' => 'Sindicar esta sección',
116
+    'syndiquer_site' => 'Sindicar el sitio completo',
117
+
118
+    // T
119
+    'texte_lettre_information' => 'Este es el boletín de información del sitio',
120
+    'texte_lettre_information_2' => 'Este boletín reseña las novedades publicadas desde ',
121
+
122
+    // V
123
+    'ver_imprimer' => 'Versión para imprimir',
124
+    'voir_en_ligne' => 'Ver en línea',
125
+    'voir_squelette' => 'ver el esqueleto de esta página'
126 126
 );
Please login to merge, or discard this patch.
ecrire/action/editer_liens.php 3 patches
Braces   +2 added lines, -4 removed lines patch added patch discarded remove patch
@@ -398,8 +398,7 @@  discard block
 block discarded – undo
398 398
 			if (lien_triables($table_lien)) {
399 399
 				if (isset($qualif['rang_lien'])) {
400 400
 					$rang = $qualif['rang_lien'];
401
-				}
402
-				else {
401
+				} else {
403 402
 					$where = lien_where($primary, $id, $objet, $id_objet);
404 403
 					// si il y a deja un lien pour ce couple (avec un autre role?) on reprend le meme rang si non nul
405 404
 					if (!$rang = intval(sql_getfetsel('rang_lien', $table_lien, $where))) {
@@ -545,8 +544,7 @@  discard block
 block discarded – undo
545 544
 		$desc = $trouver_table($table_lien);
546 545
 		if ($desc and isset($desc['field']['rang_lien'])) {
547 546
 			$triables[$table_lien] = true;
548
-		}
549
-		else {
547
+		} else {
550 548
 			$triables[$table_lien] = false;
551 549
 		}
552 550
 	}
Please login to merge, or discard this patch.
Indentation   +574 added lines, -574 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
 // charger la gestion les rôles sur les objets
@@ -47,22 +47,22 @@  discard block
 block discarded – undo
47 47
  *     - array(clé primaire, nom de la table de lien) si associable
48 48
  */
49 49
 function objet_associable($objet) {
50
-	$trouver_table = charger_fonction('trouver_table', 'base');
51
-	$table_sql = table_objet_sql($objet);
52
-
53
-	$l = '';
54
-	if (
55
-		$primary = id_table_objet($objet)
56
-		and $trouver_table($l = $table_sql . '_liens', '', true, ['log_missing' => false])
57
-		and !preg_match(',[^\w],', $primary)
58
-		and !preg_match(',[^\w],', $l)
59
-	) {
60
-		return [$primary, $l];
61
-	}
62
-
63
-	spip_log("Objet $objet non associable : ne dispose pas d'une cle primaire $primary OU d'une table liens $l");
64
-
65
-	return false;
50
+    $trouver_table = charger_fonction('trouver_table', 'base');
51
+    $table_sql = table_objet_sql($objet);
52
+
53
+    $l = '';
54
+    if (
55
+        $primary = id_table_objet($objet)
56
+        and $trouver_table($l = $table_sql . '_liens', '', true, ['log_missing' => false])
57
+        and !preg_match(',[^\w],', $primary)
58
+        and !preg_match(',[^\w],', $l)
59
+    ) {
60
+        return [$primary, $l];
61
+    }
62
+
63
+    spip_log("Objet $objet non associable : ne dispose pas d'une cle primaire $primary OU d'une table liens $l");
64
+
65
+    return false;
66 66
 }
67 67
 
68 68
 /**
@@ -88,13 +88,13 @@  discard block
 block discarded – undo
88 88
  * @return bool|int
89 89
  */
90 90
 function objet_associer($objets_source, $objets_lies, $qualif = null) {
91
-	$modifs = objet_traiter_liaisons('lien_insert', $objets_source, $objets_lies, $qualif);
91
+    $modifs = objet_traiter_liaisons('lien_insert', $objets_source, $objets_lies, $qualif);
92 92
 
93
-	if ($qualif) {
94
-		objet_qualifier_liens($objets_source, $objets_lies, $qualif);
95
-	}
93
+    if ($qualif) {
94
+        objet_qualifier_liens($objets_source, $objets_lies, $qualif);
95
+    }
96 96
 
97
-	return $modifs; // pas d'erreur
97
+    return $modifs; // pas d'erreur
98 98
 }
99 99
 
100 100
 
@@ -128,7 +128,7 @@  discard block
 block discarded – undo
128 128
  * @return bool|int
129 129
  */
130 130
 function objet_dissocier($objets_source, $objets_lies, $cond = null) {
131
-	return objet_traiter_liaisons('lien_delete', $objets_source, $objets_lies, $cond);
131
+    return objet_traiter_liaisons('lien_delete', $objets_source, $objets_lies, $cond);
132 132
 }
133 133
 
134 134
 
@@ -153,7 +153,7 @@  discard block
 block discarded – undo
153 153
  * @return bool|int
154 154
  */
155 155
 function objet_qualifier_liens($objets_source, $objets_lies, $qualif) {
156
-	return objet_traiter_liaisons('lien_set', $objets_source, $objets_lies, $qualif);
156
+    return objet_traiter_liaisons('lien_set', $objets_source, $objets_lies, $qualif);
157 157
 }
158 158
 
159 159
 
@@ -188,7 +188,7 @@  discard block
 block discarded – undo
188 188
  *     Liste des trouvailles
189 189
  */
190 190
 function objet_trouver_liens($objets_source, $objets_lies, $cond = null) {
191
-	return objet_traiter_liaisons('lien_find', $objets_source, $objets_lies, $cond);
191
+    return objet_traiter_liaisons('lien_find', $objets_source, $objets_lies, $cond);
192 192
 }
193 193
 
194 194
 
@@ -212,8 +212,8 @@  discard block
 block discarded – undo
212 212
  * @return int
213 213
  */
214 214
 function objet_optimiser_liens($objets_source, $objets_lies) {
215
-	spip_log('objet_optimiser_liens : ' . json_encode($objets_source, JSON_THROW_ON_ERROR) . ', ' . json_encode($objets_lies, JSON_THROW_ON_ERROR), 'genie' . _LOG_DEBUG);
216
-	return objet_traiter_liaisons('lien_optimise', $objets_source, $objets_lies);
215
+    spip_log('objet_optimiser_liens : ' . json_encode($objets_source, JSON_THROW_ON_ERROR) . ', ' . json_encode($objets_lies, JSON_THROW_ON_ERROR), 'genie' . _LOG_DEBUG);
216
+    return objet_traiter_liaisons('lien_optimise', $objets_source, $objets_lies);
217 217
 }
218 218
 
219 219
 
@@ -233,37 +233,37 @@  discard block
 block discarded – undo
233 233
  *     Nombre de liens copiés
234 234
  */
235 235
 function objet_dupliquer_liens($objet, $id_source, $id_cible, $types = null, $exclure_types = null) {
236
-	include_spip('base/objets');
237
-	$tables = lister_tables_objets_sql();
238
-	$n = 0;
239
-	foreach ($tables as $table_sql => $infos) {
240
-		if (
241
-			(is_null($types) or in_array($infos['type'], $types))
242
-			and (is_null($exclure_types) or !in_array($infos['type'], $exclure_types))
243
-		) {
244
-			if (objet_associable($infos['type'])) {
245
-				$liens = (($infos['type'] == $objet) ?
246
-					objet_trouver_liens([$objet => $id_source], '*')
247
-					:
248
-					objet_trouver_liens([$infos['type'] => '*'], [$objet => $id_source]));
249
-				foreach ($liens as $lien) {
250
-					$n++;
251
-					if ($infos['type'] == $objet) {
252
-						if (
253
-							(is_null($types) or in_array($lien['objet'], $types))
254
-							and (is_null($exclure_types) or !in_array($lien['objet'], $exclure_types))
255
-						) {
256
-							objet_associer([$objet => $id_cible], [$lien['objet'] => $lien[$lien['objet']]], $lien);
257
-						}
258
-					} else {
259
-						objet_associer([$infos['type'] => $lien[$infos['type']]], [$objet => $id_cible], $lien);
260
-					}
261
-				}
262
-			}
263
-		}
264
-	}
265
-
266
-	return $n;
236
+    include_spip('base/objets');
237
+    $tables = lister_tables_objets_sql();
238
+    $n = 0;
239
+    foreach ($tables as $table_sql => $infos) {
240
+        if (
241
+            (is_null($types) or in_array($infos['type'], $types))
242
+            and (is_null($exclure_types) or !in_array($infos['type'], $exclure_types))
243
+        ) {
244
+            if (objet_associable($infos['type'])) {
245
+                $liens = (($infos['type'] == $objet) ?
246
+                    objet_trouver_liens([$objet => $id_source], '*')
247
+                    :
248
+                    objet_trouver_liens([$infos['type'] => '*'], [$objet => $id_source]));
249
+                foreach ($liens as $lien) {
250
+                    $n++;
251
+                    if ($infos['type'] == $objet) {
252
+                        if (
253
+                            (is_null($types) or in_array($lien['objet'], $types))
254
+                            and (is_null($exclure_types) or !in_array($lien['objet'], $exclure_types))
255
+                        ) {
256
+                            objet_associer([$objet => $id_cible], [$lien['objet'] => $lien[$lien['objet']]], $lien);
257
+                        }
258
+                    } else {
259
+                        objet_associer([$infos['type'] => $lien[$infos['type']]], [$objet => $id_cible], $lien);
260
+                    }
261
+                }
262
+            }
263
+        }
264
+    }
265
+
266
+    return $n;
267 267
 }
268 268
 
269 269
 /**
@@ -305,38 +305,38 @@  discard block
 block discarded – undo
305 305
  * @return bool|int|array
306 306
  */
307 307
 function objet_traiter_liaisons($operation, $objets_source, $objets_lies, $set = null) {
308
-	// accepter une syntaxe minimale pour supprimer tous les liens
309
-	if ($objets_lies == '*') {
310
-		$objets_lies = ['*' => '*'];
311
-	}
312
-	$modifs = 0; // compter le nombre de modifications
313
-	$echec = null;
314
-	foreach ($objets_source as $objet => $ids) {
315
-		if ($a = objet_associable($objet)) {
316
-			[$primary, $l] = $a;
317
-			if (!is_array($ids)) {
318
-				$ids = [$ids];
319
-			} elseif (reset($ids) == 'NOT') {
320
-				// si on demande un array('NOT',...) => recuperer la liste d'ids correspondants
321
-				$where = lien_where($primary, $ids, '*', '*');
322
-				$ids = sql_allfetsel($primary, $l, $where);
323
-				$ids = array_map('reset', $ids);
324
-			}
325
-			foreach ($ids as $id) {
326
-				$res = $operation($objet, $primary, $l, $id, $objets_lies, $set);
327
-				if ($res === false) {
328
-					spip_log("objet_traiter_liaisons [Echec] : $operation sur $objet/$primary/$l/$id", _LOG_ERREUR);
329
-					$echec = true;
330
-				} else {
331
-					$modifs = ($modifs ? (is_array($res) ? array_merge($modifs, $res) : $modifs + $res) : $res);
332
-				}
333
-			}
334
-		} else {
335
-			$echec = true;
336
-		}
337
-	}
338
-
339
-	return ($echec ? false : $modifs); // pas d'erreur
308
+    // accepter une syntaxe minimale pour supprimer tous les liens
309
+    if ($objets_lies == '*') {
310
+        $objets_lies = ['*' => '*'];
311
+    }
312
+    $modifs = 0; // compter le nombre de modifications
313
+    $echec = null;
314
+    foreach ($objets_source as $objet => $ids) {
315
+        if ($a = objet_associable($objet)) {
316
+            [$primary, $l] = $a;
317
+            if (!is_array($ids)) {
318
+                $ids = [$ids];
319
+            } elseif (reset($ids) == 'NOT') {
320
+                // si on demande un array('NOT',...) => recuperer la liste d'ids correspondants
321
+                $where = lien_where($primary, $ids, '*', '*');
322
+                $ids = sql_allfetsel($primary, $l, $where);
323
+                $ids = array_map('reset', $ids);
324
+            }
325
+            foreach ($ids as $id) {
326
+                $res = $operation($objet, $primary, $l, $id, $objets_lies, $set);
327
+                if ($res === false) {
328
+                    spip_log("objet_traiter_liaisons [Echec] : $operation sur $objet/$primary/$l/$id", _LOG_ERREUR);
329
+                    $echec = true;
330
+                } else {
331
+                    $modifs = ($modifs ? (is_array($res) ? array_merge($modifs, $res) : $modifs + $res) : $res);
332
+                }
333
+            }
334
+        } else {
335
+            $echec = true;
336
+        }
337
+    }
338
+
339
+    return ($echec ? false : $modifs); // pas d'erreur
340 340
 }
341 341
 
342 342
 
@@ -365,117 +365,117 @@  discard block
 block discarded – undo
365 365
  *     Nombre d'insertions faites, false si échec.
366 366
  */
367 367
 function lien_insert($objet_source, $primary, $table_lien, $id, $objets, $qualif) {
368
-	$ins = 0;
369
-	$echec = null;
370
-	if (is_null($qualif)) {
371
-		$qualif = [];
372
-	}
373
-
374
-	foreach ($objets as $objet => $id_objets) {
375
-		if (!is_array($id_objets)) {
376
-			$id_objets = [$id_objets];
377
-		}
378
-
379
-		// role, colonne, where par défaut
380
-		[$role, $colonne_role, $cond] =
381
-			roles_trouver_dans_qualif($objet_source, $objet, $qualif);
382
-
383
-		foreach ($id_objets as $id_objet) {
384
-			$objet = (($objet == '*') ? $objet : objet_type($objet)); # securite
385
-
386
-			$insertions = [
387
-				'id_objet' => $id_objet,
388
-				'objet' => $objet,
389
-				$primary => $id
390
-			];
391
-			// rôle en plus s'il est défini
392
-			if ($role) {
393
-				$insertions += [
394
-					$colonne_role => $role
395
-				];
396
-			}
397
-
398
-			if (lien_triables($table_lien)) {
399
-				if (isset($qualif['rang_lien'])) {
400
-					$rang = $qualif['rang_lien'];
401
-				}
402
-				else {
403
-					$where = lien_where($primary, $id, $objet, $id_objet);
404
-					// si il y a deja un lien pour ce couple (avec un autre role?) on reprend le meme rang si non nul
405
-					if (!$rang = intval(sql_getfetsel('rang_lien', $table_lien, $where))) {
406
-						$where = lien_rang_where($table_lien, $primary, $id, $objet, $id_objet);
407
-						$rang = intval(sql_getfetsel('max(rang_lien)', $table_lien, $where));
408
-						// si aucun lien n'a de rang, on en introduit pas, on garde zero
409
-						if ($rang > 0) {
410
-							$rang = intval($rang) + 1;
411
-						}
412
-					}
413
-				}
414
-				$insertions['rang_lien'] = $rang;
415
-			}
416
-
417
-			$args = [
418
-				'table_lien' => $table_lien,
419
-				'objet_source' => $objet_source,
420
-				'id_objet_source' => $id,
421
-				'objet' => $objet,
422
-				'id_objet' => $id_objet,
423
-				'role' => $role,
424
-				'colonne_role' => $colonne_role,
425
-				'action' => 'insert',
426
-			];
427
-
428
-			// Envoyer aux plugins
429
-			$insertions = pipeline(
430
-				'pre_edition_lien',
431
-				[
432
-					'args' => $args,
433
-					'data' => $insertions
434
-				]
435
-			);
436
-			$args['id_objet'] = $insertions['id_objet'];
437
-
438
-			$where = lien_where($primary, $id, $objet, $id_objet, $cond);
439
-
440
-			if (
441
-				($id_objet = intval($insertions['id_objet']) or in_array($objet, ['site', 'rubrique']))
442
-				and !sql_getfetsel($primary, $table_lien, $where)
443
-			) {
444
-				if (lien_triables($table_lien) and isset($insertions['rang_lien']) and intval($insertions['rang_lien'])) {
445
-					$where_meme_lien = lien_where($primary, $id, $objet, $id_objet);
446
-					$where_meme_lien = implode(' AND ', $where_meme_lien);
447
-					// on decale les liens de rang_lien>=la valeur inseree pour faire la place
448
-					// sauf sur le meme lien avec un role eventuellement different
449
-					$w = lien_rang_where($table_lien, $primary, $id, $objet, $id_objet, ['rang_lien>=' . intval($insertions['rang_lien']), "NOT($where_meme_lien)"]);
450
-					sql_update($table_lien, ['rang_lien' => 'rang_lien+1'], $w);
451
-				}
452
-
453
-				$e = sql_insertq($table_lien, $insertions);
454
-				if ($e !== false) {
455
-					$ins++;
456
-					lien_propage_date_modif($objet, $id_objet);
457
-					lien_propage_date_modif($objet_source, $id);
458
-					// Envoyer aux plugins
459
-					pipeline(
460
-						'post_edition_lien',
461
-						[
462
-							'args' => $args,
463
-							'data' => $insertions
464
-						]
465
-					);
466
-				} else {
467
-					$echec = true;
468
-				}
469
-			}
470
-		}
471
-	}
472
-	// si on a fait des insertions, on reordonne les liens concernes
473
-	// pas la peine si $qualif['rang_lien'] etait fournie, on va passer dans lien_set a suivre et donc finir le recomptage
474
-	if ($ins > 0 and empty($qualif['rang_lien'])) {
475
-		lien_ordonner($objet_source, $primary, $table_lien, $id, $objets);
476
-	}
477
-
478
-	return ($echec ? false : $ins);
368
+    $ins = 0;
369
+    $echec = null;
370
+    if (is_null($qualif)) {
371
+        $qualif = [];
372
+    }
373
+
374
+    foreach ($objets as $objet => $id_objets) {
375
+        if (!is_array($id_objets)) {
376
+            $id_objets = [$id_objets];
377
+        }
378
+
379
+        // role, colonne, where par défaut
380
+        [$role, $colonne_role, $cond] =
381
+            roles_trouver_dans_qualif($objet_source, $objet, $qualif);
382
+
383
+        foreach ($id_objets as $id_objet) {
384
+            $objet = (($objet == '*') ? $objet : objet_type($objet)); # securite
385
+
386
+            $insertions = [
387
+                'id_objet' => $id_objet,
388
+                'objet' => $objet,
389
+                $primary => $id
390
+            ];
391
+            // rôle en plus s'il est défini
392
+            if ($role) {
393
+                $insertions += [
394
+                    $colonne_role => $role
395
+                ];
396
+            }
397
+
398
+            if (lien_triables($table_lien)) {
399
+                if (isset($qualif['rang_lien'])) {
400
+                    $rang = $qualif['rang_lien'];
401
+                }
402
+                else {
403
+                    $where = lien_where($primary, $id, $objet, $id_objet);
404
+                    // si il y a deja un lien pour ce couple (avec un autre role?) on reprend le meme rang si non nul
405
+                    if (!$rang = intval(sql_getfetsel('rang_lien', $table_lien, $where))) {
406
+                        $where = lien_rang_where($table_lien, $primary, $id, $objet, $id_objet);
407
+                        $rang = intval(sql_getfetsel('max(rang_lien)', $table_lien, $where));
408
+                        // si aucun lien n'a de rang, on en introduit pas, on garde zero
409
+                        if ($rang > 0) {
410
+                            $rang = intval($rang) + 1;
411
+                        }
412
+                    }
413
+                }
414
+                $insertions['rang_lien'] = $rang;
415
+            }
416
+
417
+            $args = [
418
+                'table_lien' => $table_lien,
419
+                'objet_source' => $objet_source,
420
+                'id_objet_source' => $id,
421
+                'objet' => $objet,
422
+                'id_objet' => $id_objet,
423
+                'role' => $role,
424
+                'colonne_role' => $colonne_role,
425
+                'action' => 'insert',
426
+            ];
427
+
428
+            // Envoyer aux plugins
429
+            $insertions = pipeline(
430
+                'pre_edition_lien',
431
+                [
432
+                    'args' => $args,
433
+                    'data' => $insertions
434
+                ]
435
+            );
436
+            $args['id_objet'] = $insertions['id_objet'];
437
+
438
+            $where = lien_where($primary, $id, $objet, $id_objet, $cond);
439
+
440
+            if (
441
+                ($id_objet = intval($insertions['id_objet']) or in_array($objet, ['site', 'rubrique']))
442
+                and !sql_getfetsel($primary, $table_lien, $where)
443
+            ) {
444
+                if (lien_triables($table_lien) and isset($insertions['rang_lien']) and intval($insertions['rang_lien'])) {
445
+                    $where_meme_lien = lien_where($primary, $id, $objet, $id_objet);
446
+                    $where_meme_lien = implode(' AND ', $where_meme_lien);
447
+                    // on decale les liens de rang_lien>=la valeur inseree pour faire la place
448
+                    // sauf sur le meme lien avec un role eventuellement different
449
+                    $w = lien_rang_where($table_lien, $primary, $id, $objet, $id_objet, ['rang_lien>=' . intval($insertions['rang_lien']), "NOT($where_meme_lien)"]);
450
+                    sql_update($table_lien, ['rang_lien' => 'rang_lien+1'], $w);
451
+                }
452
+
453
+                $e = sql_insertq($table_lien, $insertions);
454
+                if ($e !== false) {
455
+                    $ins++;
456
+                    lien_propage_date_modif($objet, $id_objet);
457
+                    lien_propage_date_modif($objet_source, $id);
458
+                    // Envoyer aux plugins
459
+                    pipeline(
460
+                        'post_edition_lien',
461
+                        [
462
+                            'args' => $args,
463
+                            'data' => $insertions
464
+                        ]
465
+                    );
466
+                } else {
467
+                    $echec = true;
468
+                }
469
+            }
470
+        }
471
+    }
472
+    // si on a fait des insertions, on reordonne les liens concernes
473
+    // pas la peine si $qualif['rang_lien'] etait fournie, on va passer dans lien_set a suivre et donc finir le recomptage
474
+    if ($ins > 0 and empty($qualif['rang_lien'])) {
475
+        lien_ordonner($objet_source, $primary, $table_lien, $id, $objets);
476
+    }
477
+
478
+    return ($echec ? false : $ins);
479 479
 }
480 480
 
481 481
 
@@ -488,47 +488,47 @@  discard block
 block discarded – undo
488 488
  * @param array|string $objets
489 489
  */
490 490
 function lien_ordonner($objet_source, $primary, $table_lien, $id, $objets) {
491
-	if (!lien_triables($table_lien)) {
492
-		return;
493
-	}
494
-
495
-	$deja_reordonne = [];
496
-
497
-	foreach ($objets as $objet => $id_objets) {
498
-		if (!is_array($id_objets)) {
499
-			$id_objets = [$id_objets];
500
-		}
501
-
502
-		foreach ($id_objets as $id_objet) {
503
-			if (empty($deja_reordonne[$id][$objet][$id_objet])) {
504
-				$objet = (($objet == '*') ? $objet : objet_type($objet)); # securite
505
-
506
-				$where = lien_rang_where($table_lien, $primary, $id, $objet, $id_objet);
507
-				$liens = sql_allfetsel("$primary, id_objet, objet, rang_lien", $table_lien, $where, '', 'rang_lien');
508
-
509
-				$rangs = array_column($liens, 'rang_lien');
510
-				if (count($rangs) and (max($rangs) > 0 or min($rangs) < 0)) {
511
-					$rang = 1;
512
-					foreach ($liens as $lien) {
513
-						if (empty($deja_reordonne[$lien[$primary]][$lien['objet']][$lien['id_objet']])) {
514
-							$where = lien_where($primary, $lien[$primary], $lien['objet'], $lien['id_objet'], ['rang_lien!=' . intval($rang)]);
515
-							sql_updateq($table_lien, ['rang_lien' => $rang], $where);
516
-
517
-							if (empty($deja_reordonne[$lien[$primary]])) {
518
-								$deja_reordonne[$lien[$primary]] = [];
519
-							}
520
-							if (empty($deja_reordonne[$lien[$primary]][$lien['objet']])) {
521
-								$deja_reordonne[$lien[$primary]][$lien['objet']] = [];
522
-							}
523
-							$deja_reordonne[$lien[$primary]][$lien['objet']][$lien['id_objet']] = $rang;
524
-
525
-							$rang++;
526
-						}
527
-					}
528
-				}
529
-			}
530
-		}
531
-	}
491
+    if (!lien_triables($table_lien)) {
492
+        return;
493
+    }
494
+
495
+    $deja_reordonne = [];
496
+
497
+    foreach ($objets as $objet => $id_objets) {
498
+        if (!is_array($id_objets)) {
499
+            $id_objets = [$id_objets];
500
+        }
501
+
502
+        foreach ($id_objets as $id_objet) {
503
+            if (empty($deja_reordonne[$id][$objet][$id_objet])) {
504
+                $objet = (($objet == '*') ? $objet : objet_type($objet)); # securite
505
+
506
+                $where = lien_rang_where($table_lien, $primary, $id, $objet, $id_objet);
507
+                $liens = sql_allfetsel("$primary, id_objet, objet, rang_lien", $table_lien, $where, '', 'rang_lien');
508
+
509
+                $rangs = array_column($liens, 'rang_lien');
510
+                if (count($rangs) and (max($rangs) > 0 or min($rangs) < 0)) {
511
+                    $rang = 1;
512
+                    foreach ($liens as $lien) {
513
+                        if (empty($deja_reordonne[$lien[$primary]][$lien['objet']][$lien['id_objet']])) {
514
+                            $where = lien_where($primary, $lien[$primary], $lien['objet'], $lien['id_objet'], ['rang_lien!=' . intval($rang)]);
515
+                            sql_updateq($table_lien, ['rang_lien' => $rang], $where);
516
+
517
+                            if (empty($deja_reordonne[$lien[$primary]])) {
518
+                                $deja_reordonne[$lien[$primary]] = [];
519
+                            }
520
+                            if (empty($deja_reordonne[$lien[$primary]][$lien['objet']])) {
521
+                                $deja_reordonne[$lien[$primary]][$lien['objet']] = [];
522
+                            }
523
+                            $deja_reordonne[$lien[$primary]][$lien['objet']][$lien['id_objet']] = $rang;
524
+
525
+                            $rang++;
526
+                        }
527
+                    }
528
+                }
529
+            }
530
+        }
531
+    }
532 532
 }
533 533
 
534 534
 
@@ -539,18 +539,18 @@  discard block
 block discarded – undo
539 539
  * @return mixed
540 540
  */
541 541
 function lien_triables($table_lien) {
542
-	static $triables = [];
543
-	if (!isset($triables[$table_lien])) {
544
-		$trouver_table = charger_fonction('trouver_table', 'base');
545
-		$desc = $trouver_table($table_lien);
546
-		if ($desc and isset($desc['field']['rang_lien'])) {
547
-			$triables[$table_lien] = true;
548
-		}
549
-		else {
550
-			$triables[$table_lien] = false;
551
-		}
552
-	}
553
-	return $triables[$table_lien];
542
+    static $triables = [];
543
+    if (!isset($triables[$table_lien])) {
544
+        $trouver_table = charger_fonction('trouver_table', 'base');
545
+        $desc = $trouver_table($table_lien);
546
+        if ($desc and isset($desc['field']['rang_lien'])) {
547
+            $triables[$table_lien] = true;
548
+        }
549
+        else {
550
+            $triables[$table_lien] = false;
551
+        }
552
+    }
553
+    return $triables[$table_lien];
554 554
 }
555 555
 
556 556
 
@@ -566,52 +566,52 @@  discard block
 block discarded – undo
566 566
  * @return array                        Liste des conditions
567 567
  */
568 568
 function lien_where($primary, $id_source, $objet, $id_objet, $cond = []) {
569
-	if (
570
-		(!is_array($id_source) and !strlen($id_source))
571
-		or !strlen($objet)
572
-		or (!is_array($id_objet) and !strlen($id_objet))
573
-	) {
574
-		return ['0=1'];
575
-	} // securite
576
-
577
-	$not = '';
578
-	if (is_array($id_source) and reset($id_source) == 'NOT') {
579
-		$not = array_shift($id_source);
580
-		$id_source = reset($id_source);
581
-	}
582
-
583
-	$where = $cond;
584
-
585
-	if ($id_source !== '*') {
586
-		$where[] = (is_array($id_source) ? sql_in(
587
-			addslashes($primary),
588
-			array_map('intval', $id_source),
589
-			$not
590
-		) : addslashes($primary) . ($not ? '<>' : '=') . intval($id_source));
591
-	} elseif ($not) {
592
-		$where[] = '0=1';
593
-	} // idiot mais quand meme
594
-
595
-	$not = '';
596
-	if (is_array($id_objet) and reset($id_objet) == 'NOT') {
597
-		$not = array_shift($id_objet);
598
-		$id_objet = reset($id_objet);
599
-	}
600
-
601
-	if ($objet !== '*') {
602
-		$where[] = 'objet=' . sql_quote($objet);
603
-	}
604
-	if ($id_objet !== '*') {
605
-		$where[] = (is_array($id_objet) ? sql_in(
606
-			'id_objet',
607
-			array_map('intval', $id_objet),
608
-			$not
609
-		) : 'id_objet' . ($not ? '<>' : '=') . intval($id_objet));
610
-	} elseif ($not) {
611
-		$where[] = '0=1';
612
-	} // idiot mais quand meme
613
-
614
-	return $where;
569
+    if (
570
+        (!is_array($id_source) and !strlen($id_source))
571
+        or !strlen($objet)
572
+        or (!is_array($id_objet) and !strlen($id_objet))
573
+    ) {
574
+        return ['0=1'];
575
+    } // securite
576
+
577
+    $not = '';
578
+    if (is_array($id_source) and reset($id_source) == 'NOT') {
579
+        $not = array_shift($id_source);
580
+        $id_source = reset($id_source);
581
+    }
582
+
583
+    $where = $cond;
584
+
585
+    if ($id_source !== '*') {
586
+        $where[] = (is_array($id_source) ? sql_in(
587
+            addslashes($primary),
588
+            array_map('intval', $id_source),
589
+            $not
590
+        ) : addslashes($primary) . ($not ? '<>' : '=') . intval($id_source));
591
+    } elseif ($not) {
592
+        $where[] = '0=1';
593
+    } // idiot mais quand meme
594
+
595
+    $not = '';
596
+    if (is_array($id_objet) and reset($id_objet) == 'NOT') {
597
+        $not = array_shift($id_objet);
598
+        $id_objet = reset($id_objet);
599
+    }
600
+
601
+    if ($objet !== '*') {
602
+        $where[] = 'objet=' . sql_quote($objet);
603
+    }
604
+    if ($id_objet !== '*') {
605
+        $where[] = (is_array($id_objet) ? sql_in(
606
+            'id_objet',
607
+            array_map('intval', $id_objet),
608
+            $not
609
+        ) : 'id_objet' . ($not ? '<>' : '=') . intval($id_objet));
610
+    } elseif ($not) {
611
+        $where[] = '0=1';
612
+    } // idiot mais quand meme
613
+
614
+    return $where;
615 615
 }
616 616
 
617 617
 /**
@@ -626,13 +626,13 @@  discard block
 block discarded – undo
626 626
  */
627 627
 function lien_rang_where($table_lien, $primary, $id_source, $objet, $id_objet, $cond = []) {
628 628
 
629
-	// si on veut compter les rangs autrement que le core ne le fait par defaut, fournir le where adhoc
630
-	if (function_exists($f = 'lien_rang_where_' . $table_lien)) {
631
-		return $f($primary, $id_source, $objet, $id_objet, $cond);
632
-	}
629
+    // si on veut compter les rangs autrement que le core ne le fait par defaut, fournir le where adhoc
630
+    if (function_exists($f = 'lien_rang_where_' . $table_lien)) {
631
+        return $f($primary, $id_source, $objet, $id_objet, $cond);
632
+    }
633 633
 
634
-	// par defaut c'est un rang compté pour tous les id_source d'un couple objet-id_objet
635
-	return lien_where($primary, '*', $objet, $id_objet, $cond);
634
+    // par defaut c'est un rang compté pour tous les id_source d'un couple objet-id_objet
635
+    return lien_where($primary, '*', $objet, $id_objet, $cond);
636 636
 }
637 637
 
638 638
 /**
@@ -663,90 +663,90 @@  discard block
 block discarded – undo
663 663
  */
664 664
 function lien_delete($objet_source, $primary, $table_lien, $id, $objets, $cond = null) {
665 665
 
666
-	$retire = [];
667
-	$dels = 0;
668
-	$echec = false;
669
-	if (is_null($cond)) {
670
-		$cond = [];
671
-	}
672
-
673
-	foreach ($objets as $objet => $id_objets) {
674
-		$objet = ($objet == '*') ? $objet : objet_type($objet); # securite
675
-		if (!is_array($id_objets) or reset($id_objets) == 'NOT') {
676
-			$id_objets = [$id_objets];
677
-		}
678
-		foreach ($id_objets as $id_objet) {
679
-			[$cond, $colonne_role, $role] = roles_creer_condition_role($objet_source, $objet, $cond);
680
-			// id_objet peut valoir '*'
681
-			$where = lien_where($primary, $id, $objet, $id_objet, $cond);
682
-
683
-			// lire les liens existants pour propager la date de modif
684
-			$select = "$primary,id_objet,objet";
685
-			if ($colonne_role) {
686
-				$select .= ",$colonne_role";
687
-			}
688
-			$liens = sql_allfetsel($select, $table_lien, $where);
689
-
690
-			// iterer sur les liens pour permettre aux plugins de gerer
691
-			foreach ($liens as $l) {
692
-				$args = [
693
-					'table_lien' => $table_lien,
694
-					'objet_source' => $objet_source,
695
-					'id_objet_source' => $l[$primary],
696
-					'objet' => $l['objet'],
697
-					'id_objet' => $l['id_objet'],
698
-					'colonne_role' => $colonne_role,
699
-					'role' => ($colonne_role ? $l[$colonne_role] : ''),
700
-					'action' => 'delete',
701
-				];
702
-
703
-				// Envoyer aux plugins
704
-				$l = pipeline(
705
-					'pre_edition_lien',
706
-					[
707
-						'args' => $args,
708
-						'data' => $l
709
-					]
710
-				);
711
-				$args['id_objet'] = $id_o = $l['id_objet'];
712
-
713
-				if ($id_o = intval($l['id_objet']) or in_array($l['objet'], ['site', 'rubrique'])) {
714
-					$where = lien_where($primary, $l[$primary], $l['objet'], $id_o, $cond);
715
-					$e = sql_delete($table_lien, $where);
716
-					if ($e !== false) {
717
-						$dels += $e;
718
-						lien_propage_date_modif($l['objet'], $id_o);
719
-						lien_propage_date_modif($objet_source, $l[$primary]);
720
-					} else {
721
-						$echec = true;
722
-					}
723
-					$retire[] = [
724
-						'source' => [$objet_source => $l[$primary]],
725
-						'lien' => [$l['objet'] => $id_o],
726
-						'type' => $l['objet'],
727
-						'role' => ($colonne_role ? $l[$colonne_role] : ''),
728
-						'id' => $id_o
729
-					];
730
-					// Envoyer aux plugins
731
-					pipeline(
732
-						'post_edition_lien',
733
-						[
734
-							'args' => $args,
735
-							'data' => $l
736
-						]
737
-					);
738
-				}
739
-			}
740
-		}
741
-	}
742
-	// si on a supprime des liens, on reordonne les liens concernes
743
-	if ($dels) {
744
-		lien_ordonner($objet_source, $primary, $table_lien, $id, $objets);
745
-	}
746
-
747
-	pipeline('trig_supprimer_objets_lies', $retire);
748
-
749
-	return ($echec ? false : $dels);
666
+    $retire = [];
667
+    $dels = 0;
668
+    $echec = false;
669
+    if (is_null($cond)) {
670
+        $cond = [];
671
+    }
672
+
673
+    foreach ($objets as $objet => $id_objets) {
674
+        $objet = ($objet == '*') ? $objet : objet_type($objet); # securite
675
+        if (!is_array($id_objets) or reset($id_objets) == 'NOT') {
676
+            $id_objets = [$id_objets];
677
+        }
678
+        foreach ($id_objets as $id_objet) {
679
+            [$cond, $colonne_role, $role] = roles_creer_condition_role($objet_source, $objet, $cond);
680
+            // id_objet peut valoir '*'
681
+            $where = lien_where($primary, $id, $objet, $id_objet, $cond);
682
+
683
+            // lire les liens existants pour propager la date de modif
684
+            $select = "$primary,id_objet,objet";
685
+            if ($colonne_role) {
686
+                $select .= ",$colonne_role";
687
+            }
688
+            $liens = sql_allfetsel($select, $table_lien, $where);
689
+
690
+            // iterer sur les liens pour permettre aux plugins de gerer
691
+            foreach ($liens as $l) {
692
+                $args = [
693
+                    'table_lien' => $table_lien,
694
+                    'objet_source' => $objet_source,
695
+                    'id_objet_source' => $l[$primary],
696
+                    'objet' => $l['objet'],
697
+                    'id_objet' => $l['id_objet'],
698
+                    'colonne_role' => $colonne_role,
699
+                    'role' => ($colonne_role ? $l[$colonne_role] : ''),
700
+                    'action' => 'delete',
701
+                ];
702
+
703
+                // Envoyer aux plugins
704
+                $l = pipeline(
705
+                    'pre_edition_lien',
706
+                    [
707
+                        'args' => $args,
708
+                        'data' => $l
709
+                    ]
710
+                );
711
+                $args['id_objet'] = $id_o = $l['id_objet'];
712
+
713
+                if ($id_o = intval($l['id_objet']) or in_array($l['objet'], ['site', 'rubrique'])) {
714
+                    $where = lien_where($primary, $l[$primary], $l['objet'], $id_o, $cond);
715
+                    $e = sql_delete($table_lien, $where);
716
+                    if ($e !== false) {
717
+                        $dels += $e;
718
+                        lien_propage_date_modif($l['objet'], $id_o);
719
+                        lien_propage_date_modif($objet_source, $l[$primary]);
720
+                    } else {
721
+                        $echec = true;
722
+                    }
723
+                    $retire[] = [
724
+                        'source' => [$objet_source => $l[$primary]],
725
+                        'lien' => [$l['objet'] => $id_o],
726
+                        'type' => $l['objet'],
727
+                        'role' => ($colonne_role ? $l[$colonne_role] : ''),
728
+                        'id' => $id_o
729
+                    ];
730
+                    // Envoyer aux plugins
731
+                    pipeline(
732
+                        'post_edition_lien',
733
+                        [
734
+                            'args' => $args,
735
+                            'data' => $l
736
+                        ]
737
+                    );
738
+                }
739
+            }
740
+        }
741
+    }
742
+    // si on a supprime des liens, on reordonne les liens concernes
743
+    if ($dels) {
744
+        lien_ordonner($objet_source, $primary, $table_lien, $id, $objets);
745
+    }
746
+
747
+    pipeline('trig_supprimer_objets_lies', $retire);
748
+
749
+    return ($echec ? false : $dels);
750 750
 }
751 751
 
752 752
 
@@ -769,67 +769,67 @@  discard block
 block discarded – undo
769 769
  * @return bool|int
770 770
  */
771 771
 function lien_optimise($objet_source, $primary, $table_lien, $id, $objets) {
772
-	include_spip('genie/optimiser');
773
-	$echec = false;
774
-	$dels = 0;
775
-	foreach ($objets as $objet => $id_objets) {
776
-		$objet = ($objet == '*') ? $objet : objet_type($objet); # securite
777
-		if (!is_array($id_objets) or reset($id_objets) == 'NOT') {
778
-			$id_objets = [$id_objets];
779
-		}
780
-		foreach ($id_objets as $id_objet) {
781
-			$where = lien_where($primary, $id, $objet, $id_objet);
782
-			# les liens vers un objet inexistant
783
-			$r = sql_select('DISTINCT objet', $table_lien, $where);
784
-			while ($t = sql_fetch($r)) {
785
-				$type = $t['objet'];
786
-				$spip_table_objet = table_objet_sql($type);
787
-				$id_table_objet = id_table_objet($type);
788
-				$res = sql_select(
789
-					"L.$primary AS id,L.id_objet",
790
-					// la condition de jointure inclue L.objet='xxx' pour ne joindre que les bonnes lignes
791
-					// du coups toutes les lignes avec un autre objet ont un id_xxx=NULL puisque LEFT JOIN
792
-					// il faut les eliminier en repetant la condition dans le where L.objet='xxx'
793
-					"$table_lien AS L
772
+    include_spip('genie/optimiser');
773
+    $echec = false;
774
+    $dels = 0;
775
+    foreach ($objets as $objet => $id_objets) {
776
+        $objet = ($objet == '*') ? $objet : objet_type($objet); # securite
777
+        if (!is_array($id_objets) or reset($id_objets) == 'NOT') {
778
+            $id_objets = [$id_objets];
779
+        }
780
+        foreach ($id_objets as $id_objet) {
781
+            $where = lien_where($primary, $id, $objet, $id_objet);
782
+            # les liens vers un objet inexistant
783
+            $r = sql_select('DISTINCT objet', $table_lien, $where);
784
+            while ($t = sql_fetch($r)) {
785
+                $type = $t['objet'];
786
+                $spip_table_objet = table_objet_sql($type);
787
+                $id_table_objet = id_table_objet($type);
788
+                $res = sql_select(
789
+                    "L.$primary AS id,L.id_objet",
790
+                    // la condition de jointure inclue L.objet='xxx' pour ne joindre que les bonnes lignes
791
+                    // du coups toutes les lignes avec un autre objet ont un id_xxx=NULL puisque LEFT JOIN
792
+                    // il faut les eliminier en repetant la condition dans le where L.objet='xxx'
793
+                    "$table_lien AS L
794 794
 									LEFT JOIN $spip_table_objet AS O
795 795
 										ON (O.$id_table_objet=L.id_objet AND L.objet=" . sql_quote($type) . ')',
796
-					'L.objet=' . sql_quote($type) . " AND O.$id_table_objet IS NULL"
797
-				);
798
-				// sur une cle primaire composee, pas d'autres solutions que de virer un a un
799
-				while ($row = sql_fetch($res)) {
800
-					if ($primary === 'id_document' and in_array($type, ['site', 'rubrique']) and !intval($row['id_objet'])) {
801
-						continue; // gaffe, c'est le logo du site ou des rubriques!
802
-					}
803
-					$e = sql_delete(
804
-						$table_lien,
805
-						["$primary=" . $row['id'], 'id_objet=' . $row['id_objet'], 'objet=' . sql_quote($type)]
806
-					);
807
-					if ($e != false) {
808
-						$dels += $e;
809
-						spip_log(
810
-							'lien_optimise: Entree ' . $row['id'] . '/' . $row['id_objet'] . "/$type supprimee dans la table $table_lien",
811
-							'genie' . _LOG_INFO_IMPORTANTE
812
-						);
813
-					}
814
-				}
815
-			}
816
-
817
-			# les liens depuis un objet inexistant
818
-			$table_source = table_objet_sql($objet_source);
819
-			// filtrer selon $id, $objet, $id_objet eventuellement fournis
820
-			// (en general '*' pour chaque)
821
-			$where = lien_where("L.$primary", $id, $objet, $id_objet);
822
-			$where[] = "O.$primary IS NULL";
823
-			$res = sql_select(
824
-				"L.$primary AS id",
825
-				"$table_lien AS L LEFT JOIN $table_source AS O ON L.$primary=O.$primary",
826
-				$where
827
-			);
828
-			$dels += optimiser_sansref($table_lien, $primary, $res);
829
-		}
830
-	}
831
-
832
-	return ($echec ? false : $dels);
796
+                    'L.objet=' . sql_quote($type) . " AND O.$id_table_objet IS NULL"
797
+                );
798
+                // sur une cle primaire composee, pas d'autres solutions que de virer un a un
799
+                while ($row = sql_fetch($res)) {
800
+                    if ($primary === 'id_document' and in_array($type, ['site', 'rubrique']) and !intval($row['id_objet'])) {
801
+                        continue; // gaffe, c'est le logo du site ou des rubriques!
802
+                    }
803
+                    $e = sql_delete(
804
+                        $table_lien,
805
+                        ["$primary=" . $row['id'], 'id_objet=' . $row['id_objet'], 'objet=' . sql_quote($type)]
806
+                    );
807
+                    if ($e != false) {
808
+                        $dels += $e;
809
+                        spip_log(
810
+                            'lien_optimise: Entree ' . $row['id'] . '/' . $row['id_objet'] . "/$type supprimee dans la table $table_lien",
811
+                            'genie' . _LOG_INFO_IMPORTANTE
812
+                        );
813
+                    }
814
+                }
815
+            }
816
+
817
+            # les liens depuis un objet inexistant
818
+            $table_source = table_objet_sql($objet_source);
819
+            // filtrer selon $id, $objet, $id_objet eventuellement fournis
820
+            // (en general '*' pour chaque)
821
+            $where = lien_where("L.$primary", $id, $objet, $id_objet);
822
+            $where[] = "O.$primary IS NULL";
823
+            $res = sql_select(
824
+                "L.$primary AS id",
825
+                "$table_lien AS L LEFT JOIN $table_source AS O ON L.$primary=O.$primary",
826
+                $where
827
+            );
828
+            $dels += optimiser_sansref($table_lien, $primary, $res);
829
+        }
830
+    }
831
+
832
+    return ($echec ? false : $dels);
833 833
 }
834 834
 
835 835
 
@@ -861,92 +861,92 @@  discard block
 block discarded – undo
861 861
  *     Nombre de modifications faites, false si échec.
862 862
  */
863 863
 function lien_set($objet_source, $primary, $table_lien, $id, $objets, $qualif) {
864
-	$echec = null;
865
-	$ok = 0;
866
-	$reordonner = false;
867
-	if (!$qualif) {
868
-		return false;
869
-	}
870
-	// nettoyer qualif qui peut venir directement d'un objet_trouver_lien :
871
-	unset($qualif[$primary]);
872
-	unset($qualif[$objet_source]);
873
-	if (isset($qualif['objet'])) {
874
-		unset($qualif[$qualif['objet']]);
875
-	}
876
-	unset($qualif['objet']);
877
-	unset($qualif['id_objet']);
878
-	foreach ($objets as $objet => $id_objets) {
879
-		// role, colonne, where par défaut
880
-		[$role, $colonne_role, $cond] =
881
-			roles_trouver_dans_qualif($objet_source, $objet, $qualif);
882
-
883
-		$objet = ($objet == '*') ? $objet : objet_type($objet); # securite
884
-		if (!is_array($id_objets) or reset($id_objets) == 'NOT') {
885
-			$id_objets = [$id_objets];
886
-		}
887
-		foreach ($id_objets as $id_objet) {
888
-			$args = [
889
-				'table_lien' => $table_lien,
890
-				'objet_source' => $objet_source,
891
-				'id_objet_source' => $id,
892
-				'objet' => $objet,
893
-				'id_objet' => $id_objet,
894
-				'role' => $role,
895
-				'colonne_role' => $colonne_role,
896
-				'action' => 'modifier',
897
-			];
898
-
899
-			// Envoyer aux plugins
900
-			$qualif = pipeline(
901
-				'pre_edition_lien',
902
-				[
903
-					'args' => $args,
904
-					'data' => $qualif,
905
-				]
906
-			);
907
-			$args['id_objet'] = $id_objet;
908
-
909
-			if (lien_triables($table_lien) and isset($qualif['rang_lien'])) {
910
-				if (intval($qualif['rang_lien'])) {
911
-					// on decale les liens de rang_lien>=la valeur inseree pour faire la place
912
-					// sauf sur le meme lien avec un role eventuellement different
913
-					$where_meme_lien = lien_where($primary, $id, $objet, $id_objet);
914
-					$where_meme_lien = implode(' AND ', $where_meme_lien);
915
-					$w = lien_rang_where($table_lien, $primary, $id, $objet, $id_objet, ['rang_lien>=' . intval($qualif['rang_lien']), "NOT($where_meme_lien)"]);
916
-					sql_update($table_lien, ['rang_lien' => 'rang_lien+1'], $w);
917
-				}
918
-				// tous les liens de même rôle recoivent le rang indiqué aussi
919
-				if (roles_colonne($objet_source, $objet)) {
920
-					$w = lien_where($primary, $id, $objet, $id_objet);
921
-					sql_updateq($table_lien, ['rang_lien' => intval($qualif['rang_lien'])], $w);
922
-				}
923
-				$reordonner = true;
924
-			}
925
-
926
-			$where = lien_where($primary, $id, $objet, $id_objet, $cond);
927
-			$e = sql_updateq($table_lien, $qualif, $where);
928
-
929
-			if ($e === false) {
930
-				$echec = true;
931
-			} else {
932
-				// Envoyer aux plugins
933
-				pipeline(
934
-					'post_edition_lien',
935
-					[
936
-						'args' => $args,
937
-						'data' => $qualif
938
-					]
939
-				);
940
-				$ok++;
941
-			}
942
-		}
943
-	}
944
-	// si on a fait des modif de rang, on reordonne les liens concernes
945
-	if ($reordonner) {
946
-		lien_ordonner($objet_source, $primary, $table_lien, $id, $objets);
947
-	}
948
-
949
-	return ($echec ? false : $ok);
864
+    $echec = null;
865
+    $ok = 0;
866
+    $reordonner = false;
867
+    if (!$qualif) {
868
+        return false;
869
+    }
870
+    // nettoyer qualif qui peut venir directement d'un objet_trouver_lien :
871
+    unset($qualif[$primary]);
872
+    unset($qualif[$objet_source]);
873
+    if (isset($qualif['objet'])) {
874
+        unset($qualif[$qualif['objet']]);
875
+    }
876
+    unset($qualif['objet']);
877
+    unset($qualif['id_objet']);
878
+    foreach ($objets as $objet => $id_objets) {
879
+        // role, colonne, where par défaut
880
+        [$role, $colonne_role, $cond] =
881
+            roles_trouver_dans_qualif($objet_source, $objet, $qualif);
882
+
883
+        $objet = ($objet == '*') ? $objet : objet_type($objet); # securite
884
+        if (!is_array($id_objets) or reset($id_objets) == 'NOT') {
885
+            $id_objets = [$id_objets];
886
+        }
887
+        foreach ($id_objets as $id_objet) {
888
+            $args = [
889
+                'table_lien' => $table_lien,
890
+                'objet_source' => $objet_source,
891
+                'id_objet_source' => $id,
892
+                'objet' => $objet,
893
+                'id_objet' => $id_objet,
894
+                'role' => $role,
895
+                'colonne_role' => $colonne_role,
896
+                'action' => 'modifier',
897
+            ];
898
+
899
+            // Envoyer aux plugins
900
+            $qualif = pipeline(
901
+                'pre_edition_lien',
902
+                [
903
+                    'args' => $args,
904
+                    'data' => $qualif,
905
+                ]
906
+            );
907
+            $args['id_objet'] = $id_objet;
908
+
909
+            if (lien_triables($table_lien) and isset($qualif['rang_lien'])) {
910
+                if (intval($qualif['rang_lien'])) {
911
+                    // on decale les liens de rang_lien>=la valeur inseree pour faire la place
912
+                    // sauf sur le meme lien avec un role eventuellement different
913
+                    $where_meme_lien = lien_where($primary, $id, $objet, $id_objet);
914
+                    $where_meme_lien = implode(' AND ', $where_meme_lien);
915
+                    $w = lien_rang_where($table_lien, $primary, $id, $objet, $id_objet, ['rang_lien>=' . intval($qualif['rang_lien']), "NOT($where_meme_lien)"]);
916
+                    sql_update($table_lien, ['rang_lien' => 'rang_lien+1'], $w);
917
+                }
918
+                // tous les liens de même rôle recoivent le rang indiqué aussi
919
+                if (roles_colonne($objet_source, $objet)) {
920
+                    $w = lien_where($primary, $id, $objet, $id_objet);
921
+                    sql_updateq($table_lien, ['rang_lien' => intval($qualif['rang_lien'])], $w);
922
+                }
923
+                $reordonner = true;
924
+            }
925
+
926
+            $where = lien_where($primary, $id, $objet, $id_objet, $cond);
927
+            $e = sql_updateq($table_lien, $qualif, $where);
928
+
929
+            if ($e === false) {
930
+                $echec = true;
931
+            } else {
932
+                // Envoyer aux plugins
933
+                pipeline(
934
+                    'post_edition_lien',
935
+                    [
936
+                        'args' => $args,
937
+                        'data' => $qualif
938
+                    ]
939
+                );
940
+                $ok++;
941
+            }
942
+        }
943
+    }
944
+    // si on a fait des modif de rang, on reordonne les liens concernes
945
+    if ($reordonner) {
946
+        lien_ordonner($objet_source, $primary, $table_lien, $id, $objets);
947
+    }
948
+
949
+    return ($echec ? false : $ok);
950 950
 }
951 951
 
952 952
 /**
@@ -976,23 +976,23 @@  discard block
 block discarded – undo
976 976
  * @return array
977 977
  */
978 978
 function lien_find($objet_source, $primary, $table_lien, $id, $objets, $cond = null) {
979
-	$trouve = [];
980
-	foreach ($objets as $objet => $id_objets) {
981
-		$objet = ($objet == '*') ? $objet : objet_type($objet); # securite
982
-		// gerer les roles s'il y en a dans $cond
983
-		[$cond] = roles_creer_condition_role($objet_source, $objet, $cond, true);
984
-		// lien_where prend en charge les $id_objets sous forme int ou array
985
-		$where = lien_where($primary, $id, $objet, $id_objets, $cond);
986
-		$liens = sql_allfetsel('*', $table_lien, $where);
987
-		// ajouter les entrees objet_source et objet cible par convenance
988
-		foreach ($liens as $l) {
989
-			$l[$objet_source] = $l[$primary];
990
-			$l[$l['objet']] = $l['id_objet'];
991
-			$trouve[] = $l;
992
-		}
993
-	}
994
-
995
-	return $trouve;
979
+    $trouve = [];
980
+    foreach ($objets as $objet => $id_objets) {
981
+        $objet = ($objet == '*') ? $objet : objet_type($objet); # securite
982
+        // gerer les roles s'il y en a dans $cond
983
+        [$cond] = roles_creer_condition_role($objet_source, $objet, $cond, true);
984
+        // lien_where prend en charge les $id_objets sous forme int ou array
985
+        $where = lien_where($primary, $id, $objet, $id_objets, $cond);
986
+        $liens = sql_allfetsel('*', $table_lien, $where);
987
+        // ajouter les entrees objet_source et objet cible par convenance
988
+        foreach ($liens as $l) {
989
+            $l[$objet_source] = $l[$primary];
990
+            $l[$l['objet']] = $l['id_objet'];
991
+            $trouve[] = $l;
992
+        }
993
+    }
994
+
995
+    return $trouve;
996 996
 }
997 997
 
998 998
 /**
@@ -1003,26 +1003,26 @@  discard block
 block discarded – undo
1003 1003
  * @param array|int $ids
1004 1004
  */
1005 1005
 function lien_propage_date_modif($objet, $ids) {
1006
-	static $done = [];
1007
-	$hash = md5($objet . serialize($ids));
1008
-
1009
-	// sql_updateq, peut être un rien lent.
1010
-	// On évite de l'appeler 2 fois sur les mêmes choses
1011
-	if (isset($done[$hash])) {
1012
-		return;
1013
-	}
1014
-
1015
-	$trouver_table = charger_fonction('trouver_table', 'base');
1016
-
1017
-	$table = table_objet_sql($objet);
1018
-	if (
1019
-		$desc = $trouver_table($table)
1020
-		and isset($desc['field']['date_modif'])
1021
-	) {
1022
-		$primary = id_table_objet($objet);
1023
-		$where = (is_array($ids) ? sql_in($primary, array_map('intval', $ids)) : "$primary=" . intval($ids));
1024
-		sql_updateq($table, ['date_modif' => date('Y-m-d H:i:s')], $where);
1025
-	}
1026
-
1027
-	$done[$hash] = true;
1006
+    static $done = [];
1007
+    $hash = md5($objet . serialize($ids));
1008
+
1009
+    // sql_updateq, peut être un rien lent.
1010
+    // On évite de l'appeler 2 fois sur les mêmes choses
1011
+    if (isset($done[$hash])) {
1012
+        return;
1013
+    }
1014
+
1015
+    $trouver_table = charger_fonction('trouver_table', 'base');
1016
+
1017
+    $table = table_objet_sql($objet);
1018
+    if (
1019
+        $desc = $trouver_table($table)
1020
+        and isset($desc['field']['date_modif'])
1021
+    ) {
1022
+        $primary = id_table_objet($objet);
1023
+        $where = (is_array($ids) ? sql_in($primary, array_map('intval', $ids)) : "$primary=" . intval($ids));
1024
+        sql_updateq($table, ['date_modif' => date('Y-m-d H:i:s')], $where);
1025
+    }
1026
+
1027
+    $done[$hash] = true;
1028 1028
 }
Please login to merge, or discard this patch.
Spacing   +16 added lines, -16 removed lines patch added patch discarded remove patch
@@ -53,7 +53,7 @@  discard block
 block discarded – undo
53 53
 	$l = '';
54 54
 	if (
55 55
 		$primary = id_table_objet($objet)
56
-		and $trouver_table($l = $table_sql . '_liens', '', true, ['log_missing' => false])
56
+		and $trouver_table($l = $table_sql.'_liens', '', true, ['log_missing' => false])
57 57
 		and !preg_match(',[^\w],', $primary)
58 58
 		and !preg_match(',[^\w],', $l)
59 59
 	) {
@@ -212,7 +212,7 @@  discard block
 block discarded – undo
212 212
  * @return int
213 213
  */
214 214
 function objet_optimiser_liens($objets_source, $objets_lies) {
215
-	spip_log('objet_optimiser_liens : ' . json_encode($objets_source, JSON_THROW_ON_ERROR) . ', ' . json_encode($objets_lies, JSON_THROW_ON_ERROR), 'genie' . _LOG_DEBUG);
215
+	spip_log('objet_optimiser_liens : '.json_encode($objets_source, JSON_THROW_ON_ERROR).', '.json_encode($objets_lies, JSON_THROW_ON_ERROR), 'genie'._LOG_DEBUG);
216 216
 	return objet_traiter_liaisons('lien_optimise', $objets_source, $objets_lies);
217 217
 }
218 218
 
@@ -446,7 +446,7 @@  discard block
 block discarded – undo
446 446
 					$where_meme_lien = implode(' AND ', $where_meme_lien);
447 447
 					// on decale les liens de rang_lien>=la valeur inseree pour faire la place
448 448
 					// sauf sur le meme lien avec un role eventuellement different
449
-					$w = lien_rang_where($table_lien, $primary, $id, $objet, $id_objet, ['rang_lien>=' . intval($insertions['rang_lien']), "NOT($where_meme_lien)"]);
449
+					$w = lien_rang_where($table_lien, $primary, $id, $objet, $id_objet, ['rang_lien>='.intval($insertions['rang_lien']), "NOT($where_meme_lien)"]);
450 450
 					sql_update($table_lien, ['rang_lien' => 'rang_lien+1'], $w);
451 451
 				}
452 452
 
@@ -511,7 +511,7 @@  discard block
 block discarded – undo
511 511
 					$rang = 1;
512 512
 					foreach ($liens as $lien) {
513 513
 						if (empty($deja_reordonne[$lien[$primary]][$lien['objet']][$lien['id_objet']])) {
514
-							$where = lien_where($primary, $lien[$primary], $lien['objet'], $lien['id_objet'], ['rang_lien!=' . intval($rang)]);
514
+							$where = lien_where($primary, $lien[$primary], $lien['objet'], $lien['id_objet'], ['rang_lien!='.intval($rang)]);
515 515
 							sql_updateq($table_lien, ['rang_lien' => $rang], $where);
516 516
 
517 517
 							if (empty($deja_reordonne[$lien[$primary]])) {
@@ -587,7 +587,7 @@  discard block
 block discarded – undo
587 587
 			addslashes($primary),
588 588
 			array_map('intval', $id_source),
589 589
 			$not
590
-		) : addslashes($primary) . ($not ? '<>' : '=') . intval($id_source));
590
+		) : addslashes($primary).($not ? '<>' : '=').intval($id_source));
591 591
 	} elseif ($not) {
592 592
 		$where[] = '0=1';
593 593
 	} // idiot mais quand meme
@@ -599,14 +599,14 @@  discard block
 block discarded – undo
599 599
 	}
600 600
 
601 601
 	if ($objet !== '*') {
602
-		$where[] = 'objet=' . sql_quote($objet);
602
+		$where[] = 'objet='.sql_quote($objet);
603 603
 	}
604 604
 	if ($id_objet !== '*') {
605 605
 		$where[] = (is_array($id_objet) ? sql_in(
606 606
 			'id_objet',
607 607
 			array_map('intval', $id_objet),
608 608
 			$not
609
-		) : 'id_objet' . ($not ? '<>' : '=') . intval($id_objet));
609
+		) : 'id_objet'.($not ? '<>' : '=').intval($id_objet));
610 610
 	} elseif ($not) {
611 611
 		$where[] = '0=1';
612 612
 	} // idiot mais quand meme
@@ -627,7 +627,7 @@  discard block
 block discarded – undo
627 627
 function lien_rang_where($table_lien, $primary, $id_source, $objet, $id_objet, $cond = []) {
628 628
 
629 629
 	// si on veut compter les rangs autrement que le core ne le fait par defaut, fournir le where adhoc
630
-	if (function_exists($f = 'lien_rang_where_' . $table_lien)) {
630
+	if (function_exists($f = 'lien_rang_where_'.$table_lien)) {
631 631
 		return $f($primary, $id_source, $objet, $id_objet, $cond);
632 632
 	}
633 633
 
@@ -792,8 +792,8 @@  discard block
 block discarded – undo
792 792
 					// il faut les eliminier en repetant la condition dans le where L.objet='xxx'
793 793
 					"$table_lien AS L
794 794
 									LEFT JOIN $spip_table_objet AS O
795
-										ON (O.$id_table_objet=L.id_objet AND L.objet=" . sql_quote($type) . ')',
796
-					'L.objet=' . sql_quote($type) . " AND O.$id_table_objet IS NULL"
795
+										ON (O.$id_table_objet=L.id_objet AND L.objet=".sql_quote($type).')',
796
+					'L.objet='.sql_quote($type)." AND O.$id_table_objet IS NULL"
797 797
 				);
798 798
 				// sur une cle primaire composee, pas d'autres solutions que de virer un a un
799 799
 				while ($row = sql_fetch($res)) {
@@ -802,13 +802,13 @@  discard block
 block discarded – undo
802 802
 					}
803 803
 					$e = sql_delete(
804 804
 						$table_lien,
805
-						["$primary=" . $row['id'], 'id_objet=' . $row['id_objet'], 'objet=' . sql_quote($type)]
805
+						["$primary=".$row['id'], 'id_objet='.$row['id_objet'], 'objet='.sql_quote($type)]
806 806
 					);
807 807
 					if ($e != false) {
808 808
 						$dels += $e;
809 809
 						spip_log(
810
-							'lien_optimise: Entree ' . $row['id'] . '/' . $row['id_objet'] . "/$type supprimee dans la table $table_lien",
811
-							'genie' . _LOG_INFO_IMPORTANTE
810
+							'lien_optimise: Entree '.$row['id'].'/'.$row['id_objet']."/$type supprimee dans la table $table_lien",
811
+							'genie'._LOG_INFO_IMPORTANTE
812 812
 						);
813 813
 					}
814 814
 				}
@@ -912,7 +912,7 @@  discard block
 block discarded – undo
912 912
 					// sauf sur le meme lien avec un role eventuellement different
913 913
 					$where_meme_lien = lien_where($primary, $id, $objet, $id_objet);
914 914
 					$where_meme_lien = implode(' AND ', $where_meme_lien);
915
-					$w = lien_rang_where($table_lien, $primary, $id, $objet, $id_objet, ['rang_lien>=' . intval($qualif['rang_lien']), "NOT($where_meme_lien)"]);
915
+					$w = lien_rang_where($table_lien, $primary, $id, $objet, $id_objet, ['rang_lien>='.intval($qualif['rang_lien']), "NOT($where_meme_lien)"]);
916 916
 					sql_update($table_lien, ['rang_lien' => 'rang_lien+1'], $w);
917 917
 				}
918 918
 				// tous les liens de même rôle recoivent le rang indiqué aussi
@@ -1004,7 +1004,7 @@  discard block
 block discarded – undo
1004 1004
  */
1005 1005
 function lien_propage_date_modif($objet, $ids) {
1006 1006
 	static $done = [];
1007
-	$hash = md5($objet . serialize($ids));
1007
+	$hash = md5($objet.serialize($ids));
1008 1008
 
1009 1009
 	// sql_updateq, peut être un rien lent.
1010 1010
 	// On évite de l'appeler 2 fois sur les mêmes choses
@@ -1020,7 +1020,7 @@  discard block
 block discarded – undo
1020 1020
 		and isset($desc['field']['date_modif'])
1021 1021
 	) {
1022 1022
 		$primary = id_table_objet($objet);
1023
-		$where = (is_array($ids) ? sql_in($primary, array_map('intval', $ids)) : "$primary=" . intval($ids));
1023
+		$where = (is_array($ids) ? sql_in($primary, array_map('intval', $ids)) : "$primary=".intval($ids));
1024 1024
 		sql_updateq($table, ['date_modif' => date('Y-m-d H:i:s')], $where);
1025 1025
 	}
1026 1026
 
Please login to merge, or discard this patch.
ecrire/inc/headers.php 2 patches
Spacing   +13 added lines, -13 removed lines patch added patch discarded remove patch
@@ -79,20 +79,20 @@  discard block
 block discarded – undo
79 79
 		(!$equiv and !spip_cookie_envoye()) or (
80 80
 			   (!empty($_SERVER['SERVER_SOFTWARE'])
81 81
 				   and _SERVEUR_SOFTWARE_ACCEPTE_LOCATION_APRES_COOKIE
82
-				   and preg_match('/' . _SERVEUR_SOFTWARE_ACCEPTE_LOCATION_APRES_COOKIE . '/i', $_SERVER['SERVER_SOFTWARE']))
82
+				   and preg_match('/'._SERVEUR_SOFTWARE_ACCEPTE_LOCATION_APRES_COOKIE.'/i', $_SERVER['SERVER_SOFTWARE']))
83 83
 			or (!empty($_SERVER['SERVER_SIGNATURE'])
84 84
 				   and _SERVEUR_SIGNATURE_ACCEPTE_LOCATION_APRES_COOKIE
85
-				   and preg_match('/' . _SERVEUR_SIGNATURE_ACCEPTE_LOCATION_APRES_COOKIE . '/i', $_SERVER['SERVER_SIGNATURE']))
85
+				   and preg_match('/'._SERVEUR_SIGNATURE_ACCEPTE_LOCATION_APRES_COOKIE.'/i', $_SERVER['SERVER_SIGNATURE']))
86 86
 			or function_exists('apache_getenv')
87 87
 			or defined('_SERVER_APACHE')
88 88
 		)
89 89
 	) {
90
-		@header('Location: ' . $url);
90
+		@header('Location: '.$url);
91 91
 		$equiv = '';
92 92
 	} else {
93
-		@header('Refresh: 0; url=' . $url);
93
+		@header('Refresh: 0; url='.$url);
94 94
 		if (isset($GLOBALS['meta']['charset'])) {
95
-			@header('Content-Type: text/html; charset=' . $GLOBALS['meta']['charset']);
95
+			@header('Content-Type: text/html; charset='.$GLOBALS['meta']['charset']);
96 96
 		}
97 97
 		$equiv = "<meta http-equiv='Refresh' content='0; url=$url'>";
98 98
 	}
@@ -104,11 +104,11 @@  discard block
 block discarded – undo
104 104
 	html_lang_attributes(), '
105 105
 <head>',
106 106
 	$equiv, '
107
-<title>HTTP ' . $status . '</title>
108
-' . ((isset($GLOBALS['meta']['charset'])) ? '<meta http-equiv="Content-Type" content="text/html;charset=' . $GLOBALS['meta']['charset'] . '">' : '') . '
107
+<title>HTTP ' . $status.'</title>
108
+' . ((isset($GLOBALS['meta']['charset'])) ? '<meta http-equiv="Content-Type" content="text/html;charset='.$GLOBALS['meta']['charset'].'">' : '').'
109 109
 </head>
110 110
 <body>
111
-<h1>HTTP ' . $status . '</h1>
111
+<h1>HTTP ' . $status.'</h1>
112 112
 <a href="',
113 113
 	quote_amp($url),
114 114
 	'">',
@@ -144,7 +144,7 @@  discard block
 block discarded – undo
144 144
 		# en theorie on devrait faire ca tout le temps, mais quand la chaine
145 145
 		# commence par ? c'est imperatif, sinon l'url finale n'est pas la bonne
146 146
 		if ($url[0] == '?') {
147
-			$url = url_de_base() . $url;
147
+			$url = url_de_base().$url;
148 148
 		}
149 149
 		$url = str_replace('&amp;', '&', $url);
150 150
 		spip_log("redirige formulaire ajax: $url");
@@ -152,9 +152,9 @@  discard block
 block discarded – undo
152 152
 		if ($format == 'ajaxform') {
153 153
 			return [
154 154
 				// on renvoie un lien masque qui sera traite par ajaxCallback.js
155
-				'<a href="' . quote_amp($url) . '" name="ajax_redirect"  style="display:none;">' . _T('navigateur_pas_redirige') . '</a>',
155
+				'<a href="'.quote_amp($url).'" name="ajax_redirect"  style="display:none;">'._T('navigateur_pas_redirige').'</a>',
156 156
 				// et un message au cas ou
157
-				'<br /><a href="' . quote_amp($url) . '">' . _T('navigateur_pas_redirige') . '</a>'
157
+				'<br /><a href="'.quote_amp($url).'">'._T('navigateur_pas_redirige').'</a>'
158 158
 			];
159 159
 		} else // format message texte, tout en js inline
160 160
 		{
@@ -163,7 +163,7 @@  discard block
 block discarded – undo
163 163
 				"<script type='text/javascript'>if (parent.window){parent.window.document.location.replace(\"$url\");} else {document.location.replace(\"$url\");}</script>"
164 164
 				. http_img_pack('loader.svg', '', " class='loader'")
165 165
 				. '<br />'
166
-				. '<a href="' . quote_amp($url) . '">' . _T('navigateur_pas_redirige') . '</a>';
166
+				. '<a href="'.quote_amp($url).'">'._T('navigateur_pas_redirige').'</a>';
167 167
 		}
168 168
 	}
169 169
 }
@@ -222,7 +222,7 @@  discard block
 block discarded – undo
222 222
 
223 223
 	header("Content-Type: text/html; charset=$charset");
224 224
 	header('Expires: 0');
225
-	header('Last-Modified: ' . gmdate('D, d M Y H:i:s') . ' GMT');
225
+	header('Last-Modified: '.gmdate('D, d M Y H:i:s').' GMT');
226 226
 	header('Cache-Control: no-cache, must-revalidate');
227 227
 	header('Pragma: no-cache');
228 228
 }
Please login to merge, or discard this patch.
Indentation   +136 added lines, -136 removed lines patch added patch discarded remove patch
@@ -17,7 +17,7 @@  discard block
 block discarded – undo
17 17
  **/
18 18
 
19 19
 if (!defined('_ECRIRE_INC_VERSION')) {
20
-	return;
20
+    return;
21 21
 }
22 22
 
23 23
 
@@ -38,133 +38,133 @@  discard block
 block discarded – undo
38 38
  * @param int $status Code de redirection (301 ou 302)
39 39
  **/
40 40
 function redirige_par_entete($url, $equiv = '', $status = 302) {
41
-	if (!in_array($status, [301, 302])) {
42
-		$status = 302;
43
-	}
44
-
45
-	$url = trim(strtr($url, "\n\r", '  '));
46
-	# si l'url de redirection est relative, on la passe en absolue
47
-	if (!preg_match(',^(\w+:)?//,', $url)) {
48
-		include_spip('inc/filtres_mini');
49
-		$url = url_absolue($url);
50
-	}
51
-
52
-	if (defined('_AJAX') and _AJAX) {
53
-		$url = parametre_url($url, 'var_ajax_redir', 1, '&');
54
-	}
55
-
56
-	// ne pas laisser passer n'importe quoi dans l'url
57
-	$url = str_replace(['<', '"'], ['&lt;', '&quot;'], $url);
58
-	$url = str_replace(["\r", "\n", ' '], ['%0D', '%0A', '%20'], $url);
59
-	while (strpos($url, '%0A') !== false) {
60
-		$url = str_replace('%0A', '', $url);
61
-	}
62
-	// interdire les url inline avec des pseudo-protocoles :
63
-	if (
64
-		(preg_match(',data:,i', $url) and preg_match('/base64\s*,/i', $url))
65
-		or preg_match(',(javascript|mailto):,i', $url)
66
-	) {
67
-		$url = './';
68
-	}
69
-
70
-	// Il n'y a que sous Apache que setcookie puis redirection fonctionne
71
-	include_spip('inc/cookie');
72
-	if (!defined('_SERVEUR_SOFTWARE_ACCEPTE_LOCATION_APRES_COOKIE')) {
73
-		define('_SERVEUR_SOFTWARE_ACCEPTE_LOCATION_APRES_COOKIE', '^(Apache|Cherokee|nginx)');
74
-	}
75
-	if (!defined('_SERVEUR_SIGNATURE_ACCEPTE_LOCATION_APRES_COOKIE')) {
76
-		define('_SERVEUR_SIGNATURE_ACCEPTE_LOCATION_APRES_COOKIE', 'Apache|Cherokee|nginx');
77
-	}
78
-	if (
79
-		(!$equiv and !spip_cookie_envoye()) or (
80
-			   (!empty($_SERVER['SERVER_SOFTWARE'])
81
-				   and _SERVEUR_SOFTWARE_ACCEPTE_LOCATION_APRES_COOKIE
82
-				   and preg_match('/' . _SERVEUR_SOFTWARE_ACCEPTE_LOCATION_APRES_COOKIE . '/i', $_SERVER['SERVER_SOFTWARE']))
83
-			or (!empty($_SERVER['SERVER_SIGNATURE'])
84
-				   and _SERVEUR_SIGNATURE_ACCEPTE_LOCATION_APRES_COOKIE
85
-				   and preg_match('/' . _SERVEUR_SIGNATURE_ACCEPTE_LOCATION_APRES_COOKIE . '/i', $_SERVER['SERVER_SIGNATURE']))
86
-			or function_exists('apache_getenv')
87
-			or defined('_SERVER_APACHE')
88
-		)
89
-	) {
90
-		@header('Location: ' . $url);
91
-		$equiv = '';
92
-	} else {
93
-		@header('Refresh: 0; url=' . $url);
94
-		if (isset($GLOBALS['meta']['charset'])) {
95
-			@header('Content-Type: text/html; charset=' . $GLOBALS['meta']['charset']);
96
-		}
97
-		$equiv = "<meta http-equiv='Refresh' content='0; url=$url'>";
98
-	}
99
-	include_spip('inc/lang');
100
-	if ($status != 302) {
101
-		http_response_code($status);
102
-	}
103
-	echo '<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">', "\n",
104
-	html_lang_attributes(), '
41
+    if (!in_array($status, [301, 302])) {
42
+        $status = 302;
43
+    }
44
+
45
+    $url = trim(strtr($url, "\n\r", '  '));
46
+    # si l'url de redirection est relative, on la passe en absolue
47
+    if (!preg_match(',^(\w+:)?//,', $url)) {
48
+        include_spip('inc/filtres_mini');
49
+        $url = url_absolue($url);
50
+    }
51
+
52
+    if (defined('_AJAX') and _AJAX) {
53
+        $url = parametre_url($url, 'var_ajax_redir', 1, '&');
54
+    }
55
+
56
+    // ne pas laisser passer n'importe quoi dans l'url
57
+    $url = str_replace(['<', '"'], ['&lt;', '&quot;'], $url);
58
+    $url = str_replace(["\r", "\n", ' '], ['%0D', '%0A', '%20'], $url);
59
+    while (strpos($url, '%0A') !== false) {
60
+        $url = str_replace('%0A', '', $url);
61
+    }
62
+    // interdire les url inline avec des pseudo-protocoles :
63
+    if (
64
+        (preg_match(',data:,i', $url) and preg_match('/base64\s*,/i', $url))
65
+        or preg_match(',(javascript|mailto):,i', $url)
66
+    ) {
67
+        $url = './';
68
+    }
69
+
70
+    // Il n'y a que sous Apache que setcookie puis redirection fonctionne
71
+    include_spip('inc/cookie');
72
+    if (!defined('_SERVEUR_SOFTWARE_ACCEPTE_LOCATION_APRES_COOKIE')) {
73
+        define('_SERVEUR_SOFTWARE_ACCEPTE_LOCATION_APRES_COOKIE', '^(Apache|Cherokee|nginx)');
74
+    }
75
+    if (!defined('_SERVEUR_SIGNATURE_ACCEPTE_LOCATION_APRES_COOKIE')) {
76
+        define('_SERVEUR_SIGNATURE_ACCEPTE_LOCATION_APRES_COOKIE', 'Apache|Cherokee|nginx');
77
+    }
78
+    if (
79
+        (!$equiv and !spip_cookie_envoye()) or (
80
+                (!empty($_SERVER['SERVER_SOFTWARE'])
81
+                   and _SERVEUR_SOFTWARE_ACCEPTE_LOCATION_APRES_COOKIE
82
+                   and preg_match('/' . _SERVEUR_SOFTWARE_ACCEPTE_LOCATION_APRES_COOKIE . '/i', $_SERVER['SERVER_SOFTWARE']))
83
+            or (!empty($_SERVER['SERVER_SIGNATURE'])
84
+                   and _SERVEUR_SIGNATURE_ACCEPTE_LOCATION_APRES_COOKIE
85
+                   and preg_match('/' . _SERVEUR_SIGNATURE_ACCEPTE_LOCATION_APRES_COOKIE . '/i', $_SERVER['SERVER_SIGNATURE']))
86
+            or function_exists('apache_getenv')
87
+            or defined('_SERVER_APACHE')
88
+        )
89
+    ) {
90
+        @header('Location: ' . $url);
91
+        $equiv = '';
92
+    } else {
93
+        @header('Refresh: 0; url=' . $url);
94
+        if (isset($GLOBALS['meta']['charset'])) {
95
+            @header('Content-Type: text/html; charset=' . $GLOBALS['meta']['charset']);
96
+        }
97
+        $equiv = "<meta http-equiv='Refresh' content='0; url=$url'>";
98
+    }
99
+    include_spip('inc/lang');
100
+    if ($status != 302) {
101
+        http_response_code($status);
102
+    }
103
+    echo '<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">', "\n",
104
+    html_lang_attributes(), '
105 105
 <head>',
106
-	$equiv, '
106
+    $equiv, '
107 107
 <title>HTTP ' . $status . '</title>
108 108
 ' . ((isset($GLOBALS['meta']['charset'])) ? '<meta http-equiv="Content-Type" content="text/html;charset=' . $GLOBALS['meta']['charset'] . '">' : '') . '
109 109
 </head>
110 110
 <body>
111 111
 <h1>HTTP ' . $status . '</h1>
112 112
 <a href="',
113
-	quote_amp($url),
114
-	'">',
115
-	_T('navigateur_pas_redirige'),
116
-	'</a></body></html>';
113
+    quote_amp($url),
114
+    '">',
115
+    _T('navigateur_pas_redirige'),
116
+    '</a></body></html>';
117 117
 
118
-	spip_log("redirige $status: $url");
118
+    spip_log("redirige $status: $url");
119 119
 
120
-	exit;
120
+    exit;
121 121
 }
122 122
 
123 123
 function redirige_formulaire($url, $equiv = '', $format = 'message') {
124
-	if (
125
-		!_AJAX
126
-		and !headers_sent()
127
-		and !_request('var_ajax')
128
-	) {
129
-		redirige_par_entete(str_replace('&amp;', '&', $url), $equiv);
130
-	} // si c'est une ancre, fixer simplement le window.location.hash
131
-	elseif ($format == 'ajaxform' and preg_match(',^#[0-9a-z\-_]+$,i', $url)) {
132
-		return [
133
-			// on renvoie un lien masque qui sera traite par ajaxCallback.js
134
-			"<a href='$url' name='ajax_ancre' style='display:none;'>anchor</a>",
135
-			// et rien dans le message ok
136
-			''
137
-		];
138
-	} else {
139
-		// ne pas laisser passer n'importe quoi dans l'url
140
-		$url = str_replace(['<', '"'], ['&lt;', '&quot;'], $url);
141
-
142
-		$url = strtr($url, "\n\r", '  ');
143
-		# en theorie on devrait faire ca tout le temps, mais quand la chaine
144
-		# commence par ? c'est imperatif, sinon l'url finale n'est pas la bonne
145
-		if ($url[0] == '?') {
146
-			$url = url_de_base() . $url;
147
-		}
148
-		$url = str_replace('&amp;', '&', $url);
149
-		spip_log("redirige formulaire ajax: $url");
150
-		include_spip('inc/filtres');
151
-		if ($format == 'ajaxform') {
152
-			return [
153
-				// on renvoie un lien masque qui sera traite par ajaxCallback.js
154
-				'<a href="' . quote_amp($url) . '" name="ajax_redirect"  style="display:none;">' . _T('navigateur_pas_redirige') . '</a>',
155
-				// et un message au cas ou
156
-				'<br /><a href="' . quote_amp($url) . '">' . _T('navigateur_pas_redirige') . '</a>'
157
-			];
158
-		} else // format message texte, tout en js inline
159
-		{
160
-			return
161
-				// ie poste les formulaires dans une iframe, il faut donc rediriger son parent
162
-				"<script type='text/javascript'>if (parent.window){parent.window.document.location.replace(\"$url\");} else {document.location.replace(\"$url\");}</script>"
163
-				. http_img_pack('loader.svg', '', " class='loader'")
164
-				. '<br />'
165
-				. '<a href="' . quote_amp($url) . '">' . _T('navigateur_pas_redirige') . '</a>';
166
-		}
167
-	}
124
+    if (
125
+        !_AJAX
126
+        and !headers_sent()
127
+        and !_request('var_ajax')
128
+    ) {
129
+        redirige_par_entete(str_replace('&amp;', '&', $url), $equiv);
130
+    } // si c'est une ancre, fixer simplement le window.location.hash
131
+    elseif ($format == 'ajaxform' and preg_match(',^#[0-9a-z\-_]+$,i', $url)) {
132
+        return [
133
+            // on renvoie un lien masque qui sera traite par ajaxCallback.js
134
+            "<a href='$url' name='ajax_ancre' style='display:none;'>anchor</a>",
135
+            // et rien dans le message ok
136
+            ''
137
+        ];
138
+    } else {
139
+        // ne pas laisser passer n'importe quoi dans l'url
140
+        $url = str_replace(['<', '"'], ['&lt;', '&quot;'], $url);
141
+
142
+        $url = strtr($url, "\n\r", '  ');
143
+        # en theorie on devrait faire ca tout le temps, mais quand la chaine
144
+        # commence par ? c'est imperatif, sinon l'url finale n'est pas la bonne
145
+        if ($url[0] == '?') {
146
+            $url = url_de_base() . $url;
147
+        }
148
+        $url = str_replace('&amp;', '&', $url);
149
+        spip_log("redirige formulaire ajax: $url");
150
+        include_spip('inc/filtres');
151
+        if ($format == 'ajaxform') {
152
+            return [
153
+                // on renvoie un lien masque qui sera traite par ajaxCallback.js
154
+                '<a href="' . quote_amp($url) . '" name="ajax_redirect"  style="display:none;">' . _T('navigateur_pas_redirige') . '</a>',
155
+                // et un message au cas ou
156
+                '<br /><a href="' . quote_amp($url) . '">' . _T('navigateur_pas_redirige') . '</a>'
157
+            ];
158
+        } else // format message texte, tout en js inline
159
+        {
160
+            return
161
+                // ie poste les formulaires dans une iframe, il faut donc rediriger son parent
162
+                "<script type='text/javascript'>if (parent.window){parent.window.document.location.replace(\"$url\");} else {document.location.replace(\"$url\");}</script>"
163
+                . http_img_pack('loader.svg', '', " class='loader'")
164
+                . '<br />'
165
+                . '<a href="' . quote_amp($url) . '">' . _T('navigateur_pas_redirige') . '</a>';
166
+        }
167
+    }
168 168
 }
169 169
 
170 170
 /**
@@ -185,7 +185,7 @@  discard block
 block discarded – undo
185 185
  * @return void
186 186
  **/
187 187
 function redirige_url_ecrire($script = '', $args = '', $equiv = '') {
188
-	return redirige_par_entete(generer_url_ecrire($script, $args, true), $equiv);
188
+    return redirige_par_entete(generer_url_ecrire($script, $args, true), $equiv);
189 189
 }
190 190
 /**
191 191
  * Renvoie au client le header HTTP avec le message correspondant au code indiqué.
@@ -200,27 +200,27 @@  discard block
 block discarded – undo
200 200
  *     Code d'erreur
201 201
  **/
202 202
 function http_status($status) {
203
-	http_response_code($status);
203
+    http_response_code($status);
204 204
 }
205 205
 
206 206
 // Retourne ce qui va bien pour que le navigateur ne mette pas la page en cache
207 207
 function http_no_cache() {
208
-	if (headers_sent()) {
209
-		spip_log('http_no_cache arrive trop tard');
210
-
211
-		return;
212
-	}
213
-	$charset = empty($GLOBALS['meta']['charset']) ? 'utf-8' : $GLOBALS['meta']['charset'];
214
-
215
-	// selon http://developer.apple.com/internet/safari/faq.html#anchor5
216
-	// il faudrait aussi pour Safari
217
-	// header("Cache-Control: post-check=0, pre-check=0", false)
218
-	// mais ca ne respecte pas
219
-	// http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.9
220
-
221
-	header("Content-Type: text/html; charset=$charset");
222
-	header('Expires: 0');
223
-	header('Last-Modified: ' . gmdate('D, d M Y H:i:s') . ' GMT');
224
-	header('Cache-Control: no-cache, must-revalidate');
225
-	header('Pragma: no-cache');
208
+    if (headers_sent()) {
209
+        spip_log('http_no_cache arrive trop tard');
210
+
211
+        return;
212
+    }
213
+    $charset = empty($GLOBALS['meta']['charset']) ? 'utf-8' : $GLOBALS['meta']['charset'];
214
+
215
+    // selon http://developer.apple.com/internet/safari/faq.html#anchor5
216
+    // il faudrait aussi pour Safari
217
+    // header("Cache-Control: post-check=0, pre-check=0", false)
218
+    // mais ca ne respecte pas
219
+    // http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.9
220
+
221
+    header("Content-Type: text/html; charset=$charset");
222
+    header('Expires: 0');
223
+    header('Last-Modified: ' . gmdate('D, d M Y H:i:s') . ' GMT');
224
+    header('Cache-Control: no-cache, must-revalidate');
225
+    header('Pragma: no-cache');
226 226
 }
Please login to merge, or discard this patch.
prive/formulaires/configurer_avertisseur.php 1 patch
Indentation   +25 added lines, -25 removed lines patch added patch discarded remove patch
@@ -11,37 +11,37 @@
 block discarded – undo
11 11
 \***************************************************************************/
12 12
 
13 13
 if (!defined('_ECRIRE_INC_VERSION')) {
14
-	return;
14
+    return;
15 15
 }
16 16
 include_spip('inc/presentation');
17 17
 
18 18
 function formulaires_configurer_avertisseur_charger_dist() {
19
-	$valeurs = [];
20
-	foreach (
21
-		[
22
-			'articles_modif',
23
-		] as $m
24
-	) {
25
-		$valeurs[$m] = $GLOBALS['meta'][$m];
26
-	}
27
-
28
-	return $valeurs;
19
+    $valeurs = [];
20
+    foreach (
21
+        [
22
+            'articles_modif',
23
+        ] as $m
24
+    ) {
25
+        $valeurs[$m] = $GLOBALS['meta'][$m];
26
+    }
27
+
28
+    return $valeurs;
29 29
 }
30 30
 
31 31
 
32 32
 function formulaires_configurer_avertisseur_traiter_dist() {
33
-	$res = ['editable' => true];
34
-	foreach (
35
-		[
36
-			'articles_modif',
37
-		] as $m
38
-	) {
39
-		if (!is_null($v = _request($m))) {
40
-			ecrire_meta($m, $v == 'oui' ? 'oui' : 'non');
41
-		}
42
-	}
43
-
44
-	$res['message_ok'] = _T('config_info_enregistree');
45
-
46
-	return $res;
33
+    $res = ['editable' => true];
34
+    foreach (
35
+        [
36
+            'articles_modif',
37
+        ] as $m
38
+    ) {
39
+        if (!is_null($v = _request($m))) {
40
+            ecrire_meta($m, $v == 'oui' ? 'oui' : 'non');
41
+        }
42
+    }
43
+
44
+    $res['message_ok'] = _T('config_info_enregistree');
45
+
46
+    return $res;
47 47
 }
Please login to merge, or discard this patch.