ผู้ใช้:Jutiphan/Scripts/userTabs/monobook.js
< ผู้ใช้:Jutiphan | Scripts
หมายเหตุ: หลังเผยแพร่ คุณอาจต้องล้างแคชเว็บเบราว์เซอร์ของคุณเพื่อดูการเปลี่ยนแปลง
- ไฟร์ฟอกซ์ / ซาฟารี: กด 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> */