หมายเหตุ: หลังเผยแพร่ คุณอาจต้องล้างแคชเว็บเบราว์เซอร์ของคุณเพื่อดูการเปลี่ยนแปลง

  • ไฟร์ฟอกซ์ / ซาฟารี: กด Shift ค้างขณะคลิก Reload หรือกด Ctrl-F5 หรือ Ctrl-R (⌘-R บนแมค)
  • กูเกิล โครม: กด Ctrl-Shift-R (⌘-Shift-R บนแมค)
  • อินเทอร์เน็ตเอกซ์พลอเรอร์ และ Edge: กด Ctrl ค้างขณะคลิก Refresh หรือกด Ctrl-F5
  • โอเปร่า: กด Ctrl-F5
// ========================================================
// userTabs
// Main Load Function
//
// User:Jutiphan Created: 10-12-2006
// Replaced: none
// ========================================================
/* <pre><nowiki> */
// ========== เพิ่มป้ายหน้าผู้ใช้+แจ้งตักเตือนอัจฉริยะ ==========

var warnNo;

function AddWarnGeneral(text) {
  var regex = /t-test([1-5]?)|\{\{test([1-5]?)\}\}/ig;
  var result = regex.exec(text);

  if (result != undefined) {
    if (result[1].length == 0) {
      no = 2;
    } else {
      no = eval(result[1]) + 1;
    }
    text = text.replace(/\{\| ?id=\"t-test([1-5]?)\" (.*\r?\n)*?\|\}|\{\{test([1-5]?)\}\}/, "{{subst:test" + no + "}}");

  } else {
    no = 1;
    text = "{{subst:test}}\n\n" + text;
  }
  warnNo = no;
  return text;
}

function AddWarnVandal(text, pName) {
  var currentDay = new Date();
  var thaiDate = new Date(currentDay.getTime() + 25200000);
  var year = thaiDate.getUTCFullYear() + 543;
  var month = thaiDate.getUTCMonth() + 1;

  var regex = new RegExp("\n?(\n|^)== " + GetThaiFullMonthName(month) + " " + year + "(.*\n(?!==))*.*");
  var result = regex.exec(text);

  if(result == undefined) {
    text = text + "\n== " + GetThaiFullMonthName(month) + " " + year + " ==";
    no = 1;

  } else {
    var curMonthText = result[0];

    regex = /\{\{uw-vandal1\}\}/ig;
    result = regex.exec(curMonthText);
    no = 1;
    if (result != undefined) {
      text = text + '\n';
      no = 2;
    }
    regex = /\{\{uw-vandal2\}\}/ig;
    result = regex.exec(curMonthText);
    if (result != undefined) {
      no = 3;
    }
  }

  text = text + "\n{{subst:uw-vandal" + no + "|" + pName + "}} --~~~~";
  warnNo = no;
  return text;
}

function WarnUser(userName, warnAction) {
  warnUser(username, "", warnAction);
}

function WarnUser(userName, vanArticle, warnAction) {

  mw.notify('กำลังเตรียมการแจ้งเตือนผู้ใช้  กรุณารอสักครู่...');
  var pageTitle = 'User Talk:' + userName;
  var text = iScript.GetPageContent(pageTitle);
  var pName = vanArticle;
  if(pName == "") mw.util.getParamValue("vanarticle");
  var summary;

  if(warnAction == 'General') {
    text = AddWarnGeneral(text);
    summary = 'เตือนผู้ใช้ #' + no + iScriptConfig.Tagline;
  } else if(warnAction == 'Vandal') {
    if (!pName) {
      pName = prompt("กรุณาใส่ชื่อบทความที่ผู้ใช้นี้ได้ก่อกวน (จำเป็น)", "");
      if (!pName || pName.length == 0) {
        mw.notify('ยกเลิกการแจ้งก่อกวนเนื่องจากว่าไม่ได้ระบุชื่อบทความ');
        return;
      }
    }
    text = AddWarnVandal(text,pName);
    summary = 'เตือนก่อกวน #' + no + iScriptConfig.Tagline;
  }
  mw.notify('กำลังแจ้งเตือนผู้ใช้:' + userName + ' กรุณารอสักครู่...');
  iScript.EditPage(pageTitle, text, '', '', summary, true, true);
}


function doWarnTag() {
  var text = document.editform.wpTextbox1.value;
  var regex = /t-test([1-5]?)|\{\{test([1-5]?)\}\}/ig;
  var result = regex.exec(text);

  if (result != undefined) {
    if (result[1].length == 0) {
      no = 2;
    } else {
      no = eval(result[1]) + 1;
    }
    text = text.replace(/\{\| ?id=\"t-test([1-5]?)\" (.*\r?\n)*?\|\}|\{\{test([1-5]?)\}\}/, "{{subst:test" + no + "}}");

  } else {
    no = 1;
    text = "{{subst:test}}\n\n" + text;
  }

  document.editform.wpTextbox1.value = text;
  document.editform.wpSummary.value = "ตักเตือนครั้งที่ " + no + " " + iScriptConfig.Tagline;
  document.editform.wpMinoredit.checked = true;
  document.editform.submit();
}

function doVandalTag() {
  var text = document.editform.wpTextbox1.value;
  var currentDay = new Date();
  var thaiDate = new Date(currentDay.getTime() + 25200000);
  var year = thaiDate.getUTCFullYear() + 543;
  var month = thaiDate.getUTCMonth() + 1;

  var regex = new RegExp("\n?(\n|^)== " + GetThaiFullMonthName(month) + " " + year + "(.*\n(?!==))*.*");
  var result = regex.exec(text);

  if(result == undefined) {
    text = text + "\n== " + GetThaiFullMonthName(month) + " " + year + " ==";
    no = 1;

  } else {
    var curMonthText = result[0];

    regex = /\{\{uw-vandal1\}\}/ig;
    result = regex.exec(curMonthText);
    no = 1;
    if (result != undefined) {
      no = 2;
    }
    regex = /\{\{uw-vandal2\}\}/ig;
    result = regex.exec(curMonthText);
    if (result != undefined) {
      no = 3;
    }
  }

  var pName = mw.util.getParamValue("vanarticle");
  if (!pName) {
    pName = prompt("กรุณาใส่ชื่อบทความที่ผู้ใช้นี้ได้ก่อกวน (จำเป็น)", "");
    if (!pName || pName.length == 0) {
      return;
    }
  }
  text = text + "\n{{subst:uw-vandal" + no + "|" + pName + "}} --~~~~";
  document.editform.wpTextbox1.value = text;
  document.editform.wpSummary.value = "เตือนก่อกวนครั้งที่ " + no + " " + iScriptConfig.Tagline;
  document.editform.wpMinoredit.checked = true;
  document.editform.submit();
}


function doWarnDelete() {

  var text = document.editform.wpTextbox1.value;

  var pName = mw.util.getParamValue("vanarticle");
  if (!pName) {
    pName = prompt("กรุณาใส่ชื่อบทความที่ผู้ใช้นี้ได้ทำหน้าว่าง (จำเป็น)", "");
    if (!pName || pName.length == 0) {
      return;
    }
  }

  text = text + "\n{{subst:uw-delete|" + pName + "}} --~~~~";
  document.editform.wpTextbox1.value = text;
  document.editform.wpSummary.value = pName + " หน้าว่าง?";
  document.editform.submit();
}


function doNothanks() {
  if (wgPageName.indexOf(".") >= 0) {
    document.editform.wpTextbox1.value = "{{nothanks}}\n\n" + document.editform.wpTextbox1.value;
  } else {

    var pName = mw.util.getParamValue("vanarticle");
    if (!pName) {
      pName = prompt("กรุณาใส่ชื่อบทความที่อาจละเมิดลิขสิทธิ์ (เว้นว่างและคลิก OK หากจะไม่ระบุ):", "");
      if (!pName || pName.length == 0) {
        return;
      }
    }

    if (pName.length == 0) {
      document.editform.wpTextbox1.value = document.editform.wpTextbox1.value + "\n{{subst:nothanks0}} --~~~~";
    } else {
      document.editform.wpTextbox1.value = document.editform.wpTextbox1.value + "\n{{subst:nothanks0|[[" + pName + "]]}} --~~~~";
    }
  }
  document.editform.wpSummary.value = "พูดคุยเรื่องลิขสิทธิ์" + iScriptConfig.Tagline;
  document.editform.wpMinoredit.checked = true;
  document.editform.submit();
}

function AddWelcomeTemplate(pageTitle) {
  if(pageTitle == undefined) pageTitle = "User Talk:" + mw.config.get('wgTitle');
  mw.notify("กำลังแจ้งยินดีต้อนรับผู้ใช้:" + mw.config.get('wgTitle') + " กรุณารอสักครู่...");
  var text;
  if (iScriptConfig.useMyWelcome) {
    text = "{{subst:ผู้ใช้:" + wgUserName + "/ยินดีต้อนรับ}} --~~~~";
  } else {
    text = "{{subst:ยินดีต้อนรับ}} --~~~~";
  }
  var summary = "ยินดีต้อนรับสู่" + iScriptConfig.wikiName;
  iScript.EditPage(pageTitle, '', '', "\n" + text, summary, true, true);
}

function doWelcome() {

  if (iScriptConfig.useMyWelcome) {
    document.editform.wpTextbox1.value += "{{subst:ผู้ใช้:" + wgUserName + "/ยินดีต้อนรับ}} --~~~~";
  } else {
    document.editform.wpTextbox1.value += "{{subst:ยินดีต้อนรับ}} --~~~~";
  }
  document.editform.wpSummary.value = "ยินดีต้อนรับสู่" + iScriptConfig.wikiName;
  document.editform.wpMinoredit.checked = false;
  document.editform.submit();
}

function doWarnImage(imageName, heading, templateName, commentWatermark, shortSummary) {
  var text = document.editform.wpTextbox1.value;
  if (text.indexOf(imageName) >= 0) {
    if (!confirm("ภาพที่คุณต้องการจะแจ้งอาจถูกแจ้งไปก่อนหน้านี้แล้ว คุณแน่ใจว่ายังต้องการแจ้งอีกครั้ง?")) {
      return;
    }
  }
  var regex = new RegExp("== ?" + heading + " ?==\\n", "ig");
  var result = null;
  var iFound = -1;

  while ((result = regex.exec(text)) != undefined) {
    iFound = result.index;
  }

  if (iFound >= 0) {
    var subtext = text.substring(iFound, text.length - 1);
    regex = new RegExp("<!--" + commentWatermark + "-->", "ig");
    subtext = subtext.replace(regex, "* {{ifd|" + mw.util.getParamValue("target") + "}} วันที่แจ้ง: ~~~~~\n<!--" + commentWatermark + "-->");
    text = text.substring(0, iFound) + subtext;

    result = null;
    regex = /\n==.*?==\n/ig;
    if ((result = regex.exec(subtext)) != undefined) {
      text = text.substring(0, iFound) + subtext.substring(result.index, subtext.length - 1) + "\n" + subtext.substring(0, result.index);
    } else {
      text = text.substring(0, iFound) + subtext;
    }
  } else {
    text += "\n{{subst:" + templateName + "|" + imageName + "|~~~~~}} --~~~~";
  }
  document.editform.wpTextbox1.value = text;
  document.editform.wpSummary.value = shortSummary;
  document.editform.submit();
}

/*
  if(forceMyWelcome) {
    document.editform.wpTextbox1.value += "{{subst:ผู้ใช้:" + wgUserName + "/ยินดีต้อนรับ}} --~~~~";

  } else {
    document.body.style.cursor = 'wait';

    a = sajax_init_object();
    a.open("GET", "//th.wikipedia.org/w/index.php?title=User:" + encodeURI(wgUserName) + encodeURI("/ยินดีต้อนรับ"), true);
    a.onreadystatechange = function() {
      if(a.readyState != 4) return;
      if(a.responseText.indexOf("var wgArticleId = 0;") >= 0) {
        document.editform.wpTextbox1.value += "\n{{subst:ยินดีต้อนรับ}} --~~~~";
      } else {
        document.editform.wpTextbox1.value += "\n{{subst:ผู้ใช้:" + wgUserName + "/ยินดีต้อนรับ}} --~~~~";
      }
    };
    a.send(null);
    document.body.style.cursor = 'auto';
  }
*/

// ========================================================
// userTabs
// Main Load Function
//
// User:Jutiphan Created: 10-12-2006
// Replaced: none
// ========================================================
$(document).ready(function() {
  if (mw.config.get('wgTitle').indexOf("/") < 0) {
    if (wgAction.indexOf("view") == 0) {
      if (iScriptConfig.Edition == Editions.Wikipedia && wgNamespaceNumber == 2 || wgNamespaceNumber == 3) {
        addTab("//tools.wikimedia.de/~interiot/cgi-bin/count_edits?dbname=thwiki_p&user=" + mw.config.get('wgTitle'), "สถิติ", "ca-kate", "ดูจำนวนครั้งที่แก้ไข", "");
      }


      if(iScriptConfig.useAjaxApi) {
        if(wgNamespaceNumber == 2 || wgNamespaceNumber == 3) {
          addMenu("notice", "javascript:AddWelcomeTemplate()", "♥ ต้อนรับ", "ca-welcome", "ยินดีต้อนรับผู้ใช้", "");
        }
      } else {
        if(wgNamespaceNumber == 3) {
          addMenu("notice", "javascript:assignToEditForm('speedyWelcome')", "♥ ต้อนรับ", "ca-welcome", "ยินดีต้อนรับผู้ใช้", "");
        }
      }

      if(wgNamespaceNumber == 3) {
        //หน้าที่เขียน tab is depreciated. Replaced by default option on the sidebox
        //addTab("//th.wikipedia.org/wiki/พิเศษ:Contributions/", "หน้าที่เขียน", "ca-log", "ดูหน้าที่เขียน", "");

        if (iScriptConfig.enableTestScripts) {
          addMenu("notice", "javascript:assignToEditForm('welcomeiScript')", "♥ สคริปต์จัดให้", "ca-welcomeiScript", "ยินดีต้อนรับผู้ใช้สคริปต์จัดให้", "");
          addMenu("notice", "javascript:assignToEditForm('welcomeiScript2')", "♥ สคริปต์จัดให้ 2", "ca-welcomeiScript2", "ยินดีต้อนรับผู้ใช้สคริปต์จัดให้2", "");
          addMenu("notice", "javascript:assignToEditForm('welcomeLevel')", "♥ จัดระดับ", "ca-welcomeLevel", "ยินดีต้อนรับสู่โครงการจัดระดับบทความ", "");
          addMenu("notice", "javascript:assignToEditForm('welcomeWPBannerService')", "♥ ป้ายโครงการวิกิ", "ca-welcomeWPBannerService", "ยินดีต้อนรับสู่บริการป้ายโครงการวิกิ", "");
        }

        if(iScriptConfig.useAjaxApi) {
          addMenu("content", "javascript:WarnUser('" + mw.config.get('wgTitle') + "','', 'General')", "Ψ เตือน", "ca-swarn", "ตักเตือน", "");
          addMenu("content", "javascript:WarnUser('" + mw.config.get('wgTitle') + "','', 'Vandal')", "Ψ ก่อกวน", "ca-svandal", "เตือนก่อกวน", "");
        } else {
          addMenu("content", "javascript:assignToEditForm('speedyWarn')", "Ψ เตือน", "ca-swarn", "ตักเตือน", "");
          addMenu("content", "javascript:assignToEditForm('speedyVandal')", "Ψ ก่อกวน", "ca-svandal", "เตือนก่อกวน");
        }
        if(iScriptConfig.Edition != Editions.Uncyclopedia) {
          addMenu("content", "javascript:assignToEditForm('speedyNoThanks')", "Ψ ละเมิด", "ca-snothanks", "เตือนละเมิดลิขสิทธิ์", "");
        }
        addMenu("content", "javascript:assignToEditForm('speedyWDelete')", "Ψ ทำว่าง", "ca-wdelete", "เตือนการทำหน้าว่าง", "");
        if(iScriptConfig.Edition == Editions.Uncyclopedia) {
          addMenu("content", "javascript:assignToEditForm('wUsername')", "Ψ ชื่อผู้ใช้ไม่เหมาะสม", "ca-wusername", "เตือนชื่อผู้ใช้ไม่เหมาะสม", "");
        }
      }
    } else {
      //If user_talk namespace
      if (wgNamespaceNumber == 3) {
        if (document.URL.lastIndexOf("&iScriptAction=speedyWarn") != -1) {
          doWarnTag();

        } else if (document.URL.lastIndexOf("&iScriptAction=speedyVandal") != -1) {
          doVandalTag();

        } else if (document.URL.lastIndexOf("&iScriptAction=speedyWDelete") != -1) {
          doWarnDelete();

        } else if (document.URL.lastIndexOf("&iScriptAction=speedyNoThanks") != -1) {
          doNothanks();

        } else if (document.URL.lastIndexOf("&iScriptAction=speedyWelcome") != -1) {
          doWelcome();

        } else if (document.URL.lastIndexOf("&iScriptAction=welcomeLevel") > 0) {
          var WPName = prompt("กรุณาใส่ชื่อโครงการวิกิโดยไม่ต้องใส่โครงการวิกินำหน้าหากมี", "");
           if (!WPName || WPName.length == 0) {
            document.editform.wpTextbox1.value += "\n{{subst:ผู้ใช้:Jutiphan/ต้อนรับจัดระดับ}} --~~~~";
           } else {
            document.editform.wpTextbox1.value += "\n{{subst:ผู้ใช้:Jutiphan/ต้อนรับจัดระดับ|" + WPName + "}} --~~~~";
           }
          document.editform.wpSummary.value = "โครงการจัดระดับบทความ";
          document.editform.wpMinoredit.checked = false;
          document.editform.submit();

        } else if (document.URL.lastIndexOf("&iScriptAction=welcomeWPBannerService") >= 0) {
          var WPName = prompt("กรุณาใส่ชื่อโครงการวิกิโดยไม่ต้องใส่โครงการวิกินำหน้าหากมี", "");
           if (!WPName || WPName.length == 0) {
            document.editform.wpTextbox1.value += "\n{{subst:ผู้ใช้:Jutiphan/ต้อนรับป้ายโครงการวิกิ}} --~~~~";
           } else {
            document.editform.wpTextbox1.value += "\n{{subst:ผู้ใช้:Jutiphan/ต้อนรับป้ายโครงการวิกิ|" + WPName + "}} --~~~~";
           }
          document.editform.wpSummary.value = "บริการป้ายโครงการวิกิ +บอตคุง";
          document.editform.wpMinoredit.checked = false;
          document.editform.submit();

        } else if (document.URL.lastIndexOf("&iScriptAction=welcomeiScript2") >= 0) {
          document.editform.wpTextbox1.value += "\n{{subst:ผู้ใช้:Jutiphan/ต้อนรับสคริปต์จัดให้2}} --~~~~";
          document.editform.wpSummary.value = "สคริปต์จัดให้ ยินดีให้บริการคุณ";
          document.editform.wpMinoredit.checked = false;
          document.editform.submit();

        } else if (document.URL.lastIndexOf("&iScriptAction=welcomeiScript") >= 0) {
          document.editform.wpTextbox1.value += "\n{{subst:ผู้ใช้:Jutiphan/ต้อนรับสคริปต์จัดให้}} --~~~~";
          document.editform.wpSummary.value = "ยินดีต้อนรับ +สคริปต์จัดให้";
          document.editform.wpMinoredit.checked = false;
          document.editform.submit();

        } else if(document.URL.lastIndexOf("&iScriptAction=wUsername") >= 0) {
          document.editform.wpTextbox1.value += "\n{{subst:uw-username}} --~~~~";
          document.editform.wpSummary.value = "เตือนชื่อผู้ใช้ไม่เหมาะสม" + iScriptConfig.Tagline;
          document.editform.wpMinoredit.checked = false;
          document.editform.submit();

        } else if (document.URL.lastIndexOf("&iScriptAction=warnNoImageLicenseMW") != -1) {
          var imgName = mw.util.getParamValue("target");
          if (document.editform.wpTextbox1.value.indexOf(imgName) >= 0) {
            if (!confirm("ภาพที่คุณต้องการจะแจ้งอาจถูกแจ้งไปก่อนหน้านี้แล้ว คุณแน่ใจว่ายังต้องการแจ้งอีกครั้ง?")) {
              return;
            }
          }
          imgName = imgName.replace(/\+/g, " ");
          document.editform.wpTextbox1.value += "\n{{subst:ต้องการสถานะภาพ|" + imgName + "}} --~~~~";
          document.editform.wpSummary.value = "แจ้งภาพที่คุณอัปโหลดต้องการสัญญาอนุญาต";
          document.editform.submit();

        } else if (document.URL.indexOf("&iScriptAction=warnNoImageLicense") != -1) {
          if (document.editform.wpTextbox1.value.indexOf(mw.util.getParamValue("target")) >= 0) {
            if (!confirm("ภาพที่คุณต้องการจะแจ้งอาจถูกแจ้งไปก่อนหน้านี้แล้ว คุณแน่ใจว่ายังต้องการแจ้งอีกครั้ง?")) {
              return;
            }
          }
          document.editform.wpTextbox1.value += "\n{{subst:ต้องการสถานะภาพ|" + mw.util.getParamValue("target") + "}} --~~~~";
          document.editform.wpSummary.value = "แจ้งภาพที่คุณอัปโหลดต้องการสถานะภาพ";
          document.editform.submit();

        } else if (document.URL.indexOf("&iScriptAction=warnNoSource") != -1) {
          doWarnImage(mw.util.getParamValue("target"), "ต้องการแหล่งที่มาสำหรับภาพที่คุณอัปโหลด", "ต้องการแหล่งที่มาภาพ", "ภาพที่ไม่ได้ระบุแหล่งที่มา", "แจ้งภาพที่คุณอัปโหลดไม่ได้ระบุแหล่งที่มา");

        } else if (document.URL.indexOf("&iScriptAction=warnInvalidImageLicense") != -1) {
          doWarnImage(mw.util.getParamValue("target"), "ภาพที่คุณอัปโหลดอาจระบุสัญญาอนุญาตไม่ถูกต้อง", "idw-cp", "ภาพที่อาจระบุสัญญาอนุญาตไม่ถูกต้อง", "แจ้งภาพที่คุณอัปโหลดอาจละเมิดลิขสิทธิ์ หรือติดป้ายสัญญาอนุญาตไม่ถูกต้อง");
          return;

        } else if (document.URL.indexOf("&iScriptAction=warnIFD") != -1) {
          doWarnImage(mw.util.getParamValue("target"), "แจ้งการลบภาพที่คุณอัปโหลด", "IFDWarning", "ภาพที่ถูกแจ้งลบ", "แจ้งภาพที่คุณอัปโหลดถูกแจ้งลบ หรือถูกลบไปแล้ว");
          return;
        }


      addMenu("notice", "javascript:doWelcome()", "♥ ต้อนรับ", "ca-welcome", "ยินดีต้อนรับผู้ใช้", "");
      addMenu("content", "javascript:doWarnTag()", "Ψ เตือน", "ca-warn", "ตักเตือนอัจฉริยะ");
      addMenu("content", "javascript:doVandalTag()", "Ψ ก่อกวน", "ca-vandal", "เตือนก่อกวน", "");
      addMenu("content", "javascript:doNothanks()", "Ψ ละเมิด", "ca-nothanks", "เตือนละเมิดลิขสิทธิ์", "");
      addMenu("content", "javascript:doWarnDelete()", "Ψ ทำว่าง", "ca-wdelete", "เตือนการทำหน้าว่าง", "");
      }
    }
  }
});

/* </nowiki></pre> */