license handled via i18n, invalid licenses forbidden

This commit is contained in:
Mirjan Hoffmann 2022-03-07 15:33:46 +01:00
parent a290d107d4
commit 8c994dab41

View file

@ -147,37 +147,41 @@
</div>
</div>
<div class="form-group row">
<label for="inputLicense" class="col-sm-2 col-form-label">Lizenz</label>
<div class="col-sm-7">
<label for="choicesLicense" class="col-sm-2 col-form-label" data-i18n="LABEL_LICENSE">Lizenz</label>
<div class="col-sm-7" id="choicesLicense">
<div class="form-check">
<label class="form-check-label">
<input type="checkbox" onclick="chooseLicense()" class="form-check-input" id="inputLicenseBY" value="BY"
checked="true">darf ohne Namensnennung verwendet werden
checked>
<span data-i18n="LABEL_LICENSE_CHECKBOX_BY">darf ohne Namensnennung verwendet werden</span>
</label>
</div>
<div class="form-check">
<label class="form-check-label">
<input type="checkbox" onclick="chooseLicense()" class="form-check-input" id="inputLicenseSA" value="SA"
checked="true">darf unter anderer Lizenz veröffentlicht werden
checked>
<span data-i18n="LABEL_LICENSE_CHECKBOX_SA">darf unter anderer Lizenz veröffentlicht werden</span>
</label>
</div>
<div class="form-check">
<label class="form-check-label">
<input type="checkbox" onclick="chooseLicense()" class="form-check-input" id="inputLicenseND" value="ND"
checked="true">darf verändert werden
checked>
<span data-i18n="LABEL_LICENSE_CHECKBOX_ND">darf verändert werden</span>
</label>
</div>
<div class="form-check">
<label class="form-check-label">
<input type="checkbox" onclick="chooseLicense()" class="form-check-input" id="inputLicenseNC" value="NC"
checked="true">darf kommerziell genutzt werden
checked>
<span data-i18n="LABEL_LICENSE_CHECKBOX_NC">darf kommerziell genutzt werden</span>
<input type="hidden" id="licenseUrl"
value="https://creativecommons.org/share-your-work/public-domain/cc0/">
</label>
</div>
</div>
<div class="col-sm-3">
<label for="inputLicense" id="choosenLicense" class="col-sm-10 col-form-label">CC-0</label>
<label for="choicesLicense" id="choosenLicense" class="col-form-label">CC-0</label>
</div>
</div>
<div class="form-group row">
@ -360,55 +364,87 @@
function chooseLicense() {
var by = document.getElementById("inputLicenseBY")
var sa = document.getElementById("inputLicenseSA")
var nd = document.getElementById("inputLicenseND")
var nc = document.getElementById("inputLicenseNC")
var licenseShortName = "CC"
const by = document.getElementById("inputLicenseBY")
const sa = document.getElementById("inputLicenseSA")
const nd = document.getElementById("inputLicenseND")
const nc = document.getElementById("inputLicenseNC")
let licenseShortName = "CC"
if (by.checked === false) {
licenseShortName += " " + by.value
}
if (sa.checked == false) {
if (sa.checked === false) {
licenseShortName += "-" + sa.value
}
if (nd.checked == false) {
if (nd.checked === false) {
licenseShortName += "-" + nd.value
}
if (nc.checked == false) {
if (nc.checked === false) {
licenseShortName += "-" + nc.value
}
if (licenseShortName == "CC") {
if (licenseShortName === "CC") {
licenseShortName = "CC-0"
}
document.getElementById("choosenLicense").innerText = licenseShortName
var color = ""
let color = ""
switch (licenseShortName) {
case "CC-0":
color = "green"
by.disabled = false;
sa.disabled = true;
nd.disabled = true;
nc.disabled = true;
break;
case "CC BY":
color = "green"
by.disabled = false;
sa.disabled = false;
nd.disabled = false;
nc.disabled = false;
break;
case "CC BY-SA":
color = "orange"
by.disabled = true;
sa.disabled = false;
nd.disabled = true;
nc.disabled = false;
break;
case "CC BY-ND":
color = "orange"
by.disabled = true;
sa.disabled = true;
nd.disabled = false;
nc.disabled = false;
break;
case "CC BY-NC":
color = "red"
by.disabled = true;
sa.disabled = false;
nd.disabled = false;
nc.disabled = false;
break;
case "CC BY-SA-NC":
color = "red"
by.disabled = true;
sa.disabled = false;
nd.disabled = true;
nc.disabled = false;
break;
case "CC BY-ND-NC":
color = "red"
by.disabled = true;
sa.disabled = true;
nd.disabled = false;
nc.disabled = false;
break;
default:
color = "grey"
document.getElementById("choosenLicense").innerText = "keine gültige Lizenz"
document.getElementById("licenseUrl").value = ""
by.disabled = false;
sa.disabled = false;
nd.disabled = false;
nc.disabled = false;
}
document.getElementById("choosenLicense").style.color = color