Module:User

local p = {}

local utilsError = require('Module:UtilsError')

function p.Main(frame) local args = frame.args local template = args[1] --The Template that is being used. This parameter does not take user input. local data = args[2] --User input local data2 = args[3] --Extra user input if (template == "Archive") then return string.format("\nThis page is an archive of an old Talk Page. The contents have been moved from another page to clear space and to preserve history, so this page is locked from editing. If you wish to ask about the corresponding page, or respond to an earlier message, you may direct any comments to the current talk page. If you wish to refer to a message on this page, link to %s.'' ", data, data2) elseif (template == "Archive List") then local archives = {} local archiveList = "" if (data ~= "") then --Error checks if ((tonumber(data) <= 0) == false) then for i=1,data do archives[i] = ("\n* Archive ".. i .. "") end for i=1,data do archiveList = (archiveList .. archives[i]) end return string.format("{|class=\"messagebox\" style=\"display: flex; border: 4px solid #426787; color:#e6e6e6; background-color: #1d578b; float: right; border-radius:10px;\"\n|\n|-\n| Archives of %s \n|-\n| %s \n|}", data2, archiveList) else utilsError.warn("The first parameter must be a number greater than 0.") end else utilsError.warn("You must enter the number of archives in the first parameter.") end elseif (template == "Legacy User") then if (data == "User" or data == "") then return string.format("  Legacy User Page This is a user page for a legacy account, which is a very old wiki account that has long been abandoned. This page is locked from editing as it's here to preserve history. If there are any problems with this page, please notify a Staff member. ")		elseif (data == "Talk") then			return string.format("  Legacy User Talk Page This is a talk page for a legacy account, which is a very old wiki account that has long been abandoned. This page is locked from editing as it's here to preserve history. If you came here to send this user a message, you may instead notify a Staff member as this user will most-likely not respond. ")		elseif (data == "Sandbox") then			return string.format("  Legacy User Sandbox ''This is a user sandbox for a legacy account, which is a very old wiki account that has long been abandoned. This page is locked from editing as it's here to preserve history. If there are any problems with this page, please notify a Staff member. ")		else			utilsError.warn("You entered an invalid value. Accepted values include User, Talk, or Sandbox.")		end	elseif (template == "Talk Page Notice") then		local image, header, info		if (data == "Controversial") then			image = ""			header = "Controversial Topic"			info = "This series of messages involves a controverisal topic and discussions tend to get heated during debates like these. To prevent this, please direct any messages to the or to the Zelda Universe formus unless you have substantial evidence to add to this discussion and intend only to find a resolution in the discussion."		elseif (data == "Off-Topic") then			image = ""			header = "Off-Topic Messages"			info = "This series of messages doesn't relate to improving the page that this talk page corresponds to. Zelda Wiki is an encyclopedia, not a forum, so please direct these messages to the Zelda Universe formus or to the ."		elseif (data == "Theory") then			image = ""			header = "Theory Warning"			info = "This series of messages has become more focused on theorizing about the page in question instead of focusing on the factual information to improve the article. Please direct theories to the Zelda Universe formus or to the ."		elseif (data == "Unproductive") then			image = ""			header = "Unproductive"			info = "In the event of an edit war, this talk page should be used to reach an agreement between the parties. This discussion has not been progressing and is becoming uncivil, and if it continues, the argument will be forcefully shut down and the participants will be banned, as per the Rules. Please keep the discussions civil and focus on the goal of improving the article in question."		else			utilsError.warn("You entered an invalid value. See here for accepted values.")		end		return frame:expandTemplate({			title = "Mbox",			args = {				image = image,				header = header,				info = frame:preprocess(info),			}		})	end end

return p