לדלג לתוכן

מדיה ויקי:Gadget-Dwim.js: הבדלים בין גרסאות בדף

מתוך צפונות ויקי
רווחים לפי המקובל
repeating variable
שורה 1: שורה 1:
if ( mw.user.options.get( 'skin' ) === 'vector' ) {
if ( mw.user.options.get( 'skin' ) === 'vector' ) {
$( function() {
$( function() {
'use strict';
setTimeout( function() {
setTimeout( function() {
'use strict';
var hes = "qwertyuiopasdfghjkl;zxcvbnm,./'קראטוןםפשדגכעיחלךףזסבהנמצתץ",
var hes = "qwertyuiopasdfghjkl;zxcvbnm,./'קראטוןםפשדגכעיחלךףזסבהנמצתץ",
hebeng = function ( str ) {
hebeng = function ( str ) {
שורה 14: שורה 14:
var $searchBoxes = $(
var $searchBoxes = $(
                '#searchInput, #searchInput2, #powerSearchText, #searchText'
'#searchInput, #searchInput2, #powerSearchText, #searchText'
            );
);


$searchBoxes.suggestions( {
$searchBoxes.suggestions( {
fetch: function( query ) {
fetch: function( query ) {
var $this = $( this );
var $this = $( this )
apiUrl = mw.util.wikiScript( 'api' );


if ( query.length !== 0 ) {
if ( query.length !== 0 ) {
שורה 31: שורה 32:
$.ajax( {
$.ajax( {
data: params,
data: params,
url: mw.util.wikiScript( 'api' ),
url: apiUrl,
dataType: 'json',
dataType: 'json',
success: function( data ) {
success: function( data ) {
שורה 41: שורה 42:
if ( data[1].length < 10 ) {
if ( data[1].length < 10 ) {
params.search = hebeng( query );
params.search = hebeng( query );
                                       
if ( params.search === query ) {
if ( params.search === query ) {
return;
return;
                                        }
}


params.limit = 10 - data[1].length;
params.limit = 10 - data[1].length;
שורה 50: שורה 51:
$.ajax( {
$.ajax( {
data: params,
data: params,
url: mw.util.wikiScript( 'api' ),
url: apiUrl,
dataType: 'json',
dataType: 'json',
success: function( data ) {
success: function( data ) {
if ( $.isArray( data ) && 1 in data ) {
if ( $.isArray( data ) && 1 in data ) {
$this.suggestions(
$this.suggestions(
                                                        'suggestions',
'suggestions',
                                                        orig.concat( data[1] )
orig.concat( data[1] )
                                                    );
);
                                                }
}
}
}
} );
} );

גרסה מ־08:19, 6 ביולי 2016

if ( mw.user.options.get( 'skin' ) === 'vector' ) {
	$( function() {
		'use strict';

		setTimeout( function() {
			var hes = "qwertyuiopasdfghjkl;zxcvbnm,./'קראטוןםפשדגכעיחלךףזסבהנמצתץ",
				hebeng = function ( str ) {
					return ( str || '' ).replace( /./g, function( c ) {
						var ic = hes.indexOf( c.toLowerCase() );

						return ic + 1 ? hes.charAt( ( ic + 29 ) % 58 ) : c;
					} );
				};
			
			var $searchBoxes = $(
				'#searchInput, #searchInput2, #powerSearchText, #searchText'
			);

			$searchBoxes.suggestions( {
				fetch: function( query ) {
					var $this = $( this )
						apiUrl = mw.util.wikiScript( 'api' );

					if ( query.length !== 0 ) {
						var params = {
							action: 'opensearch',
							search: query,
							redirects: 'return',
							suggest: true
						};

						$.ajax( {
							data: params,
							url: apiUrl,
							dataType: 'json',
							success: function( data ) {
								if ( $.isArray( data ) && 1 in data ) {
									var orig = data[1];

									$this.suggestions( 'suggestions', orig );

									if ( data[1].length < 10 ) {
										params.search = hebeng( query );
										
										if ( params.search === query ) {
											return;
										}

										params.limit = 10 - data[1].length;

										$.ajax( {
											data: params,
											url: apiUrl,
											dataType: 'json',
											success: function( data ) {
												if ( $.isArray( data ) && 1 in data ) {
													$this.suggestions(
														'suggestions',
														orig.concat( data[1] )
													);
												}
											}
										} );
									}
								}
							}
						} );
					}
				}
			} );
		}, 1200 ); // setTimeout
	} ); // document.ready
} // skin === vector