test #347
@ -172,6 +172,23 @@ class EditEcoAccountForm(NewEcoAccountForm):
 | 
			
		||||
            disabled_fields
 | 
			
		||||
        )
 | 
			
		||||
 | 
			
		||||
    def is_valid(self):
 | 
			
		||||
        valid = super().is_valid()
 | 
			
		||||
 | 
			
		||||
        deductable_surface = self.cleaned_data.get("surface")
 | 
			
		||||
        deduction_surface_sum = self.instance.get_deductions_surface()
 | 
			
		||||
        if deductable_surface < deduction_surface_sum:
 | 
			
		||||
            self.add_error(
 | 
			
		||||
                "surface",
 | 
			
		||||
                _("{}m² have been deducted from this eco account so far. The given value of {} would be too low.").format(
 | 
			
		||||
                    deduction_surface_sum,
 | 
			
		||||
                    deductable_surface
 | 
			
		||||
                )
 | 
			
		||||
            )
 | 
			
		||||
            valid &= False
 | 
			
		||||
 | 
			
		||||
        return valid
 | 
			
		||||
 | 
			
		||||
    def save(self, user: User, geom_form: SimpleGeomForm):
 | 
			
		||||
        with transaction.atomic():
 | 
			
		||||
            # Fetch data from cleaned POST values
 | 
			
		||||
 | 
			
		||||
