<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="zh">
	<id>https://zybkcn.com/w/index.php?action=history&amp;feed=atom&amp;title=Module%3ATemplate%3ADelete2</id>
	<title>Module:Template:Delete2 - 版本历史</title>
	<link rel="self" type="application/atom+xml" href="https://zybkcn.com/w/index.php?action=history&amp;feed=atom&amp;title=Module%3ATemplate%3ADelete2"/>
	<link rel="alternate" type="text/html" href="https://zybkcn.com/w/index.php?title=Module:Template:Delete2&amp;action=history"/>
	<updated>2026-05-04T15:28:24Z</updated>
	<subtitle>本wiki上该页面的版本历史</subtitle>
	<generator>MediaWiki 1.43.5</generator>
	<entry>
		<id>https://zybkcn.com/w/index.php?title=Module:Template:Delete2&amp;diff=25968&amp;oldid=prev</id>
		<title>入我相思门：​创建页面，内容为“local mDelete = require(&#039;Module:Delete&#039;) local mDelcat = require(&#039;Module:Delcat&#039;)  local data = require(&#039;Module:Delete/data&#039;) local data_sandbox = require(&#039;Module:Delete/data/sandbox&#039;)  local z = {}  function extractAliases(item)     allnames = {item[&#039;code&#039;]}     for j, alias in ipairs(item[&#039;aliases&#039;]) do         table.insert(allnames, alias)     end     return allnames end  function extractShortDesc(item)     if item[&#039;description&#039;] then         return item[&#039;de…”</title>
		<link rel="alternate" type="text/html" href="https://zybkcn.com/w/index.php?title=Module:Template:Delete2&amp;diff=25968&amp;oldid=prev"/>
		<updated>2022-11-26T08:21:31Z</updated>

		<summary type="html">&lt;p&gt;创建页面，内容为“local mDelete = require(&amp;#039;Module:Delete&amp;#039;) local mDelcat = require(&amp;#039;Module:Delcat&amp;#039;)  local data = require(&amp;#039;Module:Delete/data&amp;#039;) local data_sandbox = require(&amp;#039;Module:Delete/data/sandbox&amp;#039;)  local z = {}  function extractAliases(item)     allnames = {item[&amp;#039;code&amp;#039;]}     for j, alias in ipairs(item[&amp;#039;aliases&amp;#039;]) do         table.insert(allnames, alias)     end     return allnames end  function extractShortDesc(item)     if item[&amp;#039;description&amp;#039;] then         return item[&amp;#039;de…”&lt;/p&gt;
&lt;p&gt;&lt;b&gt;新页面&lt;/b&gt;&lt;/p&gt;&lt;div&gt;local mDelete = require(&amp;#039;Module:Delete&amp;#039;)&lt;br /&gt;
local mDelcat = require(&amp;#039;Module:Delcat&amp;#039;)&lt;br /&gt;
&lt;br /&gt;
local data = require(&amp;#039;Module:Delete/data&amp;#039;)&lt;br /&gt;
local data_sandbox = require(&amp;#039;Module:Delete/data/sandbox&amp;#039;)&lt;br /&gt;
&lt;br /&gt;
local z = {}&lt;br /&gt;
&lt;br /&gt;
function extractAliases(item)&lt;br /&gt;
    allnames = {item[&amp;#039;code&amp;#039;]}&lt;br /&gt;
    for j, alias in ipairs(item[&amp;#039;aliases&amp;#039;]) do&lt;br /&gt;
        table.insert(allnames, alias)&lt;br /&gt;
    end&lt;br /&gt;
    return allnames&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function extractShortDesc(item)&lt;br /&gt;
    if item[&amp;#039;description&amp;#039;] then&lt;br /&gt;
        return item[&amp;#039;description&amp;#039;]:gsub(&amp;#039;{&amp;#039;, &amp;#039;&amp;amp;#123;&amp;#039;):gsub(&amp;#039;}&amp;#039;, &amp;#039;&amp;amp;#125;&amp;#039;):gsub(&amp;#039;|&amp;#039;, &amp;#039;&amp;amp;#124;&amp;#039;)&lt;br /&gt;
    else&lt;br /&gt;
        return &amp;#039;&amp;#039;&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function z.reasonsBox(frame)&lt;br /&gt;
	local wt = [=[&lt;br /&gt;
{|class=&amp;quot;wikitable&lt;br /&gt;
|-&lt;br /&gt;
!速删编号!!可使用的代码!!简介!!详细说明&lt;br /&gt;
	]=]&lt;br /&gt;
    for i, item in ipairs(data) do&lt;br /&gt;
        allnames = extractAliases(item)&lt;br /&gt;
        wt = wt .. string.format([=[&lt;br /&gt;
|-&lt;br /&gt;
|%s&lt;br /&gt;
|&lt;br /&gt;
* %s&lt;br /&gt;
|%s&lt;br /&gt;
|%s&lt;br /&gt;
        ]=]&lt;br /&gt;
        , item[&amp;#039;code&amp;#039;], mw.text.listToText(allnames, &amp;#039;\n* &amp;#039;, &amp;#039;\n* &amp;#039;), item[&amp;#039;criteria&amp;#039;], extractShortDesc(item):gsub(&amp;#039;&amp;amp;#123;&amp;amp;#123;&amp;#039;, &amp;#039;{{tl|&amp;#039;):gsub(&amp;#039;&amp;amp;#124;&amp;#039;, &amp;#039;|&amp;#039;):gsub(&amp;#039;&amp;amp;#125;&amp;amp;#125;&amp;#039;, &amp;#039;}}&amp;#039;))&lt;br /&gt;
    end&lt;br /&gt;
    wt = wt .. &amp;#039;|}&amp;#039;&lt;br /&gt;
    return frame:preprocess(wt)&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function z.reasonsBox_sandbox(frame)&lt;br /&gt;
	local wt = [=[&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-weight:bold; background-color:#FFDD77; color:#800000;&amp;quot;&amp;gt;(＊)&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;font-weight:bold; color:red;&amp;quot;&amp;gt;提醒：此渲染版本为沙盒版本，可能与目前通行版本有所不同！&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{|class=&amp;quot;wikitable&lt;br /&gt;
|-&lt;br /&gt;
!速删编号!!可使用的代码!!简介!!详细说明&lt;br /&gt;
	]=]&lt;br /&gt;
    for i, item in ipairs(data_sandbox) do&lt;br /&gt;
        allnames = extractAliases(item)&lt;br /&gt;
        wt = wt .. string.format([=[&lt;br /&gt;
|-&lt;br /&gt;
|%s&lt;br /&gt;
|&lt;br /&gt;
* %s&lt;br /&gt;
|%s&lt;br /&gt;
|%s&lt;br /&gt;
        ]=]&lt;br /&gt;
        , item[&amp;#039;code&amp;#039;], mw.text.listToText(allnames, &amp;#039;\n* &amp;#039;, &amp;#039;\n* &amp;#039;), item[&amp;#039;criteria&amp;#039;], extractShortDesc(item):gsub(&amp;#039;&amp;amp;#123;&amp;amp;#123;&amp;#039;, &amp;#039;{{tl|&amp;#039;):gsub(&amp;#039;&amp;amp;#124;&amp;#039;, &amp;#039;|&amp;#039;):gsub(&amp;#039;&amp;amp;#125;&amp;amp;#125;&amp;#039;, &amp;#039;}}&amp;#039;))&lt;br /&gt;
    end&lt;br /&gt;
    wt = wt .. &amp;#039;|}&amp;#039;&lt;br /&gt;
    return frame:preprocess(wt)&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function z.CSD_reason(frame)&lt;br /&gt;
	if frame.args.parent then&lt;br /&gt;
        args = frame:getParent().args&lt;br /&gt;
    else&lt;br /&gt;
        args = frame.args&lt;br /&gt;
    end&lt;br /&gt;
	map = {}&lt;br /&gt;
    for i, item in ipairs(data) do&lt;br /&gt;
        map[item[&amp;#039;code&amp;#039;]:lower()] = i&lt;br /&gt;
        for j, alias in ipairs(item[&amp;#039;aliases&amp;#039;]) do&lt;br /&gt;
            map[alias:lower()] = i&lt;br /&gt;
        end&lt;br /&gt;
    end&lt;br /&gt;
    i = 1&lt;br /&gt;
    rows = {}&lt;br /&gt;
    arg = args[1]&lt;br /&gt;
    if arg ~= nil then&lt;br /&gt;
        if arg and map[mw.text.trim(arg:lower())] then&lt;br /&gt;
            item = data[map[mw.text.trim(arg:lower())]]&lt;br /&gt;
            local text = &amp;#039;&amp;#039;&lt;br /&gt;
            if args[2] ~= nil and args[2] ~= &amp;#039;&amp;#039; then&lt;br /&gt;
        	    text = args[2]&lt;br /&gt;
            elseif args[&amp;#039;notCSD&amp;#039;] ~= nil and args[&amp;#039;notCSD&amp;#039;] ~= &amp;#039;&amp;#039; then&lt;br /&gt;
        	    text = item[&amp;#039;code&amp;#039;]&lt;br /&gt;
            else&lt;br /&gt;
        	    text = &amp;#039;CSD &amp;#039; .. item[&amp;#039;code&amp;#039;]&lt;br /&gt;
            end&lt;br /&gt;
            if args.nolink then&lt;br /&gt;
            	return text&lt;br /&gt;
            elseif args.reason then&lt;br /&gt;
            	return &amp;#039;[[WP:CSD#&amp;#039; .. item[&amp;#039;code&amp;#039;] .. &amp;#039;|&amp;#039; .. text .. &amp;#039;]]：&amp;lt;span title=&amp;quot;&amp;#039; .. extractShortDesc(item) .. &amp;#039;&amp;quot;&amp;gt;&amp;#039; .. item[&amp;#039;criteria&amp;#039;] .. &amp;#039;&amp;lt;/span&amp;gt;&amp;#039;&lt;br /&gt;
            elseif args.onlyreason then&lt;br /&gt;
            	return &amp;#039;&amp;lt;span title=&amp;quot;&amp;#039; .. extractShortDesc(item) .. &amp;#039;&amp;quot;&amp;gt;&amp;#039; .. item[&amp;#039;criteria&amp;#039;] .. &amp;#039;&amp;lt;/span&amp;gt;&amp;#039;&lt;br /&gt;
            else&lt;br /&gt;
            	return &amp;#039;[[WP:CSD#&amp;#039; .. item[&amp;#039;code&amp;#039;] .. &amp;#039;|&amp;#039; .. text .. &amp;#039;]]&amp;#039;&lt;br /&gt;
            end&lt;br /&gt;
        elseif arg and mw.text.trim(arg) ~= &amp;#039;&amp;#039; then&lt;br /&gt;
            return require(&amp;#039;Module:Error&amp;#039;).error{&amp;#039;错误：无法找到速删代码为&amp;#039; .. args[i] .. &amp;#039;的速删项目。&amp;#039;}&lt;br /&gt;
        end&lt;br /&gt;
    else&lt;br /&gt;
       	return &amp;#039;[[WP:CSD|&amp;#039; .. (args[2] or &amp;#039;快速删除方针&amp;#039;) .. &amp;#039;]]&amp;#039;&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function z.CSD_reason_sb(frame)&lt;br /&gt;
	if frame.args.parent then&lt;br /&gt;
        args = frame:getParent().args&lt;br /&gt;
    else&lt;br /&gt;
        args = frame.args&lt;br /&gt;
    end&lt;br /&gt;
	map = {}&lt;br /&gt;
    for i, item in ipairs(data_sandbox) do&lt;br /&gt;
        map[item[&amp;#039;code&amp;#039;]:lower()] = i&lt;br /&gt;
        for j, alias in ipairs(item[&amp;#039;aliases&amp;#039;]) do&lt;br /&gt;
            map[alias:lower()] = i&lt;br /&gt;
        end&lt;br /&gt;
    end&lt;br /&gt;
    i = 1&lt;br /&gt;
    rows = {}&lt;br /&gt;
    arg = args[1]&lt;br /&gt;
    if arg ~= nil then&lt;br /&gt;
        if arg and map[mw.text.trim(arg:lower())] then&lt;br /&gt;
            item = data_sandbox[map[mw.text.trim(arg:lower())]]&lt;br /&gt;
            local text = &amp;#039;&amp;#039;&lt;br /&gt;
            if args[2] ~= nil and args[2] ~= &amp;#039;&amp;#039; then&lt;br /&gt;
        	    text = args[2]&lt;br /&gt;
            elseif args[&amp;#039;notCSD&amp;#039;] ~= nil and args[&amp;#039;notCSD&amp;#039;] ~= &amp;#039;&amp;#039; then&lt;br /&gt;
        	    text = item[&amp;#039;code&amp;#039;]&lt;br /&gt;
            else&lt;br /&gt;
        	    text = &amp;#039;CSD &amp;#039; .. item[&amp;#039;code&amp;#039;]&lt;br /&gt;
            end&lt;br /&gt;
            if args.nolink then&lt;br /&gt;
            	return text&lt;br /&gt;
            elseif args.reason then&lt;br /&gt;
            	return &amp;#039;[[WP:CSD#&amp;#039; .. item[&amp;#039;code&amp;#039;] .. &amp;#039;|&amp;#039; .. text .. &amp;#039;]]：&amp;lt;span title=&amp;quot;&amp;#039; .. extractShortDesc(item) .. &amp;#039;&amp;quot;&amp;gt;&amp;#039; .. item[&amp;#039;criteria&amp;#039;] .. &amp;#039;&amp;lt;/span&amp;gt;&amp;#039;&lt;br /&gt;
            elseif args.onlyreason then&lt;br /&gt;
            	return &amp;#039;&amp;lt;span title=&amp;quot;&amp;#039; .. extractShortDesc(item) .. &amp;#039;&amp;quot;&amp;gt;&amp;#039; .. item[&amp;#039;criteria&amp;#039;] .. &amp;#039;&amp;lt;/span&amp;gt;&amp;#039;&lt;br /&gt;
            else&lt;br /&gt;
            	return &amp;#039;[[WP:CSD#&amp;#039; .. item[&amp;#039;code&amp;#039;] .. &amp;#039;|&amp;#039; .. text .. &amp;#039;]]&amp;#039;&lt;br /&gt;
            end&lt;br /&gt;
        elseif arg and mw.text.trim(arg) ~= &amp;#039;&amp;#039; then&lt;br /&gt;
            return require(&amp;#039;Module:Error&amp;#039;).error{&amp;#039;错误：无法找到速删代码为&amp;#039; .. args[i] .. &amp;#039;的速删项目。&amp;#039;}&lt;br /&gt;
        end&lt;br /&gt;
    else&lt;br /&gt;
       	return &amp;#039;[[WP:CSD|&amp;#039; .. (args[2] or &amp;#039;快速删除方针&amp;#039;) .. &amp;#039;]]&amp;#039;&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function z._input(args, callargs)&lt;br /&gt;
	callargs = callargs or {}&lt;br /&gt;
	local vaildArgs = false&lt;br /&gt;
	local i = 0&lt;br /&gt;
	&lt;br /&gt;
	while i &amp;lt; 10 do&lt;br /&gt;
        arg = args[i]&lt;br /&gt;
        if arg and mw.text.trim(arg) ~= &amp;#039;&amp;#039; then&lt;br /&gt;
            vaildArgs = true&lt;br /&gt;
        end&lt;br /&gt;
&lt;br /&gt;
        i = i + 1&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	if not vaildArgs then&lt;br /&gt;
		return nil&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	 -- hack&lt;br /&gt;
	 args.parent = false&lt;br /&gt;
	 args.reasoncode = callargs.reasoncode&lt;br /&gt;
	 args.deletelink = callargs.deletelink&lt;br /&gt;
	 &lt;br /&gt;
	return mDelete.input({&lt;br /&gt;
		args = args&lt;br /&gt;
	})&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function z._getInputWithoutError(args)&lt;br /&gt;
	local result = z._input(args, {&lt;br /&gt;
		reasoncode = false,&lt;br /&gt;
		deletelink = false&lt;br /&gt;
	})&lt;br /&gt;
	&lt;br /&gt;
	if not result then&lt;br /&gt;
		return nil&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	-- remove error and category&lt;br /&gt;
	result = mDelcat.delete_category(result, {})&lt;br /&gt;
	result = mw.ustring.gsub(result, &amp;quot;&amp;lt;br&amp;gt;&amp;lt;span class=\&amp;quot;error\&amp;quot;&amp;gt;.-&amp;lt;/span&amp;gt;&amp;quot;, &amp;quot;&amp;quot;)&lt;br /&gt;
	&lt;br /&gt;
	-- replace &amp;lt;strong&amp;gt;&amp;lt;span id=&amp;quot;speedy-delete-XXX&amp;quot; title=&amp;quot;xxx&amp;quot;&amp;gt;(.-)&amp;lt;/span&amp;gt;&amp;lt;/strong&amp;gt;&lt;br /&gt;
	result = mw.ustring.gsub(result, &amp;quot;&amp;lt;strong&amp;gt;&amp;lt;span id=\&amp;quot;speedy%-delete%-.-\&amp;quot; title=\&amp;quot;.-\&amp;quot; -&amp;gt;(.-)&amp;lt;/span&amp;gt;&amp;lt;/strong&amp;gt;&amp;quot;, &amp;quot;%1&amp;quot;)&lt;br /&gt;
	return result&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function z.getInputWithoutError(frame)&lt;br /&gt;
	local args = frame:getParent().args&lt;br /&gt;
	local out = z._getInputWithoutError(args);&lt;br /&gt;
	if not out then&lt;br /&gt;
		return &amp;#039;* &amp;lt;span style=&amp;quot;color:#080;&amp;quot;&amp;gt;（未填写理由）&amp;lt;/span&amp;gt;&amp;#039;&lt;br /&gt;
	end&lt;br /&gt;
	return out&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
z.reasons_box = z.reasonsBox&lt;br /&gt;
z.reasons_box_sb = z.reasonsBox_sandbox&lt;br /&gt;
z.CSD_reason_sb = z.CSD_reason_sandbox&lt;br /&gt;
&lt;br /&gt;
return z&lt;/div&gt;</summary>
		<author><name>入我相思门</name></author>
	</entry>
</feed>