לדלג לתוכן

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

מתוך צפונות ויקי
מ לא ברור - משהו התקלקל
שחזור לגרסה 12049420 מתאריך 18:39, 1 במרץ 2012 מאת קיפודנחש
שורה 1: שורה 1:
// סקריפט להפיכת "טמקא" ל-"ynet" וכד' בתיבת החיפוש. נכתב על ידי [[משתמש:קיפודנחש|קיפודנחש]]
$(function() {
$(document).ready(function() {mediaWiki.loader.using('jquery.suggestions', function () {
mw.loader.using('jquery.suggestions', function() {
$('#searchInput, #searchInput2, #powerSearchText, #searchText').suggestions({
setTimeout(function() {
fetch:function(query) {
function hebeng(str) {
var $this=$(this);
var
var request = $.ajax({url:wgScriptPath+'/api.php',
res = '',
data:{'action':'opensearch', 'search': query, 'namespace':0, 'suggest':''},
hes = "qwertyuiopasdfghjkl;zxcvbnm,./'קראטוןםפשדגכעיחלךףזסבהנמצתץ";
dataType:'json',
str = str.toLowerCase();
success: function(data){
for (var i = 0; i < str.length; i++) {
if (data && 1 in data) {
var ic = hes.indexOf(str.charAt(i));
$this.suggestions('suggestions',data[1]);
res += ic + 1 ? hes.charAt((ic + 29) % 58) : str.charAt(i);
if (data[1].length < 8) {
}
var orig = data[1], alt = '', lq = query.toLowerCase(), hes = "qwertyuiopasdfghjkl;zxcvbnm,./'קראטוןםפשדגכעיחלךףזסבהנמצתץ";
return res;
for (var i = 0; i < query.length; i++) {
}
var ic = hes.indexOf(lq[i]);
alt += ic + 1 ? hes[(ic + 29) % 58] : lq[i];
$('#searchInput, #searchInput2, #powerSearchText, #searchText')
.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);
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]));
}
});
}
}
}
$.ajax({url:wgScriptPath+'/api.php',
data:{'action':'opensearch','search': alt, limit: 12 - orig.length, 'namespace': 0, 'suggest': ''},
dataType:'json',
success: function(data){
if (data && 1 in data)
$this.suggestions('suggestions', orig.concat(data[1]));
}
});
}
}
}
});
$this.data('request', request);
}
},
cancel: function() {
var request = $(this).data('request');
// If the delay setting has caused the fetch to have not even happend yet, the request object will
// have never been set
if (request && $.isFunction(request.abort)) {
request.abort();
$(this).removeData('request');
}
},
result: {
select: function($input) {
$input.closest('form').submit();
}
}
});
},
$(this).data('request',request);
delay: 120,
positionFromLeft: $('body').hasClass('rtl'),
highlightInput: true
})
.bind('paste cut drop', function(e) {
// make sure paste and cut events from the mouse and drag&drop events
// trigger the keypress handler and cause the suggestions to update
$(this).trigger('keypress');
});
// Special suggestions functionality for skin-provided search box
$('#searchInput').suggestions({
result: {
select: function($input) {
$input.closest('form').submit();
}
},
},
cancel: function() {
special: {
var request=$(this).data('request');
render: function(query) {
if (request && typeof request.abort=='function') {
if ($(this).children().length === 0) {
request.abort();
$(this).show();
$(this).removeData('request');
var $label = $('<div></div>', {
'class': 'special-label',
text: mw.msg('vector-simplesearch-containing')
})
.appendTo($(this));
var $query = $('<div></div>', {
'class': 'special-query',
text: query
})
.appendTo($(this));
$query.autoEllipsis();
} else {
$(this).find('.special-query')
.empty()
.text(query)
.autoEllipsis();
}
},
select: function($input) {
$input.closest('form').append(
$('<input>', {
type: 'hidden',
name: 'fulltext',
val: '1'
})
);
$input.closest('form').submit();
}
}
},
},
result: {select: function ($input) {$input.closest('form').submit();}},
$region: $('#simpleSearch')
delay: 120,
});
positionFromLeft: $('body').is('.rtl'),
}, 777); // setTimeout.   
highlightInput:true
}); // loader.using
}).bind('paste cut drop input', function(e) {$(this).trigger('keypress');});
}); // document.ready
});});

גרסה מ־06:38, 23 במרץ 2012

$(function() {
mw.loader.using('jquery.suggestions', function() {
setTimeout(function() {
	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;
	}
	
	$('#searchInput, #searchInput2, #powerSearchText, #searchText')
		.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);
									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);
				}
			},
			cancel: function() {
				var request = $(this).data('request');
				// If the delay setting has caused the fetch to have not even happend yet, the request object will
				// have never been set
				if (request && $.isFunction(request.abort)) {
					request.abort();
					$(this).removeData('request');
				}
			},
			result: {
				select: function($input) {
					$input.closest('form').submit();
				}
			},
			delay: 120,
			positionFromLeft: $('body').hasClass('rtl'),
			highlightInput: true
		})
		.bind('paste cut drop', function(e) {
			// make sure paste and cut events from the mouse and drag&drop events
			// trigger the keypress handler and cause the suggestions to update
			$(this).trigger('keypress');
		});
	// Special suggestions functionality for skin-provided search box
	$('#searchInput').suggestions({
		result: {
			select: function($input) {
				$input.closest('form').submit();
			}
		},
		special: {
			render: function(query) {
				if ($(this).children().length === 0) {
					$(this).show();
					var $label = $('<div></div>', {
							'class': 'special-label',
							text: mw.msg('vector-simplesearch-containing')
						})
						.appendTo($(this));
					var $query = $('<div></div>', {
							'class': 'special-query',
							text: query
						})
						.appendTo($(this));
					$query.autoEllipsis();
				} else {
					$(this).find('.special-query')
						.empty()
						.text(query)
						.autoEllipsis();
				}
			},
			select: function($input) {
				$input.closest('form').append(
					$('<input>', {
						type: 'hidden',
						name: 'fulltext',
						val: '1'
					})
				);
				$input.closest('form').submit();
			}
		},
		$region: $('#simpleSearch')
	});
}, 777); // setTimeout.    
}); // loader.using
}); // document.ready