Удзельнік:Zedlik/check descr.js

Зьвесткі зь Вікіпэдыі — вольнай энцыкляпэдыі

Заўвага: каб пабачыць зьмены пасьля публікацыі, Вам можа спатрэбіцца ачысьціць кэш Вашага браўзэра.

  • Firefox / Safari: трымайце Shift і націсьніце Reload, ці націсьніце Ctrl-F5 ці Ctrl-R (⌘-R на Mac)
  • Google Chrome: націсьніце Ctrl-Shift-R (⌘-Shift-R на Mac)
  • Internet Explorer / Edge: трымайце Ctrl і націсьніце Refresh, ці націсьніце Ctrl-F5
  • Opera: націсьніце Ctrl-F5.
// Беларуская лякалізацыя скрыпта праверкі наяўнасьці кароткага апісаньня зьменаў падчас захаваньня старонкі
// Крыніца: ru:Участник:X-romix/check descr.js
// Аўтар: X-romix
// Вэрсія ад 18 кастрычніка 2008 году

//Скрипт проверяет наличие описания к правке.
//Автор: X-romix

if (wgAction == 'edit' || wgAction == 'submit')
$(function(){
	var wpSave = document.getElementById('wpSave');
	if (!wpSave) return;
	addHandler(wpSave, 'click', XRomix_CheckDescrHandler);
});	

function XRomix_CheckDescrHandler(e){
	var isCancel=false;
	
	var w = document.getElementById('XRomix_editpage_CheckDescr');
	if(w) return; //уже есть надпись с предупреждением
	
	if (!XRomix_CheckDescr()){
		var wpSummary = document.getElementById('wpSummary')
		if (!wpSummary) return
 
		var w = document.createElement('span')
		w.id = 'XRomix_editpage_CheckDescr'
		wpSummary.parentNode.insertBefore(w, wpSummary.nextSibling)
		w.innerHTML = '<div style="padding:10px; margin: 10px 0px -11px 2px; background:#D0FF80; border:1px solid green;">'+
		'Не запоўненае поле кароткага апісаньня зьменаў.</div>'; // + 
//	    ' (<a href="' + wgArticlePath.replace(/\$1/, 'Википедия:Описание изменений') +
//	    '" title="(ссылка откроется в новом окне)" target=_blank>подробнее&nbsp;↗</a>)</div>'; 
		isCancel=true;
	}
 
	if (isCancel){ //отменить нажатие кнопки
		e = e || window.event //из-за различий в IE и стандартных браузерах
		if (e.preventDefault) e.preventDefault(); else e.returnValue = false //остановить действие, снова по-разному
		return false //на всякий случай
	}

	
	function XRomix_CheckDescr(){
		var wpSummary = document.getElementById('wpSummary')
		if(!wpSummary) return true; //если нет поля описания в наличии
		
	    var temp=wpSummary.value;
	    temp=temp.replace(/\/\*.*?\*\// , ""); //комментарии
	    temp=temp.replace(/[\s]*/ , ""); //пробелы
	    if (temp==""){
			return false; //нету описания
		}
		return true;//есть описание
	}
	
}//function