Потребител:V111P/common.js: Разлика между версии

от Уикипедия, свободната енциклопедия
Изтрито е съдържание Добавено е съдържание
Редакция без резюме
Редакция без резюме
 
Ред 238: Ред 238:


if (mw.config.get('wgPageName') == 'Специални:Списък_за_наблюдение') {
if (mw.config.get('wgPageName') == 'Специални:Списък_за_наблюдение') {
$(function () {
$('#collapseButton0').click();
$('#collapseButton0').click();
$('#collapseButton1').click();
$('#collapseButton1').click();
});
}
}

Текуща версия към 16:15, 23 юли 2018

var quickRollback_confirm = true;

if ( $.inArray( mw.config.get( 'wgAction' ), ['edit', 'submit'] ) > -1 ) {
	mw.vars.use("EditToolbar.buttons")
		.set("advAllBtn", ["if (confirm('Приемане на всички предложения на Advisor?\\n"
			+ "Използвайте „Показване на промените“ преди да запишете!')) fixAll()", "A*",
	    	  "Приемане на всички предложения на Advisor"])
	    .set("go", ["go()", "@@", "@@"])
	;

    var fixAll = function () {
        var a = $('a:contains(поправи)')[0];
        if (a) {
            a.click();
            setTimeout(fixAll, 300);
        }
    };


	/*var prt = function (msg, val, msg1, val1) {
	console.log(msg + ':' + val + ';' + (msg1 ? ' ' + msg1 + ':' + val1 + ';' : ''));
	};*/

    importScript('Потребител:V111P/js/smartLinkingBg.js'); // [[Потребител:V111P/js/Умно свързване]]
    // importScript('Потребител:V111P/js/TextboxCommander.js');

	//mw.vars.use("EditToolbar.buttons")
    // .set("CODE", ["LEFT", "MIDDLE", "RIGHT", "SHOWN TEXT", "TITLE"])
    //.set("udar", ["\u0300", "", "", " ` ", "остро ударение"])
    //.set("SortCat", ["СОРТКАТ:", "", "", "SC", "СОРТКАТ:"])
    //.set("Cat", ["Категория:", "", "", "Cat", "Категория:"])

    var tpl2 = {
        // "SHOWN TEXT" : "TEMPLATE CONTENT",
        'Мои неща': '-',
        'блок': '{' + '{замест:п-блок1|срок=>>|<<|причина=}}',
        'Syntax HiLight': '<source lang="javascript">\n>>|<<\n</source>',
        '{{lang-en|}}': '{{lang-en|>>|<<}}'
    };

    // setCustomInsButton("CODE", "LEFT", "MIDDLE", "RIGHT", "SHOWN TEXT", "TITLE");
    // rmCustomInsButtons(['b7', 'b25']);
} // if in edit mode
//else if (mw.config.get('wgCanonicalSpecialPageName') == 'Whatlinkshere') // [[Потребител:V111P/js/Филтър по препратка или шаблон за „Какво сочи насам“]]
//    mw.loader.load('//en.wikipedia.org/w/index.php?title=User:V111P/js/whatLinksHereLinkFilter.js&action=raw&ctype=text/javascript');


if (window.ct && ct.rules) {

var strEndsWith = function (str, suffix) {
    return str.indexOf(suffix, str.length - suffix.length) !== -1;
};

ct.rules.push(function (s) {
	var re = /\[(Министерския?т? съвет)[|\]]/g;
	var a = ct.getAllMatches(re, s);
	var b = [];
	for (var i = 0, l = a.length; i < l; i++) {
		var m = a[i];
		b.push({
			start: m.start + 1,
			end: m.end - 1,
			replacement: m[1] + ' на България',
			name: 'мин.съв.',
			description: 'мин.съв.',
			help: ''
		});
	}
	return b;
});

ct.rules.push(function (s) {
	var re = /\[([Мм]инистър|[Мм]инистерство) на ([^|\]]+)([|\]])/g;
	var a = ct.getAllMatches(re, s);
	var b = [];
	for (var i = 0, l = a.length; i < l; i++) {
		var m = a[i];
        var ss = m[2].toString();
        if (strEndsWith(ss, 'на България'))
          continue;
        var txt = m[1] + ' на ' + m[2];
		b.push({
			start: m.start + 1,
			end: m.end - 1,
			replacement: txt + ' на България' + (m[3] == '|' ? '' : '|' + txt),
			name: 'министър',
			description: 'министър на България',
			help: ''
		});
	}
	return b;
});

ct.rules.push(function (s) {
	var re = /\[\[[Мм]инистерствот?о? на ([^|\]]+)\|([Мм]инистър[^\]]*)/g;
	var a = ct.getAllMatches(re, s);
	var b = [];
	for (var i = 0, l = a.length; i < l; i++) {
		var m = a[i];
        //var ss = m[2].toString();
        //if (strEndsWith(ss, 'на България'))
        //  continue;
        var endInBG = strEndsWith(m[1], ' на България');
		b.push({
			start: m.start + 2,
			end: m.end,
			replacement: m[2][0].toUpperCase() + m[2].slice(1) + (endInBG ? '|' : ' на България|') + m[2],
			name: 'МСТ->МСТР',
			description: 'министър вместо министерство',
			help: ''
		});
	}
	return b;
});

