Eco Account deduction

* adds deductable_surface to EcoAccount model to provide an easy way to change the deductable amount from an account -> depends on external funding e.g. with AktionBlau or similar
* adds overview of deducted and deductable volume to detail view
* adds check to eco account model, so the deductable_surface can never be larger than the total amount of after_state surface sum
* adds german formating for python logic based number formating
* adds/updates translations
This commit is contained in:
mipel 2021-09-17 13:33:51 +02:00
parent e1ffc53958
commit fbcb2d9afd
5 changed files with 236 additions and 168 deletions

View File

@ -9,6 +9,7 @@ import shutil
from django.contrib.auth.models import User from django.contrib.auth.models import User
from django.contrib.gis.db import models from django.contrib.gis.db import models
from django.core.exceptions import ValidationError
from django.core.validators import MinValueValidator from django.core.validators import MinValueValidator
from django.db.models import Sum, QuerySet from django.db.models import Sum, QuerySet
from django.utils.translation import gettext_lazy as _ from django.utils.translation import gettext_lazy as _
@ -281,9 +282,22 @@ class EcoAccount(AbstractCompensation):
related_name="+" related_name="+"
) )
deductable_surface = models.FloatField(
blank=True,
null=True,
help_text="Amount of deductable surface - can be lower than the total surface due to deduction limitations",
default=0,
)
def __str__(self): def __str__(self):
return "{}".format(self.identifier) return "{}".format(self.identifier)
def clean(self):
# Deductable surface can not be larger than added states after surface
after_state_sum = self.get_state_after_surface_sum()
if self.deductable_surface > after_state_sum:
raise ValidationError(_("Deductable surface can not be larger than existing surfaces in after states"))
def save(self, *args, **kwargs): def save(self, *args, **kwargs):
if self.identifier is None or len(self.identifier) == 0: if self.identifier is None or len(self.identifier) == 0:
# Create new identifier # Create new identifier
@ -293,15 +307,34 @@ class EcoAccount(AbstractCompensation):
self.identifier = new_id self.identifier = new_id
super().save(*args, **kwargs) super().save(*args, **kwargs)
@property
def deductions_surface_sum(self) -> float:
""" Shortcut for get_deductions_surface.
Can be used in templates
Returns:
sum_surface (float)
"""
return self.get_deductions_surface()
def get_deductions_surface(self) -> float: def get_deductions_surface(self) -> float:
""" Calculates the account's deductions sum surface """ Calculates the account's deductions surface sum
Returns: Returns:
sum_surface (float) sum_surface (float)
""" """
return self.deductions.all().aggregate(Sum("surface"))["surface__sum"] or 0 return self.deductions.all().aggregate(Sum("surface"))["surface__sum"] or 0
def get_available_rest(self, as_percentage: bool = False): def get_state_after_surface_sum(self) -> float:
""" Calculates the account's after state surface sum
Returns:
sum_surface (float)
"""
return self.after_states.all().aggregate(Sum("surface"))["surface__sum"] or 0
def get_available_rest(self, as_percentage: bool = False) -> float:
""" Calculates available rest surface of the eco account """ Calculates available rest surface of the eco account
Args: Args:
@ -310,17 +343,16 @@ class EcoAccount(AbstractCompensation):
Returns: Returns:
""" """
ret_val = 0
deductions = self.deductions.filter( deductions = self.deductions.filter(
intervention__deleted=None, intervention__deleted=None,
) )
deductions_surfaces = deductions.aggregate(Sum("surface"))["surface__sum"] or 0 deductions_surfaces = deductions.aggregate(Sum("surface"))["surface__sum"] or 0
after_states_surfaces = self.after_states.all().aggregate(Sum("surface"))["surface__sum"] or deductions_surfaces ## no division by zero available_surfaces = self.deductable_surface or deductions_surfaces ## no division by zero
ret_val = after_states_surfaces - deductions_surfaces ret_val = available_surfaces - deductions_surfaces
if as_percentage: if as_percentage:
if after_states_surfaces > 0: if available_surfaces > 0:
ret_val = int((ret_val / after_states_surfaces) * 100) ret_val = int((ret_val / available_surfaces) * 100)
else: else:
ret_val = 0 ret_val = 0
return ret_val return ret_val

View File

@ -33,6 +33,7 @@
<tr> <tr>
<th scope="row">{% trans 'Available' %}</th> <th scope="row">{% trans 'Available' %}</th>
<td class="align-middle"> <td class="align-middle">
{{obj.deductions_surface_sum|floatformat:2}} / {{obj.deductable_surface|floatformat:2}} m²
{% with available as value %} {% with available as value %}
{% include 'konova/custom_widgets/progressbar.html' %} {% include 'konova/custom_widgets/progressbar.html' %}
{% endwith %} {% endwith %}

View File

@ -18,6 +18,7 @@ from compensation.models import EcoAccountDeduction, EcoAccount
from intervention.models import Intervention, Revocation, RevocationDocument from intervention.models import Intervention, Revocation, RevocationDocument
from konova.forms import BaseForm, BaseModalForm from konova.forms import BaseForm, BaseModalForm
from konova.settings import DEFAULT_LAT, DEFAULT_LON, DEFAULT_ZOOM, ZB_GROUP, ETS_GROUP from konova.settings import DEFAULT_LAT, DEFAULT_LON, DEFAULT_ZOOM, ZB_GROUP, ETS_GROUP
from konova.utils.general import format_german_float
from konova.utils.messenger import Messenger from konova.utils.messenger import Messenger
from konova.utils.user_checks import in_group from konova.utils.user_checks import in_group
from organisation.models import Organisation from organisation.models import Organisation
@ -545,7 +546,11 @@ class NewDeductionForm(BaseModalForm):
if not is_valid_surface: if not is_valid_surface:
self.add_error( self.add_error(
"surface", "surface",
_("The account {} has not enough surface for a deduction of {} m². There are only {} m² left").format(acc.identifier, form_surface, rest_surface), _("The account {} has not enough surface for a deduction of {} m². There are only {} m² left").format(
acc.identifier,
format_german_float(form_surface),
format_german_float(rest_surface),
),
) )
return is_valid_surface and super_result return is_valid_surface and super_result

21
konova/utils/general.py Normal file
View File

@ -0,0 +1,21 @@
"""
Author: Michel Peltriaux
Organization: Struktur- und Genehmigungsdirektion Nord, Rhineland-Palatinate, Germany
Contact: michel.peltriaux@sgdnord.rlp.de
Created on: 17.09.21
"""
def format_german_float(num) -> str:
""" Writes a float into a string based on german float notation
10000.000 --> "10.000,00"
Args:
num (float): The number
Returns:
num (str): The number as german Gleitkommazahl
"""
return format(num, "0,.2f").replace(",", "X").replace(".", ",").replace("X", ".")

View File

