<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><meta http-equiv="content-type" content="text/html; charset=utf-8" /><style type="text/css"><!--
#msg dl { border: 1px #006 solid; background: #369; padding: 6px; color: #fff; }
#msg dt { float: left; width: 6em; font-weight: bold; }
#msg dt:after { content:':';}
#msg dl, #msg dt, #msg ul, #msg li, #header, #footer { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt;  }
#msg dl a { font-weight: bold}
#msg dl a:link    { color:#fc3; }
#msg dl a:active  { color:#ff0; }
#msg dl a:visited { color:#cc6; }
h3 { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt; font-weight: bold; }
#msg pre { overflow: auto; background: #ffc; border: 1px #fc0 solid; padding: 6px; }
#msg ul, pre { overflow: auto; }
#header, #footer { color: #fff; background: #636; border: 1px #300 solid; padding: 6px; }
#patch { width: 100%; }
#patch h4 {font-family: verdana,arial,helvetica,sans-serif;font-size:10pt;padding:8px;background:#369;color:#fff;margin:0;}
#patch .propset h4, #patch .binary h4 {margin:0;}
#patch pre {padding:0;line-height:1.2em;margin:0;}
#patch .diff {width:100%;background:#eee;padding: 0 0 10px 0;overflow:auto;}
#patch .propset .diff, #patch .binary .diff  {padding:10px 0;}
#patch span {display:block;padding:0 10px;}
#patch .modfile, #patch .addfile, #patch .delfile, #patch .propset, #patch .binary, #patch .copfile {border:1px solid #ccc;margin:10px 0;}
#patch ins {background:#dfd;text-decoration:none;display:block;padding:0 10px;}
#patch del {background:#fdd;text-decoration:none;display:block;padding:0 10px;}
#patch .lines, .info {color:#888;background:#fff;}
--></style>
<title>[17270] trunk: Keep sorting and paging for bulk actions.</title>
</head>
<body>

<div id="msg">
<dl>
<dt>Revision</dt> <dd><a href="http://trac.wordpress.org/changeset/17270">17270</a></dd>
<dt>Author</dt> <dd>nacin</dd>
<dt>Date</dt> <dd>2011-01-12 17:06:33 +0000 (Wed, 12 Jan 2011)</dd>
</dl>

<h3>Log Message</h3>
<pre>Keep sorting and paging for bulk actions. props garyc40, see <a href="http://trac.wordpress.org/ticket/16166">#16166</a>.</pre>

<h3>Modified Paths</h3>
<ul>
<li><a href="#trunkwpadmineditcommentsphp">trunk/wp-admin/edit-comments.php</a></li>
<li><a href="#trunkwpadminedittagsphp">trunk/wp-admin/edit-tags.php</a></li>
<li><a href="#trunkwpadmineditphp">trunk/wp-admin/edit.php</a></li>
<li><a href="#trunkwpadminincludesclasswplisttablephp">trunk/wp-admin/includes/class-wp-list-table.php</a></li>
<li><a href="#trunkwpadminjslisttabledevjs">trunk/wp-admin/js/list-table.dev.js</a></li>
<li><a href="#trunkwpadminjslisttablejs">trunk/wp-admin/js/list-table.js</a></li>
<li><a href="#trunkwpadminuploadphp">trunk/wp-admin/upload.php</a></li>
<li><a href="#trunkwpincludesscriptloaderphp">trunk/wp-includes/script-loader.php</a></li>
</ul>

