Die Dokumentation für dieses Modul kann unter Modul:Vorlage:BAnz/Doku erstellt werden
local function fault( alert ) -- Format message with class="error" -- alert -- string, with message -- Returns message with markup return string.format( "<span class=\"error\">%s</span>", alert ) end -- fault() -- Export local p = { } function p.linkBAnz(arg) local name = arg if string.match(name, "( )") == " " then error("die Angabe enthält ein überschüssiges Leerzeichen") end pre,tag,monat,jahr,rubrik = string.match(name, "(%a+) (%d+)%.(%d+)%.(%d+) (%w+)") elektronisch = false if not pre then elektronisch = true pre,jahr,rubrik = string.match(name, "(%a+%d+) (%d%d%d%d) (%w+)") url = 'https://www.bundesanzeiger.de/ebanzwww/wexsservlet?genericsearch_param.start_date%3A0=01&genericsearch_param.start_date%3A1=01&genericsearch_param.start_date%3A2='..jahr..'&genericsearch_param.stop_date%3A0=31&genericsearch_param.stop_date%3A1=12&genericsearch_param.stop_date%3A2='..jahr..'&%28page.navid%3Ddetailsearchlisttodetailsearchlistupdateresetpage%29=Dokumente+anzeigen&genericsearch_param.fulltext=eBAnz+'..pre..'+'..jahr..'+'..rubrik lbl = 'eBAnz '..pre..' '..jahr..' '..rubrik else url = 'https://www.bundesanzeiger.de/ebanzwww/wexsservlet?genericsearch_param.start_date%3A0='..tag..'&genericsearch_param.start_date%3A1='..monat..'&genericsearch_param.start_date%3A2='..jahr..'&genericsearch_param.stop_date%3A0='..tag..'&genericsearch_param.stop_date%3A1='..monat..'&genericsearch_param.stop_date%3A2='..jahr..'&%28page.navid%3Ddetailsearchlisttodetailsearchlistupdateresetpage%29=Dokumente+anzeigen&genericsearch_param.fulltext=BAnz+'..pre..'+'..tag..'.'..monat..'.'..jahr..'+'..rubrik lbl = 'BAnz '..pre..' '..tag..'.'..monat..'.'..jahr..' '..rubrik end mname = {"Januar", "Februar", "März", "April", "Mai", "Juni", "Juli", "August", "September", "Oktober", "November", "Dezember"} rart, rnr = string.match(rubrik, "(%a)(%d+)") art = "unbekannte Rubrik" if rart == "V" then art = "Verkündung" elseif rart == "B" then art = "Bekanntmachung" elseif rart == "A" then art = "Ausschreibung" elseif rart == "S" then art = "Rubrik Sonstiges" elseif rart == "H" then art = "Hinweis" end if rnr == nil then error("am Ende der Angabe wird eine Rubrik und eine Nummer erwartet, z. B. 'B1'") end if elektronisch then nr = string.match(pre, "AT(%d+)") abbr = "<abbr title=\"Amtlicher Teil des elektronischen Bundesanzeigers Ausgabe " .. nr .. " Jahrgang " .. jahr .. " " .. art .. " " .. rnr .. "\">" else abbr = "<abbr title=\"Amtlicher Teil des Bundesanzeigers vom " .. (tag + 0) .. ". " .. mname[monat + 0] .. " " .. jahr .. ", " .. art .. " " .. rnr .. "\">" end return '['..url..' '..abbr..lbl.."</abbr>"..']' end function p.nospc(frame) local name = frame.args[1] if not name then name = '' end name,_ = string.gsub(name,' ','+') return name end function p.srchbanz(frame) local lucky, r = pcall( p.linkBAnz, frame.args[1] ) if not lucky then r = fault( "Parameterfehler in [[Vorlage:BAnz]]: " ) .. r .. "[[Kategorie:Wikipedia:Vorlagenfehler/Vorlage:BAnz]]" end return r end return p