מעדיעוויקי:סקריפטס/76.js

פון המכלול
קפיצה לניווט קפיצה לחיפוש

אַכטונג: נאכן היטן, ברויכט איר אפשר נאך אויסקרויזן דעם בראוזער'ס זאַפאַס צו זען די ענדערונגען.

  • פייערפוקס/סאפארי: האלט אראפ שיפט בשעת'ן דרוקן Reload, אדער דרוקט Ctrl-F5 אדער Ctrl-R (אויף א מאקינטאש ⌘-R)
  • גוגל כראם: דרוקט Ctrl-Shift-R (אויף א מאקינטאש ⌘-Shift-R)
  • אינטערנעט עקספלארער: האלט אראפ Ctrl בשעת'ן קליקן Refresh, אדער דרוקט Ctrl-F5
  • אפערע: גייט צו מעניו → שטעלונגען ( אפערע → פרעפערנצן אויף א מעק) און דערנאך צו פריוואטקייט & און זיכערהייט → רוימען בראוזער דאטא → בילדער און טעקעס אין זאפאס
/* סקריפט להעברה מהירה של פסקאות בין דפים (לא כולל מרחב הערכים).

הסקריפט מאפשר העברה מהירה של קטעי שיחה בין דפי שיחה, ייעוץ, מדיניות וכדומה.

לאחר הוספת הסקריפט תתווסף בצמוד ללשונית העריכה לשונית נוספת בשם "העברה". לחיצה על הלשונית תשאל את המשתמש להיכן הוא מעוניין להעביר את הפסקה, ולאחר הזנת הנתונים ההעברה תתבצע באופן אוטומטי.

הסקריפט גם מוסיף תקציר עריכה אוטומטי ותבניות {{תב|הועבר|ל}}, {{תב|הועבר|מ}} ו-{{תב|סוף העברה}}.

בגרסה 2 נוסף גאדג'ט להשלמה אוטומטית בעת ציון היעד.

נכתב על ידי [[משתמש:קובי כרמל|קובי כרמל]]

version 2.0 */

$(function(){
	if (mw.config.get( 'wgNamespaceNumber' )<1||mw.config.get( 'wgNamespaceNumber' )>5) return;//checking name space
	var cap = $('.mw-editsection');
 
	for(var i = 0; i < cap.length; i++)
	{
		var tag = $(cap).eq(i).parent()[0].tagName.split('H')[1];
		if (tag<2) continue;
		var href = $(cap).eq(i).children('a').eq(0).attr('href').replace('veaction', 'action').replace('vesection', 'section') + '&move=' + tag;
		var direction = $('.mw-editsection').css('float') == 'left' ? 'left' : 'none';
		$(cap).eq(i).after('<span id = "move-section" style = "float: ' + direction + '; font-weight: normal; font-size: small; margin-right: 1em; line-height: 1em; display: inline-block;"><a href = ' + href + '>[העברה]</a></span>');
	}
	
	//fixing for the VisualEditor:
	
	$('.mw-headline').parent().hover(
		function(){$(this).find('.mw-editsection-link-secondary').show().css('visibility', 'visible')},
		function(){$(this).find('.mw-editsection-link-secondary').hide().css('visibility', 'hidden')}
	).find('.mw-editsection-link-secondary').hide();
	
	//checking if submitted a request for moving
 
	var section = mw.util.getParamValue('move');
	if (section < 2 || section > 6) return;
	var level = '';
	for(var t = 0; t < section; t++)
	{
		level += '=';
	}
 
	var text = $('#wpTextbox1');
	var value = (text.val());
	$('#mw-content-text').append('<div id="sugges" title="לאן להעביר?"><form><input type="text" style="width:95%;margin:10px 3px 0;"/><div><ul></ul></div></form></div>');
	$('#sugges').dialog({
		buttons : {'העברה' : function(){
			$(this).dialog('close');
			move($(this).find('input').val());
			}
		},
		modal : true
	}).find('input').on('keyup', function(e){search($(this), e.keyCode || e.which)});
	
	function search(obj, key){
		var keys = [];
		for(var k in $.ui.keyCode)keys.push($.ui.keyCode[k]);
		if(keys.indexOf(key) + 1 && key != 8)return;
		var param = {action : 'opensearch', search : obj.val()};
		$.getJSON('/w/api.php', param, function(data){
			var ul = obj.next().children();
			ul.empty();
			var bckg = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAABkCAYAAABHLFpgAAAAMUlEQVQYV2P68vPvfyYGIBhCxP//cBacYAAKInGRlIBYaBJQHWAWXBuqoVBZmNhwIgBlYh6Ywkr41gAAAABJRU5ErkJggg==';
			function help1() {
						obj.val($(this).text()).focus();
						ul.empty();
					}
			function help3() {
						$(this).css({background : '#e4f1fb url(' + bckg + ') 50% 50% repeat-x', border : '1px solid #74b2e2', padding : '0 4px'});
					}
			function help5() {
						$(this).css({background : 'none', border : 'none', padding : '1px 5px'});
					}
			for(var i in data[1]){
				ul.append($('<li>').css({cursor : 'pointer', padding : '1px 5px', width : '92%'}).text(data[1][i]).on({
					click : help1,
					mouseenter : help3,
					mouseleave : help5
				}));
			}
		});
	}
 
	function move(to){
		if (to === null || to === '') return alert('חובה לציין יעד להעברה!');
	 
		$('body').prepend('<div id="Processing" style="color:gray;position:absolute;top:58%;left:44%;z-index:1"><img src="https://upload.wikimedia.org/wikipedia/commons/1/10/Loading-special.gif"><br/>מעבד נתונים...</div>');
		var caption = text.val().split(level)[1];
		var oldcap = caption.replace(/[\[\]]/g,'');
		var tosplit = oldcap.split('');
	 
		//removing the space from the caption
	 
		for(var k in tosplit){
			if(k === 0 || k == tosplit.length-1){
				if(tosplit[k] == ' '){
					delete(tosplit[k]);
				}
			}
		}
	 
		//preparing the infprmation for the old page
	 
		var PageName = mw.config.get('wgPageName').replace(/_/g , ' ');
		oldcap = tosplit.join('');
		var from = "{{הועבר|מ=" + PageName + "}}";
		var end = '{{סוף העברה}}';
		var va = text.val().split('\n');
		va[0] += '\n' + from;
		var ba = '\n' + va.join('\n');
		ba += end;
		var tm = level + caption + level + '\n{{הועבר|ל=' + to + '#' + oldcap + '}}';
		text.val(tm.replace(/# /, "#"));
	 
		//preparing the infprmation for the new page
	 
		var token = mw.user.tokens.get('csrfToken');
		var summary = 'העברה מ[[' + PageName + ']]';
		var params = {action: 'edit', title: to, token: token, appendtext: ba, summary: summary};
	 
		//Sends the data to the new destination
	 
		$.post('/w/api.php',params,function(){
			$('#wpSummary').val('/*' + oldcap + '*/[[המכלול:סקריפטס#סקריפט 76: העברה מהירה של קטעי שיחה בין דפים|סקריפט העברות:]] הועבר ל[[' + to + '#' + oldcap + ']]');
			$('#Processing').remove();
			mw.notify('ההעברה ל' + to + ' בוצעה בהצלחה!');
			//updating the old page
			$('#editform').submit();
		});
	}
});