Modul:Bild: Unterschied zwischen den Versionen

Aus FürthWiki
Zur Navigation springen Zur Suche springen
 
(40 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 1: Zeile 1:
local p = {} --p stands for package
+
local p = {}
 
local c = require( "Module:Common" )
 
local c = require( "Module:Common" )
  
Zeile 5: Zeile 5:
 
pf = frame:getParent()
 
pf = frame:getParent()
 
args = pf.args
 
args = pf.args
t1 = p.Daten( frame, args )
+
t = p.Daten( frame, args )
t2 = p.NewBox( frame, args )
+
return frame:preprocess(t)
return frame:preprocess(t1..'<br/>\n'..t2)
 
 
end
 
end
  
function p.NewBox( frame, args )
+
function p.Daten( frame, args )
 
t = '<table class="wikitable">'..
 
t = '<table class="wikitable">'..
 
'<th colspan="4">'..mw.title.getCurrentTitle().text..'</th>'
 
'<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]] [[Kategorie:x]]') .. '</td>' ..
 +
'</tr>'
 +
end
 +
 +
-- Liste Freiattribute und Werte auf
 
for i=1,6 do
 
for i=1,6 do
 
a='Attribut'..i
 
a='Attribut'..i
 
w='Wert'..i
 
w='Wert'..i
 
if not isEmpty(args[a]) then
 
if not isEmpty(args[a]) then
t=t..'<tr><td>'..args[a]..'</td>'..
+
t=t..'<tr>'..
'<td colspan="3">'..args[w]..'</td></tr>'
+
'<td>[[Attribut:'..args[a]..'|'..args[a]..']]</td>'..
 +
'<td colspan="3">'..frame:callParserFunction(
 +
'#arraymap', args[w], ';', 'x', '[['..args[a]..'::x]]')..'</td>'..
 +
'</tr>'
 
end
 
end
 
end
 
end
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
 
 
if not isEmpty(args.Urheber) then
 
if not isEmpty(args.Urheber) then
 
t=t..'<tr>'..
 
t=t..'<tr>'..
 
'<td>[[Attribut:Urheber|Urheber]]</td>' ..
 
'<td>[[Attribut:Urheber|Urheber]]</td>' ..
'<td colspan="3">' .. args.Urheber ..'</td>'..
+
'<td colspan="3">[[Urheber::' .. args.Urheber ..']]</td>'..
 
'</tr>'
 
'</tr>'
 
end
 
end
 +
 
if not isEmpty(args.Quellangaben) then
 
if not isEmpty(args.Quellangaben) then
 
t=t..'<tr>'..
 
t=t..'<tr>'..
 
    '<td>[[Attribut:Quellangaben|Quellangaben]]</td>'..
 
    '<td>[[Attribut:Quellangaben|Quellangaben]]</td>'..
    '<td colspan="3">'..args.Quellangaben..'</td>'..
+
    '<td colspan="3">[[Quellangaben::'..args.Quellangaben..']]</td>'..
 
'</tr>'
 
'</tr>'
 
end
 
end
 +
 
if not isEmpty(args.Ort) then
 
if not isEmpty(args.Ort) then
 
t = t .. '<tr>'..
 
t = t .. '<tr>'..
 
'<td>[[Attribut:Ort|Ort]]</td>'..
 
'<td>[[Attribut:Ort|Ort]]</td>'..
 
'<td>'..frame:callParserFunction(
 
'<td>'..frame:callParserFunction(
'#arraymap', args.Ort, ';', 'x', '[[x]]') ..'</td>'..
+
'#arraymap', args.Ort, ';', 'x', '[[Ort::x]]') ..'</td>'..
 
'<td><b>ausblenden:</b></td>'
 
'<td><b>ausblenden:</b></td>'
z = '<td></td>'
+
z = '<td>[[ZeigeNichtInOrt::Nein]]</td>'
 
if not isEmpty(args.ZeigeNichtInOrt) then
 
if not isEmpty(args.ZeigeNichtInOrt) then
z = '<td>'..args.ZeigeNichtInOrt..'</td>'
+
z = '<td>[[ZeigeNichtInOrt::'..args.ZeigeNichtInOrt..']]</td>'
 
end
 
end
 
t=t..z..'</tr>'
 
t=t..z..'</tr>'
 
end
 
end
 +
 
if not isEmpty(args.Strasse) then
 
if not isEmpty(args.Strasse) then
 
t=t..'<tr>'..
 
t=t..'<tr>'..
 
'<td>[[Attribut:Strasse|Straße]]</td>'..
 
'<td>[[Attribut:Strasse|Straße]]</td>'..
 
'<td>'..frame:callParserFunction(
 
'<td>'..frame:callParserFunction(
'#arraymap', args.Strasse, ';', 'x', '[[x]]') ..'</td>'..
+
'#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>'
 
'<td><b>ausblenden:</b></td>'
z = '<td></td>'
+
z = '<td>[[ZeigeNichtInStrasse::Nein]]</td>'
 
if not isEmpty(args.ZeigeNichtInStrasse) then
 
if not isEmpty(args.ZeigeNichtInStrasse) then
z = '<td>'..args.ZeigeNichtInStrasse..'</td>'
+
z = '<td>[[ZeigeNichtInStrasse::'..args.ZeigeNichtInStrasse..']]</td>'
 
end
 
end
 
t=t..z..'</tr>'
 
t=t..z..'</tr>'
 
end
 
end
t=t..'</table>'  
+
 +
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='LinkFormDatum', 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
 
return t
 
end  
 
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
 
return p

Aktuelle Version vom 3. Februar 2024, 23:38 Uhr

local p = {}
local c = require( "Module:Common" )

function p.Faktenbox( frame )
	pf = frame:getParent()
	args = pf.args
	t = p.Daten( frame, args )
	return frame:preprocess(t)
end

function p.Daten( 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]] [[Kategorie: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>[[ZeigeNichtInOrt::Nein]]</td>'
		if not isEmpty(args.ZeigeNichtInOrt) then
			z = '<td>[[ZeigeNichtInOrt::'..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>[[ZeigeNichtInStrasse::Nein]]</td>'
		if not isEmpty(args.ZeigeNichtInStrasse) then
			z = '<td>[[ZeigeNichtInStrasse::'..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='LinkFormDatum', 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 

return p