วิกิพีเดีย:สคริปต์ผู้ใช้/สคริปต์/บังคับลาพักร้อนจากวิกิพีเดีย

จากวิกิพีเดีย สารานุกรมเสรี
ไปยังการนำทาง ไปยังการค้นหา

การทำงาน[แก้]

  • ป้องกันมิให้ผู้ใช้ล็อกอินก่อนวันที่กำหนดไว้ เพื่อบังคับให้การลาพักร้อนจากวิกิพีเดียเคร่งครัดมากยิ่งขึ้นโดยอัตโนมัติ
  • หากผู้ใช้ล็อกอิน จะล็อกเอาต์โดยอัตโนมัติ
  • ผู้ใช้ยังคงสามารถอ่านหรือแก้ไขวิกิพีเดียโดยไม่ล็อกอินได้อยู่

การใช้งาน[แก้]

  1. ลอกโค้ดส่วนนี้ไปที่ไฟล์สกินของคุณ
  2. ตั้งค่าวันและเวลาที่คุณจะเลิกพักร้อน เช่น หากจะพักร้อนถึงวันที่ 14 มีนาคม พ.ศ. 2556 (หรือ ค.ศ. 2013) เวลา 01:02:03 ก็ให้เขียนว่า
        var date = { year: 2556, month: 3, day: 14};
        var time = { hours: 1, minutes: 2, seconds: 3};

จากนั้น ให้เซฟหน้าดังกล่าว และรีเฟรชหน้า (Mozilla: กด Reload (หรือ Ctrl-R), IE/Opera: Ctrl-F5, Safari: Cmd-R, Konqueror Ctrl-R) เป็นอันเสร็จพิธี ขอให้สนุกกับวันพักผ่อนจากวิกิพีเดียครับ!

ข้อควรระวัง[แก้]

  • ระวังอย่าตั้งค่าวันที่ผิดพลาด เพราะคุณจะไม่สามารถล็อกอินเข้ามาแก้ไขได้อีกจนกว่าจะหมดเวลา
    • ค่าวันที่ใช้พุทธศักราช
    • เวลาใช้ระบบ 24 ชั่วโมง อย่างไรก็ดี หากเวลาในแต่ละหน่วยเป็นเลขหลักหน่วยหลักเดียว ห้ามใส่เลข 0 นำหน้า
  • หากเกิดข้อผิดพลาดขึ้นหรือต้องการกลับมาก่อนกำหนด อาจแจ้งผู้ดูแลระบบให้ยกเลิกการบังคับลาพักร้อนได้

สคริปต์[แก้]

/*** BEGIN WIKIBREAK ENFORCER ***/
$(document).ready(function() {

	/***
	อ่านคำชี้แจงที่ [[วิกิพีเดีย:สคริปต์ผู้ใช้/สคริปต์/บังคับลาพักร้อนจากวิกิพีเดีย]]

	Warning: We use Buddhist Era instead of Christian Era here.
	You can convert these two eras by following formula; BE = CE + 543.
	***/
	/*** Start editing here ***/

	// When you want to end your break?
	// no leading zeroes. (example: 9 - correct, 09 - incorrect)

	var date = { year: ..., month: ..., day: ...};
	var time = { hours: ..., minutes: ..., seconds: ... };

	/*** Stop editing here ***/
	date.year -= 543;
	var currentDate = new Date();
	var enforcedBreakEnd = new Date(
		date.year,date.month-1,date.day,time.hours,time.minutes,time.seconds);
	if (currentDate <= enforcedBreakEnd) {
		alert("Enforced wikibreak until "+enforcedBreakEnd.toLocaleString()
			+ "\n(now is "+currentDate.toLocaleString()+")\n\nBye!");
		location = "//"+location.host+"/w/index.php?title="
			+ "Special:Userlogout&returnto=Main_Page";
	}
});
/*** END WIKIBREAK ENFORCER ***/