משתמש:Yonidebest/monobook.js/templateSC.js
הערה: לאחר הפרסום, ייתכן שיהיה צורך לנקות את זיכרון המטמון (cache) של הדפדפן כדי להבחין בשינויים.
- פיירפוקס / ספארי: להחזיק את המקש Shift בעת לחיצה על טעינה מחדש (Reload) או ללחוץ על צירוף המקשים Ctrl-F5 או Ctrl-R (במחשב מק: ⌘-R).
- גוגל כרום: ללחוץ על צירוף המקשים Ctrl-Shift-R (במחשב מק: ⌘-Shift-R).
- אינטרנט אקספלורר / אדג': להחזיק את המקש Ctrl בעת לחיצה על רענן (Refresh) או ללחוץ על צירוף המקשים Ctrl-F5.
- אופרה: ללחוץ על Ctrl-F5.
/* Add links to diff pages and reverted pages */
/* Created by [[User:Yonidebest]] */
// default list
var names_tmpls = ['אזהרה', 'ניסויים', 'תודה', 'ברוך הבא'];
var titles_tmpls = [1, 1, 1, 0]; // 1 = with title, 0 = no title
var welcome_template_number = 3; // -1 = no welcome template in list, otherwise index of welcome template, starting from 0.
function openNewWindow(userName, title, template_number)
{
var url = 'http://he.wikipedia.org/w/index.php?title=' + encodeURIComponent('שיחת_משתמש:' + userName) + '&action=edit&template_number=' + template_number + '&title_name=' + title;
var win = window.open(url, '_blank');
}
// Add template to talk page
function addTemplate(template_number, title)
{
var txt = '\n==[[:' + decodeURIComponent(title).replace(/_/g, ' ') + ']]==\n';
if (titles_tmpls[template_number] == 0)
txt = "";
txt += '{{' + names_tmpls[template_number] + '}} ';
document.editform.wpTextbox1.value += txt + '~~' + '~~\n';
document.editform.wpSummary.value = names_tmpls[template_number];
document.editform.wpSave.click();
}
function createTemplateLink(userName, titleName, template_number)
{
var a_template = document.createElement('a');
a_template.href = 'javascript:openNewWindow(\'' + userName + '\', \'' + titleName + '\', ' + template_number + ')';
a_template.appendChild(document.createTextNode(names_tmpls[template_number]));
a_template.title = "הוסף תבנית " + names_tmpls[template_number];
return a_template;
}
function templateSC_onload()
{
if (document.location.href.indexOf('diff') != -1 || wgAction == 'rollback')
{
var as = document.getElementById('bodyContent').getElementsByTagName('a');
var titleName = wgPageName;
var userName;
var temp_a;
var rx = new RegExp('[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}');
for (var i = 0; i < as.length; i++)
{
// עבור משמשים אנונימיים
var m = rx.test(as[i].title);
if (as[i].title.indexOf("מיוחד:תרומות") == 0 && m)
{
userName = encodeURIComponent(as[i].title.substring(as[i].title.lastIndexOf("תרומות") + 7, as[i].title.length));
as[i].parentNode.insertBefore(document.createTextNode(')'), as[i].nextSibling); // closing ')'
for (var j = names_tmpls.length -1; j > -1; j--)
{
temp_a = createTemplateLink(userName, titleName, j);
as[i].parentNode.insertBefore(temp_a, as[i].nextSibling);
if (j != 0)
as[i].parentNode.insertBefore(document.createTextNode(' | '), as[i].nextSibling);
}
as[i].parentNode.insertBefore(document.createTextNode(' ('), as[i].nextSibling); // opening '('
}
}
}
if (wgPageName == 'מיוחד:שינויים_אחרונים' && welcome_template_number != -1)
{
var as = document.getElementById('bodyContent').getElementsByTagName('a');
var userName;
var rx1 = new RegExp('[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}');
var rx2 = new RegExp('title=%D7%A9%D7%99%D7%97%D7%AA_%D7%9E%D7%A9%D7%AA%D7%9E%D7%A9:([^&]*)&action=edit');
for (var i=0; i < as.length; i++) {
var m1 = rx1.test(as[i].href);
var m2 = rx2.exec(as[i].href);
if (m2 && !m1 && as[i].href.indexOf('history') == -1 && as[i].title.indexOf("/") == -1) {
userName = decodeURIComponent(m2[1]); decodeURIComponent(m2[1]);
var a_wel = document.createElement('a');
a_wel.href = 'javascript:openNewWindow(\'' + userName + '\', \'no_title\', ' + welcome_template_number + ')';
a_wel.style.backgroundColor = 'pink';
a_wel.appendChild(document.createTextNode("בה"));
a_wel.title = "הוסף תבנית " + names_tmpls[welcome_template_number];
var txt1 = document.createTextNode(')');
var txt2 = document.createTextNode(' (');
as[i].parentNode.insertBefore(txt1, as[i].nextSibling);
as[i].parentNode.insertBefore(a_wel, as[i].nextSibling);
as[i].parentNode.insertBefore(txt2, as[i].nextSibling);
}
}
}
if (getParamValue('template_number'))
addTemplate(eval(getParamValue('template_number')), getParamValue('title_name'));
}
$(templateSC_onload);