[SPIP] +2.1.12
[velocampus/web/www.git] / www / plugins / auto / jquery_ui / formulaires / config_jqueryui_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_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_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 'jquery.ui.mouse',
32 'jquery.ui.widget',
33 'jquery.ui.datepicker'
34 );
35
36 /**
37 * Dépendances à widget
38 * Si un autre plugin est dépendant d'un de ceux là, on ne les ajoute pas
39 */
40 $dependance_widget = array(
41 'jquery.ui.mouse',
42 'jquery.ui.accordion',
43 'jquery.ui.autocomplete',
44 'jquery.ui.button',
45 'jquery.ui.dialog',
46 'jquery.ui.tabs',
47 'jquery.ui.progressbar'
48 );
49
50 $dependance_mouse = array(
51 'jquery.ui.draggable',
52 'jquery.ui.droppable',
53 'jquery.ui.resizable',
54 'jquery.ui.selectable',
55 'jquery.ui.sortable',
56 'jquery.ui.slider'
57 );
58
59 $dependance_position = array(
60 'jquery.ui.autocomplete',
61 'jquery.ui.dialog',
62 );
63
64 $dependance_draggable = array(
65 'jquery.ui.droppable'
66 );
67
68 $dependance_effects = array(
69 'jquery.effects.blind',
70 'jquery.effects.bounce',
71 'jquery.effects.clip',
72 'jquery.effects.drop',
73 'jquery.effects.explode',
74 'jquery.effects.fold',
75 'jquery.effects.highlight',
76 'jquery.effects.pulsate',
77 'jquery.effects.scale',
78 'jquery.effects.shake',
79 'jquery.effects.slide',
80 'jquery.effects.transfer'
81 );
82
83 $valeurs = array_unique(array_merge($plugins_pipeline,$valeurs));
84
85 /**
86 * Vérification des dépendances :
87 * On commence par le bas de l'échelle :
88 * - draggable
89 * - position
90 * - mouse
91 * - widget
92 * - core
93 * - effects
94 */
95 if((count($intersect = array_intersect($valeurs,$dependance_draggable)) > 0) && !in_array('jquery.ui.draggable',$valeurs)){
96 $keys = array_keys($intersect);
97 array_splice($valeurs,$keys[0], 0, "jquery.ui.draggable");
98 }
99 if((count($intersect = array_intersect($valeurs,$dependance_position)) > 0) && !in_array('jquery.ui.position',$valeurs)){
100 $keys = array_keys($intersect);
101 array_splice($valeurs,$keys[0], 0, "jquery.ui.position");
102 }
103 if((count($intersect = array_intersect($valeurs,$dependance_mouse)) > 0) && !in_array('jquery.ui.mouse',$valeurs)){
104 $keys = array_keys($intersect);
105 array_splice($valeurs,$keys[0], 0, "jquery.ui.mouse");
106 }
107 if((count($intersect = array_intersect($valeurs,$dependance_widget)) > 0) && !in_array('jquery.ui.widget',$valeurs)){
108 $keys = array_keys($intersect);
109 array_splice($valeurs,$keys[0], 0, "jquery.ui.widget");
110 }
111 if((count($intersect = array_intersect($valeurs,$dependance_core)) > 0) && !in_array('jquery.ui.core',$valeurs)){
112 $keys = array_keys($intersect);
113 array_splice($valeurs,$keys[0], 0, "jquery.ui.core");
114 }
115 if((count($intersect = array_intersect($valeurs,$dependance_effects)) > 0) && !in_array('jquery.effects.core',$valeurs)){
116 $keys = array_keys($intersect);
117 array_splice($valeurs,$keys[0], 0, "jquery.effects.core");
118 }
119 if((count($intersect = array_intersect($valeurs,$dependance_effects)) > 0) && !in_array('jquery.effects.core',$valeurs)){
120 $keys = array_keys($intersect);
121 array_splice($valeurs,$keys[0], 0, "jquery.effects.core");
122 }
123
124 set_request('plugins',$valeurs);
125 $cfg->val['plugins'] = $valeurs;
126 }
127
128 ?>