วิกิพีเดีย
มอดูล:Copied
คู่มือการใช้งานมอดูล[สร้าง]
คุณอาจจะต้องการสร้างคู่มือการใช้งานของมอดูลนี้ ผู้เขียนสามารถทำการทดลองได้ที่กระบะทราย (สร้าง | คัดลอก) และชุดทดสอบ (สร้าง) ของมอดูลนี้ โปรดเพิ่มหมวดหมู่ไปที่หน้าย่อย /doc หน้าย่อยของมอดูลนี้ |
local MessageBox = require('Module:Message box') local p = {} local function singleText(args) local from_oldid = args["from_oldid"] or args["from_oldid1"] or "" local from = args["from"] or args["from1"] or "" local to = args["to"] or args["to1"] or "" local date = args["date"] or args["date1"] or "" local afd = args["afd"] or args["afd1"] or "" local merge = args["merge"] or args["merge1"] or "" local text = "ข้อความและ/หรือเนื้อหาที่ถูกสร้างสรรค์จาก" if not (from_oldid == "") then text = string.format("%s [%s รุ่นนี้]ของ", text, tostring(mw.uri.fullUrl(from, {oldid=from_oldid} ))) end text = string.format("%s [[%s]] ",text,from) if (merge == "yes") or not (afd == "") then text = string.format("%sถูกรวมเข้ากับ",text) else text = string.format("%sถูกคัดลอกหรือย้ายไปที่",text) end if (merge == "yes") and (to == "") then text = string.format("%s [[%s:%s]] ",text,mw.title.getCurrentTitle().nsText,mw.title.getCurrentTitle().text) --If no merge target given assume current page is the target else text = string.format("%s [[%s]] ",text,to) end local diff = args["diff"] or args["diff1"] local to_diff = args["to_diff"] or args["to_diff1"] local to_oldid = args["to_oldid"] or args["to_oldid1"] if (diff) then text = string.format("%sด้วย[%s การแก้ไขนี้] ",text,diff) elseif (to_oldid or to_diff) then local to_diff2 = args["to_diff"] or args["to_diff1"] or "prev" local to_oldid2 = args["to_oldid"] or args["to_oldid1"] or "" text = string.format("%sด้วย[%s การแก้ไขนี้] ",text,tostring(mw.uri.fullUrl(to, {diff=to_diff or "prev", oldid = to_oldid or ""} ))) end if not (date == "") then text = string.format("%sเมื่อ %s ",text,date) end text = string.format("%s [%s ประวัติหน้า]ถูกคงไว้สำหรับ[[:en:WP:Copying within Wikipedia|ให้การแสดงแหล่งที่มา]]ในเนื้อหาที่ถูกคัดลอกหรือย้ายไปและต้องไม่ถูกลบตราบเท่าที่ยังมีหน้าปลายทางของเนื้อหาอยู่",text,tostring(mw.uri.fullUrl(from,{action="history"}) or "")) return text end local function row(args, i) local text = "" local afd = args["afd" .. i] if (afd or args["merge" .. i]) then text = string.format("%s\n*รวมเข้า",text) else text = string.format("%s\n*คัดลอก",text) end local from = args["from" .. i] or "" text = string.format("%s [%s %s] (",text,tostring(mw.uri.fullUrl(from, {redirect = "no"} )),from) local from_oldid = args["from_oldid" .. i] if (from_oldid) then text = string.format("%sจาก[%s รหัสรุ่น], ",text,tostring(mw.uri.fullUrl(from, {oldid = from_oldid} ))) end local to = args["to".. i] or "" text = string.format("%s[%s ประวัติ]) → [[%s]]",text,tostring(mw.uri.fullUrl(from, {action = "history"} )), to) local diff = args["diff" .. i] if (diff) then text = string.format("%s ([%s ต่าง])",text,diff) elseif (args["to_oldid" .. i] or args["to_diff".. i]) then local to_diff = args["to_diff".. i] or "prev" local to_oldid = args["to_oldid" .. i] or "" text = string.format("%s ([%s ต่าง])",text,tostring(mw.uri.fullUrl(to, {diff=to_diff, oldid = to_oldid} ))) end local date = args["date" .. i] if (date) then text = string.format("%s เมื่อ %s",text,date) end if (not (args["to_oldid" .. i] or args["to_diff".. i])) then text = string.format("%s[[หมวดหมู่:หน้าวิกิพีเดียที่ใช้แม่แบบ copied โดยไม่ใส่รหัสรุ่น]]",text) end return text end local function list(args) local text = "" local from1 = args["from1"] if (from1) then --Support from1 and from in case of multiple rows text = string.format("%s%s",text,row(args, 1)) else text = string.format("%s%s",text,row(args, "")) end local i = 2 while i > 0 do if (args["from" .. i]) then text = string.format("%s%s",text,row(args, i)) i = i + 1 --Check if from(i+1) exist else i = - 1 --Break if fromi doesn't exist end end return text end local function multiText(args) local pageType if (mw.title.getCurrentTitle():inNamespace(0)) then pageType = "บทความ" else pageType = "หน้า" end local historyList = list(args) if (args["collapse"] == 'yes') then local collapsedText = '<table style="width:100%%; background: transparent;" class="collapsible collapsed">\n<tr><th>หน้าถูกคัดลอกมา:</th></tr>\n<tr><td> %s </td></tr></table>' historyList = string.format(collapsedText, historyList) end local text = "ข้อความถูกคัดลอกไปหรือคัดลอกมาจาก%sนี้ ดูรายการด้านล่าง หน้าต้นที่ถูกย้ายถูกเก็บไว้สำหรับ[[:en:WP:Copying within Wikipedia|ให้การแสดงแหล่งที่มา]] และห้ามทำการลบจนกว่าหน้าที่คัดลอกเนื้อหาไปยังคงอยู่ สำหรับการดูผู้สร้างสรรค์หรือแก้ไขก่อนหน้ากรุณากดดูที่ลิงก์ประวัติด้านล่าง %s" text = string.format(text, pageType, historyList) return text end local function BannerText(args) --Checks if there are multiple rows local text local from2 = args["from2"] if (from2) then text = multiText(args) elseif (not from2) then text = singleText(args) end return text end local function renderBanner(args) return MessageBox.main('tmbox', { small = args["small"], image = '[[File:Splitsection.svg|50px|link=|alt=]]', text = BannerText(args) }) end local function categories(args) local to_oldid = args["to_oldid"] or args["to_diff"] or args["diff"] local from_oldid = args["from_oldid"] local text = "[[Category:หน้าวิกิพีเดียที่ใช้แม่แบบ copied]]" if ((not from_oldid) or (not to_oldid)) then text = string.format("%s[[หมวดหมู่:หน้าวิกิพีเดียที่ใช้แม่แบบ copied โดยไม่ใส่รหัสรุ่น]]",text) end return text end function p.main(frame) local getArgs = require('Module:Arguments').getArgs local args = getArgs(frame) return renderBanner(args) .. categories(args) end return p