diff --git a/.eslintrc.json b/.eslintrc.json index 616868b7..f8978cf6 100644 --- a/.eslintrc.json +++ b/.eslintrc.json @@ -15,6 +15,8 @@ "createFilterObject": true, "currMap": true, "customMapFilters": true, + "disableActionsControls": true, + "enableActionsControls": true, "enableAddressReferenceButton": true, "enableMapLocate": true, "featureGeometry": true, diff --git a/datenmanagement/models/models_simple.py b/datenmanagement/models/models_simple.py index fe15a760..5d782f0a 100644 --- a/datenmanagement/models/models_simple.py +++ b/datenmanagement/models/models_simple.py @@ -2929,6 +2929,12 @@ class BasemodelMeta(SimpleModel.BasemodelMeta): 'field': 'bewirtschafter', 'type': 'foreignkey' }, + { + 'action_name': 'hydranten-feuerloeschgeeignet', + 'action_title': 'ausgewählten Datensätzen feuerlöschgeeignet (ja/nein) direkt zuweisen', + 'field': 'feuerloeschgeeignet', + 'type': 'boolean' + }, { 'action_name': 'hydranten-betriebszeit', 'action_title': 'ausgewählten Datensätzen Betriebszeit direkt zuweisen', @@ -3724,6 +3730,32 @@ class BasemodelMeta(SimpleModel.BasemodelMeta): 'verbund': 'verbund', 'betriebsart': 'betriebsart' } + list_actions_assign = [ + { + 'action_name': 'ladestationen_elektrofahrzeuge-geplant', + 'action_title': 'ausgewählten Datensätzen geplant (ja/nein) direkt zuweisen', + 'field': 'geplant', + 'type': 'boolean' + }, + { + 'action_name': 'ladestationen_elektrofahrzeuge-betreiber', + 'action_title': 'ausgewählten Datensätzen Betreiber direkt zuweisen', + 'field': 'betreiber', + 'type': 'foreignkey' + }, + { + 'action_name': 'ladestationen_elektrofahrzeuge-verbund', + 'action_title': 'ausgewählten Datensätzen Verbund direkt zuweisen', + 'field': 'verbund', + 'type': 'foreignkey' + }, + { + 'action_name': 'ladestationen_elektrofahrzeuge-betriebsart', + 'action_title': 'ausgewählten Datensätzen Betriebsart direkt zuweisen', + 'field': 'betriebsart', + 'type': 'foreignkey' + } + ] map_feature_tooltip_field = 'bezeichnung' map_filter_fields = { 'geplant': 'geplant?', @@ -3906,6 +3938,21 @@ class BasemodelMeta(SimpleModel.BasemodelMeta): 'art': 'art', 'gebaeudeart': 'bezeichnung' } + list_actions_assign = [ + { + 'action_name': 'meldedienst_punkthaft-gebaeudeart', + 'action_title': 'ausgewählten Datensätzen Gebäudeart direkt zuweisen', + 'field': 'gebaeudeart', + 'type': 'foreignkey' + }, + { + 'action_name': 'meldedienst_punkthaft-datum', + 'action_title': 'ausgewählten Datensätzen Datum direkt zuweisen', + 'field': 'datum', + 'type': 'date', + 'value_required': True + } + ] heavy_load_limit = 600 map_feature_tooltip_field = 'art' map_filter_fields = { @@ -4385,6 +4432,14 @@ class BasemodelMeta(SimpleModel.BasemodelMeta): 'hersteller': 'bezeichnung', 'typ': 'typ' } + list_actions_assign = [ + { + 'action_name': 'poller-status', + 'action_title': 'ausgewählten Datensätzen Status direkt zuweisen', + 'field': 'status', + 'type': 'foreignkey' + } + ] map_feature_tooltip_field = 'bezeichnung' map_filter_fields = { 'art': 'Art', @@ -4576,6 +4631,14 @@ class BasemodelMeta(SimpleModel.BasemodelMeta): 'adresse': 'adresse', 'traeger': 'bezeichnung' } + list_actions_assign = [ + { + 'action_name': 'rettungswachen-traeger', + 'action_title': 'ausgewählten Datensätzen Träger direkt zuweisen', + 'field': 'traeger', + 'type': 'foreignkey' + } + ] map_feature_tooltip_field = 'bezeichnung' map_filter_fields = { 'bezeichnung': 'Bezeichnung', @@ -4771,6 +4834,7 @@ class Meta(SimpleModel.Meta): class BasemodelMeta(SimpleModel.BasemodelMeta): description = 'Schutzzäune gegen Tierseuchen in der Hanse- und Universitätsstadt Rostock' as_overlay = True + readonly_fields = ['laenge'] geometry_type = 'MultiLineString' list_fields = { 'aktiv': 'aktiv?', @@ -4783,7 +4847,14 @@ class BasemodelMeta(SimpleModel.BasemodelMeta): 'tierseuche': 'bezeichnung', 'zustand': 'zustand' } - readonly_fields = ['laenge'] + list_actions_assign = [ + { + 'action_name': 'schutzzaeune_tierseuchen-zustand', + 'action_title': 'ausgewählten Datensätzen Zustand direkt zuweisen', + 'field': 'zustand', + 'type': 'foreignkey' + } + ] map_feature_tooltip_field = 'zustand' map_filter_fields = { 'tierseuche': 'Tierseuche', diff --git a/datenmanagement/static/datenmanagement/js/list.js b/datenmanagement/static/datenmanagement/js/list.js index b359d740..cf7be606 100644 --- a/datenmanagement/static/datenmanagement/js/list.js +++ b/datenmanagement/static/datenmanagement/js/list.js @@ -1,3 +1,17 @@ +/** + * @function + * @name disableActionsControls + * + * disables action controls + * + */ +function disableActionsControls() { + $('#action-count').text('kein Datensatz ausgewählt'); + $('#action-select').prop('selectedIndex', 0); + $('#action-select').prop('disabled', true); + $('#action-button').prop('disabled', true); +} + /** * @function * @name downloadFile @@ -20,6 +34,18 @@ function downloadFile(file, fileName = 'file') { a.remove(); } +/** + * @function + * @name enableActionsControls + * + * enables action controls + * + */ +function enableActionsControls() { + $('#action-select').prop('disabled', false); + $('#action-button').prop('disabled', false); +} + /** * @function * @name formatData @@ -171,15 +197,13 @@ function initDataTable(dataUrl, languageUrl, numberOfColumns) { * @function * @name reloadDataTable * - * reloads data table and resets action controls + * reloads data table and disables action controls * * @param {Object} dataTable - data table */ function reloadDataTable(dataTable) { setTimeout(function() { dataTable.ajax.reload(); - $('#action-count').text('kein Datensatz ausgewählt'); - $('#action-select').prop('selectedIndex', 0); - $('#action-button').prop('disabled', true); + disableActionsControls(); }, 1000); } diff --git a/datenmanagement/templates/datenmanagement/list.html b/datenmanagement/templates/datenmanagement/list.html index 922d23d7..c5f9f75a 100644 --- a/datenmanagement/templates/datenmanagement/list.html +++ b/datenmanagement/templates/datenmanagement/list.html @@ -87,7 +87,7 @@