Modul:AfC submission catcheck

Documentation icon Dokumentacija modula[predogled] [uredi] [zgodovina] [osveži]

This module is used by Predloga:AFC submission and its subtemplates to scan the content of AFC submissions. It's used to allow finding of drafts in improper content categories as well as to suppress the message that a draft has not been submitted when in fact it has been.


local p = {}

local function removeFalsePositives(str)
	if not str then
		return ''
	end
	str = mw.ustring.gsub(str, "<!--.--->", "")
	str = mw.ustring.gsub(str, "<nowiki>.-</nowiki>", "")
	str = mw.ustring.gsub(str, "{{[Kk]ategorije za osnutke[^{}]-{{[^{}]-}}[^{}]-}}", "")
	str = mw.ustring.gsub(str, "{{[Kk]ategorije za osnutke.-}}", "")
	str = mw.ustring.gsub(str,"%[%[Kategorija:Neprimerno za predložitev ČU%]%]","")
	str = mw.ustring.gsub(str,"%[%[Kategorija:[Oo]snutki?.-%]%]","")
	str = mw.ustring.gsub(str,"%[%[Kategorija:.-osnutki?%]%]","")
	return str
end

function p.checkforcats(frame)
    local t = mw.title.getCurrentTitle()
    tc = t:getContent()
    if tc == nil then 
        return ""
    end
    tc = removeFalsePositives(tc)
    if mw.ustring.match(tc, "%[%[%s-[Kk]ategorija:" ) == nil then
        return ""
    else
        return "[[Kategorija:Predložitve ČU s kategorijo]]"
    end
end

function p.submitted(frame)
	local text = removeFalsePositives(mw.title.getCurrentTitle():getContent())
	if mw.ustring.find(text, '{{Predložitev ČU||', 1, true) or mw.ustring.find(text, '{{Predložitev ČU||', 1, true) then
		return frame.args[1]
	else
		return frame.args[2]
	end
end

return p