Modulus:Scriptor/SaeculumQuaero
Documentation for this module may be created at Modulus:Scriptor/SaeculumQuaero/doc
p = {}
function p.scriptor(x, y)
if string.find(x, "BCE") or string.find(x, "a.C.n.") or string.find(x, "a.Ch.n.") then acn = " ante Christum" else acn = "" end
if string.find(x, "century") or string.find(x, "saeculum") then
annus = x
elseif string.find(x, "BCE") or string.find(x, "a.C.n.") or string.find(x, "a.Ch.n.") then
annus = mw.text.truncate(x, -8)
else
annus = mw.text.truncate(x, -4)
end
if string.find(annus, "century") or string.find(x, "saeculum") then
if string.find(annus, "21.") then
saeculum = "primi vicesimi"
elseif string.find(annus, "20.") then
saeculum = "vicesimi"
elseif string.find(annus, "19.") then
saeculum = "undevicesimi"
elseif string.find(annus, "18.") then
saeculum = "duodevicesimi"
elseif string.find(annus, "17.") then
saeculum = "septimi decimi "
elseif string.find(annus, "16.") then
saeculum = "sexti decimi"
elseif string.find(annus, "15.") then
saeculum = "quinti decimi"
elseif string.find(annus, "14.") then
saeculum = "quarti decimi"
elseif string.find(annus, "13.") then
saeculum = "tertii decimi"
elseif string.find(annus, "12.") then
saeculum = "duodecimi"
elseif string.find(annus, "11.") then
saeculum = "undecimi"
elseif string.find(annus, "10.") then
saeculum = "decimi"
elseif string.find(annus, "9.") then
saeculum = "noni"
elseif string.find(annus, "8.") then
saeculum = "octavi"
elseif string.find(annus, "7.") then
saeculum = "septimi"
elseif string.find(annus, "6.") then
saeculum = "sexti"
elseif string.find(annus, "5.") then
saeculum = "quinti"
elseif string.find(annus, "4.") then
saeculum = "quarti"
elseif string.find(annus, "3.") then
saeculum = "tertii"
elseif string.find(annus, "2.") then
saeculum = "secundi"
elseif string.find(annus, "1.") then
saeculum = "primi"
end
else
annus = tonumber(string.gsub(annus, "%D", ""), 10) --removes from "annus" anything that is not a digit; than translates the year into the corresponding century
if annus == nil then annus = 0 end --avoids script error if the year is nonstandard (the page will go in Categoria:Saeculi incogniti opera)
if annus <= 0 then
saeculum = "incogniti"
elseif annus <= 100 then
saeculum = "primi"
elseif annus <= 200 then
saeculum = "secundi"
elseif annus <= 300 then
saeculum = "tertii"
elseif annus <= 400 then
saeculum = "quarti"
elseif annus <= 500 then
saeculum = "quinti"
elseif annus <= 600 then
saeculum = "sexti"
elseif annus <= 700 then
saeculum = "septimi"
elseif annus <= 800 then
saeculum = "octavi"
elseif annus <= 900 then
saeculum = "noni"
elseif annus <= 1000 then
saeculum = "decimi"
elseif annus <= 1100 then
saeculum = "undecimi"
elseif annus <= 1200 then
saeculum = "duodecimi"
elseif annus <= 1300 then
saeculum = "tertii decimi"
elseif annus <= 1400 then
saeculum = "quarti decimi"
elseif annus <= 1500 then
saeculum = "quinti decimi"
elseif annus <= 1600 then
saeculum = "sexti decimi"
elseif annus <= 1700 then
saeculum = "septimi decimi"
elseif annus <= 1800 then
saeculum = "duodevicesimi"
elseif annus <= 1900 then
saeculum = "undevicesimi"
elseif annus <= 2000 then
saeculum = "vicesimi"
elseif annus <= 2100 then
saeculum = "primi vicesimi"
elseif annus <= 2200 then
saeculum = "secundi vicesimi" --well, who knows...
else --if cant' find the year, inserts the century as "incognitus"
saeculum = "incogniti"
end
end
return "[[Categoria:Saeculi ".. saeculum.. acn.. " scriptores|".. y.. "]]"
end
function p.saeculum(saeculum)
saeculum = string.gsub(saeculum, "21. saeculum", "XXI. Saeculum")
saeculum = string.gsub(saeculum, "20. saeculum", "XX. Saeculum")
saeculum = string.gsub(saeculum, "19. saeculum", "XIX. Saeculum")
saeculum = string.gsub(saeculum, "18. saeculum", "XVIII. Saeculum")
saeculum = string.gsub(saeculum, "17. saeculum", "XVII. Saeculum")
saeculum = string.gsub(saeculum, "16. saeculum", "XVI. Saeculum")
saeculum = string.gsub(saeculum, "15. saeculum", "XV. Saeculum")
saeculum = string.gsub(saeculum, "14. saeculum", "XIV. Saeculum")
saeculum = string.gsub(saeculum, "13. saeculum", "XIII. Saeculum")
saeculum = string.gsub(saeculum, "12. saeculum", "XII. Saeculum")
saeculum = string.gsub(saeculum, "11. saeculum", "XI. Saeculum")
saeculum = string.gsub(saeculum, "10. saeculum", "X. Saeculum")
saeculum = string.gsub(saeculum, "9. saeculum", "IX. Saeculum")
saeculum = string.gsub(saeculum, "8. saeculum", "VIII. Saeculum")
saeculum = string.gsub(saeculum, "7. saeculum", "VII. Saeculum")
saeculum = string.gsub(saeculum, "6. saeculum", "VI. Saeculum")
saeculum = string.gsub(saeculum, "5. saeculum", "V. Saeculum")
saeculum = string.gsub(saeculum, "4. saeculum", "IV. Saeculum")
saeculum = string.gsub(saeculum, "3. saeculum", "III. Saeculum")
saeculum = string.gsub(saeculum, "2. saeculum", "II. Saeculum")
saeculum = string.gsub(saeculum, "1. saeculum", "I. Saeculum")
return saeculum
end
return p