ميډياويکي:Gadget-incategory.js
يادښت: د غوره توبونو د خوندي کولو وروسته، خپل د کتنمل (بروزر) ساتل شوې حافظه تازه کړی.د نور تفصيل لپاره د غځول په تنۍ کلېک وکړئ.
- فايرفاکس/ سفري: په دې کتنمل کې د Reload د ټکوهلو په وخت د Shift تڼۍ نيولې وساتی، او يا هم Ctrl-F5 يا Ctrl-Rتڼۍ کېښکاږۍ (په Apple Mac کمپيوټر باندې ⌘-R کېښکاږۍ)
- گووگل کروم: په دې کتنمل کې د Ctrl-Shift-R تڼۍ کېښکاږۍ (د مک لپاره ⌘-Shift-R)
- انټرنټ اېکسپلورر: په دې کتنمل کې د Refresh د ټکوهلو په وخت کې د Ctrl تڼۍ کېښکاږلې ونيسۍ، او يا هم د Ctrl-F5 تڼۍ کېښکاږۍ
- اوپرا: په دې کتنمل کې د خپل براوزر ساتل شوې حافظه پدې توگه سپينولی شی Tools→Preferences
لاسوند[جوړول]
if ( mw.config.get( 'wgCanonicalSpecialPageName' ) === 'Search' ) {
$( function() {
'use strict';
$( '.search-types ul' ).append( '<li><a href="#" id="gadget-incategory">وېشنيزو کې پلټل</a></li>' );
$( '#gadget-incategory' ).click( function( e ) {
e.preventDefault();
if ( $( '.gadget-incategory' ).length ) {
return;
}
var
d = $( '<div></div>' ),
n = 0,
iw,
s;
function createinput() {
iw.append( '<input list="gadget-incategory-datalist' + n + '"><datalist id="gadget-incategory-datalist' + n + '"></datalist>' );
$( '.gadget-incategory input' ).last().focus();
}
d.dialog( {
autoOpen: false,
title: 'وېشنيزو کې پلټل',
dialogClass: 'gadget-incategory',
close: function() {
$( this ).dialog( 'destroy' ).remove();
}
} );
d.dialog( 'open' );
d.append( '<p>ددې ځانگړي پلټلو په مرستې سره په اسان وېشنيزو او گڼ مخونه په اسانه موندلي شئ ياد لرئ! دا صرف هغه مخونه ښکاره کوي د کومو لپاره چې تاسې وېشنيزه ليکل ده</p>' );
d.append( '<div id="inputwrapper"></div>' );
iw = $( '#inputwrapper' );
createinput();
d.append( '<a href="#" id="gadget-incategory-createinput">نور پلټنځای شامل کړئ</a>' );
$( '#gadget-incategory-createinput' ).click( function( e ) {
e.preventDefault();
n += 1;
createinput();
} );
d.append( '<button id="gadget-incategory-search">پلټل</button>' );
s = $( '#gadget-incategory-search' );
iw.on( 'input', 'input', function( e ) {
var
api = new mw.Api(),
text = $( this ).val();
if ( !/^\s*$/.test( text ) ) {
api.get( {
action: 'query',
list: 'allpages',
apfrom: text,
apnamespace: 14,
aplimit: 5
} ).done( function( data ) {
var
arr = data.query.allpages,
pages = [],
stripped = [],
datalist = [],
str;
arr.forEach( function( elem ) {
pages.push( elem.title );
} );
pages.forEach( function( elem ) {
stripped.push( elem.replace( /^وېشنيزه:/, '' ) );
} );
stripped.forEach( function( elem ) {
datalist.push( '<option value="' + elem + '">' );
} );
str = datalist.join( '' );
$( e.target ).next().empty().append( str );
} );
}
} );
s.click( function() {
var
arr = [],
trimmed = [],
prefixed = [],
str,
encodedstr;
$( '.gadget-incategory input' ).each( function() {
arr.push( $( this ).val() );
} );
arr.forEach( function( elem ) {
if ( !/^\s*$/.test( elem ) ) {
trimmed.push( elem );
}
} );
trimmed.forEach( function( elem ) {
prefixed.push( 'incategory:"' + elem + '"' );
} );
str = prefixed.join( ' ' );
encodedstr = encodeURIComponent( str );
window.location = '/w/index.php?title=Special%3Aپلټل&search=' + encodedstr;
} );
iw.on( 'keyup', 'input', function( e ) {
if ( e.which === 13 ) {
s.trigger( 'click' );
}
} );
} );
} );
}