source: spip-zone/_core_/plugins/forum/action/editer_forum.php @ 93640

Last change on this file since 93640 was 93640, checked in by marcimat@…, 5 years ago

Meilleure compatibilité avec PSR-2 et nos règles d'écriture, en appliquant
différents fix avec php-cs-fixers. Fixers appliqués ici :

'encoding', utf8
'eof_ending',
un saut de ligne en fin de fichier
'elseif', elseif plutôt que else if
'function_call_space',
espaces sur fonctions
'function_declaration', espaces sur fonctions
'function_typehint_space',
espaces sur fonctions
'linefeed', sauts de ligne \n uniquement
'lowercase_constants',
true, false, null en munuscule
'lowercase_keywords', mots clés PHP en lowercase
'method_argument_space',
espaces sur appels de fonctions
'multiple_use', use unique sur fonctions anonymes
'newline_after_open_tag',
ouverture de php… et c'est tout sur cette ligne
'operators_spaces', espaces de part et d'autres des opérateurs binaires
'parenthesis',
pas d'espace juste après parenthèse ouvrante, ou avant parenthèse fermante
'php_closing_tag', pas de fermeture de php
'short_tag',
tag PHP corrects
'trailing_spaces', pas d'espace qui traîne en fin de ligne
'visibility',
déclarer 'public / private / protected' sur les méthodes

File size: 3.0 KB
Line 
1<?php
2
3/***************************************************************************\
4 *  SPIP, Systeme de publication pour l'internet                           *
5 *                                                                         *
6 *  Copyright (c) 2001-2014                                                *
7 *  Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James  *
8 *                                                                         *
9 *  Ce programme est un logiciel libre distribue sous licence GNU/GPL.     *
10 *  Pour plus de details voir le fichier COPYING.txt ou l'aide en ligne.   *
11\***************************************************************************/
12
13if (!defined("_ECRIRE_INC_VERSION")) {
14        return;
15}
16include_spip('inc/modifier');
17
18// Nota: quand on edite un forum existant, il est de bon ton d'appeler
19// au prealable conserver_original($id_forum)
20// http://code.spip.net/@revision_forum
21if (!function_exists('revision_forum')) {
22        function revision_forum($id_forum, $c = false) {
23
24                $t = sql_fetsel("*", "spip_forum", "id_forum=" . intval($id_forum));
25                if (!$t) {
26                        spip_log("erreur forum $id_forum inexistant");
27
28                        return;
29                }
30
31                // Calculer l'invalideur des caches lies a ce forum
32                if ($t['statut'] == 'publie') {
33                        include_spip('inc/invalideur');
34                        $invalideur = array("id='forum/$id_forum'", "id='" . $t['objet'] . "/" . $t['id_objet'] . "'");
35                } else {
36                        $invalideur = '';
37                }
38
39                // Supprimer 'http://' tout seul
40                if (isset($c['url_site'])) {
41                        include_spip('inc/filtres');
42                        $c['url_site'] = vider_url($c['url_site'], false);
43                }
44
45                $err = objet_modifier_champs('forum', $id_forum,
46                        array(
47                                'nonvide' => array('titre' => _T('info_sans_titre')),
48                                'invalideur' => $invalideur
49                        ),
50                        $c);
51
52                $id_thread = intval($t["id_thread"]);
53                $cles = array();
54                foreach (array('id_objet', 'objet') as $k) {
55                        if (isset($c[$k]) and $c[$k]) {
56                                $cles[$k] = $c[$k];
57                        }
58                }
59
60                // Modification des id_article etc
61                // (non autorise en standard mais utile pour des crayons)
62                // on deplace tout le thread {sauf les originaux}.
63                if (count($cles) and $id_thread) {
64                        spip_log("update thread id_thread=$id_thread avec " . var_export($cles, 1), 'forum.' . _LOG_INFO_IMPORTANTE);
65                        sql_updateq("spip_forum", $cles, "id_thread=" . $id_thread . " AND statut!='original'");
66                        // on n'affecte pas $r, car un deplacement ne change pas l'auteur
67                }
68
69                // s'il y a vraiment eu une modif et que le message est public
70                // on enregistre le nouveau date_thread
71                if ($err === '' and $t['statut'] == 'publie') {
72                        // on ne stocke ni le numero IP courant ni le nouvel id_auteur
73                        // dans le message modifie (trop penible a l'usage) ; mais du
74                        // coup attention a la responsabilite editoriale
75                        /*
76                        sql_updateq('spip_forum', array('ip'=>($GLOBALS['ip']), 'id_auteur'=>($GLOBALS['visiteur_session']['id_auteur'])),"id_forum=".intval($id_forum));
77                        */
78
79                        // & meme ca ca pourrait etre optionnel
80                        sql_updateq("spip_forum", array("date_thread" => date('Y-m-d H:i:s')), "id_thread=" . $id_thread);
81                }
82        }
83}
Note: See TracBrowser for help on using the repository browser.