[SPIP] ~maj v2.1.25-->2.1.26
[velocampus/web/www.git] / www / plugins / auto / cfg / action / crayons_config_store.php
1 <?php
2 /**
3 * Plugin générique de configuration pour SPIP
4 *
5 * @license GNU/GPL
6 * @package plugins
7 * @subpackage cfg
8 * @category outils
9 * @copyright (c) toggg, marcimat 2007-2008
10 * @link http://www.spip-contrib.net/
11 * @version $Id: crayons_config_store.php 53409 2011-10-13 20:42:57Z yffic@lefourneau.com $
12 */
13 if (!defined("_ECRIRE_INC_VERSION")) return;
14
15
16 /**
17 * on reprend la fonction de {@link http://zone.spip.org/trac/spip-zone/browser/_plugins_/crayons/action/crayons_store.php crayons}...
18 *
19 * @return Array
20 */
21 function action_crayons_config_store_dist() {
22 include_spip('cfg_fonctions');
23 include_spip('action/crayons_store');
24 // on donne une autre fonction de traitement des donnees
25 return action_crayons_store_args('crayons_config_store');
26 }
27
28 /**
29 * pour le traitement, on appelle {@link http://zone.spip.org/trac/spip-zone/browser/_plugins_/crayons/action/crayons_store.php crayons_store} avec 2 fonctions
30 * - la premiere pour recuperer la valeur avant modification
31 * - la seconde pour realiser les modifications
32 *
33 * @return Array
34 */
35 function crayons_config_store() {
36 $options = array(
37 'f_get_valeur' => 'crayons_config_store_get_valeur',
38 'f_set_modifs' => 'crayons_config_store_set_modifs');
39 return crayons_store($options);
40 }
41
42 /**
43 * recuperer la valeur de la config demandee
44 *
45 * @param mixed $content # inutilisé
46 * @param Array $regs
47 * @return Array
48 */
49 function crayons_config_store_get_valeur($content, $regs) {
50 list(,$crayon,$type,$modele,$id) = $regs;
51 $config = cfg_crayon2config($modele);
52 $val = lire_config($config);
53 return array('config' => $val);
54 }
55
56 /**
57 * sauver les modifications de configs
58 *
59 * @param Array $modifs
60 * @param Array $return
61 * @return Array
62 */
63 function crayons_config_store_set_modifs($modifs, $return) {
64 foreach ($modifs as $modif) {
65 list($type, $modele, $id, $content, $wid) = $modif;
66 $config = cfg_crayon2config($modele);
67 ecrire_config($config, $content['config']);
68 }
69 return $return;
70 }
71
72
73
74 ?>