מדיה ויקי:Gadget-feedback.js

מתוך ויקיסוגיה
גרסה מ־23:30, 3 במאי 2017 מאת א.א (שיחה | תרומות) (גרסה אחת יובאה)
קפיצה לניווט קפיצה לחיפוש

הערה: לאחר הפרסום, ייתכן שיהיה צורך לנקות את זיכרון המטמון (cache) של הדפדפן כדי להבחין בשינויים.

  • פיירפוקס / ספארי: להחזיק את המקש Shift בעת לחיצה על טעינה מחדש (Reload), או ללחוץ על צירוף המקשים Ctrl-F5 או Ctrl-R (במחשב מק: ⌘-R).
  • גוגל כרום: ללחוץ על צירוף המקשים Ctrl-Shift-R (במחשב מק: ⌘-Shift-R).
  • אינטרנט אקספלורר / אדג': להחזיק את המקש Ctrl בעת לחיצה על רענן (Refresh), או ללחוץ על צירוף המקשים Ctrl-F5.
  • אופרה: ללחוץ על Ctrl-F5.
//הוספת תיבת משוב בסוף ערכים
$(function(){
	function defaultFeedbackTitle(){
		var x = new Date();
		var months = ["ינואר","פברואר","מרץ","אפריל","מאי","יוני","יולי","אוגוסט","ספטמבר","אוקטובר","נובמבר","דצמבר"];
		return 'משוב מ-'+x.getUTCDate() + ' ב'+months[x.getUTCMonth()]+' '+x.getUTCFullYear();
	}
	if (mw.config.get('wgNamespaceNumber') || mw.config.get('wgAction')!='view' || $('.diff').length || $('.redirectMsg').length || !mw.config.get('wgArticleId') || mw.config.get('wgPageName') == 'עמוד_ראשי') return;//articles only

	var feedbackBox=$('<div class="feedbackWrapper"><div class="feedbackDiv"><div style="float:left;font-size:x-small;padding-left:1em;"><a href="'+mw.util.getUrl('שיחה:'+mw.config.get('wgTitle'))+'">משובים קודמים</a></div>משוב על הערך<form id="commentbox" method="post" action="'+mw.config.get('wgServer') + mw.config.get('wgScriptPath')+'/index.php?section=new&action=edit&preview=yes&title='+mw.util.wikiUrlencode('שיחה:'+mw.config.get('wgTitle'))+'"><textarea name="wpTextbox1" rows="1" cols="80" id="feedbackTextArea" placeholder="כאן ניתן לכתוב משוב על הערך...">כאן ניתן לכתוב משוב על הערך...</textarea><div id="feedbackSubmit" style="display:none;"><input type="text" name="wpSummary" id="feedbackTitle" value="כותרת המשוב" placeholder="כותרת המשוב" maxlength="50" /><input type="submit" id="feedbackBtn" value="שליחה"/></div></form><div id="feedbackHelpDiv" style="display:none;">נקודות מומלצות להתייחסות: שלמות, אובייקטיביות, אמינות ורמת הכתיבה.<br />אין לכתוב פניות לנשוא הערך, משובים פוגעניים והשקפות אישיות על נושא הערך<br />הינכם מוזמנים לשפר את הערך על ידי לחיצה על "עריכה" בראש הדף בצד שמאל.<br />תודה ו<a href="'+mw.util.getUrl('ויקיסוגיה:ברוכים הבאים')+'">ברוכים הבאים</a> לוויקיסוגיה!</div></div></div>');

	$('#bodyContent').append(feedbackBox);
	var firstFocus=function(e){
		this.value="";
		$('#feedbackHelpDiv').show('slow');
		$(this).css('color','#000000');
		$(this).unbind(e);
		new mw.Api().get({
			'action':'parse', 
			'text': '{{הוראות למשוב}}', 
			'title': mw.config.get('wgPageName'), 
			'prop': 'text' }).done(function(d){
				$('#feedbackHelpDiv').html(d.parse.text['*']);
			});
	};
	$('#feedbackTextArea').focus(firstFocus);
	$('#feedbackTitle').focus(firstFocus);
	var grow=function(){
		var rows=0;var c=this.cols;
		$.each(this.value.split('\n'),function(i,v) {
			rows+=Math.floor(v.length/c)+1
		});
		this.rows=rows+2;
		this.style.height='auto';
		$('#feedbackSubmit').toggle(this.value.length>0);
	};
	$('#feedbackTextArea').focus(grow).blur(grow).keyup(grow);
	$('#commentbox').submit(function(){
		if(!($('#feedbackTextArea').val().indexOf('~~'+'~~')+1)) $('#feedbackTextArea').val($('#feedbackTextArea').val()+'{{'+'משוב}} ~~'+'~~');//sign in the end
		if($('#feedbackTitle').val() === 'כותרת המשוב' || $('#feedbackTitle').val() === '') $('#feedbackTitle').val(defaultFeedbackTitle());//default title
		return true;
	});
});