לדלג לתוכן

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

מתוך צפונות ויקי
אמור לתקן את הקלקולים
אופס
שורה 3: שורה 3:
var $searchBoxes = $('#searchInput, #searchInput2, #powerSearchText, #searchText');
var $searchBoxes = $('#searchInput, #searchInput2, #powerSearchText, #searchText');
// A patch until suggestions are unbroken
// A patch until suggestions are unbroken
if ( !jQuery.isFunction( $searchBoxes.suggestions ) {
if ( !jQuery.isFunction( $searchBoxes.suggestions ) ) {
return;
return;
}
}

גרסה מ־09:12, 27 באפריל 2013

if (mw.user.options.get('skin') == 'vector')
$(function() {
	var $searchBoxes = $('#searchInput, #searchInput2, #powerSearchText, #searchText');
	// A patch until suggestions are unbroken
	if ( !jQuery.isFunction( $searchBoxes.suggestions ) ) {
		return;
	}

	function hebeng(str) {
		var
			res = '',
			hes = "qwertyuiopasdfghjkl;zxcvbnm,./'קראטוןםפשדגכעיחלךףזסבהנמצתץ";
		str = str.toLowerCase();
		for (var i = 0; i < str.length; i++) {
			var ic = hes.indexOf(str.charAt(i));
			res += ic + 1 ? hes.charAt((ic + 29) % 58) : str.charAt(i);
		}
		return res;
	}

	$searchBoxes.suggestions({
		fetch: function(query) {
			var $this = $(this);
			if (query.length !== 0) {
				$.ajaxSetup({url: mw.util.wikiScript('api'), dataType: 'json'});
				var params = {action: 'opensearch', search: query, limit: 10, suggest: ''};
				var request = $.ajax({
					data: params,
					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,
									success: function(data) {
										if ($.isArray(data) && 1 in data)
											$this.suggestions('suggestions', orig.concat(data[1]));
									}
								});
							}
						}
					}
				});
				$this.data('request', request);
			}
		}
	});
}); // document.ready