[SPIP] +2.1.12
[velocampus/web/www.git] / www / plugins / auto / jquery_ui / formulaires / config_jqueryui_20_fonctions.php
1 <?php
2 /**
3 *
4 * Fonction de chargement du formulaire de configuration CFG
5 * On ajoute aux champs déjà dans la meta ce qui est activé par le pipeline
6 * jqueryui_forcer
7 *
8 */
9 if (!defined("_ECRIRE_INC_VERSION")) return;
10
11 function cfg_config_jqueryui_20_charger(&$cfg){
12 $valeurs = &$cfg->val['plugins'];
13 if(!is_array($valeurs))
14 $valeurs = array();
15 $plugins_pipeline = pipeline('jqueryui_forcer');
16 if(!is_array($plugins_pipeline))
17 $plugins_pipeline = array();
18 $cfg->val['plugins'] = array_unique(array_merge($plugins_pipeline,$valeurs));
19 $cfg->val['plugins_disable'] = $plugins_pipeline;
20 }
21
22 function cfg_config_jqueryui_20_pre_traiter(&$cfg){
23 $valeurs = &$cfg->val['plugins'];
24 if(!is_array($valeurs))
25 $valeurs = array();
26 $plugins_pipeline = pipeline('jqueryui_forcer');
27 if(!is_array($plugins_pipeline))
28 $plugins_pipeline = array();
29
30 $dependance_core = array(
31 'ui.accordion',
32 'ui.datepicker',
33 'ui.dialog',
34 'ui.draggable',
35 'ui.droppable',
36 'ui.resizable',
37 'ui.selectable',
38 'ui.slider',
39 'ui.sortable',
40 'ui.tabs'
41 );
42
43 $dependance_draggable = array(
44 'ui.droppable',
45 'ui.dialog'
46 );
47
48 $dependance_resizable = array(
49 'ui.dialog'
50 );
51
52 $dependance_effects = array(
53 'effects.blind',
54 'effects.bounce',
55 'effects.clip',
56 'effects.drop',
57 'effects.explode',
58 'effects.fold',
59 'effects.highlight',
60 'effects.pulsate',
61 'effects.scale',
62 'effects.shake',
63 'effects.slide',
64 'effects.transfer'
65 );
66
67 $valeurs = array_unique(array_merge($plugins_pipeline,$valeurs));
68
69 /**
70 * Vérification des dépendances :
71 * On commence par le bas de l'échelle :
72 * - draggable
73 * - resizable
74 * - core
75 * - effects
76 */
77 if((count($intersect = array_intersect($valeurs,$dependance_draggable)) > 0) && !in_array('ui.draggable',$valeurs)){
78 $keys = array_keys($intersect);
79 array_splice($valeurs,$keys[0], 0, "ui.draggable");
80 }
81 if((count($intersect = array_intersect($valeurs,$dependance_resizable)) > 0) && !in_array('ui.resizable',$valeurs)){
82 $keys = array_keys($intersect);
83 array_splice($valeurs,$keys[0], 0, "ui.resizable");
84 }
85 if((count($intersect = array_intersect($valeurs,$dependance_core)) > 0) && !in_array('ui.core',$valeurs)){
86 $keys = array_keys($intersect);
87 array_splice($valeurs,$keys[0], 0, "ui.core");
88 }
89 if((count($intersect = array_intersect($valeurs,$dependance_effects)) > 0) && !in_array('effects.core',$valeurs)){
90 $keys = array_keys($intersect);
91 array_splice($valeurs,$keys[0], 0, "effects.core");
92 }
93
94 set_request('plugins',$valeurs);
95 $cfg->val['plugins'] = $valeurs;
96 }
97
98 ?>