Missing group message

* adds group checker decorator for adding a message informing about missing group privileges
This commit is contained in:
mipel 2021-08-03 09:45:41 +02:00
parent d4b3b97f84
commit a06b532108
7 changed files with 134 additions and 89 deletions

View File

@ -15,6 +15,7 @@ from konova.utils.message_templates import FORM_INVALID
@login_required @login_required
@any_group_check
def index_view(request: HttpRequest): def index_view(request: HttpRequest):
""" """
Renders the index view for compensation Renders the index view for compensation
@ -56,6 +57,7 @@ def edit_view(request: HttpRequest, id: str):
@login_required @login_required
@any_group_check
def open_view(request: HttpRequest, id: str): def open_view(request: HttpRequest, id: str):
# ToDo # ToDo
pass pass
@ -81,6 +83,7 @@ def remove_view(request: HttpRequest, id: str):
@login_required @login_required
@any_group_check
def account_index_view(request: HttpRequest): def account_index_view(request: HttpRequest):
""" """
Renders the index view for eco accounts Renders the index view for eco accounts
@ -122,6 +125,7 @@ def account_edit_view(request: HttpRequest, id: str):
@login_required @login_required
@any_group_check
def account_open_view(request: HttpRequest, id: str): def account_open_view(request: HttpRequest, id: str):
# ToDo # ToDo
pass pass

View File

@ -15,6 +15,7 @@ from konova.utils.user_checks import in_group
@login_required @login_required
@any_group_check
def index_view(request: HttpRequest): def index_view(request: HttpRequest):
""" """
Renders the index view for Interventions Renders the index view for Interventions
@ -115,6 +116,7 @@ def new_document_view(request: HttpRequest, id: str):
@login_required @login_required
@any_group_check
def open_view(request: HttpRequest, id: str): def open_view(request: HttpRequest, id: str):
""" Renders a detail view for viewing an intervention's data """ Renders a detail view for viewing an intervention's data

View File

@ -46,6 +46,25 @@ def superuser_required(function):
return wrap return wrap
def any_group_check(function):
"""
Checks for any group membership. Adds a message in case of having none.
"""
@wraps(function)
def wrap(request, *args, **kwargs):
user = request.user
# Inform user about missing group privileges!
groups = user.groups.all()
if not groups:
messages.info(
request,
_("+++ Attention: You are not part of any group. You won't be able to create, edit or do anything. Please contact an administrator. +++")
)
return function(request, *args, **kwargs)
return wrap
def default_group_required(function): def default_group_required(function):
""" """
A decorator for functions which shall only be usable for users of specific groups. A decorator for functions which shall only be usable for users of specific groups.

View File

@ -16,6 +16,7 @@ from django.utils.translation import gettext_lazy as _
from compensation.models import Compensation, EcoAccount from compensation.models import Compensation, EcoAccount
from intervention.models import Intervention from intervention.models import Intervention
from konova.contexts import BaseContext from konova.contexts import BaseContext
from konova.decorators import any_group_check
from konova.forms import RemoveModalForm from konova.forms import RemoveModalForm
from konova.models import Document from konova.models import Document
from news.models import ServerMessage from news.models import ServerMessage
@ -37,6 +38,7 @@ def logout_view(request: HttpRequest):
@login_required @login_required
@any_group_check
def home_view(request: HttpRequest): def home_view(request: HttpRequest):
""" """
Renders the landing page Renders the landing page

Binary file not shown.

View File

