Modul:Turnierritter: Unterschied zwischen den Versionen
Zur Navigation springen
Zur Suche springen
Keine Bearbeitungszusammenfassung |
K (Schützte „Modul:Turnierritter“: SyncBot ([Bearbeiten=Nur Administratoren erlauben] (unbeschränkt))) |
||
(4 dazwischenliegende Versionen von einem anderen Benutzer werden nicht angezeigt) | |||
Zeile 22: | Zeile 22: | ||
function holeTurnierritter(query) | function holeTurnierritter(query) | ||
local reiter=mw.smw.ask("[[Kategorie:Turnierritter]] "..query | local reiter=mw.smw.ask("[[Kategorie:Turnierritter]] "..query | ||
.."|? | .."|?=Artikel" | ||
.."|?Alter" | .."|?Alter" | ||
.."|?Turnierstatus" | .."|?Turnierstatus" | ||
Zeile 46: | Zeile 46: | ||
if type(m)~='table' then m={m} end | if type(m)~='table' then m={m} end | ||
local w='' | local w='' | ||
local a='' | |||
for mk,mv in pairs(m) do | for mk,mv in pairs(m) do | ||
for bk,bv in pairs(buende) do | for bk,bv in pairs(buende) do | ||
if(mv==bk) then | if(mv==bk) then | ||
w=w..bv | w=w..bv | ||
a=bk | |||
end | end | ||
end | end | ||
end | end | ||
return w | if w=='' then return '' end | ||
return '<span style="display:none;">'..a..'</span>[['..w..'|50x50px|link=]]' | |||
end | end | ||
Zeile 73: | Zeile 76: | ||
if spalte['Turnierpublikum']~="unbekannt" then s=s..robusttrim(spalte['Turnierpublikum']) end | if spalte['Turnierpublikum']~="unbekannt" then s=s..robusttrim(spalte['Turnierpublikum']) end | ||
s=s..'\n|'..robusttrim(spalte['Turnieranmerkung']) | s=s..'\n|'..robusttrim(spalte['Turnieranmerkung']) | ||
s=s..'\n|'.. | s=s..'\n|'..ausgabeBund(spalte['Mitglied von'],buende) | ||
return s | return s | ||
end | end | ||
Zeile 94: | Zeile 96: | ||
..'\n!Bünde' | ..'\n!Bünde' | ||
for _,v in pairs(reiter) do | for _,v in pairs(reiter) do | ||
s=s..ausgabe(v,buende) | |||
end | end | ||
return s..'\n|}' | return s..'\n|}' | ||
end | end | ||
return p | return p |
Aktuelle Version vom 2. Juli 2024, 05:32 Uhr
Dokumentation unter Modul:Turnierritter/Doku.
require("Modul:Hilfsfunktionen") local p = {} function holeRitterbuende() local buende=mw.smw.ask("[[Untergruppierung von::Ritterbünde]]" .."|?=#" .."|?Wappen ist#" .."|searchlabel=" .."|limit=500" ) if buende==nil then buende={} end local result={} for k,v in pairs(buende) do result[v[1]]=v['Wappen ist'] end return result end function holeTurnierritter(query) local reiter=mw.smw.ask("[[Kategorie:Turnierritter]] "..query .."|?=Artikel" .."|?Alter" .."|?Turnierstatus" .."|?Turnierklasse" .."|?Turnierpublikum" .."|?Turnieranmerkung" .."|?Wappen ist#" .."|?Bild ist#" .."|?Sortierschlüssel" .."|?Mitglied von#" .."|searchlabel=" .."|limit=500" ) if reiter==nil then return {} end return reiter end function ausgabeBund(mitglied,buende) local m=mitglied if m==nil then m={} end if type(m)~='table' then m={m} end local w='' local a='' for mk,mv in pairs(m) do for bk,bv in pairs(buende) do if(mv==bk) then w=w..bv a=bk end end end if w=='' then return '' end return '<span style="display:none;">'..a..'</span>[['..w..'|50x50px|link=]]' end function ausgabe(spalte,buende) s='\n|-' ..'\n|<span style="display:none;">'..robusttrim(spalte['Sortierschlüssel'])..'</span>[['..robusttrim(spalte['Wappen ist'])..'|50x50px|link=]]' ..'\n|[['..robusttrim(spalte['Bild ist'])..'|50x50px|link=]]' ..'\n|'..robusttrim(spalte['Artikel']) ..'\n|'..robusttrim(spalte['Alter']) ..'\n|' if spalte['Turnierstatus']~="unbekannt" then s=s..robusttrim(spalte['Turnierstatus']) end local sort=0 if spalte['Turnierklasse']=='Neuling' then sort=1 end if spalte['Turnierklasse']=='Mittelmaß' then sort=2 end if spalte['Turnierklasse']=='Favorit' then sort=3 end if spalte['Turnierklasse']=='Legende' then sort=4 end s=s..'\n|<span style="display:none;">'..sort..'</span>'..robusttrim(spalte['Turnierklasse']) ..'\n|' if spalte['Turnierpublikum']~="unbekannt" then s=s..robusttrim(spalte['Turnierpublikum']) end s=s..'\n|'..robusttrim(spalte['Turnieranmerkung']) s=s..'\n|'..ausgabeBund(spalte['Mitglied von'],buende) return s end function p.turnierritter(frame) local query=robusttrim(frame.args[1]) local buende=holeRitterbuende() local reiter=holeTurnierritter(query) local s='{| class="tabellehuebsch sortable"' ..'\n|- class="dunkel"' ..'\n!Wappen' ..'\n!Bild' ..'\n!Name' ..'\n!Alter' ..'\n!Status' ..'\n!Klasse' ..'\n!Publikumssicht' ..'\n!Bemerkung' ..'\n!Bünde' for _,v in pairs(reiter) do s=s..ausgabe(v,buende) end return s..'\n|}' end return p