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))) |
||
(20 dazwischenliegende Versionen von einem anderen Benutzer werden nicht angezeigt) | |||
Zeile 3: | Zeile 3: | ||
local p = {} | local p = {} | ||
function | 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 | local reiter=mw.smw.ask("[[Kategorie:Turnierritter]] "..query | ||
.."|?=Artikel" | |||
.."|? | |||
.."|?Alter" | .."|?Alter" | ||
.."|?Turnierstatus" | .."|?Turnierstatus" | ||
Zeile 15: | Zeile 31: | ||
.."|?Bild ist#" | .."|?Bild ist#" | ||
.."|?Sortierschlüssel" | .."|?Sortierschlüssel" | ||
.."| | .."|?Mitglied von#" | ||
.."|searchlabel=" | .."|searchlabel=" | ||
.."|limit=500" | .."|limit=500" | ||
Zeile 26: | Zeile 41: | ||
end | end | ||
function ausgabe(spalte) | 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|-' | s='\n|-' | ||
..'\n|<span style="display:none;">'..robusttrim(spalte['Sortierschlüssel'])..'</span>[['..robusttrim(spalte['Wappen ist'])..'|50x50px|link=]]' | ..'\n|<span style="display:none;">'..robusttrim(spalte['Sortierschlüssel'])..'</span>[['..robusttrim(spalte['Wappen ist'])..'|50x50px|link=]]' | ||
Zeile 43: | 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|'..ausgabeBund(spalte['Mitglied von'],buende) | |||
return s | return s | ||
end | end | ||
function p. | function p.turnierritter(frame) | ||
local query=robusttrim(frame.args[1]) | local query=robusttrim(frame.args[1]) | ||
local reiter= | local buende=holeRitterbuende() | ||
local s="" | 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 | for _,v in pairs(reiter) do | ||
s=s..ausgabe(v) | s=s..ausgabe(v,buende) | ||
end | end | ||
return s | 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