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
9 if (!defined("_ECRIRE_INC_VERSION")) return;
11 function cfg_config_jqueryui_charger(&$cfg){
12 $valeurs = &$cfg->val
['plugins'];
13 if(!is_array($valeurs))
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;
22 function cfg_config_jqueryui_pre_traiter(&$cfg){
23 $valeurs = &$cfg->val
['plugins'];
24 if(!is_array($valeurs))
26 $plugins_pipeline = pipeline('jqueryui_forcer');
27 if(!is_array($plugins_pipeline))
28 $plugins_pipeline = array();
30 $dependance_core = array(
33 'jquery.ui.datepicker'
37 * Dépendances à widget
38 * Si un autre plugin est dépendant d'un de ceux là, on ne les ajoute pas
40 $dependance_widget = array(
42 'jquery.ui.accordion',
43 'jquery.ui.autocomplete',
47 'jquery.ui.progressbar'
50 $dependance_mouse = array(
51 'jquery.ui.draggable',
52 'jquery.ui.droppable',
53 'jquery.ui.resizable',
54 'jquery.ui.selectable',
59 $dependance_position = array(
60 'jquery.ui.autocomplete',
64 $dependance_draggable = array(
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'
83 $valeurs = array_unique(array_merge($plugins_pipeline,$valeurs));
86 * Vérification des dépendances :
87 * On commence par le bas de l'échelle :
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");
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");
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");
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");
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");
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");
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");
124 set_request('plugins',$valeurs);
125 $cfg->val
['plugins'] = $valeurs;