User:PrimeHunter/Search sort.js

/* Add several "Sort by" links to search pages.

Click one of them to repeat the search with the given sorting.

Install with this in your Special:MyPage/common.js:

importScript('User:PrimeHunter/Search_sort.js'); // Linkback: User:PrimeHunter/Search sort.js

  • /

$( document ).ready( function() {

if ( mw.config.get( 'wgCanonicalSpecialPageName' ) === 'Search'){

mw.util.addPortletLink(

'p-tb',

'https://www.mediawiki.org/wiki/Help:CirrusSearch#Explicit_sort_orders',

'Sort by:',

't-sort',

'View post about the search sort feature the following links are using'

);

mw.util.addPortletLink(

'p-tb',

location.href.replace( location.hash, '' ) + ( location.search ? '&' : '?' ) + 'sort=last_edit_desc',

'Edited descending',

't-sort',

'Repeat the search with sort by last edited descending'

);

mw.util.addPortletLink(

'p-tb',

location.href.replace( location.hash, '' ) + ( location.search ? '&' : '?' ) + 'sort=last_edit_asc',

'Edited ascending',

't-sort',

'Repeat the search with sort by last edited ascending'

);

mw.util.addPortletLink(

'p-tb',

location.href.replace( location.hash, '' ) + ( location.search ? '&' : '?' ) + 'sort=create_timestamp_asc',

'Creation ascending',

't-sort',

'Repeat the search with sort by page creation ascending'

);

mw.util.addPortletLink(

'p-tb',

location.href.replace( location.hash, '' ) + ( location.search ? '&' : '?' ) + 'sort=create_timestamp_desc',

'Creation descending',

't-sort',

'Repeat the search with sort by page creation descending'

);

mw.util.addPortletLink(

'p-tb',

location.href.replace( location.hash, '' ) + ( location.search ? '&' : '?' ) + 'sort=incoming_links_asc',

'Least backlinks',

't-sort',

'Repeat the search with sort by least amount of incoming links'

);

mw.util.addPortletLink(

'p-tb',

location.href.replace( location.hash, '' ) + ( location.search ? '&' : '?' ) + 'sort=incoming_links_desc',

'Most backlinks',

't-sort',

'Repeat the search with sort by highest amount of incoming links'

);

mw.util.addPortletLink(

'p-tb',

location.href.replace( location.hash, '' ) + ( location.search ? '&' : '?' ) + 'sort=just_match',

'Match relevance',

't-sort',

'Repeat the search with sort by direct text match relevance (no boosts and penalties for certain pages, like in default relevance)'

);

mw.util.addPortletLink(

'p-tb',

location.href.replace( location.hash, '' ) + ( location.search ? '&' : '?' ) + 'sort=none',

'Unsorted',

't-sort',

'Repeat the search completely unsorted'

);

mw.util.addPortletLink(

'p-tb',

location.href.replace( location.hash, '' ) + ( location.search ? '&' : '?' ) + 'sort=random',

'Random',

't-sort',

'Repeat the search with randomized sort'

);

mw.util.addPortletLink(

'p-tb',

location.href.replace( location.hash, '' ) + ( location.search ? '&' : '?' ) + 'sort=relevance',

'Relevance (default)',

't-sort',

'Repeat the search with sort by relevance (default)'

);

}

});