@ -7,16 +7,16 @@
#: compensation/forms.py:67 compensation/forms.py:264 compensation/forms.py:345 #: compensation/forms.py:67 compensation/forms.py:264 compensation/forms.py:345
#: intervention/filters.py:26 intervention/filters.py:40 #: intervention/filters.py:26 intervention/filters.py:40
#: intervention/filters.py:47 intervention/filters.py:48 #: intervention/filters.py:47 intervention/filters.py:48
#: intervention/forms.py:322 intervention/forms.py:334 #: intervention/forms.py:321 intervention/forms.py:333
#: intervention/forms.py:347 konova/forms.py:108 konova/forms.py:252 #: intervention/forms.py:346 konova/forms.py:108 konova/forms.py:252
#: konova/forms.py:287 konova/forms.py:292 konova/forms.py:304 #: konova/forms.py:287 konova/forms.py:292 konova/forms.py:304
#: konova/forms.py:316 konova/forms.py:329 user/forms.py:38 #: konova/forms.py:316 konova/forms.py:336 user/forms.py:38
#, fuzzy #, fuzzy
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: PACKAGE VERSION\n" "Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-08-26 14:59+0200\n" "POT-Creation-Date: 2021-09-17 12:53+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n" "Language-Team: LANGUAGE <LL@li.org>\n"
@ -53,16 +53,16 @@ msgstr "Zahlung wird an diesem Datum erwartet"
#: ema/templates/ema/detail/includes/actions.html:34 #: ema/templates/ema/detail/includes/actions.html:34
#: ema/templates/ema/detail/includes/deadlines.html:34 #: ema/templates/ema/detail/includes/deadlines.html:34
#: ema/templates/ema/detail/includes/documents.html:31 #: ema/templates/ema/detail/includes/documents.html:31
#: intervention/forms.py:346 #: intervention/forms.py:345
#: intervention/templates/intervention/detail/includes/documents.html:31 #: intervention/templates/intervention/detail/includes/documents.html:31
#: intervention/templates/intervention/detail/includes/payments.html:34 #: intervention/templates/intervention/detail/includes/payments.html:34
#: intervention/templates/intervention/detail/includes/revocation.html:35 #: intervention/templates/intervention/detail/includes/revocation.html:38
#: konova/forms.py:315 #: konova/forms.py:315
msgid "Comment" msgid "Comment"
msgstr "Kommentar" msgstr "Kommentar"
#: compensation/forms.py:68 compensation/forms.py:265 compensation/forms.py:346 #: compensation/forms.py:68 compensation/forms.py:265 compensation/forms.py:346
#: intervention/forms.py:348 konova/forms.py:317 #: intervention/forms.py:347 konova/forms.py:317
msgid "Additional comment, maximum {} letters" msgid "Additional comment, maximum {} letters"
msgstr "Zusätzlicher Kommentar, maximal {} Zeichen" msgstr "Zusätzlicher Kommentar, maximal {} Zeichen"
@ -133,7 +133,7 @@ msgstr "Fristart wählen"
#: compensation/templates/compensation/detail/compensation/includes/deadlines.html:31 #: compensation/templates/compensation/detail/compensation/includes/deadlines.html:31
#: compensation/templates/compensation/detail/eco_account/includes/deadlines.html:31 #: compensation/templates/compensation/detail/eco_account/includes/deadlines.html:31
#: ema/templates/ema/detail/includes/deadlines.html:31 #: ema/templates/ema/detail/includes/deadlines.html:31
#: intervention/forms.py:321 #: intervention/forms.py:320
msgid "Date" msgid "Date"
msgstr "Datum" msgstr "Datum"
@ -169,20 +169,20 @@ msgstr "Maßnahmentyp wählen"
#: compensation/templates/compensation/detail/compensation/includes/states-before.html:39 #: compensation/templates/compensation/detail/compensation/includes/states-before.html:39
#: compensation/templates/compensation/detail/eco_account/includes/actions.html:37 #: compensation/templates/compensation/detail/eco_account/includes/actions.html:37
#: compensation/templates/compensation/detail/eco_account/includes/deadlines.html:37 #: compensation/templates/compensation/detail/eco_account/includes/deadlines.html:37
#: compensation/templates/compensation/detail/eco_account/includes/deductions.html:40
#: compensation/templates/compensation/detail/eco_account/includes/documents.html:34 #: compensation/templates/compensation/detail/eco_account/includes/documents.html:34
#: compensation/templates/compensation/detail/eco_account/includes/states-after.html:39 #: compensation/templates/compensation/detail/eco_account/includes/states-after.html:39
#: compensation/templates/compensation/detail/eco_account/includes/states-before.html:39 #: compensation/templates/compensation/detail/eco_account/includes/states-before.html:39
#: compensation/templates/compensation/detail/eco_account/includes/deductions.html:37
#: ema/templates/ema/detail/includes/actions.html:37 #: ema/templates/ema/detail/includes/actions.html:37
#: ema/templates/ema/detail/includes/deadlines.html:37 #: ema/templates/ema/detail/includes/deadlines.html:37
#: ema/templates/ema/detail/includes/documents.html:34 #: ema/templates/ema/detail/includes/documents.html:34
#: ema/templates/ema/detail/includes/states-after.html:39 #: ema/templates/ema/detail/includes/states-after.html:39
#: ema/templates/ema/detail/includes/states-before.html:39 #: ema/templates/ema/detail/includes/states-before.html:39
#: intervention/templates/intervention/detail/includes/compensations.html:36 #: intervention/templates/intervention/detail/includes/compensations.html:36
#: intervention/templates/intervention/detail/includes/deductions.html:37
#: intervention/templates/intervention/detail/includes/documents.html:34 #: intervention/templates/intervention/detail/includes/documents.html:34
#: intervention/templates/intervention/detail/includes/payments.html:37 #: intervention/templates/intervention/detail/includes/payments.html:37
#: intervention/templates/intervention/detail/includes/revocation.html:41 #: intervention/templates/intervention/detail/includes/revocation.html:41
#: intervention/templates/intervention/detail/includes/deductions.html:37
#: templates/log.html:10 #: templates/log.html:10
msgid "Action" msgid "Action"
msgstr "Aktionen" msgstr "Aktionen"
@ -196,7 +196,7 @@ msgid "Select the unit"
msgstr "Einheit wählen" msgstr "Einheit wählen"
#: compensation/forms.py:334 #: compensation/forms.py:334
#: compensation/templates/compensation/detail/eco_account/includes/deductions.html:31 #: compensation/templates/compensation/detail/eco_account/includes/deductions.html:34
#: intervention/templates/intervention/detail/includes/deductions.html:31 #: intervention/templates/intervention/detail/includes/deductions.html:31
msgid "Amount" msgid "Amount"
msgstr "Menge" msgstr "Menge"
@ -217,32 +217,37 @@ msgstr "Geben Sie die Daten der neuen Maßnahme ein"
msgid "Added action" msgid "Added action"
msgstr "Maßnahme hinzugefügt" msgstr "Maßnahme hinzugefügt"
#: compensation/models.py:67 #: compensation/models.py:77
msgid "cm" msgid "cm"
msgstr "" msgstr ""
#: compensation/models.py:68 #: compensation/models.py:78
msgid "m" msgid "m"
msgstr "" msgstr ""
#: compensation/models.py:69 #: compensation/models.py:79
msgid "km" msgid "km"
msgstr "" msgstr ""
#: compensation/models.py:70 #: compensation/models.py:80
msgid "m²" msgid "m²"
msgstr "" msgstr ""
#: compensation/models.py:71 #: compensation/models.py:81
msgid "ha" msgid "ha"
msgstr "" msgstr ""
#: compensation/models.py:72 #: compensation/models.py:82
msgid "Pieces" msgid "Pieces"
msgstr "Stück" msgstr "Stück"
#: compensation/models.py:299
msgid ""
"Deductable surface can not be larger than existing surfaces in after states"
msgstr ""
#: compensation/tables.py:24 compensation/tables.py:164 ema/tables.py:28 #: compensation/tables.py:24 compensation/tables.py:164 ema/tables.py:28
#: intervention/forms.py:30 intervention/tables.py:24 #: intervention/forms.py:29 intervention/tables.py:23
#: intervention/templates/intervention/detail/includes/compensations.html:30 #: intervention/templates/intervention/detail/includes/compensations.html:30
msgid "Identifier" msgid "Identifier"
msgstr "Kennung" msgstr "Kennung"
@ -253,8 +258,8 @@ msgstr "Kennung"
#: compensation/templates/compensation/detail/eco_account/includes/documents.html:28 #: compensation/templates/compensation/detail/eco_account/includes/documents.html:28
#: compensation/templates/compensation/detail/eco_account/view.html:31 #: compensation/templates/compensation/detail/eco_account/view.html:31
#: ema/tables.py:33 ema/templates/ema/detail/includes/documents.html:28 #: ema/tables.py:33 ema/templates/ema/detail/includes/documents.html:28
#: ema/templates/ema/detail/view.html:24 intervention/forms.py:37 #: ema/templates/ema/detail/view.html:24 intervention/forms.py:36
#: intervention/tables.py:29 #: intervention/tables.py:28
#: intervention/templates/intervention/detail/includes/compensations.html:33 #: intervention/templates/intervention/detail/includes/compensations.html:33
#: intervention/templates/intervention/detail/includes/documents.html:28 #: intervention/templates/intervention/detail/includes/documents.html:28
#: intervention/templates/intervention/detail/view.html:31 konova/forms.py:286 #: intervention/templates/intervention/detail/view.html:31 konova/forms.py:286
@ -263,27 +268,28 @@ msgstr "Bezeichnung"
#: compensation/tables.py:34 #: compensation/tables.py:34
#: compensation/templates/compensation/detail/compensation/view.html:43 #: compensation/templates/compensation/detail/compensation/view.html:43
#: intervention/tables.py:34 #: intervention/tables.py:33
#: intervention/templates/intervention/detail/view.html:63 user/models.py:48 #: intervention/templates/intervention/detail/view.html:63 user/models.py:48
msgid "Checked" msgid "Checked"
msgstr "Geprüft" msgstr "Geprüft"
#: compensation/tables.py:40 compensation/tables.py:179 #: compensation/tables.py:40 compensation/tables.py:179
#: compensation/templates/compensation/detail/compensation/view.html:57 #: compensation/templates/compensation/detail/compensation/view.html:57
#: compensation/templates/compensation/detail/eco_account/view.html:43 #: compensation/templates/compensation/detail/eco_account/includes/deductions.html:31
#: compensation/templates/compensation/detail/eco_account/view.html:44
#: ema/tables.py:38 ema/templates/ema/detail/view.html:28 #: ema/tables.py:38 ema/templates/ema/detail/view.html:28
#: intervention/tables.py:40 #: intervention/tables.py:39
#: intervention/templates/intervention/detail/view.html:77 user/models.py:49 #: intervention/templates/intervention/detail/view.html:77 user/models.py:49
msgid "Recorded" msgid "Recorded"
msgstr "Verzeichnet" msgstr "Verzeichnet"
#: compensation/tables.py:46 compensation/tables.py:185 ema/tables.py:44 #: compensation/tables.py:46 compensation/tables.py:185 ema/tables.py:44
#: intervention/tables.py:52 #: intervention/tables.py:51
msgid "Editable" msgid "Editable"
msgstr "Freigegeben" msgstr "Freigegeben"
#: compensation/tables.py:52 compensation/tables.py:191 ema/tables.py:50 #: compensation/tables.py:52 compensation/tables.py:191 ema/tables.py:50
#: intervention/tables.py:58 #: intervention/tables.py:57
msgid "Last edit" msgid "Last edit"
msgstr "Zuletzt bearbeitet" msgstr "Zuletzt bearbeitet"
@ -293,7 +299,7 @@ msgid "Compensations"
msgstr "Kompensationen" msgstr "Kompensationen"
#: compensation/tables.py:83 compensation/tables.py:222 ema/tables.py:82 #: compensation/tables.py:83 compensation/tables.py:222 ema/tables.py:82
#: intervention/tables.py:89 #: intervention/tables.py:88
msgid "Open {}" msgid "Open {}"
msgstr "Öffne {}" msgstr "Öffne {}"
@ -303,35 +309,35 @@ msgstr "Öffne {}"
msgid "Compensation" msgid "Compensation"
msgstr "Kompensation" msgstr "Kompensation"
#: compensation/tables.py:104 intervention/tables.py:108 #: compensation/tables.py:104 intervention/tables.py:107
msgid "Not checked yet" msgid "Not checked yet"
msgstr "Noch nicht geprüft" msgstr "Noch nicht geprüft"
#: compensation/tables.py:109 intervention/tables.py:113 #: compensation/tables.py:109 intervention/tables.py:112
msgid "Checked on {} by {}" msgid "Checked on {} by {}"
msgstr "Am {} von {} geprüft worden" msgstr "Am {} von {} geprüft worden"
#: compensation/tables.py:128 #: compensation/tables.py:128
#: compensation/templates/compensation/detail/compensation/view.html:60 #: compensation/templates/compensation/detail/compensation/view.html:60
#: compensation/templates/compensation/detail/eco_account/view.html:46 #: compensation/templates/compensation/detail/eco_account/view.html:47
#: ema/tables.py:101 ema/templates/ema/detail/view.html:31 #: ema/tables.py:101 ema/templates/ema/detail/view.html:31
#: intervention/tables.py:132 #: intervention/models.py:360 intervention/tables.py:131
#: intervention/templates/intervention/detail/view.html:80 #: intervention/templates/intervention/detail/view.html:80
msgid "Not recorded yet" msgid "Not recorded yet"
msgstr "Noch nicht verzeichnet" msgstr "Noch nicht verzeichnet"
#: compensation/tables.py:133 compensation/tables.py:260 ema/tables.py:106 #: compensation/tables.py:133 compensation/tables.py:260 ema/tables.py:106
#: intervention/tables.py:137 #: intervention/models.py:365 intervention/tables.py:136
msgid "Recorded on {} by {}" msgid "Recorded on {} by {}"
msgstr "Am {} von {} verzeichnet worden" msgstr "Am {} von {} verzeichnet worden"
#: compensation/tables.py:156 compensation/tables.py:283 ema/tables.py:129 #: compensation/tables.py:156 compensation/tables.py:283 ema/tables.py:129
#: intervention/tables.py:160 #: intervention/tables.py:159
msgid "Full access granted" msgid "Full access granted"
msgstr "Für Sie freigegeben - Datensatz kann bearbeitet werden" msgstr "Für Sie freigegeben - Datensatz kann bearbeitet werden"
#: compensation/tables.py:156 compensation/tables.py:283 ema/tables.py:129 #: compensation/tables.py:156 compensation/tables.py:283 ema/tables.py:129
#: intervention/tables.py:160 #: intervention/tables.py:159
msgid "Access not granted" msgid "Access not granted"
msgstr "Nicht freigegeben - Datensatz nur lesbar" msgstr "Nicht freigegeben - Datensatz nur lesbar"
@ -439,7 +445,7 @@ msgstr "Frist/Termin hinzufügen"
#: compensation/templates/compensation/detail/compensation/includes/deadlines.html:28 #: compensation/templates/compensation/detail/compensation/includes/deadlines.html:28
#: compensation/templates/compensation/detail/eco_account/includes/deadlines.html:28 #: compensation/templates/compensation/detail/eco_account/includes/deadlines.html:28
#: ema/templates/ema/detail/includes/deadlines.html:28 intervention/forms.py:42 #: ema/templates/ema/detail/includes/deadlines.html:28 intervention/forms.py:41
msgid "Type" msgid "Type"
msgstr "Typ" msgstr "Typ"
@ -460,7 +466,7 @@ msgstr "Dokumente"
#: compensation/templates/compensation/detail/eco_account/includes/documents.html:14 #: compensation/templates/compensation/detail/eco_account/includes/documents.html:14
#: ema/templates/ema/detail/includes/documents.html:14 #: ema/templates/ema/detail/includes/documents.html:14
#: intervention/templates/intervention/detail/includes/documents.html:14 #: intervention/templates/intervention/detail/includes/documents.html:14
#: konova/forms.py:328 #: konova/forms.py:335
msgid "Add new document" msgid "Add new document"
msgstr "Neues Dokument hinzufügen" msgstr "Neues Dokument hinzufügen"
@ -536,7 +542,7 @@ msgstr "Geprüft am "
#: compensation/templates/compensation/detail/compensation/view.html:50 #: compensation/templates/compensation/detail/compensation/view.html:50
#: compensation/templates/compensation/detail/compensation/view.html:64 #: compensation/templates/compensation/detail/compensation/view.html:64
#: compensation/templates/compensation/detail/eco_account/view.html:50 #: compensation/templates/compensation/detail/eco_account/view.html:51
#: ema/templates/ema/detail/view.html:35 #: ema/templates/ema/detail/view.html:35
#: intervention/templates/intervention/detail/view.html:70 #: intervention/templates/intervention/detail/view.html:70
#: intervention/templates/intervention/detail/view.html:84 #: intervention/templates/intervention/detail/view.html:84
@ -544,22 +550,22 @@ msgid "by"
msgstr "von" msgstr "von"
#: compensation/templates/compensation/detail/compensation/view.html:64 #: compensation/templates/compensation/detail/compensation/view.html:64
#: compensation/templates/compensation/detail/eco_account/view.html:50 #: compensation/templates/compensation/detail/eco_account/view.html:51
#: ema/templates/ema/detail/view.html:35 #: ema/templates/ema/detail/view.html:35
#: intervention/templates/intervention/detail/view.html:84 #: intervention/templates/intervention/detail/view.html:84
msgid "Recorded on " msgid "Recorded on "
msgstr "Verzeichnet am" msgstr "Verzeichnet am"
#: compensation/templates/compensation/detail/compensation/view.html:71 #: compensation/templates/compensation/detail/compensation/view.html:71
#: compensation/templates/compensation/detail/eco_account/view.html:69 #: compensation/templates/compensation/detail/eco_account/view.html:70
#: ema/templates/ema/detail/view.html:54 #: ema/templates/ema/detail/view.html:54
#: intervention/templates/intervention/detail/view.html:103 #: intervention/templates/intervention/detail/view.html:103
msgid "Last modified" msgid "Last modified"
msgstr "Zuletzt bearbeitet" msgstr "Zuletzt bearbeitet"
#: compensation/templates/compensation/detail/compensation/view.html:79 #: compensation/templates/compensation/detail/compensation/view.html:79
#: compensation/templates/compensation/detail/eco_account/view.html:77 #: compensation/templates/compensation/detail/eco_account/view.html:78
#: ema/templates/ema/detail/view.html:69 intervention/forms.py:255 #: ema/templates/ema/detail/view.html:69 intervention/forms.py:254
#: intervention/templates/intervention/detail/view.html:111 #: intervention/templates/intervention/detail/view.html:111
msgid "Shared with" msgid "Shared with"
msgstr "Freigegeben für" msgstr "Freigegeben für"
@ -590,40 +596,28 @@ msgstr "Neue Abbuchung hinzufügen"
msgid "Intervention Identifier" msgid "Intervention Identifier"
msgstr "Eingriffskennung" msgstr "Eingriffskennung"
#: compensation/templates/compensation/detail/eco_account/includes/deductions.html:34 #: compensation/templates/compensation/detail/eco_account/includes/deductions.html:37
#: intervention/templates/intervention/detail/includes/deductions.html:34 #: intervention/templates/intervention/detail/includes/deductions.html:34
#: user/models.py:51 #: user/models.py:51
msgid "Created" msgid "Created"
msgstr "Erstellt" msgstr "Erstellt"
#: compensation/templates/compensation/detail/eco_account/includes/deductions.html:43 #: compensation/templates/compensation/detail/eco_account/includes/deductions.html:63
#: intervention/templates/intervention/detail/includes/deductions.html:43
msgid "Eco-account deleted! Deduction invalid!"
msgstr "Ökokonto gelöscht! Abbuchung ungültig!"
#: compensation/templates/compensation/detail/eco_account/includes/deductions.html:43
#: intervention/templates/intervention/detail/includes/deductions.html:43
msgid "Eco-account not recorded! Deduction invalid!"
msgstr "Ökokonto nicht verzeichnet! Abbuchung ungültig!"
#: compensation/templates/compensation/detail/eco_account/includes/deductions.html:56
#: intervention/templates/intervention/detail/includes/deductions.html:56 #: intervention/templates/intervention/detail/includes/deductions.html:56
msgid "Remove Deduction" msgid "Remove Deduction"
msgstr "Abbuchung entfernen" msgstr "Abbuchung entfernen"
#: compensation/templates/compensation/detail/eco_account/view.html:57 #: compensation/templates/compensation/detail/eco_account/view.html:57
#: ema/templates/ema/detail/view.html:42 #: compensation/templates/compensation/detail/eco_account/view.html:61
#: intervention/templates/intervention/detail/view.html:51 #: compensation/templates/compensation/detail/eco_account/view.html:65
msgid "Conservation office" #: ema/templates/ema/detail/view.html:41 ema/templates/ema/detail/view.html:45
msgstr "Naturschutzbehörde" #: ema/templates/ema/detail/view.html:49
#: compensation/templates/compensation/detail/eco_account/view.html:60
#: compensation/templates/compensation/detail/eco_account/view.html:64
#: ema/templates/ema/detail/view.html:45 ema/templates/ema/detail/view.html:49
#: intervention/templates/intervention/detail/view.html:30 #: intervention/templates/intervention/detail/view.html:30
#: intervention/templates/intervention/detail/view.html:34 #: intervention/templates/intervention/detail/view.html:34
#: intervention/templates/intervention/detail/view.html:38 #: intervention/templates/intervention/detail/view.html:38
#: intervention/templates/intervention/detail/view.html:42
#: intervention/templates/intervention/detail/view.html:46 #: intervention/templates/intervention/detail/view.html:46
#: intervention/templates/intervention/detail/view.html:50
#: intervention/templates/intervention/detail/view.html:54 #: intervention/templates/intervention/detail/view.html:54
#: intervention/templates/intervention/detail/view.html:58 #: intervention/templates/intervention/detail/view.html:58
#: intervention/templates/intervention/detail/view.html:90 #: intervention/templates/intervention/detail/view.html:90
@ -631,76 +625,82 @@ msgstr "Naturschutzbehörde"
msgid "Missing" msgid "Missing"
msgstr "Fehlt" msgstr "Fehlt"
#: compensation/templates/compensation/detail/eco_account/view.html:61 #: compensation/templates/compensation/detail/eco_account/view.html:58
#: ema/templates/ema/detail/view.html:42
#: intervention/templates/intervention/detail/view.html:51
msgid "Conservation office"
msgstr "Naturschutzbehörde"
#: compensation/templates/compensation/detail/eco_account/view.html:62
#: ema/templates/ema/detail/view.html:46 #: ema/templates/ema/detail/view.html:46
#: intervention/templates/intervention/detail/view.html:55 #: intervention/templates/intervention/detail/view.html:55
msgid "Conversation office file number" msgid "Conversation office file number"
msgstr "Aktenzeichen Naturschutzbehörde" msgstr "Aktenzeichen Naturschutzbehörde"
#: compensation/templates/compensation/detail/eco_account/view.html:65 #: compensation/templates/compensation/detail/eco_account/view.html:66
#: ema/templates/ema/detail/view.html:50 intervention/forms.py:54 #: ema/templates/ema/detail/view.html:50 intervention/forms.py:53
#: intervention/templates/intervention/detail/view.html:59 #: intervention/templates/intervention/detail/view.html:59
msgid "Intervention handler" msgid "Intervention handler"
msgstr "Eingriffsverursacher" msgstr "Eingriffsverursacher"
#: compensation/views/compensation_views.py:122 #: compensation/views/compensation_views.py:123
#: compensation/views/eco_account_views.py:184 ema/views.py:127 #: compensation/views/eco_account_views.py:190 ema/views.py:128
#: intervention/views.py:336 #: intervention/views.py:391
msgid "Log" msgid "Log"
msgstr "Log" msgstr "Log"
#: compensation/views/compensation_views.py:143 #: compensation/views/compensation_views.py:144
msgid "Compensation removed" msgid "Compensation removed"
msgstr "Kompensation entfernt" msgstr "Kompensation entfernt"
#: compensation/views/compensation_views.py:162 #: compensation/views/compensation_views.py:163
#: compensation/views/eco_account_views.py:283 ema/views.py:249 #: compensation/views/eco_account_views.py:289 ema/views.py:250
#: intervention/views.py:93 #: intervention/views.py:94
msgid "Document added" msgid "Document added"
msgstr "Dokument hinzugefügt" msgstr "Dokument hinzugefügt"
#: compensation/views/compensation_views.py:181 #: compensation/views/compensation_views.py:219
#: compensation/views/eco_account_views.py:227 ema/views.py:193 #: compensation/views/eco_account_views.py:233 ema/views.py:194
msgid "State added" msgid "State added"
msgstr "Zustand hinzugefügt" msgstr "Zustand hinzugefügt"
#: compensation/views/compensation_views.py:200 #: compensation/views/compensation_views.py:238
#: compensation/views/eco_account_views.py:246 ema/views.py:212 #: compensation/views/eco_account_views.py:252 ema/views.py:213
msgid "Action added" msgid "Action added"
msgstr "Maßnahme hinzugefügt" msgstr "Maßnahme hinzugefügt"
#: compensation/views/compensation_views.py:219 #: compensation/views/compensation_views.py:257
#: compensation/views/eco_account_views.py:265 ema/views.py:231 #: compensation/views/eco_account_views.py:271 ema/views.py:232
msgid "Deadline added" msgid "Deadline added"
msgstr "Frist/Termin hinzugefügt" msgstr "Frist/Termin hinzugefügt"
#: compensation/views/compensation_views.py:238 #: compensation/views/compensation_views.py:276
msgid "State removed" msgid "State removed"
msgstr "Zustand gelöscht" msgstr "Zustand gelöscht"
#: compensation/views/compensation_views.py:257 #: compensation/views/compensation_views.py:295
msgid "Action removed" msgid "Action removed"
msgstr "Maßnahme entfernt" msgstr "Maßnahme entfernt"
#: compensation/views/eco_account_views.py:134 #: compensation/views/eco_account_views.py:140
msgid "Eco-account removed" msgid "Eco-account removed"
msgstr "Ökokonto entfernt" msgstr "Ökokonto entfernt"
#: compensation/views/eco_account_views.py:161 #: compensation/views/eco_account_views.py:167
msgid "Deduction removed" msgid "Deduction removed"
msgstr "Abbuchung entfernt" msgstr "Abbuchung entfernt"
#: compensation/views/eco_account_views.py:204 ema/views.py:170 #: compensation/views/eco_account_views.py:210 ema/views.py:171
#: intervention/views.py:376 #: intervention/views.py:431
msgid "{} unrecorded" msgid "{} unrecorded"
msgstr "{} entzeichnet" msgstr "{} entzeichnet"
#: compensation/views/eco_account_views.py:204 ema/views.py:170 #: compensation/views/eco_account_views.py:210 ema/views.py:171
#: intervention/views.py:376 #: intervention/views.py:431
msgid "{} recorded" msgid "{} recorded"
msgstr "{} verzeichnet" msgstr "{} verzeichnet"
#: compensation/views/eco_account_views.py:303 intervention/views.py:358 #: compensation/views/eco_account_views.py:346 intervention/views.py:413
msgid "Deduction added" msgid "Deduction added"
msgstr "Abbuchung hinzugefügt" msgstr "Abbuchung hinzugefügt"
@ -732,7 +732,7 @@ msgstr ""
msgid "Payment funded compensation" msgid "Payment funded compensation"
msgstr "Ersatzzahlungsmaßnahme" msgstr "Ersatzzahlungsmaßnahme"
#: ema/views.py:153 #: ema/views.py:154
msgid "EMA removed" msgid "EMA removed"
msgstr "EMA entfernt" msgstr "EMA entfernt"
@ -752,120 +752,120 @@ msgstr "Gemarkung"
msgid "Search for district" msgid "Search for district"
msgstr "Nach Gemarkung suchen" msgstr "Nach Gemarkung suchen"
#: intervention/forms.py:33 #: intervention/forms.py:32
msgid "Generated automatically if none was given" msgid "Generated automatically if none was given"
msgstr "Wird automatisch erzeugt, falls nicht angegeben" msgstr "Wird automatisch erzeugt, falls nicht angegeben"
#: intervention/forms.py:45 #: intervention/forms.py:44
msgid "Which intervention type is this" msgid "Which intervention type is this"
msgstr "Welcher Eingriffstyp" msgstr "Welcher Eingriffstyp"
#: intervention/forms.py:48 #: intervention/forms.py:47
#: intervention/templates/intervention/detail/view.html:39 #: intervention/templates/intervention/detail/view.html:39
msgid "Law" msgid "Law"
msgstr "Gesetz" msgstr "Gesetz"
#: intervention/forms.py:51 #: intervention/forms.py:50
msgid "Based on which law" msgid "Based on which law"
msgstr "Basiert auf welchem Recht" msgstr "Basiert auf welchem Recht"
#: intervention/forms.py:57 #: intervention/forms.py:56
msgid "Who performs the intervention" msgid "Who performs the intervention"
msgstr "Wer führt den Eingriff durch" msgstr "Wer führt den Eingriff durch"
#: intervention/forms.py:60 #: intervention/forms.py:59
msgid "Data provider" msgid "Data provider"
msgstr "Datenbereitsteller" msgstr "Datenbereitsteller"
#: intervention/forms.py:62 #: intervention/forms.py:61
msgid "Who provides the data for the intervention" msgid "Who provides the data for the intervention"
msgstr "Wer stellt die Daten für den Eingriff zur Verfügung" msgstr "Wer stellt die Daten für den Eingriff zur Verfügung"
#: intervention/forms.py:67 #: intervention/forms.py:66
msgid "Organization" msgid "Organization"
msgstr "Organisation" msgstr "Organisation"
#: intervention/forms.py:73 #: intervention/forms.py:72
msgid "Data provider details" msgid "Data provider details"
msgstr "Datenbereitsteller Details" msgstr "Datenbereitsteller Details"
#: intervention/forms.py:76 #: intervention/forms.py:75
msgid "Further details" msgid "Further details"
msgstr "Weitere Details" msgstr "Weitere Details"
#: intervention/forms.py:89 #: intervention/forms.py:88
msgid "Map" msgid "Map"
msgstr "Karte" msgstr "Karte"
#: intervention/forms.py:91 #: intervention/forms.py:90
msgid "Where does the intervention take place" msgid "Where does the intervention take place"
msgstr "Wo findet der Eingriff statt" msgstr "Wo findet der Eingriff statt"
#: intervention/forms.py:99 #: intervention/forms.py:98
msgid "Files" msgid "Files"
msgstr "Dateien" msgstr "Dateien"
#: intervention/forms.py:106 #: intervention/forms.py:105
msgid "New intervention" msgid "New intervention"
msgstr "Neuer Eingriff" msgstr "Neuer Eingriff"
#: intervention/forms.py:148 #: intervention/forms.py:147
msgid "Edit intervention" msgid "Edit intervention"
msgstr "Eingriff bearbeiten" msgstr "Eingriff bearbeiten"
#: intervention/forms.py:244 #: intervention/forms.py:243
msgid "Share link" msgid "Share link"
msgstr "Freigabelink" msgstr "Freigabelink"
#: intervention/forms.py:246 #: intervention/forms.py:245
msgid "Send this link to users who you want to have writing access on the data" msgid "Send this link to users who you want to have writing access on the data"
msgstr "Andere Nutzer erhalten über diesen Link Zugriff auf die Daten" msgstr "Andere Nutzer erhalten über diesen Link Zugriff auf die Daten"
#: intervention/forms.py:258 #: intervention/forms.py:257
msgid "Remove check to remove access for this user" msgid "Remove check to remove access for this user"
msgstr "Wählen Sie die Nutzer ab, die keinen Zugriff mehr haben sollen" msgstr "Wählen Sie die Nutzer ab, die keinen Zugriff mehr haben sollen"
#: intervention/forms.py:269 #: intervention/forms.py:268
#: intervention/templates/intervention/detail/includes/controls.html:15 #: intervention/templates/intervention/detail/includes/controls.html:15
msgid "Share" msgid "Share"
msgstr "Freigabe" msgstr "Freigabe"
#: intervention/forms.py:270 #: intervention/forms.py:269
msgid "Share settings for {}" msgid "Share settings for {}"
msgstr "Freigabe Einstellungen für {}" msgstr "Freigabe Einstellungen für {}"
#: intervention/forms.py:323 #: intervention/forms.py:322
msgid "Date of revocation" msgid "Date of revocation"
msgstr "Datum des Widerspruchs" msgstr "Datum des Widerspruchs"
#: intervention/forms.py:333 #: intervention/forms.py:332
#: intervention/templates/intervention/detail/includes/revocation.html:38 #: intervention/templates/intervention/detail/includes/revocation.html:35
msgid "Document" msgid "Document"
msgstr "Dokument" msgstr "Dokument"
#: intervention/forms.py:336 konova/forms.py:305 #: intervention/forms.py:335 konova/forms.py:305
msgid "Must be smaller than 15 Mb" msgid "Must be smaller than 15 Mb"
msgstr "Muss kleiner als 15 Mb sein" msgstr "Muss kleiner als 15 Mb sein"
#: intervention/forms.py:359 #: intervention/forms.py:358
#: intervention/templates/intervention/detail/includes/revocation.html:18 #: intervention/templates/intervention/detail/includes/revocation.html:18
msgid "Add revocation" msgid "Add revocation"
msgstr "Widerspruch hinzufügen" msgstr "Widerspruch hinzufügen"
#: intervention/forms.py:400 #: intervention/forms.py:398
msgid "Checked intervention data" msgid "Checked intervention data"
msgstr "Eingriffsdaten geprüft" msgstr "Eingriffsdaten geprüft"
#: intervention/forms.py:406 #: intervention/forms.py:404
msgid "Checked compensations data and payments" msgid "Checked compensations data and payments"
msgstr "Kompensationen und Zahlungen geprüft" msgstr "Kompensationen und Zahlungen geprüft"
#: intervention/forms.py:414 #: intervention/forms.py:412
#: intervention/templates/intervention/detail/includes/controls.html:19 #: intervention/templates/intervention/detail/includes/controls.html:19
msgid "Run check" msgid "Run check"
msgstr "Prüfung vornehmen" msgstr "Prüfung vornehmen"
#: intervention/forms.py:415 konova/forms.py:376 #: intervention/forms.py:413 konova/forms.py:389
msgid "" msgid ""
"I, {} {}, confirm that all necessary control steps have been performed by " "I, {} {}, confirm that all necessary control steps have been performed by "
"myself." "myself."
@ -878,7 +878,7 @@ msgid "Only recorded accounts can be selected for deductions"
msgstr "Nur verzeichnete Ökokonten können für Abbuchungen verwendet werden." msgstr "Nur verzeichnete Ökokonten können für Abbuchungen verwendet werden."
#: intervention/forms.py:483 intervention/forms.py:490 #: intervention/forms.py:483 intervention/forms.py:490
#: intervention/tables.py:89 #: intervention/tables.py:88
#: intervention/templates/intervention/detail/view.html:19 #: intervention/templates/intervention/detail/view.html:19
#: konova/templates/konova/home.html:11 templates/navbar.html:22 #: konova/templates/konova/home.html:11 templates/navbar.html:22
msgid "Intervention" msgid "Intervention"
@ -912,49 +912,50 @@ msgstr ""
"Das Ökokonto {} hat für eine Abbuchung von {} m² nicht ausreichend " "Das Ökokonto {} hat für eine Abbuchung von {} m² nicht ausreichend "
"Restfläche. Es stehen noch {} m² zur Verfügung." "Restfläche. Es stehen noch {} m² zur Verfügung."
#: intervention/models.py:200 #: intervention/models.py:306
msgid "Registration office file number missing" msgid "Registration office file number missing"
msgstr "Aktenzeichen Zulassungsbehörde fehlt" msgstr "Aktenzeichen Zulassungsbehörde fehlt"
#: intervention/models.py:203 #: intervention/models.py:309
msgid "Conversation office file number missing" msgid "Conversation office file number missing"
msgstr "Aktenzeichen Naturschutzbehörde fehlt" msgstr "Aktenzeichen Naturschutzbehörde fehlt"
#: intervention/models.py:206 #: intervention/models.py:312
msgid "Responsible data missing" msgid "Responsible data missing"
msgstr "Daten zu Verantwortlichen fehlen" msgstr "Daten zu Verantwortlichen fehlen"
#: intervention/models.py:220 #: intervention/models.py:326
msgid "Revocation exists" msgid "Revocation exists"
msgstr "Widerspruch liegt vor" msgstr "Widerspruch liegt vor"
#: intervention/models.py:223 #: intervention/models.py:329
msgid "Registration date missing" msgid "Registration date missing"
msgstr "Datum Zulassung bzw. Satzungsbeschluss fehlt" msgstr "Datum Zulassung bzw. Satzungsbeschluss fehlt"
#: intervention/models.py:226 #: intervention/models.py:332
msgid "Binding on missing" msgid "Binding on missing"
msgstr "Datum Bestandskraft fehlt" msgstr "Datum Bestandskraft fehlt"
#: intervention/models.py:228 #: intervention/models.py:334
msgid "Legal data missing" msgid "Legal data missing"
msgstr "Rechtliche Daten fehlen" msgstr "Rechtliche Daten fehlen"
#: intervention/tables.py:46 #: intervention/tables.py:45
#: intervention/templates/intervention/detail/includes/revocation.html:8 #: intervention/templates/intervention/detail/includes/revocation.html:8
#: intervention/templates/intervention/detail/includes/revocation.html:55
#: intervention/templates/intervention/detail/view.html:99 #: intervention/templates/intervention/detail/view.html:99
msgid "Revocation" msgid "Revocation"
msgstr "Widerspruch" msgstr "Widerspruch"
#: intervention/tables.py:67 #: intervention/tables.py:66
msgid "Interventions" msgid "Interventions"
msgstr "Eingriffe" msgstr "Eingriffe"
#: intervention/tables.py:177 #: intervention/tables.py:176
msgid "No revocation" msgid "No revocation"
msgstr "Kein Widerspruch" msgstr "Kein Widerspruch"
#: intervention/tables.py:183 #: intervention/tables.py:182
msgid "Revocation from {}, added on {} by {}" msgid "Revocation from {}, added on {} by {}"
msgstr "Widerspruch vom {}, am {} von {} hinzugefügt" msgstr "Widerspruch vom {}, am {} von {} hinzugefügt"
@ -966,6 +967,18 @@ msgstr "Neue Kompensation hinzufügen"
msgid "Remove compensation" msgid "Remove compensation"
msgstr "Kompensation entfernen" msgstr "Kompensation entfernen"
#: intervention/templates/intervention/detail/includes/deductions.html:28
msgid "Account Identifier"
msgstr "Ökokonto Kennung"
#: intervention/templates/intervention/detail/includes/deductions.html:43
msgid "Eco-account deleted! Deduction invalid!"
msgstr "Ökokonto gelöscht! Abbuchung ungültig!"
#: intervention/templates/intervention/detail/includes/deductions.html:43
msgid "Eco-account not recorded! Deduction invalid!"
msgstr "Ökokonto nicht verzeichnet! Abbuchung ungültig!"
#: intervention/templates/intervention/detail/includes/payments.html:8 #: intervention/templates/intervention/detail/includes/payments.html:8
msgid "Payments" msgid "Payments"
msgstr "Ersatzzahlungen" msgstr "Ersatzzahlungen"
@ -992,10 +1005,6 @@ msgstr "Vom"
msgid "Remove revocation" msgid "Remove revocation"
msgstr "Widerspruch entfernen" msgstr "Widerspruch entfernen"
#: intervention/templates/intervention/detail/includes/deductions.html:28
msgid "Account Identifier"
msgstr "Ökokonto Kennung"
#: intervention/templates/intervention/detail/view.html:35 #: intervention/templates/intervention/detail/view.html:35
msgid "Process type" msgid "Process type"
msgstr "Verfahrenstyp" msgstr "Verfahrenstyp"
@ -1020,19 +1029,19 @@ msgstr "Datum Bestandskraft"
msgid "Exists" msgid "Exists"
msgstr "vorhanden" msgstr "vorhanden"
#: intervention/views.py:65 #: intervention/views.py:66
msgid "Intervention {} added" msgid "Intervention {} added"
msgstr "Eingriff {} hinzugefügt" msgstr "Eingriff {} hinzugefügt"
#: intervention/views.py:68 intervention/views.py:169 #: intervention/views.py:69 intervention/views.py:224
msgid "Invalid input" msgid "Invalid input"
msgstr "Eingabe fehlerhaft" msgstr "Eingabe fehlerhaft"
#: intervention/views.py:127 #: intervention/views.py:182
msgid "This intervention has a revocation from {}" msgid "This intervention has a revocation from {}"
msgstr "Es existiert ein Widerspruch vom {}" msgstr "Es existiert ein Widerspruch vom {}"
#: intervention/views.py:143 #: intervention/views.py:198
msgid "" msgid ""
"Remember: This data has not been shared with you, yet. This means you can " "Remember: This data has not been shared with you, yet. This means you can "
"only read but can not edit or perform any actions like running a check or " "only read but can not edit or perform any actions like running a check or "
@ -1042,43 +1051,43 @@ msgstr ""
"bedeutet, dass Sie nur lesenden Zugriff hierauf haben und weder bearbeiten, " "bedeutet, dass Sie nur lesenden Zugriff hierauf haben und weder bearbeiten, "
"noch Prüfungen durchführen oder verzeichnen können." "noch Prüfungen durchführen oder verzeichnen können."
#: intervention/views.py:166 #: intervention/views.py:221
msgid "{} edited" msgid "{} edited"
msgstr "{} bearbeitet" msgstr "{} bearbeitet"
#: intervention/views.py:195 #: intervention/views.py:250
msgid "{} removed" msgid "{} removed"
msgstr "{} entfernt" msgstr "{} entfernt"
#: intervention/views.py:216 #: intervention/views.py:271
msgid "Revocation removed" msgid "Revocation removed"
msgstr "Widerspruch entfernt" msgstr "Widerspruch entfernt"
#: intervention/views.py:242 #: intervention/views.py:297
msgid "{} has already been shared with you" msgid "{} has already been shared with you"
msgstr "{} wurde bereits für Sie freigegeben" msgstr "{} wurde bereits für Sie freigegeben"
#: intervention/views.py:247 #: intervention/views.py:302
msgid "{} has been shared with you" msgid "{} has been shared with you"
msgstr "{} ist nun für Sie freigegeben" msgstr "{} ist nun für Sie freigegeben"
#: intervention/views.py:254 #: intervention/views.py:309
msgid "Share link invalid" msgid "Share link invalid"
msgstr "Freigabelink ungültig" msgstr "Freigabelink ungültig"
#: intervention/views.py:275 #: intervention/views.py:330
msgid "Share settings updated" msgid "Share settings updated"
msgstr "Freigabe Einstellungen aktualisiert" msgstr "Freigabe Einstellungen aktualisiert"
#: intervention/views.py:294 #: intervention/views.py:349
msgid "Check performed" msgid "Check performed"
msgstr "Prüfung durchgeführt" msgstr "Prüfung durchgeführt"
#: intervention/views.py:314 #: intervention/views.py:369
msgid "Revocation added" msgid "Revocation added"
msgstr "Widerspruch hinzugefügt" msgstr "Widerspruch hinzugefügt"
#: intervention/views.py:381 #: intervention/views.py:436
msgid "There are errors on this intervention:" msgid "There are errors on this intervention:"
msgstr "Es liegen Fehler in diesem Eingriff vor:" msgstr "Es liegen Fehler in diesem Eingriff vor:"
@ -1136,27 +1145,27 @@ msgstr "Wann wurde diese Datei erstellt oder das Foto aufgenommen?"
msgid "File" msgid "File"
msgstr "Datei" msgstr "Datei"
#: konova/forms.py:353 #: konova/forms.py:366
msgid "Added document" msgid "Added document"
msgstr "Dokument hinzugefügt" msgstr "Dokument hinzugefügt"
#: konova/forms.py:367 #: konova/forms.py:380
msgid "Confirm record" msgid "Confirm record"
msgstr "Verzeichnen bestätigen" msgstr "Verzeichnen bestätigen"
#: konova/forms.py:375 #: konova/forms.py:388
msgid "Record data" msgid "Record data"
msgstr "Daten verzeichnen" msgstr "Daten verzeichnen"
#: konova/forms.py:380 #: konova/forms.py:395
msgid "Confirm unrecord" msgid "Confirm unrecord"
msgstr "Entzeichnen bestätigen" msgstr "Entzeichnen bestätigen"
#: konova/forms.py:381 #: konova/forms.py:396
msgid "Unrecord data" msgid "Unrecord data"
msgstr "Daten entzeichnen" msgstr "Daten entzeichnen"
#: konova/forms.py:382 #: konova/forms.py:397
msgid "I, {} {}, confirm that this data must be unrecorded." msgid "I, {} {}, confirm that this data must be unrecorded."
msgstr "" msgstr ""
"Ich, {} {}, bestätige, dass diese Daten wieder entzeichnet werden müssen." "Ich, {} {}, bestätige, dass diese Daten wieder entzeichnet werden müssen."
@ -1185,19 +1194,19 @@ msgstr "Wenn meine freigegebenen Daten gelöscht wurden"
msgid "On registered data edited" msgid "On registered data edited"
msgstr "Wenn meine freigegebenen Daten bearbeitet wurden" msgstr "Wenn meine freigegebenen Daten bearbeitet wurden"
#: konova/models.py:189 #: konova/models.py:190
msgid "Finished" msgid "Finished"
msgstr "Umgesetzt bis" msgstr "Umgesetzt bis"
#: konova/models.py:190 #: konova/models.py:191
msgid "Maintain" msgid "Maintain"
msgstr "Unterhaltung bis" msgstr "Unterhaltung bis"
#: konova/models.py:191 #: konova/models.py:192
msgid "Control" msgid "Control"
msgstr "Kontrolle am" msgstr "Kontrolle am"
#: konova/models.py:192 #: konova/models.py:193
msgid "Other" msgid "Other"
msgstr "Sonstige" msgstr "Sonstige"
@ -1233,6 +1242,10 @@ msgstr "Anzeigen"
msgid "Deduct" msgid "Deduct"
msgstr "Abbuchen" msgstr "Abbuchen"
#: konova/utils/documents.py:52
msgid "Document '{}' deleted"
msgstr "Dokument '{}' gelöscht"
#: konova/utils/message_templates.py:11 #: konova/utils/message_templates.py:11
msgid "There was an error on this form." msgid "There was an error on this form."
msgstr "Es gab einen Fehler im Formular." msgstr "Es gab einen Fehler im Formular."
@ -1253,11 +1266,7 @@ msgstr "<a href=\"{}\">Schauen Sie rein</a>"
msgid "{} has been checked successfully by user {}! {}" msgid "{} has been checked successfully by user {}! {}"
msgstr "{} wurde erfolgreich vom Nutzer {} geprüft! {}" msgstr "{} wurde erfolgreich vom Nutzer {} geprüft! {}"
#: konova/views.py:138 #: konova/views.py:115
msgid "Document '{}' deleted"
msgstr "Dokument '{}' gelöscht"
#: konova/views.py:157
msgid "Deadline removed" msgid "Deadline removed"
msgstr "Frist gelöscht" msgstr "Frist gelöscht"