We don't allow sorting by img_size due to lack of index. For consistency
we shouldn't allow by img_name either, since there is similarly
no index on (img_user_text, img_name) either
Also, let filtering by img_size when not in miser mode.
Change-Id: I5aaf1a3f39ddc23d5d009ada199b63a0e3133ef3
the #toc CSS id and the .toc CSS class). However, particularly bad abuse of
the id or the class can possibly break.
* CSSJanus now supports rgb, hsl, rgba, and hsla color syntaxes.
the #toc CSS id and the .toc CSS class). However, particularly bad abuse of
the id or the class can possibly break.
* CSSJanus now supports rgb, hsl, rgba, and hsla color syntaxes.
+* Special:Listfiles can no longer be sorted by image name when filtering
+ by user in miser mode.
=== API changes in 1.22 ===
* (bug 25553) The JSON output formatter now leaves forward slashes unescaped
=== API changes in 1.22 ===
* (bug 25553) The JSON output formatter now leaves forward slashes unescaped
}
function isFieldSortable( $field ) {
}
function isFieldSortable( $field ) {
if ( $this->mIncluding ) {
return false;
}
if ( $this->mIncluding ) {
return false;
}
- static $sortable = array( 'img_timestamp', 'img_name' );
- if ( $field == 'img_size' ) {
- # No index for both img_size and img_user_text
- return !isset( $this->mQueryConds['img_user_text'] );
+ $sortable = array( 'img_timestamp', 'img_name', 'img_size' );
+ if ( $wgMiserMode && isset( $this->mQueryConds['img_user_text'] ) ) {
+ // If we're sorting by user, the index only supports sorting by time
+ if ( $field === 'img_timestamp' ) {
+ return true;
+ } else {
+ return false;
+ }
}
return in_array( $field, $sortable );
}
return in_array( $field, $sortable );