@ -59,20 +59,6 @@ class EcoAccount(AbstractCompensation, ShareableObjectMixin, RecordableObjectMix
 | 
			
		||||
    def __str__(self):
 | 
			
		||||
        return f"{self.identifier} ({self.title})"
 | 
			
		||||
 | 
			
		||||
    def clean(self):
 | 
			
		||||
        # Deductable surface can not be larger than added states after surface
 | 
			
		||||
        after_state_sum = self.get_surface_after_states()
 | 
			
		||||
        if self.deductable_surface > after_state_sum:
 | 
			
		||||
            raise ValidationError(_("Deductable surface can not be larger than existing surfaces in after states"))
 | 
			
		||||
 | 
			
		||||
        # Deductable surface can not be lower than amount of already deducted surfaces
 | 
			
		||||
        # User needs to contact deducting user in case of further problems
 | 
			
		||||
        deducted_sum = self.get_deductions_surface()
 | 
			
		||||
        if self.deductable_surface < deducted_sum:
 | 
			
		||||
            raise ValidationError(
 | 
			
		||||
                _("Deductable surface can not be smaller than the sum of already existing deductions. Please contact the responsible users for the deductions!")
 | 
			
		||||
            )
 | 
			
		||||
 | 
			
		||||
    def save(self, *args, **kwargs):
 | 
			
		||||
        if self.identifier is None or len(self.identifier) == 0:
 | 
			
		||||
            # Create new identifier if none was given
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										7
									
								
								compensation/tests/ecoaccount/unit/__init__.py
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										7
									
								
								compensation/tests/ecoaccount/unit/__init__.py
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,7 @@
 | 
			
		||||
"""
 | 
			
		||||
Author: Michel Peltriaux
 | 
			
		||||
Organization: Struktur- und Genehmigungsdirektion Nord, Rhineland-Palatinate, Germany
 | 
			
		||||
Contact: ksp-servicestelle@sgdnord.rlp.de
 | 
			
		||||
Created on: 30.08.23
 | 
			
		||||
 | 
			
		||||
"""
 | 
			
		||||
							
								
								
									
										128
									
								
								compensation/tests/ecoaccount/unit/test_models.py
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										128
									
								
								compensation/tests/ecoaccount/unit/test_models.py
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,128 @@
 | 
			
		||||
"""
 | 
			
		||||
Author: Michel Peltriaux
 | 
			
		||||
Organization: Struktur- und Genehmigungsdirektion Nord, Rhineland-Palatinate, Germany
 | 
			
		||||
Contact: ksp-servicestelle@sgdnord.rlp.de
 | 
			
		||||
Created on: 30.08.23
 | 
			
		||||
 | 
			
		||||
"""
 | 
			
		||||
from django.core.exceptions import ObjectDoesNotExist
 | 
			
		||||
from django.urls import reverse
 | 
			
		||||
 | 
			
		||||
from compensation.models import EcoAccountDocument
 | 
			
		||||
from konova.tests.test_views import BaseTestCase
 | 
			
		||||
from konova.utils.message_templates import DOCUMENT_REMOVED_TEMPLATE, DEDUCTION_REMOVED
 | 
			
		||||
from user.models import UserAction
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
class EcoAccountTestCase(BaseTestCase):
 | 
			
		||||
 | 
			
		||||
    def setUp(self) -> None:
 | 
			
		||||
        super().setUp()
 | 
			
		||||
 | 
			
		||||
    def test_str(self):
 | 
			
		||||
        self.assertEqual(str(self.eco_account), f"{self.eco_account.identifier} ({self.eco_account.title})")
 | 
			
		||||
 | 
			
		||||
    def test_save(self):
 | 
			
		||||
        old_id = self.eco_account.identifier
 | 
			
		||||
        self.assertIsNotNone(self.eco_account.identifier)
 | 
			
		||||
        self.eco_account.identifier = None
 | 
			
		||||
        self.eco_account.save()
 | 
			
		||||
        self.assertIsNotNone(self.eco_account.identifier)
 | 
			
		||||
        self.assertNotEqual(old_id, self.eco_account.identifier)
 | 
			
		||||
 | 
			
		||||
    def test_property_deductions_surface_sum(self):
 | 
			
		||||
        self.assertEqual(
 | 
			
		||||
            self.eco_account.deductions_surface_sum,
 | 
			
		||||
            self.eco_account.get_deductions_surface()
 | 
			
		||||
        )
 | 
			
		||||
 | 
			
		||||
    def test_get_documents(self):
 | 
			
		||||
        docs = self.eco_account.get_documents()
 | 
			
		||||
        self.assertEqual(docs.count(), 0)
 | 
			
		||||
        doc = self.create_dummy_document(EcoAccountDocument, self.eco_account)
 | 
			
		||||
        self.assertIn(doc, self.eco_account.get_documents())
 | 
			
		||||
 | 
			
		||||
    def test_get_share_link(self):
 | 
			
		||||
        self.assertEqual(
 | 
			
		||||
            self.eco_account.get_share_link(),
 | 
			
		||||
            reverse(
 | 
			
		||||
                "compensation:acc:share-token",
 | 
			
		||||
                args=(self.eco_account.id, self.eco_account.access_token)
 | 
			
		||||
            )
 | 
			
		||||
        )
 | 
			
		||||
 | 
			
		||||
    def test_get_deductable_rest_relative(self):
 | 
			
		||||
        self.assertEqual(self.eco_account.deductions.count(), 0)
 | 
			
		||||
        self.eco_account.deductable_surface = 5.0
 | 
			
		||||
        self.eco_account.save()
 | 
			
		||||
        self.eco_account.update_deductable_rest()
 | 
			
		||||
 | 
			
		||||
        self.assertEqual(self.eco_account.get_deductable_rest_relative(), 100)
 | 
			
		||||
        self.eco_account.deductable_surface = None
 | 
			
		||||
        self.eco_account.save()
 | 
			
		||||
        self.assertEqual(self.eco_account.get_deductable_rest_relative(), 0)
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
class EcoAccountDocumentTestCase(BaseTestCase):
 | 
			
		||||
    def setUp(self) -> None:
 | 
			
		||||
        super().setUp()
 | 
			
		||||
 | 
			
		||||
    def test_delete(self):
 | 
			
		||||
        doc = self.create_dummy_document(
 | 
			
		||||
            EcoAccountDocument,
 | 
			
		||||
            self.eco_account
 | 
			
		||||
        )
 | 
			
		||||
        doc_title = doc.title
 | 
			
		||||
        docs = self.eco_account.get_documents()
 | 
			
		||||
        self.assertIn(doc, docs)
 | 
			
		||||
 | 
			
		||||
        doc.delete(user=self.superuser)
 | 
			
		||||
        last_log = self.eco_account.log.first()
 | 
			
		||||
        self.assertEqual(last_log.user, self.superuser)
 | 
			
		||||
        self.assertEqual(last_log.action, UserAction.EDITED)
 | 
			
		||||
        self.assertEqual(last_log.comment, DOCUMENT_REMOVED_TEMPLATE.format(
 | 
			
		||||
            doc_title
 | 
			
		||||
        ))
 | 
			
		||||
        try:
 | 
			
		||||
            doc.refresh_from_db()
 | 
			
		||||
            self.fail("Document should not have been fetchable")
 | 
			
		||||
        except ObjectDoesNotExist:
 | 
			
		||||
            pass
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
class EcoAccountDeductionTestCase(BaseTestCase):
 | 
			
		||||
    def setUp(self) -> None:
 | 
			
		||||
        super().setUp()
 | 
			
		||||
 | 
			
		||||
    def test_str(self):
 | 
			
		||||
        self.assertEqual(str(self.deduction), f"{self.deduction.surface} of {self.deduction.account}")
 | 
			
		||||
 | 
			
		||||
    def test_delete(self):
 | 
			
		||||
        self.deduction.account = self.eco_account
 | 
			
		||||
        self.deduction.intervention = self.intervention
 | 
			
		||||
        self.deduction.save()
 | 
			
		||||
 | 
			
		||||
        self.eco_account.update_deductable_rest()
 | 
			
		||||
        old_deductable_rest = self.eco_account.deductable_rest
 | 
			
		||||
        deduction_surface = self.deduction.surface
 | 
			
		||||
 | 
			
		||||
        self.deduction.delete(self.superuser)
 | 
			
		||||
 | 
			
		||||
        last_log_intervention = self.intervention.log.first()
 | 
			
		||||
        last_log_account = self.eco_account.log.first()
 | 
			
		||||
        logs = [
 | 
			
		||||
            last_log_intervention,
 | 
			
		||||
            last_log_account,
 | 
			
		||||
        ]
 | 
			
		||||
        for log in logs:
 | 
			
		||||
            self.assertEqual(log.action, UserAction.EDITED)
 | 
			
		||||
            self.assertEqual(log.user, self.superuser)
 | 
			
		||||
            self.assertEqual(log.comment, DEDUCTION_REMOVED)
 | 
			
		||||
 | 
			
		||||
        self.assertLess(old_deductable_rest, self.eco_account.deductable_rest)
 | 
			
		||||
        self.assertEqual(old_deductable_rest + deduction_surface, self.eco_account.deductable_rest)
 | 
			
		||||
        try:
 | 
			
		||||
            self.deduction.refresh_from_db()
 | 
			
		||||
            self.fail("Deduction still fetchable after deleting")
 | 
			
		||||
        except ObjectDoesNotExist:
 | 
			
		||||
            pass
 | 
			
		||||
@ -150,7 +150,9 @@ def edit_view(request: HttpRequest, id: str):
 | 
			
		||||
    data_form = EditEcoAccountForm(request.POST or None, instance=acc)
 | 
			
		||||
    geom_form = SimpleGeomForm(request.POST or None, read_only=False, instance=acc)
 | 
			
		||||
    if request.method == "POST":
 | 
			
		||||
        if data_form.is_valid() and geom_form.is_valid():
 | 
			
		||||
        data_form_valid = data_form.is_valid()
 | 
			
		||||
        geom_form_valid = geom_form.is_valid()
 | 
			
		||||
        if data_form_valid and geom_form_valid:
 | 
			
		||||
            # The data form takes the geom form for processing, as well as the performing user
 | 
			
		||||
            acc = data_form.save(request.user, geom_form)
 | 
			
		||||
            messages.success(request, _("Eco-Account {} edited").format(acc.identifier))
 | 
			
		||||
 | 
			
		||||
@ -8,10 +8,10 @@ Created on: 15.08.22
 | 
			
		||||
import json
 | 
			
		||||
 | 
			
		||||
from django.contrib.gis import gdal
 | 
			
		||||
from django.contrib.gis.forms import MultiPolygonField
 | 
			
		||||
from django.contrib.gis.geos import MultiPolygon, Polygon
 | 
			
		||||
from django.contrib.gis.geos.prototypes.io import WKTWriter
 | 
			
		||||
from django.utils.translation import gettext_lazy as _
 | 
			
		||||
from django.forms import JSONField
 | 
			
		||||
 | 
			
		||||
from konova.forms.base_form import BaseForm
 | 
			
		||||
from konova.models import Geometry
 | 
			
		||||
@ -27,8 +27,7 @@ class SimpleGeomForm(BaseForm):
 | 
			
		||||
    """
 | 
			
		||||
    read_only = True
 | 
			
		||||
    geometry_simplified = False
 | 
			
		||||
    geom = MultiPolygonField(
 | 
			
		||||
        srid=DEFAULT_SRID_RLP,
 | 
			
		||||
    geom = JSONField(
 | 
			
		||||
        label=_("Geometry"),
 | 
			
		||||
        help_text=_(""),
 | 
			
		||||
        label_suffix="",
 | 
			
		||||
 | 
			
		||||
										
											Binary file not shown.
										
									
								
							@ -43,7 +43,7 @@ msgid ""
 | 
			
		||||
msgstr ""
 | 
			
		||||
"Project-Id-Version: PACKAGE VERSION\n"
 | 
			
		||||
"Report-Msgid-Bugs-To: \n"
 | 
			
		||||
"POT-Creation-Date: 2023-07-10 10:16+0200\n"
 | 
			
		||||
"POT-Creation-Date: 2023-08-30 13:24+0200\n"
 | 
			
		||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 | 
			
		||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 | 
			
		||||
"Language-Team: LANGUAGE <LL@li.org>\n"
 | 
			
		||||
@ -96,15 +96,16 @@ msgstr "Verantwortliche Stelle"
 | 
			
		||||
msgid "Click for selection"
 | 
			
		||||
msgstr "Auswählen..."
 | 
			
		||||
 | 
			
		||||
#: analysis/forms.py:70
 | 
			
		||||
#: analysis/forms.py:70 analysis/tests/unit/test_forms.py:25
 | 
			
		||||
msgid "Generate report"
 | 
			
		||||
msgstr "Bericht generieren"
 | 
			
		||||
 | 
			
		||||
#: analysis/forms.py:71
 | 
			
		||||
#: analysis/forms.py:71 analysis/tests/unit/test_forms.py:26
 | 
			
		||||
msgid "Select a timespan and the desired conservation office"
 | 
			
		||||
msgstr "Wählen Sie die Zeitspanne und die gewünschte Eintragungsstelle"
 | 
			
		||||
 | 
			
		||||
#: analysis/forms.py:74 konova/forms/modals/base_form.py:30
 | 
			
		||||
#: analysis/forms.py:74 analysis/tests/unit/test_forms.py:29
 | 
			
		||||
#: konova/forms/modals/base_form.py:30
 | 
			
		||||
msgid "Continue"
 | 
			
		||||
msgstr "Weiter"
 | 
			
		||||
 | 
			
		||||
@ -484,7 +485,15 @@ msgstr "Ökokonto XY; Flur ABC"
 | 
			
		||||
msgid "Edit Eco-Account"
 | 
			
		||||
msgstr "Ökokonto bearbeiten"
 | 
			
		||||
 | 
			
		||||
#: compensation/forms/eco_account.py:232
 | 
			
		||||
#: compensation/forms/eco_account.py:183
 | 
			
		||||
msgid ""
 | 
			
		||||
"{}m² have been deducted from this eco account so far. The given value of {} "
 | 
			
		||||
"would be too low."
 | 
			
		||||
msgstr ""
 | 
			
		||||
"{}n² wurden bereits von diesem Ökokonto abgebucht. Der eingegebene Wert von {} "
 | 
			
		||||
"wäre daher zu klein."
 | 
			
		||||
 | 
			
		||||
#: compensation/forms/eco_account.py:249
 | 
			
		||||
msgid "The account can not be removed, since there are still deductions."
 | 
			
		||||
msgstr ""
 | 
			
		||||
"Das Ökokonto kann nicht entfernt werden, da hierzu noch Abbuchungen "
 | 
			
		||||
@ -597,16 +606,19 @@ msgid "Insert the amount"
 | 
			
		||||
msgstr "Menge eingeben"
 | 
			
		||||
 | 
			
		||||
#: compensation/forms/modals/compensation_action.py:94
 | 
			
		||||
#: compensation/tests/compensation/unit/test_forms.py:42
 | 
			
		||||
msgid "New action"
 | 
			
		||||
msgstr "Neue Maßnahme"
 | 
			
		||||
 | 
			
		||||
#: compensation/forms/modals/compensation_action.py:95
 | 
			
		||||
#: compensation/tests/compensation/unit/test_forms.py:43
 | 
			
		||||
msgid "Insert data for the new action"
 | 
			
		||||
msgstr "Geben Sie die Daten der neuen Maßnahme ein"
 | 
			
		||||
 | 
			
		||||
#: compensation/forms/modals/compensation_action.py:119
 | 
			
		||||
#: compensation/templates/compensation/detail/compensation/includes/actions.html:68
 | 
			
		||||
#: compensation/templates/compensation/detail/eco_account/includes/actions.html:67
 | 
			
		||||
#: compensation/tests/compensation/unit/test_forms.py:84
 | 
			
		||||
#: ema/templates/ema/detail/includes/actions.html:65
 | 
			
		||||
msgid "Edit action"
 | 
			
		||||
msgstr "Maßnahme bearbeiten"
 | 
			
		||||
@ -640,18 +652,21 @@ msgid "Additional comment, maximum {} letters"
 | 
			
		||||
msgstr "Zusätzlicher Kommentar, maximal {} Zeichen"
 | 
			
		||||
 | 
			
		||||
#: compensation/forms/modals/deadline.py:65
 | 
			
		||||
#: konova/tests/unit/test_deadline.py:29
 | 
			
		||||
msgid "New deadline"
 | 
			
		||||
msgstr "Neue Frist"
 | 
			
		||||
 | 
			
		||||
#: compensation/forms/modals/deadline.py:66
 | 
			
		||||
#: konova/tests/unit/test_deadline.py:30
 | 
			
		||||
msgid "Insert data for the new deadline"
 | 
			
		||||
msgstr "Geben Sie die Daten der neuen Frist ein"
 | 
			
		||||
 | 
			
		||||
#: compensation/forms/modals/deadline.py:75
 | 
			
		||||
#: compensation/forms/modals/deadline.py:78
 | 
			
		||||
#: konova/tests/unit/test_deadline.py:57
 | 
			
		||||
msgid "Please explain this 'other' type of deadline."
 | 
			
		||||
msgstr "Bitte erklären Sie um welchen 'sonstigen' Termin es sich handelt."
 | 
			
		||||
 | 
			
		||||
#: compensation/forms/modals/deadline.py:92
 | 
			
		||||
#: compensation/forms/modals/deadline.py:95
 | 
			
		||||
#: compensation/templates/compensation/detail/compensation/includes/deadlines.html:64
 | 
			
		||||
#: compensation/templates/compensation/detail/eco_account/includes/deadlines.html:62
 | 
			
		||||
#: ema/templates/ema/detail/includes/deadlines.html:62
 | 
			
		||||
@ -706,10 +721,12 @@ msgid "in m²"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: compensation/forms/modals/state.py:72
 | 
			
		||||
#: compensation/tests/compensation/unit/test_forms.py:175
 | 
			
		||||
msgid "New state"
 | 
			
		||||
msgstr "Neuer Zustand"
 | 
			
		||||
 | 
			
		||||
#: compensation/forms/modals/state.py:73
 | 
			
		||||
#: compensation/tests/compensation/unit/test_forms.py:176
 | 
			
		||||
msgid "Insert data for the new state"
 | 
			
		||||
msgstr "Geben Sie die Daten des neuen Zustandes ein"
 | 
			
		||||
 | 
			
		||||
@ -722,6 +739,7 @@ msgstr "Objekt entfernt"
 | 
			
		||||
#: compensation/templates/compensation/detail/compensation/includes/states-before.html:62
 | 
			
		||||
#: compensation/templates/compensation/detail/eco_account/includes/states-after.html:62
 | 
			
		||||
#: compensation/templates/compensation/detail/eco_account/includes/states-before.html:62
 | 
			
		||||
#: compensation/tests/compensation/unit/test_forms.py:236
 | 
			
		||||
#: ema/templates/ema/detail/includes/states-after.html:60
 | 
			
		||||
#: ema/templates/ema/detail/includes/states-before.html:60
 | 
			
		||||
msgid "Edit state"
 | 
			
		||||
@ -755,21 +773,6 @@ msgstr ""
 | 
			
		||||
msgid "Pieces"
 | 
			
		||||
msgstr "Stück"
 | 
			
		||||
 | 
			
		||||
#: compensation/models/eco_account.py:62
 | 
			
		||||
msgid ""
 | 
			
		||||
"Deductable surface can not be larger than existing surfaces in after states"
 | 
			
		||||
msgstr ""
 | 
			
		||||
"Die abbuchbare Fläche darf die Gesamtfläche der Zielzustände nicht "
 | 
			
		||||
"überschreiten"
 | 
			
		||||
 | 
			
		||||
#: compensation/models/eco_account.py:69
 | 
			
		||||
msgid ""
 | 
			
		||||
"Deductable surface can not be smaller than the sum of already existing "
 | 
			
		||||
"deductions. Please contact the responsible users for the deductions!"
 | 
			
		||||
msgstr ""
 | 
			
		||||
"Es wurde bereits mehr Fläche abgebucht, als Sie nun als abbuchbar einstellen "
 | 
			
		||||
"wollen. Kontaktieren Sie die für die Abbuchungen verantwortlichen Nutzer!"
 | 
			
		||||
 | 
			
		||||
#: compensation/tables/compensation.py:33 compensation/tables/eco_account.py:34
 | 
			
		||||
#: ema/tables.py:36 intervention/tables.py:33
 | 
			
		||||
#: konova/filters/mixins/geo_reference.py:42
 | 
			
		||||
@ -1424,6 +1427,7 @@ msgid "Binding on"
 | 
			
		||||
msgstr "Datum Bestandskraft bzw. Rechtskraft"
 | 
			
		||||
 | 
			
		||||
#: intervention/forms/intervention.py:216
 | 
			
		||||
#: intervention/tests/unit/test_forms.py:27
 | 
			
		||||
#: intervention/views/intervention.py:105
 | 
			
		||||
msgid "New intervention"
 | 
			
		||||
msgstr "Neuer Eingriff"
 | 
			
		||||
@ -1802,7 +1806,6 @@ msgstr "Wann wurde diese Datei erstellt oder das Foto aufgenommen?"
 | 
			
		||||
 | 
			
		||||
#: konova/forms/modals/document_form.py:49
 | 
			
		||||
#: venv/lib/python3.7/site-packages/django/db/models/fields/files.py:231
 | 
			
		||||
#: venv_py3.9/lib/python3.9/site-packages/django/db/models/fields/files.py:231
 | 
			
		||||
msgid "File"
 | 
			
		||||
msgstr "Datei"
 | 
			
		||||
 | 
			
		||||
@ -2234,15 +2237,11 @@ msgstr "Dokument bearbeitet"
 | 
			
		||||
msgid "Edited general data"
 | 
			
		||||
msgstr "Allgemeine Daten bearbeitet"
 | 
			
		||||
 | 
			
		||||
#: konova/utils/message_templates.py:82
 | 
			
		||||
msgid "Added deadline"
 | 
			
		||||
msgstr "Frist/Termin hinzugefügt"
 | 
			
		||||
 | 
			
		||||
#: konova/utils/message_templates.py:85
 | 
			
		||||
#: konova/utils/message_templates.py:84
 | 
			
		||||
msgid "Geometry conflict detected with {}"
 | 
			
		||||
msgstr "Geometriekonflikt mit folgenden Einträgen erkannt: {}"
 | 
			
		||||
 | 
			
		||||
#: konova/utils/message_templates.py:86
 | 
			
		||||
#: konova/utils/message_templates.py:85
 | 
			
		||||
msgid ""
 | 
			
		||||
"The geometry contained more than {} vertices. It had to be simplified to "
 | 
			
		||||
"match the allowed limit of {} vertices."
 | 
			
		||||
@ -2250,20 +2249,20 @@ msgstr ""
 | 
			
		||||
"Die Geometrie enthielt mehr als {} Eckpunkte. Sie musste vereinfacht werden "
 | 
			
		||||
"um die Obergrenze von {} erlaubten Eckpunkten einzuhalten."
 | 
			
		||||
 | 
			
		||||
#: konova/utils/message_templates.py:89
 | 
			
		||||
#: konova/utils/message_templates.py:88
 | 
			
		||||
msgid "This intervention has {} revocations"
 | 
			
		||||
msgstr "Dem Eingriff liegen {} Widersprüche vor"
 | 
			
		||||
 | 
			
		||||
#: konova/utils/message_templates.py:92
 | 
			
		||||
#: konova/utils/message_templates.py:91
 | 
			
		||||
msgid "Checked on {} by {}"
 | 
			
		||||
msgstr "Am {} von {} geprüft worden"
 | 
			
		||||
 | 
			
		||||
#: konova/utils/message_templates.py:93
 | 
			
		||||
#: konova/utils/message_templates.py:92
 | 
			
		||||
msgid "Data has changed since last check on {} by {}"
 | 
			
		||||
msgstr ""
 | 
			
		||||
"Daten wurden nach der letzten Prüfung geändert. Letzte Prüfung am {} durch {}"
 | 
			
		||||
 | 
			
		||||
#: konova/utils/message_templates.py:94
 | 
			
		||||
#: konova/utils/message_templates.py:93
 | 
			
		||||
msgid "Current data not checked yet"
 | 
			
		||||
msgstr "Momentane Daten noch nicht geprüft"
 | 
			
		||||
 | 
			
		||||
@ -2297,7 +2296,7 @@ msgstr ""
 | 
			
		||||
"Dieses Datum ist unrealistisch. Geben Sie bitte das korrekte Datum ein "
 | 
			
		||||
"(>1950)."
 | 
			
		||||
 | 
			
		||||
#: konova/views/home.py:74 templates/navbars/navbar.html:16
 | 
			
		||||
#: konova/views/home.py:75 templates/navbars/navbar.html:16
 | 
			
		||||
msgid "Home"
 | 
			
		||||
msgstr "Home"
 | 
			
		||||
 | 
			
		||||
@ -2305,7 +2304,7 @@ msgstr "Home"
 | 
			
		||||
msgid "Log"
 | 
			
		||||
msgstr "Log"
 | 
			
		||||
 | 
			
		||||
#: konova/views/map_proxy.py:71
 | 
			
		||||
#: konova/views/map_proxy.py:70
 | 
			
		||||
msgid ""
 | 
			
		||||
"The external service is currently unavailable.<br>Please try again in a few "
 | 
			
		||||
"moments..."
 | 
			
		||||
@ -3118,26 +3117,20 @@ msgstr "Team verlassen"
 | 
			
		||||
#: venv/lib/python3.7/site-packages/bootstrap4/components.py:17
 | 
			
		||||
#: venv/lib/python3.7/site-packages/bootstrap4/templates/bootstrap4/form_errors.html:3
 | 
			
		||||
#: venv/lib/python3.7/site-packages/bootstrap4/templates/bootstrap4/messages.html:4
 | 
			
		||||
#: venv_py3.9/lib/python3.9/site-packages/bootstrap4/components.py:17
 | 
			
		||||
#: venv_py3.9/lib/python3.9/site-packages/bootstrap4/templates/bootstrap4/form_errors.html:3
 | 
			
		||||
#: venv_py3.9/lib/python3.9/site-packages/bootstrap4/templates/bootstrap4/messages.html:4
 | 
			
		||||
msgid "close"
 | 
			
		||||
msgstr "Schließen"
 | 
			
		||||
 | 
			
		||||
#: venv/lib/python3.7/site-packages/click/_termui_impl.py:496
 | 
			
		||||
#: venv_py3.9/lib/python3.9/site-packages/click/_termui_impl.py:496
 | 
			
		||||
#, python-brace-format
 | 
			
		||||
msgid "{editor}: Editing failed"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: venv/lib/python3.7/site-packages/click/_termui_impl.py:500
 | 
			
		||||
#: venv_py3.9/lib/python3.9/site-packages/click/_termui_impl.py:500
 | 
			
		||||
#, python-brace-format
 | 
			
		||||
msgid "{editor}: Editing failed: {e}"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: venv/lib/python3.7/site-packages/click/_unicodefun.py:20
 | 
			
		||||
#: venv_py3.9/lib/python3.9/site-packages/click/_unicodefun.py:20
 | 
			
		||||
msgid ""
 | 
			
		||||
"Click will abort further execution because Python was configured to use "
 | 
			
		||||
"ASCII as encoding for the environment. Consult https://click.palletsprojects."
 | 
			
		||||
@ -3145,7 +3138,6 @@ msgid ""
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: venv/lib/python3.7/site-packages/click/_unicodefun.py:56
 | 
			
		||||
#: venv_py3.9/lib/python3.9/site-packages/click/_unicodefun.py:56
 | 
			
		||||
msgid ""
 | 
			
		||||
"Additional information: on this system no suitable UTF-8 locales were "
 | 
			
		||||
"discovered. This most likely requires resolving by reconfiguring the locale "
 | 
			
		||||
@ -3153,14 +3145,12 @@ msgid ""
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: venv/lib/python3.7/site-packages/click/_unicodefun.py:65
 | 
			
		||||
#: venv_py3.9/lib/python3.9/site-packages/click/_unicodefun.py:65
 | 
			
		||||
msgid ""
 | 
			
		||||
"This system supports the C.UTF-8 locale which is recommended. You might be "
 | 
			
		||||
"able to resolve your issue by exporting the following environment variables:"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: venv/lib/python3.7/site-packages/click/_unicodefun.py:75
 | 
			
		||||
#: venv_py3.9/lib/python3.9/site-packages/click/_unicodefun.py:75
 | 
			
		||||
#, python-brace-format
 | 
			
		||||
msgid ""
 | 
			
		||||
"This system lists some UTF-8 supporting locales that you can pick from. The "
 | 
			
		||||
@ -3168,7 +3158,6 @@ msgid ""
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: venv/lib/python3.7/site-packages/click/_unicodefun.py:93
 | 
			
		||||
#: venv_py3.9/lib/python3.9/site-packages/click/_unicodefun.py:93
 | 
			
		||||
msgid ""
 | 
			
		||||
"Click discovered that you exported a UTF-8 locale but the locale system "
 | 
			
		||||
"could not pick up from it because it does not exist. The exported locale is "
 | 
			
		||||
@ -3176,32 +3165,25 @@ msgid ""
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: venv/lib/python3.7/site-packages/click/core.py:1095
 | 
			
		||||
#: venv_py3.9/lib/python3.9/site-packages/click/core.py:1095
 | 
			
		||||
msgid "Aborted!"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: venv/lib/python3.7/site-packages/click/core.py:1279
 | 
			
		||||
#: venv/lib/python3.7/site-packages/click/decorators.py:434
 | 
			
		||||
#: venv_py3.9/lib/python3.9/site-packages/click/core.py:1279
 | 
			
		||||
#: venv_py3.9/lib/python3.9/site-packages/click/decorators.py:434
 | 
			
		||||
msgid "Show this message and exit."
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: venv/lib/python3.7/site-packages/click/core.py:1308
 | 
			
		||||
#: venv/lib/python3.7/site-packages/click/core.py:1334
 | 
			
		||||
#: venv_py3.9/lib/python3.9/site-packages/click/core.py:1308
 | 
			
		||||
#: venv_py3.9/lib/python3.9/site-packages/click/core.py:1334
 | 
			
		||||
#, python-brace-format
 | 
			
		||||
msgid "(Deprecated) {text}"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: venv/lib/python3.7/site-packages/click/core.py:1351
 | 
			
		||||
#: venv_py3.9/lib/python3.9/site-packages/click/core.py:1351
 | 
			
		||||
msgid "Options"
 | 
			
		||||
msgstr "Optionen"
 | 
			
		||||
 | 
			
		||||
#: venv/lib/python3.7/site-packages/click/core.py:1375
 | 
			
		||||
#: venv_py3.9/lib/python3.9/site-packages/click/core.py:1375
 | 
			
		||||
#, python-brace-format
 | 
			
		||||
msgid "Got unexpected extra argument ({args})"
 | 
			
		||||
msgid_plural "Got unexpected extra arguments ({args})"
 | 
			
		||||
@ -3209,32 +3191,26 @@ msgstr[0] ""
 | 
			
		||||
msgstr[1] ""
 | 
			
		||||
 | 
			
		||||
#: venv/lib/python3.7/site-packages/click/core.py:1390
 | 
			
		||||
#: venv_py3.9/lib/python3.9/site-packages/click/core.py:1390
 | 
			
		||||
msgid "DeprecationWarning: The command {name!r} is deprecated."
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: venv/lib/python3.7/site-packages/click/core.py:1607
 | 
			
		||||
#: venv_py3.9/lib/python3.9/site-packages/click/core.py:1607
 | 
			
		||||
msgid "Commands"
 | 
			
		||||
msgstr "Befehle"
 | 
			
		||||
 | 
			
		||||
#: venv/lib/python3.7/site-packages/click/core.py:1639
 | 
			
		||||
#: venv_py3.9/lib/python3.9/site-packages/click/core.py:1639
 | 
			
		||||
msgid "Missing command."
 | 
			
		||||
msgstr "Befehl fehlt"
 | 
			
		||||
 | 
			
		||||
#: venv/lib/python3.7/site-packages/click/core.py:1717
 | 
			
		||||
#: venv_py3.9/lib/python3.9/site-packages/click/core.py:1717
 | 
			
		||||
msgid "No such command {name!r}."
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: venv/lib/python3.7/site-packages/click/core.py:2258
 | 
			
		||||
#: venv_py3.9/lib/python3.9/site-packages/click/core.py:2258
 | 
			
		||||
msgid "Value must be an iterable."
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: venv/lib/python3.7/site-packages/click/core.py:2278
 | 
			
		||||
#: venv_py3.9/lib/python3.9/site-packages/click/core.py:2278
 | 
			
		||||
#, python-brace-format
 | 
			
		||||
msgid "Takes {nargs} values but 1 was given."
 | 
			
		||||
msgid_plural "Takes {nargs} values but {len} were given."
 | 
			
		||||
@ -3242,99 +3218,81 @@ msgstr[0] ""
 | 
			
		||||
msgstr[1] ""
 | 
			
		||||
 | 
			
		||||
#: venv/lib/python3.7/site-packages/click/core.py:2701
 | 
			
		||||
#: venv_py3.9/lib/python3.9/site-packages/click/core.py:2701
 | 
			
		||||
#, python-brace-format
 | 
			
		||||
msgid "env var: {var}"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: venv/lib/python3.7/site-packages/click/core.py:2724
 | 
			
		||||
#: venv_py3.9/lib/python3.9/site-packages/click/core.py:2724
 | 
			
		||||
msgid "(dynamic)"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: venv/lib/python3.7/site-packages/click/core.py:2735
 | 
			
		||||
#: venv_py3.9/lib/python3.9/site-packages/click/core.py:2735
 | 
			
		||||
#, python-brace-format
 | 
			
		||||
msgid "default: {default}"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: venv/lib/python3.7/site-packages/click/core.py:2748
 | 
			
		||||
#: venv_py3.9/lib/python3.9/site-packages/click/core.py:2748
 | 
			
		||||
msgid "required"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: venv/lib/python3.7/site-packages/click/decorators.py:339
 | 
			
		||||
#: venv_py3.9/lib/python3.9/site-packages/click/decorators.py:339
 | 
			
		||||
#, python-format
 | 
			
		||||
msgid "%(prog)s, version %(version)s"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: venv/lib/python3.7/site-packages/click/decorators.py:403
 | 
			
		||||
#: venv_py3.9/lib/python3.9/site-packages/click/decorators.py:403
 | 
			
		||||
msgid "Show the version and exit."
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: venv/lib/python3.7/site-packages/click/exceptions.py:43
 | 
			
		||||
#: venv/lib/python3.7/site-packages/click/exceptions.py:79
 | 
			
		||||
#: venv_py3.9/lib/python3.9/site-packages/click/exceptions.py:43
 | 
			
		||||
#: venv_py3.9/lib/python3.9/site-packages/click/exceptions.py:79
 | 
			
		||||
#, python-brace-format
 | 
			
		||||
msgid "Error: {message}"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: venv/lib/python3.7/site-packages/click/exceptions.py:71
 | 
			
		||||
#: venv_py3.9/lib/python3.9/site-packages/click/exceptions.py:71
 | 
			
		||||
#, python-brace-format
 | 
			
		||||
msgid "Try '{command} {option}' for help."
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: venv/lib/python3.7/site-packages/click/exceptions.py:120
 | 
			
		||||
#: venv_py3.9/lib/python3.9/site-packages/click/exceptions.py:120
 | 
			
		||||
#, python-brace-format
 | 
			
		||||
msgid "Invalid value: {message}"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: venv/lib/python3.7/site-packages/click/exceptions.py:122
 | 
			
		||||
#: venv_py3.9/lib/python3.9/site-packages/click/exceptions.py:122
 | 
			
		||||
#, python-brace-format
 | 
			
		||||
msgid "Invalid value for {param_hint}: {message}"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: venv/lib/python3.7/site-packages/click/exceptions.py:178
 | 
			
		||||
#: venv_py3.9/lib/python3.9/site-packages/click/exceptions.py:178
 | 
			
		||||
msgid "Missing argument"
 | 
			
		||||
msgstr "Argument fehlt"
 | 
			
		||||
 | 
			
		||||
#: venv/lib/python3.7/site-packages/click/exceptions.py:180
 | 
			
		||||
#: venv_py3.9/lib/python3.9/site-packages/click/exceptions.py:180
 | 
			
		||||
msgid "Missing option"
 | 
			
		||||
msgstr "Option fehlt"
 | 
			
		||||
 | 
			
		||||
#: venv/lib/python3.7/site-packages/click/exceptions.py:182
 | 
			
		||||
#: venv_py3.9/lib/python3.9/site-packages/click/exceptions.py:182
 | 
			
		||||
msgid "Missing parameter"
 | 
			
		||||
msgstr "Parameter fehlt"
 | 
			
		||||
 | 
			
		||||
#: venv/lib/python3.7/site-packages/click/exceptions.py:184
 | 
			
		||||
#: venv_py3.9/lib/python3.9/site-packages/click/exceptions.py:184
 | 
			
		||||
#, python-brace-format
 | 
			
		||||
msgid "Missing {param_type}"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: venv/lib/python3.7/site-packages/click/exceptions.py:191
 | 
			
		||||
#: venv_py3.9/lib/python3.9/site-packages/click/exceptions.py:191
 | 
			
		||||
#, python-brace-format
 | 
			
		||||
msgid "Missing parameter: {param_name}"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: venv/lib/python3.7/site-packages/click/exceptions.py:211
 | 
			
		||||
#: venv_py3.9/lib/python3.9/site-packages/click/exceptions.py:211
 | 
			
		||||
#, python-brace-format
 | 
			
		||||
msgid "No such option: {name}"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: venv/lib/python3.7/site-packages/click/exceptions.py:223
 | 
			
		||||
#: venv_py3.9/lib/python3.9/site-packages/click/exceptions.py:223
 | 
			
		||||
#, python-brace-format
 | 
			
		||||
msgid "Did you mean {possibility}?"
 | 
			
		||||
msgid_plural "(Possible options: {possibilities})"
 | 
			
		||||
@ -3342,75 +3300,61 @@ msgstr[0] ""
 | 
			
		||||
msgstr[1] ""
 | 
			
		||||
 | 
			
		||||
#: venv/lib/python3.7/site-packages/click/exceptions.py:261
 | 
			
		||||
#: venv_py3.9/lib/python3.9/site-packages/click/exceptions.py:261
 | 
			
		||||
msgid "unknown error"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: venv/lib/python3.7/site-packages/click/exceptions.py:268
 | 
			
		||||
#: venv_py3.9/lib/python3.9/site-packages/click/exceptions.py:268
 | 
			
		||||
msgid "Could not open file {filename!r}: {message}"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: venv/lib/python3.7/site-packages/click/parser.py:231
 | 
			
		||||
#: venv_py3.9/lib/python3.9/site-packages/click/parser.py:231
 | 
			
		||||
msgid "Argument {name!r} takes {nargs} values."
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: venv/lib/python3.7/site-packages/click/parser.py:413
 | 
			
		||||
#: venv_py3.9/lib/python3.9/site-packages/click/parser.py:413
 | 
			
		||||
msgid "Option {name!r} does not take a value."
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: venv/lib/python3.7/site-packages/click/parser.py:474
 | 
			
		||||
#: venv_py3.9/lib/python3.9/site-packages/click/parser.py:474
 | 
			
		||||
msgid "Option {name!r} requires an argument."
 | 
			
		||||
msgid_plural "Option {name!r} requires {nargs} arguments."
 | 
			
		||||
msgstr[0] ""
 | 
			
		||||
msgstr[1] ""
 | 
			
		||||
 | 
			
		||||
#: venv/lib/python3.7/site-packages/click/shell_completion.py:316
 | 
			
		||||
#: venv_py3.9/lib/python3.9/site-packages/click/shell_completion.py:316
 | 
			
		||||
msgid "Shell completion is not supported for Bash versions older than 4.4."
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: venv/lib/python3.7/site-packages/click/shell_completion.py:322
 | 
			
		||||
#: venv_py3.9/lib/python3.9/site-packages/click/shell_completion.py:322
 | 
			
		||||
msgid "Couldn't detect Bash version, shell completion is not supported."
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: venv/lib/python3.7/site-packages/click/termui.py:161
 | 
			
		||||
#: venv_py3.9/lib/python3.9/site-packages/click/termui.py:161
 | 
			
		||||
msgid "Repeat for confirmation"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: venv/lib/python3.7/site-packages/click/termui.py:178
 | 
			
		||||
#: venv_py3.9/lib/python3.9/site-packages/click/termui.py:178
 | 
			
		||||
msgid "Error: The value you entered was invalid."
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: venv/lib/python3.7/site-packages/click/termui.py:180
 | 
			
		||||
#: venv_py3.9/lib/python3.9/site-packages/click/termui.py:180
 | 
			
		||||
#, python-brace-format
 | 
			
		||||
msgid "Error: {e.message}"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: venv/lib/python3.7/site-packages/click/termui.py:191
 | 
			
		||||
#: venv_py3.9/lib/python3.9/site-packages/click/termui.py:191
 | 
			
		||||
msgid "Error: The two entered values do not match."
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: venv/lib/python3.7/site-packages/click/termui.py:247
 | 
			
		||||
#: venv_py3.9/lib/python3.9/site-packages/click/termui.py:247
 | 
			
		||||
msgid "Error: invalid input"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: venv/lib/python3.7/site-packages/click/termui.py:798
 | 
			
		||||
#: venv_py3.9/lib/python3.9/site-packages/click/termui.py:798
 | 
			
		||||
msgid "Press any key to continue..."
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: venv/lib/python3.7/site-packages/click/types.py:258
 | 
			
		||||
#: venv_py3.9/lib/python3.9/site-packages/click/types.py:258
 | 
			
		||||
#, python-brace-format
 | 
			
		||||
msgid ""
 | 
			
		||||
"Choose from:\n"
 | 
			
		||||
@ -3418,82 +3362,67 @@ msgid ""
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: venv/lib/python3.7/site-packages/click/types.py:290
 | 
			
		||||
#: venv_py3.9/lib/python3.9/site-packages/click/types.py:290
 | 
			
		||||
msgid "{value!r} is not {choice}."
 | 
			
		||||
msgid_plural "{value!r} is not one of {choices}."
 | 
			
		||||
msgstr[0] ""
 | 
			
		||||
msgstr[1] ""
 | 
			
		||||
 | 
			
		||||
#: venv/lib/python3.7/site-packages/click/types.py:380
 | 
			
		||||
#: venv_py3.9/lib/python3.9/site-packages/click/types.py:380
 | 
			
		||||
msgid "{value!r} does not match the format {format}."
 | 
			
		||||
msgid_plural "{value!r} does not match the formats {formats}."
 | 
			
		||||
msgstr[0] ""
 | 
			
		||||
msgstr[1] ""
 | 
			
		||||
 | 
			
		||||
#: venv/lib/python3.7/site-packages/click/types.py:402
 | 
			
		||||
#: venv_py3.9/lib/python3.9/site-packages/click/types.py:402
 | 
			
		||||
msgid "{value!r} is not a valid {number_type}."
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: venv/lib/python3.7/site-packages/click/types.py:458
 | 
			
		||||
#: venv_py3.9/lib/python3.9/site-packages/click/types.py:458
 | 
			
		||||
#, python-brace-format
 | 
			
		||||
msgid "{value} is not in the range {range}."
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: venv/lib/python3.7/site-packages/click/types.py:599
 | 
			
		||||
#: venv_py3.9/lib/python3.9/site-packages/click/types.py:599
 | 
			
		||||
msgid "{value!r} is not a valid boolean."
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: venv/lib/python3.7/site-packages/click/types.py:623
 | 
			
		||||
#: venv_py3.9/lib/python3.9/site-packages/click/types.py:623
 | 
			
		||||
msgid "{value!r} is not a valid UUID."
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: venv/lib/python3.7/site-packages/click/types.py:801
 | 
			
		||||
#: venv_py3.9/lib/python3.9/site-packages/click/types.py:801
 | 
			
		||||
msgid "file"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: venv/lib/python3.7/site-packages/click/types.py:803
 | 
			
		||||
#: venv_py3.9/lib/python3.9/site-packages/click/types.py:803
 | 
			
		||||
msgid "directory"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: venv/lib/python3.7/site-packages/click/types.py:805
 | 
			
		||||
#: venv_py3.9/lib/python3.9/site-packages/click/types.py:805
 | 
			
		||||
msgid "path"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: venv/lib/python3.7/site-packages/click/types.py:851
 | 
			
		||||
#: venv_py3.9/lib/python3.9/site-packages/click/types.py:851
 | 
			
		||||
msgid "{name} {filename!r} does not exist."
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: venv/lib/python3.7/site-packages/click/types.py:860
 | 
			
		||||
#: venv_py3.9/lib/python3.9/site-packages/click/types.py:860
 | 
			
		||||
msgid "{name} {filename!r} is a file."
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: venv/lib/python3.7/site-packages/click/types.py:868
 | 
			
		||||
#: venv_py3.9/lib/python3.9/site-packages/click/types.py:868
 | 
			
		||||
msgid "{name} {filename!r} is a directory."
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: venv/lib/python3.7/site-packages/click/types.py:876
 | 
			
		||||
#: venv_py3.9/lib/python3.9/site-packages/click/types.py:876
 | 
			
		||||
msgid "{name} {filename!r} is not writable."
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: venv/lib/python3.7/site-packages/click/types.py:884
 | 
			
		||||
#: venv_py3.9/lib/python3.9/site-packages/click/types.py:884
 | 
			
		||||
msgid "{name} {filename!r} is not readable."
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: venv/lib/python3.7/site-packages/click/types.py:951
 | 
			
		||||
#: venv_py3.9/lib/python3.9/site-packages/click/types.py:951
 | 
			
		||||
#, python-brace-format
 | 
			
		||||
msgid "{len_type} values are required, but {len_value} was given."
 | 
			
		||||
msgid_plural "{len_type} values are required, but {len_value} were given."
 | 
			
		||||
@ -3501,22 +3430,18 @@ msgstr[0] ""
 | 
			
		||||
msgstr[1] ""
 | 
			
		||||
 | 
			
		||||
#: venv/lib/python3.7/site-packages/django/contrib/messages/apps.py:7
 | 
			
		||||
#: venv_py3.9/lib/python3.9/site-packages/django/contrib/messages/apps.py:7
 | 
			
		||||
msgid "Messages"
 | 
			
		||||
msgstr "Nachrichten"
 | 
			
		||||
 | 
			
		||||
#: venv/lib/python3.7/site-packages/django/contrib/sitemaps/apps.py:7
 | 
			
		||||
#: venv_py3.9/lib/python3.9/site-packages/django/contrib/sitemaps/apps.py:7
 | 
			
		||||
msgid "Site Maps"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: venv/lib/python3.7/site-packages/django/contrib/staticfiles/apps.py:9
 | 
			
		||||
#: venv_py3.9/lib/python3.9/site-packages/django/contrib/staticfiles/apps.py:9
 | 
			
		||||
msgid "Static Files"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: venv/lib/python3.7/site-packages/django/contrib/syndication/apps.py:7
 | 
			
		||||
#: venv_py3.9/lib/python3.9/site-packages/django/contrib/syndication/apps.py:7
 | 
			
		||||
msgid "Syndication"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
@ -4688,6 +4613,24 @@ msgstr ""
 | 
			
		||||
msgid "Unable to connect to qpid with SASL mechanism %s"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#~ msgid ""
 | 
			
		||||
#~ "Deductable surface can not be larger than existing surfaces in after "
 | 
			
		||||
#~ "states"
 | 
			
		||||
#~ msgstr ""
 | 
			
		||||
#~ "Die abbuchbare Fläche darf die Gesamtfläche der Zielzustände nicht "
 | 
			
		||||
#~ "überschreiten"
 | 
			
		||||
 | 
			
		||||
#~ msgid ""
 | 
			
		||||
#~ "Deductable surface can not be smaller than the sum of already existing "
 | 
			
		||||
#~ "deductions. Please contact the responsible users for the deductions!"
 | 
			
		||||
#~ msgstr ""
 | 
			
		||||
#~ "Es wurde bereits mehr Fläche abgebucht, als Sie nun als abbuchbar "
 | 
			
		||||
#~ "einstellen wollen. Kontaktieren Sie die für die Abbuchungen "
 | 
			
		||||
#~ "verantwortlichen Nutzer!"
 | 
			
		||||
 | 
			
		||||
#~ msgid "Added deadline"
 | 
			
		||||
#~ msgstr "Frist/Termin hinzugefügt"
 | 
			
		||||
 | 
			
		||||
#~ msgid "Change default configuration for your KSP map"
 | 
			
		||||
#~ msgstr "Karteneinstellungen ändern"
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user