WordPress.org

Make WordPress Core

Changeset 11837


Ignore:
Timestamp:
08/18/2009 09:53:37 AM (12 years ago)
Author:
azaozz
Message:

Speed up jQuery based scripts, props Denis-de-Bernardy, see #10021

Location:
trunk
Files:
6 edited

Legend:

Unmodified
Added
Removed
  • trunk/wp-admin/js/common.dev.js

    r11749 r11837  
    33// sidebar admin menu
    44adminMenu = {
    5 
    65    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') ); });
     6        var menu = $('#adminmenu');
     7
     8        $('.wp-menu-toggle', menu).each( function() {
     9            var t = $(this), sub = t.siblings('.wp-submenu');
     10            if ( sub.length )
     11                t.click(function(){ adminMenu.toggle( sub ); });
    1012            else
    11                 $(this).hide();
    12         });
    13 
     13                t.hide();
     14        });
     15       
    1416        this.favorites();
    15 
    16         $('a.separator').click(function(){
     17       
     18        $('.separator', menu).click(function(){
    1719            if ( $('body').hasClass('folded') ) {
    1820                adminMenu.fold(1);
     
    2527        });
    2628
    27         if ( $('body').hasClass('folded') ) {
     29        if ( $('body').hasClass('folded') )
    2830            this.fold();
    29         }
     31       
    3032        this.restoreMenuState();
    3133    },
    3234
    3335    restoreMenuState : function() {
    34         $('#adminmenu li.wp-has-submenu').each(function(i, e) {
     36        $('li.wp-has-submenu', '#adminmenu').each(function(i, e) {
    3537            var v = getUserSetting( 'm'+i );
    36             if ( $(e).hasClass('wp-has-current-submenu') ) return true; // leave the current parent open
    37 
    38             if ( 'o' == v ) $(e).addClass('wp-menu-open');
    39             else if ( 'c' == v ) $(e).removeClass('wp-menu-open');
     38            if ( $(e).hasClass('wp-has-current-submenu') )
     39                return true; // leave the current parent open
     40
     41            if ( 'o' == v )
     42                $(e).addClass('wp-menu-open');
     43            else if ( 'c' == v )
     44                $(e).removeClass('wp-menu-open');
    4045        });
    4146    },
    4247
    4348    toggle : function(el) {
    44 
    45         el['slideToggle'](150, function(){el.css('display','');}).parent().toggleClass( 'wp-menu-open' );
    46 
    47         $('#adminmenu li.wp-has-submenu').each(function(i, e) {
     49        el['slideToggle'](150, function() {
     50            el.css('display','');
     51        }).parent().toggleClass( 'wp-menu-open' );
     52
     53        $('.wp-has-submenu', '#adminmenu').each(function(i, e) {
    4854            var v = $(e).hasClass('wp-menu-open') ? 'o' : 'c';
    4955            setUserSetting( 'm'+i, v );
     
    6369                    var m, b, h, o, f;
    6470                    m = $(this).find('.wp-submenu');
    65                     b = m.parent().offset().top + m.height() + 1; // Bottom offset of the menu
     71                    b = $(this).offset().top + m.height() + 1; // Bottom offset of the menu
    6672                    h = $('#wpwrap').height(); // Height of the entire page
    6773                    o = 60 + b - h;
    68                     f = $(window).height() + $('body').scrollTop() - 15; // The fold
    69                     if (f < (b - o)) {
     74                    f = $(window).height() + $(window).scrollTop() - 15; // The fold
     75                    if ( f < (b - o) ) {
    7076                        o = b - f;
    7177                    }
    72                     if (o > 1) {
     78                    if ( o > 1 ) {
    7379                        m.css({'marginTop':'-'+o+'px'});
    7480                    } else if ( m.css('marginTop') ) {
     
    8793
    8894    favorites : function() {
    89         $('#favorite-inside').width($('#favorite-actions').width()-4);
    90         $('#favorite-toggle, #favorite-inside').bind( 'mouseenter', function(){$('#favorite-inside').removeClass('slideUp').addClass('slideDown'); setTimeout(function(){if ( $('#favorite-inside').hasClass('slideDown') ) { $('#favorite-inside').slideDown(100); $('#favorite-first').addClass('slide-down'); }}, 200) } );
    91 
    92         $('#favorite-toggle, #favorite-inside').bind( 'mouseleave', function(){$('#favorite-inside').removeClass('slideDown').addClass('slideUp'); setTimeout(function(){if ( $('#favorite-inside').hasClass('slideUp') ) { $('#favorite-inside').slideUp(100, function(){ $('#favorite-first').removeClass('slide-down'); } ); }}, 300) } );
     95        $('#favorite-inside').width( $('#favorite-actions').width() - 4 );
     96        $('#favorite-toggle, #favorite-inside').bind('mouseenter', function() {
     97            $('#favorite-inside').removeClass('slideUp').addClass('slideDown');
     98            setTimeout(function() {
     99                if ( $('#favorite-inside').hasClass('slideDown') ) {
     100                    $('#favorite-inside').slideDown(100);
     101                    $('#favorite-first').addClass('slide-down');
     102                }
     103            }, 200);
     104        }).bind('mouseleave', function() {
     105            $('#favorite-inside').removeClass('slideDown').addClass('slideUp');
     106            setTimeout(function() {
     107                if ( $('#favorite-inside').hasClass('slideUp') ) {
     108                    $('#favorite-inside').slideUp(100, function() {
     109                        $('#favorite-first').removeClass('slide-down');
     110                    });
     111                }
     112            }, 300);
     113        });
    93114    }
    94115};
    95116
    96 $(document).ready(function(){adminMenu.init();});
     117$(document).ready(function(){ adminMenu.init(); });
    97118
    98119// show/hide/save table columns
    99120columns = {
    100121    init : function() {
    101         $('.hide-column-tog').click( function() {
    102             var column = $(this).val(), show = $(this).attr('checked');
    103             if ( show ) {
     122        $('.hide-column-tog', '#adv-settings').click( function() {
     123            var column = $(this).val();
     124            if ( $(this).attr('checked') )
    104125                $('.column-' + column).show();
    105             } else {
     126            else
    106127                $('.column-' + column).hide();
    107             }
     128
    108129            columns.save_manage_columns_state();
    109         } );
     130        });
    110131    },
    111132
     
    149170
    150171    // pulse
    151     $('.fade').animate( { backgroundColor: '#ffffe0' }, 300).animate( { backgroundColor: '#fffbcc' }, 300).animate( { backgroundColor: '#ffffe0' }, 300).animate( { backgroundColor: '#fffbcc' }, 300);
     172    $('div.fade').animate( { opacity: .5 }, 400)
     173    .animate( { opacity: 1 }, 400)
     174    .animate( { opacity: .5 }, 400)
     175    .animate( { opacity: 1 }, 400);
    152176
    153177    // Move .updated and .error alert boxes
    154     $('div.wrap h2 ~ div.updated, div.wrap h2 ~ div.error').addClass('below-h2');
    155     $('div.updated, div.error').not('.below-h2').insertAfter('div.wrap h2:first');
     178    $('div.wrap').children('h2:first').nextAll('div.updated, div.error').addClass('below-h2');
     179    $('div.updated, div.error').not('.below-h2').insertAfter( $('div.wrap').children('h2:first') );
    156180
    157181    // screen settings tab
    158182    $('#show-settings-link').click(function () {
    159         if ( ! $('#screen-options-wrap').hasClass('screen-options-open') ) {
     183        if ( ! $('#screen-options-wrap').hasClass('screen-options-open') )
    160184            $('#contextual-help-link-wrap').css('visibility', 'hidden');
    161         }
     185
    162186        $('#screen-options-wrap').slideToggle('fast', function(){
    163187            if ( $(this).hasClass('screen-options-open') ) {
     
    175199    // help tab
    176200    $('#contextual-help-link').click(function () {
    177         if ( ! $('#contextual-help-wrap').hasClass('contextual-help-open') ) {
     201        if ( ! $('#contextual-help-wrap').hasClass('contextual-help-open') )
    178202            $('#screen-options-link-wrap').css('visibility', 'hidden');
    179         }
    180         $('#contextual-help-wrap').slideToggle('fast', function(){
     203
     204        $('#contextual-help-wrap').slideToggle('fast', function() {
    181205            if ( $(this).hasClass('contextual-help-open') ) {
    182206                $('#contextual-help-link').css({'backgroundImage':'url("images/screen-options-right.gif")'});
     
    190214        return false;
    191215    });
    192     $('#contextual-help-link-wrap, #screen-options-link-wrap').show();
    193216
    194217    // check all checkboxes
    195     $( 'table:visible tbody .check-column :checkbox' ).click( function(e) {
     218    $('tbody').children().children('.check-column').find(':checkbox').click( function(e) {
    196219        if ( 'undefined' == e.shiftKey ) { return true; }
    197220        if ( e.shiftKey ) {
    198221            if ( !lastClicked ) { return true; }
    199             checks = $( lastClicked ).parents( 'form:first' ).find( ':checkbox' );
     222            checks = $( lastClicked ).closest( 'form' ).find( ':checkbox' );
    200223            first = checks.index( lastClicked );
    201224            last = checks.index( this );
     
    203226            if ( 0 < first && 0 < last && first != last ) {
    204227                checks.slice( first, last ).attr( 'checked', function(){
    205                     if ( $(this).parents('tr').is(':visible') )
     228                    if ( $(this).closest('tr').is(':visible') )
    206229                        return checked ? 'checked' : '';
    207230
     
    212235        lastClicked = this;
    213236        return true;
    214     } );
    215     $( 'thead :checkbox, tfoot :checkbox' ).click( function(e) {
    216         var c = $(this).attr('checked'), kbtoggle = 'undefined' == typeof toggleWithKeyboard ? false : toggleWithKeyboard, toggle = e.shiftKey || kbtoggle;
    217 
    218 
    219         $(this).parents( 'form:first' ).find( 'table tbody:visible' ).find( '.check-column :checkbox' ).attr( 'checked', function() {
    220             if ( $(this).parents('tr').is(':hidden') )
     237    });
     238
     239    $('thead, tfoot').find(':checkbox').click( function(e) {
     240        var c = $(this).attr('checked'),
     241            kbtoggle = 'undefined' == typeof toggleWithKeyboard ? false : toggleWithKeyboard,
     242            toggle = e.shiftKey || kbtoggle;
     243       
     244        $(this).closest( 'table' ).children( 'tbody' ).filter(':visible')
     245        .children().children('.check-column').find(':checkbox')
     246        .attr('checked', function() {
     247            if ( $(this).closest('tr').is(':hidden') )
    221248                return '';
    222249            if ( toggle )
     
    226253            return '';
    227254        });
    228         $(this).parents( 'form:first' ).find( 'table thead:visible, table tfoot:visible').find( '.check-column :checkbox' ).attr( 'checked', function() {
     255
     256        $(this).closest('table').children('thead,  tfoot').filter(':visible')
     257        .children().children('.check-column').find(':checkbox')
     258        .attr('checked', function() {
    229259            if ( toggle )
    230260                return '';
     
    234264        });
    235265    });
     266
    236267    $('#default-password-nag-no').click( function() {
    237268        setUserSetting('default_password_nag', 'hide');
     
    239270        return false;
    240271    });
    241    
    242    
    243272});
    244273
    245274jQuery(document).ready( function($){
    246     var turboNag = $('.turbo-nag');
     275    var turboNag = $('span.turbo-nag', '#user_info');
    247276
    248277    if ( !turboNag.length || ('undefined' != typeof(google) && google.gears) )
     
    261290
    262291    turboNag.show();
    263 
    264292});
  • trunk/wp-admin/js/common.js

    r11749 r11837  
    1 var showNotice,adminMenu,columns,validateForm;(function(a){adminMenu={init:function(){a("#adminmenu div.wp-menu-toggle").each(function(){if(a(this).siblings(".wp-submenu").length){a(this).click(function(){adminMenu.toggle(a(this).siblings(".wp-submenu"))})}else{a(this).hide()}});this.favorites();a("a.separator").click(function(){if(a("body").hasClass("folded")){adminMenu.fold(1);deleteUserSetting("mfold")}else{adminMenu.fold();setUserSetting("mfold","f")}return false});if(a("body").hasClass("folded")){this.fold()}this.restoreMenuState()},restoreMenuState:function(){a("#adminmenu li.wp-has-submenu").each(function(c,d){var b=getUserSetting("m"+c);if(a(d).hasClass("wp-has-current-submenu")){return true}if("o"==b){a(d).addClass("wp-menu-open")}else{if("c"==b){a(d).removeClass("wp-menu-open")}}})},toggle:function(b){b.slideToggle(150,function(){b.css("display","")}).parent().toggleClass("wp-menu-open");a("#adminmenu li.wp-has-submenu").each(function(d,f){var c=a(f).hasClass("wp-menu-open")?"o":"c";setUserSetting("m"+d,c)});return false},fold:function(b){if(b){a("body").removeClass("folded");a("#adminmenu li.wp-has-submenu").unbind()}else{a("body").addClass("folded");a("#adminmenu li.wp-has-submenu").hoverIntent({over:function(j){var d,c,g,k,i;d=a(this).find(".wp-submenu");c=d.parent().offset().top+d.height()+1;g=a("#wpwrap").height();k=60+c-g;i=a(window).height()+a("body").scrollTop()-15;if(i<(c-k)){k=c-i}if(k>1){d.css({marginTop:"-"+k+"px"})}else{if(d.css("marginTop")){d.css({marginTop:""})}}d.addClass("sub-open")},out:function(){a(this).find(".wp-submenu").removeClass("sub-open").css({marginTop:""})},timeout:220,sensitivity:8,interval:100})}},favorites:function(){a("#favorite-inside").width(a("#favorite-actions").width()-4);a("#favorite-toggle, #favorite-inside").bind("mouseenter",function(){a("#favorite-inside").removeClass("slideUp").addClass("slideDown");setTimeout(function(){if(a("#favorite-inside").hasClass("slideDown")){a("#favorite-inside").slideDown(100);a("#favorite-first").addClass("slide-down")}},200)});a("#favorite-toggle, #favorite-inside").bind("mouseleave",function(){a("#favorite-inside").removeClass("slideDown").addClass("slideUp");setTimeout(function(){if(a("#favorite-inside").hasClass("slideUp")){a("#favorite-inside").slideUp(100,function(){a("#favorite-first").removeClass("slide-down")})}},300)})}};a(document).ready(function(){adminMenu.init()});columns={init:function(){a(".hide-column-tog").click(function(){var c=a(this).val(),b=a(this).attr("checked");if(b){a(".column-"+c).show()}else{a(".column-"+c).hide()}columns.save_manage_columns_state()})},save_manage_columns_state:function(){var b=a(".manage-column").filter(":hidden").map(function(){return this.id}).get().join(",");a.post(ajaxurl,{action:"hidden-columns",hidden:b,screenoptionnonce:a("#screenoptionnonce").val(),page:pagenow})}};a(document).ready(function(){columns.init()});validateForm=function(b){return !a(b).find(".form-required").filter(function(){return a("input:visible",this).val()==""}).addClass("form-invalid").change(function(){a(this).removeClass("form-invalid")}).size()}})(jQuery);showNotice={warn:function(){var a=commonL10n.warnDelete||"";if(confirm(a)){return true}return false},note:function(a){alert(a)}};jQuery(document).ready(function(d){var f=false,a,e,c,b;d(".fade").animate({backgroundColor:"#ffffe0"},300).animate({backgroundColor:"#fffbcc"},300).animate({backgroundColor:"#ffffe0"},300).animate({backgroundColor:"#fffbcc"},300);d("div.wrap h2 ~ div.updated, div.wrap h2 ~ div.error").addClass("below-h2");d("div.updated, div.error").not(".below-h2").insertAfter("div.wrap h2:first");d("#show-settings-link").click(function(){if(!d("#screen-options-wrap").hasClass("screen-options-open")){d("#contextual-help-link-wrap").css("visibility","hidden")}d("#screen-options-wrap").slideToggle("fast",function(){if(d(this).hasClass("screen-options-open")){d("#show-settings-link").css({backgroundImage:'url("images/screen-options-right.gif")'});d("#contextual-help-link-wrap").css("visibility","");d(this).removeClass("screen-options-open")}else{d("#show-settings-link").css({backgroundImage:'url("images/screen-options-right-up.gif")'});d(this).addClass("screen-options-open")}});return false});d("#contextual-help-link").click(function(){if(!d("#contextual-help-wrap").hasClass("contextual-help-open")){d("#screen-options-link-wrap").css("visibility","hidden")}d("#contextual-help-wrap").slideToggle("fast",function(){if(d(this).hasClass("contextual-help-open")){d("#contextual-help-link").css({backgroundImage:'url("images/screen-options-right.gif")'});d("#screen-options-link-wrap").css("visibility","");d(this).removeClass("contextual-help-open")}else{d("#contextual-help-link").css({backgroundImage:'url("images/screen-options-right-up.gif")'});d(this).addClass("contextual-help-open")}});return false});d("#contextual-help-link-wrap, #screen-options-link-wrap").show();d("table:visible tbody .check-column :checkbox").click(function(g){if("undefined"==g.shiftKey){return true}if(g.shiftKey){if(!f){return true}a=d(f).parents("form:first").find(":checkbox");e=a.index(f);c=a.index(this);b=d(this).attr("checked");if(0<e&&0<c&&e!=c){a.slice(e,c).attr("checked",function(){if(d(this).parents("tr").is(":visible")){return b?"checked":""}return""})}}f=this;return true});d("thead :checkbox, tfoot :checkbox").click(function(i){var j=d(this).attr("checked"),h="undefined"==typeof toggleWithKeyboard?false:toggleWithKeyboard,g=i.shiftKey||h;d(this).parents("form:first").find("table tbody:visible").find(".check-column :checkbox").attr("checked",function(){if(d(this).parents("tr").is(":hidden")){return""}if(g){return d(this).attr("checked")?"":"checked"}else{if(j){return"checked"}}return""});d(this).parents("form:first").find("table thead:visible, table tfoot:visible").find(".check-column :checkbox").attr("checked",function(){if(g){return""}else{if(j){return"checked"}}return""})});d("#default-password-nag-no").click(function(){setUserSetting("default_password_nag","hide");d("div.default-password-nag").hide();return false})});jQuery(document).ready(function(b){var a=b(".turbo-nag");if(!a.length||("undefined"!=typeof(google)&&google.gears)){return}if("undefined"!=typeof GearsFactory){return}else{try{if(("undefined"!=typeof window.ActiveXObject&&ActiveXObject("Gears.Factory"))||("undefined"!=typeof navigator.mimeTypes&&navigator.mimeTypes["application/x-googlegears"])){return}}catch(c){}}a.show()});
     1var showNotice,adminMenu,columns,validateForm;(function(a){adminMenu={init:function(){var b=a("#adminmenu");a(".wp-menu-toggle",b).each(function(){var c=a(this),d=c.siblings(".wp-submenu");if(d.length){c.click(function(){adminMenu.toggle(d)})}else{c.hide()}});this.favorites();a(".separator",b).click(function(){if(a("body").hasClass("folded")){adminMenu.fold(1);deleteUserSetting("mfold")}else{adminMenu.fold();setUserSetting("mfold","f")}return false});if(a("body").hasClass("folded")){this.fold()}this.restoreMenuState()},restoreMenuState:function(){a(".wp-has-submenu","#adminmenu").each(function(c,d){var b=getUserSetting("m"+c);if(a(d).hasClass("wp-has-current-submenu")){return true}if("o"==b){a(d).addClass("wp-menu-open")}else{if("c"==b){a(d).removeClass("wp-menu-open")}}})},toggle:function(b){b.slideToggle(150,function(){b.css("display","")}).parent().toggleClass("wp-menu-open");a(".wp-has-submenu","#adminmenu").each(function(d,f){var c=a(f).hasClass("wp-menu-open")?"o":"c";setUserSetting("m"+d,c)});return false},fold:function(b){if(b){a("body").removeClass("folded");a("#adminmenu li.wp-has-submenu").unbind()}else{a("body").addClass("folded");a("#adminmenu li.wp-has-submenu").hoverIntent({over:function(j){var d,c,g,k,i;d=a(this).find(".wp-submenu");c=a(this).offset().top+d.height()+1;g=a("#wpwrap").height();k=60+c-g;i=a(window).height()+a(window).scrollTop()-15;if(i<(c-k)){k=c-i}if(k>1){d.css({marginTop:"-"+k+"px"})}else{if(d.css("marginTop")){d.css({marginTop:""})}}d.addClass("sub-open")},out:function(){a(this).find(".wp-submenu").removeClass("sub-open").css({marginTop:""})},timeout:220,sensitivity:8,interval:100})}},favorites:function(){a("#favorite-inside").width(a("#favorite-actions").width()-4);a("#favorite-toggle, #favorite-inside").bind("mouseenter",function(){a("#favorite-inside").removeClass("slideUp").addClass("slideDown");setTimeout(function(){if(a("#favorite-inside").hasClass("slideDown")){a("#favorite-inside").slideDown(100);a("#favorite-first").addClass("slide-down")}},200)}).bind("mouseleave",function(){a("#favorite-inside").removeClass("slideDown").addClass("slideUp");setTimeout(function(){if(a("#favorite-inside").hasClass("slideUp")){a("#favorite-inside").slideUp(100,function(){a("#favorite-first").removeClass("slide-down")})}},300)})}};a(document).ready(function(){adminMenu.init()});columns={init:function(){a(".hide-column-tog","#adv-settings").click(function(){var b=a(this).val();if(a(this).attr("checked")){a(".column-"+b).show()}else{a(".column-"+b).hide()}columns.save_manage_columns_state()})},save_manage_columns_state:function(){var b=a(".manage-column").filter(":hidden").map(function(){return this.id}).get().join(",");a.post(ajaxurl,{action:"hidden-columns",hidden:b,screenoptionnonce:a("#screenoptionnonce").val(),page:pagenow})}};a(document).ready(function(){columns.init()});validateForm=function(b){return !a(b).find(".form-required").filter(function(){return a("input:visible",this).val()==""}).addClass("form-invalid").change(function(){a(this).removeClass("form-invalid")}).size()}})(jQuery);showNotice={warn:function(){var a=commonL10n.warnDelete||"";if(confirm(a)){return true}return false},note:function(a){alert(a)}};jQuery(document).ready(function(d){var f=false,a,e,c,b;d("div.fade").animate({opacity:0.5},400).animate({opacity:1},400).animate({opacity:0.5},400).animate({opacity:1},400);d("div.wrap").children("h2:first").nextAll("div.updated, div.error").addClass("below-h2");d("div.updated, div.error").not(".below-h2").insertAfter(d("div.wrap").children("h2:first"));d("#show-settings-link").click(function(){if(!d("#screen-options-wrap").hasClass("screen-options-open")){d("#contextual-help-link-wrap").css("visibility","hidden")}d("#screen-options-wrap").slideToggle("fast",function(){if(d(this).hasClass("screen-options-open")){d("#show-settings-link").css({backgroundImage:'url("images/screen-options-right.gif")'});d("#contextual-help-link-wrap").css("visibility","");d(this).removeClass("screen-options-open")}else{d("#show-settings-link").css({backgroundImage:'url("images/screen-options-right-up.gif")'});d(this).addClass("screen-options-open")}});return false});d("#contextual-help-link").click(function(){if(!d("#contextual-help-wrap").hasClass("contextual-help-open")){d("#screen-options-link-wrap").css("visibility","hidden")}d("#contextual-help-wrap").slideToggle("fast",function(){if(d(this).hasClass("contextual-help-open")){d("#contextual-help-link").css({backgroundImage:'url("images/screen-options-right.gif")'});d("#screen-options-link-wrap").css("visibility","");d(this).removeClass("contextual-help-open")}else{d("#contextual-help-link").css({backgroundImage:'url("images/screen-options-right-up.gif")'});d(this).addClass("contextual-help-open")}});return false});d("tbody").children().children(".check-column").find(":checkbox").click(function(g){if("undefined"==g.shiftKey){return true}if(g.shiftKey){if(!f){return true}a=d(f).closest("form").find(":checkbox");e=a.index(f);c=a.index(this);b=d(this).attr("checked");if(0<e&&0<c&&e!=c){a.slice(e,c).attr("checked",function(){if(d(this).closest("tr").is(":visible")){return b?"checked":""}return""})}}f=this;return true});d("thead, tfoot").find(":checkbox").click(function(i){var j=d(this).attr("checked"),h="undefined"==typeof toggleWithKeyboard?false:toggleWithKeyboard,g=i.shiftKey||h;d(this).closest("table").children("tbody").filter(":visible").children().children(".check-column").find(":checkbox").attr("checked",function(){if(d(this).closest("tr").is(":hidden")){return""}if(g){return d(this).attr("checked")?"":"checked"}else{if(j){return"checked"}}return""});d(this).closest("table").children("thead,  tfoot").filter(":visible").children().children(".check-column").find(":checkbox").attr("checked",function(){if(g){return""}else{if(j){return"checked"}}return""})});d("#default-password-nag-no").click(function(){setUserSetting("default_password_nag","hide");d("div.default-password-nag").hide();return false})});jQuery(document).ready(function(b){var a=b("span.turbo-nag","#user_info");if(!a.length||("undefined"!=typeof(google)&&google.gears)){return}if("undefined"!=typeof GearsFactory){return}else{try{if(("undefined"!=typeof window.ActiveXObject&&ActiveXObject("Gears.Factory"))||("undefined"!=typeof navigator.mimeTypes&&navigator.mimeTypes["application/x-googlegears"])){return}}catch(c){}}a.show()});
  • trunk/wp-admin/js/widgets.dev.js

    r11503 r11837  
    1 
    21var wpWidgets;
    32(function($) {
    43
    54wpWidgets = {
     5
    66    init : function() {
    7         var rem;
    8 
    9         if ( $('body').hasClass('widgets_access') ) {
    10             return;
    11         }
    12 
    13         $('#widgets-right div.sidebar-name').click(function(){
    14             var c = $(this).siblings('.widgets-sortables');
    15             if ( c.is(':visible') ) {
     7        var rem, sidebars = $('div.widgets-sortables');
     8
     9        $('#widgets-right').children('.widgets-holder-wrap').children('.sidebar-name').click(function(){
     10            var c = $(this).siblings('.widgets-sortables'), p = $(this).parent();
     11            if ( !p.hasClass('closed') ) {
    1612                c.sortable('disable');
    17                 $(this).parent().addClass('closed');
     13                p.addClass('closed');
    1814            } else {
    19                 $(this).parent().removeClass('closed');
     15                p.removeClass('closed');
    2016                c.sortable('enable').sortable('refresh');
    2117            }
    22         });
    23 
    24         $('#widgets-left div.sidebar-name').click(function(){
    25             if ( $(this).siblings('.widget-holder').is(':visible') ) {
    26                 $(this).parent().addClass('closed');
     18        });
     19
     20        $('#widgets-left').children('.widgets-holder-wrap').children('.sidebar-name').click(function() {
     21            $(this).siblings('.widget-holder').parent().toggleClass('closed');
     22        });
     23
     24        sidebars.not('#wp_inactive_widgets').each(function(){
     25            var h = 50, H = $(this).children('.widget').length;
     26            h = h + parseInt(H * 48, 10);
     27            $(this).css( 'minHeight', h + 'px' );
     28        });
     29
     30        $('a.widget-action').live('click', function(){
     31            var css = {}, widget = $(this).closest('div.widget'), inside = widget.children('.widget-inside'), w = parseInt( widget.find('input.widget-width').val(), 10 );
     32           
     33            if ( inside.is(':hidden') ) {
     34                if ( w > 250 && inside.closest('div.widgets-sortables').length ) {
     35                    css['width'] = w + 30 + 'px';
     36                    if ( inside.closest('div.widget-liquid-right').length )
     37                        css['marginLeft'] = 235 - w + 'px';
     38                    widget.css(css);
     39                }
     40                wpWidgets.fixLabels(widget);
     41                inside.slideDown('fast');
    2742            } else {
    28                 $(this).parent().removeClass('closed');
    29             }
    30         });
    31 
    32         $('#widgets-right .widget, #wp_inactive_widgets .widget').each(function(){
     43                inside.slideUp('fast', function() {
     44                    widget.css({'width':'','marginLeft':''});
     45                });
     46            }
     47            return false;
     48        });
     49
     50        $('input.widget-control-save').live('click', function(){
     51            wpWidgets.save( $(this).closest('div.widget'), 0, 1, 0 );
     52            return false;
     53        });
     54
     55        $('a.widget-control-remove').live('click', function(){
     56            wpWidgets.save( $(this).closest('div.widget'), 1, 1, 0 );
     57            return false;
     58        });
     59
     60        $('a.widget-control-close').live('click', function(){
     61            wpWidgets.close( $(this).closest('div.widget') );
     62            return false;
     63        });
     64
     65        sidebars.children('.widget').each(function() {
    3366            wpWidgets.appendTitle(this);
    34         });
    35 
    36         this.addEvents();
    37         $('.widget-error').parents('.widget').find('a.widget-action').click();
    38 
    39         $('#available-widgets').droppable({
    40             tolerance: 'pointer',
    41             accept: function(o){
    42                 return $(o).parent().attr('id') != 'widget-list';
    43             },
    44             drop: function(e,ui) {
    45                 ui.draggable.addClass('deleting');
    46                 $('#removing-widget').hide().children('span').html('');
    47             },
    48             over: function(e,ui) {
    49                 ui.draggable.addClass('deleting');
    50                 $('.widget-placeholder').hide();
    51 
    52                 if ( ui.draggable.hasClass('ui-sortable-helper') )
    53                     $('#removing-widget').show().children('span').html( ui.draggable.find('.widget-title h4').html() );
    54             },
    55             out: function(e,ui) {
    56                 ui.draggable.removeClass('deleting');
    57                 $('.widget-placeholder').show();
    58                 $('#removing-widget').hide().children('span').html('');
    59             }
    60         });
    61 
    62         $('#widget-list .widget').draggable({
    63             connectToSortable: '.widgets-sortables',
    64             handle: '.widget-title',
     67            if ( $('p.widget-error', this).length )
     68                $('a.widget-action', this).click();
     69        });
     70
     71        $('#widget-list').children('.widget').draggable({
     72            connectToSortable: 'div.widgets-sortables',
     73            handle: '> .widget-top > .widget-title',
    6574            distance: 2,
    6675            helper: 'clone',
     
    6978            start: function(e,ui) {
    7079                wpWidgets.fixWebkit(1);
    71                 ui.helper.find('.widget-description').hide();
     80                ui.helper.find('div.widget-description').hide();
    7281            },
    7382            stop: function(e,ui) {
     
    7988        });
    8089
    81         $('.widgets-sortables').sortable({
     90        sidebars.sortable({
    8291            placeholder: 'widget-placeholder',
    83             connectWith: '.widgets-sortables',
    84             items: '.widget',
    85             handle: '.widget-title',
     92            items: '> .widget',
     93            handle: '> .widget-top > .widget-title',
     94            connectWith: 'div.widgets-sortables',
    8695            cursor: 'move',
    8796            distance: 2,
     
    8998            start: function(e,ui) {
    9099                wpWidgets.fixWebkit(1);
    91                 ui.item.find('.widget-inside').hide();
     100                ui.item.children('.widget-inside').hide();
    92101                ui.item.css({'marginLeft':'','width':''});
    93102            },
     
    102111                }
    103112
    104                 var add = ui.item.find('input.add_new').val(), n = ui.item.find('input.multi_number').val(), id = ui.item.attr('id'), sb = $(this).attr('id');
     113                var add = ui.item.find('input.add_new').val(),
     114                    n = ui.item.find('input.multi_number').val(),
     115                    id = ui.item.attr('id'),
     116                    sb = $(this).attr('id');
    105117
    106118                ui.item.css({'marginLeft':'','width':''});
     
    116128                        rem = 'div#' + id;
    117129                    }
    118                     wpWidgets.addEvents(ui.item);
    119130                    wpWidgets.save( ui.item, 0, 0, 1 );
    120131                    ui.item.find('input.add_new').val('');
     
    128139                    $(this).sortable('cancel');
    129140            }
    130         }).not(':visible').sortable('disable');
    131         wpWidgets.resize();
    132         wpWidgets.fixLabels();
     141        }).parent().filter('.closed').children('.widgets-sortables').sortable('disable');
     142
     143        $('#available-widgets').droppable({
     144            tolerance: 'pointer',
     145            accept: function(o){
     146                return $(o).parent().attr('id') != 'widget-list';
     147            },
     148            drop: function(e,ui) {
     149                ui.draggable.addClass('deleting');
     150                $('#removing-widget').hide().children('span').html('');
     151            },
     152            over: function(e,ui) {
     153                ui.draggable.addClass('deleting');
     154                $('div.widget-placeholder').hide();
     155
     156                if ( ui.draggable.hasClass('ui-sortable-helper') )
     157                    $('#removing-widget').show().children('span')
     158                    .html( ui.draggable.find('div.widget-title').children('h4').html() );
     159            },
     160            out: function(e,ui) {
     161                ui.draggable.removeClass('deleting');
     162                $('div.widget-placeholder').show();
     163                $('#removing-widget').hide().children('span').html('');
     164            }
     165        });
    133166    },
    134167
    135168    saveOrder : function(sb) {
    136169        if ( sb )
    137             $('#' + sb).parents('.widgets-holder-wrap').find('.ajax-feedback').css('visibility', 'visible');
     170            $('#' + sb).closest('div.widgets-holder-wrap').find('img.ajax-feedback').css('visibility', 'visible');
    138171
    139172        var a = {
     
    143176        };
    144177
    145         $('.widgets-sortables').each( function() {
     178        $('div.widgets-sortables').each( function() {
    146179            a['sidebars[' + $(this).attr('id') + ']'] = $(this).sortable('toArray').join(',');
    147180        });
    148181
    149182        $.post( ajaxurl, a, function() {
    150             $('.ajax-feedback').css('visibility', 'hidden');
    151         });
     183            $('img.ajax-feedback').css('visibility', 'hidden');
     184        });
     185
    152186        this.resize();
    153187    },
    154188
    155189    save : function(widget, del, animate, order) {
    156         var sb = widget.parents('.widgets-sortables').attr('id'), data = widget.find('form').serialize(), a;
     190        var sb = widget.closest('div.widgets-sortables').attr('id'), data = widget.find('form').serialize(), a;
    157191        widget = $(widget);
    158         widget.find('.ajax-feedback').css('visibility', 'visible');
     192        $('.ajax-feedback', widget).css('visibility', 'visible');
    159193
    160194        a = {
     
    173207
    174208            if ( del ) {
    175                 if ( !$('.widget_number', widget).val() ) {
    176                     id = $('.widget-id', widget).val();
    177                     $('#available-widgets .widget-id').each(function(){
     209                if ( !$('input.widget_number', widget).val() ) {
     210                    id = $('input.widget-id', widget).val();
     211                    $('#available-widgets').find('input.widget-id').each(function(){
    178212                        if ( $(this).val() == id )
    179                             $(this).parents('.widget').show();
     213                            $(this).closest('div.widget').show();
    180214                    });
    181215                }
     
    194228                $('.ajax-feedback').css('visibility', 'hidden');
    195229                if ( r && r.length > 2 ) {
    196                     $('.widget-content', widget).html(r);
     230                    $('div.widget-content', widget).html(r);
    197231                    wpWidgets.appendTitle(widget);
    198232                    wpWidgets.fixLabels(widget);
     
    205239
    206240    appendTitle : function(widget) {
    207         $('input[type="text"]', widget).each(function(){
    208             var title;
    209             if ( this.id.indexOf('title') != -1 ) {
    210                 title = $(this).val().replace(/<[^<>]+>/g, '').replace(/</g, '&lt;').replace(/>/g, '&gt;');
    211                 if ( title )
    212                     $('.widget-title .in-widget-title', widget).html(': ' + title);
    213                 return false;
    214             }
    215         });
     241        var title = $('input[id*="-title"]', widget);
     242        if ( title = title.val() ) {
     243            title = title.replace(/<[^<>]+>/g, '').replace(/</g, '&lt;').replace(/>/g, '&gt;');
     244            $(widget).children('.widget-top').children('.widget-title').children()
     245                .children('.in-widget-title').html(': ' + title);
     246        }
    216247    },
    217248
    218249    resize : function() {
    219         $('.widgets-sortables').not('#wp_inactive_widgets').each(function(){
    220             var h = 50, H = $('.widget', this).length;
     250        $('div.widgets-sortables').not('#wp_inactive_widgets').each(function(){
     251            var h = 50, H = $(this).children('.widget').length;
    221252            h = h + parseInt(H * 48, 10);
    222253            $(this).css( 'minHeight', h + 'px' );
     
    231262        });
    232263    },
    233    
    234     fixLabels : function(sc) {
    235         sc = sc || document;
    236 
    237         $('.widget-inside label', sc).each(function(){
     264
     265    fixLabels : function(widget) {
     266        widget.children('.widget-inside').find('label').each(function(){
    238267            var f = $(this).attr('for');
    239 
    240268            if ( f && f == $('input', this).attr('id') )
    241269                $(this).removeAttr('for');
    242270        });
    243271    },
    244    
     272
    245273    close : function(widget) {
    246         widget.find('.widget-inside').slideUp('fast', function(){
     274        widget.children('.widget-inside').slideUp('fast', function(){
    247275            widget.css({'width':'','marginLeft':''});
    248         });
    249     },
    250 
    251     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');
    255             if ( inside.is(':hidden') ) {
    256                 if ( w > 250 && inside.parents('.widgets-sortables').length ) {
    257                     css['width'] = w + 30 + 'px';
    258                     if ( inside.parents('.widget-liquid-right').length )
    259                         css['marginLeft'] = 235 - w + 'px';
    260                     inside.parents('.widget').css(css);
    261                 }
    262                 inside.slideDown('fast');
    263             } else {
    264                 inside.slideUp('fast', function(){ inside.parents('.widget').css({'width':'','marginLeft':''}); });
    265             }
    266             return false;
    267         });
    268         $('.widget-control-save', sc).click(function(){
    269             wpWidgets.save( $(this).parents('.widget'), 0, 1, 0 );
    270             return false;
    271         });
    272         $('.widget-control-remove', sc).click(function(){
    273             wpWidgets.save( $(this).parents('.widget'), 1, 1, 0 );
    274             return false;
    275         });
    276         $('.widget-control-close', sc).click(function(){
    277             wpWidgets.close( $(this).parents('.widget') );
    278             return false;
    279276        });
    280277    }
    281278};
    282 $(document).ready(function(){wpWidgets.init();});
     279
     280$(document).ready(function($){ wpWidgets.init(); });
    283281
    284282})(jQuery);
  • trunk/wp-admin/js/widgets.js

    r11503 r11837  
    1 var wpWidgets;(function(a){wpWidgets={init:function(){var b;if(a("body").hasClass("widgets_access")){return}a("#widgets-right div.sidebar-name").click(function(){var d=a(this).siblings(".widgets-sortables");if(d.is(":visible")){d.sortable("disable");a(this).parent().addClass("closed")}else{a(this).parent().removeClass("closed");d.sortable("enable").sortable("refresh")}});a("#widgets-left div.sidebar-name").click(function(){if(a(this).siblings(".widget-holder").is(":visible")){a(this).parent().addClass("closed")}else{a(this).parent().removeClass("closed")}});a("#widgets-right .widget, #wp_inactive_widgets .widget").each(function(){wpWidgets.appendTitle(this)});this.addEvents();a(".widget-error").parents(".widget").find("a.widget-action").click();a("#available-widgets").droppable({tolerance:"pointer",accept:function(c){return a(c).parent().attr("id")!="widget-list"},drop:function(d,c){c.draggable.addClass("deleting");a("#removing-widget").hide().children("span").html("")},over:function(d,c){c.draggable.addClass("deleting");a(".widget-placeholder").hide();if(c.draggable.hasClass("ui-sortable-helper")){a("#removing-widget").show().children("span").html(c.draggable.find(".widget-title h4").html())}},out:function(d,c){c.draggable.removeClass("deleting");a(".widget-placeholder").show();a("#removing-widget").hide().children("span").html("")}});a("#widget-list .widget").draggable({connectToSortable:".widgets-sortables",handle:".widget-title",distance:2,helper:"clone",zIndex:5,containment:"document",start:function(d,c){wpWidgets.fixWebkit(1);c.helper.find(".widget-description").hide()},stop:function(d,c){if(b){a(b).hide()}b="";wpWidgets.fixWebkit()}});a(".widgets-sortables").sortable({placeholder:"widget-placeholder",connectWith:".widgets-sortables",items:".widget",handle:".widget-title",cursor:"move",distance:2,containment:"document",start:function(d,c){wpWidgets.fixWebkit(1);c.item.find(".widget-inside").hide();c.item.css({marginLeft:"",width:""})},stop:function(f,c){if(c.item.hasClass("ui-draggable")){c.item.draggable("destroy")}if(c.item.hasClass("deleting")){wpWidgets.save(c.item,1,0,1);c.item.remove();return}var d=c.item.find("input.add_new").val(),i=c.item.find("input.multi_number").val(),h=c.item.attr("id"),g=a(this).attr("id");c.item.css({marginLeft:"",width:""});wpWidgets.fixWebkit();if(d){if("multi"==d){c.item.html(c.item.html().replace(/<[^<>]+>/g,function(e){return e.replace(/__i__|%i%/g,i)}));c.item.attr("id",h.replace(/__i__|%i%/g,i));i++;a("div#"+h).find("input.multi_number").val(i)}else{if("single"==d){c.item.attr("id","new-"+h);b="div#"+h}}wpWidgets.addEvents(c.item);wpWidgets.save(c.item,0,0,1);c.item.find("input.add_new").val("");c.item.find("a.widget-action").click();return}wpWidgets.saveOrder(g)},receive:function(d,c){if(!a(this).is(":visible")){a(this).sortable("cancel")}}}).not(":visible").sortable("disable");wpWidgets.resize();wpWidgets.fixLabels()},saveOrder:function(c){if(c){a("#"+c).parents(".widgets-holder-wrap").find(".ajax-feedback").css("visibility","visible")}var b={action:"widgets-order",savewidgets:a("#_wpnonce_widgets").val(),sidebars:[]};a(".widgets-sortables").each(function(){b["sidebars["+a(this).attr("id")+"]"]=a(this).sortable("toArray").join(",")});a.post(ajaxurl,b,function(){a(".ajax-feedback").css("visibility","hidden")});this.resize()},save:function(g,d,e,b){var h=g.parents(".widgets-sortables").attr("id"),f=g.find("form").serialize(),c;g=a(g);g.find(".ajax-feedback").css("visibility","visible");c={action:"save-widget",savewidgets:a("#_wpnonce_widgets").val(),sidebar:h};if(d){c.delete_widget=1}f+="&"+a.param(c);a.post(ajaxurl,f,function(i){var j;if(d){if(!a(".widget_number",g).val()){j=a(".widget-id",g).val();a("#available-widgets .widget-id").each(function(){if(a(this).val()==j){a(this).parents(".widget").show()}})}if(e){b=0;g.slideUp("fast",function(){a(this).remove();wpWidgets.saveOrder()})}else{g.remove();wpWidgets.resize()}}else{a(".ajax-feedback").css("visibility","hidden");if(i&&i.length>2){a(".widget-content",g).html(i);wpWidgets.appendTitle(g);wpWidgets.fixLabels(g)}}if(b){wpWidgets.saveOrder()}})},appendTitle:function(b){a('input[type="text"]',b).each(function(){var c;if(this.id.indexOf("title")!=-1){c=a(this).val().replace(/<[^<>]+>/g,"").replace(/</g,"&lt;").replace(/>/g,"&gt;");if(c){a(".widget-title .in-widget-title",b).html(": "+c)}return false}})},resize:function(){a(".widgets-sortables").not("#wp_inactive_widgets").each(function(){var c=50,b=a(".widget",this).length;c=c+parseInt(b*48,10);a(this).css("minHeight",c+"px")})},fixWebkit:function(b){b=b?"none":"";a("body").css({WebkitUserSelect:b,KhtmlUserSelect:b})},fixLabels:function(b){b=b||document;a(".widget-inside label",b).each(function(){var c=a(this).attr("for");if(c&&c==a("input",this).attr("id")){a(this).removeAttr("for")}})},close:function(b){b.find(".widget-inside").slideUp("fast",function(){b.css({width:"",marginLeft:""})})},addEvents:function(b){b=b||document;a("a.widget-action",b).click(function(){var d=parseInt(a(this).parents(".widget").find(".widget-width").val(),10),e={},c=a(this).parents(".widget-top").siblings(".widget-inside");if(c.is(":hidden")){if(d>250&&c.parents(".widgets-sortables").length){e.width=d+30+"px";if(c.parents(".widget-liquid-right").length){e.marginLeft=235-d+"px"}c.parents(".widget").css(e)}c.slideDown("fast")}else{c.slideUp("fast",function(){c.parents(".widget").css({width:"",marginLeft:""})})}return false});a(".widget-control-save",b).click(function(){wpWidgets.save(a(this).parents(".widget"),0,1,0);return false});a(".widget-control-remove",b).click(function(){wpWidgets.save(a(this).parents(".widget"),1,1,0);return false});a(".widget-control-close",b).click(function(){wpWidgets.close(a(this).parents(".widget"));return false})}};a(document).ready(function(){wpWidgets.init()})})(jQuery);
     1var wpWidgets;(function(a){wpWidgets={init:function(){var c,b=a("div.widgets-sortables");a("#widgets-right").children(".widgets-holder-wrap").children(".sidebar-name").click(function(){var e=a(this).siblings(".widgets-sortables"),d=a(this).parent();if(!d.hasClass("closed")){e.sortable("disable");d.addClass("closed")}else{d.removeClass("closed");e.sortable("enable").sortable("refresh")}});a("#widgets-left").children(".widgets-holder-wrap").children(".sidebar-name").click(function(){a(this).siblings(".widget-holder").parent().toggleClass("closed")});b.not("#wp_inactive_widgets").each(function(){var e=50,d=a(this).children(".widget").length;e=e+parseInt(d*48,10);a(this).css("minHeight",e+"px")});a("a.widget-action").live("click",function(){var f={},g=a(this).closest("div.widget"),d=g.children(".widget-inside"),e=parseInt(g.find("input.widget-width").val(),10);if(d.is(":hidden")){if(e>250&&d.closest("div.widgets-sortables").length){f.width=e+30+"px";if(d.closest("div.widget-liquid-right").length){f.marginLeft=235-e+"px"}g.css(f)}wpWidgets.fixLabels(g);d.slideDown("fast")}else{d.slideUp("fast",function(){g.css({width:"",marginLeft:""})})}return false});a("input.widget-control-save").live("click",function(){wpWidgets.save(a(this).closest("div.widget"),0,1,0);return false});a("a.widget-control-remove").live("click",function(){wpWidgets.save(a(this).closest("div.widget"),1,1,0);return false});a("a.widget-control-close").live("click",function(){wpWidgets.close(a(this).closest("div.widget"));return false});b.children(".widget").each(function(){wpWidgets.appendTitle(this);if(a("p.widget-error",this).length){a("a.widget-action",this).click()}});a("#widget-list").children(".widget").draggable({connectToSortable:"div.widgets-sortables",handle:"> .widget-top > .widget-title",distance:2,helper:"clone",zIndex:5,containment:"document",start:function(f,d){wpWidgets.fixWebkit(1);d.helper.find("div.widget-description").hide()},stop:function(f,d){if(c){a(c).hide()}c="";wpWidgets.fixWebkit()}});b.sortable({placeholder:"widget-placeholder",items:"> .widget",handle:"> .widget-top > .widget-title",connectWith:"div.widgets-sortables",cursor:"move",distance:2,containment:"document",start:function(f,d){wpWidgets.fixWebkit(1);d.item.children(".widget-inside").hide();d.item.css({marginLeft:"",width:""})},stop:function(g,d){if(d.item.hasClass("ui-draggable")){d.item.draggable("destroy")}if(d.item.hasClass("deleting")){wpWidgets.save(d.item,1,0,1);d.item.remove();return}var f=d.item.find("input.add_new").val(),j=d.item.find("input.multi_number").val(),i=d.item.attr("id"),h=a(this).attr("id");d.item.css({marginLeft:"",width:""});wpWidgets.fixWebkit();if(f){if("multi"==f){d.item.html(d.item.html().replace(/<[^<>]+>/g,function(e){return e.replace(/__i__|%i%/g,j)}));d.item.attr("id",i.replace(/__i__|%i%/g,j));j++;a("div#"+i).find("input.multi_number").val(j)}else{if("single"==f){d.item.attr("id","new-"+i);c="div#"+i}}wpWidgets.save(d.item,0,0,1);d.item.find("input.add_new").val("");d.item.find("a.widget-action").click();return}wpWidgets.saveOrder(h)},receive:function(f,d){if(!a(this).is(":visible")){a(this).sortable("cancel")}}}).parent().filter(".closed").children(".widgets-sortables").sortable("disable");a("#available-widgets").droppable({tolerance:"pointer",accept:function(d){return a(d).parent().attr("id")!="widget-list"},drop:function(f,d){d.draggable.addClass("deleting");a("#removing-widget").hide().children("span").html("")},over:function(f,d){d.draggable.addClass("deleting");a("div.widget-placeholder").hide();if(d.draggable.hasClass("ui-sortable-helper")){a("#removing-widget").show().children("span").html(d.draggable.find("div.widget-title").children("h4").html())}},out:function(f,d){d.draggable.removeClass("deleting");a("div.widget-placeholder").show();a("#removing-widget").hide().children("span").html("")}})},saveOrder:function(c){if(c){a("#"+c).closest("div.widgets-holder-wrap").find("img.ajax-feedback").css("visibility","visible")}var b={action:"widgets-order",savewidgets:a("#_wpnonce_widgets").val(),sidebars:[]};a("div.widgets-sortables").each(function(){b["sidebars["+a(this).attr("id")+"]"]=a(this).sortable("toArray").join(",")});a.post(ajaxurl,b,function(){a("img.ajax-feedback").css("visibility","hidden")});this.resize()},save:function(g,d,e,b){var h=g.closest("div.widgets-sortables").attr("id"),f=g.find("form").serialize(),c;g=a(g);a(".ajax-feedback",g).css("visibility","visible");c={action:"save-widget",savewidgets:a("#_wpnonce_widgets").val(),sidebar:h};if(d){c.delete_widget=1}f+="&"+a.param(c);a.post(ajaxurl,f,function(i){var j;if(d){if(!a("input.widget_number",g).val()){j=a("input.widget-id",g).val();a("#available-widgets").find("input.widget-id").each(function(){if(a(this).val()==j){a(this).closest("div.widget").show()}})}if(e){b=0;g.slideUp("fast",function(){a(this).remove();wpWidgets.saveOrder()})}else{g.remove();wpWidgets.resize()}}else{a(".ajax-feedback").css("visibility","hidden");if(i&&i.length>2){a("div.widget-content",g).html(i);wpWidgets.appendTitle(g);wpWidgets.fixLabels(g)}}if(b){wpWidgets.saveOrder()}})},appendTitle:function(b){var c=a('input[id*="-title"]',b);if(c=c.val()){c=c.replace(/<[^<>]+>/g,"").replace(/</g,"&lt;").replace(/>/g,"&gt;");a(b).children(".widget-top").children(".widget-title").children().children(".in-widget-title").html(": "+c)}},resize:function(){a("div.widgets-sortables").not("#wp_inactive_widgets").each(function(){var c=50,b=a(this).children(".widget").length;c=c+parseInt(b*48,10);a(this).css("minHeight",c+"px")})},fixWebkit:function(b){b=b?"none":"";a("body").css({WebkitUserSelect:b,KhtmlUserSelect:b})},fixLabels:function(b){b.children(".widget-inside").find("label").each(function(){var c=a(this).attr("for");if(c&&c==a("input",this).attr("id")){a(this).removeAttr("for")}})},close:function(b){b.children(".widget-inside").slideUp("fast",function(){b.css({width:"",marginLeft:""})})}};a(document).ready(function(b){wpWidgets.init()})})(jQuery);
  • trunk/wp-admin/widgets.php

    r11824 r11837  
    1616    wp_die( __( 'Cheatin&#8217; uh?' ));
    1717
    18 wp_enqueue_script('admin-widgets');
    1918wp_admin_css( 'widgets' );
     19
     20$widgets_access = get_user_setting( 'widgets_access' );
     21if ( isset($_GET['widgets-access']) ) {
     22    $widgets_access = 'on' == $_GET['widgets-access'] ? 'on' : 'off';
     23    set_user_setting( 'widgets_access', $widgets_access );
     24}
     25
     26if ( 'on' == $widgets_access )
     27    add_filter( 'admin_body_class', create_function('', '{return " widgets_access ";}') );
     28else
     29    wp_enqueue_script('admin-widgets');
    2030
    2131do_action( 'sidebar_admin_setup' );
     
    303313}
    304314
    305 $widgets_access = get_user_setting( 'widgets_access' );
    306 if ( isset($_GET['widgets-access']) ) {
    307     $widgets_access = 'on' == $_GET['widgets-access'] ? 'on' : 'off';
    308     set_user_setting( 'widgets_access', $widgets_access );
    309 }
    310 
    311 if ( 'on' == $widgets_access )
    312     add_filter( 'admin_body_class', create_function('', '{return " widgets_access ";}') );
    313 
    314315$messages = array(
    315316    __('Changes saved.')
  • trunk/wp-includes/script-loader.php

    r11790 r11837  
    6161    $scripts->add( 'utils', "/wp-admin/js/utils$suffix.js", false, '20090102' );
    6262
    63     $scripts->add( 'common', "/wp-admin/js/common$suffix.js", array('jquery', 'hoverIntent', 'utils'), '20090730' );
     63    $scripts->add( 'common', "/wp-admin/js/common$suffix.js", array('jquery', 'hoverIntent', 'utils'), '20090817' );
    6464    $scripts->add_data( 'common', 'group', 1 );
    6565    $scripts->localize( 'common', 'commonL10n', array(
     
    341341        $scripts->add_data( 'media-upload', 'group', 1 );
    342342
    343         $scripts->add( 'admin-widgets', "/wp-admin/js/widgets$suffix.js", array( 'jquery-ui-sortable', 'jquery-ui-draggable', 'jquery-ui-droppable' ), '20090601' );
     343        $scripts->add( 'admin-widgets', "/wp-admin/js/widgets$suffix.js", array( 'jquery-ui-sortable', 'jquery-ui-draggable', 'jquery-ui-droppable' ), '20090817' );
    344344        $scripts->add_data( 'admin-widgets', 'group', 1 );
    345345
Note: See TracChangeset for help on using the changeset viewer.