1 | <?php |
---|
2 | |
---|
3 | |
---|
4 | /* |
---|
5 | * Plugin CFG pour SPIP |
---|
6 | * (c) toggg 2007, distribue sous licence GNU/GPL |
---|
7 | * Documentation et contact: http://www.spip-contrib.net/ |
---|
8 | * |
---|
9 | */ |
---|
10 | |
---|
11 | |
---|
12 | // restaure des messages serialises dans une meta 'cfg_message_{id_auteur}' |
---|
13 | // |
---|
14 | // si le formulaire cfg avait demande une redirection... |
---|
15 | // (et provient de cette redirection), il est possible |
---|
16 | // qu'il y ait un message a afficher |
---|
17 | function cfg_pre_charger_param_rediriger($valeur, &$cfg){ |
---|
18 | if ($messages = $GLOBALS['meta']['cfg_message_'.$GLOBALS['auteur_session']['id_auteur']]){ |
---|
19 | include_spip('inc/meta'); |
---|
20 | effacer_meta('cfg_message_'.$GLOBALS['auteur_session']['id_auteur']); |
---|
21 | if (defined('_COMPAT_CFG_192')) ecrire_metas(); |
---|
22 | $cfg->messages = array_merge($cfg->messages, unserialize($messages)); |
---|
23 | } |
---|
24 | } |
---|
25 | |
---|
26 | |
---|
27 | // Si le fond du formulaire demande expressement une redirection |
---|
28 | // par <!-- rediriger=1 -->, on stocke le message dans une meta |
---|
29 | // et on redirige le client, de maniere a charger la page |
---|
30 | // avec la nouvelle config (ce qui permet par exemple a Autorite |
---|
31 | // de controler d'eventuels conflits generes par les nouvelles autorisations) |
---|
32 | function cfg_post_traiter_param_rediriger($valeur, &$cfg){ |
---|
33 | if ($cfg->messages) { |
---|
34 | include_spip('inc/meta'); |
---|
35 | ecrire_meta('cfg_message_'.$GLOBALS['auteur_session']['id_auteur'], serialize($cfg->messages), 'non'); |
---|
36 | if (defined('_COMPAT_CFG_192')) ecrire_metas(); |
---|
37 | include_spip('inc/headers'); |
---|
38 | redirige_par_entete(parametre_url(self(),null,null,'&')); |
---|
39 | } |
---|
40 | } |
---|
41 | |
---|
42 | ?> |
---|