@ -6,14 +6,14 @@
#: compensation/forms.py:29 compensation/forms.py:34 compensation/forms.py:47 #: compensation/forms.py:29 compensation/forms.py:34 compensation/forms.py:47
#: intervention/filters.py:26 intervention/filters.py:40 #: intervention/filters.py:26 intervention/filters.py:40
#: intervention/filters.py:47 intervention/filters.py:48 konova/forms.py:85 #: intervention/filters.py:47 intervention/filters.py:48 konova/forms.py:85
#: konova/forms.py:177 konova/forms.py:247 konova/forms.py:252 #: konova/forms.py:177 konova/forms.py:248 konova/forms.py:253
#: konova/forms.py:264 konova/forms.py:275 konova/forms.py:288 user/forms.py:38 #: konova/forms.py:265 konova/forms.py:276 konova/forms.py:289 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-02 14:06+0200\n" "POT-Creation-Date: 2021-08-03 09:19+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"
@ -24,7 +24,7 @@ msgstr ""
"Plural-Forms: nplurals=2; plural=(n != 1);\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n"
#: compensation/forms.py:28 #: compensation/forms.py:28
#: intervention/templates/intervention/detail/includes/eco-account-withdraws.html:31 #: intervention/templates/intervention/detail/includes/eco-account-withdraws.html:33
msgid "Amount" msgid "Amount"
msgstr "Menge" msgstr "Menge"
@ -33,7 +33,7 @@ msgid "Amount in Euro"
msgstr "Betrag in Euro" msgstr "Betrag in Euro"
#: compensation/forms.py:33 #: compensation/forms.py:33
#: intervention/templates/intervention/detail/includes/payments.html:29 #: intervention/templates/intervention/detail/includes/payments.html:31
msgid "Due on" msgid "Due on"
msgstr "Fällig am" msgstr "Fällig am"
@ -58,26 +58,26 @@ msgid "Add a payment for intervention '{}'"
msgstr "Neue Ersatzzahlung zu Eingriff '{}' hinzufügen" msgstr "Neue Ersatzzahlung zu Eingriff '{}' hinzufügen"
#: compensation/tables.py:24 compensation/tables.py:164 #: compensation/tables.py:24 compensation/tables.py:164
#: intervention/forms.py:28 intervention/tables.py:23 #: intervention/forms.py:29 intervention/tables.py:23
#: intervention/templates/intervention/detail/includes/compensations.html:28 #: intervention/templates/intervention/detail/includes/compensations.html:30
msgid "Identifier" msgid "Identifier"
msgstr "Kennung" msgstr "Kennung"
#: compensation/tables.py:29 compensation/tables.py:169 #: compensation/tables.py:29 compensation/tables.py:169
#: intervention/forms.py:35 intervention/tables.py:28 #: intervention/forms.py:36 intervention/tables.py:28
#: intervention/templates/intervention/detail/includes/compensations.html:31 #: intervention/templates/intervention/detail/includes/compensations.html:33
#: intervention/templates/intervention/detail/includes/documents.html:26 #: intervention/templates/intervention/detail/includes/documents.html:28
#: intervention/templates/intervention/detail/view.html:60 konova/forms.py:246 #: intervention/templates/intervention/detail/view.html:64 konova/forms.py:247
msgid "Title" msgid "Title"
msgstr "Bezeichnung" msgstr "Bezeichnung"
#: compensation/tables.py:34 intervention/tables.py:33 #: compensation/tables.py:34 intervention/tables.py:33
#: intervention/templates/intervention/detail/view.html:92 #: intervention/templates/intervention/detail/view.html:96
msgid "Checked" msgid "Checked"
msgstr "Geprüft" msgstr "Geprüft"
#: compensation/tables.py:40 intervention/tables.py:39 #: compensation/tables.py:40 intervention/tables.py:39
#: intervention/templates/intervention/detail/view.html:106 #: intervention/templates/intervention/detail/view.html:110
msgid "Recorded" msgid "Recorded"
msgstr "Verzeichnet" msgstr "Verzeichnet"
@ -128,7 +128,7 @@ msgstr "Für Sie freigegeben - Datensatz kann bearbeitet werden"
msgid "Access not granted" msgid "Access not granted"
msgstr "Nicht freigegeben - Datensatz nur lesbar" msgstr "Nicht freigegeben - Datensatz nur lesbar"
#: compensation/tables.py:174 konova/forms.py:251 #: compensation/tables.py:174 konova/forms.py:252
msgid "Created on" msgid "Created on"
msgstr "Erstellt" msgstr "Erstellt"
@ -148,19 +148,19 @@ msgstr "Bearbeite {}"
msgid "Delete {}" msgid "Delete {}"
msgstr "Lösche {}" msgstr "Lösche {}"
#: compensation/views.py:77 #: compensation/views.py:79
msgid "Compensation removed" msgid "Compensation removed"
msgstr "Kompensation entfernt" msgstr "Kompensation entfernt"
#: compensation/views.py:151 #: compensation/views.py:156
msgid "Payment added" msgid "Payment added"
msgstr "Zahlung hinzugefügt" msgstr "Zahlung hinzugefügt"
#: compensation/views.py:185 #: compensation/views.py:191
msgid "Payment removed" msgid "Payment removed"
msgstr "Zahlung gelöscht" msgstr "Zahlung gelöscht"
#: compensation/views.py:210 #: compensation/views.py:217
msgid "Withdraw removed" msgid "Withdraw removed"
msgstr "Abbuchung entfernt" msgstr "Abbuchung entfernt"
@ -180,98 +180,99 @@ msgstr "Gemarkung"
msgid "Search for district" msgid "Search for district"
msgstr "Nach Gemarkung suchen" msgstr "Nach Gemarkung suchen"
#: intervention/forms.py:31 #: 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:40 #: intervention/forms.py:41
msgid "Type" msgid "Type"
msgstr "Typ" msgstr "Typ"
#: intervention/forms.py:43 #: 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:46 #: intervention/forms.py:47
#: intervention/templates/intervention/detail/view.html:68 #: intervention/templates/intervention/detail/view.html:72
msgid "Law" msgid "Law"
msgstr "Gesetz" msgstr "Gesetz"
#: intervention/forms.py:49 #: 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:52 #: intervention/forms.py:53
#: intervention/templates/intervention/detail/view.html:88 #: intervention/templates/intervention/detail/view.html:92
msgid "Intervention handler" msgid "Intervention handler"
msgstr "Eingriffsverursacher" msgstr "Eingriffsverursacher"
#: intervention/forms.py:55 #: 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:58 #: intervention/forms.py:59
msgid "Data provider" msgid "Data provider"
msgstr "Datenbereitsteller" msgstr "Datenbereitsteller"
#: intervention/forms.py:60 #: 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:65 #: intervention/forms.py:66
msgid "Organization" msgid "Organization"
msgstr "Organisation" msgstr "Organisation"
#: intervention/forms.py:71 #: intervention/forms.py:72
msgid "Data provider details" msgid "Data provider details"
msgstr "Datenbereitsteller Details" msgstr "Datenbereitsteller Details"
#: intervention/forms.py:74 #: intervention/forms.py:75
msgid "Further details" msgid "Further details"
msgstr "Weitere Details" msgstr "Weitere Details"
#: intervention/forms.py:87 #: intervention/forms.py:88
msgid "Map" msgid "Map"
msgstr "Karte" msgstr "Karte"
#: intervention/forms.py:89 #: 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:97 #: intervention/forms.py:98
msgid "Files" msgid "Files"
msgstr "Dateien" msgstr "Dateien"
#: intervention/forms.py:104 #: intervention/forms.py:105
msgid "New intervention" msgid "New intervention"
msgstr "Neuer Eingriff" msgstr "Neuer Eingriff"
#: intervention/forms.py:151 #: intervention/forms.py:152
msgid "Edit intervention" msgid "Edit intervention"
msgstr "Eingriff bearbeiten" msgstr "Eingriff bearbeiten"
#: intervention/forms.py:245 #: intervention/forms.py:246
msgid "Share link" msgid "Share link"
msgstr "Freigabelink" msgstr "Freigabelink"
#: intervention/forms.py:247 #: intervention/forms.py:248
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:256 #: intervention/forms.py:257
#: intervention/templates/intervention/detail/view.html:142
msgid "Shared with" msgid "Shared with"
msgstr "Freigegeben für" msgstr "Freigegeben für"
#: intervention/forms.py:259 #: intervention/forms.py:260
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:270 #: intervention/forms.py:271
#: intervention/templates/intervention/detail/view.html:27 #: intervention/templates/intervention/detail/view.html:27
msgid "Share" msgid "Share"
msgstr "Freigabe" msgstr "Freigabe"
#: intervention/forms.py:271 #: intervention/forms.py:272
msgid "Share settings for {}" msgid "Share settings for {}"
msgstr "Freigabe Einstellungen für {}" msgstr "Freigabe Einstellungen für {}"
@ -285,18 +286,18 @@ msgstr "Eingriffe"
msgid "Intervention" msgid "Intervention"
msgstr "Eingriff" msgstr "Eingriff"
#: intervention/templates/intervention/detail/includes/compensations.html:13 #: intervention/templates/intervention/detail/includes/compensations.html:14
msgid "Add new compensation" msgid "Add new compensation"
msgstr "Neue Kompensation hinzufügen" msgstr "Neue Kompensation hinzufügen"
#: intervention/templates/intervention/detail/includes/compensations.html:34 #: intervention/templates/intervention/detail/includes/compensations.html:36
#: intervention/templates/intervention/detail/includes/documents.html:32 #: intervention/templates/intervention/detail/includes/documents.html:34
#: intervention/templates/intervention/detail/includes/eco-account-withdraws.html:34 #: intervention/templates/intervention/detail/includes/eco-account-withdraws.html:36
#: intervention/templates/intervention/detail/includes/payments.html:35 #: intervention/templates/intervention/detail/includes/payments.html:37
msgid "Action" msgid "Action"
msgstr "Aktionen" msgstr "Aktionen"
#: intervention/templates/intervention/detail/includes/compensations.html:48 #: intervention/templates/intervention/detail/includes/compensations.html:51
msgid "Remove compensation" msgid "Remove compensation"
msgstr "Kompensation entfernen" msgstr "Kompensation entfernen"
@ -304,17 +305,17 @@ msgstr "Kompensation entfernen"
msgid "Documents" msgid "Documents"
msgstr "Dokumente" msgstr "Dokumente"
#: intervention/templates/intervention/detail/includes/documents.html:13 #: intervention/templates/intervention/detail/includes/documents.html:14
#: konova/forms.py:287 #: konova/forms.py:288
msgid "Add new document" msgid "Add new document"
msgstr "Neues Dokument hinzufügen" msgstr "Neues Dokument hinzufügen"
#: intervention/templates/intervention/detail/includes/documents.html:29 #: intervention/templates/intervention/detail/includes/documents.html:31
#: konova/forms.py:274 #: konova/forms.py:275
msgid "Comment" msgid "Comment"
msgstr "Kommentar" msgstr "Kommentar"
#: intervention/templates/intervention/detail/includes/documents.html:46 #: intervention/templates/intervention/detail/includes/documents.html:49
msgid "Remove document" msgid "Remove document"
msgstr "Dokument löschen" msgstr "Dokument löschen"
@ -322,15 +323,15 @@ msgstr "Dokument löschen"
msgid "Eco Account Withdraws" msgid "Eco Account Withdraws"
msgstr "Ökokonto Abbuchungen" msgstr "Ökokonto Abbuchungen"
#: intervention/templates/intervention/detail/includes/eco-account-withdraws.html:13 #: intervention/templates/intervention/detail/includes/eco-account-withdraws.html:14
msgid "Add new withdraw" msgid "Add new withdraw"
msgstr "Neue Abbuchung hinzufügen" msgstr "Neue Abbuchung hinzufügen"
#: intervention/templates/intervention/detail/includes/eco-account-withdraws.html:28 #: intervention/templates/intervention/detail/includes/eco-account-withdraws.html:30
msgid "Account Identifier" msgid "Account Identifier"
msgstr "Ökokonto Kennung" msgstr "Ökokonto Kennung"
#: intervention/templates/intervention/detail/includes/eco-account-withdraws.html:48 #: intervention/templates/intervention/detail/includes/eco-account-withdraws.html:51
msgid "Remove Withdraw" msgid "Remove Withdraw"
msgstr "Abbuchung entfernen" msgstr "Abbuchung entfernen"
@ -338,20 +339,20 @@ msgstr "Abbuchung entfernen"
msgid "Payments" msgid "Payments"
msgstr "Ersatzzahlungen" msgstr "Ersatzzahlungen"
#: intervention/templates/intervention/detail/includes/payments.html:13 #: intervention/templates/intervention/detail/includes/payments.html:14
msgid "Add new payment" msgid "Add new payment"
msgstr "Neue Zahlung hinzufügen" msgstr "Neue Zahlung hinzufügen"
#: intervention/templates/intervention/detail/includes/payments.html:26 #: intervention/templates/intervention/detail/includes/payments.html:28
msgctxt "money" msgctxt "money"
msgid "Amount" msgid "Amount"
msgstr "Betrag" msgstr "Betrag"
#: intervention/templates/intervention/detail/includes/payments.html:32 #: intervention/templates/intervention/detail/includes/payments.html:34
msgid "Transfer comment" msgid "Transfer comment"
msgstr "Verwendungszweck" msgstr "Verwendungszweck"
#: intervention/templates/intervention/detail/includes/payments.html:50 #: intervention/templates/intervention/detail/includes/payments.html:53
msgid "Remove payment" msgid "Remove payment"
msgstr "Zahlung entfernen" msgstr "Zahlung entfernen"
@ -363,85 +364,85 @@ msgstr "In LANIS öffnen"
msgid "Public report" msgid "Public report"
msgstr "Öffentlicher Bericht" msgstr "Öffentlicher Bericht"
#: intervention/templates/intervention/detail/view.html:31 #: intervention/templates/intervention/detail/view.html:32
msgid "Run check" msgid "Run check"
msgstr "Prüfung vornehmen" msgstr "Prüfung vornehmen"
#: intervention/templates/intervention/detail/view.html:36 #: intervention/templates/intervention/detail/view.html:39
msgid "Record" msgid "Record"
msgstr "Verzeichnen" msgstr "Verzeichnen"
#: intervention/templates/intervention/detail/view.html:41 #: intervention/templates/intervention/detail/view.html:46
msgid "Edit" msgid "Edit"
msgstr "Bearbeiten" msgstr "Bearbeiten"
#: intervention/templates/intervention/detail/view.html:46 #: intervention/templates/intervention/detail/view.html:50
#: venv/lib/python3.7/site-packages/django/forms/formsets.py:391 #: venv/lib/python3.7/site-packages/django/forms/formsets.py:391
msgid "Delete" msgid "Delete"
msgstr "Löschen" msgstr "Löschen"
#: intervention/templates/intervention/detail/view.html:64 #: intervention/templates/intervention/detail/view.html:68
msgid "Process type" msgid "Process type"
msgstr "Verfahrenstyp" msgstr "Verfahrenstyp"
#: intervention/templates/intervention/detail/view.html:72 #: intervention/templates/intervention/detail/view.html:76
msgid "Registration office" msgid "Registration office"
msgstr "Zulassungsbehörde" msgstr "Zulassungsbehörde"
#: intervention/templates/intervention/detail/view.html:76 #: intervention/templates/intervention/detail/view.html:80
msgid "Registration office file number" msgid "Registration office file number"
msgstr "Aktenzeichen Zulassungsbehörde" msgstr "Aktenzeichen Zulassungsbehörde"
#: intervention/templates/intervention/detail/view.html:80 #: intervention/templates/intervention/detail/view.html:84
msgid "Conservation office" msgid "Conservation office"
msgstr "Naturschutzbehörde" msgstr "Naturschutzbehörde"
#: intervention/templates/intervention/detail/view.html:84 #: intervention/templates/intervention/detail/view.html:88
msgid "Conversation office file number" msgid "Conversation office file number"
msgstr "Aktenzeichen Naturschutzbehörde" msgstr "Aktenzeichen Naturschutzbehörde"
#: intervention/templates/intervention/detail/view.html:99 #: intervention/templates/intervention/detail/view.html:103
msgid "Checked on " msgid "Checked on "
msgstr "Geprüft am " msgstr "Geprüft am "
#: intervention/templates/intervention/detail/view.html:99 #: intervention/templates/intervention/detail/view.html:103
#: intervention/templates/intervention/detail/view.html:113 #: intervention/templates/intervention/detail/view.html:117
msgid "by" msgid "by"
msgstr "von" msgstr "von"
#: intervention/templates/intervention/detail/view.html:113 #: intervention/templates/intervention/detail/view.html:117
msgid "Recorded on " msgid "Recorded on "
msgstr "Verzeichnet am" msgstr "Verzeichnet am"
#: intervention/templates/intervention/detail/view.html:120 #: intervention/templates/intervention/detail/view.html:124
msgid "Registration date" msgid "Registration date"
msgstr "Datum Zulassung bzw. Satzungsbeschluss" msgstr "Datum Zulassung bzw. Satzungsbeschluss"
#: intervention/templates/intervention/detail/view.html:124 #: intervention/templates/intervention/detail/view.html:128
msgid "Binding on" msgid "Binding on"
msgstr "Datum Bestandskraft" msgstr "Datum Bestandskraft"
#: intervention/templates/intervention/detail/view.html:128 #: intervention/templates/intervention/detail/view.html:132
msgid "Last modified" msgid "Last modified"
msgstr "Zuletzt bearbeitet" msgstr "Zuletzt bearbeitet"
#: intervention/templates/intervention/detail/view.html:142 #: intervention/templates/intervention/detail/view.html:154
msgid "No geometry added, yet." msgid "No geometry added, yet."
msgstr "Keine Geometrie vorhanden" msgstr "Keine Geometrie vorhanden"
#: intervention/views.py:63 #: intervention/views.py:65
msgid "Intervention {} added" msgid "Intervention {} added"
msgstr "Eingriff {} hinzugefügt" msgstr "Eingriff {} hinzugefügt"
#: intervention/views.py:66 intervention/views.py:173 #: intervention/views.py:68 intervention/views.py:179
msgid "Invalid input" msgid "Invalid input"
msgstr "Eingabe fehlerhaft" msgstr "Eingabe fehlerhaft"
#: intervention/views.py:95 #: intervention/views.py:97
msgid "Document '{}' added" msgid "Document '{}' added"
msgstr "Dokument '{}' hinzugefügt" msgstr "Dokument '{}' hinzugefügt"
#: intervention/views.py:147 #: intervention/views.py:153
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 "
@ -451,10 +452,16 @@ 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:170 #: intervention/views.py:176
msgid "{} edited" msgid "{} edited"
msgstr "{} bearbeitet" msgstr "{} bearbeitet"
#: intervention/views.py:205
#, fuzzy
#| msgid "Object removed"
msgid "{} removed"
msgstr "Objekt entfernt"
#: intervention/views.py:232 #: intervention/views.py:232
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"
@ -467,7 +474,7 @@ msgstr "{} ist nun für Sie freigegeben"
msgid "Share link invalid" msgid "Share link invalid"
msgstr "Freigabelink ungültig" msgstr "Freigabelink ungültig"
#: intervention/views.py:269 #: intervention/views.py:268
msgid "Share settings updated" msgid "Share settings updated"
msgstr "Freigabe Einstellungen aktualisiert" msgstr "Freigabe Einstellungen aktualisiert"
@ -507,20 +514,20 @@ msgstr "Sind Sie sicher?"
msgid "Object removed" msgid "Object removed"
msgstr "Objekt entfernt" msgstr "Objekt entfernt"
#: konova/forms.py:253 #: konova/forms.py:254
msgid "When has this file been created? Important for photos." msgid "When has this file been created? Important for photos."
msgstr "Wann wurde diese Datei erstellt oder das Foto aufgenommen?" msgstr "Wann wurde diese Datei erstellt oder das Foto aufgenommen?"
#: konova/forms.py:263 #: konova/forms.py:264
#: venv/lib/python3.7/site-packages/django/db/models/fields/files.py:231 #: venv/lib/python3.7/site-packages/django/db/models/fields/files.py:231
msgid "File" msgid "File"
msgstr "Datei" msgstr "Datei"
#: konova/forms.py:265 #: konova/forms.py:266
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"
#: konova/forms.py:276 #: konova/forms.py:277
msgid "Additional comment on this file" msgid "Additional comment on this file"
msgstr "Zusätzlicher Kommentar" msgstr "Zusätzlicher Kommentar"
@ -588,7 +595,15 @@ msgstr "Abbuchen"
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."
#: konova/views.py:140 #: konova/views.py:58
msgid ""
"+++ Attention: You are not part of any group. You won't be able to create, "
"edit or do anything. Please contact an administrator. +++"
msgstr ""
"+++ Achtung: Ihr Account ist keiner Rechtegruppe zugewiesen. Sie können somit nichts eingeben, "
"bearbeiten oder sonstige Aktionen ausführen. Kontaktieren Sie bitte einen Administrator. +++"
#: konova/views.py:147
msgid "Document '{}' deleted" msgid "Document '{}' deleted"
msgstr "Dokument '{}' gelöscht" msgstr "Dokument '{}' gelöscht"

View File

@ -6,11 +6,13 @@ from django.shortcuts import render, redirect, get_object_or_404
from django.utils.translation import gettext_lazy as _ from django.utils.translation import gettext_lazy as _
from konova.contexts import BaseContext from konova.contexts import BaseContext
from konova.decorators import any_group_check
from user.forms import UserNotificationForm, UserContactForm from user.forms import UserNotificationForm, UserContactForm
from user.models import KonovaUserExtension from user.models import KonovaUserExtension
@login_required @login_required
@any_group_check
def index_view(request: HttpRequest): def index_view(request: HttpRequest):
""" Renders the user's data index view """ Renders the user's data index view
@ -29,6 +31,7 @@ def index_view(request: HttpRequest):
@login_required @login_required
@any_group_check
def notifications_view(request: HttpRequest): def notifications_view(request: HttpRequest):
""" Renders the notifications settings view """ Renders the notifications settings view