Changeset 75965 in spip-zone


Ignore:
Timestamp:
Sep 19, 2013, 9:14:40 AM (6 years ago)
Author:
kent1@…
Message:

Les noms des fichiers jquery.effects.* ont changé en jquery.ui.effect-* dans une version précédente, on en tient compte de manière transparente

De la même manière, trois nouveaux plugins jQueryUI ont fait leur apparition :

  • jquery.ui.menus;
  • jquery.ui.spinner;
  • jquery.ui.tooltipe;

On ajoute leurs css s'ils sont appelés.
On les prends en compte dans la gestion des dépendances.

On en profite pour refaire un tour de la gestion de dépendances pour être sûr de répondre à tous les cas et notamment réparer les effets.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • _core_/plugins/jquery_ui/jqueryui_pipelines.php

    r74845 r75965  
    1313        // Modules demandés par le pipeline jqueryui_plugins
    1414        is_array($jqueryui_plugins = pipeline('jqueryui_plugins', array())) || $jqueryui_plugins = array();
     15       
     16        // Gestion des renommages de plugins jqueryui
     17        foreach ($jqueryui_plugins as $nb => $val) {
     18                if(preg_match('/jquery\.effects\..*/',$val))
     19                        $jqueryui_plugins[$nb] = str_replace('jquery.effects.','jquery.ui.effect-',$val);
     20        }
    1521        // gestion des dépendances des modules demandés
    1622        is_array($jqueryui_plugins = jqueryui_dependances($jqueryui_plugins)) || $jqueryui_plugins = array();
     
    5561                                                'jquery.ui.datepicker',
    5662                                                'jquery.ui.dialog',
     63                                                'jquery.ui.menus',
    5764                                                'jquery.ui.progressbar',
    5865                                                'jquery.ui.resizable',
    5966                                                'jquery.ui.selectable',
    6067                                                'jquery.ui.slider',
     68                                                'jquery.ui.spinner',
    6169                                                'jquery.ui.tabs',
     70                                                'jquery.ui.tooltip',
    6271                                                'jquery.ui.theme'
    6372                                                );
     
    101110                                                        'jquery.ui.widget',
    102111                                                        'jquery.ui.datepicker'
    103         );
     112                                                );
    104113
    105114        /**
     
    108117         */
    109118        $dependance_widget = array(
    110                                                         'jquery.ui.mouse',
    111119                                                        'jquery.ui.accordion',
    112120                                                        'jquery.ui.autocomplete',
    113121                                                        'jquery.ui.button',
    114122                                                        'jquery.ui.dialog',
     123                                                        'jquery.ui.mouse',
     124                                                        'jquery.ui.menu',
     125                                                        'jquery.ui.progressbar',
    115126                                                        'jquery.ui.tabs',
    116                                                         'jquery.ui.progressbar'
    117                                                         );
     127                                                        'jquery.ui.tooltip'
     128                                                );
    118129
    119130        $dependance_mouse = array(
     
    122133                                                        'jquery.ui.resizable',
    123134                                                        'jquery.ui.selectable',
    124                                                         'jquery.ui.sortable',
    125                                                         'jquery.ui.slider'
     135                                                        'jquery.ui.slider',
     136                                                        'jquery.ui.sortable'
    126137                                                );
    127138
     
    129140                                                        'jquery.ui.autocomplete',
    130141                                                        'jquery.ui.dialog',
    131                                                         );
     142                                                        'jquery.ui.menu',
     143                                                        'jquery.ui.tooltip'
     144                                                );
     145
     146        $dependance_button = array(
     147                                                        'jquery.ui.dialog',
     148                                                        'jquery.ui.spinner'
     149                                                );
     150
     151        $dependance_menu = array(
     152                                                        'jquery.ui.autocomplete'
     153                                                );
    132154
    133155        $dependance_draggable = array(
    134156                                                        'jquery.ui.droppable'
    135                                                         );
     157                                                );
     158       
     159        $dependance_resizable = array(
     160                                                        'jquery.ui.dialog'
     161                                                );
    136162
    137163        $dependance_effects = array(
    138                                                         'jquery.effects.blind',
    139                                                         'jquery.effects.bounce',
    140                                                         'jquery.effects.clip',
    141                                                         'jquery.effects.drop',
    142                                                         'jquery.effects.explode',
    143                                                         'jquery.effects.fold',
    144                                                         'jquery.effects.highlight',
    145                                                         'jquery.effects.pulsate',
    146                                                         'jquery.effects.scale',
    147                                                         'jquery.effects.shake',
    148                                                         'jquery.effects.slide',
    149                                                         'jquery.effects.transfer'
     164                                                        'jquery.ui.effect-blind',
     165                                                        'jquery.ui.effect-bounce',
     166                                                        'jquery.ui.effect-clip',
     167                                                        'jquery.ui.effect-drop',
     168                                                        'jquery.ui.effect-explode',
     169                                                        'jquery.ui.effect-fade',
     170                                                        'jquery.ui.effect-fold',
     171                                                        'jquery.ui.effect-highlight',
     172                                                        'jquery.ui.effect-pulsate',
     173                                                        'jquery.ui.effect-scale',
     174                                                        'jquery.ui.effect-shake',
     175                                                        'jquery.ui.effect-slide',
     176                                                        'jquery.ui.effect-transfer'
    150177                                                );
    151178
     
    156183         *
    157184         * On commence par le bas de l'échelle :
     185         * - button
     186         * - menu
    158187         * - draggable
    159188         * - position
     
    163192         * - effects
    164193         */
     194        if(count($intersect = array_intersect($plugins,$dependance_resizable)) > 0){
     195                $keys = array_keys($intersect);
     196                array_splice($plugins,$keys[0], 0, "jquery.ui.resizable");
     197        }
     198        if(count($intersect = array_intersect($plugins,$dependance_button)) > 0){
     199                $keys = array_keys($intersect);
     200                array_splice($plugins,$keys[0], 0, "jquery.ui.button");
     201        }
     202        if(count($intersect = array_intersect($plugins,$dependance_menu)) > 0){
     203                $keys = array_keys($intersect);
     204                array_splice($plugins,$keys[0], 0, "jquery.ui.menu");
     205        }
    165206        if(count($intersect = array_intersect($plugins,$dependance_draggable)) > 0){
    166207                $keys = array_keys($intersect);
     
    185226        if(count($intersect = array_intersect($plugins,$dependance_effects)) > 0){
    186227                $keys = array_keys($intersect);
    187                 array_splice($plugins,$keys[0], 0, "jquery.effects.core");
     228                array_splice($plugins,$keys[0], 0, "jquery.ui.effect");
    188229        }
    189230        $plugins = array_unique($plugins);
Note: See TracChangeset for help on using the changeset viewer.