Modul:Lizenzhinweis
Zweck[Quelltext bearbeiten]
Dieses Modul dient der standardisierten Darstellung von Lizenzhinweisen auf Dateiseiten im Wikonia-Wiki. Es erzeugt eine visuell formatierte Box mit Lizenzinformationen, basierend auf intern definierten Datensätzen. Die Ausgestaltung (Icons, Farben, Textstruktur) folgt dem CI von Wikonia.
Verwendung[Quelltext bearbeiten]
Das Modul wird ausschließlich über sogenannte „Wrapper-Vorlagen“ (z. B. Vorlage:Cc-by-sa-4.0) auf Dateiseiten eingebunden. Diese Vorlagen rufen das Modul mit einem festen Lizenztyp auf, z. B.:
{{#invoke: Lizenzhinweis | zeige | typ=cc-by-sa-4.0 }}
Eine direkte Nutzung im Artikelnamensraum oder durch freie Parameter ist nicht vorgesehen.
Funktion[Quelltext bearbeiten]
Das Modul rendert die Ausgabe auf Basis einer Lua-Tabelle mit vordefinierten Lizenzobjekten. Jede Lizenz besitzt:
titel: Anzeigetitel der Lizenzicon: eingebundenes Icon (Commons-Dateiname)farbklasse: Farbschema der Box (z. B.cc,pd,copyright)beschreibung: Einleitungstexterlaubt: Liste der erlaubten Nutzungenverboten: Liste der verbotenen Nutzungenbedingung: Liste verpflichtender Bedingungenhinweis: zusätzliche Hinweise (z. B. Markenrecht)link: externer Link zur Lizenz (optional)
Alle Einträge sind optional, nur der Lizenzschlüssel muss eindeutig sein.
Darstellung[Quelltext bearbeiten]
Die generierte Box besteht aus:
- einem farblich markierten Rahmen (je nach Lizenztyp),
- einem Icon links,
- strukturiertem Text rechts (inkl. Bulletpoints),
- einem abschließenden Link („Details zur Lizenz“) mit FontAwesome-Icon.
Kategorien[Quelltext bearbeiten]
Die Kategorisierung erfolgt ausschließlich über die Wrapper-Vorlage per <includeonly>. Das Modul selbst setzt keine Kategorien.
Hinweise[Quelltext bearbeiten]
- Die Lizenzdaten sind zentral im Modul gepflegt und sollten nicht in der Vorlage überschrieben werden.
- Bei neuen Lizenztypen ist ein neuer Tabelleneintrag im Modul anzulegen sowie eine passende Wrapper-Vorlage zu erstellen.
- Änderungen am Farbsystem oder Icon-Stil müssen mit dem Projektstil von Wikonia abgestimmt werden.
Beispiele[Quelltext bearbeiten]
Typische Wrapper-Vorlagen:
Siehe auch
-- Modul:Lizenzhinweis – zentrale Steuerung der Lizenzboxen für Dateien
local daten = {
["cc-by-sa-4.0"] = {
titel = "CC BY SA 4.0",
icon = "[[Datei:CC BY-SA logo circle.svg|80px|class=noviewer]]",
farbklasse = "cc",
beschreibung = "Dieses Werk steht unter der Creative-Commons-Lizenz »Namensnennung – Weitergabe unter gleichen Bedingungen 4.0 international (CC BY-SA 4.0)«.",
erlaubt = {
"Vervielfältigung und Verbreitung – auch kommerziell",
"Bearbeitung und Weiterentwicklung"
},
bedingung = {
"Nennung des Urhebers (Namensnennung)",
"Weitergabe nur unter derselben Lizenz (ShareAlike)"
},
verboten = {},
hinweis = {},
link = "https://creativecommons.org/licenses/by-sa/4.0/deed.de"
},
["cc-by-4.0"] = {
titel = "CC BY 4.0",
icon = "[[Datei:CC-BY Icon.png|80px|class=noviewer]]",
farbklasse = "cc",
beschreibung = "Dieses Werk steht unter der Creative-Commons-Lizenz »Namensnennung 4.0 international (CC BY 4.0)«.",
erlaubt = {
"Vervielfältigung, Verbreitung und Bearbeitung – auch kommerziell"
},
bedingung = {
"Nennung des Urhebers (Namensnennung)"
},
verboten = {},
hinweis = {},
link = "https://creativecommons.org/licenses/by/4.0/deed.de"
},
["cc-zero"] = {
titel = "CC ZERO",
icon = "[[Datei:Cc-zero white.svg|80px|class=noviewer]]",
farbklasse = "pd",
beschreibung = "Der Urheber dieses Werks hat es in die Gemeinfreiheit (Public Domain) entlassen.",
erlaubt = {
"Jegliche Nutzung ohne Einschränkung",
"Keine Pflicht zur Namensnennung"
},
bedingung = {},
verboten = {},
hinweis = {
"Gesetzliche Schutzrechte Dritter (z. B. Persönlichkeitsrechte) bleiben unberührt."
},
link = "https://creativecommons.org/publicdomain/zero/1.0/deed.de"
},
["copy-mumibo"] = {
titel = "COPY MUMIBO",
icon = "[[Datei:Bimetrical icon copyright.svg|80px|class=noviewer]]",
farbklasse = "copyright",
beschreibung = "Das Werk unterliegt dem Urheberrecht von Mumibo. Eine Nutzung ist nur nach Rücksprache erlaubt.",
erlaubt = {},
bedingung = {},
verboten = {
"Veröffentlichung ohne Genehmigung",
"kommerzielle Nutzung"
},
hinweis = {},
link = "https://wikonia.net/Nutzungshinweise"
},
["copy-mumibo-cc-by-sa-4.0"] = {
titel = "COPY MUMIBO CC BY SA 4.0",
icon = "[[Datei:CC BY-SA logo circle.svg|80px|class=noviewer]]",
farbklasse = "copyright",
beschreibung = "Das Werk ist urheberrechtlich geschützt, wird aber freiwillig unter der Lizenz CC BY-SA 4.0 bereitgestellt.",
erlaubt = {
"Nutzung im Rahmen der CC BY-SA 4.0-Bedingungen"
},
bedingung = {},
verboten = {},
hinweis = {
"Die Lizenzvergabe kann widerrufen werden – bei Missbrauch droht Entzug."
},
link = "https://creativecommons.org/licenses/by-sa/4.0/deed.de"
},
["pd-old"] = {
titel = "PD OLD",
icon = "[[Datei:PD-icon-green.svg|80px|class=noviewer]]",
farbklasse = "pd",
beschreibung = "Das Werk ist gemeinfrei, da seine Schutzdauer abgelaufen ist.",
erlaubt = {
"Nutzung, Vervielfältigung und Bearbeitung ohne Einschränkung"
},
bedingung = {},
verboten = {},
hinweis = {
"Das Werk muss eindeutig gemeinfrei sein (z. B. Todesjahr > 70 Jahre zurückliegend)."
},
link = "https://de.wikipedia.org/wiki/Gemeinfreiheit"
},
["pd-old-100"] = {
titel = "PD OLD 100",
icon = "[[Datei:PD-icon-green.svg|80px|class=noviewer]]",
farbklasse = "pd",
beschreibung = "Das Werk ist über 100 Jahre alt und gilt daher in vielen Ländern als gemeinfrei.",
erlaubt = {
"Nutzung ohne urheberrechtliche Einschränkung"
},
bedingung = {},
verboten = {},
hinweis = {
"Rechtslage kann regional abweichen – Nutzung auf eigene Verantwortung."
},
link = "https://de.wikipedia.org/wiki/Gemeinfreiheit"
},
["pd-ineligible"] = {
titel = "PD INELIGIBLE",
icon = "[[Datei:PD-icon-blue.svg|80px|class=noviewer]]",
farbklasse = "pd",
beschreibung = "Das Werk ist mangels Schöpfungshöhe nicht urheberrechtlich geschützt.",
erlaubt = {
"Freie Nutzung, da kein urheberrechtlicher Schutz besteht"
},
bedingung = {},
verboten = {},
hinweis = {
"Es kann Marken- oder Designschutz bestehen – im Zweifel prüfen!"
},
link = "https://de.wikipedia.org/wiki/Werke_mit_zu_geringer_Schöpfungshöhe"
},
["pd-textlogo"] = {
titel = "PD TEXTLOGO",
icon = "[[Datei:Commons-emblem-registered-trademark black.svg|80px|class=noviewer]]",
farbklasse = "pd",
beschreibung = "Dieses Bild besteht ausschließlich aus einfachem Text oder simplen geometrischen Formen ohne ausreichende Schöpfungshöhe und ist daher nicht urheberrechtlich geschützt.",
erlaubt = {
"Verwendung ohne urheberrechtliche Einschränkung"
},
bedingung = {},
verboten = {},
hinweis = {
"Das Bild kann trotz fehlenden Urheberrechtsschutzes durch Markenrecht, Wettbewerbsrecht oder Designschutz eingeschränkt sein.",
"Der Upload von Schriftarten, typografischen Layouts oder Logo-Varianten mit kreativer Gestaltung ist auf Wikonia nicht zulässig."
},
link = "https://de.wikipedia.org/wiki/Datei:PD-textlogo"
},
["dateiüberprüfung"] = {
titel = "DATEIÜBERPRÜFUNG",
icon = "[[Datei:Page issue icon - medium.svg|80px|class=noviewer]]",
farbklasse = "unbekannt",
beschreibung = "Für diese Datei konnte (noch) keine eindeutige Lizenz festgestellt werden.",
erlaubt = {},
bedingung = {},
verboten = {},
hinweis = {
"Bitte überprüfe die Herkunft und ergänze die Lizenzangaben."
},
link = ""
}
}
local function liste(titel, inhalt)
if not inhalt or type(inhalt) ~= "table" or #inhalt == 0 then
return ""
end
local html = "<p><strong>" .. titel .. ":</strong></p><ul>"
for _, punkt in ipairs(inhalt) do
html = html .. "<li>" .. punkt .. "</li>"
end
return html .. "</ul>"
end
local p = {}
function p.zeige(frame)
local typ = frame.args.typ
local eintrag = daten[typ]
if not eintrag then
return '<strong class="error">Unbekannter Lizenztyp: ' .. (typ or '–') .. '</strong>'
end
local erlaubt_html = liste("Erlaubt", eintrag.erlaubt)
local verboten_html = liste("Nicht erlaubt", eintrag.verboten)
local bedingung_html = liste("Nur unter folgenden Bedingungen", eintrag.bedingung)
local hinweis_html = liste("Hinweis", eintrag.hinweis)
local lizenzlink_html = string.format(
'<div class="lizenz-link">[%s Details zur Lizenz]</div>',
eintrag.link
)
return string.format([[
<div class="lizenzbox lizenz-%s">
<div class="lizenzbox-header">Lizenz: %s</div>
<div class="lizenzbox-body">
<div class="lizenzbox-icon">%s</div>
<div class="lizenzbox-text">
<p>%s</p>
%s
%s
%s
%s
%s
</div>
</div>
</div>]],
eintrag.farbklasse,
eintrag.titel,
eintrag.icon,
eintrag.beschreibung or "",
erlaubt_html,
verboten_html,
bedingung_html,
hinweis_html,
lizenzlink_html
)
end
return p