WordPress.org

Make WordPress Core

Ticket #10021: 10021.2.diff

File 10021.2.diff, 17.7 KB (added by Denis-de-Bernardy, 6 years ago)

not finished yet...

  • wp-admin/js/common.dev.js

     
    44adminMenu = { 
    55 
    66        init : function() { 
    7                 $('#adminmenu div.wp-menu-toggle').each( function() { 
    8                         if ( $(this).siblings('.wp-submenu').length ) 
    9                                 $(this).click(function(){ adminMenu.toggle( $(this).siblings('.wp-submenu') ); }); 
     7                $('#adminmenu').find('div.wp-menu-toggle').each( function() { 
     8                        if ( $(this).siblings('div.wp-submenu').length ) 
     9                                $(this).click(function(){ adminMenu.toggle( $(this).siblings('div.wp-submenu') ); }); 
    1010                        else 
    1111                                $(this).hide(); 
    1212                }); 
    13  
     13                logScript("$('#adminmenu div.wp-menu-toggle').each"); 
     14                 
    1415                this.favorites(); 
    15  
     16                logScript("this.favorites();"); 
     17                 
    1618                $('a.separator').click(function(){ 
    1719                        if ( $('body').hasClass('folded') ) { 
    1820                                adminMenu.fold(1); 
     
    2325                        } 
    2426                        return false; 
    2527                }); 
    26  
     28                logScript("$('a.separator').click"); 
     29                 
    2730                if ( $('body').hasClass('folded') ) { 
    2831                        this.fold(); 
    2932                } 
     33                logScript("$('body').hasClass('folded')"); 
     34                 
    3035                this.restoreMenuState(); 
     36                logScript("this.restoreMenuState();"); 
    3137        }, 
    3238 
    3339        restoreMenuState : function() { 
    34                 $('#adminmenu li.wp-has-submenu').each(function(i, e) { 
     40                $('#adminmenu').find('li.wp-has-submenu').each(function(i, e) { 
    3541                        var v = getUserSetting( 'm'+i ); 
    3642                        if ( $(e).hasClass('wp-has-current-submenu') ) return true; // leave the current parent open 
    3743 
     
    4450 
    4551                el['slideToggle'](150, function(){el.css('display','');}).parent().toggleClass( 'wp-menu-open' ); 
    4652 
    47                 $('#adminmenu li.wp-has-submenu').each(function(i, e) { 
     53                $('#adminmenu').find('li.wp-has-submenu').each(function(i, e) { 
    4854                        var v = $(e).hasClass('wp-menu-open') ? 'o' : 'c'; 
    4955                        setUserSetting( 'm'+i, v ); 
    5056                }); 
     
    5561        fold : function(off) { 
    5662                if (off) { 
    5763                        $('body').removeClass('folded'); 
    58                         $('#adminmenu li.wp-has-submenu').unbind(); 
     64                        $('#adminmenu').find('li.wp-has-submenu').unbind(); 
    5965                } else { 
    6066                        $('body').addClass('folded'); 
    61                         $('#adminmenu li.wp-has-submenu').hoverIntent({ 
     67                        $('#adminmenu').find('li.wp-has-submenu').hoverIntent({ 
    6268                                over: function(e){ 
    6369                                        var m, b, h, o, f; 
    64                                         m = $(this).find('.wp-submenu'); 
     70                                        m = $(this).find('div.wp-submenu'); 
    6571                                        b = m.parent().offset().top + m.height() + 1; // Bottom offset of the menu 
    6672                                        h = $('#wpwrap').height(); // Height of the entire page 
    6773                                        o = 60 + b - h; 
     
    7682                                        } 
    7783                                        m.addClass('sub-open'); 
    7884                                }, 
    79                                 out: function(){ $(this).find('.wp-submenu').removeClass('sub-open').css({'marginTop':''}); }, 
     85                                out: function(){ $(this).find('div.wp-submenu').removeClass('sub-open').css({'marginTop':''}); }, 
    8086                                timeout: 220, 
    8187                                sensitivity: 8, 
    8288                                interval: 100 
     
    9399        } 
    94100}; 
    95101 
    96 $(document).ready(function(){adminMenu.init();}); 
     102$(document).ready(function(){logScript('adminMenu.init()');adminMenu.init();logScript('end adminMenu.init()');}); 
    97103 
    98104// show/hide/save table columns 
    99105columns = { 
    100106        init : function() { 
    101                 $('.hide-column-tog').click( function() { 
     107                $('input.hide-column-tog').click( function() { 
    102108                        var column = $(this).val(), show = $(this).attr('checked'); 
    103109                        if ( show ) { 
    104110                                $('.column-' + column).show(); 
     
    120126        } 
    121127} 
    122128 
    123 $(document).ready(function(){columns.init();}); 
     129$(document).ready(function(){logScript('columns.init()');columns.init();logScript('end columns.init()');}); 
    124130 
    125131})(jQuery); 
    126132 
     
    140146        } 
    141147}; 
    142148 
    143 jQuery(document).ready( function($) { 
     149jQuery(document).ready( function($) {logScript('commons.ready()'); 
    144150        var lastClicked = false, checks, first, last, checked; 
    145151 
    146152        // pulse 
    147153        $('.fade').animate( { backgroundColor: '#ffffe0' }, 300).animate( { backgroundColor: '#fffbcc' }, 300).animate( { backgroundColor: '#ffffe0' }, 300).animate( { backgroundColor: '#fffbcc' }, 300); 
     154        logScript("$('.fade').animate"); 
    148155 
    149156        // Move .updated and .error alert boxes 
    150         $('div.wrap h2 ~ div.updated, div.wrap h2 ~ div.error').addClass('below-h2'); 
    151         $('div.updated, div.error').not('.below-h2').insertAfter('div.wrap h2:first'); 
     157        $('div.wrap').find('h2 ~ div.updated, div.wrap h2 ~ div.error').addClass('below-h2'); 
     158        logScript("$('div.wrap h2 ~ div.updated, div.wrap h2 ~ div.error').addClass('below-h2');"); 
     159         
     160        $('div.updated, div.error').not('.below-h2').insertAfter($('div.wrap').find('h2:first')); 
     161        logScript("$('div.updated, div.error').not('.below-h2').insertAfter('div.wrap h2:first');"); 
    152162 
    153163        // show warnings 
    154164        $('#doaction, #doaction2').click(function(){ 
     
    156166                        return showNotice.warn(); 
    157167                } 
    158168        }); 
     169        logScript("$('#doaction, #doaction2').click"); 
    159170 
    160171        // screen settings tab 
    161172        $('#show-settings-link').click(function () { 
     
    174185                }); 
    175186                return false; 
    176187        }); 
     188        logScript("$('#show-settings-link').click"); 
    177189 
    178190        // help tab 
    179191        $('#contextual-help-link').click(function () { 
     
    192204                }); 
    193205                return false; 
    194206        }); 
     207        logScript("$('#contextual-help-link').click"); 
     208         
    195209        $('#contextual-help-link-wrap, #screen-options-link-wrap').show(); 
     210        logScript("$('#contextual-help-link-wrap, #screen-options-link-wrap').show();"); 
    196211 
    197212        // check all checkboxes 
    198         $( 'table:visible tbody .check-column :checkbox' ).click( function(e) { 
     213        $('table:visible').children('tbody').children().children('.check-column').find('input:checkbox').click( function(e) { 
    199214                if ( 'undefined' == e.shiftKey ) { return true; } 
    200215                if ( e.shiftKey ) { 
    201216                        if ( !lastClicked ) { return true; } 
    202                         checks = $( lastClicked ).parents( 'form:first' ).find( ':checkbox' ); 
     217                        checks = $( lastClicked ).parents( 'form:first' ).find( 'input:checkbox' ); 
    203218                        first = checks.index( lastClicked ); 
    204219                        last = checks.index( this ); 
    205220                        checked = $(this).attr('checked'); 
     
    215230                lastClicked = this; 
    216231                return true; 
    217232        } ); 
    218         $( 'thead :checkbox, tfoot :checkbox' ).click( function(e) { 
     233        logScript("$( 'table:visible tbody .check-column :checkbox' ).click"); 
     234         
     235        $('thead, tfoot').find('input:checkbox').click( function(e) { 
    219236                var c = $(this).attr('checked'), kbtoggle = 'undefined' == typeof toggleWithKeyboard ? false : toggleWithKeyboard, toggle = e.shiftKey || kbtoggle; 
    220237 
    221238 
    222                 $(this).parents( 'form:first' ).find( 'table tbody:visible' ).find( '.check-column :checkbox' ).attr( 'checked', function() { 
     239                $(this).parents( 'form:first' ).find( 'table' ).children( 'tbody:visible' ).children().children('.check-column').find( 'input:checkbox' ).attr( 'checked', function() { 
    223240                        if ( $(this).parents('tr').is(':hidden') ) 
    224241                                return ''; 
    225242                        if ( toggle ) 
     
    228245                                return 'checked'; 
    229246                        return ''; 
    230247                }); 
    231                 $(this).parents( 'form:first' ).find( 'table thead:visible, table tfoot:visible').find( '.check-column :checkbox' ).attr( 'checked', function() { 
     248                $(this).parents( 'form:first' ).find('table').children( 'thead:visible,  tfoot:visible').children().children('.check-column').find( 'input:checkbox' ).attr( 'checked', function() { 
    232249                        if ( toggle ) 
    233250                                return ''; 
    234251                        else if (c) 
     
    236253                        return ''; 
    237254                }); 
    238255        }); 
     256        logScript("$( 'thead :checkbox, tfoot :checkbox' ).click"); 
     257         
    239258        $('#default-password-nag-no').click( function() { 
    240259                setUserSetting('default_password_nag', 'hide'); 
    241260                $('div.default-password-nag').hide(); 
    242261                return false; 
    243262        }); 
     263        logScript("$('#default-password-nag-no').click"); 
    244264         
    245          
     265        logScript('end commons.ready()'); 
    246266}); 
    247267 
    248 jQuery(document).ready( function($){ 
    249         var turboNag = $('.turbo-nag'); 
     268jQuery(document).ready( function($){logScript('turbo.ready()'); 
     269        var turboNag = $('span.turbo-nag'); 
    250270 
    251271        if ( !turboNag.length || ('undefined' != typeof(google) && google.gears) ) 
    252272                return; 
     
    263283        } 
    264284 
    265285        turboNag.show(); 
    266  
     286        logScript('end turbo.ready()'); 
    267287}); 
  • wp-admin/js/utils.dev.js

     
    164164 
    165165        return wpCookies.getHash('wp-settings-' + userSettings.uid) || {}; 
    166166} 
     167 
     168 
     169function logScript(stop) { 
     170        if ( !window.d ) 
     171                window.d = new Date(); 
     172        var d = new Date(); 
     173        jQuery('body').append('<div>' + ( d.getTime() - window.d.getTime() ) + 'ms -- ' + stop + '</div>'); 
     174        window.d = d; 
     175} 
     176 No newline at end of file 
  • wp-admin/js/widgets.dev.js

     
    99                if ( $('body').hasClass('widgets_access') ) { 
    1010                        return; 
    1111                } 
    12  
    13                 $('#widgets-right div.sidebar-name').click(function(){ 
    14             var c = $(this).siblings('.widgets-sortables'); 
     12                logScript("$('body').hasClass('widgets_access')"); 
     13                 
     14                var sortableSidebars = $('div.widgets-sortables'); 
     15                 
     16                $('#widgets-right').find('div.sidebar-name').click(function(){ 
     17            var c = $(this).siblings('div.widgets-sortables'); 
    1518                        if ( c.is(':visible') ) { 
    1619                                c.sortable('disable'); 
    1720                                $(this).parent().addClass('closed'); 
     
    2023                                c.sortable('enable').sortable('refresh'); 
    2124                        } 
    2225        }); 
     26                logScript("$('#widgets-right div.sidebar-name').click"); 
    2327 
    24         $('#widgets-left div.sidebar-name').click(function(){ 
    25                         if ( $(this).siblings('.widget-holder').is(':visible') ) { 
     28        $('#widgets-left').find('div.sidebar-name').click(function(){ 
     29                        if ( $(this).siblings('div.widget-holder').is(':visible') ) { 
    2630                                $(this).parent().addClass('closed'); 
    2731                        } else { 
    2832                                $(this).parent().removeClass('closed'); 
    2933                        } 
    3034        }); 
     35                logScript("$('#widgets-left div.sidebar-name').click"); 
    3136 
    32                 $('#widgets-right .widget, #wp_inactive_widgets .widget').each(function(){ 
     37                $('#widgets-right, #wp_inactive_widgets').find('div.widget-holder').children('div.widget').each(function(){ 
    3338                        wpWidgets.appendTitle(this); 
    3439                }); 
     40                logScript("$('#widgets-right .widget, #wp_inactive_widgets .widget').each"); 
    3541 
    3642                this.addEvents(); 
    37         $('.widget-error').parents('.widget').find('a.widget-action').click(); 
     43                logScript("this.addEvents();"); 
     44                 
     45        $('.widget-error').parents('div.widget').find('a.widget-action').click(); 
     46                logScript("$('.widget-error').parents('.widget').find('a.widget-action').click();"); 
    3847 
    3948                $('#available-widgets').droppable({ 
    4049                        tolerance: 'pointer', 
     
    5059                                $('.widget-placeholder').hide(); 
    5160 
    5261                                if ( ui.draggable.hasClass('ui-sortable-helper') ) 
    53                                         $('#removing-widget').show().children('span').html( ui.draggable.find('.widget-title h4').html() ); 
     62                                        $('#removing-widget').show().children('span').html( ui.draggable.find('div.widget-title').children('h4').html() ); 
    5463                        }, 
    5564                        out: function(e,ui) { 
    5665                                ui.draggable.removeClass('deleting'); 
     
    5867                                $('#removing-widget').hide().children('span').html(''); 
    5968                        } 
    6069                }); 
     70                logScript("$('#available-widgets').droppable"); 
    6171 
    62                 $('#widget-list .widget').draggable({ 
    63                         connectToSortable: '.widgets-sortables', 
    64                         handle: '.widget-title', 
     72                $('#widget-list').find('div.widget').draggable({ 
     73                        connectToSortable: sortableSidebars, 
     74                        handle: 'div.widget-title', 
    6575                        distance: 2, 
    6676                        helper: 'clone', 
    6777                        zIndex: 5, 
    6878                        containment: 'document', 
    6979                        start: function(e,ui) { 
    7080                                wpWidgets.fixWebkit(1); 
    71                                 ui.helper.find('.widget-description').hide(); 
     81                                ui.helper.find('div.widget-description').hide(); 
    7282                        }, 
    7383                        stop: function(e,ui) { 
    7484                                if ( rem ) 
     
    7787                                wpWidgets.fixWebkit(); 
    7888                        } 
    7989                }); 
    80  
    81         $('.widgets-sortables').sortable({ 
     90                logScript("$('#widget-list .widget').draggable"); 
     91                 
     92                $('div.widgets-sortables').sortable({ 
    8293                        placeholder: 'widget-placeholder', 
    83                         connectWith: '.widgets-sortables', 
    84                         items: '.widget', 
    85                         handle: '.widget-title', 
     94                        connectWith: sortableSidebars, 
     95                        items: 'div.widget', 
     96                        handle: 'div.widget-title', 
    8697                        cursor: 'move', 
    8798                        distance: 2, 
    8899                        containment: 'document', 
    89100                        start: function(e,ui) { 
    90101                                wpWidgets.fixWebkit(1); 
    91                                 ui.item.find('.widget-inside').hide(); 
     102                                ui.item.find('div.widget-inside').hide(); 
    92103                                ui.item.css({'marginLeft':'','width':''}); 
    93104                        }, 
    94105                        stop: function(e,ui) { 
     
    128139                                        $(this).sortable('cancel'); 
    129140                        } 
    130141                }).not(':visible').sortable('disable'); 
     142                logScript("$('.widgets-sortables').sortable"); 
     143                 
    131144                wpWidgets.resize(); 
     145                logScript("wpWidgets.resize();"); 
     146                 
    132147                wpWidgets.fixLabels(); 
     148                logScript("wpWidgets.fixLabels();"); 
    133149        }, 
    134150 
    135151        saveOrder : function(sb) { 
    136152                if ( sb ) 
    137                         $('#' + sb).parents('.widgets-holder-wrap').find('.ajax-feedback').css('visibility', 'visible'); 
     153                        $('#' + sb).parents('div.widgets-holder-wrap').find('img.ajax-feedback').css('visibility', 'visible'); 
    138154 
    139155                var a = { 
    140156                        action: 'widgets-order', 
     
    142158                        sidebars: [] 
    143159                }; 
    144160 
    145                 $('.widgets-sortables').each( function() { 
     161                $('div.widgets-sortables').each( function() { 
    146162                        a['sidebars[' + $(this).attr('id') + ']'] = $(this).sortable('toArray').join(','); 
    147163                }); 
    148164 
    149165                $.post( ajaxurl, a, function() { 
    150                         $('.ajax-feedback').css('visibility', 'hidden'); 
     166                        $('img.ajax-feedback').css('visibility', 'hidden'); 
    151167                }); 
    152168                this.resize(); 
    153169        }, 
    154170 
    155171        save : function(widget, del, animate, order) { 
    156                 var sb = widget.parents('.widgets-sortables').attr('id'), data = widget.find('form').serialize(), a; 
     172                var sb = widget.parents('div.widgets-sortables:first').attr('id'), data = widget.find('form').serialize(), a; 
    157173                widget = $(widget); 
    158174                widget.find('.ajax-feedback').css('visibility', 'visible'); 
    159175 
     
    172188                        var id; 
    173189 
    174190                        if ( del ) { 
    175                                 if ( !$('.widget_number', widget).val() ) { 
    176                                         id = $('.widget-id', widget).val(); 
    177                                         $('#available-widgets .widget-id').each(function(){ 
     191                                if ( !$('input.widget_number', widget).val() ) { 
     192                                        id = $('input.widget-id', widget).val(); 
     193                                        $('#available-widgets').find('input.widget-id').each(function(){ 
    178194                                                if ( $(this).val() == id ) 
    179                                                         $(this).parents('.widget').show(); 
     195                                                        $(this).parents('div.widget:first').show(); 
    180196                                        }); 
    181197                                } 
    182198 
     
    193209                        } else { 
    194210                                $('.ajax-feedback').css('visibility', 'hidden'); 
    195211                                if ( r && r.length > 2 ) { 
    196                                         $('.widget-content', widget).html(r); 
     212                                        $('div.widget-content', widget).html(r); 
    197213                                        wpWidgets.appendTitle(widget); 
    198214                                        wpWidgets.fixLabels(widget); 
    199215                                } 
     
    209225                        if ( this.id.indexOf('title') != -1 ) { 
    210226                                title = $(this).val().replace(/<[^<>]+>/g, '').replace(/</g, '&lt;').replace(/>/g, '&gt;'); 
    211227                                if ( title ) 
    212                                         $('.widget-title .in-widget-title', widget).html(': ' + title); 
     228                                        $('div.widget-title', widget).find('span.in-widget-title').html(': ' + title); 
    213229                                return false; 
    214230                        } 
    215231                }); 
    216232        }, 
    217233 
    218234        resize : function() { 
    219                 $('.widgets-sortables').not('#wp_inactive_widgets').each(function(){ 
    220                         var h = 50, H = $('.widget', this).length; 
     235                $('div.widgets-sortables').not('#wp_inactive_widgets').each(function(){ 
     236                        var h = 50, H = $('div.widget', this).length; 
    221237                        h = h + parseInt(H * 48, 10); 
    222238                        $(this).css( 'minHeight', h + 'px' ); 
    223239                }); 
     
    234250    fixLabels : function(sc) { 
    235251                sc = sc || document; 
    236252 
    237                 $('.widget-inside label', sc).each(function(){ 
     253                $('textarea', sc).parents('label').each(function(){ 
    238254                        var f = $(this).attr('for'); 
    239255 
    240256                        if ( f && f == $('input', this).attr('id') ) 
     
    243259        }, 
    244260     
    245261    close : function(widget) { 
    246                 widget.find('.widget-inside').slideUp('fast', function(){ 
     262                widget.find('div.widget-inside').slideUp('fast', function(){ 
    247263                        widget.css({'width':'','marginLeft':''}); 
    248264                }); 
    249265        }, 
    250266 
    251267    addEvents : function(sc) { 
    252                 sc = sc || document; 
    253                 $('a.widget-action', sc).click(function(){ 
    254             var w = parseInt( $(this).parents('.widget').find('.widget-width').val(), 10 ), css = {}, inside = $(this).parents('.widget-top').siblings('.widget-inside'); 
     268                var a, c; 
     269                if ( sc ) { 
     270                        a = $(sc).find('div.widget-title-action:first'); 
     271                        c = $(sc).find('div.widget-control-actions:first'); 
     272                } else { 
     273                        a = $('div.widget-title-action'); 
     274                        c = $('div.widget-control-actions'); 
     275                } 
     276                 
     277                a.children('a.widget-action').click(function(){ 
     278            var w = parseInt( $(this).parents('div.widget:first').find('input.widget-width:first').val(), 10 ), css = {}, inside = $(this).parents('div.widget-top:first').siblings('div.widget-inside:first'); 
    255279                        if ( inside.is(':hidden') ) { 
    256                                 if ( w > 250 && inside.parents('.widgets-sortables').length ) { 
     280                                if ( w > 250 && inside.parents('div.widgets-sortables:first').length ) { 
    257281                                        css['width'] = w + 30 + 'px'; 
    258                                         if ( inside.parents('.widget-liquid-right').length ) 
     282                                        if ( inside.parents('div.widget-liquid-right:first').length ) 
    259283                                                css['marginLeft'] = 235 - w + 'px'; 
    260                                         inside.parents('.widget').css(css); 
     284                                        inside.parents('div.widget').css(css); 
    261285                                } 
    262286                                inside.slideDown('fast'); 
    263287                        } else { 
    264                                 inside.slideUp('fast', function(){ inside.parents('.widget').css({'width':'','marginLeft':''}); }); 
     288                                inside.slideUp('fast', function(){ inside.parents('div.widget:first').css({'width':'','marginLeft':''}); }); 
    265289                        } 
    266290            return false; 
    267291        }); 
    268         $('.widget-control-save', sc).click(function(){ 
    269                         wpWidgets.save( $(this).parents('.widget'), 0, 1, 0 ); 
     292        c.children('input.widget-control-save').click(function(){ 
     293                        wpWidgets.save( $(this).parents('div.widget:first'), 0, 1, 0 ); 
    270294                        return false; 
    271295                }); 
    272                 $('.widget-control-remove', sc).click(function(){ 
    273                         wpWidgets.save( $(this).parents('.widget'), 1, 1, 0 ); 
     296                c.children('a.widget-control-remove').click(function(){ 
     297                        wpWidgets.save( $(this).parents('div.widget:first'), 1, 1, 0 ); 
    274298                        return false; 
    275299                }); 
    276                 $('.widget-control-close', sc).click(function(){ 
    277                         wpWidgets.close( $(this).parents('.widget') ); 
     300                c.children('a.widget-control-close').click(function(){ 
     301                        wpWidgets.close( $(this).parents('div.widget:first') ); 
    278302                        return false; 
    279303                }); 
    280304        } 
    281305}; 
    282 $(document).ready(function(){wpWidgets.init();}); 
     306$(document).ready(function(){logScript('widgets.init()');wpWidgets.init();logScript('end widgets.init()');}); 
    283307 
    284308})(jQuery);