ct.rules.push(function (s) {
	var re = /\[[Мм]инистър на [^|\]]+\|([Мм]инистерство(?:то)? )([^\]]+)/g;
	var a = ct.getAllMatches(re, s);
	var b = [];
	for (var i = 0, l = a.length; i < l; i++) {
		var m = a[i];
		b.push({
			start: m.start + 2,
			end: m.end,
			replacement: 'Министерство ' + m[2] + ' на България|' + m[1]+m[2],
			name: 'м-стър->м-ство',
			description: 'министерство вместо министър',
			help: ''
		});
	}
	return b;
});

/*
ct.rules.push(function (s) {
	var re = /\[\[(\d\d? [а-я]+)\]\]/g;
	var a = ct.getAllMatches(re, s);
	var b = [];
	for (var i = 0, l = a.length; i < l; i++) {
		var m = a[i];
		b.push({
			start: m.start,
			end: m.end,
			replacement: m[1],
			name: 'дата',
			description: 'дата',
			help: ''
		});
	}
	return b;
});

ct.rules.push(function (s) {
	var re = /\[\[(\d\d\d\d)\]\]/g;
	var a = ct.getAllMatches(re, s);
	var b = [];
	for (var i = 0, l = a.length; i < l; i++) {
		var m = a[i];
		b.push({
			start: m.start,
			end: m.end,
			replacement: m[1],
			name: 'год.',
			description: 'год.',
			help: ''
		});
	}
	return b;
}); */

// 41 +1
// 66 +1
// 75 +1
ct.rules.push(function (s) {
	var re = /\[Правителство на България \((\d\d?)\) *[|\]]/g;
	var a = ct.getAllMatches(re, s);
	var b = [];
	var num;
	for (var i = 0, l = a.length; i < l; i++) {
		var m = a[i];
		num = +m[1];
		if (num >= 41) num++;
		if (num >= 67) num++;
		if (num >= 77) num++;
		b.push({
			start: m.start + 1,
			end: m.end - 1,
			replacement: 'Правителство на България (' + num + ')',
			name: 'прав.'+num,
			description: 'Прав.',
			help: ''
		});
	}
	return b;
});
/*
ct.rules.push(function (s) {
    var re = /(^|[^\n ] *)(\| *[\wА-я-]+ *= *(?=[\|\}]))+/g;
    var a = ct.getAllMatches(re, s);
    if (a.length === 0) return [];
    var n = a.length;
    var start = a[0].start + a[0][1].length;
    var end = a[n - 1].end + 1;

    var replacement = s.slice(start, end).replace(re, '$1');

    var b = [{
            start: start,
            end: end - 1,
            replacement: replacement.slice(0, -1),
            name: (n == 1 ? 'параметър' : n + '+ параметъра'),
            description: 'Премахва неизползваните параметри от шаблоните',
            help: 'Неизползваните параметри са излишни.'
    }];
    return b;
});
*/

}


$('#pt-betafeatures').remove();
$('#pt-logout a').text('X');
$('#pt-watchlist a').text('Списък за набл.');
	$('#pt-userpage').after('<li><a href="https://bg.wikipedia.org/wiki/Уикипедия:Потребителски скриптове">У:СК</a></li>');
	$('#pt-userpage').after('<li><a href="https://bg.wikipedia.org/w/index.php?title=МедияУики:Gadget-EditToolbar-core.js&action=edit">tb</a></li>');
	$('#pt-userpage').after('<li><a href="https://bg.wikipedia.org/wiki/МедияУики:Gadget-Advisor.js">adv</a></li>');
	$('#pt-userpage').after('<li><a href="https://bg.wikipedia.org/wiki/МедияУики:Gadget-Quick diff.js">Qd</a></li>');
	$('#pt-userpage').after('<li><a href="https://bg.wikipedia.org/wiki/Потребител:V111P/js/QuickDiffCommands.js">QdC</a></li>');
	$('#pt-userpage').after('<li><a href="https://bg.wikipedia.org/wiki/МедияУики:Gadget-Quick rollback.js">Qr</a></li>');
	$('#pt-userpage').after('<li><a href="https://bg.wikipedia.org/w/index.php?title=Потребител:V111P/common.css&action=edit">.css</a></li>');
	$('#pt-userpage').after('<li><a href="https://bg.wikipedia.org/w/index.php?title=Потребител:V111P/common.js&action=edit">.js</a></li>');
	$('#pt-userpage').after('<li><a href="https://bg.wikipedia.org/w/index.php?title=Потребител:V111P/Тест2&action=edit">2</a></li>');
	$('#pt-userpage').after('<li><a href="https://bg.wikipedia.org/w/index.php?title=Потребител:V111P/Тест1&action=edit">1</a></li>');
	$('#pt-userpage').after('<li><a href="https://bg.wikipedia.org/w/index.php?title=Потребител:V111P/Тест&action=edit">0</a></li>');
	$('#pt-userpage').after('<li><a href="https://en.wikipedia.org/wiki/Special:Watchlist">en</a></li>');
	$('#pt-userpage').after('<li><a href="https://meta.wikipedia.org/wiki/Special:Watchlist">meta</a></li>');

if (mw.config.get('wgPageName') == 'Специални:Списък_за_наблюдение') {
  $(function () {	
    $('#collapseButton0').click();
    $('#collapseButton1').click();
  });
}