Home
Random
Log in
Settings
About Ikwipedia
Disclaimers
Search
Editing
Module:Copied
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
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 = "Text and/or other creative content from" if not (from_oldid == "") then text = string.format("%s [%s this version] of", text, tostring(mw.uri.fullUrl(from, {oldid=from_oldid} ))) end if from then text = string.format("%s <span class='plainlinks'>[%s %s]</span>",text, tostring(mw.uri.fullUrl(from, {redirect="no"} )), from) else text = text .. '[[]]' end if (merge == "yes") or not (afd == "") then text = text .. " was merged into" else text = text .. " was copied or moved into" 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 with [%s this edit]",text,diff) elseif (to_oldid or to_diff) then text = string.format("%s with [%s this edit]",text,tostring(mw.uri.fullUrl(to, {diff=to_diff or "next", oldid = to_oldid or "prev"} ))) end if not (date == "") then text = string.format("%s on %s",text,date) end if not (afd == "") then if (mw.ustring.match(afd, "Wikipedia:", 1 )) then --If no venue is given add AfD prefix text = string.format("%s after being [[%s|nominated for deletion]]",text,afd) else text = string.format("%s after being [[Wikipedia:Articles for deletion/%s|nominated for deletion]]",text,afd) end end text = text .. "." -- Finish first sentance text = string.format("%s The former page's [%s history] now serves to [[WP:Copying within Wikipedia|provide attribution]] for that content in the latter page, and it must not be deleted as long as the latter page exists.",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*Merged",text) else text = string.format("%s\n*Copied",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 oldid], ",text,tostring(mw.uri.fullUrl(from, {oldid = from_oldid} ))) end local to = args["to".. i] or "" text = string.format("%s[%s history]) → [[%s]]",text,tostring(mw.uri.fullUrl(from, {action = "history"} )), to) local diff = args["diff" .. i] if (diff) then text = string.format("%s ([%s diff])",text,diff) elseif (args["to_oldid" .. i] or args["to_diff".. i]) then local to_diff = args["to_diff".. i] or "next" local to_oldid = args["to_oldid" .. i] or "prev" text = string.format("%s ([%s diff])",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 on %s",text,date) end if (afd) then if (mw.ustring.match(afd, "Wikipedia:", 1 )) then --If no venue is given add AfD prefix text = string.format("%s after being [[%s|nominated for deletion]]",text,afd) else text = string.format("%s after being [[Wikipedia:Articles for deletion/%s|nominated for deletion]]",text,afd) end end if (not (args["to_oldid" .. i] or args["to_diff".. i])) then text = string.format("%s[[Category:Wikipedia pages using copied template without oldid]]",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 (args["from" .. i]) do text = string.format("%s%s",text,row(args, i)) i = i + 1 --Check if from(i+1) exists end return text end local function multiText(args) local pageType if (mw.title.getCurrentTitle():inNamespace(1)) then pageType = "article" else pageType = "page" end local historyList = list(args) if (args["collapse"] == 'yes') then local collapsedText = '<table style="width:100%%; background: transparent;" class="mw-collapsible mw-collapsed">\n<tr><th>Copied pages:</th></tr>\n<tr><td> %s </td></tr></table>' historyList = string.format(collapsedText, historyList) end local text = "Text has been copied to or from this %s; see the list below. The source pages now serve to [[WP:Copying within Wikipedia|provide attribution]] for the content in the destination pages and must not be deleted as long as the copies exist. For attribution and to access older versions of the copied text, please see the history links below. %s" text = string.format(text, pageType, historyList) return text end local function categories(args,multiUsed) local to_oldid = args["to_oldid"] or args["to_diff"] or args["diff"] or args["to_oldid1"] or args["to_diff1"] or args["diff1"] local from_oldid = args["from_oldid"] or args["from_oldid1"] local text = "[[Category:Wikipedia pages using copied template]]" if ((not from_oldid) or (not to_oldid)) and not multiUsed then text = text .. "[[Category:Wikipedia pages using copied template without oldid]]" end 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) .. categories(args,true) else text = singleText(args) .. categories(args,false) end return text end local function renderBanner(args) return MessageBox.main('tmbox', { class = "copiednotice", small = args["small"], image = '[[File:Splitsection.svg|frameless|upright=0.23|link=|alt=]]', text = BannerText(args) }) end function p.main(frame) local getArgs = require('Module:Arguments').getArgs local args = getArgs(frame) return renderBanner(args) end return p
Summary:
Please note that all contributions to Ikwipedia are considered to be released under the Creative Commons Attribution-ShareAlike (see
Ikwipedia:Copyrights
for details). If you do not want your writing to be edited mercilessly and redistributed at will, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource.
Do not submit copyrighted work without permission!
Cancel
Editing help
(opens in new window)