new version with ajax

This commit is contained in:
rnsrk 2025-01-09 18:27:23 +01:00
parent 27c044f040
commit a0b1c7785e
8 changed files with 415 additions and 128 deletions

View file

@ -31,7 +31,7 @@
$newHelperField.append('<option value="Verkauf">Verkauf</option>');
$newHelperField.append('<option value="Verweis">Verweis auf weitere Karteikarte</option>');
$newHelperField.append('<option value="Weiterverwendung">Weiterverwendung</option>');
} else if ([ 'agg__all__objektkategorie', 'agg__arch__objektkategorie', 'agg__obj__objektkategorie'].includes(field)) { // Objektkategorie
} else if (['agg__all__objektkategorie', 'agg__arch__objektkategorie', 'agg__obj__objektkategorie'].includes(field)) { // Objektkategorie
$newHelperField.empty();
$newHelperField.append('<option value="">Bitte auswählen...</option>');
$newHelperField.append('<option value="Malerei">Malerei</option>');
@ -65,97 +65,11 @@
Drupal.behaviors.advanceSearchEntityFields = {
attach: function attach(context, settings) {
let $searchSelectElement = $('[id^="edit-terms-0-search"]');
let originalSearchSelectOptions = $searchSelectElement.find('option').clone();
$searchSelectElement.empty();
$searchSelectElement.append('<option value="all" selected="selected">Keyword</option>');
$searchSelectElement.append('<option value="agg__all__akt">Akteur</option>');
$searchSelectElement.append('<option value="agg__all__anmerkung">Anmerkung</option>');
$searchSelectElement.append('<option value="f20673c10d8d786816de3c4338d1c3ac">Art der Institution</option>');
$searchSelectElement.append('<option value="agg__all__auktionshaus">Auktionshaus</option>');
$searchSelectElement.append('<option value="f4394d15487b58f49c719cf850f57e3a">Auktionskatalog</option>');
$searchSelectElement.append('<option value="agg__all_auktionstitel">Auktionstitel</option>');
$searchSelectElement.append('<option value="fb7ca3fb25fe824b40d6923e212ee7c4">Beruf/ Tätigkeit</option>');
$searchSelectElement.append('<option value="fd4b844b736f2215421ead5b2fc0f5ef">Fotonummer</option>');
$searchSelectElement.append('<option value="f807d62b374606e52e8833118375ecb0">Karteikarten-ID</option>');
$searchSelectElement.append('<option value="agg__all__kue_herst">Künstler:in/ Hersteller:in</option>');
$searchSelectElement.append('<option value="agg__obj__lotnummer">Lotnummer</option>');
$searchSelectElement.append('<option value="fe03f1bcb9bf84f6fa8bf265090313c5">Objekt-ID</option>');
$searchSelectElement.append('<option value="agg__all__objektkategorie">Objektkategorie</option>');
$searchSelectElement.append('<option value="agg__all__objekttitel">Objekttitel</option>');
$searchSelectElement.append('<option value="agg__all__ort_regi">Ort/Region</option>');
$searchSelectElement.append('<option value="agg__all__transaktion">Transaktion</option>');
$(document).on('change', '.advanced-search-form--entity', function () {
let id = $(this).attr('id');
let i = id.substring(11, 12);
let $select = $('#' + id);
let searchSelectId = 'edit-terms-' + i + '-search';
let selector = "[id^='" + searchSelectId + "']";
let $searchSelect = $(selector);
if ($select.val() === 'akteur') { // Akteur
$searchSelect.empty();
$searchSelect.append('<option value="agg__akt__anmerkung">Anmerkung</option>');
$searchSelect.append('<option value="f20673c10d8d786816de3c4338d1c3ac">Art der Institution</option>');
$searchSelect.append('<option value="fb7ca3fb25fe824b40d6923e212ee7c4">Beruf/ Tätigkeit</option>');
$searchSelect.append('<option value="agg__akt__name">Name</option>');
}
else if ($select.val() === 'b48556e79962e0a3c8d0041317c853b9') { // Archivalie
$searchSelect.empty();
$searchSelect.append('<option value="agg__arch__akteur">Akteur</option>');
$searchSelect.append('<option value="agg_arch__anmerkung">Anmerkung</option>');
$searchSelect.append('<option value="agg__arch__auktionstitel">Auktionstitel</option>');
$searchSelect.append('<option value="agg__arch__kue_herst">Künster:in/ Hersteller:in</option>');
$searchSelect.append('<option value="agg__arch__objektkategorie">Objektkategorie</option>');
$searchSelect.append('<option value="agg__arch__ort_reg">Ort/ Region</option>');
}
else if ($select.val() === 'ba419826c9014f40126565bf413f7a59') { // Auktion
$searchSelect.empty();
$searchSelect.append('<option value="agg__arch__akteur">Akteur</option>');
$searchSelect.append('<option value="f11ead3fa212224b6e82ce5622c1d99c">Anmerkung</option>');
$searchSelect.append('<option value="ff8fb361d19f1fb4030605f87cb995ff">Auktionshaus</option>');
$searchSelect.append('<option value="f4394d15487b58f49c719cf850f57e3a">Auktionskatalog</option>');
$searchSelect.append('<option value="f6230cbdc56e0f04a90424b248680c76">Titel der Auktion</option>');
} else if ($select.val() === 'b65c3a85d16724d84a5eb0d2268629a6') { // Objekt
$searchSelect.empty();
$searchSelect.append('<option value="fe12ded9c22ca130eae59a41ea380f3d">Anmerkung</option>');
$searchSelect.append('<option value="agg__obj__akt">Akteur</option>');
$searchSelect.append('<option value="agg__obj__auktionshaus">Auktionshaus</option>');
$searchSelect.append('<option value="agg__obj__auktionstitel">Auktionstitel</option>');
$searchSelect.append('<option value="agg__obj__kue_herst">Künstler:in/ Hersteller:in</option>');
$searchSelect.append('<option value="agg__obj__lotnummer">Lotnummer</option>');
$searchSelect.append('<option value="fe03f1bcb9bf84f6fa8bf265090313c5">Objekt-ID</option>');
$searchSelect.append('<option value="agg__obj__titel">Objekttitel</option>');
$searchSelect.append('<option value="agg__obj__objektkategorie">Objektkategorie</option>');
$searchSelect.append('<option value="agg__obj__ort_regi">Ort/Region</option>');
} else if ($select.val() === 'ueberall') {
$searchSelect.empty();
$searchSelect.append('<option value="all" selected="selected">Keyword</option>');
$searchSelect.append('<option value="agg__all__akt">Akteur</option>');
$searchSelect.append('<option value="agg__all__anmerkung">Anmerkung</option>');
$searchSelect.append('<option value="f20673c10d8d786816de3c4338d1c3ac">Art der Institution</option>');
$searchSelect.append('<option value="agg__all__auktionshaus">Auktionshaus</option>');
$searchSelect.append('<option value="f4394d15487b58f49c719cf850f57e3a">Auktionskatalog</option>');
$searchSelect.append('<option value="agg__all_auktionstitel">Auktionstitel</option>');
$searchSelect.append('<option value="fb7ca3fb25fe824b40d6923e212ee7c4">Beruf/ Tätigkeit</option>');
$searchSelect.append('<option value="fd4b844b736f2215421ead5b2fc0f5ef">Fotonummer</option>');
$searchSelect.append('<option value="f807d62b374606e52e8833118375ecb0">Karteikarten-ID</option>');
$searchSelect.append('<option value="agg__all__kue_herst">Künstler:in/ Hersteller:in</option>');
$searchSelect.append('<option value="agg__obj__lotnummer">Lotnummer</option>');
$searchSelect.append('<option value="fe03f1bcb9bf84f6fa8bf265090313c5">Objekt-ID</option>');
$searchSelect.append('<option value="agg__all__objektkategorie">Objektkategorie</option>');
$searchSelect.append('<option value="agg__all__objekttitel">Objekttitel</option>');
$searchSelect.append('<option value="agg__all__ort_regi">Ort/Region</option>');
$searchSelect.append('<option value="agg__all__transaktion">Transaktion</option>');
}
});
$(document).on('change', '.advanced-search-form--select-field', function () {
let id = $(this).attr('id');
let i = id.substring(11, 12);
let field = $(this).val();
if (['agg__arch__transaktion', 'agg__all__transaktion', 'agg__all__objektkategorie', 'agg__arch__objektkategorie', 'agg__obj__objektkategorie'].includes(field)) {
console.log(field);
let dropdown = toDropdown(field, i);
} else {
let searchValueSelectId = 'edit-terms-' + i + '-value';
@ -166,7 +80,6 @@
$oldHelperField.remove();
}
});
}
};