Modul:Bild: Unterschied zwischen den Versionen
Aus FürthWiki
Keine Bearbeitungszusammenfassung |
Keine Bearbeitungszusammenfassung |
||
Zeile 5: | Zeile 5: | ||
pf = frame:getParent() | pf = frame:getParent() | ||
args = pf.args | args = pf.args | ||
t1 = p.Daten( frame, args ) | --t1 = p.Daten( frame, args ) => p.Daten verschwindet, sobald es funzt! | ||
t2 = p.NewBox( frame, args ) | t2 = p.NewBox( frame, args ) | ||
return frame:preprocess(t1..'<br/>\n'..t2) | return frame:preprocess(t2)--t1..'<br/>\n'..t2) | ||
end | end | ||
Version vom 3. Februar 2024, 15:26 Uhr
local p = {} --p stands for package
local c = require( "Module:Common" )
function p.Faktenbox( frame )
pf = frame:getParent()
args = pf.args
--t1 = p.Daten( frame, args ) => p.Daten verschwindet, sobald es funzt!
t2 = p.NewBox( frame, args )
return frame:preprocess(t2)--t1..'<br/>\n'..t2)
end
function p.NewBox( frame, args )
t = '<table class="wikitable">'..
'<th colspan="4">'..mw.title.getCurrentTitle().text..'</th>'
if not isEmpty(args.Genre) then
t=t..'<tr>'..
'<td>[[Attribut:Genre|Genre]]</td>' ..
'<td colspan="3">' ..
frame:callParserFunction(
'#arraymap', args.Genre, ';', 'x', '[[:Kategorie:x|x]]') .. '</td>' ..
'</tr>'
end
-- Liste Freiattribute und Werte auf
for i=1,6 do
a='Attribut'..i
w='Wert'..i
if not isEmpty(args[a]) then
t=t..'<tr>'..
'<td>[[Attribut:'..args[a]..'|'..args[a]..']]</td>'..
'<td colspan="3">'..frame:callParserFunction(
'#arraymap', args[w], ';', 'x', '[['..args[a]..'::x]]')..'</td>'..
'</tr>'
end
end
if not isEmpty(args.Urheber) then
t=t..'<tr>'..
'<td>[[Attribut:Urheber|Urheber]]</td>' ..
'<td colspan="3">[[Urheber::' .. args.Urheber ..']]</td>'..
'</tr>'
end
if not isEmpty(args.Quellangaben) then
t=t..'<tr>'..
'<td>[[Attribut:Quellangaben|Quellangaben]]</td>'..
'<td colspan="3">[[Quellangaben::'..args.Quellangaben..']]</td>'..
'</tr>'
end
if not isEmpty(args.Ort) then
t = t .. '<tr>'..
'<td>[[Attribut:Ort|Ort]]</td>'..
'<td>'..frame:callParserFunction(
'#arraymap', args.Ort, ';', 'x', '[[Ort::x]]') ..'</td>'..
'<td><b>ausblenden:</b></td>'
z = '<td></td>'
if not isEmpty(args.ZeigeNichtInOrt) then
z = '<td>'..args.ZeigeNichtInOrt..'</td>'
end
t=t..z..'</tr>'
end
if not isEmpty(args.Strasse) then
t=t..'<tr>'..
'<td>[[Attribut:Strasse|Straße]]</td>'..
'<td>'..frame:callParserFunction(
'#arraymap', args.Strasse, ';', 'x', '[[Strasse::x]]')
if not isEmpty(args.Hausnummer) then
t=t..' '..args.Hausnummer
end
t=t..'</td>'..
'<td><b>ausblenden:</b></td>'
z = '<td></td>'
if not isEmpty(args.ZeigeNichtInStrasse) then
z = '<td>'..args.ZeigeNichtInStrasse..'</td>'
end
t=t..z..'</tr>'
end
if not isEmpty(args.Erstellungsdatum) then
t=t..'<tr>'..
'<td>[[Attribut:Erstellungsdatum|Erstellungsdatum]]</td>'..
'<td colspan="3">'..frame:expandTemplate{title='LinkFormDatum', args={
args.Erstellungsdatum,
'Erstellungsdatum',
'Erstellungstag',
'Erstellungsjahr'}}..'</td>'..
'</tr>'
end
if not isEmpty(args.UeberDatum) then
t=t..'<tr>'..
'<td>[[Attribut:UeberDatum|Über Datum]]</td>'..
'<td colspan="3">'..frame:expandTemplate{title='UeberDatum', args={
args.UeberDatum,
'UeberDatum',
'UeberTag',
'UeberJahr'}}..'</td>'..
'</tr>'
end
if not isEmpty(args.Seitennummer) then
t=t..'<tr>'..
'<td>[[Attribut:Seitennummer|Seitennummer]]</td>'..
'<td colspan="3">'..frame:callParserFunction(
'#arraymap', args.Seitennummer, ';', 'x', '[[Seitennummer::x]]') ..'</td>'..
'</tr>'
end
if not isEmpty(args.Signatur) then
t=t..'<tr>'..
'<td>[[Attribut:Signatur|Signatur]]</td>'..
'<td colspan="3">[[Signatur::'..args.Signatur..']]</td>'..
'</tr>'
end
if not isEmpty(args.Lizenz) then
t=t..'<tr>'..
'<td>[[Attribut:Lizenz|Lizenz]]</td>'..
'<td colspan="3">[[Lizenz::'..args.Lizenz..']]</td>'..
'</tr>'
end
if not isEmpty(args.Beschreibung) then
t=t..'<tr>'..
'<td>[[Attribut:Beschreibung|Beschreibung]]</td>'..
'<td colspan="3">[[Beschreibung::'..args.Beschreibung..']]</td>'..
'</tr>'
end
t=t..'<tr>'..
'<td>[[Bild:IconSearch32px.png|16px|semantisches Browsen|link=Spezial:Durchsuchen/{{NAMESPACE}}:{{PAGENAME}}]]</td>'..
'<td colspan="3">[[Spezial:Durchsuchen/{{NAMESPACE}}:{{PAGENAME}}|semantisches Browsen]]</td>'..
'</tr>'
t=t..'</table>'
return t
end
function p.Daten( frame, args )
t = frame:expandTemplate{title = 'Bild.Daten', args={
Genre=args.Genre,
Attribut1=args.Attribut1,
Wert1=args.Wert1,
Attribut2=args.Attribut2,
Wert2=args.Wert2,
Attribut3=args.Attribut3,
Wert3=args.Wert3,
Attribut4=args.Attribut4,
Wert4=args.Wert4,
Attribut5=args.Attribut5,
Wert5=args.Wert5,
Attribut6=args.Attribut6,
Wert6=args.Wert6,
Urheber=args.Urheber,
Quellangaben=args.Quellangaben,
Ort=args.Ort,
ZeigeNichtInOrt=args.ZeigeNichtInOrt,
Strasse=args.Strasse,
Hausnummer=args.Hausnummer,
ZeigeNichtInStrasse=args.ZeigeNichtInStrasse,
Erstellungsdatum=args.Erstellungsdatum,
UeberDatum=args.UeberDatum,
Seitennummer=args.Seitennummer,
Signatur=args.Signatur,
Beschreibung=args.Beschreibung,
Lizenz=args.Lizenz}
}
return t
end
return p