diff --git a/analysis/utils/report.py b/analysis/utils/report.py index 63a06b84..9932863a 100644 --- a/analysis/utils/report.py +++ b/analysis/utils/report.py @@ -17,6 +17,7 @@ from compensation.models import Compensation, Payment, EcoAccountDeduction, EcoA from intervention.models import Intervention from konova.models import Geometry from konova.sub_settings.django_settings import BASE_DIR, DEFAULT_DATE_FORMAT +from konova.sub_settings.lanis_settings import DEFAULT_SRID_RLP class TimespanReport: @@ -333,7 +334,7 @@ class TimespanReport: return Geometry.objects.filter( id__in=ids ).annotate( - geom_cast=Cast("geom", MultiPolygonField()) + geom_cast=Cast("geom", MultiPolygonField(srid=DEFAULT_SRID_RLP)) ).annotate( num=NumGeometries("geom_cast") ).aggregate( diff --git a/compensation/admin.py b/compensation/admin.py index 2821a146..c0186216 100644 --- a/compensation/admin.py +++ b/compensation/admin.py @@ -81,13 +81,15 @@ class EcoAccountAdmin(AbstractCompensationAdmin): ] filter_horizontal = [ - "users" + "users", + "teams", ] def get_fields(self, request, obj=None): return super().get_fields(request, obj) + [ "deductable_surface", - "users" + "users", + "teams", ] diff --git a/compensation/migrations/0012_auto_20221116_1322.py b/compensation/migrations/0012_auto_20221116_1322.py new file mode 100644 index 00000000..947352a3 --- /dev/null +++ b/compensation/migrations/0012_auto_20221116_1322.py @@ -0,0 +1,26 @@ +# Generated by Django 3.1.3 on 2022-11-16 12:22 + +from django.conf import settings +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('user', '0006_auto_20220815_0759'), + migrations.swappable_dependency(settings.AUTH_USER_MODEL), + ('compensation', '0011_ecoaccount_deductable_rest'), + ] + + operations = [ + migrations.AlterField( + model_name='ecoaccount', + name='teams', + field=models.ManyToManyField(blank=True, help_text='Teams having access (data shared with)', to='user.Team'), + ), + migrations.AlterField( + model_name='ecoaccount', + name='users', + field=models.ManyToManyField(blank=True, help_text='Users having access (data shared with)', to=settings.AUTH_USER_MODEL), + ), + ] diff --git a/compensation/templates/compensation/detail/compensation/view.html b/compensation/templates/compensation/detail/compensation/view.html index 759f7600..b40fc2f4 100644 --- a/compensation/templates/compensation/detail/compensation/view.html +++ b/compensation/templates/compensation/detail/compensation/view.html @@ -124,7 +124,7 @@ {% endfor %}
{% if has_access %} - {% for user in obj.users.all %} + {% for user in obj.intervention.shared_users %} {% include 'user/includes/contact_modal_button.html' %} {% endfor %} {% else %} diff --git a/ema/admin.py b/ema/admin.py index 7cd5a7ff..dbfff3ab 100644 --- a/ema/admin.py +++ b/ema/admin.py @@ -6,12 +6,14 @@ from ema.models import Ema class EmaAdmin(AbstractCompensationAdmin): filter_horizontal = [ - "users" + "users", + "teams", ] def get_fields(self, request, obj=None): return super().get_fields(request, obj) + [ - "users" + "users", + "teams", ] admin.site.register(Ema, EmaAdmin) diff --git a/ema/migrations/0008_auto_20221116_1322.py b/ema/migrations/0008_auto_20221116_1322.py new file mode 100644 index 00000000..c705358f --- /dev/null +++ b/ema/migrations/0008_auto_20221116_1322.py @@ -0,0 +1,26 @@ +# Generated by Django 3.1.3 on 2022-11-16 12:22 + +from django.conf import settings +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('user', '0006_auto_20220815_0759'), + migrations.swappable_dependency(settings.AUTH_USER_MODEL), + ('ema', '0007_auto_20220815_1030'), + ] + + operations = [ + migrations.AlterField( + model_name='ema', + name='teams', + field=models.ManyToManyField(blank=True, help_text='Teams having access (data shared with)', to='user.Team'), + ), + migrations.AlterField( + model_name='ema', + name='users', + field=models.ManyToManyField(blank=True, help_text='Users having access (data shared with)', to=settings.AUTH_USER_MODEL), + ), + ] diff --git a/intervention/admin.py b/intervention/admin.py index 932ddb93..46f7244d 100644 --- a/intervention/admin.py +++ b/intervention/admin.py @@ -14,7 +14,8 @@ class InterventionAdmin(BaseObjectAdmin): ] filter_horizontal = [ - "users" + "users", + "teams", ] def get_fields(self, request, obj=None): @@ -25,6 +26,7 @@ class InterventionAdmin(BaseObjectAdmin): "checked", "recorded", "users", + "teams", "geometry", ] diff --git a/intervention/forms/modals/document.py b/intervention/forms/modals/document.py index 212f3f02..17dfa560 100644 --- a/intervention/forms/modals/document.py +++ b/intervention/forms/modals/document.py @@ -10,4 +10,23 @@ from konova.forms.modals import NewDocumentModalForm class NewInterventionDocumentModalForm(NewDocumentModalForm): - document_model = InterventionDocument \ No newline at end of file + document_model = InterventionDocument + + def save(self, *args, **kwargs): + """ Extension of regular NewDocumentModalForm + + Checks whether payments exist on the intervention and sends the data to EGON + + Args: + *args (): + **kwargs (): + + Returns: + + """ + doc = super().save(*args, **kwargs) + + if self.instance.payments.exists(): + self.instance.send_data_to_egon() + + return doc diff --git a/intervention/migrations/0008_auto_20221116_1322.py b/intervention/migrations/0008_auto_20221116_1322.py new file mode 100644 index 00000000..f92b1489 --- /dev/null +++ b/intervention/migrations/0008_auto_20221116_1322.py @@ -0,0 +1,26 @@ +# Generated by Django 3.1.3 on 2022-11-16 12:22 + +from django.conf import settings +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('user', '0006_auto_20220815_0759'), + migrations.swappable_dependency(settings.AUTH_USER_MODEL), + ('intervention', '0007_auto_20220815_1030'), + ] + + operations = [ + migrations.AlterField( + model_name='intervention', + name='teams', + field=models.ManyToManyField(blank=True, help_text='Teams having access (data shared with)', to='user.Team'), + ), + migrations.AlterField( + model_name='intervention', + name='users', + field=models.ManyToManyField(blank=True, help_text='Users having access (data shared with)', to=settings.AUTH_USER_MODEL), + ), + ] diff --git a/intervention/templates/intervention/detail/includes/documents.html b/intervention/templates/intervention/detail/includes/documents.html index 9fccc4b7..5037ff8a 100644 --- a/intervention/templates/intervention/detail/includes/documents.html +++ b/intervention/templates/intervention/detail/includes/documents.html @@ -20,6 +20,11 @@ + {% if has_payment_without_document %} +
+ {% trans 'You entered a payment. Please upload the legal document which defines the payment`s amount.' %} +
+ {% endif %}
diff --git a/intervention/utils/quality.py b/intervention/utils/quality.py index 6135b403..bae886ee 100644 --- a/intervention/utils/quality.py +++ b/intervention/utils/quality.py @@ -21,8 +21,21 @@ class InterventionQualityChecker(AbstractQualityChecker): self._check_legal_data() self._check_compensations() self._check_geometry() + self._check_payment_documents() self.valid = len(self.messages) == 0 + def _check_payment_documents(self): + """ Checks existence of documents in case of payments + + There should be at least one legal document which defines the payment's total amount. + + Returns: + + """ + has_payment_without_document = self.obj.payments.exists() and not self.obj.get_documents()[1].exists() + if has_payment_without_document: + self._add_missing_attr_name(_("Documents")) + def _check_responsible_data(self): """ Checks data quality of related Responsibility diff --git a/intervention/views/intervention.py b/intervention/views/intervention.py index 524c2c75..1bca8968 100644 --- a/intervention/views/intervention.py +++ b/intervention/views/intervention.py @@ -157,6 +157,8 @@ def detail_view(request: HttpRequest, id: str): if last_checked: last_checked_tooltip = DATA_CHECKED_PREVIOUSLY_TEMPLATE.format(last_checked.get_timestamp_str_formatted(), last_checked.user) + has_payment_without_document = intervention.payments.exists() and not intervention.get_documents()[1].exists() + context = { "obj": intervention, "last_checked": last_checked, @@ -168,6 +170,7 @@ def detail_view(request: HttpRequest, id: str): "is_zb_member": in_group(_user, ZB_GROUP), "is_ets_member": in_group(_user, ETS_GROUP), "LANIS_LINK": intervention.get_LANIS_link(), + "has_payment_without_document": has_payment_without_document, TAB_TITLE_IDENTIFIER: f"{intervention.identifier} - {intervention.title}", } diff --git a/konova/filters/mixins/geo_reference.py b/konova/filters/mixins/geo_reference.py index eacf5c5b..71fa41f5 100644 --- a/konova/filters/mixins/geo_reference.py +++ b/konova/filters/mixins/geo_reference.py @@ -46,7 +46,7 @@ class GeoReferencedTableFilterMixin(django_filters.FilterSet): ), ) # Parcel - p = django_filters.CharFilter( + p = django_filters.NumberFilter( method="filter_parcel", label=_(""), label_suffix=_(""), @@ -59,7 +59,7 @@ class GeoReferencedTableFilterMixin(django_filters.FilterSet): ), ) # Parcel counter - pc = django_filters.CharFilter( + pc = django_filters.NumberFilter( method="filter_parcel_counter", label=_(""), label_suffix=_(""), @@ -73,7 +73,7 @@ class GeoReferencedTableFilterMixin(django_filters.FilterSet): ) # Parcel counter - pn = django_filters.CharFilter( + pn = django_filters.NumberFilter( method="filter_parcel_number", label=_(""), label_suffix=_(""), @@ -165,7 +165,6 @@ class GeoReferencedTableFilterMixin(django_filters.FilterSet): Returns: """ - value = value.replace("-", "") queryset = self._filter_parcel_reference( queryset, Q(flr=value), @@ -183,7 +182,6 @@ class GeoReferencedTableFilterMixin(django_filters.FilterSet): Returns: """ - value = value.replace("-", "") queryset = self._filter_parcel_reference( queryset, Q(flrstck_zhlr=value) @@ -201,7 +199,6 @@ class GeoReferencedTableFilterMixin(django_filters.FilterSet): Returns: """ - value = value.replace("-", "") queryset = self._filter_parcel_reference( queryset, Q(flrstck_nnr=value), diff --git a/konova/models/object.py b/konova/models/object.py index 015d34ef..a1c8c9c2 100644 --- a/konova/models/object.py +++ b/konova/models/object.py @@ -434,8 +434,16 @@ class CheckableObjectMixin(models.Model): class ShareableObjectMixin(models.Model): # Users having access on this object - users = models.ManyToManyField("user.User", help_text="Users having access (data shared with)") - teams = models.ManyToManyField("user.Team", help_text="Teams having access (data shared with)") + users = models.ManyToManyField( + "user.User", + help_text="Users having access (data shared with)", + blank=True + ) + teams = models.ManyToManyField( + "user.Team", + help_text="Teams having access (data shared with)", + blank=True + ) access_token = models.CharField( max_length=255, null=True, diff --git a/locale/de/LC_MESSAGES/django.mo b/locale/de/LC_MESSAGES/django.mo index 9f50fc49..422ac7b6 100644 Binary files a/locale/de/LC_MESSAGES/django.mo and b/locale/de/LC_MESSAGES/django.mo differ diff --git a/locale/de/LC_MESSAGES/django.po b/locale/de/LC_MESSAGES/django.po index 9e41e2b3..96bfa072 100644 --- a/locale/de/LC_MESSAGES/django.po +++ b/locale/de/LC_MESSAGES/django.po @@ -43,7 +43,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-10-11 16:39+0200\n" +"POT-Creation-Date: 2022-11-16 13:36+0100\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -204,7 +204,7 @@ msgstr "Geprüft" #: compensation/templates/compensation/detail/compensation/view.html:93 #: compensation/templates/compensation/detail/eco_account/includes/deductions.html:31 #: compensation/templates/compensation/detail/eco_account/view.html:45 -#: ema/tables.py:44 ema/templates/ema/detail/view.html:35 +#: ema/tables.py:41 ema/templates/ema/detail/view.html:35 #: intervention/tables.py:44 #: intervention/templates/intervention/detail/view.html:87 #: user/models/user_action.py:22 @@ -357,7 +357,7 @@ msgid "Show only unrecorded" msgstr "Nur unverzeichnete anzeigen" #: compensation/forms/compensation.py:30 compensation/tables/compensation.py:23 -#: compensation/tables/eco_account.py:23 ema/tables.py:29 +#: compensation/tables/eco_account.py:23 ema/tables.py:26 #: intervention/forms/intervention.py:29 intervention/tables.py:23 #: intervention/templates/intervention/detail/includes/compensations.html:30 msgid "Identifier" @@ -376,12 +376,12 @@ msgstr "Automatisch generiert" #: compensation/templates/compensation/detail/eco_account/view.html:32 #: compensation/templates/compensation/report/compensation/report.html:12 #: compensation/templates/compensation/report/eco_account/report.html:12 -#: ema/tables.py:34 ema/templates/ema/detail/includes/documents.html:28 +#: ema/tables.py:31 ema/templates/ema/detail/includes/documents.html:28 #: ema/templates/ema/detail/view.html:31 #: ema/templates/ema/report/report.html:12 #: intervention/forms/intervention.py:41 intervention/tables.py:28 #: intervention/templates/intervention/detail/includes/compensations.html:33 -#: intervention/templates/intervention/detail/includes/documents.html:28 +#: intervention/templates/intervention/detail/includes/documents.html:33 #: intervention/templates/intervention/detail/view.html:31 #: intervention/templates/intervention/report/report.html:12 #: konova/forms/modals/document_form.py:24 @@ -411,7 +411,7 @@ msgstr "Kompensation XY; Flur ABC" #: ema/templates/ema/detail/includes/documents.html:34 #: intervention/forms/intervention.py:199 #: intervention/forms/modals/revocation.py:45 -#: intervention/templates/intervention/detail/includes/documents.html:34 +#: intervention/templates/intervention/detail/includes/documents.html:39 #: intervention/templates/intervention/detail/includes/payments.html:34 #: intervention/templates/intervention/detail/includes/revocation.html:38 #: konova/forms/modals/document_form.py:59 @@ -473,13 +473,15 @@ msgstr "Neues Ökokonto" msgid "Eco-Account XY; Location ABC" msgstr "Ökokonto XY; Flur ABC" -#: compensation/forms/eco_account.py:141 +#: compensation/forms/eco_account.py:143 msgid "Edit Eco-Account" msgstr "Ökokonto bearbeiten" -#: compensation/forms/eco_account.py:224 +#: compensation/forms/eco_account.py:228 msgid "The account can not be removed, since there are still deductions." -msgstr "Das Ökokonto kann nicht entfernt werden, da hierzu noch Abbuchungen vorliegen." +msgstr "" +"Das Ökokonto kann nicht entfernt werden, da hierzu noch Abbuchungen " +"vorliegen." #: compensation/forms/mixins.py:37 #: compensation/templates/compensation/detail/eco_account/view.html:63 @@ -754,54 +756,42 @@ msgstr "" "wollen. Kontaktieren Sie die für die Abbuchungen verantwortlichen Nutzer!" #: compensation/tables/compensation.py:33 compensation/tables/eco_account.py:33 -#: ema/tables.py:39 intervention/tables.py:33 +#: ema/tables.py:36 intervention/tables.py:33 #: konova/filters/mixins/geo_reference.py:42 msgid "Parcel gmrkng" msgstr "Gemarkung" #: compensation/tables/compensation.py:50 compensation/tables/eco_account.py:54 -#: ema/tables.py:50 intervention/tables.py:50 +#: ema/tables.py:47 intervention/tables.py:50 msgid "Editable" msgstr "Freigegeben" #: compensation/tables/compensation.py:56 compensation/tables/eco_account.py:60 -#: ema/tables.py:56 intervention/tables.py:56 +#: ema/tables.py:53 intervention/tables.py:56 msgid "Last edit" msgstr "Zuletzt bearbeitet" #: compensation/tables/compensation.py:87 compensation/tables/eco_account.py:92 -#: ema/tables.py:89 intervention/tables.py:87 +#: ema/tables.py:86 intervention/tables.py:87 msgid "Open {}" msgstr "Öffne {}" -#: compensation/tables/compensation.py:163 +#: compensation/tables/compensation.py:141 #: compensation/templates/compensation/detail/compensation/view.html:96 #: compensation/templates/compensation/detail/eco_account/includes/deductions.html:58 #: compensation/templates/compensation/detail/eco_account/view.html:48 -#: ema/tables.py:130 ema/templates/ema/detail/view.html:38 -#: intervention/tables.py:161 +#: ema/tables.py:105 ema/templates/ema/detail/view.html:38 +#: intervention/tables.py:139 #: intervention/templates/intervention/detail/view.html:90 msgid "Not recorded yet" msgstr "Noch nicht verzeichnet" -#: compensation/tables/compensation.py:166 -#: compensation/tables/eco_account.py:153 ema/tables.py:133 -#: intervention/tables.py:164 +#: compensation/tables/compensation.py:144 +#: compensation/tables/eco_account.py:131 ema/tables.py:108 +#: intervention/tables.py:142 msgid "Recorded on {} by {}" msgstr "Am {} von {} verzeichnet worden" -#: compensation/tables/compensation.py:186 -#: compensation/tables/eco_account.py:175 ema/tables.py:154 -#: intervention/tables.py:185 -msgid "Full access granted" -msgstr "Für Sie freigegeben - Datensatz kann bearbeitet werden" - -#: compensation/tables/compensation.py:186 -#: compensation/tables/eco_account.py:175 ema/tables.py:154 -#: intervention/tables.py:185 -msgid "Access not granted" -msgstr "Nicht freigegeben - Datensatz nur lesbar" - #: compensation/tables/eco_account.py:38 #: compensation/templates/compensation/detail/eco_account/view.html:36 #: konova/templates/konova/widgets/progressbar.html:3 @@ -812,7 +802,7 @@ msgstr "Verfügbar" msgid "Eco Accounts" msgstr "Ökokonten" -#: compensation/tables/eco_account.py:150 +#: compensation/tables/eco_account.py:128 msgid "Not recorded yet. Can not be used for deductions, yet." msgstr "" "Noch nicht verzeichnet. Kann noch nicht für Abbuchungen genutzt werden." @@ -861,7 +851,7 @@ msgstr "Menge" #: ema/templates/ema/detail/includes/states-before.html:40 #: intervention/templates/intervention/detail/includes/compensations.html:38 #: intervention/templates/intervention/detail/includes/deductions.html:39 -#: intervention/templates/intervention/detail/includes/documents.html:39 +#: intervention/templates/intervention/detail/includes/documents.html:44 #: intervention/templates/intervention/detail/includes/payments.html:39 #: intervention/templates/intervention/detail/includes/revocation.html:43 #: templates/log.html:10 user/templates/user/team/index.html:33 @@ -995,7 +985,7 @@ msgstr "Neues Dokument hinzufügen" #: compensation/templates/compensation/detail/compensation/includes/documents.html:31 #: compensation/templates/compensation/detail/eco_account/includes/documents.html:31 #: ema/templates/ema/detail/includes/documents.html:31 -#: intervention/templates/intervention/detail/includes/documents.html:31 +#: intervention/templates/intervention/detail/includes/documents.html:36 #: konova/forms/modals/document_form.py:34 msgid "Created on" msgstr "Erstellt" @@ -1003,7 +993,7 @@ msgstr "Erstellt" #: compensation/templates/compensation/detail/compensation/includes/documents.html:63 #: compensation/templates/compensation/detail/eco_account/includes/documents.html:61 #: ema/templates/ema/detail/includes/documents.html:61 -#: intervention/templates/intervention/detail/includes/documents.html:65 +#: intervention/templates/intervention/detail/includes/documents.html:70 #: konova/forms/modals/document_form.py:139 msgid "Edit document" msgstr "Dokument bearbeiten" @@ -1011,7 +1001,7 @@ msgstr "Dokument bearbeiten" #: compensation/templates/compensation/detail/compensation/includes/documents.html:66 #: compensation/templates/compensation/detail/eco_account/includes/documents.html:64 #: ema/templates/ema/detail/includes/documents.html:64 -#: intervention/templates/intervention/detail/includes/documents.html:68 +#: intervention/templates/intervention/detail/includes/documents.html:73 msgid "Remove document" msgstr "Dokument löschen" @@ -1287,8 +1277,8 @@ msgid "Compensation {} edited" msgstr "Kompensation {} bearbeitet" #: compensation/views/compensation/compensation.py:185 -#: compensation/views/eco_account/eco_account.py:159 ema/views/ema.py:211 -#: intervention/views/intervention.py:225 +#: compensation/views/eco_account/eco_account.py:159 ema/views/ema.py:210 +#: intervention/views/intervention.py:228 msgid "Edit {}" msgstr "Bearbeite {}" @@ -1314,7 +1304,7 @@ msgstr "Ökokonto {} bearbeitet" msgid "Eco-account removed" msgstr "Ökokonto entfernt" -#: ema/forms.py:42 ema/views/ema.py:94 +#: ema/forms.py:42 ema/views/ema.py:93 msgid "New EMA" msgstr "Neue EMA hinzufügen" @@ -1322,11 +1312,11 @@ msgstr "Neue EMA hinzufügen" msgid "Edit EMA" msgstr "Bearbeite EMA" -#: ema/tables.py:65 templates/navbars/navbar.html:43 +#: ema/tables.py:62 templates/navbars/navbar.html:43 msgid "Payment funded compensations" msgstr "Ersatzzahlungsmaßnahmen (EMA)" -#: ema/tables.py:66 +#: ema/tables.py:63 msgid "EMA explanation" msgstr "" "EMA sind Kompensationen, die durch Ersatzzahlungen finanziert wurden. " @@ -1334,7 +1324,7 @@ msgstr "" "Maßnahmen aus Ersatzzahlungen, die nach 2015 rechtskräftig wurden, werden " "durch die Stiftung Natur und Umwelt verwaltet." -#: ema/tables.py:89 templates/navbars/navbar.html:43 +#: ema/tables.py:86 templates/navbars/navbar.html:43 msgid "EMA" msgstr "" @@ -1342,19 +1332,19 @@ msgstr "" msgid "Payment funded compensation" msgstr "Ersatzzahlungsmaßnahme" -#: ema/views/ema.py:51 +#: ema/views/ema.py:50 msgid "EMAs - Overview" msgstr "EMAs - Übersicht" -#: ema/views/ema.py:84 +#: ema/views/ema.py:83 msgid "EMA {} added" msgstr "EMA {} hinzugefügt" -#: ema/views/ema.py:201 +#: ema/views/ema.py:200 msgid "EMA {} edited" msgstr "EMA {} bearbeitet" -#: ema/views/ema.py:235 +#: ema/views/ema.py:234 msgid "EMA removed" msgstr "EMA entfernt" @@ -1564,6 +1554,13 @@ msgstr "Ökokonto gelöscht! Abbuchung ungültig!" msgid "Eco-account not recorded! Deduction invalid!" msgstr "Ökokonto nicht verzeichnet! Abbuchung ungültig!" +#: intervention/templates/intervention/detail/includes/documents.html:25 +msgid "" +"You entered a payment. Please upload the legal document which defines the " +"payment`s amount." +msgstr "" +"Sie haben Ersatzzahlungen angegeben. Laden Sie bitte den Zahlungsbescheid als Dokument hoch." + #: intervention/templates/intervention/detail/includes/payments.html:8 #: intervention/templates/intervention/report/report.html:69 msgid "Payments" @@ -1648,11 +1645,11 @@ msgstr "Eingriffe - Übersicht" msgid "Intervention {} added" msgstr "Eingriff {} hinzugefügt" -#: intervention/views/intervention.py:213 +#: intervention/views/intervention.py:216 msgid "Intervention {} edited" msgstr "Eingriff {} bearbeitet" -#: intervention/views/intervention.py:250 +#: intervention/views/intervention.py:253 msgid "{} removed" msgstr "{} entfernt" @@ -1686,7 +1683,7 @@ msgid "Search for file number" msgstr "Nach Aktenzeichen suchen" #: konova/filters/mixins/geo_reference.py:29 -#: konova/templates/konova/includes/parcels/parcel_table_frame.html:18 +#: konova/templates/konova/includes/parcels/parcel_table_frame.html:19 msgid "District" msgstr "Kreis" @@ -1699,7 +1696,7 @@ msgid "Search for parcel gmrkng" msgstr "Nach Gemarkung suchen" #: konova/filters/mixins/geo_reference.py:55 -#: konova/templates/konova/includes/parcels/parcel_table_frame.html:39 +#: konova/templates/konova/includes/parcels/parcel_table_frame.html:40 msgid "Parcel" msgstr "Flur" @@ -1708,7 +1705,7 @@ msgid "Search for parcel" msgstr "Nach Flur suchen" #: konova/filters/mixins/geo_reference.py:68 -#: konova/templates/konova/includes/parcels/parcel_table_frame.html:40 +#: konova/templates/konova/includes/parcels/parcel_table_frame.html:41 msgid "Parcel counter" msgstr "Flurstückzähler" @@ -1717,7 +1714,7 @@ msgid "Search for parcel counter" msgstr "Nach Flurstückzähler suchen" #: konova/filters/mixins/geo_reference.py:82 -#: konova/templates/konova/includes/parcels/parcel_table_frame.html:41 +#: konova/templates/konova/includes/parcels/parcel_table_frame.html:42 msgid "Parcel number" msgstr "Flurstücknenner" @@ -1873,37 +1870,37 @@ msgstr "" msgid "English" msgstr "" -#: konova/templates/konova/includes/parcels/parcel_table_frame.html:5 +#: konova/templates/konova/includes/parcels/parcel_table_frame.html:6 msgid "Parcels can not be calculated, since no geometry is given." msgstr "" "Flurstücke können nicht berechnet werden, da keine Geometrie eingegeben " "wurde." -#: konova/templates/konova/includes/parcels/parcel_table_frame.html:11 +#: konova/templates/konova/includes/parcels/parcel_table_frame.html:12 msgid "Parcels found" msgstr "Flurstücke" -#: konova/templates/konova/includes/parcels/parcel_table_frame.html:16 +#: konova/templates/konova/includes/parcels/parcel_table_frame.html:17 msgid "Municipal" msgstr "Gemeinde" -#: konova/templates/konova/includes/parcels/parcel_table_frame.html:17 +#: konova/templates/konova/includes/parcels/parcel_table_frame.html:18 msgid "Municipal key" msgstr "Gemeindeschlüssel" -#: konova/templates/konova/includes/parcels/parcel_table_frame.html:19 +#: konova/templates/konova/includes/parcels/parcel_table_frame.html:20 msgid "District key" msgstr "Kreisschlüssel" -#: konova/templates/konova/includes/parcels/parcel_table_frame.html:37 +#: konova/templates/konova/includes/parcels/parcel_table_frame.html:38 msgid "Parcel group" msgstr "Gemarkung" -#: konova/templates/konova/includes/parcels/parcel_table_frame.html:38 +#: konova/templates/konova/includes/parcels/parcel_table_frame.html:39 msgid "Parcel group key" msgstr "Gemarkungsschlüssel" -#: konova/templates/konova/includes/parcels/parcels.html:7 +#: konova/templates/konova/includes/parcels/parcels.html:9 msgid "Spatial reference" msgstr "Raumreferenz" @@ -1951,39 +1948,39 @@ msgstr "In Zwischenablage kopiert" msgid "Search" msgstr "Suchen" -#: konova/utils/mailer.py:68 konova/utils/mailer.py:137 +#: konova/utils/mailer.py:68 konova/utils/mailer.py:143 msgid "{} - Shared access removed" msgstr "{} - Zugriff entzogen" -#: konova/utils/mailer.py:91 konova/utils/mailer.py:114 +#: konova/utils/mailer.py:91 konova/utils/mailer.py:117 msgid "{} - Shared access given" msgstr "{} - Zugriff freigegeben" -#: konova/utils/mailer.py:160 konova/utils/mailer.py:302 +#: konova/utils/mailer.py:169 konova/utils/mailer.py:317 msgid "{} - Shared data unrecorded" msgstr "{} - Freigegebene Daten entzeichnet" -#: konova/utils/mailer.py:183 konova/utils/mailer.py:279 +#: konova/utils/mailer.py:195 konova/utils/mailer.py:294 msgid "{} - Shared data recorded" msgstr "{} - Freigegebene Daten verzeichnet" -#: konova/utils/mailer.py:206 konova/utils/mailer.py:348 +#: konova/utils/mailer.py:221 konova/utils/mailer.py:363 msgid "{} - Shared data checked" msgstr "{} - Freigegebene Daten geprüft" -#: konova/utils/mailer.py:233 konova/utils/mailer.py:376 +#: konova/utils/mailer.py:248 konova/utils/mailer.py:391 msgid "{} - Deduction changed" msgstr "{} - Abbuchung geändert" -#: konova/utils/mailer.py:256 konova/utils/mailer.py:325 +#: konova/utils/mailer.py:271 konova/utils/mailer.py:340 msgid "{} - Shared data deleted" msgstr "{} - Freigegebene Daten gelöscht" -#: konova/utils/mailer.py:397 templates/email/api/verify_token.html:4 +#: konova/utils/mailer.py:412 templates/email/api/verify_token.html:4 msgid "Request for new API token" msgstr "Anfrage für neuen API Token" -#: konova/utils/mailer.py:420 +#: konova/utils/mailer.py:435 msgid "Resubmission - {}" msgstr "Wiedervorlage - {}" @@ -2225,7 +2222,15 @@ msgstr "{} wurde erfolgreich vom Nutzer {} geprüft! {}" msgid "missing" msgstr "fehlend" -#: konova/views/home.py:78 templates/navbars/navbar.html:16 +#: konova/utils/tables.py:218 +msgid "Full access granted" +msgstr "Für Sie freigegeben - Datensatz kann bearbeitet werden" + +#: konova/utils/tables.py:218 +msgid "Access not granted" +msgstr "Nicht freigegeben - Datensatz nur lesbar" + +#: konova/views/home.py:79 templates/navbars/navbar.html:16 msgid "Home" msgstr "Home" @@ -2670,7 +2675,7 @@ msgstr "" msgid "User" msgstr "Nutzer" -#: templates/map/geom_form.html:9 +#: templates/map/geom_form.html:11 templates/table/gmrkng_col.html:4 msgid "No geometry added, yet." msgstr "Keine Geometrie vorhanden" @@ -2725,7 +2730,7 @@ msgstr "" "vorbei. \n" " " -#: templates/table/gmrkng_col.html:6 +#: templates/table/gmrkng_col.html:12 msgid "" "If the geometry is not empty, the parcels are currently recalculated. Please " "refresh this page in a few moments." @@ -2897,35 +2902,27 @@ msgstr "" " " #: user/templates/user/index.html:42 -msgid "Change default configuration for your KSP map" -msgstr "Karteneinstellungen ändern" - -#: user/templates/user/index.html:45 -msgid "Map settings" -msgstr "Karte" - -#: user/templates/user/index.html:50 msgid "Change notification configurations" msgstr "Benachrichtigungseinstellungen ändern" -#: user/templates/user/index.html:53 +#: user/templates/user/index.html:45 msgid "Notification settings" msgstr "Benachrichtigungen" -#: user/templates/user/index.html:58 +#: user/templates/user/index.html:50 msgid "Manage teams" msgstr "" -#: user/templates/user/index.html:61 user/templates/user/team/index.html:19 +#: user/templates/user/index.html:53 user/templates/user/team/index.html:19 #: user/views.py:171 msgid "Teams" msgstr "" -#: user/templates/user/index.html:66 +#: user/templates/user/index.html:58 msgid "See or edit your API token" msgstr "API token einsehen oder neu generieren" -#: user/templates/user/index.html:69 +#: user/templates/user/index.html:61 msgid "API" msgstr "" @@ -4508,6 +4505,12 @@ msgstr "" msgid "Unable to connect to qpid with SASL mechanism %s" msgstr "" +#~ msgid "Change default configuration for your KSP map" +#~ msgstr "Karteneinstellungen ändern" + +#~ msgid "Map settings" +#~ msgstr "Karte" + #~ msgid "There are errors on this intervention:" #~ msgstr "Es liegen Fehler in diesem Eingriff vor:"