Compare commits
9 Commits
master
...
dev_transl
| Author | SHA1 | Date | |
|---|---|---|---|
| 0937e5fb5d | |||
| 369a28851c | |||
| 93fb17877c | |||
| 6ecc2be7d7 | |||
| df159d579d | |||
| 56cd5a67d7 | |||
| bce853d278 | |||
| d9ccebae54 | |||
| 6aac94436e |
@ -1,7 +1,7 @@
|
||||
FROM alpine:3.9
|
||||
ADD ["requirements.txt", "/requirements.txt"]
|
||||
RUN apk upgrade --update && \
|
||||
apk add --update python3 build-base openldap-dev python3-dev py3-psycopg2 && \
|
||||
apk add --update python3 build-base openldap-dev python3-dev py3-psycopg2 gettext && \
|
||||
pip3 install -r /requirements.txt && rm /requirements.txt
|
||||
WORKDIR /lama
|
||||
EXPOSE 80
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
FROM alpine:3.9
|
||||
ADD ["requirements.txt", "/requirements.txt"]
|
||||
RUN apk upgrade --update && \
|
||||
apk add --update python3 build-base openldap-dev python3-dev py3-psycopg2 && \
|
||||
apk add --update python3 build-base openldap-dev python3-dev py3-psycopg2 gettext && \
|
||||
pip3 install -r /requirements.txt && rm /requirements.txt
|
||||
WORKDIR /lama
|
||||
EXPOSE 80
|
||||
|
||||
@ -8,13 +8,13 @@ from django.contrib.auth.models import Group, User
|
||||
from django.core.exceptions import ObjectDoesNotExist
|
||||
from django.db import IntegrityError
|
||||
from django.shortcuts import render, redirect, HttpResponse
|
||||
from datetime import datetime, timedelta
|
||||
|
||||
from account_helper.models import Realm
|
||||
from account_manager.utils.mail_utils import realm_send_mail
|
||||
from .forms import RealmAddForm, RealmUpdateForm
|
||||
from .models import LdapGroup, LdapUser
|
||||
from ldap import LDAPError
|
||||
from django.utils.translation import gettext as _
|
||||
|
||||
logger = logging.getLogger(__name__)
|
||||
|
||||
@ -50,8 +50,8 @@ def realm_list(request):
|
||||
|
||||
return redirect('user-detail', realm.id, user.dn)
|
||||
except ObjectDoesNotExist as err:
|
||||
logger.info('Anmeldung fehlgeschlagen', err)
|
||||
return HttpResponse("Invalid login. Please try again.")
|
||||
logger.info('Login failed', err)
|
||||
return HttpResponse(_('InvalidLogin'))
|
||||
elif len(realms) == 1:
|
||||
return redirect('realm-detail', realms[0].id)
|
||||
else:
|
||||
|
||||
@ -13,6 +13,7 @@ https://docs.djangoproject.com/en/2.1/ref/settings/
|
||||
import os
|
||||
import ldap
|
||||
from django_auth_ldap.config import LDAPSearch, GroupOfNamesType
|
||||
from django.utils.translation import ugettext_lazy as _
|
||||
|
||||
BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
|
||||
DOMAIN = os.environ['DOMAIN']
|
||||
@ -37,6 +38,7 @@ INSTALLED_APPS = [
|
||||
MIDDLEWARE = [
|
||||
'django.middleware.security.SecurityMiddleware',
|
||||
'django.contrib.sessions.middleware.SessionMiddleware',
|
||||
'django.middleware.locale.LocaleMiddleware',
|
||||
'django.middleware.common.CommonMiddleware',
|
||||
'django.middleware.csrf.CsrfViewMiddleware',
|
||||
'django.contrib.auth.middleware.AuthenticationMiddleware',
|
||||
@ -113,19 +115,6 @@ AUTH_PASSWORD_VALIDATORS = [
|
||||
},
|
||||
]
|
||||
|
||||
# Internationalization
|
||||
# https://docs.djangoproject.com/en/2.1/topics/i18n/
|
||||
|
||||
LANGUAGE_CODE = 'en-us'
|
||||
|
||||
TIME_ZONE = 'UTC'
|
||||
|
||||
USE_I18N = True
|
||||
|
||||
USE_L10N = True
|
||||
|
||||
USE_TZ = True
|
||||
|
||||
# Static files (CSS, JavaScript, Images)
|
||||
# https://docs.djangoproject.com/en/2.1/howto/static-files/
|
||||
|
||||
@ -190,6 +179,30 @@ LOGIN_URL = 'login'
|
||||
LOGIN_REDIRECT_URL = 'realm-home'
|
||||
PASSWORD_RESET_TIMEOUT_DAYS = 3
|
||||
|
||||
########################################################################################################################
|
||||
# Languages Config #
|
||||
########################################################################################################################
|
||||
# Internationalization
|
||||
# https://docs.djangoproject.com/en/2.1/topics/i18n/
|
||||
|
||||
|
||||
TIME_ZONE = 'UTC'
|
||||
|
||||
USE_I18N = True
|
||||
|
||||
USE_TZ = True
|
||||
|
||||
LANGUAGES = (
|
||||
('en', _('English')),
|
||||
('de', _('Deutsch')),
|
||||
('de-fr', _('Deutsch'))
|
||||
)
|
||||
USE_L10N = True
|
||||
LANGUAGE_CODE = 'de'
|
||||
LOCALE_PATHS = (
|
||||
os.path.join(BASE_DIR, 'locale'),
|
||||
)
|
||||
|
||||
########################################################################################################################
|
||||
# Logging Config #
|
||||
########################################################################################################################
|
||||
|
||||
@ -1,11 +1,16 @@
|
||||
from django.templatetags.static import static
|
||||
from django.utils.translation import gettext, ngettext
|
||||
from django.urls import reverse
|
||||
from django.utils import translation
|
||||
|
||||
from jinja2 import Environment
|
||||
|
||||
|
||||
def environment(**options):
|
||||
options['extensions'] = ['jinja2.ext.i18n']
|
||||
env = Environment(**options)
|
||||
env.install_gettext_translations(translation)
|
||||
# env.install_gettext_callables(gettext=gettext, ngettext=ngettext, newstyle=True)
|
||||
env.globals.update({
|
||||
'static': static,
|
||||
'url': reverse,
|
||||
|
||||
406
src/locale/de-fr/LC_MESSAGES/django.po
Normal file
406
src/locale/de-fr/LC_MESSAGES/django.po
Normal file
@ -0,0 +1,406 @@
|
||||
# SOME DESCRIPTIVE TITLE.
|
||||
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
|
||||
# This file is distributed under the same license as the PACKAGE package.
|
||||
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
|
||||
#
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2019-05-18 01:19+0000\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"
|
||||
"Language: \n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
|
||||
#: account_manager/main_views.py:54
|
||||
msgid "InvalidLogin"
|
||||
msgstr ""
|
||||
|
||||
#: account_manager/views/user_views.py:37
|
||||
msgid ""
|
||||
"Der angefragte Nutzer gehört einem anderen Bereich an. Nutzer können nur von "
|
||||
"dem Bereich bearbeitet werden, in dem sie erstellt wurden."
|
||||
msgstr ""
|
||||
|
||||
#: core/docker_settings.py:196
|
||||
msgid "English"
|
||||
msgstr ""
|
||||
|
||||
#: core/docker_settings.py:197 core/docker_settings.py:198
|
||||
msgid "Deutsch"
|
||||
msgstr ""
|
||||
|
||||
#: templates/admin/list_user.jinja2:8
|
||||
msgid "DjangoKnownUsers"
|
||||
msgstr ""
|
||||
|
||||
#: templates/admin/list_user.jinja2:9
|
||||
msgid "DjangoAdminPages"
|
||||
msgstr ""
|
||||
|
||||
#: templates/admin/list_user.jinja2:12
|
||||
msgid "SuperAdminInfo"
|
||||
msgstr ""
|
||||
|
||||
#: templates/admin/list_user.jinja2:18 templates/macros/utils_macros.jinja2:28
|
||||
#: templates/macros/utils_macros.jinja2:77
|
||||
#: templates/macros/utils_macros.jinja2:138
|
||||
#: templates/realm/realm_user_multiple_delete.jinja2:23
|
||||
#: templates/realm/realm_user_multiple_delete_confirm.jinja2:11
|
||||
msgid "Search"
|
||||
msgstr ""
|
||||
|
||||
#: templates/admin/list_user.jinja2:23
|
||||
msgid "SuperAdmin"
|
||||
msgstr ""
|
||||
|
||||
#: templates/admin/list_user.jinja2:24 templates/macros/form_macros.jinja2:309
|
||||
#: templates/macros/utils_macros.jinja2:33
|
||||
msgid "Username"
|
||||
msgstr ""
|
||||
|
||||
#: templates/admin/list_user.jinja2:25 templates/macros/form_macros.jinja2:310
|
||||
#: templates/macros/utils_macros.jinja2:34
|
||||
#: templates/realm/realm_detailed.jinja2:28
|
||||
#: templates/user/realm_user_detail.jinja2:32
|
||||
msgid "Email"
|
||||
msgstr ""
|
||||
|
||||
#: templates/admin/list_user.jinja2:26 templates/macros/form_macros.jinja2:311
|
||||
#: templates/macros/utils_macros.jinja2:35
|
||||
#: templates/user/realm_user_detail.jinja2:30
|
||||
msgid "FirstName"
|
||||
msgstr ""
|
||||
|
||||
#: templates/admin/list_user.jinja2:27 templates/macros/form_macros.jinja2:312
|
||||
#: templates/macros/utils_macros.jinja2:36
|
||||
#: templates/user/realm_user_detail.jinja2:31
|
||||
msgid "LastName"
|
||||
msgstr ""
|
||||
|
||||
#. Translators: The Application Name: default LAMa
|
||||
#: templates/base.jinja2:33
|
||||
msgid "AppName"
|
||||
msgstr ""
|
||||
|
||||
#. Translators: Logout button
|
||||
#: templates/base.jinja2:40
|
||||
msgid "Logout"
|
||||
msgstr ""
|
||||
|
||||
#. Translators: Login Button
|
||||
#: templates/base.jinja2:43
|
||||
msgid "Login"
|
||||
msgstr ""
|
||||
|
||||
#. Translators: About link title
|
||||
#: templates/base.jinja2:58 templates/base_admin.jinja2:50
|
||||
msgid "About"
|
||||
msgstr ""
|
||||
|
||||
#: templates/base_admin.jinja2:10
|
||||
msgid "DjangoAdminArea"
|
||||
msgstr ""
|
||||
|
||||
#: templates/base_admin.jinja2:14 templates/realm/realm_home.jinja2:6
|
||||
msgid "Realms"
|
||||
msgstr ""
|
||||
|
||||
#: templates/base_admin.jinja2:24
|
||||
msgid "RealmOverview"
|
||||
msgstr ""
|
||||
|
||||
#: templates/base_admin.jinja2:27 templates/realm/realm_detailed.jinja2:5
|
||||
msgid "Realm"
|
||||
msgstr ""
|
||||
|
||||
#: templates/base_admin.jinja2:31
|
||||
msgid "RealmInformation"
|
||||
msgstr ""
|
||||
|
||||
#: templates/base_admin.jinja2:34 templates/realm/realm_user.jinja2:5
|
||||
msgid "User"
|
||||
msgstr ""
|
||||
|
||||
#: templates/base_admin.jinja2:37 templates/realm/realm_groups.jinja2:4
|
||||
#: templates/user/realm_user_detail.jinja2:37
|
||||
msgid "Groups"
|
||||
msgstr ""
|
||||
|
||||
#: templates/base_admin.jinja2:46 templates/realm/realm_home.jinja2:11
|
||||
msgid "RealmAdd"
|
||||
msgstr ""
|
||||
|
||||
#: templates/group/group_add.jinja2:6
|
||||
msgid "AddGroup"
|
||||
msgstr ""
|
||||
|
||||
#: templates/group/group_add.jinja2:18 templates/group/group_detail.jinja2:35
|
||||
#: templates/realm/realm_update.jinja2:14
|
||||
#: templates/user/realm_user_add.jinja2:14
|
||||
#: templates/user/realm_user_detail.jinja2:97
|
||||
msgid "Save"
|
||||
msgstr ""
|
||||
|
||||
#: templates/group/group_add.jinja2:20
|
||||
#: templates/group/group_confirm_delete.jinja2:17
|
||||
#: templates/group/group_detail.jinja2:37
|
||||
#: templates/realm/realm_update.jinja2:16
|
||||
#: templates/realm/realm_user_multiple_delete.jinja2:31
|
||||
#: templates/realm/realm_user_multiple_delete_confirm.jinja2:19
|
||||
#: templates/user/realm_user_add.jinja2:16
|
||||
#: templates/user/realm_user_detail.jinja2:99
|
||||
#: templates/user/user_confirm_delete.jinja2:25
|
||||
msgid "Cancel"
|
||||
msgstr ""
|
||||
|
||||
#: templates/group/group_confirm_delete.jinja2:19
|
||||
#: templates/group/group_detail.jinja2:22
|
||||
msgid "DeleteGroup"
|
||||
msgstr ""
|
||||
|
||||
#: templates/group/group_detail.jinja2:7
|
||||
msgid "Group"
|
||||
msgstr ""
|
||||
|
||||
#: templates/group/group_detail.jinja2:9
|
||||
#: templates/user/realm_user_detail.jinja2:22
|
||||
msgid "LdapDomain"
|
||||
msgstr ""
|
||||
|
||||
#: templates/group/group_detail.jinja2:12 templates/realm/realm_groups.jinja2:9
|
||||
msgid "Description"
|
||||
msgstr ""
|
||||
|
||||
#: templates/group/group_detail.jinja2:15
|
||||
msgid "Members"
|
||||
msgstr ""
|
||||
|
||||
#: templates/group/group_detail.jinja2:19
|
||||
#: templates/group/group_detail.jinja2:25
|
||||
msgid "UpdateGroup"
|
||||
msgstr ""
|
||||
|
||||
#: templates/macros/form_macros.jinja2:314
|
||||
#: templates/macros/utils_macros.jinja2:38
|
||||
#: templates/user/realm_user_detail.jinja2:54
|
||||
msgid "LastLogin"
|
||||
msgstr ""
|
||||
|
||||
#: templates/macros/utils_macros.jinja2:37
|
||||
msgid "Active"
|
||||
msgstr ""
|
||||
|
||||
#: templates/macros/utils_macros.jinja2:39
|
||||
msgid "DeletionDate"
|
||||
msgstr ""
|
||||
|
||||
#: templates/macros/utils_macros.jinja2:82
|
||||
msgid "RealmName"
|
||||
msgstr ""
|
||||
|
||||
#: templates/macros/utils_macros.jinja2:83
|
||||
msgid "LdapBaseDN"
|
||||
msgstr ""
|
||||
|
||||
#: templates/macros/utils_macros.jinja2:84
|
||||
msgid "MailAddress"
|
||||
msgstr ""
|
||||
|
||||
#: templates/macros/utils_macros.jinja2:85
|
||||
msgid "AdminGroup"
|
||||
msgstr ""
|
||||
|
||||
#: templates/macros/utils_macros.jinja2:86
|
||||
msgid "DefaultGroup"
|
||||
msgstr ""
|
||||
|
||||
#: templates/macros/utils_macros.jinja2:87
|
||||
msgid "UserCount"
|
||||
msgstr ""
|
||||
|
||||
#: templates/macros/utils_macros.jinja2:88
|
||||
msgid "GroupCount"
|
||||
msgstr ""
|
||||
|
||||
#: templates/permission_denied.jinja2:8
|
||||
msgid "PermissionDeniedInfo"
|
||||
msgstr ""
|
||||
|
||||
#. Translators: Is the Headline of the create new realm view
|
||||
#: templates/realm/realm_add.jinja2:10
|
||||
msgid "CreateNewRealm"
|
||||
msgstr ""
|
||||
|
||||
#. Translators: the submit button text for the create new realm form
|
||||
#: templates/realm/realm_add.jinja2:16
|
||||
msgid "CreateRealm"
|
||||
msgstr ""
|
||||
|
||||
#: templates/realm/realm_add_failed.jinja2:5
|
||||
msgid "AddRealmError"
|
||||
msgstr ""
|
||||
|
||||
#: templates/realm/realm_add_failed.jinja2:7
|
||||
msgid "AddRealmErrorInfo"
|
||||
msgstr ""
|
||||
|
||||
#: templates/realm/realm_add_failed.jinja2:11
|
||||
msgid "AddRealmErrorLdapInfo"
|
||||
msgstr ""
|
||||
|
||||
#. Translators: The Application Name: default LAMa
|
||||
#: templates/realm/realm_confirm_delete.jinja2:7
|
||||
msgid "RealmDelete"
|
||||
msgstr ""
|
||||
|
||||
#: templates/realm/realm_confirm_delete.jinja2:27
|
||||
msgid "RealmDeleteCancel"
|
||||
msgstr ""
|
||||
|
||||
#: templates/realm/realm_confirm_delete.jinja2:29
|
||||
msgid "RealmDeleteAgree"
|
||||
msgstr ""
|
||||
|
||||
#: templates/realm/realm_detailed.jinja2:10
|
||||
msgid "RealmDetailRemoveRealm"
|
||||
msgstr ""
|
||||
|
||||
#: templates/realm/realm_detailed.jinja2:19
|
||||
msgid "RealmDetailLdapOU"
|
||||
msgstr ""
|
||||
|
||||
#: templates/realm/realm_detailed.jinja2:20
|
||||
msgid "RealmDetailUserCount"
|
||||
msgstr ""
|
||||
|
||||
#: templates/realm/realm_detailed.jinja2:25
|
||||
msgid "RealmDetailRemoveInactiveUser"
|
||||
msgstr ""
|
||||
|
||||
#: templates/realm/realm_detailed.jinja2:30
|
||||
#: templates/realm/realm_detailed.jinja2:37
|
||||
#: templates/realm/realm_detailed.jinja2:45
|
||||
msgid "RealmDetailStillPending"
|
||||
msgstr ""
|
||||
|
||||
#: templates/realm/realm_detailed.jinja2:32
|
||||
msgid "RealmDetailAdminGroup"
|
||||
msgstr ""
|
||||
|
||||
#: templates/realm/realm_detailed.jinja2:40
|
||||
msgid "RealmDetailDefaultGroup"
|
||||
msgstr ""
|
||||
|
||||
#: templates/realm/realm_detailed.jinja2:52
|
||||
msgid "RealmDetailChangeRealmInfo"
|
||||
msgstr ""
|
||||
|
||||
#: templates/realm/realm_detailed.jinja2:56
|
||||
msgid "RealmDetailTestMail"
|
||||
msgstr ""
|
||||
|
||||
#: templates/realm/realm_groups.jinja2:8
|
||||
msgid "Name"
|
||||
msgstr ""
|
||||
|
||||
#: templates/realm/realm_groups.jinja2:10
|
||||
msgid "MemberCount"
|
||||
msgstr ""
|
||||
|
||||
#: templates/realm/realm_groups.jinja2:31
|
||||
msgid "AddGroups"
|
||||
msgstr ""
|
||||
|
||||
#: templates/realm/realm_user.jinja2:8 templates/user/realm_user_add.jinja2:5
|
||||
msgid "AddUser"
|
||||
msgstr ""
|
||||
|
||||
#: templates/realm/realm_user.jinja2:10
|
||||
msgid "RemoveMultipleUser"
|
||||
msgstr ""
|
||||
|
||||
#: templates/realm/realm_user_multiple_delete.jinja2:6
|
||||
#: templates/realm/realm_user_multiple_delete_confirm.jinja2:5
|
||||
#: templates/user/realm_user_detail.jinja2:85
|
||||
#: templates/user/user_confirm_delete.jinja2:27
|
||||
msgid "DeleteUser"
|
||||
msgstr ""
|
||||
|
||||
#: templates/realm/realm_user_multiple_delete.jinja2:10
|
||||
msgid "MultipleUserDeleteError"
|
||||
msgstr ""
|
||||
|
||||
#: templates/realm/realm_user_multiple_delete.jinja2:29
|
||||
#: templates/realm/realm_user_multiple_delete_confirm.jinja2:17
|
||||
msgid "Execute"
|
||||
msgstr ""
|
||||
|
||||
#: templates/user/realm_user_detail.jinja2:23
|
||||
msgid "UserDisplayName"
|
||||
msgstr ""
|
||||
|
||||
#: templates/user/realm_user_detail.jinja2:27
|
||||
msgid "NotGeneratedYet"
|
||||
msgstr ""
|
||||
|
||||
#: templates/user/realm_user_detail.jinja2:33
|
||||
msgid "Password"
|
||||
msgstr ""
|
||||
|
||||
#: templates/user/realm_user_detail.jinja2:34
|
||||
msgid "UserPasswordReset"
|
||||
msgstr ""
|
||||
|
||||
#: templates/user/realm_user_detail.jinja2:35
|
||||
msgid "Phone"
|
||||
msgstr ""
|
||||
|
||||
#: templates/user/realm_user_detail.jinja2:36
|
||||
msgid "MobilePhone"
|
||||
msgstr ""
|
||||
|
||||
#: templates/user/realm_user_detail.jinja2:47
|
||||
msgid "NoneGroupAssigned"
|
||||
msgstr ""
|
||||
|
||||
#: templates/user/realm_user_detail.jinja2:51
|
||||
msgid "AssignGroups"
|
||||
msgstr ""
|
||||
|
||||
#: templates/user/realm_user_detail.jinja2:62
|
||||
msgid "DeletionProcess"
|
||||
msgstr ""
|
||||
|
||||
#: templates/user/realm_user_detail.jinja2:65
|
||||
msgid "CancelDeletionProcess"
|
||||
msgstr ""
|
||||
|
||||
#: templates/user/realm_user_detail.jinja2:73
|
||||
msgid "UpdateUser"
|
||||
msgstr ""
|
||||
|
||||
#: templates/user/realm_user_detail.jinja2:79
|
||||
msgid "ResendWelcomeMail"
|
||||
msgstr ""
|
||||
|
||||
#: templates/user/realm_user_update_groups.jinja2:6
|
||||
msgid "UpdateGroupMembership"
|
||||
msgstr ""
|
||||
|
||||
#: templates/user/realm_user_update_groups.jinja2:11
|
||||
msgid "UserGroupDelete"
|
||||
msgstr ""
|
||||
|
||||
#: templates/user/realm_user_update_groups.jinja2:30
|
||||
msgid "UserGroupAdd"
|
||||
msgstr ""
|
||||
|
||||
#: templates/user/realm_user_update_groups.jinja2:50
|
||||
msgid "Done"
|
||||
msgstr ""
|
||||
425
src/locale/de/LC_MESSAGES/django.po
Normal file
425
src/locale/de/LC_MESSAGES/django.po
Normal file
@ -0,0 +1,425 @@
|
||||
# SOME DESCRIPTIVE TITLE.
|
||||
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
|
||||
# This file is distributed under the same license as the PACKAGE package.
|
||||
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
|
||||
#
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2019-05-18 01:19+0000\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"
|
||||
"Language: \n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
|
||||
#: account_manager/main_views.py:54
|
||||
msgid "InvalidLogin"
|
||||
msgstr "Invalid login. Please try again."
|
||||
|
||||
#: account_manager/views/user_views.py:37
|
||||
msgid ""
|
||||
"Der angefragte Nutzer gehört einem anderen Bereich an. Nutzer können nur von "
|
||||
"dem Bereich bearbeitet werden, in dem sie erstellt wurden."
|
||||
msgstr ""
|
||||
|
||||
#: core/docker_settings.py:196
|
||||
msgid "English"
|
||||
msgstr ""
|
||||
|
||||
#: core/docker_settings.py:197 core/docker_settings.py:198
|
||||
msgid "Deutsch"
|
||||
msgstr ""
|
||||
|
||||
#: templates/admin/list_user.jinja2:8
|
||||
msgid "DjangoKnownUsers"
|
||||
msgstr "Django bekannte Nutzer"
|
||||
|
||||
#: templates/admin/list_user.jinja2:9
|
||||
msgid "DjangoAdminPages"
|
||||
msgstr "Django Adminbereich"
|
||||
|
||||
#: templates/admin/list_user.jinja2:12
|
||||
msgid "SuperAdminInfo"
|
||||
msgstr ""
|
||||
"Um einen Nutzer zum Superadmin zu ernennen, klicke auf das Superadmin Icon"
|
||||
|
||||
#: templates/admin/list_user.jinja2:18 templates/macros/utils_macros.jinja2:28
|
||||
#: templates/macros/utils_macros.jinja2:77
|
||||
#: templates/macros/utils_macros.jinja2:138
|
||||
#: templates/realm/realm_user_multiple_delete.jinja2:23
|
||||
#: templates/realm/realm_user_multiple_delete_confirm.jinja2:11
|
||||
msgid "Search"
|
||||
msgstr "Suche"
|
||||
|
||||
#: templates/admin/list_user.jinja2:23
|
||||
msgid "SuperAdmin"
|
||||
msgstr "Superadmin"
|
||||
|
||||
#: templates/admin/list_user.jinja2:24 templates/macros/form_macros.jinja2:309
|
||||
#: templates/macros/utils_macros.jinja2:33
|
||||
msgid "Username"
|
||||
msgstr "Nutzername"
|
||||
|
||||
#: templates/admin/list_user.jinja2:25 templates/macros/form_macros.jinja2:310
|
||||
#: templates/macros/utils_macros.jinja2:34
|
||||
#: templates/realm/realm_detailed.jinja2:28
|
||||
#: templates/user/realm_user_detail.jinja2:32
|
||||
msgid "Email"
|
||||
msgstr "E-Mail"
|
||||
|
||||
#: templates/admin/list_user.jinja2:26 templates/macros/form_macros.jinja2:311
|
||||
#: templates/macros/utils_macros.jinja2:35
|
||||
#: templates/user/realm_user_detail.jinja2:30
|
||||
msgid "FirstName"
|
||||
msgstr "Vorname"
|
||||
|
||||
#: templates/admin/list_user.jinja2:27 templates/macros/form_macros.jinja2:312
|
||||
#: templates/macros/utils_macros.jinja2:36
|
||||
#: templates/user/realm_user_detail.jinja2:31
|
||||
msgid "LastName"
|
||||
msgstr "Nachname"
|
||||
|
||||
#. Translators: The Application Name: default LAMa
|
||||
#: templates/base.jinja2:33
|
||||
msgid "AppName"
|
||||
msgstr "LAMa"
|
||||
|
||||
#. Translators: Logout button
|
||||
#: templates/base.jinja2:40
|
||||
msgid "Logout"
|
||||
msgstr ""
|
||||
|
||||
#. Translators: Login Button
|
||||
#: templates/base.jinja2:43
|
||||
msgid "Login"
|
||||
msgstr ""
|
||||
|
||||
#. Translators: About link title
|
||||
#: templates/base.jinja2:58 templates/base_admin.jinja2:50
|
||||
msgid "About"
|
||||
msgstr "Über"
|
||||
|
||||
#: templates/base_admin.jinja2:10
|
||||
msgid "DjangoAdminArea"
|
||||
msgstr "Django Adminbereich"
|
||||
|
||||
#: templates/base_admin.jinja2:14 templates/realm/realm_home.jinja2:6
|
||||
msgid "Realms"
|
||||
msgstr "Bereiche"
|
||||
|
||||
#: templates/base_admin.jinja2:24
|
||||
msgid "RealmOverview"
|
||||
msgstr "Bereichsübersicht"
|
||||
|
||||
#: templates/base_admin.jinja2:27 templates/realm/realm_detailed.jinja2:5
|
||||
msgid "Realm"
|
||||
msgstr "Bereich"
|
||||
|
||||
#: templates/base_admin.jinja2:31
|
||||
msgid "RealmInformation"
|
||||
msgstr "Bereichsinformationen"
|
||||
|
||||
#: templates/base_admin.jinja2:34 templates/realm/realm_user.jinja2:5
|
||||
msgid "User"
|
||||
msgstr "Nutzer"
|
||||
|
||||
#: templates/base_admin.jinja2:37 templates/realm/realm_groups.jinja2:4
|
||||
#: templates/user/realm_user_detail.jinja2:37
|
||||
msgid "Groups"
|
||||
msgstr "Gruppen"
|
||||
|
||||
#: templates/base_admin.jinja2:46 templates/realm/realm_home.jinja2:11
|
||||
msgid "RealmAdd"
|
||||
msgstr "Bereich hinzufügen"
|
||||
|
||||
#: templates/group/group_add.jinja2:6
|
||||
msgid "AddGroup"
|
||||
msgstr "Gruppe anlegen"
|
||||
|
||||
#: templates/group/group_add.jinja2:18 templates/group/group_detail.jinja2:35
|
||||
#: templates/realm/realm_update.jinja2:14
|
||||
#: templates/user/realm_user_add.jinja2:14
|
||||
#: templates/user/realm_user_detail.jinja2:97
|
||||
msgid "Save"
|
||||
msgstr "Sichern"
|
||||
|
||||
#: templates/group/group_add.jinja2:20
|
||||
#: templates/group/group_confirm_delete.jinja2:17
|
||||
#: templates/group/group_detail.jinja2:37
|
||||
#: templates/realm/realm_update.jinja2:16
|
||||
#: templates/realm/realm_user_multiple_delete.jinja2:31
|
||||
#: templates/realm/realm_user_multiple_delete_confirm.jinja2:19
|
||||
#: templates/user/realm_user_add.jinja2:16
|
||||
#: templates/user/realm_user_detail.jinja2:99
|
||||
#: templates/user/user_confirm_delete.jinja2:25
|
||||
msgid "Cancel"
|
||||
msgstr "Abbrechen"
|
||||
|
||||
#: templates/group/group_confirm_delete.jinja2:19
|
||||
#: templates/group/group_detail.jinja2:22
|
||||
msgid "DeleteGroup"
|
||||
msgstr "Gruppe löschen"
|
||||
|
||||
#: templates/group/group_detail.jinja2:7
|
||||
msgid "Group"
|
||||
msgstr "Gruppe"
|
||||
|
||||
#: templates/group/group_detail.jinja2:9
|
||||
#: templates/user/realm_user_detail.jinja2:22
|
||||
msgid "LdapDomain"
|
||||
msgstr "Ldap Domain"
|
||||
|
||||
#: templates/group/group_detail.jinja2:12 templates/realm/realm_groups.jinja2:9
|
||||
msgid "Description"
|
||||
msgstr "Beschreibung"
|
||||
|
||||
#: templates/group/group_detail.jinja2:15
|
||||
msgid "Members"
|
||||
msgstr "Mitglieder"
|
||||
|
||||
#: templates/group/group_detail.jinja2:19
|
||||
#: templates/group/group_detail.jinja2:25
|
||||
msgid "UpdateGroup"
|
||||
msgstr "Gruppe bearbeiten"
|
||||
|
||||
#: templates/macros/form_macros.jinja2:314
|
||||
#: templates/macros/utils_macros.jinja2:38
|
||||
#: templates/user/realm_user_detail.jinja2:54
|
||||
msgid "LastLogin"
|
||||
msgstr "Letzter Login"
|
||||
|
||||
#: templates/macros/utils_macros.jinja2:37
|
||||
msgid "Active"
|
||||
msgstr "Aktiv"
|
||||
|
||||
#: templates/macros/utils_macros.jinja2:39
|
||||
msgid "DeletionDate"
|
||||
msgstr "Löschdatum"
|
||||
|
||||
#: templates/macros/utils_macros.jinja2:82
|
||||
msgid "RealmName"
|
||||
msgstr "Bereichsname"
|
||||
|
||||
#: templates/macros/utils_macros.jinja2:83
|
||||
msgid "LdapBaseDN"
|
||||
msgstr "Ldap Basis DN"
|
||||
|
||||
#: templates/macros/utils_macros.jinja2:84
|
||||
msgid "MailAddress"
|
||||
msgstr "Mailadresse"
|
||||
|
||||
#: templates/macros/utils_macros.jinja2:85
|
||||
msgid "AdminGroup"
|
||||
msgstr "Admingruppe"
|
||||
|
||||
#: templates/macros/utils_macros.jinja2:86
|
||||
msgid "DefaultGroup"
|
||||
msgstr "Defaultgruppe"
|
||||
|
||||
#: templates/macros/utils_macros.jinja2:87
|
||||
msgid "UserCount"
|
||||
msgstr "Nutzeranzahl"
|
||||
|
||||
#: templates/macros/utils_macros.jinja2:88
|
||||
msgid "GroupCount"
|
||||
msgstr "Gruppenanzahl"
|
||||
|
||||
#: templates/permission_denied.jinja2:8
|
||||
msgid "PermissionDeniedInfo"
|
||||
msgstr "Leider hast du keine Rechte :´("
|
||||
|
||||
#. Translators: Is the Headline of the create new realm view
|
||||
#: templates/realm/realm_add.jinja2:10
|
||||
msgid "CreateNewRealm"
|
||||
msgstr "Neuen Bereich anlegen"
|
||||
|
||||
#. Translators: the submit button text for the create new realm form
|
||||
#: templates/realm/realm_add.jinja2:16
|
||||
msgid "CreateRealm"
|
||||
msgstr "Bereich anlegen"
|
||||
|
||||
#: templates/realm/realm_add_failed.jinja2:5
|
||||
msgid "AddRealmError"
|
||||
msgstr "Hinzufügen Fehlgeschlagen"
|
||||
|
||||
#: templates/realm/realm_add_failed.jinja2:7
|
||||
msgid "AddRealmErrorInfo"
|
||||
msgstr "Das hinzufügen des Bereichs ist fehlgeschlagen."
|
||||
|
||||
#: templates/realm/realm_add_failed.jinja2:11
|
||||
msgid "AddRealmErrorLdapInfo"
|
||||
msgstr "Bitte überprüfe den Ldap base dn, ob dieser auch wirklich existiert."
|
||||
|
||||
#. Translators: The Application Name: default LAMa
|
||||
#: templates/realm/realm_confirm_delete.jinja2:7
|
||||
msgid "RealmDelete"
|
||||
msgstr "Löschen des Bereichs"
|
||||
|
||||
#: templates/realm/realm_confirm_delete.jinja2:27
|
||||
msgid "RealmDeleteCancel"
|
||||
msgstr "Abbrechen"
|
||||
|
||||
#: templates/realm/realm_confirm_delete.jinja2:29
|
||||
msgid "RealmDeleteAgree"
|
||||
msgstr "Bereich löschen"
|
||||
|
||||
#: templates/realm/realm_detailed.jinja2:10
|
||||
msgid "RealmDetailRemoveRealm"
|
||||
msgstr "Bereich löschen"
|
||||
|
||||
#: templates/realm/realm_detailed.jinja2:19
|
||||
msgid "RealmDetailLdapOU"
|
||||
msgstr "LDAP Organisationseinheit"
|
||||
|
||||
#: templates/realm/realm_detailed.jinja2:20
|
||||
msgid "RealmDetailUserCount"
|
||||
msgstr "Nutzeranzahl (Aktive/Inaktive)"
|
||||
|
||||
#: templates/realm/realm_detailed.jinja2:25
|
||||
msgid "RealmDetailRemoveInactiveUser"
|
||||
msgstr "Inaktive Nutzer löschen"
|
||||
|
||||
#: templates/realm/realm_detailed.jinja2:30
|
||||
#: templates/realm/realm_detailed.jinja2:37
|
||||
#: templates/realm/realm_detailed.jinja2:45
|
||||
msgid "RealmDetailStillPending"
|
||||
msgstr "Noch ausstehend"
|
||||
|
||||
#: templates/realm/realm_detailed.jinja2:32
|
||||
msgid "RealmDetailAdminGroup"
|
||||
msgstr "Admin Gruppe"
|
||||
|
||||
#: templates/realm/realm_detailed.jinja2:40
|
||||
msgid "RealmDetailDefaultGroup"
|
||||
msgstr "Default Gruppe"
|
||||
|
||||
#: templates/realm/realm_detailed.jinja2:52
|
||||
msgid "RealmDetailChangeRealmInfo"
|
||||
msgstr "Bereichsinformationen anpassen"
|
||||
|
||||
#: templates/realm/realm_detailed.jinja2:56
|
||||
msgid "RealmDetailTestMail"
|
||||
msgstr "Test Mail senden"
|
||||
|
||||
#: templates/realm/realm_groups.jinja2:8
|
||||
msgid "Name"
|
||||
msgstr "Name"
|
||||
|
||||
#: templates/realm/realm_groups.jinja2:10
|
||||
msgid "MemberCount"
|
||||
msgstr "Mitgliederanzahl"
|
||||
|
||||
#: templates/realm/realm_groups.jinja2:31
|
||||
msgid "AddGroups"
|
||||
msgstr "Gruppen hinzufügen"
|
||||
|
||||
#: templates/realm/realm_user.jinja2:8 templates/user/realm_user_add.jinja2:5
|
||||
msgid "AddUser"
|
||||
msgstr "Nutzer hinzufügen"
|
||||
|
||||
#: templates/realm/realm_user.jinja2:10
|
||||
msgid "RemoveMultipleUser"
|
||||
msgstr "Mehrere Nutzer löschen"
|
||||
|
||||
#: templates/realm/realm_user_multiple_delete.jinja2:6
|
||||
#: templates/realm/realm_user_multiple_delete_confirm.jinja2:5
|
||||
#: templates/user/realm_user_detail.jinja2:85
|
||||
#: templates/user/user_confirm_delete.jinja2:27
|
||||
msgid "DeleteUser"
|
||||
msgstr "Nutzer löschen"
|
||||
|
||||
#: templates/realm/realm_user_multiple_delete.jinja2:10
|
||||
msgid "MultipleUserDeleteError"
|
||||
msgstr ""
|
||||
" <h3>Admin User festgestellt</h3><p>Die folgenden Nutzer können nicht "
|
||||
"gelöscht werden, da Sie noch Mitglieder von ein oder mehreren AdminGruppen "
|
||||
"sind. Bitte tragen Sie diese vorher aus den Admin Gruppen.</p>"
|
||||
|
||||
#: templates/realm/realm_user_multiple_delete.jinja2:29
|
||||
#: templates/realm/realm_user_multiple_delete_confirm.jinja2:17
|
||||
msgid "Execute"
|
||||
msgstr "Ausführen"
|
||||
|
||||
#: templates/user/realm_user_detail.jinja2:23
|
||||
msgid "UserDisplayName"
|
||||
msgstr "Anzeigename"
|
||||
|
||||
#: templates/user/realm_user_detail.jinja2:27
|
||||
msgid "NotGeneratedYet"
|
||||
msgstr "Noch nicht generiert"
|
||||
|
||||
#: templates/user/realm_user_detail.jinja2:33
|
||||
msgid "Password"
|
||||
msgstr "Passwort"
|
||||
|
||||
#: templates/user/realm_user_detail.jinja2:34
|
||||
msgid "UserPasswordReset"
|
||||
msgstr "Nutzerpasswort zurücksetzen"
|
||||
|
||||
#: templates/user/realm_user_detail.jinja2:35
|
||||
msgid "Phone"
|
||||
msgstr "Telefon"
|
||||
|
||||
#: templates/user/realm_user_detail.jinja2:36
|
||||
msgid "MobilePhone"
|
||||
msgstr "Mobiltelefon"
|
||||
|
||||
#: templates/user/realm_user_detail.jinja2:47
|
||||
msgid "NoneGroupAssigned"
|
||||
msgstr "Keine zugewiesen"
|
||||
|
||||
#: templates/user/realm_user_detail.jinja2:51
|
||||
msgid "AssignGroups"
|
||||
msgstr "Gruppen zuweisen"
|
||||
|
||||
#: templates/user/realm_user_detail.jinja2:62
|
||||
msgid "DeletionProcess"
|
||||
msgstr "Löschvorgang"
|
||||
|
||||
#: templates/user/realm_user_detail.jinja2:65
|
||||
msgid "CancelDeletionProcess"
|
||||
msgstr "Löschvorgang abbrechen"
|
||||
|
||||
#: templates/user/realm_user_detail.jinja2:73
|
||||
msgid "UpdateUser"
|
||||
msgstr "Nutzer bearbeiten"
|
||||
|
||||
#: templates/user/realm_user_detail.jinja2:79
|
||||
msgid "ResendWelcomeMail"
|
||||
msgstr "Willkommensmail erneut senden"
|
||||
|
||||
#: templates/user/realm_user_update_groups.jinja2:6
|
||||
msgid "UpdateGroupMembership"
|
||||
msgstr "Gruppenzuweisung ändern"
|
||||
|
||||
#: templates/user/realm_user_update_groups.jinja2:11
|
||||
msgid "UserGroupDelete"
|
||||
msgstr "Gruppe entfernen"
|
||||
|
||||
#: templates/user/realm_user_update_groups.jinja2:30
|
||||
msgid "UserGroupAdd"
|
||||
msgstr "Gruppe hinzufügen"
|
||||
|
||||
#: templates/user/realm_user_update_groups.jinja2:50
|
||||
msgid "Done"
|
||||
msgstr "Fertig"
|
||||
|
||||
#~ msgid "RealmDeleteInformation %(realm)s %(realm_ldap_base_dn)"
|
||||
#~ msgstr ""
|
||||
#~ "<p>Achtung! Sie sind gerade dabei den Bereich <span class='text-uppercase "
|
||||
#~ "font-weight-bold'>%(realm)s</span> zu löschen.</p><p>Falls Sie sich "
|
||||
#~ "sicher sind, dass Sie diesen Bereich löschen wollen, klicken Sie bitte "
|
||||
#~ "auf \"Bereich löschen\".<p>Hierdurch werden <strong>Alle</strong> Nutzer "
|
||||
#~ "und Gruppen gelöscht, die unter der Ldap BasisDN %(realm_ldap_base_dn)s "
|
||||
#~ "eingetragen sind. Die Ldap Basis DN mit Ihren Organisationseinheiten "
|
||||
#~ "\"groups\" und \"people\" bleiben bestehen.</p><p>Bitte beachten Sie, "
|
||||
#~ "dass die Daten der Nutzer, die in den Diensten hochgeladen wurden, "
|
||||
#~ "weiterhin bestehen bleiben. Diese Daten müssen vom Systemadministrator "
|
||||
#~ "seperat gelöscht werden. </p><p>Möchten Sie das Löschen der Accountdaten "
|
||||
#~ "verhindern, klicken Sie auf \"Abbrechen\"</p>"
|
||||
@ -120,6 +120,10 @@
|
||||
}
|
||||
}
|
||||
|
||||
.realm-name{
|
||||
text-transform: uppercase;
|
||||
}
|
||||
|
||||
/* ------------------------------------------------------------------------------------------------------------------ */
|
||||
/* -- Data Tables -- */
|
||||
/* ------------------------------------------------------------------------------------------------------------------ */
|
||||
|
||||
@ -3,7 +3,8 @@
|
||||
<div class="col-12 ">
|
||||
<div class="row justify-content-center justify-content-sm-center">
|
||||
<div class="col-12 col-sm-8 col-md-7 col-lg-6 col-xl-5 bg-white text-dark text-center p-3 mt-5">
|
||||
<p>Diese App wurde mit viel <i style="color: #DC143C;" class="fas fa-spin fa-heart"></i> von Micheal
|
||||
{# TODO: Translation #}
|
||||
<p>Diese App wurde mit viel <i style="color: #DC143C;" class="fas fa-spin fa-heart"></i> von Michael
|
||||
Götz entwickelt.</p>
|
||||
<br>
|
||||
<h2>Icons</h2>
|
||||
|
||||
@ -5,26 +5,26 @@
|
||||
{% block admin_content %}
|
||||
<div class="row">
|
||||
<div class="col-12">
|
||||
<h2>Django bekannte Nutzer
|
||||
<small><a href="/admin" class="float-right h5">Django Admin Seiten</a></small>
|
||||
<h2>{{ _('DjangoKnownUsers') }}
|
||||
<small><a href="/admin" class="float-right h5">{{ _('DjangoAdminPages') }}</a></small>
|
||||
</h2>
|
||||
{{ mutils.get_warning_box(extra_errors) }}
|
||||
<div class="alert alert-info">Um einen Nutzer zum Superadmin zu ernennen, klicke auf das Superadmin Icon
|
||||
<div class="alert alert-info">{{ _('SuperAdminInfo') }}
|
||||
</div>
|
||||
<div class="table-search-field form-group w-25 float-right">
|
||||
<input type="text"
|
||||
class="form-control"
|
||||
id="data-table-search-input">
|
||||
<label for="data-table-search-input">Suche</label>
|
||||
<label for="data-table-search-input">{{ _('Search') }}</label>
|
||||
</div>
|
||||
<table class="table table-hover table-striped table-inverse table-bordered data-table">
|
||||
<thead>
|
||||
<tr>
|
||||
<th scope="col">Superadmin</th>
|
||||
<th scope="col">Nutzername</th>
|
||||
<th scope="col">E-Mail</th>
|
||||
<th scope="col">Vorname</th>
|
||||
<th scope="col">Nachname</th>
|
||||
<th scope="col">{{ _('SuperAdmin') }}</th>
|
||||
<th scope="col">{{ _('Username') }}</th>
|
||||
<th scope="col">{{ _('Email') }}</th>
|
||||
<th scope="col">{{ _('FirstName') }}</th>
|
||||
<th scope="col">{{ _('LastName') }}</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
|
||||
@ -1,4 +1,3 @@
|
||||
{#{% load static %}#}
|
||||
{# ===== HTML ===== #}
|
||||
<!DOCTYPE html>
|
||||
<html lang="en" dir="ltr">
|
||||
@ -30,15 +29,18 @@
|
||||
<a class="navbar-brand" href="{{ url('realm-home') }}">
|
||||
<img src="{{ static('images/lama.svg') }}" width="30" height="30" class="d-inline-block align-top"
|
||||
alt="">
|
||||
LAMa
|
||||
{# Translators: The Application Name: default LAMa #}
|
||||
{{ _('AppName') }}
|
||||
</a>
|
||||
|
||||
{% if request.user.is_authenticated %}
|
||||
<span class="navbar-text">
|
||||
Hi <a href="{{ url('realm-home') }}?show_user=True">{{ request.user.username }}</a>!
|
||||
<a href="{{ url('logout') }}?next=/">Logout <i class="fas fa-sign-out-alt"></i></a>
|
||||
{# Translators: Logout button #}
|
||||
<a href="{{ url('logout') }}?next=/">{{ _('Logout') }} <i class="fas fa-sign-out-alt"></i></a>
|
||||
{% else %}
|
||||
<a href="{{ url('login') }}"><i class="fas fa-sign-in-alt"></i> Login</a>
|
||||
{# Translators: Login Button #}
|
||||
<a href="{{ url('login') }}"><i class="fas fa-sign-in-alt"></i> {{ _('Login') }}</a>
|
||||
{% endif %}
|
||||
</span>
|
||||
</nav>
|
||||
@ -47,12 +49,13 @@
|
||||
{% block content %}{% endblock %}
|
||||
{% endblock %}
|
||||
|
||||
{% if not realms and not realm and not request.user.is_superuser%}
|
||||
{% if not realms and not realm and not request.user.is_superuser %}
|
||||
|
||||
<footer class="bg-light footer mt-auto py-3 text-center">
|
||||
<div class="container">
|
||||
<span class="text-muted">
|
||||
<a href="{{ url('about') }}">Über</a>
|
||||
{# Translators: About link title #}
|
||||
<a href="{{ url('about') }}">{{ _('About') }}</a>
|
||||
</span>
|
||||
</div>
|
||||
</footer>
|
||||
|
||||
@ -7,11 +7,11 @@
|
||||
{% if request.user.is_superuser %}
|
||||
<div class="list-group list-group-flush">
|
||||
<a class="list-group-item list-group-item-action bg-light"
|
||||
href="{{ url('django-additional-admin-list') }}"><i class="fas fa-crown"></i> Django Adminbereich</a>
|
||||
href="{{ url('django-additional-admin-list') }}"><i class="fas fa-crown"></i> {{ _('DjangoAdminArea') }}</a>
|
||||
</div>
|
||||
{% endif %}
|
||||
{% if realms %}
|
||||
<h2 class="sidebar-heading">Bereiche</h2>
|
||||
<h2 class="sidebar-heading">{{ _('Realms') }}</h2>
|
||||
<div class="list-group list-group-flush">
|
||||
{% for realm_item in realms %}
|
||||
<a href="{{ url('realm-detail', args=[realm_item.id]) }}"
|
||||
@ -21,20 +21,20 @@
|
||||
{% else %}
|
||||
<div class="list-group-flush">
|
||||
<a href="{{ url('realm-home') }}" class="list-group-item list-group-item-action bg-light">
|
||||
<i class="fas fa-list"></i> Bereichsübersicht</a>
|
||||
<i class="fas fa-list"></i> {{ _('RealmOverview') }}</a>
|
||||
</div>
|
||||
{% if realm %}
|
||||
<h2 class="sidebar-heading">Bereich {{ realm.name }}</h2>
|
||||
<h2 class="sidebar-heading">{{ _('Realm') }} <span class="text-uppercase">{{ realm.name }}</span></h2>
|
||||
<div class="list-group list-group-flush">
|
||||
<a href="{{ url('realm-detail', args=[realm.id]) }}"
|
||||
class="list-group-item list-group-item-action bg-light"><i class="fas fa-cogs"></i>
|
||||
Bereichsinformationen</a>
|
||||
{{ _('RealmInformation') }}</a>
|
||||
<a href="{{ url('realm-user-list', args=[realm.id]) }}"
|
||||
class="list-group-item list-group-item-action bg-light"><i class="fas fa-users"></i>
|
||||
Nutzer</a>
|
||||
{{ _('User') }}</a>
|
||||
<a href="{{ url('realm-group-list', args=[realm.id]) }}"
|
||||
class="list-group-item list-group-item-action bg-light"><i class="fas fa-user-friends"></i>
|
||||
Gruppen</a>
|
||||
{{ _('Groups') }}</a>
|
||||
</div>
|
||||
{% endif %}
|
||||
{% endif %}
|
||||
@ -43,11 +43,11 @@
|
||||
<div class="list-group-item bg-light border-0"></div>
|
||||
<a href="{{ url('realm-add') }}"
|
||||
class="list-group-item list-group-item-action bg-light"><i class="fas fa-plus-square"></i>
|
||||
Bereich hinufügen</a>
|
||||
{{ _('RealmAdd') }}</a>
|
||||
</div>
|
||||
{% endif %}
|
||||
<div class="sidebar-bottom list-group-flush border-top">
|
||||
<a href="{{ url('about') }}" class="list-group-item list-group-item-action bg-light">Über</a>
|
||||
<a href="{{ url('about') }}" class="list-group-item list-group-item-action bg-light">{{ _('About') }}</a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
@ -3,7 +3,7 @@
|
||||
{% import 'macros/utils_macros.jinja2' as uform %}
|
||||
|
||||
{% block detail_content %}
|
||||
<h2>Gruppe anlegen</h2>
|
||||
<h2>{{ _('AddGroup') }}</h2>
|
||||
{% if extra_error %}
|
||||
<div class="alert alert-warning">{{ extra_error }}</div>
|
||||
{% endif %}
|
||||
@ -15,9 +15,9 @@
|
||||
{{ uform.get_data_table_search_field() }}
|
||||
{{ mform.user_select_table_input(users, field=form.members) }}
|
||||
<div class="d-flex mt-4">
|
||||
<button type="submit" class="btn btn-primary mr-auto p-2">Speichern</button>
|
||||
<button type="submit" class="btn btn-primary mr-auto p-2">{{ _('Save') }}</button>
|
||||
<a href="{{ url('realm-group-list', args = [realm.id]) }}"
|
||||
class="btn btn-secondary p-2">Abbrechen</a>
|
||||
class="btn btn-secondary p-2">{{ _('Cancel') }}</a>
|
||||
</div>
|
||||
</form>
|
||||
{% endblock %}
|
||||
@ -4,6 +4,7 @@
|
||||
<div class="row justify-content-center justify-content-sm-center">
|
||||
<div class="col-12 col-sm-8 col-md-7 col-lg-5 col-xl-4 bg-white text-dark p-3 mt-5">
|
||||
<div class="alert alert-warning" role="alert">
|
||||
{# TODO: Add translation #}
|
||||
<p>Achtung! Sie sind gerade dabei die Gruppe <strong>{{ group.name }}</strong> aus dem
|
||||
Bereich <strong>{{ realm.name }}</strong> zu löschen.
|
||||
</p>
|
||||
@ -13,9 +14,9 @@
|
||||
</div>
|
||||
<div class="d-flex">
|
||||
<a href="{{ url('realm-group-detail', args = [realm.id, group.dn]) }}"
|
||||
class="btn btn-secondary mr-auto p-2">Abbrechen</a>
|
||||
class="btn btn-secondary mr-auto p-2">{{ _('Cancel') }}</a>
|
||||
<a href="{{ url('realm-group-delete', args = [realm.id, group.dn]) }}"
|
||||
class="btn btn-danger p-2">Gruppe löschen</a>
|
||||
class="btn btn-danger p-2">{{ _('DeleteGroup') }}</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@ -4,23 +4,25 @@
|
||||
|
||||
{% block detail_content %}
|
||||
{% if not form %}
|
||||
<h3>Gruppe {{ group.name }}</h3>
|
||||
<h3>{{ _('Group') }} {{ group.name }}</h3>
|
||||
<ul class="list-group list-group-flush w-100 mb-3">
|
||||
<li class="list-group-item">Ldap Domain: {{ group.dn }}</li>
|
||||
<li class="list-group-item">{{ _('LdapDomain') }}: {{ group.dn }}</li>
|
||||
|
||||
{% if group.description %}
|
||||
<li class="list-group-item">Beschreibung: {{ group.description }}</li>
|
||||
<li class="list-group-item">{{ _('Description') }}: {{ group.description }}</li>
|
||||
{% endif %}
|
||||
</ul>
|
||||
<h3>Mitglieder</h3>
|
||||
<h3>{{ _('Members') }}</h3>
|
||||
{{ mutils.get_user_table(realm, users) }}
|
||||
<div class="d-flex mt-3">
|
||||
<a href="{{ url('realm-group-update', args = [realm.id, group.dn]) }}" class="btn btn-primary mr-auto p-2">
|
||||
<i class="fas fa-pen-square"></i> Gruppe bearbeiten</a>
|
||||
<i class="fas fa-pen-square"></i> {{ _('UpdateGroup') }}</a>
|
||||
<a href="{{ url('realm-group-delete-confirm', args = [realm.id, group.dn]) }}" class="btn btn-danger p-2"><i
|
||||
class="fas fa-trash"></i> <span class="d-sm-none d-md-inline-block">Gruppe löschen</span></a>
|
||||
class="fas fa-trash"></i> <span
|
||||
class="d-sm-none d-md-inline-block">{{ _('DeleteGroup') }}</span></a>
|
||||
</div>
|
||||
{% else %}
|
||||
<h3>{{ _('UpdateGroup') }} {{ group.name }}</h3>
|
||||
{{ mutils.get_warning_box(extra_error) }}
|
||||
<form method="post">
|
||||
<input type="hidden" name="csrfmiddlewaretoken" value="{{ csrf_token }}">
|
||||
@ -30,9 +32,9 @@
|
||||
{{ mutils.get_data_table_search_field() }}
|
||||
{{ mform.user_select_table_input(users, field=form.members) }}
|
||||
<div class="d-flex mt-4">
|
||||
<button type="submit" class="btn btn-primary mr-auto p-2">Speichern</button>
|
||||
<button type="submit" class="btn btn-primary mr-auto p-2">{{ _('Save') }}</button>
|
||||
<a href="{{ url('realm-group-detail', args = [realm.id, group.dn]) }}"
|
||||
class="btn btn-secondary p-2">Abbrechen</a>
|
||||
class="btn btn-secondary p-2">{{ _('Cancel') }}</a>
|
||||
</div>
|
||||
</form>
|
||||
{% endif %}
|
||||
|
||||
@ -299,16 +299,19 @@
|
||||
id="delete-all-checkbox"
|
||||
>
|
||||
<label class="
|
||||
{% if checkbox_label_classes %}{{ checkbox_label_classes }}{% else %}table-checkbox-control-label table-checkbox-control-label-add{% endif %}"
|
||||
for="delete-all-checkbox"></label>
|
||||
{% if checkbox_label_classes %}
|
||||
{{ checkbox_label_classes }}
|
||||
{% else %}
|
||||
table-checkbox-control-label table-checkbox-control-label-add
|
||||
{% endif %}" for="delete-all-checkbox"></label>
|
||||
{% endif %}
|
||||
</th>
|
||||
<th scope="col">Nutzername</th>
|
||||
<th scope="col">E-Mail</th>
|
||||
<th scope="col">Vorname</th>
|
||||
<th scope="col">Nachname</th>
|
||||
<th scope="col">{{ _('Username') }}</th>
|
||||
<th scope="col">{{ _('Email') }}</th>
|
||||
<th scope="col">{{ _('FirstName') }}</th>
|
||||
<th scope="col">{{ _('LastName') }}</th>
|
||||
{% if show_lastlogin %}
|
||||
<th scope="col">Letzter Login</th>
|
||||
<th scope="col">{{ _('LastLogin') }}</th>
|
||||
{% endif %}
|
||||
</tr>
|
||||
</thead>
|
||||
@ -325,27 +328,11 @@
|
||||
{% if field and field.value() and user.username in field.value() %}checked{% endif %}
|
||||
>
|
||||
<label class="
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
{% if checkbox_label_classes %}{{ checkbox_label_classes }}{% else %}table-checkbox-control-label table-checkbox-control-label-add{% endif %}"
|
||||
for="{{ user.username }}_{{ loop.index }}">
|
||||
|
||||
{% if checkbox_label_classes %}
|
||||
{{ checkbox_label_classes }}
|
||||
{% else %}
|
||||
table-checkbox-control-label table-checkbox-control-label-add
|
||||
{% endif %}" for="{{ user.username }}_{{ loop.index }}">
|
||||
</label>
|
||||
</td>
|
||||
<td>{{ user.username }}</td>
|
||||
|
||||
@ -25,18 +25,18 @@
|
||||
<input type="text"
|
||||
class="form-control"
|
||||
id="data-table-search-input">
|
||||
<label for="data-table-search-input">Suche</label>
|
||||
<label for="data-table-search-input">{{ _('Search') }}</label>
|
||||
</div>
|
||||
<table class="table table-hover table-striped table-inverse table-bordered data-table">
|
||||
<thead>
|
||||
<tr>
|
||||
<th scope="col">Nutzername</th>
|
||||
<th scope="col">E-Mail</th>
|
||||
<th scope="col">Vorname</th>
|
||||
<th scope="col">Nachname</th>
|
||||
<th scope="col">Aktiv</th>
|
||||
<th scope="col">Letzer Login</th>
|
||||
<th scope="col">Löschdatum</th>
|
||||
<th scope="col">{{ _('Username') }}</th>
|
||||
<th scope="col">{{ _('Email') }}</th>
|
||||
<th scope="col">{{ _('FirstName') }}</th>
|
||||
<th scope="col">{{ _('LastName') }}</th>
|
||||
<th scope="col">{{ _('Active') }}</th>
|
||||
<th scope="col">{{ _('LastLogin') }}</th>
|
||||
<th scope="col">{{ _('DeletionDate') }}</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
@ -74,18 +74,18 @@
|
||||
<input type="text"
|
||||
class="form-control"
|
||||
id="data-table-search-input">
|
||||
<label for="data-table-search-input">Suche</label>
|
||||
<label for="data-table-search-input">{{ _('Search') }}</label>
|
||||
</div>
|
||||
<table class="table table-hover table-striped table-inverse table-bordered data-table text-center">
|
||||
<thead>
|
||||
<tr>
|
||||
<th scope="col">Bereichsname</th>
|
||||
<th scope="col">Ldap Basis DN</th>
|
||||
<th scope="col">Mailadresse</th>
|
||||
<th scope="col">Admingruppe</th>
|
||||
<th scope="col">Defaultgruppe</th>
|
||||
<th scope="col">Nutzeranzahl</th>
|
||||
<th scope="col">Gruppenanzahl</th>
|
||||
<th scope="col">{{ _('RealmName') }}</th>
|
||||
<th scope="col">{{ _('LdapBaseDN') }}</th>
|
||||
<th scope="col">{{ _('MailAddress') }}</th>
|
||||
<th scope="col">{{ _('AdminGroup') }}</th>
|
||||
<th scope="col">{{ _('DefaultGroup') }}</th>
|
||||
<th scope="col">{{ _('UserCount') }}</th>
|
||||
<th scope="col">{{ _('GroupCount') }}</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
@ -119,7 +119,6 @@
|
||||
<td>{{ realm_wrapper.user_count }}</td>
|
||||
<td>{{ realm_wrapper.group_count }}</td>
|
||||
</tr>
|
||||
|
||||
{% endfor %}
|
||||
</tbody>
|
||||
</table>
|
||||
@ -136,7 +135,7 @@
|
||||
<input type="text"
|
||||
class="form-control"
|
||||
id="{{ input_id }}">
|
||||
<label for="{{ input_id }}">Suche</label>
|
||||
<label for="{{ input_id }}">{{ _('Search') }}</label>
|
||||
</div>
|
||||
{% endmacro %}
|
||||
|
||||
|
||||
@ -5,7 +5,7 @@
|
||||
<div class="col-12 ">
|
||||
<div class="row justify-content-center justify-content-sm-center">
|
||||
<div class="col-12 col-sm-8 col-md-7 col-lg-5 col-xl-4 bg-white text-dark text-center p-3 mt-5">
|
||||
<p>Leider hast du keine Rechte :´(</p>
|
||||
<p>{{ _('PermissionDeniedInfo') }}</p>
|
||||
{{ mutils.get_warning_box(extra_errors) }}
|
||||
<a href="{{ url('realm-home') }}">Zurück zur Startseite</a>
|
||||
</div>
|
||||
|
||||
@ -6,12 +6,14 @@
|
||||
<div class="row justify-content-center justify-content-sm-center">
|
||||
<div class="col-12 col-sm-8 col-md-8 col-lg-6 col-xl-5 bg-white text-dark p-3 mt-5">
|
||||
{% if request.user.is_superuser %}
|
||||
<h2>Neuen Bereich anlegen</h2>
|
||||
{# Translators: Is the Headline of the create new realm view #}
|
||||
<h2>{{ _('CreateNewRealm') }}</h2>
|
||||
<form method="post">
|
||||
<input type="hidden" name="csrfmiddlewaretoken" value="{{ csrf_token }}">
|
||||
{{ mform.text_input(form.name) }}
|
||||
{{ mform.text_input(form.ldap_base_dn) }}
|
||||
<button type="submit" class="btn btn-primary btn-block">Anlegen</button>
|
||||
{# Translators: the submit button text for the create new realm form#}
|
||||
<button type="submit" class="btn btn-primary btn-block">{{ _('CreateRealm') }}</button>
|
||||
</form>
|
||||
{% endif %}
|
||||
</div>
|
||||
|
||||
@ -2,13 +2,13 @@
|
||||
{% block admin_content %}
|
||||
<div class="row ">
|
||||
<div class="col-12 p-3">
|
||||
<h1>Fehler {{ realm_name }}</h1>
|
||||
<h1>{{ _('AddRealmError') }} <span class="realm-name">{{ realm_name }}</span></h1>
|
||||
<div class="alert alert-danger">
|
||||
<p>Das hinzufügen des Bereichs ist fehlgeschlagen.</p>
|
||||
<p>{{ _('AddRealmErrorInfo') }}</p>
|
||||
{% if error %}
|
||||
<p>{{ error }}</p>
|
||||
{% else %}
|
||||
<p>Bitte überprüfe den Ldap base dn, ob dieser auch wirklich existiert.</p>
|
||||
<p>{{ _('AddRealmErrorLdapInfo') }}</p>
|
||||
{% endif %}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@ -3,15 +3,19 @@
|
||||
<div class="col-12 ">
|
||||
<div class="row justify-content-center justify-content-sm-center">
|
||||
<div class="col-12 col-sm-8 col-md-7 col-lg-5 col-xl-4 bg-white text-dark p-3 mt-5">
|
||||
<h1>Löschen des Bereichs
|
||||
{# Translators: The Application Name: default LAMa #}
|
||||
<h1>{{ _('RealmDelete') }}
|
||||
<span class="text-uppercase font-weight-bold">{{ realm.name }}</span></h1>
|
||||
<div class="alert alert-warning" role="alert">
|
||||
{# Translators: The Application Name: default LAMa #}
|
||||
{# {{ gettext('RealmDeleteInformation %(realm)s %(realm_ldap_base_dn)')|safe|format(realm=realm, realm_ldap_base_dn=realm.ldap_base_dn) }}#}
|
||||
<p>Achtung! Sie sind gerade dabei den Bereich <span
|
||||
class="text-uppercase font-weight-bold">{{ realm.name }}</span> zu löschen.</p>
|
||||
class="text-uppercase font-weight-bold">{{ realm }}</span> zu löschen.</p>
|
||||
<p>Falls Sie sich sicher sind, dass Sie diesen Bereich löschen wollen, klicken Sie bitte auf
|
||||
"Bereich löschen".
|
||||
<p>Hierdurch werden <strong>Alle</strong> Nutzer und Gruppen gelöscht, die unter der Ldap Basis
|
||||
DN {{ realm.ldap_base_dn }} eingetragen sind. Die Ldap Basis DN mit Ihren Organisationseinheiten
|
||||
DN {{ realm.ldap_base_dn }} eingetragen sind. Die Ldap Basis DN mit Ihren
|
||||
Organisationseinheiten
|
||||
"groups" und "people" bleiben bestehen.</p>
|
||||
<p>Bitte beachten Sie, dass die Daten der Nutzer, die in den
|
||||
Diensten hochgeladen wurden, weiterhin bestehen bleiben. Diese Daten müssen vom
|
||||
@ -20,9 +24,9 @@
|
||||
</div>
|
||||
<div class="d-flex">
|
||||
<a href="{{ url('realm-detail', args = [realm.id]) }}"
|
||||
class="btn btn-secondary mr-auto p-2">Abbrechen</a>
|
||||
class="btn btn-secondary mr-auto p-2"> {{ _('RealmDeleteCancel') }}</a>
|
||||
<a href="{{ url('realm-delete', args = [realm.id]) }}"
|
||||
class="btn btn-danger p-2">Bereich löschen</a>
|
||||
class="btn btn-danger p-2"> {{ _('RealmDeleteAgree') }}</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@ -1,11 +0,0 @@
|
||||
{% extends 'realm/realm_detailed.jinja2' %}
|
||||
{% block realm_form %}
|
||||
<h2>Email Account erstellen oder updaten</h2>
|
||||
{% if form %}
|
||||
<form method="post">
|
||||
<input type="hidden" name="csrfmiddlewaretoken" value="{{ csrf_token }}">
|
||||
{{ form.as_p()|safe }}
|
||||
<button type="submit">Speichern</button>
|
||||
</form>
|
||||
{% endif %}
|
||||
{% endblock %}
|
||||
@ -2,83 +2,62 @@
|
||||
{% block admin_content %}
|
||||
<div class="row ">
|
||||
<div class="col-12 p-3">
|
||||
<h1>Bereich <span style="text-transform: uppercase">{{ realm.name }}</span>
|
||||
<h1> {{ _('Realm') }} <span style="text-transform: uppercase">{{ realm.name }}</span>
|
||||
<small>
|
||||
{% if request.user.is_superuser %}
|
||||
<a href="{{ url('realm-delete-confirm', args=[realm.id]) }}"
|
||||
class="h5 realm-delete-link"><i class="fas fa-dumpster"></i> <span
|
||||
class="d-none d-md-inline-block">Bereich löschen</span></a>
|
||||
class="d-none d-md-inline-block"> {{ _('RealmDetailRemoveRealm') }}</span></a>
|
||||
{% endif %}
|
||||
</small>
|
||||
</h1>
|
||||
|
||||
{% if notice %}
|
||||
<p style="color: green">{{ notice }}</p>
|
||||
{% endif %}
|
||||
{% if error %}
|
||||
<p style="color: darkred">{{ error }}</p>
|
||||
{% endif %}
|
||||
{% if notice %}<p style="color: green">{{ notice }}</p>{% endif %}
|
||||
{% if error %}<p style="color: darkred">{{ error }}</p>{% endif %}
|
||||
{% block detail_content %}
|
||||
<ul class="list-group list-group-flush w-100">
|
||||
<li class="list-group-item">LDAP Organisationseinheit: {{ realm.ldap_base_dn }}</li>
|
||||
<li class="list-group-item">Nutzeranzahl (Aktive/Inaktive): {{ users_count }}
|
||||
<li class="list-group-item"> {{ _('RealmDetailLdapOU') }}: {{ realm.ldap_base_dn }}</li>
|
||||
<li class="list-group-item"> {{ _('RealmDetailUserCount') }}: {{ users_count }}
|
||||
({{ users_count-inactive_user_count }}/{{ inactive_user_count }})
|
||||
<a
|
||||
href="{{ url('realm-multiple-user-delete-inactive', args=[realm.id]) }}"
|
||||
class="float-right">
|
||||
Inaktive Nutzer löschen
|
||||
{{ _('RealmDetailRemoveInactiveUser') }}
|
||||
</a>
|
||||
</li>
|
||||
{% if realm.email %}
|
||||
<li class="list-group-item">Email: {{ realm.email }}</li>
|
||||
{% else %}
|
||||
<li class="list-group-item">Email: <span class="text-danger">Noch ausstehend</span></li>
|
||||
{% endif %}
|
||||
<li class="list-group-item">{{ _('Email') }}:
|
||||
{% if realm.email %}{{ realm.email }}{% else %}
|
||||
<span class="text-danger">{{ _('RealmDetailStillPending') }}</span>{% endif %}
|
||||
</li>
|
||||
<li class="list-group-item">{{ _('RealmDetailAdminGroup') }}:
|
||||
{% if realm.admin_group %}
|
||||
<li class="list-group-item">Admin Gruppe: <a
|
||||
href="{{ url('realm-group-detail', args=[realm.id, ldap_admin_group.dn]) }}"
|
||||
class="badge badge-primary p-2">
|
||||
{{ realm.admin_group }}</a></li>
|
||||
<a href="{{ url('realm-group-detail', args=[realm.id, ldap_admin_group.dn]) }}"
|
||||
class="badge badge-primary p-2">{{ realm.admin_group }}</a>
|
||||
{% else %}
|
||||
<li class="list-group-item">Admin Gruppe: <span class="text-warning">Noch ausstehend</span></li>
|
||||
<span class="text-warning">{{ _('RealmDetailStillPending') }}</span>
|
||||
{% endif %}
|
||||
</li>
|
||||
<li class="list-group-item">{{ _('RealmDetailDefaultGroup') }}:
|
||||
{% if realm.default_group %}
|
||||
<li class="list-group-item">Default Gruppe: <a
|
||||
href="{{ url('realm-group-detail', args=[realm.id, ldap_default_group.dn]) }}"
|
||||
class="badge badge-secondary p-2">
|
||||
{{ realm.default_group }}</a>
|
||||
</li>
|
||||
<a href="{{ url('realm-group-detail', args=[realm.id, ldap_default_group.dn]) }}"
|
||||
class="badge badge-secondary p-2">{{ realm.default_group }}</a>
|
||||
{% else %}
|
||||
<li class="list-group-item">Default Gruppe: <span class="text-warning">Noch ausstehend</span>
|
||||
</li>
|
||||
<span class="text-warning">{{ _('RealmDetailStillPending') }}</span>
|
||||
{% endif %}
|
||||
</li>
|
||||
</ul>
|
||||
<div class="d-flex mt-3">
|
||||
{% if request.user.is_superuser %}
|
||||
<a href="{{ url('realm-update', args=[realm.id]) }}" class="btn btn-primary mr-auto p-2"><i
|
||||
class="fas fa-info-circle"></i> Bereichsinformationen
|
||||
anpassen</a>
|
||||
class="fas fa-info-circle"></i> {{ _('RealmDetailChangeRealmInfo') }}</a>
|
||||
|
||||
{% if realm.email %}
|
||||
<a href="{{ url('realm-mail-test', args=[realm.id]) }}" class="btn btn-secondary p-2"><i
|
||||
class="fas fa-paper-plane"></i> Test Mail</a>
|
||||
class="fas fa-paper-plane"></i> {{ _('RealmDetailTestMail') }}</a>
|
||||
{% endif %}
|
||||
{% endif %}
|
||||
</div>
|
||||
{% block realm_form %}
|
||||
{% endblock %}
|
||||
{% endblock %}
|
||||
|
||||
{# <h2><a href="{{ url('realm-user-add', args=[realm.id]) }}">Nutzer hinzufügen</a></h2>#}
|
||||
{# {% block user_content %}#}
|
||||
{# <h2><a href="{{ url('realm-user-list', args=[realm.id]) }}">Nutzer</a></h2>#}
|
||||
{# {% endblock %}#}
|
||||
{# <h2><a href="{{ url('realm-group-add', args=[realm.id]) }}">Gruppen hinzufügen</a></h2>#}
|
||||
{# {% block groups_content %}#}
|
||||
{# <h2><a href="{{ url('realm-group-list', args=[realm.id]) }}">Gruppen</a></h2>#}
|
||||
{# {% endblock %}#}
|
||||
{# {% block extra_content %}#}
|
||||
{# {% endblock %}#}
|
||||
</div>
|
||||
</div>
|
||||
{% endblock %}
|
||||
|
||||
@ -1,13 +1,13 @@
|
||||
{% extends 'realm/realm_detailed.jinja2' %}
|
||||
|
||||
{% block detail_content %}
|
||||
<h3>Gruppen</h3>
|
||||
<h3>{{ _('Groups') }}</h3>
|
||||
<table class="table">
|
||||
<thead>
|
||||
<tr>
|
||||
<th scope="col">Name</th>
|
||||
<th scope="col">Ldap Domain</th>
|
||||
<th scope="col">Mitgliederanzahl</th>
|
||||
<th scope="col">{{ _('Name') }}</th>
|
||||
<th scope="col">{{ _('Description') }}</th>
|
||||
<th scope="col">{{ _('MemberCount') }}</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
@ -19,12 +19,14 @@
|
||||
title="{{ group.description }}"
|
||||
>{{ group.name }}</a>
|
||||
</td>
|
||||
<td>{{ group.dn }}</td>
|
||||
<td data-toggle="tooltip"
|
||||
data-placement="right"
|
||||
title="{{ group.description }}">{{ group.description|truncate(100) }}</td>
|
||||
<td>{{ group.members|length }}</td>
|
||||
</tr>
|
||||
{% endfor %}
|
||||
</tbody>
|
||||
</table>
|
||||
<a href="{{ url('realm-group-add', args=[realm.id]) }}" class="btn btn-primary"><i class="far fa-plus-square"></i>
|
||||
Gruppen hinzufügen</a>
|
||||
{{ _('AddGroups') }}</a>
|
||||
{% endblock %}
|
||||
|
||||
@ -3,12 +3,12 @@
|
||||
{% import 'macros/utils_macros.jinja2' as mutils %}
|
||||
|
||||
{% block admin_content %}
|
||||
<h2>Bereiche</h2>
|
||||
<h2>{{ _('Realms') }}</h2>
|
||||
{{ mutils.get_realm_table(realm_wrappers) }}
|
||||
{% if request.user.is_superuser %}
|
||||
<div class="row justify-content-center justify-content-sm-center">
|
||||
<div class="col-12 col-sm-8 col-md-8 col-lg-6 col-xl-5 bg-white text-dark p-3 mt-5">
|
||||
<a href="{{ url('realm-add') }}" class="btn btn-primary w-100">Bereich hinzufügen</a>
|
||||
<a href="{{ url('realm-add') }}" class="btn btn-primary w-100">{{ _('RealmAdd') }}</a>
|
||||
</div>
|
||||
</div>
|
||||
{% endif %}
|
||||
|
||||
@ -11,9 +11,9 @@
|
||||
{{ mform.select_input(form.admin_group) }}
|
||||
{{ mform.select_input(form.default_group) }}
|
||||
<div class="d-flex mt-4">
|
||||
<button type="submit" class="btn btn-primary mr-auto p-2">Speichern</button>
|
||||
<button type="submit" class="btn btn-primary mr-auto p-2">{{ _('Save') }}</button>
|
||||
<a href="{{ url('realm-detail', args = [realm.id]) }}"
|
||||
class="btn btn-secondary p-2">Abbrechen</a>
|
||||
class="btn btn-secondary p-2">{{ _('Cancel') }}</a>
|
||||
</div>
|
||||
</form>
|
||||
{% endif %}
|
||||
|
||||
@ -2,11 +2,10 @@
|
||||
{% import 'macros/utils_macros.jinja2' as mutils %}
|
||||
|
||||
{% block detail_content %}
|
||||
<h2>Nutzer </h2>
|
||||
<h2>{{ _('User') }}</h2>
|
||||
{{ mutils.get_user_table(realm, realm_user) }}
|
||||
<a href="{{ url('realm-user-add', args=[realm.id]) }}" class="btn btn-primary"><i class="fas fa-user-plus"></i>
|
||||
Nutzer hinzufügen</a>
|
||||
{{ _('AddUser') }}</a>
|
||||
<a href="{{ url('realm-multiple-user-delete-confirm', args=[realm.id]) }}" class="btn btn-danger float-right"><i
|
||||
class="fas fa-trash"></i> Mehrere Nutzer
|
||||
Löschen</a>
|
||||
class="fas fa-trash"></i> {{ _('RemoveMultipleUser') }}</a>
|
||||
{% endblock %}
|
||||
@ -3,13 +3,11 @@
|
||||
{% import 'macros/utils_macros.jinja2' as mutils %}
|
||||
|
||||
{% block detail_content %}
|
||||
<h2>Nutzer löschen</h2>
|
||||
<h2>{{ _('DeleteUser') }}</h2>
|
||||
{{ mutils.get_warning_box(extra_errors) }}
|
||||
{% if blocked_users %}
|
||||
<div class="alert alert-warning">
|
||||
<h3>Admin User festgestellt</h3>
|
||||
<p>Die folgenden Nutzer können nicht gelöscht werden, da Sie noch Mitglieder von ein oder mehreren Admin
|
||||
Gruppen sind. Bitte tragen Sie diese vorher aus den Admin Gruppen.</p>
|
||||
{{ _('MultipleUserDeleteError')|safe }}
|
||||
<ul>
|
||||
{% for blocked_user in blocked_users %}
|
||||
<li>{{ blocked_user.username }}</li>
|
||||
@ -22,15 +20,15 @@
|
||||
class="form-control"
|
||||
placeholder="Personen Suche"
|
||||
id="data-table-search-input">
|
||||
<label for="data-table-search-input">Suche</label>
|
||||
<label for="data-table-search-input">{{ _('Search') }}Suche</label>
|
||||
</div>
|
||||
<form action="{{ url('realm-multiple-user-delete', args=[realm.id]) }}" method="post">
|
||||
<input type="hidden" name="csrfmiddlewaretoken" value="{{ csrf_token }}">
|
||||
{{ mform.user_select_table_input(users=[], deletable_users=deletable_users, blocked_users=blocked_users, name="ldap_users",css_classes='',show_lastlogin=True, checkbox_label_classes='table-checkbox-control-label') }}
|
||||
<div class="d-flex mt-4">
|
||||
<button type="submit" class="btn btn-danger mr-auto p-2">Ausführen</button>
|
||||
<button type="submit" class="btn btn-danger mr-auto p-2">{{ _('Execute') }}</button>
|
||||
<a href="{{ url('realm-user-list', args = [realm.id]) }}"
|
||||
class="btn btn-secondary p-2">Abbrechen</a>
|
||||
class="btn btn-secondary p-2">{{ _('Cancel') }}</a>
|
||||
</div>
|
||||
</form>
|
||||
{% endblock %}
|
||||
@ -2,21 +2,21 @@
|
||||
{% import 'macros/form_macros.jinja2' as mform %}
|
||||
|
||||
{% block detail_content %}
|
||||
<h2>Nutzer löschen</h2>
|
||||
<h2>{{ _('DeleteUser') }}</h2>
|
||||
<div class="form-group w-25 float-right">
|
||||
<input type="text"
|
||||
class="form-control"
|
||||
placeholder="Personen Suche"
|
||||
id="data-table-search-input">
|
||||
<label for="data-table-search-input">Suche</label>
|
||||
<label for="data-table-search-input">{{ _('Search') }}</label>
|
||||
</div>
|
||||
<form action="{{ url('realm-multiple-user-delete-confirm', args=[realm.id]) }}" method="post">
|
||||
<input type="hidden" name="csrfmiddlewaretoken" value="{{ csrf_token }}">
|
||||
{{ mform.user_select_table_input(users, name="ldap_users",css_classes='',show_lastlogin=True, checkbox_label_classes='table-checkbox-control-label') }}
|
||||
<div class="d-flex mt-4">
|
||||
<button type="submit" class="btn btn-danger mr-auto p-2">Ausführen</button>
|
||||
<button type="submit" class="btn btn-danger mr-auto p-2">{{ _('Execute') }}</button>
|
||||
<a href="{{ url('realm-user-list', args = [realm.id]) }}"
|
||||
class="btn btn-secondary p-2">Abbrechen</a>
|
||||
class="btn btn-secondary p-2">{{ _('Cancel') }}</a>
|
||||
</div>
|
||||
</form>
|
||||
{% endblock %}
|
||||
@ -5,6 +5,7 @@
|
||||
<div class="col-12 col-sm-8 col-md-7 col-lg-5 col-xl-4 bg-white text-dark p-3 mt-5">
|
||||
<div class="alert alert-info" role="alert">
|
||||
<p>
|
||||
{# TODO: Translation #}
|
||||
Ihr Account im Bereich {{ realm.name }} und Ihre Gruppenzugehörigkeiten wurden erfolgreich
|
||||
gelöscht.
|
||||
</p>
|
||||
|
||||
@ -2,19 +2,18 @@
|
||||
{% import 'macros/form_macros.jinja2' as mform %}
|
||||
|
||||
{% block detail_content %}
|
||||
<h2>Nutzer anlegen</h2>
|
||||
<h2>{{ _('AddUser') }}</h2>
|
||||
{% if extra_error %}
|
||||
<div class="alert alert-warning">{{ extra_error }}</div>
|
||||
{% endif %}
|
||||
<form action="{{ url('realm-user-add', args=[realm.id]) }}" method="post">
|
||||
<input type="hidden" name="csrfmiddlewaretoken" value="{{ csrf_token }}">
|
||||
{# {{ form.as_p() }}#}
|
||||
{{ mform.text_input(form.username) }}
|
||||
{{ mform.email_input(form.email) }}
|
||||
<div class="d-flex mt-4">
|
||||
<button type="submit" class="btn btn-primary mr-auto p-2">Speichern</button>
|
||||
<button type="submit" class="btn btn-primary mr-auto p-2">{{ _('Save') }}</button>
|
||||
<a href="{{ url('realm-user-list', args = [realm.id]) }}"
|
||||
class="btn btn-secondary p-2">Abbrechen</a>
|
||||
class="btn btn-secondary p-2">{{ _('Cancel') }}</a>
|
||||
</div>
|
||||
</form>
|
||||
{% endblock %}
|
||||
@ -5,6 +5,7 @@
|
||||
{% if user.user %}
|
||||
{% if user.deleted_user.deletion_date %}
|
||||
<h3 class="text-danger">{{ user.user.username }}
|
||||
{# TODO: translate #}
|
||||
<small>Nutzer wird vorraussichtlich am {{ user.deleted_user.deletion_date.strftime('%d.%m.%Y') }}
|
||||
gelöscht
|
||||
</small>
|
||||
@ -18,23 +19,22 @@
|
||||
{% endif %}
|
||||
{% if not form %}
|
||||
<ul class="list-group list-group-flush w-100">
|
||||
<li class="list-group-item">Ldap Domain: {{ user.user.dn }}</li>
|
||||
<li class="list-group-item"> Anzeigename:
|
||||
<li class="list-group-item">{{ _('LdapDomain') }}: {{ user.user.dn }}</li>
|
||||
<li class="list-group-item">{{ _('UserDisplayName') }}
|
||||
{% if user.user.display_name %}
|
||||
{{ user.user.display_name }}
|
||||
{% else %}
|
||||
<span class="text-warning"> Noch nicht generiert </span>
|
||||
<span class="text-warning"> {{ _('NotGeneratedYet') }}</span>
|
||||
{% endif %}
|
||||
</li>
|
||||
<li class="list-group-item">Vorname: {{ user.user.first_name }}</li>
|
||||
<li class="list-group-item">Nachname: {{ user.user.last_name }}</li>
|
||||
<li class="list-group-item">Email: {{ user.user.email }}</li>
|
||||
<li class="list-group-item">Passwort: <a
|
||||
href="{{ url('realm-user-password-reset', args = [realm.id, user.user.dn]) }}" class="float-right">Nutzerpasswort
|
||||
zurücksetzen</a></li>
|
||||
<li class="list-group-item">Telefon: {{ user.user.phone }}</li>
|
||||
<li class="list-group-item">Mobiltelefon: {{ user.user.mobile_phone }}</li>
|
||||
<li class="list-group-item">Gruppen:
|
||||
<li class="list-group-item">{{ _('FirstName') }}: {{ user.user.first_name }}</li>
|
||||
<li class="list-group-item">{{ _('LastName') }}: {{ user.user.last_name }}</li>
|
||||
<li class="list-group-item">{{ _('Email') }}: {{ user.user.email }}</li>
|
||||
<li class="list-group-item">{{ _('Password') }}: <a
|
||||
href="{{ url('realm-user-password-reset', args = [realm.id, user.user.dn]) }}" class="float-right">{{ _('UserPasswordReset') }}</a></li>
|
||||
<li class="list-group-item">{{ _('Phone') }}: {{ user.user.phone }}</li>
|
||||
<li class="list-group-item">{{ _('MobilePhone') }}: {{ user.user.mobile_phone }}</li>
|
||||
<li class="list-group-item">{{ _('Groups') }}:
|
||||
{% if groups %}
|
||||
{% for group in groups %}
|
||||
<a href="{{ url('realm-group-detail', args=[realm.id, group.dn]) }}"
|
||||
@ -44,14 +44,14 @@
|
||||
class="badge badge-secondary p-1">{{ group.name }}</a>
|
||||
{% endfor %}
|
||||
{% else %}
|
||||
<span class="text-warning">Keine zugewiesen</span>
|
||||
<span class="text-warning">{{ _('NoneGroupAssigned') }}</span>
|
||||
{% endif %}
|
||||
{% if not user.deleted_user.deletion_date %}
|
||||
<a href="{{ url('realm-user-group-update', args=[realm.id, user.user.dn]) }}" class="float-right">
|
||||
Gruppen zuweisen</a>
|
||||
{{ _('AssignGroups') }}</a>
|
||||
{% endif %}
|
||||
</li>
|
||||
<li class="list-group-item">Zuletzt eingeloggt:
|
||||
<li class="list-group-item">{{ _('LastLogin') }}:
|
||||
{% if user.user.last_login %}
|
||||
{{ user.user.last_login.strftime('%d.%m.%Y') }}
|
||||
{% else %}
|
||||
@ -59,10 +59,10 @@
|
||||
{% endif %}</li>
|
||||
{% if user.deleted_user.deletion_date %}
|
||||
<li class="list-group-item text-danger">
|
||||
Löschvorgang: {{ user.deleted_user.deletion_date.strftime('%d.%m.%Y') }}
|
||||
{{ _('DeletionProcess') }}: {{ user.deleted_user.deletion_date.strftime('%d.%m.%Y') }}
|
||||
<a href="{{ url('realm-user-delete-cancel', args=[realm.id, user.user.dn]) }}"
|
||||
class="float-right">
|
||||
Löschvorgang abbrechen</a>
|
||||
{{ _('CancelDeletionProcess') }}</a>
|
||||
</li>
|
||||
{% endif %}
|
||||
</ul>
|
||||
@ -70,19 +70,19 @@
|
||||
{% if not user.deleted_user.deletion_date %}
|
||||
<a href="{{ url('realm-user-update', args = [realm.id, user.user.dn]) }}"
|
||||
class="btn btn-primary mr-auto p-2">
|
||||
<i class="fas fa-user-cog"></i> Nutzer bearbeiten
|
||||
<i class="fas fa-user-cog"></i> {{ _('UpdateUser') }}
|
||||
</a>
|
||||
|
||||
{% if not user.user.last_login %}
|
||||
<a href="{{ url('realm-user-resend-welcome-mail', args = [realm.id, user.user.dn]) }}"
|
||||
class="btn btn-secondary p-2 mr-2">
|
||||
<i class="fas fa-paper-plane"></i> Wilkommensmail erneut senden
|
||||
<i class="fas fa-paper-plane"></i> {{ _('ResendWelcomeMail') }}
|
||||
</a>
|
||||
{% endif %}
|
||||
|
||||
<a href="{{ url('realm-user-delete-confirm', args = [realm.id, user.user.dn]) }}"
|
||||
class="btn btn-danger p-2">
|
||||
<i class="fas fa-trash"></i> Nutzer löschen
|
||||
<i class="fas fa-trash"></i> {{ _('DeleteUser') }}
|
||||
</a>
|
||||
{% endif %}
|
||||
</div>
|
||||
@ -94,9 +94,9 @@
|
||||
{{ mform.text_input(form.first_name) }}
|
||||
{{ mform.text_input(form.last_name) }}
|
||||
<div class="d-flex mt-4">
|
||||
<button type="submit" class="btn btn-primary mr-auto p-2">Speichern</button>
|
||||
<button type="submit" class="btn btn-primary mr-auto p-2">{{ _('Save') }}</button>
|
||||
<a href="{{ url('realm-user-detail', args = [realm.id, user.dn]) }}"
|
||||
class="btn btn-secondary p-2">Abbrechen</a>
|
||||
class="btn btn-secondary p-2">{{ _('Cancel') }}</a>
|
||||
</div>
|
||||
</form>
|
||||
{% endif %}
|
||||
|
||||
@ -3,12 +3,12 @@
|
||||
{% import 'macros/utils_macros.jinja2' as mutils %}
|
||||
|
||||
{% block detail_content %}
|
||||
<h3><span class="text-uppercase">{{ user.username }}</span> - Gruppenzuweisung ändern</h3>
|
||||
<h3><span class="text-uppercase">{{ user.username }}</span> - {{ _('UpdateGroupMembership') }}</h3>
|
||||
{{ mutils.get_warning_box(extra_error) }}
|
||||
<div class="row">
|
||||
<div class="col-6">
|
||||
<form method="post" action="{{ url('realm-user-group-update-delete', args = [realm.id, user.dn]) }}">
|
||||
<button type="submit" class="btn btn-warning w-100 mb-2"><i class="fas fa-minus-square"></i> Entfernen
|
||||
<button type="submit" class="btn btn-warning w-100 mb-2"><i class="fas fa-minus-square"></i> {{ _('UserGroupDelete') }}
|
||||
</button>
|
||||
<input type="hidden" name="csrfmiddlewaretoken" value="{{ csrf_token }}">
|
||||
<ul>
|
||||
@ -27,7 +27,7 @@
|
||||
</div>
|
||||
<div class="col-6">
|
||||
<form method="post" action="{{ url('realm-user-group-update-add', args = [realm.id, user.dn]) }}">
|
||||
<button type="submit" class="btn btn-success w-100 mb-2"><i class="fas fa-plus-square"></i> Hinzufügen
|
||||
<button type="submit" class="btn btn-success w-100 mb-2"><i class="fas fa-plus-square"></i> {{ _('UserGroupAdd') }}
|
||||
</button>
|
||||
<input type="hidden" name="csrfmiddlewaretoken" value="{{ csrf_token }}">
|
||||
<ul>
|
||||
@ -47,6 +47,6 @@
|
||||
</div>
|
||||
<div class="mt-4">
|
||||
<a href="{{ url('realm-user-detail', args = [realm.id, user.dn]) }}"
|
||||
class="btn btn-primary p-2 float-right w-25">Fertig</a>
|
||||
class="btn btn-primary p-2 float-right w-25">{{ _('Done') }}</a>
|
||||
</div>
|
||||
{% endblock %}
|
||||
@ -7,6 +7,7 @@
|
||||
<div class="row justify-content-center justify-content-sm-center">
|
||||
<div class="col-12 col-sm-8 col-md-7 col-lg-5 col-xl-4 bg-white text-dark p-3 mt-5">
|
||||
<div class="alert alert-warning" role="alert">
|
||||
{# TODO: Translation #}
|
||||
<p><strong>Achtung!</strong> Sie sind gerade dabei den Account von <strong>{{ user.username }}</strong> zu schließen.
|
||||
</p>
|
||||
<p>Falls Sie sich sicher sind, dass Sie diesen Nutzer löschen wollen, klicken Sie bitte auf "Nutzer
|
||||
@ -21,9 +22,9 @@
|
||||
</div>
|
||||
<div class="d-flex">
|
||||
<a href="{{ url(cancel_link.name, args = cancel_link.args) }}"
|
||||
class="btn btn-secondary mr-auto p-2">Abbrechen</a>
|
||||
class="btn btn-secondary mr-auto p-2">{{ _('Cancel') }}</a>
|
||||
<a href="{{ url(deletion_link.name, args = deletion_link.args) }}"
|
||||
class="btn btn-danger p-2">Nutzer löschen</a>
|
||||
class="btn btn-danger p-2">{{ _('DeleteUser') }}</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
Reference in New Issue
Block a user