Changeset 105016 in spip-zone


Ignore:
Timestamp:
Jun 28, 2017, 12:30:15 PM (2 years ago)
Author:
marcimat@…
Message:

La version 2.4+ ne sera compatible que SPIP 3.2. On évite de conserver du code obsolète dans la Fabrique.

Location:
_plugins_/fabrique/trunk
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • _plugins_/fabrique/trunk/changelog.txt

    r101112 r105016  
    33-----------------------------------
    44
     5
     62.4.0-dev le xxxx
     7-------------------
     8* Nécessite SPIP 3.2 minimum
     9
     102.3.11 le 28 06 2017
     11-------------------
     12* Compatibilité SPIP 3.2
     13
     142.3.10 le 26 06 2017
     15-------------------
     16* Compatibilité SPIP 3.2 des JS
    517
    6182.3.9 le 13 12 2016
  • _plugins_/fabrique/trunk/javascript/formulaire_fabrique.js.html

    r102996 r105016  
    1 (function($) {
    2 $(document).ready(function(){
     1jQuery(function($){
    32
    43        function formulaire_fabrique_interactions($is_ajax) {
     
    3433                });
    3534
    36                 /* Installer les onglets et accordions */
    37                 [(#SPIP_VERSION|spip_version_compare{3.2-dev,<}|oui)
    38                 $.getScript("[(#CHEMIN{javascript/ui/core.js}|timestamp)]", function(){
    39                 $.getScript("[(#CHEMIN{javascript/ui/widget.js}|timestamp)]", function(){
    40                 $.getScript("[(#CHEMIN{javascript/ui/mouse.js}|timestamp)]", function(){
    41                 $.getScript("[(#CHEMIN{javascript/ui/tabs.js}|timestamp)]", function(){
    42                 $.getScript("[(#CHEMIN{javascript/ui/accordion.js}|timestamp)]", function(){
    43                 $.getScript("[(#CHEMIN{javascript/ui/sortable.js}|timestamp)]", function(){
    44                 ]
    45                         /*
    46                                 ACCORDION avant TABS sinon la largeur de
    47                                 l'accordion actif (autre que le premier)
    48                                 est mal calcule sur un onglet caché
     35                /*
     36                        Installer les onglets et accordions
    4937
    50                                 Pour les accordions & tabs, on sauve
    51                                 le dernier ouvert, et on ouvre ceux la
    52                                 au chargement de la page
    53                         */
    54                         if ($.fn.accordion) {
    55                                 $("#tabs > div > .parties").accordion({
    56                                         collapsible: true,
    57                                         heightStyle: "content",
     38                        ACCORDION avant TABS sinon la largeur de
     39                        l'accordion actif (autre que le premier)
     40                        est mal calcule sur un onglet caché
     41
     42                        Pour les accordions & tabs, on sauve
     43                        le dernier ouvert, et on ouvre ceux la
     44                        au chargement de la page
     45                */
     46                if ($.fn.accordion) {
     47                        $("#tabs > div > .parties").accordion({
     48                                collapsible: true,
     49                                heightStyle: "content",
     50                                create: function(event, ui) {
     51                                        tab_id = $(this).attr('id').substring(7);
     52                                        i = Number($("#open_accordion_" + tab_id).val())
     53                                        $(this).accordion("option", "active", i);
     54
     55                                },
     56                                activate: function(event, ui) {
     57                                        tab_id = $(this).attr('id').substring(7);
     58                                        $('#open_accordion_' + tab_id).val( $(this).accordion('option', 'active') );
     59                                }
     60                        });
     61
     62                        $("#tabs > div > .parties .parties").accordion({
     63                                collapsible: true,
     64                                heightStyle: "content",
     65                                active: false,
     66                                header: '> div > h4'
     67                        })
     68                        .sortable({
     69                                axis: "y",
     70                                handle: "h4",
     71                                stop: function( event, ui ) {
     72                                        // IE doesn't register the blur when sorting
     73                                        // so trigger focusout handlers to remove .ui-state-focus
     74                                        ui.item.children( "h4" ).triggerHandler( "focusout" );
     75                                },
     76                                update: function(event, ui) {
     77                                        tab = ui.item.parent().data('tab');
     78                                        var champOrder = $(this).sortable('toArray').toString();
     79                                        form = $(this).closest('form');
     80                                        form.find('div:first')
     81                                                .prepend('<input type="hidden" name="f_action[champorder][' + tab + ']" value="'+ champOrder + '">');
     82                                        form.submit();
     83                                }
     84                        });
     85                }
     86
     87                if ($.fn.tabs) {
     88                        $("#tabs").tabs({
     89                                        active: $('#open_tab').val(),
     90                                        beforeActivate: function(event, ui) {
     91                                                $('#open_tab').val(ui.newTab.index());
     92                                        },
    5893                                        create: function(event, ui) {
    59                                                 tab_id = $(this).attr('id').substring(7);
    60                                                 i = Number($("#open_accordion_" + tab_id).val())
    61                                                 $(this).accordion("option", "active", i);
    62 
    63                                         },
    64                                         activate: function(event, ui) {
    65                                                 tab_id = $(this).attr('id').substring(7);
    66                                                 $('#open_accordion_' + tab_id).val( $(this).accordion('option', 'active') );
     94                                                /* Se remettre en haut du formulaire après un coup d'ajax
     95                                                   Ce que fait SPIP habituellement, mais accordion() et tabs()
     96                                                   arrivent après et les navigateurs se décalent
     97                                                */
     98                                                if ($is_ajax) {
     99                                                        $('.formulaire_fabriquer_plugin').positionner(false);
     100                                                }
    67101                                        }
    68                                 });
    69 
    70                                 $("#tabs > div > .parties .parties").accordion({
    71                                         collapsible: true,
    72                                         heightStyle: "content",
    73                                         active: false,
    74                                         header: '> div > h4'
    75102                                })
    76                                 .sortable({
    77                                         axis: "y",
    78                                         handle: "h4",
    79                                         stop: function( event, ui ) {
    80                                                 // IE doesn't register the blur when sorting
    81                                                 // so trigger focusout handlers to remove .ui-state-focus
    82                                                 ui.item.children( "h4" ).triggerHandler( "focusout" );
    83                                         },
     103                                .find( ".ui-tabs-nav" ).sortable({
     104                                        axis: "x",
    84105                                        update: function(event, ui) {
    85                                                 tab = ui.item.parent().data('tab');
    86                                                 var champOrder = $(this).sortable('toArray').toString();
     106                                                var tabOrder = $(this).sortable('toArray').toString();
    87107                                                form = $(this).closest('form');
    88108                                                form.find('div:first')
    89                                                         .prepend('<input type="hidden" name="f_action[champorder][' + tab + ']" value="'+ champOrder + '">');
     109                                                        .prepend('<input type="hidden" name="f_action[taborder]" value="' + tabOrder + '">');
    90110                                                form.submit();
    91111                                        }
    92112                                });
    93                         }
    94                        
    95                         if ($.fn.tabs) {
    96                                 $("#tabs").tabs({
    97                                                 active: $('#open_tab').val(),
    98                                                 beforeActivate: function(event, ui) {
    99                                                         $('#open_tab').val(ui.newTab.index());
    100                                                 },
    101                                                 create: function(event, ui) {
    102                                                         /* Se remettre en haut du formulaire après un coup d'ajax
    103                                                            Ce que fait SPIP habituellement, mais accordion() et tabs()
    104                                                            arrivent après et les navigateurs se décalent
    105                                                         */
    106                                                         if ($is_ajax) {
    107                                                                 $('.formulaire_fabriquer_plugin').positionner(false);
    108                                                         }
    109                                                 }
    110                                         })
    111                                         .find( ".ui-tabs-nav" ).sortable({
    112                                                 axis: "x",
    113                                                 update: function(event, ui) {
    114                                                         var tabOrder = $(this).sortable('toArray').toString();
    115                                                         form = $(this).closest('form');
    116                                                         form.find('div:first')
    117                                                                 .prepend('<input type="hidden" name="f_action[taborder]" value="' + tabOrder + '">');
    118                                                         form.submit();
    119                                                 }
    120                                         });
    121                         }
    122                 [(#SPIP_VERSION|spip_version_compare{3.2-dev,<}|oui)
    123                 })})})})})});
    124                 ]
     113                }
     114
    125115
    126116                <BOUCLE_skeleditor(CONDITION){si #PLUGIN{skeleditor}}>
     
    172162
    173163});
    174 })(jQuery);
  • _plugins_/fabrique/trunk/paquet.xml

    r103720 r105016  
    22        prefix="fabrique"
    33        categorie="outil"
    4         version="2.3.10-dev"
     4        version="2.4.0-dev"
    55        etat="stable"
    6         compatibilite="[3.1.0;3.1.*]"
     6        compatibilite="[3.2.0-beta;3.2.*]"
    77        logo="prive/themes/spip/images/fabrique-64.png"
    88        documentation="https://contrib.spip.net/?article4134"
Note: See TracChangeset for help on using the changeset viewer.