User:Watcharakorn/monobook.js
Appearance
Code that you insert on this page could contain malicious content capable of compromising your account. If you import a script from another page with "importScript", "mw.loader.load", "iusc", or "lusc", take note that this causes you to dynamically load a remote script, which could be changed by others. Editors are responsible for all edits and actions they perform, including by scripts. User scripts are not centrally supported and may malfunction or become inoperable due to software changes. A guide to help you find broken scripts is available. If you are unsure whether code you are adding to this page is safe, you can ask at the appropriate village pump. This code will be executed when previewing this page. |
The accompanying .css page for this skin is at User:Watcharakorn/monobook.css. |
/* <nowiki> */
function addlilink(tabs, url, name, id, title, key){
var na = document.createElement('a');
na.href = url;
na.appendChild(document.createTextNode(name));
var li = document.createElement('li');
if(id) li.id = id;
li.appendChild(na);
tabs.appendChild(li);
na.accesskey = key;
var pref = 'alt-';
if(((clientPC.indexOf('AppleWebKit')!=-1) && (clientPC.indexOf('spoofer')==-1)) || navigator.userAgent.toLowerCase().indexOf( 'mac' ) != -1 ) pref = 'control-';
if(clientPC.indexOf('opera')!=-1) pref = 'shift-esc-';
if(key && title) na.title = title + ' [' + pref + key + ']';
else if(title) na.title = title;
else if(key) na.title = '[' + pref + key + ']';
return li;
}
function addTab(url, name, id, title, key){
var tabs = document.getElementById('p-cactions').getElementsByTagName('ul')[0];
addlilink(tabs, url, name, id, title, key);
}
function getPname() {
z=document.getElementById("content").childNodes;
for (var n=0;n<z.length;n++) {
if (z[n].className=="firstHeading") return z[n].textContent;
};
}
// ========== Edit Section 0 ==========
function addEditSection0() {
ta['ca-edit-0'] = ['', 'Edit the zeroth section of this page'];
if (!document.getElementById) return;
x = document.getElementById('ca-edit');
if(!x) return;
y = document.createElement('LI');
y.id = 'ca-edit-0';
if (x.className == 'selected') {
if (/&action=edit§ion=0$/.test(window.location.href)) {
x.className = 'istalk';
y.className = 'selected';
} else {
x.className = 'selected istalk';
}
} else if (x.className == 'selected istalk') {
if (/&action=edit§ion=0$/.test(window.location.href)) {
x.className = 'istalk';
y.className = 'selected istalk';
} else {
y.className = 'istalk';
}
} else {
y.className = x.className;
x.className = 'istalk';
}
z = document.createElement('A');
if (x.children) {
z.href = x.children[0].href + '§ion=0';
z.appendChild(document.createTextNode('0'));
y.appendChild(z);
document.getElementById('p-cactions').children[1].insertBefore(y,x.nextSibling);
} else {
z.href = x.childNodes[0].href + '§ion=0';
z.appendChild(document.createTextNode('0'));
y.appendChild(z);
document.getElementById('p-cactions').childNodes[3].insertBefore(y,x.nextSibling);
}
}
if (document.title.indexOf("Editing ") == -1) {
if (window.addEventListener) window.addEventListener("load", addEditSection0, false);
else if (window.attachEvent) window.attachEvent("onload", addEditSection0);
}
// ========== Add Last Diff ==========
function doLastDiff() {
var nurl="http://th.wikipedia.org/w/index.php?title=" + getPname() + "&diff=cur&oldid=prev";
document.location=nurl
}
function addLastDiff() {
var tabs = document.getElementById('p-cactions').getElementsByTagName('ul')[0];
var l=addlilink(tabs, "javascript:doLastDiff()", 'ล่าสุด', '');
l.lastChild.title="Show most recent diff";
}
if (window.addEventListener) window.addEventListener("load", addLastDiff, false);
else if (window.attachEvent) window.attachEvent("onload", addLastDiff);
/* </nowiki> */
// ========== Replace string ==========
// Javascript from http://www.irt.org/script/242.htm
function replace(string,text,by) {
// Replaces text with by in string
var strLength = string.length, txtLength = text.length;
if ((strLength == 0) || (txtLength == 0)) return string;
var i = string.indexOf(text);
if ((!i) && (text != string.substring(0,txtLength))) return string;
if (i == -1) return string;
var newstr = string.substring(0,i) + by;
if (i+txtLength < strLength)
newstr += replace(string.substring(i+txtLength,strLength),text,by);
return newstr;
}
// ========== Thai to Arabic Numbers ==========
// This script converts all Thai numbers (๑ ๒ ๓) to Arabic numbers (1 2 3)
function doConvertNumber() {
text = document.editform.wpTextbox1.value;
text = replace(text,'๑','1');
text = replace(text,'๒','2');
text = replace(text,'๓','3');
text = replace(text,'๔','4');
text = replace(text,'๕','5');
text = replace(text,'๖','6');
text = replace(text,'๗','7');
text = replace(text,'๘','8');
text = replace(text,'๙','9');
text = replace(text,'๐','0');
document.editform.wpTextbox1.value = text;
document.editform.wpSummary.value = "เปลี่ยนเลขไทยเป็นอารบิก";
}
function addConvertNumber() {
addTab("javascript:doConvertNumber()", "๒ ->2", "ca-tanum", "เปลี่ยนเลขไทยเป็นอารบิก", "");
akeytt();
}
if (document.title.indexOf("Edit ") == 0) {
if (window.addEventListener) window.addEventListener("load", addConvertNumber, false);
else if (window.attachEvent) window.attachEvent("onload", addConvertNumber);
}
// ========== Arabic to Thai Numbers ==========
// This script converts all Arabic numbers (1 2 3) to Thai numbers (๑ ๒ ๓)
function doConvertToThaiNumber() {
text = document.editform.wpTextbox1.value;
text = replace(text,'1','๑');
text = replace(text,'2','๒');
text = replace(text,'3','๓');
text = replace(text,'4','๔');
text = replace(text,'5','๕');
text = replace(text,'6','๖');
text = replace(text,'7','๗');
text = replace(text,'8','๘');
text = replace(text,'9','๙');
text = replace(text,'0','๐');
document.editform.wpTextbox1.value = text;
document.editform.wpSummary.value = "เปลี่ยนเลขอารบิกเป็นไทย";
}
function addConvertToThaiNumber() {
addTab("javascript:doConvertToThaiNumber()", "2 ->๒", "ca-atnum", "เปลี่ยนเลขอารบิกเป็นไทย", "");
akeytt();
}
if (document.title.indexOf("Edit ") == 0) {
if (window.addEventListener) window.addEventListener("load", addConvertToThaiNumber, false);
else if (window.attachEvent) window.attachEvent("onload", addConvertToThaiNumber);
}
// ========== change num ==========
// This script converts all numbers (1 2 3) to all numbers + 1 (2 3 4)
function doConvertNumber() {
text = document.editform.wpTextbox1.value;
text = replace(text,'1','2');
text = replace(text,'2','3');
text = replace(text,'3','4');
text = replace(text,'4','5');
text = replace(text,'5','6');
text = replace(text,'6','7');
text = replace(text,'7','8');
text = replace(text,'8','9');
text = replace(text,'9','10');
text = replace(text,'10','11');
text = replace(text,'11','12');
text = replace(text,'12','13');
text = replace(text,'13','14');
text = replace(text,'14','15');
text = replace(text,'15','16');
text = replace(text,'16','17');
text = replace(text,'17','18');
text = replace(text,'18','19');
text = replace(text,'19','20');
text = replace(text,'20','21');
text = replace(text,'21','22');
text = replace(text,'22','23');
text = replace(text,'23','24');
text = replace(text,'24','25');
text = replace(text,'25','26');
text = replace(text,'26','27');
text = replace(text,'27','28');
text = replace(text,'28','29');
text = replace(text,'29','30');
text = replace(text,'30','31');
document.editform.wpTextbox1.value = text;
document.editform.wpSummary.value = "plus 1";
}
function addConvertNumber() {
addTab("javascript:doConvertNumber()", "1 ->2", "ca-tanum", "plus + 1", "");
akeytt();
}
if (document.title.indexOf("Edit ") == 0) {
if (window.addEventListener) window.addEventListener("load", addConvertNumber, false);
else if (window.attachEvent) window.attachEvent("onload", addConvertNumber);
}
// ========== change num ==========
// This script converts all numbers (1 2 3) to all numbers - 1 (0 1 2)
function doConvertNumber() {
text = document.editform.wpTextbox1.value;
text = replace(text,'1','0');
text = replace(text,'2','1');
text = replace(text,'3','2');
text = replace(text,'4','3');
text = replace(text,'5','4');
text = replace(text,'6','5');
text = replace(text,'7','6');
text = replace(text,'8','7');
text = replace(text,'9','8');
text = replace(text,'10','9');
document.editform.wpTextbox1.value = text;
document.editform.wpSummary.value = "- 1";
}
function addConvertToThaiNumber() {
addTab("javascript:doConvertToThaiNumber()", "2 -> 1", "ca-atnum", "- 1", "");
akeytt();
}
if (document.title.indexOf("Edit ") == 0) {
if (window.addEventListener) window.addEventListener("load", addConvertToThaiNumber, false);
else if (window.attachEvent) window.attachEvent("onload", addConvertToThaiNumber);
}</nowiki>