</div>
<div id="patch">
<h3>Diff</h3>
<a id="trunkwpadmineditcommentsphp"></a>
<div class="modfile"><h4>Modified: trunk/wp-admin/edit-comments.php (17269 => 17270)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/wp-admin/edit-comments.php        2011-01-12 16:02:56 UTC (rev 17269)
+++ trunk/wp-admin/edit-comments.php        2011-01-12 17:06:33 UTC (rev 17270)
</span><span class="lines">@@ -37,7 +37,7 @@
</span><span class="cx">         $approved = $unapproved = $spammed = $unspammed = $trashed = $untrashed = $deleted = 0;
</span><span class="cx"> 
</span><span class="cx">         $redirect_to = remove_query_arg( array( 'trashed', 'untrashed', 'deleted', 'spammed', 'unspammed', 'approved', 'unapproved', 'ids' ), wp_get_referer() );
</span><del>-        $redirect_to = add_query_arg( 'paged', $pagenum, $redirect_to );
</del><ins>+        $redirect_to = $wp_list_table-&gt;add_query_args( $redirect_to );
</ins><span class="cx"> 
</span><span class="cx">         foreach ( $comment_ids as $comment_id ) { // Check the permissions on each
</span><span class="cx">                 if ( !current_user_can( 'edit_comment', $comment_id ) )
</span></span></pre></div>
<a id="trunkwpadminedittagsphp"></a>
<div class="modfile"><h4>Modified: trunk/wp-admin/edit-tags.php (17269 => 17270)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/wp-admin/edit-tags.php        2011-01-12 16:02:56 UTC (rev 17269)
+++ trunk/wp-admin/edit-tags.php        2011-01-12 17:06:33 UTC (rev 17270)
</span><span class="lines">@@ -78,6 +78,7 @@
</span><span class="cx"> 
</span><span class="cx">         wp_delete_term( $tag_ID, $taxonomy );
</span><span class="cx"> 
</span><ins>+        $location = $wp_list_table-&gt;add_query_args( $location );
</ins><span class="cx">         $location = add_query_arg( 'message', 2, $location );
</span><span class="cx">         wp_redirect( $location );
</span><span class="cx">         exit;
</span><span class="lines">@@ -104,6 +105,7 @@
</span><span class="cx">         }
</span><span class="cx"> 
</span><span class="cx">         $location = add_query_arg( 'message', 6, $location );
</span><ins>+        $location = $wp_list_table-&gt;add_query_args( $location );
</ins><span class="cx">         wp_redirect( $location );
</span><span class="cx">         exit;
</span><span class="cx"> 
</span></span></pre></div>
<a id="trunkwpadmineditphp"></a>
<div class="modfile"><h4>Modified: trunk/wp-admin/edit.php (17269 => 17270)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/wp-admin/edit.php        2011-01-12 16:02:56 UTC (rev 17269)
+++ trunk/wp-admin/edit.php        2011-01-12 17:06:33 UTC (rev 17270)
</span><span class="lines">@@ -41,7 +41,7 @@
</span><span class="cx">         check_admin_referer('bulk-posts');
</span><span class="cx"> 
</span><span class="cx">         $sendback = remove_query_arg( array('trashed', 'untrashed', 'deleted', 'ids'), wp_get_referer() );
</span><del>-        $sendback = add_query_arg( 'paged', $pagenum, $sendback );
</del><ins>+        $sendback = $wp_list_table-&gt;add_query_args( $sendback );
</ins><span class="cx">         if ( strpos($sendback, 'post.php') !== false )
</span><span class="cx">                 $sendback = admin_url($post_new_file);
</span><span class="cx"> 
</span></span></pre></div>
<a id="trunkwpadminincludesclasswplisttablephp"></a>
<div class="modfile"><h4>Modified: trunk/wp-admin/includes/class-wp-list-table.php (17269 => 17270)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/wp-admin/includes/class-wp-list-table.php        2011-01-12 16:02:56 UTC (rev 17269)
+++ trunk/wp-admin/includes/class-wp-list-table.php        2011-01-12 17:06:33 UTC (rev 17270)
</span><span class="lines">@@ -614,7 +614,30 @@
</span><span class="cx">                 $hidden = array_intersect( array_keys( $columns ), array_filter( $hidden ) );
</span><span class="cx">                 return count( $columns ) - count( $hidden );
</span><span class="cx">         }
</span><ins>+        
+        function get_order_info() {
+                $current_orderby = isset( $_GET['orderby'] ) ? $_GET['orderby'] : '';
</ins><span class="cx"> 
</span><ins>+                if ( ! $current_orderby )
+                        $current_order = '';
+                elseif ( isset( $_GET['order'] ) &amp;&amp; 'desc' == $_GET['order'] )
+                        $current_order = 'desc';
+                else
+                        $current_order = 'asc';
+
+                return array( $current_orderby, $current_order );
+        }
+        
+        function add_query_args( $location ) {
+                $pagenum = $this-&gt;get_pagenum();
+                list( $current_orderby, $current_order ) = $this-&gt;get_order_info();
+                $location = add_query_arg( 'paged', $pagenum, $location );
+                if ( $current_orderby )
+                        $location = add_query_arg( array( 'orderby' =&gt; $current_orderby, 'order' =&gt; $current_order ), $location );
+
+                return $location;
+        }
+
</ins><span class="cx">         /**
</span><span class="cx">          * Print column headers, accounting for hidden and sortable columns.
</span><span class="cx">          *
</span><span class="lines">@@ -630,16 +653,8 @@
</span><span class="cx"> 
</span><span class="cx">                 $current_url = ( is_ssl() ? 'https://' : 'http://' ) . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'];
</span><span class="cx"> 
</span><del>-                if ( isset( $_GET['orderby'] ) )
-                        $current_orderby = $_GET['orderby'];
-                else
-                        $current_orderby = '';
</del><ins>+                list( $current_orderby, $current_order ) = $this-&gt;get_order_info();
</ins><span class="cx"> 
</span><del>-                if ( isset( $_GET['order'] ) &amp;&amp; 'desc' == $_GET['order'] )
-                        $current_order = 'desc';
-                else
-                        $current_order = 'asc';
-
</del><span class="cx">                 foreach ( $columns as $column_key =&gt; $column_display_name ) {
</span><span class="cx">                         $class = array( 'manage-column', &quot;column-$column_key&quot; );
</span><span class="cx"> 
</span><span class="lines">@@ -733,8 +748,11 @@
</span><span class="cx">          * @access protected
</span><span class="cx">          */
</span><span class="cx">         function display_tablenav( $which ) {
</span><del>-                if ( 'top' == $which )
</del><ins>+                if ( 'top' == $which ) {
</ins><span class="cx">                         wp_nonce_field( 'bulk-' . $this-&gt;_args['plural'] );
</span><ins>+                        list( $current_orderby, $current_order ) = $this-&gt;get_order_info();
+                        echo '&lt;input type=&quot;hidden&quot; name=&quot;orderby&quot; value=&quot;' . esc_attr( $current_orderby ) . '&quot; /&gt;&lt;input type=&quot;hidden&quot; name=&quot;order&quot; value=&quot;' . esc_attr( $current_order ) . '&quot; /&gt;';
+                }
</ins><span class="cx"> ?&gt;
</span><span class="cx">         &lt;div class=&quot;tablenav &lt;?php echo esc_attr( $which ); ?&gt;&quot;&gt;
</span><span class="cx"> 
</span></span></pre></div>
<a id="trunkwpadminjslisttabledevjs"></a>
<div class="modfile"><h4>Modified: trunk/wp-admin/js/list-table.dev.js (17269 => 17270)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/wp-admin/js/list-table.dev.js        2011-01-12 16:02:56 UTC (rev 17269)
+++ trunk/wp-admin/js/list-table.dev.js        2011-01-12 17:06:33 UTC (rev 17270)
</span><span class="lines">@@ -122,7 +122,9 @@
</span><span class="cx">                 if ( 'object' != typeof response ) {
</span><span class="cx">                         this.handle_error();
</span><span class="cx">                 } else {
</span><del>-                        var tablenav = $('.tablenav-pages');
</del><ins>+                        var tablenav = $('.tablenav-pages'),
+                                order = $.query.GET('order'),
+                                orderby = order ? $.query.GET('orderby') : '';
</ins><span class="cx"> 
</span><span class="cx">                         this.stop_loading();
</span><span class="cx"> 
</span><span class="lines">@@ -144,6 +146,9 @@
</span><span class="cx">                         tablenav.find('.first-page, .prev-page').toggleClass('disabled', 1 == $.query.GET('paged'));
</span><span class="cx">                         tablenav.find('.next-page, .last-page').toggleClass('disabled', response.total_pages == $.query.GET('paged'));
</span><span class="cx"> 
</span><ins>+                        $('input[name=order]').val(order);
+                        $('input[name=orderby]').val(orderby);
+
</ins><span class="cx">                         $('th.column-cb :input').attr('checked', false);
</span><span class="cx"> 
</span><span class="cx">                         if ( history.replaceState ) {
</span></span></pre></div>
<a id="trunkwpadminjslisttablejs"></a>
<div class="modfile"><h4>Modified: trunk/wp-admin/js/list-table.js (17269 => 17270)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/wp-admin/js/list-table.js        2011-01-12 16:02:56 UTC (rev 17269)
+++ trunk/wp-admin/js/list-table.js        2011-01-12 17:06:33 UTC (rev 17270)
</span><span class="lines">@@ -1 +1 @@
</span><del>-jQuery(document).ready(function(a){window.listTable={init:function(){this.loading=false;this.reset(&quot;.tablenav, .search-box, .wp-list-table&quot;);if(&quot;&quot;==a.query.GET(&quot;paged&quot;)){a.query.SET(&quot;paged&quot;,1)}this.set_total_pages();this.$tbody=a(&quot;#the-list, #the-comment-list&quot;)},reset:function(d){d=a(d);a(&quot;input&quot;,d).each(function(){this.value=this.defaultValue;this.checked=this.defaultChecked});a(&quot;select&quot;,d).each(function(){var e=a(&quot;option&quot;,this),f=false;e.each(function(){this.selected=this.defaultSelected;f=f||this.defaultSelected});if(!this.multiple&amp;&amp;!f){e[0].selected=true}});a(&quot;textarea&quot;,d).each(function(){this.value=this.defaultValue})},set_total_pages:function(e){var d=a(&quot;.last-page&quot;).attr(&quot;href&quot;);if(d){this.total_pages=e||a.query.load(d).get(&quot;paged&quot;)}},get_total_pages:function(){return this.total_pages},htmlencode:function(d){return a(&quot;&lt;div/&gt;&quot;).text(d).html()},update_rows:function(e,d,h){if(this.loading){return false}var g=false,f={};a.each(e,function(i,j){if(j!=a.query.GET(i)){a.query.SET(i,j);g=true}});if(!g){return false}this.start_loading();if(d){a.query.SET(&quot;paged&quot;,1)}a.each(a.query.get(),function(i,j){if(true===j){f[i]=&quot;&quot;}else{f[i]=j}});this._callback=h;this.fetch_list(f,a.proxy(this,&quot;handle_success&quot;),a.proxy(this,&quot;handle_error&quot;));return true},fetch_list:function(e,f,d){e=a.extend(e,{action:&quot;fetch-list&quot;,list_args:list_args,_ajax_fetch_list_nonce:a(&quot;#_ajax_fetch_list_nonce&quot;).val()});a.ajax({url:ajaxurl,global:false,dataType:&quot;json&quot;,data:e,success:f,error:d})},handle_success:function(d){if(&quot;object&quot;!=typeof d){this.handle_error()}else{var e=a(&quot;.tablenav-pages&quot;);this.stop_loading();a(&quot;div.updated, div.error&quot;).not(&quot;.persistent, .inline&quot;).remove();this.$tbody.html(d.rows);a(&quot;.displaying-num&quot;).html(d.total_items_i18n);a(&quot;.total-pages&quot;).html(d.total_pages_i18n);this.set_total_pages(d.total_pages);if(d.total_pages&gt;1){e.removeClass(&quot;one-page&quot;)}a(&quot;.current-page&quot;).val(a.query.GET(&quot;paged&quot;));e.find(&quot;.first-page, .prev-page&quot;).toggleClass(&quot;disabled&quot;,1==a.query.GET(&quot;paged&quot;));e.find(&quot;.next-page, .last-page&quot;).toggleClass(&quot;disabled&quot;,d.total_pages==a.query.GET(&quot;paged&quot;));a(&quot;th.column-cb :input&quot;).attr(&quot;checked&quot;,false);if(history.replaceState){history.replaceState({},&quot;&quot;,location.pathname+a.query)}if(this._callback){this._callback()}}},handle_error:function(){this.stop_loading();a(&quot;h2&quot;).after('&lt;div class=&quot;error ajax below-h2&quot;&gt;&lt;p&gt;'+listTableL10n.error+&quot;&lt;/p&gt;&lt;/div&gt;&quot;)},start_loading:function(){this.loading=true;a(&quot;.error.ajax&quot;).remove();a(&quot;.list-ajax-loading&quot;).css(&quot;visibility&quot;,&quot;visible&quot;)},stop_loading:function(){this.loading=false;a(&quot;.list-ajax-loading&quot;).css(&quot;visibility&quot;,&quot;hidden&quot;)}};listTable.init();function b(e,d){if(e&lt;1){e=1}if(e&gt;listTable.get_total_pages()){e=listTable.get_total_pages()}a(listTable).trigger(&quot;beforeChangePage&quot;);listTable.update_rows({paged:e},false,function(){if(d.parents(&quot;.tablenav.bottom&quot;).length){scrollTo(0,0)}a(listTable).trigger(&quot;changePage&quot;)})}a(&quot;.tablenav-pages a&quot;).click(function(){var e=a(this),d=a.query.GET(&quot;paged&quot;);switch(e.attr(&quot;class&quot;)){case&quot;first-page&quot;:d=1;break;case&quot;prev-page&quot;:d-=1;break;case&quot;next-page&quot;:d+=1;break;case&quot;last-page&quot;:d=listTable.get_total_pages();break}b(d,e);return false});a(&quot;.current-page&quot;).keypress(function(f){if(13!=f.keyCode){return}var d=a(this);b(parseInt(d.val())||1,d);return false});a(&quot;th.sortable a, th.sorted a&quot;).click(function(){function i(k){return a.query.load(k.find(&quot;a&quot;).attr(&quot;href&quot;)).get(&quot;order&quot;)}var f=a(this),h=f.parent(&quot;th&quot;),g=h.index(),j=a.query.load(f.attr(&quot;href&quot;)).get(&quot;orderby&quot;),e;h=h.closest(&quot;table&quot;).find(&quot;thead th:eq(&quot;+g+&quot;), tfoot th:eq(&quot;+g+&quot;)&quot;);if(j==a.query.get(&quot;orderby&quot;)){e=(&quot;asc&quot;==a.query.get(&quot;order&quot;))?&quot;desc&quot;:&quot;asc&quot;}else{e=i(h);var d=a(&quot;th.sorted&quot;);if(d.length){d.removeClass(&quot;sorted&quot;).addClass(&quot;sortable&quot;);d.removeClass(&quot;desc&quot;).removeClass(&quot;asc&quot;).addClass(&quot;asc&quot;==i(d)?&quot;desc&quot;:&quot;asc&quot;)}h.removeClass(&quot;sortable&quot;).addClass(&quot;sorted&quot;)}h.removeClass(&quot;desc&quot;).removeClass(&quot;asc&quot;).addClass(e);listTable.update_rows({orderby:j,order:e},true);return false});function c(d){if(&quot;keypress&quot;==d.type&amp;&amp;13!=d.keyCode){return}d.preventDefault();d.stopImmediatePropagation();var e=a(this).parent(&quot;.search-box&quot;).find(&quot;:input&quot;).serializeObject();listTable.update_rows(e,true,function(){if(a(&quot;h2.nav-tab-wrapper&quot;).length){return}if(&quot;site-users-network&quot;==pagenow||&quot;site-themes-network&quot;==pagenow){a(&quot;h4.search-text&quot;).remove();if(e.s){a(&quot;ul.subsubsub&quot;).after(a('&lt;h4 class=&quot;clear search-text&quot;&gt;').html(listTableL10n.search.replace(&quot;%s&quot;,this.htmlencode(e.s))))}}else{a(&quot;h2 .subtitle&quot;).remove();if(e.s){a(&quot;h2&quot;).append(a('&lt;span class=&quot;subtitle&quot;&gt;').html(listTableL10n.search.replace(&quot;%s&quot;,this.htmlencode(e.s))))}}})}a(&quot;.search-box :submit&quot;).click(c);a(&quot;.search-box :text&quot;).keypress(c);a(&quot;#post-query-submit&quot;).click(function(){var d={};a(this).parents(&quot;.actions&quot;).find('select[name!=&quot;action&quot;]').each(function(){var e=a(this);d[e.attr(&quot;name&quot;)]=e.val()});listTable.update_rows(d,true);return false});a(&quot;.view-switch a&quot;).click(function(){var d=a(this);listTable.update_rows({mode:a.query.load(d.attr(&quot;href&quot;)).get(&quot;mode&quot;)},false,function(){a(&quot;.view-switch .current&quot;).removeClass(&quot;current&quot;);d.addClass(&quot;current&quot;)});return false})});
</del><span class="cx">\ No newline at end of file
</span><ins>+jQuery(document).ready(function(a){window.listTable={init:function(){this.loading=false;this.reset(&quot;.tablenav, .search-box, .wp-list-table&quot;);if(&quot;&quot;==a.query.GET(&quot;paged&quot;)){a.query.SET(&quot;paged&quot;,1)}this.set_total_pages();this.$tbody=a(&quot;#the-list, #the-comment-list&quot;)},reset:function(d){d=a(d);a(&quot;input&quot;,d).each(function(){this.value=this.defaultValue;this.checked=this.defaultChecked});a(&quot;select&quot;,d).each(function(){var e=a(&quot;option&quot;,this),f=false;e.each(function(){this.selected=this.defaultSelected;f=f||this.defaultSelected});if(!this.multiple&amp;&amp;!f){e[0].selected=true}});a(&quot;textarea&quot;,d).each(function(){this.value=this.defaultValue})},set_total_pages:function(e){var d=a(&quot;.last-page&quot;).attr(&quot;href&quot;);if(d){this.total_pages=e||a.query.load(d).get(&quot;paged&quot;)}},get_total_pages:function(){return this.total_pages},htmlencode:function(d){return a(&quot;&lt;div/&gt;&quot;).text(d).html()},update_rows:function(e,d,h){if(this.loading){return false}var g=false,f={};a.each(e,function(i,j){if(j!=a.query.GET(i)){a.query.SET(i,j);g=true}});if(!g){return false}this.start_loading();if(d){a.query.SET(&quot;paged&quot;,1)}a.each(a.query.get(),function(i,j){if(true===j){f[i]=&quot;&quot;}else{f[i]=j}});this._callback=h;this.fetch_list(f,a.proxy(this,&quot;handle_success&quot;),a.proxy(this,&quot;handle_error&quot;));return true},fetch_list:function(e,f,d){e=a.extend(e,{action:&quot;fetch-list&quot;,list_args:list_args,_ajax_fetch_list_nonce:a(&quot;#_ajax_fetch_list_nonce&quot;).val()});a.ajax({url:ajaxurl,global:false,dataType:&quot;json&quot;,data:e,success:f,error:d})},handle_success:function(e){if(&quot;object&quot;!=typeof e){this.handle_error()}else{var f=a(&quot;.tablenav-pages&quot;),d=a.query.GET(&quot;order&quot;),g=d?a.query.GET(&quot;orderby&quot;):&quot;&quot;;this.stop_loading();a(&quot;div.updated, div.error&quot;).not(&quot;.persistent, .inline&quot;).remove();this.$tbody.html(e.rows);a(&quot;.displaying-num&quot;).html(e.total_items_i18n);a(&quot;.total-pages&quot;).html(e.total_pages_i18n);this.set_total_pages(e.total_pages);if(e.total_pages&gt;1){f.removeClass(&quot;one-page&quot;)}a(&quot;.current-page&quot;).val(a.query.GET(&quot;paged&quot;));f.find(&quot;.first-page, .prev-page&quot;).toggleClass(&quot;disabled&quot;,1==a.query.GET(&quot;paged&quot;));f.find(&quot;.next-page, .last-page&quot;).toggleClass(&quot;disabled&quot;,e.total_pages==a.query.GET(&quot;paged&quot;));a(&quot;input[name=order]&quot;).val(d);a(&quot;input[name=orderby]&quot;).val(g);a(&quot;th.column-cb :input&quot;).attr(&quot;checked&quot;,false);if(history.replaceState){history.replaceState({},&quot;&quot;,location.pathname+a.query)}if(this._callback){this._callback()}}},handle_error:function(){this.stop_loading();a(&quot;h2&quot;).after('&lt;div class=&quot;error ajax below-h2&quot;&gt;&lt;p&gt;'+listTableL10n.error+&quot;&lt;/p&gt;&lt;/div&gt;&quot;)},start_loading:function(){this.loading=true;a(&quot;.error.ajax&quot;).remove();a(&quot;.list-ajax-loading&quot;).css(&quot;visibility&quot;,&quot;visible&quot;)},stop_loading:function(){this.loading=false;a(&quot;.list-ajax-loading&quot;).css(&quot;visibility&quot;,&quot;hidden&quot;)}};listTable.init();function b(e,d){if(e&lt;1){e=1}if(e&gt;listTable.get_total_pages()){e=listTable.get_total_pages()}a(listTable).trigger(&quot;beforeChangePage&quot;);listTable.update_rows({paged:e},false,function(){if(d.parents(&quot;.tablenav.bottom&quot;).length){scrollTo(0,0)}a(listTable).trigger(&quot;changePage&quot;)})}a(&quot;.tablenav-pages a&quot;).click(function(){var e=a(this),d=a.query.GET(&quot;paged&quot;);switch(e.attr(&quot;class&quot;)){case&quot;first-page&quot;:d=1;break;case&quot;prev-page&quot;:d-=1;break;case&quot;next-page&quot;:d+=1;break;case&quot;last-page&quot;:d=listTable.get_total_pages();break}b(d,e);return false});a(&quot;.current-page&quot;).keypress(function(f){if(13!=f.keyCode){return}var d=a(this);b(parseInt(d.val())||1,d);return false});a(&quot;th.sortable a, th.sorted a&quot;).click(function(){function i(k){return a.query.load(k.find(&quot;a&quot;).attr(&quot;href&quot;)).get(&quot;order&quot;)}var f=a(this),h=f.parent(&quot;th&quot;),g=h.index(),j=a.query.load(f.attr(&quot;href&quot;)).get(&quot;orderby&quot;),e;h=h.closest(&quot;table&quot;).find(&quot;thead th:eq(&quot;+g+&quot;), tfoot th:eq(&quot;+g+&quot;)&quot;);if(j==a.query.get(&quot;orderby&quot;)){e=(&quot;asc&quot;==a.query.get(&quot;order&quot;))?&quot;desc&quot;:&quot;asc&quot;}else{e=i(h);var d=a(&quot;th.sorted&quot;);if(d.length){d.removeClass(&quot;sorted&quot;).addClass(&quot;sortable&quot;);d.removeClass(&quot;desc&quot;).removeClass(&quot;asc&quot;).addClass(&quot;asc&quot;==i(d)?&quot;desc&quot;:&quot;asc&quot;)}h.removeClass(&quot;sortable&quot;).addClass(&quot;sorted&quot;)}h.removeClass(&quot;desc&quot;).removeClass(&quot;asc&quot;).addClass(e);listTable.update_rows({orderby:j,order:e},true);return false});function c(d){if(&quot;keypress&quot;==d.type&amp;&amp;13!=d.keyCode){return}d.preventDefault();d.stopImmediatePropagation();var e=a(this).parent(&quot;.search-box&quot;).find(&quot;:input&quot;).serializeObject();listTable.update_rows(e,true,function(){if(a(&quot;h2.nav-tab-wrapper&quot;).length){return}if(&quot;site-users-network&quot;==pagenow||&quot;site-themes-network&quot;==pagenow){a(&quot;h4.search-text&quot;).remove();if(e.s){a(&quot;ul.subsubsub&quot;).after(a('&lt;h4 class=&quot;clear search-text&quot;&gt;').html(listTableL10n.search.replace(&quot;%s&quot;,this.htmlencode(e.s))))}}else{a(&quot;h2 .subtitle&quot;).remove();if(e.s){a(&quot;h2&quot;).append(a('&lt;span class=&quot;subtitle&quot;&gt;').html(listTableL10n.search.replace(&quot;%s&quot;,this.htmlencode(e.s))))}}})}a(&quot;.search-box :submit&quot;).click(c);a(&quot;.search-box :text&quot;).keypress(c);a(&quot;#post-query-submit&quot;).click(function(){var d={};a(this).parents(&quot;.actions&quot;).find('select[name!=&quot;action&quot;]').each(function(){var e=a(this);d[e.attr(&quot;name&quot;)]=e.val()});listTable.update_rows(d,true);return false});a(&quot;.view-switch a&quot;).click(function(){var d=a(this);listTable.update_rows({mode:a.query.load(d.attr(&quot;href&quot;)).get(&quot;mode&quot;)},false,function(){a(&quot;.view-switch .current&quot;).removeClass(&quot;current&quot;);d.addClass(&quot;current&quot;)});return false})});
</ins><span class="cx">\ No newline at end of file
</span></span></pre></div>
<a id="trunkwpadminuploadphp"></a>
<div class="modfile"><h4>Modified: trunk/wp-admin/upload.php (17269 => 17270)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/wp-admin/upload.php        2011-01-12 16:02:56 UTC (rev 17269)
+++ trunk/wp-admin/upload.php        2011-01-12 17:06:33 UTC (rev 17270)
</span><span class="lines">@@ -83,6 +83,7 @@
</span><span class="cx">                                                 $location = $referer;
</span><span class="cx">                                 }
</span><span class="cx"> 
</span><ins>+                                $location = $wp_list_table-&gt;add_query_args( $locations );
</ins><span class="cx">                                 $location = add_query_arg( array( 'attached' =&gt; $attached ) , $location );
</span><span class="cx">                                 wp_redirect( $location );
</span><span class="cx">                                 exit;
</span><span class="lines">@@ -120,6 +121,7 @@
</span><span class="cx">                         break;
</span><span class="cx">         }
</span><span class="cx"> 
</span><ins>+        $location = $wp_list_table-&gt;add_query_args( $locations );
</ins><span class="cx">         wp_redirect( $location );
</span><span class="cx">         exit;
</span><span class="cx"> } elseif ( ! empty( $_REQUEST['_wp_http_referer'] ) ) {
</span></span></pre></div>
<a id="trunkwpincludesscriptloaderphp"></a>
<div class="modfile"><h4>Modified: trunk/wp-includes/script-loader.php (17269 => 17270)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/wp-includes/script-loader.php        2011-01-12 16:02:56 UTC (rev 17269)
+++ trunk/wp-includes/script-loader.php        2011-01-12 17:06:33 UTC (rev 17270)
</span><span class="lines">@@ -302,7 +302,7 @@
</span><span class="cx">                 $scripts-&gt;add( 'admin-custom-fields', &quot;/wp-admin/js/custom-fields$suffix.js&quot;, array('wp-lists'), '20090106' );
</span><span class="cx">                 $scripts-&gt;add_data( 'admin-custom-fields', 'group', 1 );
</span><span class="cx"> 
</span><del>-                $scripts-&gt;add( 'list-table', &quot;/wp-admin/js/list-table$suffix.js&quot;, array( 'jquery-query', 'jquery-serialize-object' ), '20110111a' );
</del><ins>+                $scripts-&gt;add( 'list-table', &quot;/wp-admin/js/list-table$suffix.js&quot;, array( 'jquery-query', 'jquery-serialize-object' ), '20110112' );
</ins><span class="cx">                 $scripts-&gt;add_data( 'list-table', 'group', 1 );
</span><span class="cx">                 $scripts-&gt;localize( 'list-table', 'listTableL10n', array(
</span><span class="cx">                         'error' =&gt; __('An error has occurred while loading the items.'),
</span></span></pre>
</div>
</div>

</body>
</html>