Modul:Datei: Unterschied zwischen den Versionen

481 Bytes hinzugefügt ,  Gestern um 08:56
Überarbeitung Dateien ausblenden
(GalerieBilderAusblenden() + Erstellungsdatum, subobject-ID)
(Überarbeitung Dateien ausblenden)
Zeile 386: Zeile 386:
end
end


function p.FormularZeigeNichtInStrasse()
function p.FormularGalerieDateienAusblenden(frame)
return p.FormularZeigeNichtDatei("Straße")
end
 
function p.FormularZeigeNichtInOrt()
return p.FormularZeigeNichtDatei("Ort")
end
 
function p.FormularZeigeNichtDatei(zeige_nicht_in)
local t = ""
local t = ""
local spalten = 10 -- Datei-Spalten im Formular
local spalten = 10 -- Datei-Spalten im Formular
local lemma = wik.subpagename()
local lemma = frame.args["lemma"] or
local zeige_nicht_in_attr = "ZeigeNichtIn" .. zeige_nicht_in -- ZeigeNichtInOrt/ZeigeNichtInStraße/..
wik.subpagename() -- für Debug-Zwecke
local template = frame.args["template"]
-- Klasse ermitteln
local query = {"[[" .. lemma .. "]]", "?KlassenName"}
query = mw.smw.ask(query) or
{{["KlassenName"] = frame.args["KlassenName"]}} -- für Debug-Zwecke
local attribut = query[1]["KlassenName"]
local zeige_nicht_in_attr = "ZeigeNichtIn" .. attribut -- muss nicht unbedingt vorhanden sein
-- Datei-Selektor für SMD-Abfrage
-- Datei-Selektor für SMD-Abfrage
local page_selector =
local page_selector = "[[Datei:+]]" ..
"[[Datei:+]]" ..
"[[" .. attribut .. "::" .. lemma .. "]]" -- ZeigeNichtInOrt/...Straße/... = Lemma
"[[" .. zeige_nicht_in .. "::" .. lemma .. "]]" .. -- Ort/Straße/.. = Lemma
if wik.pageExists(zeige_nicht_in_attr) then
"[[" .. zeige_nicht_in_attr .. "::!Ja]]" -- Formular-Eintrag von ZeigeNichtIn...
page_selector = page_selector ..
"[[" .. zeige_nicht_in_attr .. "::!Ja]]" -- Formular-Eintrag von ZeigeNichtIn...
end
-- Anzahl ermitteln und Einleitung ausgeben
-- Anzahl ermitteln und Einleitung ausgeben
local query = {page_selector, format = "count"}
query = {page_selector, format = "count"}
query = mw.smw.ask(query)
query = mw.smw.ask(query)
t = t .. "<br><big>Wählen Sie hier, welche der '''" .. query ..
t = t .. "<br><big>Wählen Sie hier, welche der '''" .. query ..
"''' Bilder '''nicht''' angezeigt werden sollen:</big><br>"
"''' Dateien '''nicht''' angezeigt werden sollen:</big><br>"
-- Dateiliste abfragen
-- Dateiliste abfragen
local query = {page_selector,
local query = {page_selector,
Zeile 416: Zeile 417:
query = mw.smw.ask(query)
query = mw.smw.ask(query)
-- Formular-Tabelle aufbauen
-- Formular-Tabelle aufbauen
t = t ..
t = t .. "{{{for template|" .. template .. "}}}\n" ..
"{{{for template|Datei/" .. wob.mehrzahl(zeige_nicht_in) ..
"-Galerie-Bilder ausblenden}}}\n" ..
"<table class=\"formtable\">\n"
"<table class=\"formtable\">\n"
local jahrabschnitt
local jahrabschnitt
Zeile 452: Zeile 451:
end
end


function p.GalerieBilderAusblenden(frame)
function p.GalerieDateienAusblenden(frame)
local t = ""
local t = ""
local pages = wik.setPagenames()
local pages = wik.setPagenames()
local lemma = pages.subpagename
local lemma = frame.args["lemma"] or
local zeige_nicht_in = frame.args[1] -- Straße, Ort oder ...
wik.subpagename() -- für Debug-Zwecke
local zeige_nicht_in_attr = "ZeigeNichtIn" .. zeige_nicht_in
local formular = frame.args["formular"]
-- Klasse ermitteln
local query = {"[[" .. lemma .. "]]", "?KlassenName"}
query = mw.smw.ask(query) or
{{["KlassenName"] = frame.args["KlassenName"]}} -- für Debug-Zwecke
local attribut = query[1]["KlassenName"]
local zeige_nicht_in_attr = "ZeigeNichtIn" .. attribut -- muss nicht unbedingt vorhanden sein
-- Datei-Liste in SMD abfragen und als Tabelle aufbereiten
local query = {"[[Datei:+]][[" .. attribut .. "::" .. lemma .. "]]", -- Ort/Straße/.. = Lemma
"?#-", "?" .. zeige_nicht_in_attr, "?Erstellungsdatum", -- Erstellungsdatum muss übernommen werden, damit Sortierung in Galerie funzt
mainlabel = "-", limit = 10000}
query = mw.smw.ask(query) or {}
-- Info-Text
-- Info-Text
t = t ..
t = t ..
"'''Hier können Sie per Formular die Dateien auswählen, " ..
"'''Hier können Sie per Formular die Dateien auswählen, " ..
"die im Artikel [[" .. lemma ..
"die im Artikel [[" .. lemma .. "]] " ..
"]] nicht angezeigt werden sollen.'''\n<br>" ..
"(" .. attribut .. ", " .. #query .. " Dateien) " ..
"'''Hinweis:''' " ..
"nicht angezeigt werden sollen.'''\n<br>" ..
"Nach dem Speichern müssen Sie nochmal bearbeiten und speichern!\n" ..
"__TOC__\n"
"__TOC__\n"
-- Formular setzen
t = t .. frame:callParserFunction(
"#default_form", "Datei/" .. zeige_nicht_in_attr)
-- Datei-Liste in SMD abfragen und als Tabelle aufbereiten
local query = {"[[Datei:+]][[" .. zeige_nicht_in .. "::" .. lemma .. "]]", -- Ort/Straße/.. = Lemma
"?#-", "?" .. zeige_nicht_in_attr, "?Erstellungsdatum", -- Erstellungsdatum muss übernommen werden, damit Sortierung in Galerie funzt
mainlabel = "-", limit = 10000}
query = mw.smw.ask(query) or {}
-- Datei-Tabelle umformen und dabei Galerie darstellen
-- Datei-Tabelle umformen und dabei Galerie darstellen
t = t .. "== Nicht angezeigte Dateien (Formular-Eintrag auf jeweiliger Datei-Seite) ==\n"
t = t .. "== Nicht angezeigte Dateien " ..
"(Formular-Eintrag auf jeweiliger Datei-Seite) ==\n" ..
"; Hinweis: Diese Dateien wurden über die jeweilige Datei-Seite " ..
"als nicht anzuzeigen markiert.\n"
local g, count = "", 0
local g, count = "", 0
dateien = {}
dateien = {}
Zeile 505: Zeile 509:
t = t .. "<gallery mode=\"nolines\">\n" .. g .. "</gallery>\n"
t = t .. "<gallery mode=\"nolines\">\n" .. g .. "</gallery>\n"
end
end
-- Attribute setzen
mw.smw.set{[zeige_nicht_in_attr] = "Ja", ["Seite"] = lemma}
-- Anzuzeigende Dateien als Subobjekte setzen und dabei Galerie darstellen
-- Anzuzeigende Dateien als Subobjekte setzen und dabei Galerie darstellen
t = t .. "== Angezeigte Dateien ==\n"
t = t .. "== Angezeigte Dateien ==\n"
Zeile 524: Zeile 526:
t = t .. "<gallery mode=\"nolines\">\n" .. g .. "</gallery>\n"
t = t .. "<gallery mode=\"nolines\">\n" .. g .. "</gallery>\n"
end
end
mw.smw.set{["Seite"] = pages.fullpagename}
-- Formular setzen
t = t .. frame:callParserFunction("#default_form", formular)
-- Wikitext Preprocess
-- Wikitext Preprocess
return frame:preprocess(t)
return frame:preprocess(t)