4 add_postbox_toggles : function(page,args) {
6 $('.postbox h3, .postbox .handlediv').click( function() {
7 var p = $(this).parent('.postbox'), id = p.attr('id');
9 p.toggleClass('closed');
10 postboxes.save_state(page);
12 if ( !p.hasClass('closed') && $.isFunction(postboxes.pbshow) )
14 else if ( p.hasClass('closed') && $.isFunction(postboxes.pbhide) )
18 $('.postbox h3 a').click( function(e) {
21 $('.hide-postbox-tog').click( function() {
22 var box = $(this).val();
24 if ( $(this).attr('checked') ) {
26 if ( $.isFunction( postboxes.pbshow ) )
27 postboxes.pbshow( box );
30 if ( $.isFunction( postboxes.pbhide ) )
31 postboxes.pbhide( box );
33 postboxes.save_state(page);
35 $('.columns-prefs input[type="radio"]').click(function(){
36 var num = $(this).val(), i, el, p = $('#poststuff');
38 if ( p.length ) { // write pages
40 p.addClass('has-right-sidebar');
41 $('#side-sortables').addClass('temp-border');
42 } else if ( num == 1 ) {
43 p.removeClass('has-right-sidebar');
44 $('#normal-sortables').append($('#side-sortables').children('.postbox'));
47 for ( i = 4; ( i > num && i > 1 ); i-- ) {
48 el = $('#' + colname(i) + '-sortables');
49 $('#' + colname(i-1) + '-sortables').append(el.children('.postbox'));
52 for ( i = 1; i <= num; i++ ) {
53 el = $('#' + colname(i) + '-sortables');
54 if ( el.parent().is(':hidden') )
55 el.addClass('temp-border').parent().show();
57 $('.postbox-container:visible').css('width', 98/num + '%');
59 postboxes.save_order(page);
82 init : function(page, args) {
83 $.extend( this, args || {} );
84 $('#wpbody-content').css('overflow','hidden');
85 $('.meta-box-sortables').sortable({
86 placeholder: 'sortable-placeholder',
87 connectWith: '.meta-box-sortables',
93 forcePlaceholderSize: true,
96 start: function(e,ui) {
98 WebkitUserSelect: 'none',
99 KhtmlUserSelect: 'none'
102 if ( $.browser.msie )
104 ui.item.addClass('noclick');
107 stop: function(e,ui) {
108 postboxes.save_order(page);
109 ui.item.parent().removeClass('temp-border');
111 WebkitUserSelect: '',
118 save_state : function(page) {
119 var closed = $('.postbox').filter('.closed').map(function() { return this.id; }).get().join(','),
120 hidden = $('.postbox').filter(':hidden').map(function() { return this.id; }).get().join(',');
123 action: 'closed-postboxes',
126 closedpostboxesnonce: jQuery('#closedpostboxesnonce').val(),
131 save_order : function(page) {
132 var postVars, page_columns = $('.columns-prefs input:checked').val() || 0;
135 action: 'meta-box-order',
136 _ajax_nonce: $('#meta-box-order-nonce').val(),
137 page_columns: page_columns,
140 $('.meta-box-sortables').each( function() {
141 postVars["order[" + this.id.split('-')[0] + "]"] = $(this).sortable( 'toArray' ).join(',');
143 $.post( ajaxurl, postVars );