ผู้ใช้:Posterweb/monobook.js

จากวิกิพีเดีย สารานุกรมเสรี

หมายเหตุ: หลังจากบันทึกแล้ว, คุณต้องล้างแคชของเบราว์เซอร์เสียก่อน จึงจะเห็นการเปลี่ยนแปลง: Mozilla/Safari/Konqueror: กด Shift ค้าง แล้วกด Reload (หรือ Ctrl-Shift-R), IE: กด Ctrl-F5, Opera: กด F5

/* <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;
  };
}

// ========== Quick Wikify ==========
function doQwikify() {
  document.editform.wpTextbox1.value = "{{ช่วยดูหน่อย}}\n\n" + document.editform.wpTextbox1.value;
  document.editform.wpSummary.value = "ช่วยดูหน่อยนะ";
  document.editform.wpMinoredit.checked = true;
  document.editform.submit();
}
function addQwikify() {
  addTab("javascript:doQwikify()", "ช่วย", "ca-wikify", "แจ้งว่าช่วยดูหน่อย", "");
  akeytt();
}

if (document.title.indexOf("แก้ไข ") == 0) {
  if (window.addEventListener) window.addEventListener("load", addQwikify, false);
  else if (window.attachEvent) window.attachEvent("onload", addQwikify);
}

/*  */
// ========== Quick Speedy delete ==========
function doQsd() {
  document.editform.wpTextbox1.value = "{{ลบ}}\n\n" + document.editform.wpTextbox1.value;
  document.editform.wpSummary.value = "แจ้งลบ.";
  document.editform.submit();
}
function addQsd() {
  addTab("javascript:doQsd()", "แจ้งลบ", "ca-sd", "คำสั่งแจ้งลบ", "");
  akeytt();
}

if (document.title.indexOf("แก้ไข ") == 0) {
  if (window.addEventListener) window.addEventListener("load", addQsd, false);
  else if (window.attachEvent) window.attachEvent("onload", addQsd);
}
/*  */

// ========== 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&section=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&section=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 + '&section=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 + '&section=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);

// ========== Quick Thai Page's Name Category ==========

function doATHName() {
  var pagename;
  var opname;
  opname = getPname(); //Ex "แก้ไข เมษายน"
  pagename= opname.substring(6, opname.length);
  repgn = pagename.substring(2,1) + pagename.substring(0,1) + pagename.substring(2,pagename.length); 
  document.editform.wpTextbox1.value = document.editform.wpTextbox1.value + "[[หมวดหมู่:|"+repgn+"]]";
}

function addATHName() {
  addTab("javascript:doATHName()", "ชื่อไทย", "ca-athname", "ชื่อไทย", "");
  akeytt();
}

if (document.title.indexOf("แก้ไข ") == 0) {
  if (window.addEventListener) window.addEventListener("load", addATHName, false);
  else if (window.attachEvent) window.attachEvent("onload", addATHName);
}

/*  */
// ========== 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("แก้ไข ") == 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("แก้ไข ") == 0) {
  if (window.addEventListener) window.addEventListener("load", addConvertToThaiNumber, false);
  else if (window.attachEvent) window.attachEvent("onload", addConvertToThaiNumber);
}
/*  */

// ========== เก็บกวาดนโยบายเก่า ==========
// สคริปต์นี้ เปลี่ยนคำสั่งเก่า เช่น Category, Image, และข้อความเก่า
function doCleanupTag() {
  text = document.editform.wpTextbox1.value;
  text = replace(text,'[[Category:','[[หมวดหมู่:');
  text = replace(text,'[[category:','[[หมวดหมู่:');
  text = replace(text,'[[Image:','[[ภาพ:');
  text = replace(text,'[[image:','[[ภาพ:');
  text = replace(text,'เว็บไซต์อื่น','แหล่งข้อมูลอื่น');
  text = replace(text,'โยงภายนอก','แหล่งข้อมูลอื่น');
  text = replace(text,'ลิงก์ภายนอก','แหล่งข้อมูลอื่น');
  text = replace(text,'*[','* [');
  document.editform.wpTextbox1.value = text;
  document.editform.wpSummary.value = "แก้ไข + เก็บกวาด";
}
function addCleanupTag() {
  addTab("javascript:doCleanupTag()", "เก็บกวาด", "ca-taclt", "แก้ไข", "");
  akeytt();
}

if (document.title.indexOf("แก้ไข ") == 0) {
  if (window.addEventListener) window.addEventListener("load", addCleanupTag, false);
  else if (window.attachEvent) window.attachEvent("onload", addCleanupTag);
}
// ========== ไม้ยมก จัดชิดตัวหน้า  ==========
// สคริปต์นี้ จัดไม้ยมก จาก "ก ๆ ก" เป็น "กๆ ก"
function doConvertYamok() {
  text = document.editform.wpTextbox1.value;
  text = replace(text,' ๆ','ๆ');
  text = replace(text,'&nbsp;ๆ','ๆ');
  document.editform.wpTextbox1.value = text;
  document.editform.wpSummary.value = "แก้ไม้ยมก";
}
function addConvertYamok() {
  addTab("javascript:doConvertYamok()", "ๆ", "ca-yamok", "เปลี่ยนไม้ยมกจัดชิด", "");
  akeytt();
}

if (document.title.indexOf("แก้ไข ") == 0) {
  if (window.addEventListener) window.addEventListener("load", addConvertYamok, false);
  else if (window.attachEvent) window.attachEvent("onload", addConvertYamok);
}
/* </nowiki> */