-
Members
+ {% trans "Members" %}
- Last update: {{ corpstats.last_updated|naturaltime }}
+ {% trans "Last update:" %} {{ corpstats.last_updated|naturaltime }}
{% if corpstats.can_update %}
@@ -57,14 +57,14 @@
- Character
+ {% trans "Character" %}
{% if corpstats.show_apis %}
API
{% endif %}
- zKillboard
- Main Character
- Main Corporation
- Main Alliance
+ {% trans "zKillboard" %}
+ {% trans "Main Character" %}
+ {% trans "Main Corporation" %}
+ {% trans "Main Alliance" %}
{% for member in members %}
diff --git a/corputils/templates/corputils/search.html b/corputils/templates/corputils/search.html
index 9345b9eb..413fb0ea 100644
--- a/corputils/templates/corputils/search.html
+++ b/corputils/templates/corputils/search.html
@@ -5,7 +5,7 @@
{% block member_data %}
-
Search Results
+
{% trans "Search Results" %}
@@ -14,13 +14,13 @@
- Character
- Corporation
- API
- zKillboard
- Main Character
- Main Corporation
- Main Alliance
+ {% trans "Character" %}
+ {% trans "Corporation" %}
+ {% trans "API" %}
+ {% trans "zKillboard" %}
+ {% trans "Main Character" %}
+ {% trans "Main Corporation" %}
+ {% trans "Main Alliance" %}
{% for result in results %}
diff --git a/corputils/views.py b/corputils/views.py
index b98613f9..9374a28d 100644
--- a/corputils/views.py
+++ b/corputils/views.py
@@ -6,6 +6,7 @@ from django.contrib import messages
from django.core.exceptions import PermissionDenied
from django.db import IntegrityError
from django.core.paginator import Paginator, EmptyPage, PageNotAnInteger
+from django.utils.translation import ugettext_lazy as _
from django.conf import settings
from eveonline.models import EveCharacter, EveCorporationInfo
from corputils.models import CorpStats
@@ -50,11 +51,11 @@ def corpstats_add(request, token):
if CorpStats.objects.filter(pk=cs.pk).visible_to(request.user).exists():
return redirect('corputils:view_corp', corp_id=corp.corporation_id)
except EveCorporationInfo.DoesNotExist:
- messages.error(request, 'Unrecognized corporation. Please ensure it is a member of the alliance or a blue.')
+ messages.error(request, _('Unrecognized corporation. Please ensure it is a member of the alliance or a blue.'))
except IntegrityError:
- messages.error(request, 'Selected corp already has a statistics module.')
+ messages.error(request, _('Selected corp already has a statistics module.'))
except AssertionError:
- messages.error(request, 'Failed to gather corporation statistics with selected token.')
+ messages.error(request, _('Failed to gather corporation statistics with selected token.'))
return redirect('corputils:view')
diff --git a/eveonline/views.py b/eveonline/views.py
index e490b257..ae585464 100755
--- a/eveonline/views.py
+++ b/eveonline/views.py
@@ -2,6 +2,7 @@ from __future__ import unicode_literals
from django.shortcuts import render, redirect, get_object_or_404
from django.contrib.auth.decorators import login_required
from django.contrib import messages
+from django.utils.translation import ugettext_lazy as _
from eveonline.forms import UpdateKeyForm
from eveonline.managers import EveManager
from authentication.managers import AuthServicesInfoManager
@@ -49,7 +50,7 @@ def add_api_key(request):
not EveCharacter.objects.filter(character_id=c.id).exists()]
logger.info("Successfully processed api add form for user %s" % request.user)
if not settings.API_SSO_VALIDATION:
- messages.success(request, 'Added API key %s to your account.' % form.cleaned_data['api_id'])
+ messages.success(request, _('Added API key %(apiid)s to your account.') % {"apiid": form.cleaned_data['api_id']})
auth = AuthServicesInfo.objects.get(user=request.user)
if not auth.main_char_id:
return redirect('auth_characters')
@@ -73,11 +74,11 @@ def api_sso_validate(request, token, api_id):
api = get_object_or_404(EveApiKeyPair, api_id=api_id)
if api.user and api.user != request.user:
logger.warning('User %s attempting to take ownership of api %s from %s' % (request.user, api_id, api.user))
- messages.warning(request, 'API %s already claimed by user %s' % (api_id, api.user))
+ messages.warning(request, _('API %(apiid)s already claimed by user %(user)s') % {"apiid": api_id, "user": api.user})
return redirect('auth_dashboard')
elif api.sso_verified:
logger.debug('API %s has already been verified.' % api_id)
- messages.info(request, 'API %s has already been verified' % api_id)
+ messages.info(request, _('API %(apiid)s has already been verified') % {"apiid": api_id})
return redirect('auth_dashboard')
logger.debug('API %s has not been verified. Checking if token for %s matches.' % (api_id, token.character_name))
characters = EveApiManager.get_characters_from_api(api.api_id, api.api_key).result
@@ -86,14 +87,14 @@ def api_sso_validate(request, token, api_id):
api.sso_verified = True
api.save()
EveCharacter.objects.filter(character_id__in=characters).update(user=request.user, api_id=api_id)
- messages.success(request, 'Confirmed ownership of API %s' % api.api_id)
+ messages.success(request, _('Confirmed ownership of API %(apiid)s') % {"apiid": api.api_id})
auth = AuthServicesInfo.objects.get(user=request.user)
if not auth.main_char_id:
return redirect('auth_characters')
return redirect('auth_dashboard')
else:
- messages.warning(request, '%s not found on API %s. Please SSO as a character on the API.' % (
- token.character_name, api.api_id))
+ messages.warning(request, _('%(character)s not found on API %(apiid)s. Please SSO as a character on the API.') % {
+ "character": token.character_name, "apiid": api.api_id})
return render(request, 'registered/apisso.html', context={'api': api})
@@ -127,7 +128,7 @@ def api_key_removal(request, api_id):
authinfo = AuthServicesInfo.objects.get(user=request.user)
EveManager.delete_api_key_pair(api_id, request.user.id)
EveManager.delete_characters_by_api_id(api_id, request.user.id)
- messages.success(request, 'Deleted API key %s' % api_id)
+ messages.success(request, _('Deleted API key %(apiid)s') % {"apiid": api_id})
logger.info("Succesfully processed api delete request by user %s for api %s" % (request.user, api_id))
if not EveCharacter.objects.filter(character_id=authinfo.main_char_id).exists():
authinfo.main_char_id = None
@@ -150,10 +151,10 @@ def main_character_change(request, char_id):
if EveCharacter.objects.filter(character_id=char_id).exists() and EveCharacter.objects.get(
character_id=char_id).user == request.user:
AuthServicesInfoManager.update_main_char_id(char_id, request.user)
- messages.success(request, 'Changed main character ID to %s' % char_id)
+ messages.success(request, _('Changed main character ID to %(charid)s') % {"charid": char_id})
set_state(request.user)
return redirect("auth_dashboard")
- messages.error(request, 'Failed to change main character - selected character is not owned by your account.')
+ messages.error(request, _('Failed to change main character - selected character is not owned by your account.'))
return redirect("auth_characters")
@@ -164,12 +165,12 @@ def user_refresh_api(request, api_id):
api_key_pair = EveApiKeyPair.objects.get(api_id=api_id)
if api_key_pair.user == request.user:
refresh_api(api_key_pair)
- messages.success(request, 'Refreshed API key %s' % api_id)
+ messages.success(request, _('Refreshed API key %(apiid)s') % {"apiid": api_id})
set_state(request.user)
else:
- messages.warning(request, 'You are not authorized to refresh that API key.')
+ messages.warning(request, _('You are not authorized to refresh that API key.'))
logger.warn("User %s not authorized to refresh api id %s" % (request.user, api_id))
else:
- messages.warning(request, 'Unable to locate API key %s' % api_id)
+ messages.warning(request, _('Unable to locate API key %(apiid)s') % {"apiid": api_id})
logger.warn("User %s unable to refresh api id %s - api key not found" % (request.user, api_id))
return redirect("auth_dashboard")
diff --git a/fleetactivitytracking/templates/fleetactivitytracking/characternotexisting.html b/fleetactivitytracking/templates/fleetactivitytracking/characternotexisting.html
index b976c4df..67d76c67 100644
--- a/fleetactivitytracking/templates/fleetactivitytracking/characternotexisting.html
+++ b/fleetactivitytracking/templates/fleetactivitytracking/characternotexisting.html
@@ -1,8 +1,9 @@
{% extends 'public/base.html' %}
+{% load i18n %}
{% block title %}Fleet Participation{% endblock %}
-{% block page_title %}Fleet Participation{% endblock %}
+{% block page_title %}{% trans "Fleet Participation" %}{% endblock %}
-
+
@@ -13,8 +14,8 @@
-
Character not registered!
- This character is not part of any registered API-key. You must go to
API key management and add an API with the character on before being able to click fleet attendance links.
+
{% trans "Character not registered!" %}
+ {% trans "This character is not part of any registered API-key. You must go to" %}
{% trans "API key management and add an API with the character on before being able to click fleet attendance links." %}
diff --git a/fleetactivitytracking/templates/fleetactivitytracking/fatlinkmodify.html b/fleetactivitytracking/templates/fleetactivitytracking/fatlinkmodify.html
index aba5c80c..d30ac0f4 100644
--- a/fleetactivitytracking/templates/fleetactivitytracking/fatlinkmodify.html
+++ b/fleetactivitytracking/templates/fleetactivitytracking/fatlinkmodify.html
@@ -8,7 +8,7 @@
{% block content %}
-
{% else %}
-
No fleet activity on record.
+
{% trans "No fleet activity on record." %}
{% endif %}
{% if perms.auth.fleetactivitytracking%}
@@ -95,7 +95,7 @@
{% else %}
-
No created fatlinks on record.
+
{% trans "No created fatlinks on record." %}
{% endif %}
{% endif %}
diff --git a/fleetactivitytracking/views.py b/fleetactivitytracking/views.py
index 9fd3df75..2c3cd203 100644
--- a/fleetactivitytracking/views.py
+++ b/fleetactivitytracking/views.py
@@ -5,6 +5,7 @@ from django.core.exceptions import ObjectDoesNotExist
from django.contrib.auth.decorators import login_required
from django.contrib.auth.decorators import permission_required
from django.core.exceptions import ValidationError
+from django.utils.translation import ugettext_lazy as _
from django.utils import timezone
from django.contrib import messages
from django.core.paginator import Paginator, EmptyPage, PageNotAnInteger
@@ -233,7 +234,7 @@ def click_fatlink_view(request, token, hash, fatname):
try:
fat.full_clean()
fat.save()
- messages.success(request, 'Fleet participation registered.')
+ messages.success(request, _('Fleet participation registered.'))
except ValidationError as e:
err_messages = []
for errorname, message in e.message_dict.items():
@@ -244,9 +245,9 @@ def click_fatlink_view(request, token, hash, fatname):
'character_name': token.character_name}
return render(request, 'fleetactivitytracking/characternotexisting.html', context=context)
else:
- messages.error(request, 'FAT link has expired.')
+ messages.error(request, _('FAT link has expired.'))
except (ObjectDoesNotExist, KeyError):
- messages.error(request, 'Invalid FAT link.')
+ messages.error(request, _('Invalid FAT link.'))
return redirect('auth_fatlink_view')
diff --git a/groupmanagement/views.py b/groupmanagement/views.py
index 9f1a3a34..30fa5995 100755
--- a/groupmanagement/views.py
+++ b/groupmanagement/views.py
@@ -14,6 +14,7 @@ from groupmanagement.models import GroupRequest
from authentication.models import AuthServicesInfo
from authentication.managers import UserState
from eveonline.managers import EveManager
+from django.utils.translation import ugettext_lazy as _
import logging
@@ -119,12 +120,12 @@ def group_membership_remove(request, group_id, user_id):
# Remove group from user
user.groups.remove(group)
logger.info("User %s removed user %s from group %s" % (request.user, user, group))
- messages.success(request, "Removed user %s from group %s" % (user, group))
+ messages.success(request, _("Removed user %(user)s from group %(group)s.") % {"user": user, "group": group})
except ObjectDoesNotExist:
- messages.warning(request, "User does not exist in that group")
+ messages.warning(request, _("User does not exist in that group"))
except ObjectDoesNotExist:
- messages.warning(request, "Group does not exist")
+ messages.warning(request, _("Group does not exist"))
return redirect('auth_group_membership_list', group_id)
@@ -149,15 +150,14 @@ def group_accept_request(request, group_request_id):
notify(group_request.user, "Group Application Accepted", level="success",
message="Your application to %s has been accepted." % group_request.group)
messages.success(request,
- 'Accepted application from %s to %s.' % (group_request.main_char, group_request.group))
+ _('Accepted application from %(mainchar)s to %(group)s.') % {"mainchar": group_request.main_char, "group": group_request.group})
except PermissionDenied as p:
logger.warning("User %s attempted to accept group join request %s but permission was denied" %
(request.user, group_request_id))
raise p
except:
- messages.error(request, 'An unhandled error occurred while processing the application from %s to %s.' % (
- group_request.main_char, group_request.group))
+ messages.error(request, _('An unhandled error occurred while processing the application from %(mainchar)s to %(group)s.') % {"mainchar": group_request.main_char, "group": group_request.group})
logger.exception("Unhandled exception occurred while user %s attempting to accept grouprequest id %s." % (
request.user, group_request_id))
pass
@@ -182,15 +182,14 @@ def group_reject_request(request, group_request_id):
notify(group_request.user, "Group Application Rejected", level="danger",
message="Your application to %s has been rejected." % group_request.group)
messages.success(request,
- 'Rejected application from %s to %s.' % (group_request.main_char, group_request.group))
+ _('Rejected application from %(mainchar)s to %(group)s.') % {"mainchar": group_request.main_char, "group": group_request.group})
except PermissionDenied as p:
logger.warning("User %s attempted to reject group join request %s but permission was denied" %
(request.user, group_request_id))
raise p
except:
- messages.error(request, 'An unhandled error occured while processing the application from %s to %s.' % (
- group_request.main_char, group_request.group))
+ messages.error(request, _('An unhandled error occurred while processing the application from %(mainchar)s to %(group)s.') % {"mainchar": group_request.main_char, "group": group_request.group})
logger.exception("Unhandled exception occured while user %s attempting to reject group request id %s" % (
request.user, group_request_id))
pass
@@ -218,14 +217,14 @@ def group_leave_accept_request(request, group_request_id):
notify(group_request.user, "Group Leave Request Accepted", level="success",
message="Your request to leave %s has been accepted." % group_request.group)
messages.success(request,
- 'Accepted application from %s to leave %s.' % (group_request.main_char, group_request.group))
+ _('Accepted application from %(mainchar)s to leave %(group)s.') % {"mainchar": group_request.main_char, "group": group_request.group})
except PermissionDenied as p:
logger.warning("User %s attempted to accept group leave request %s but permission was denied" %
(request.user, group_request_id))
raise p
except:
- messages.error(request, 'An unhandled error occured while processing the application from %s to leave %s.' % (
- group_request.main_char, group_request.group))
+ messages.error(request, _('An unhandled error occured while processing the application from %(mainchar)s to leave %(group)s.') % {
+ "mainchar": group_request.main_char, "group": group_request.group})
logger.exception("Unhandled exception occured while user %s attempting to accept group leave request id %s" % (
request.user, group_request_id))
pass
@@ -250,15 +249,15 @@ def group_leave_reject_request(request, group_request_id):
request.user, group_request.user, group_request.group.name))
notify(group_request.user, "Group Leave Request Rejected", level="danger",
message="Your request to leave %s has been rejected." % group_request.group)
- messages.success(request, 'Rejected application from %s to leave %s.' % (
- group_request.main_char, group_request.group))
+ messages.success(request, _('Rejected application from %(mainchar)s to leave %(group)s.') % {
+ "mainchar": group_request.main_char, "group": group_request.group})
except PermissionDenied as p:
logger.warning("User %s attempted to reject group leave request %s but permission was denied" %
(request.user, group_request_id))
raise p
except:
- messages.error(request, 'An unhandled error occured while processing the application from %s to leave %s.' % (
- group_request.main_char, group_request.group))
+ messages.error(request, _('An unhandled error occured while processing the application from %(mainchar)s to leave %(group)s.') % {
+ "mainchar": group_request.main_char, "group": group_request.group})
logger.exception("Unhandled exception occured while user %s attempting to reject group leave request id %s" % (
request.user, group_request_id))
pass
@@ -296,7 +295,7 @@ def group_request_add(request, group_id):
if not GroupManager.joinable_group(group):
logger.warning("User %s attempted to join group id %s but it is not a joinable group" %
(request.user, group_id))
- messages.warning(request, "You cannot join that group")
+ messages.warning(request, _("You cannot join that group"))
return redirect('auth_groups')
if not request.user.has_perm('groupmanagement.request_groups') and not group.authgroup.public:
# Does not have the required permission, trying to join a non-public group
@@ -317,7 +316,7 @@ def group_request_add(request, group_id):
grouprequest.leave_request = False
grouprequest.save()
logger.info("Created group request for user %s to group %s" % (request.user, Group.objects.get(id=group_id)))
- messages.success(request, 'Applied to group %s.' % group)
+ messages.success(request, _('Applied to group %(group)s.') % {"group": group})
return redirect("auth_groups")
@@ -328,12 +327,12 @@ def group_request_leave(request, group_id):
if not GroupManager.joinable_group(group):
logger.warning("User %s attempted to leave group id %s but it is not a joinable group" %
(request.user, group_id))
- messages.warning(request, "You cannot leave that group")
+ messages.warning(request, _("You cannot leave that group"))
return redirect('auth_groups')
if group not in request.user.groups.all():
logger.debug("User %s attempted to leave group id %s but they are not a member" %
(request.user, group_id))
- messages.warning(request, "You are not a member of that group")
+ messages.warning(request, _("You are not a member of that group"))
return redirect('auth_groups')
if group.authgroup.open:
logger.info("%s leaving %s as is an open group" % (request.user, group))
@@ -348,5 +347,5 @@ def group_request_leave(request, group_id):
grouprequest.leave_request = True
grouprequest.save()
logger.info("Created group leave request for user %s to group %s" % (request.user, Group.objects.get(id=group_id)))
- messages.success(request, 'Applied to leave group %s.' % group)
+ messages.success(request, _('Applied to leave group %(group)s.') % {"group": group})
return redirect("auth_groups")
diff --git a/locale/de/LC_MESSAGES/django.mo b/locale/de/LC_MESSAGES/django.mo
index bc43249b..1d8276ac 100644
Binary files a/locale/de/LC_MESSAGES/django.mo and b/locale/de/LC_MESSAGES/django.mo differ
diff --git a/locale/de/LC_MESSAGES/django.po b/locale/de/LC_MESSAGES/django.po
index c428bbe2..d5b4a232 100644
--- a/locale/de/LC_MESSAGES/django.po
+++ b/locale/de/LC_MESSAGES/django.po
@@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2016-06-16 18:15+0000\n"
+"POT-Creation-Date: 2017-02-03 17:01+0000\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME
\n"
"Language-Team: LANGUAGE \n"
@@ -15,899 +15,1176 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-#: alliance_auth/settings.py:83
+#: alliance_auth/settings.py:104 alliance_auth/tests/test_settings.py:92
msgid "English"
msgstr "Englisch"
-#: alliance_auth/settings.py:84
+#: alliance_auth/settings.py:105 alliance_auth/tests/test_settings.py:93
msgid "German"
msgstr "Deutsch"
-#: alliance_auth/urls.py:19
+#: alliance_auth/urls.py:39
msgid "^$"
msgstr ""
-#: alliance_auth/urls.py:155
+#: alliance_auth/urls.py:82
msgid "^login_user/"
msgstr ""
-#: alliance_auth/urls.py:156
+#: alliance_auth/urls.py:83
msgid "^register_user/"
msgstr ""
-#: alliance_auth/urls.py:158
+#: alliance_auth/urls.py:85
msgid "^user/password/$"
msgstr ""
-#: alliance_auth/urls.py:159
+#: alliance_auth/urls.py:86
msgid "^user/password/done/$"
msgstr ""
-#: alliance_auth/urls.py:161
+#: alliance_auth/urls.py:88
msgid "^user/password/reset/$"
msgstr ""
-#: alliance_auth/urls.py:163
+#: alliance_auth/urls.py:90
msgid "^user/password/password/reset/done/$"
msgstr ""
-#: alliance_auth/urls.py:165
+#: alliance_auth/urls.py:92
msgid "^user/password/reset/complete/$"
msgstr ""
-#: alliance_auth/urls.py:167
+#: alliance_auth/urls.py:94
msgid ""
"^user/password/reset/confirm/(?P[0-9A-Za-z_\\-]+)/(?P.+)/$"
msgstr ""
-#: alliance_auth/urls.py:171
+#: alliance_auth/urls.py:98
msgid "^dashboard/$"
msgstr ""
-#: alliance_auth/urls.py:172
+#: alliance_auth/urls.py:99
msgid "^help/$"
msgstr ""
-#: alliance_auth/urls.py:175
+#: alliance_auth/urls.py:102
msgid "^add_api_key/"
msgstr ""
-#: alliance_auth/urls.py:176
-msgid "^api_key_management/"
-msgstr ""
-
-#: alliance_auth/urls.py:178
+#: alliance_auth/urls.py:103
msgid "^refresh_api_pair/([0-9]+)/$"
msgstr ""
-#: alliance_auth/urls.py:179
+#: alliance_auth/urls.py:104
msgid "^delete_api_pair/(\\w+)/$"
msgstr ""
-#: alliance_auth/urls.py:180
+#: alliance_auth/urls.py:105
msgid "^characters/"
msgstr ""
-#: alliance_auth/urls.py:183
+#: alliance_auth/urls.py:108
+msgid "^corpstats/"
+msgstr ""
+
+#: alliance_auth/urls.py:111
msgid "^groups/"
msgstr ""
-#: alliance_auth/urls.py:184
+#: alliance_auth/urls.py:112
msgid "^group/management/"
msgstr ""
-#: alliance_auth/urls.py:186
+#: alliance_auth/urls.py:114
+msgid "^group/membership/$"
+msgstr ""
+
+#: alliance_auth/urls.py:116
+msgid "^group/membership/(\\w+)/$"
+msgstr ""
+
+#: alliance_auth/urls.py:118
+msgid "^group/membership/(\\w+)/remove/(\\w+)/$"
+msgstr ""
+
+#: alliance_auth/urls.py:120
msgid "^group/request_add/(\\w+)"
msgstr ""
-#: alliance_auth/urls.py:188
+#: alliance_auth/urls.py:122
msgid "^group/request/accept/(\\w+)"
msgstr ""
-#: alliance_auth/urls.py:190
+#: alliance_auth/urls.py:124
msgid "^group/request/reject/(\\w+)"
msgstr ""
-#: alliance_auth/urls.py:193
+#: alliance_auth/urls.py:127
msgid "^group/request_leave/(\\w+)"
msgstr ""
-#: alliance_auth/urls.py:195
+#: alliance_auth/urls.py:129
msgid "group/leave_request/accept/(\\w+)"
msgstr ""
-#: alliance_auth/urls.py:197
+#: alliance_auth/urls.py:131
msgid "^group/leave_request/reject/(\\w+)"
msgstr ""
-#: alliance_auth/urls.py:201
+#: alliance_auth/urls.py:135
msgid "^hr_application_management/"
msgstr ""
-#: alliance_auth/urls.py:203
+#: alliance_auth/urls.py:137
msgid "^hr_application_create/$"
msgstr ""
-#: alliance_auth/urls.py:205
+#: alliance_auth/urls.py:139
msgid "^hr_application_create/(\\d+)"
msgstr ""
-#: alliance_auth/urls.py:207
+#: alliance_auth/urls.py:141
msgid "^hr_application_remove/(\\w+)"
msgstr ""
-#: alliance_auth/urls.py:209
+#: alliance_auth/urls.py:143
msgid "hr_application_view/(\\w+)"
msgstr ""
-#: alliance_auth/urls.py:211
+#: alliance_auth/urls.py:145
msgid "hr_application_personal_view/(\\w+)"
msgstr ""
-#: alliance_auth/urls.py:213
+#: alliance_auth/urls.py:147
msgid "hr_application_personal_removal/(\\w+)"
msgstr ""
-#: alliance_auth/urls.py:216
+#: alliance_auth/urls.py:150
msgid "hr_application_approve/(\\w+)"
msgstr ""
-#: alliance_auth/urls.py:218
+#: alliance_auth/urls.py:152
msgid "hr_application_reject/(\\w+)"
msgstr ""
-#: alliance_auth/urls.py:220
+#: alliance_auth/urls.py:154
msgid "hr_application_search/"
msgstr ""
-#: alliance_auth/urls.py:222
+#: alliance_auth/urls.py:156
msgid "hr_mark_in_progress/(\\w+)"
msgstr ""
-#: alliance_auth/urls.py:226
+#: alliance_auth/urls.py:160
msgid "^optimer/$"
msgstr ""
-#: alliance_auth/urls.py:227
+#: alliance_auth/urls.py:161
msgid "^add_optimer/$"
msgstr ""
-#: alliance_auth/urls.py:228
+#: alliance_auth/urls.py:162
msgid "^remove_optimer/(\\w+)"
msgstr ""
-#: alliance_auth/urls.py:229
+#: alliance_auth/urls.py:163
msgid "^edit_optimer/(\\w+)$"
msgstr ""
-#: alliance_auth/urls.py:232
+#: alliance_auth/urls.py:166
msgid "^services/$"
msgstr ""
-#: alliance_auth/urls.py:233
-msgid "^services/jabber_broadcast/$"
-msgstr ""
-
-#: alliance_auth/urls.py:240
-msgid "^corputils/$"
-msgstr ""
-
-#: alliance_auth/urls.py:241
-msgid "^corputils/(?P[0-9]+)/$"
-msgstr ""
-
-#: alliance_auth/urls.py:242
-msgid "^corputils/search/$"
-msgstr ""
-
-#: alliance_auth/urls.py:243
-msgid "^corputils/search/(?P[0-9]+)/$"
-msgstr ""
-
-#: alliance_auth/urls.py:246
+#: alliance_auth/urls.py:169
msgid "^timers/$"
msgstr ""
-#: alliance_auth/urls.py:247
+#: alliance_auth/urls.py:170
msgid "^add_timer/$"
msgstr ""
-#: alliance_auth/urls.py:248
+#: alliance_auth/urls.py:171
msgid "^remove_timer/(\\w+)"
msgstr ""
-#: alliance_auth/urls.py:249
+#: alliance_auth/urls.py:172
msgid "^edit_timer/(\\w+)$"
msgstr ""
-#: alliance_auth/urls.py:252
-msgid "^sigtracker/$"
-msgstr ""
-
-#: alliance_auth/urls.py:253
-msgid "^add_signature/$"
-msgstr ""
-
-#: alliance_auth/urls.py:254
-msgid "^remove_signature/(\\w+)"
-msgstr ""
-
-#: alliance_auth/urls.py:255
-msgid "^edit_signature/(\\w+)$"
-msgstr ""
-
-#: alliance_auth/urls.py:258
+#: alliance_auth/urls.py:175
msgid "^srp/$"
msgstr ""
-#: alliance_auth/urls.py:259
+#: alliance_auth/urls.py:176
msgid "^srp_all/$"
msgstr ""
-#: alliance_auth/urls.py:260
+#: alliance_auth/urls.py:177
msgid "^srp_fleet_view/(\\w+)$"
msgstr ""
-#: alliance_auth/urls.py:261
+#: alliance_auth/urls.py:178
msgid "^srp_fleet_add_view/$"
msgstr ""
-#: alliance_auth/urls.py:262
+#: alliance_auth/urls.py:179
msgid "^srp_fleet_edit/(\\w+)$"
msgstr ""
-#: alliance_auth/urls.py:263
+#: alliance_auth/urls.py:180
msgid "^srp_request/(\\w+)"
msgstr ""
-#: alliance_auth/urls.py:264
+#: alliance_auth/urls.py:181
msgid "srp_request_amount_update/(\\w+)"
msgstr ""
-#: alliance_auth/urls.py:268
+#: alliance_auth/urls.py:185
msgid "^tool/fleet_formatter_tool/$"
msgstr ""
-#: alliance_auth/urls.py:272
+#: alliance_auth/urls.py:189
msgid "^notifications/$"
msgstr ""
-#: alliance_auth/urls.py:273
+#: alliance_auth/urls.py:190
msgid "^notifications/(\\w+)/$"
msgstr ""
-#: alliance_auth/urls.py:276
-msgid "^set_jabber_password/$"
-msgstr ""
-
-#: alliance_auth/urls.py:279
-msgid "^fits/$"
-msgstr ""
-
-#: authentication/forms.py:6
-#: customization/templates/registered/services.html:17
-#: customization/templates/registered/services.html:342
-#: registration/forms.py:11
-#: stock/templates/registered/hrapplicationmanagement.html:25
-#: stock/templates/registered/hrapplicationmanagement.html:79
-#: stock/templates/registered/hrapplicationmanagement.html:120
+#: authentication/forms.py:9 authentication/forms.py:14
+#: stock/templates/registered/hrapplicationmanagement.html:26
+#: stock/templates/registered/hrapplicationmanagement.html:80
+#: stock/templates/registered/hrapplicationmanagement.html:124
#: stock/templates/registered/hrapplicationsearchview.html:26
-#: stock/templates/registered/services.html:25
-#: stock/templates/registered/services.html:379
+#: stock/templates/registered/services.html:16
msgid "Username"
msgstr "Benutzername"
-#: authentication/forms.py:7
-#: customization/templates/registered/services.html:18
-#: customization/templates/registered/services.html:343
-#: registration/forms.py:12 services/forms.py:26 services/forms.py:30
-#: stock/templates/registered/services.html:26
-#: stock/templates/registered/services.html:380
+#: authentication/forms.py:10 authentication/forms.py:15 services/forms.py:25
msgid "Password"
msgstr "Passwort"
-#: corputils/forms.py:9
+#: authentication/forms.py:16
+msgid "Password Again"
+msgstr "Passwort wdh."
+
+#: authentication/forms.py:17
+msgid "Email"
+msgstr "E-Mail"
+
+#: authentication/forms.py:18
+msgid "Email Again"
+msgstr "E-Mail wdh."
+
+#: authentication/views.py:38 authentication/views.py:110
+msgid "Your account has been disabled."
+msgstr "Dein Account wurde deaktiviert."
+
+#: authentication/views.py:41
+msgid "Username/password invalid."
+msgstr "Benutzername/Passwort ungültig."
+
+#: authentication/views.py:72
+msgid "Add an API key to set up your account."
+msgstr "Füge einen API Key hinzu um deinen Account einzurichten."
+
+#: authentication/views.py:113
+msgid ""
+"Authenticated character has no owning account. Please log in with username "
+"and password."
+msgstr ""
+"Authentifizierter Charakter hat keinen zugehörigen Account. Bitte melde dich mit Benutzername und Passwort an."
+
+#: authentication/views.py:115
+msgid ""
+"No account exists with the authenticated character. Please create an account "
+"first."
+msgstr ""
+"Es existiert kein Account für den authentifizierten Character. Bitte erstelle einen Account."
+
+#: corputils/templates/corputils/base.html:3
+#: corputils/templates/corputils/base.html:4
+#: corputils/templates/corputils/base.html:7
+msgid "Corporation Member Data"
+msgstr "Corporation Mitgliedsdaten"
+
+#: corputils/templates/corputils/base.html:13
+msgid "Corporations"
+msgstr "Corporations"
+
+#: corputils/templates/corputils/base.html:24
+msgid "Add"
+msgstr "Hinzufügen"
+
+#: corputils/templates/corputils/base.html:30
msgid "Search characters..."
msgstr "Suche Charaktere..."
-#: customization/templates/registered/dashboard.html:4
-#: customization/templates/registered/dashboard.html:14
-#: stock/templates/registered/dashboard.html:4
-#: stock/templates/registered/dashboard.html:9
-msgid "Dashboard"
-msgstr "Dashboard"
+#: corputils/templates/corputils/corpstats.html:28
+msgid "API Index:"
+msgstr "API Index:"
-#: customization/templates/registered/dashboard.html:24
-#: stock/templates/registered/corputils.html:107
-#: stock/templates/registered/corputilssearchview.html:40
-#: stock/templates/registered/dashboard.html:19
-msgid "Main character"
+#: corputils/templates/corputils/corpstats.html:41
+#: fleetactivitytracking/templates/fleetactivitytracking/fatlinkstatisticsview.html:25
+#: stock/templates/registered/groupmembers.html:13
+msgid "Members"
+msgstr "Mitgliederzahl:"
+
+#: corputils/templates/corputils/corpstats.html:44
+msgid "Last update:"
+msgstr "Letzes Update:"
+
+#: corputils/templates/corputils/corpstats.html:60
+#: corputils/templates/corputils/search.html:17
+#: fleetactivitytracking/templates/fleetactivitytracking/fatlinkmodify.html:29
+#: fleetactivitytracking/templates/fleetactivitytracking/fatlinkview.html:29
+#: stock/templates/registered/fleetupcharacters.html:46
+#: stock/templates/registered/groupmembers.html:19
+msgid "Character"
+msgstr "Charakter"
+
+#: corputils/templates/corputils/corpstats.html:64
+#: corputils/templates/corputils/search.html:20
+msgid "zKillboard"
+msgstr "zKillboard"
+
+#: corputils/templates/corputils/corpstats.html:65
+#: corputils/templates/corputils/search.html:21
+#: stock/templates/registered/dashboard.html:14
+#: stock/templates/registered/hrapplicationmanagement.html:81
+#: stock/templates/registered/hrapplicationmanagement.html:125
+#: stock/templates/registered/hrapplicationsearchview.html:27
+#: stock/templates/registered/hrapplicationview.html:34
+msgid "Main Character"
msgstr "Hauptcharakter"
-#: customization/templates/registered/dashboard.html:48
-#: stock/templates/registered/dashboard.html:43
-msgid "Groups"
-msgstr "Gruppen"
+#: corputils/templates/corputils/corpstats.html:66
+#: corputils/templates/corputils/search.html:22
+msgid "Main Corporation"
+msgstr "Haupt Corporation"
-#: customization/templates/registered/dashboard.html:69
-#: stock/templates/registered/dashboard.html:64
-msgid "Not a part of the corporation."
-msgstr "Nicht Mitglied der Corporation"
+#: corputils/templates/corputils/corpstats.html:67
+#: corputils/templates/corputils/search.html:23
+msgid "Main Alliance"
+msgstr "Haupt Allianz"
-#: customization/templates/registered/dashboard.html:71
-#: stock/templates/registered/dashboard.html:66
-msgid "Not a part of the alliance."
-msgstr "Nicht Mitglied der Allianz"
+#: corputils/templates/corputils/corpstats.html:80
+#: corputils/templates/corputils/search.html:35
+msgid "Killboard"
+msgstr "Killboard"
-#: customization/templates/registered/fleetfits.html:8
-#: stock/templates/registered/fleetfits.html:8
-msgid "Alliance Fleet Doctrines"
-msgstr "Allianzflottendoktrinen"
+#: corputils/templates/corputils/search.html:8
+msgid "Search Results"
+msgstr "Suchergebnisse"
-#: customization/templates/registered/operationmanagement.html:8
-#: stock/templates/registered/operationmanagement.html:8
-msgid "Fleet Operation Management"
-msgstr "Flotten Operations Management"
+#: corputils/templates/corputils/search.html:18
+#: stock/templates/registered/fleetupcharacters.html:47
+#: stock/templates/registered/hrapplicationmanagement.html:27
+#: stock/templates/registered/hrapplicationmanagement.html:82
+#: stock/templates/registered/hrapplicationmanagement.html:126
+#: stock/templates/registered/hrapplicationsearchview.html:28
+msgid "Corporation"
+msgstr "Corporation"
-#: customization/templates/registered/operationmanagement.html:13
-#: stock/templates/registered/operationmanagement.html:13
-msgid "Fleet Operation Timers"
-msgstr "Flotten Operations Zeiten"
+#: corputils/templates/corputils/search.html:19
+msgid "API"
+msgstr "API"
-#: customization/templates/registered/operationmanagement.html:17
-#: stock/templates/registered/addoperation.html:9
-#: stock/templates/registered/operationmanagement.html:17
-msgid "Create Operation"
-msgstr "Operation erstellen"
+#: corputils/views.py:54
+msgid ""
+"Unrecognized corporation. Please ensure it is a member of the alliance or a "
+"blue."
+msgstr ""
+"Unbekannte Corporation. Bitte stelle sicher sie ist ein Mitglied der Allianz oder "
+"blau."
-#: customization/templates/registered/operationmanagement.html:24
-#: stock/templates/registered/fleetup.html:116
-#: stock/templates/registered/operationmanagement.html:24
-#: stock/templates/registered/timermanagement.html:24
-msgid "Current Eve Time:"
-msgstr "Momentane Eve Zeit"
+#: corputils/views.py:56
+msgid "Selected corp already has a statistics module."
+msgstr "Ausgewählte Corp hat bereits ein statistik modul."
-#: customization/templates/registered/operationmanagement.html:30
-#: optimer/form.py:14 stock/templates/registered/operationmanagement.html:30
-msgid "Operation Name"
-msgstr "Operationsname"
+#: corputils/views.py:58
+msgid "Failed to gather corporation statistics with selected token."
+msgstr "Fehler beim Sammeln von Corpstatistiken mit ausgewählten Token."
-#: customization/templates/registered/operationmanagement.html:31
-#: optimer/form.py:9 stock/templates/registered/fleetup.html:73
-#: stock/templates/registered/fleetupdoctrinesview.html:50
-#: stock/templates/registered/operationmanagement.html:31
-msgid "Doctrine"
-msgstr "Doktrin"
+#: eveonline/views.py:53
+msgid "Added API key %(apiid)s to your account."
+msgstr "API key %(apiid)s zum Account hinzugefügt."
-#: customization/templates/registered/operationmanagement.html:32
-#: stock/templates/registered/operationmanagement.html:32
-msgid "Form Up System"
-msgstr "Form Up System"
+#: eveonline/views.py:77
+msgid "API %(apiid)s already claimed by user %(user)s"
+msgstr "API %(apiid)s wird bereits von %(user)s genutzt"
-#: customization/templates/registered/operationmanagement.html:33
-#: stock/templates/registered/operationmanagement.html:33
-msgid "Form Up Location"
-msgstr "Form Up Location"
+#: eveonline/views.py:81
+msgid "API %(apiid)s has already been verified"
+msgstr "API %(apiid)s wurde bereits verifiziert"
-#: customization/templates/registered/operationmanagement.html:34
-#: optimer/form.py:12 stock/templates/registered/operationmanagement.html:34
-msgid "Start Time"
-msgstr "Startzeit"
+#: eveonline/views.py:90
+msgid "Confirmed ownership of API %(apiid)s"
+msgstr "Besitz von API %(apiid)s bestätigt"
-#: customization/templates/registered/operationmanagement.html:35
-#: stock/templates/registered/operationmanagement.html:35
-#: stock/templates/registered/timermanagement.html:35
-#: stock/templates/registered/timermanagement.html:137
-#: stock/templates/registered/timermanagement.html:239
-msgid "Local Time"
-msgstr "Ortszeit"
+#: eveonline/views.py:96
+msgid ""
+"%(character)s not found on API %(apiid)s. Please SSO as a character on the API."
+msgstr ""
+"%(character)s wurde nicht in API %(apiid)s gefunden. Bitte SSO als ein Charakter des API Keys."
-#: customization/templates/registered/operationmanagement.html:36
-#: optimer/form.py:13
-#: stock/templates/registered/fatlinkpersonalmonthlystatisticsview.html:44
-#: stock/templates/registered/fatlinkview.html:73
-#: stock/templates/registered/operationmanagement.html:36
-msgid "Duration"
-msgstr "Dauer"
+#: eveonline/views.py:131
+msgid "Deleted API key %(apiid)s"
+msgstr "API Key %(apiid)s wurde entfernt"
-#: customization/templates/registered/operationmanagement.html:37
-#: stock/templates/registered/operationmanagement.html:37
-msgid "FC"
-msgstr "FC"
+#: eveonline/views.py:154
+msgid "Changed main character ID to %(charid)s"
+msgstr "Hauptcharakter ID zu %(charid)s geändert"
-#: customization/templates/registered/operationmanagement.html:38
-#: stock/templates/registered/operationmanagement.html:38
-#: stock/templates/registered/timermanagement.html:30
-#: stock/templates/registered/timermanagement.html:132
-#: stock/templates/registered/timermanagement.html:234 timerboard/form.py:12
-msgid "Details"
-msgstr "Details"
+#: eveonline/views.py:157
+msgid ""
+"Failed to change main character - selected character is not owned by your "
+"account."
+msgstr ""
+"Hauptcharakter änderung fehlgeschlagen - ausgewählter Charakter gehört "
+"nicht zu deinem Account."
-#: customization/templates/registered/operationmanagement.html:39
-#: stock/templates/registered/operationmanagement.html:39
-#: stock/templates/registered/signaturemanagement.html:31
-#: stock/templates/registered/srpfleetdata.html:45
-msgid "Post Time"
-msgstr "Veröffentlichungs Zeit"
+#: eveonline/views.py:168
+msgid "Refreshed API key %(apiid)s"
+msgstr "API key %(apiid)s erneuert"
-#: customization/templates/registered/operationmanagement.html:41
-#: stock/templates/registered/fatlinkpersonalmonthlystatisticsview.html:41
-#: stock/templates/registered/fatlinkview.html:70
-#: stock/templates/registered/operationmanagement.html:41
-#: stock/templates/registered/signaturemanagement.html:33
-#: stock/templates/registered/timermanagement.html:36
-#: stock/templates/registered/timermanagement.html:138
-#: stock/templates/registered/timermanagement.html:240
-msgid "Creator"
-msgstr "Ersteller"
+#: eveonline/views.py:171
+msgid "You are not authorized to refresh that API key."
+msgstr "Es ist dir nicht erlaubt den API key zu erneuern."
-#: customization/templates/registered/operationmanagement.html:42
-#: customization/templates/registered/services.html:20
-#: customization/templates/registered/services.html:304
-#: customization/templates/registered/services.html:345
-#: customization/templates/registered/services.html:627
-#: stock/templates/registered/apikeymanagment.html:29
-#: stock/templates/registered/groupmanagement.html:20
-#: stock/templates/registered/groupmanagement.html:50
-#: stock/templates/registered/groups.html:19
-#: stock/templates/registered/operationmanagement.html:42
-#: stock/templates/registered/services.html:28
-#: stock/templates/registered/services.html:341
-#: stock/templates/registered/services.html:382
-#: stock/templates/registered/services.html:693
-#: stock/templates/registered/signaturemanagement.html:34
-#: stock/templates/registered/timermanagement.html:38
-#: stock/templates/registered/timermanagement.html:140
-#: stock/templates/registered/timermanagement.html:242
-msgid "Action"
-msgstr "Aktion"
+#: eveonline/views.py:174
+msgid "Unable to locate API key %(apiid)s"
+msgstr "API key %(apiid)s ist nicht auffindbar"
-#: customization/templates/registered/services.html:7
-#: stock/templates/registered/services.html:7
-msgid "Services Management"
-msgstr "Dienst Verwaltung"
-
-#: customization/templates/registered/services.html:12
-#: stock/templates/registered/services.html:12
-msgid "Available Services"
-msgstr "Verfügbare Dienste"
-
-#: customization/templates/registered/services.html:16
-#: customization/templates/registered/services.html:300
-#: customization/templates/registered/services.html:341
-#: customization/templates/registered/services.html:623
-#: stock/templates/registered/services.html:24
-#: stock/templates/registered/services.html:337
-#: stock/templates/registered/services.html:378
-#: stock/templates/registered/services.html:689
-msgid "Service"
-msgstr "Dienst"
-
-#: customization/templates/registered/services.html:19
-#: customization/templates/registered/services.html:344
-#: stock/templates/registered/services.html:27
-#: stock/templates/registered/services.html:381
-msgid "Domain"
-msgstr "Domain"
-
-#: customization/templates/registered/services.html:301
-#: customization/templates/registered/services.html:624
-#: stock/templates/registered/services.html:338
-#: stock/templates/registered/services.html:690
-msgid "Unique ID"
-msgstr "Einzigartige ID"
-
-#: customization/templates/registered/services.html:303
-#: customization/templates/registered/services.html:626
-#: stock/templates/registered/services.html:340
-#: stock/templates/registered/services.html:692
-msgid "Quick Link"
-msgstr "Schnell Link"
-
-#: customization/templates/registered/services.html:663
-#: stock/templates/registered/groups.html:57
-#: stock/templates/registered/services.html:729
-msgid "You are not in the corporation."
-msgstr "Du bist nicht in dieser Corporation."
-
-#: customization/templates/registered/services.html:665
-#: stock/templates/registered/groups.html:59
-#: stock/templates/registered/services.html:731
-msgid "You are not in the alliance."
-msgstr "Du bist kein Mitglied der Allianz."
-
-#: customization/templates/registered/teamspeakjoin.html:8
-#: stock/templates/registered/teamspeakjoin.html:8
-msgid "Verify Teamspeak"
-msgstr "Teamspeak bestätigen"
-
-#: customization/templates/registered/teamspeakjoin.html:13
-#: stock/templates/registered/teamspeakjoin.html:13
-msgid "Verify Teamspeak Identity"
-msgstr "Teamspeak-Identität bestätigen"
-
-#: customization/templates/registered/teamspeakjoin.html:16
-#: stock/templates/registered/teamspeakjoin.html:16
-msgid "Join Server"
-msgstr "Server beitreten"
-
-#: customization/templates/registered/teamspeakjoin.html:22
-#: stock/templates/registered/teamspeakjoin.html:22
-msgid "Continue"
-msgstr "Fortsetzen"
-
-#: fleetactivitytracking/forms.py:15
+#: fleetactivitytracking/forms.py:17
msgid "Name of fat-link"
msgstr "Name des fat-links:"
-#: fleetactivitytracking/forms.py:16
+#: fleetactivitytracking/forms.py:18
msgid "Duration of fat-link"
msgstr "Dauer des fat-link"
-#: fleetactivitytracking/forms.py:17
-#: stock/templates/registered/fatlinkpersonalmonthlystatisticsview.html:42
-#: stock/templates/registered/fatlinkview.html:71
+#: fleetactivitytracking/forms.py:20
+#: fleetactivitytracking/templates/fleetactivitytracking/fatlinkpersonalmonthlystatisticsview.html:39
+#: fleetactivitytracking/templates/fleetactivitytracking/fatlinkview.html:76
msgid "Fleet"
msgstr "Flotte"
-#: groupmanagement/views.py:163 groupmanagement/views.py:183
-#: stock/templates/registered/hrapplicationmanagement.html:36
-#: stock/templates/registered/hrapplicationmanagement.html:70
-#: stock/templates/registered/hrapplicationmanagement.html:96
-#: stock/templates/registered/hrapplicationmanagement.html:137
-#: stock/templates/registered/hrapplicationsearchview.html:40
-#: stock/templates/registered/hrapplicationview.html:21
-#: stock/templates/registered/srpfleetdata.html:78
-#: stock/templates/registered/srpmanagement.html:83
-msgid "Pending"
-msgstr "Ausstehend"
+#: fleetactivitytracking/templates/fleetactivitytracking/characternotexisting.html:4
+msgid "Fleet Participation"
+msgstr "Flotten Teilnahme"
-#: hrapplications/forms.py:5
-#: stock/templates/registered/hrapplicationview.html:92
-msgid "Comment"
-msgstr "Kommentar"
+#: fleetactivitytracking/templates/fleetactivitytracking/characternotexisting.html:6
+msgid "Character not found!"
+msgstr "Charakter nicht gefunden!"
-#: hrapplications/forms.py:8
-msgid "Search String"
-msgstr "Suchbegriff"
+#: fleetactivitytracking/templates/fleetactivitytracking/characternotexisting.html:17
+msgid "Character not registered!"
+msgstr "Charakter nicht registriert!"
-#: optimer/form.py:10 sigtracker/form.py:12
-#: stock/templates/registered/fatlinkmodify.html:25
-#: stock/templates/registered/fatlinkview.html:29
-#: stock/templates/registered/signaturemanagement.html:24
-#: stock/templates/registered/timermanagement.html:32
-#: stock/templates/registered/timermanagement.html:134
-#: stock/templates/registered/timermanagement.html:236 timerboard/form.py:13
+#: fleetactivitytracking/templates/fleetactivitytracking/characternotexisting.html:18
+msgid "This character is not part of any registered API-key. You must go to"
+msgstr "Dieser Charakter ist nicht Teil eines registrierten API-Keys. Gehe zur"
+
+#: fleetactivitytracking/templates/fleetactivitytracking/characternotexisting.html:18
+msgid ""
+"API key management and add an API with the character on before being "
+"able to click fleet attendance links."
+msgstr "API key verwaltung und füge eine API für diesen Charakter hinzu bevor du fat links klickst."
+
+#: fleetactivitytracking/templates/fleetactivitytracking/fatlinkformatter.html:8
+msgid "Create Fatlink"
+msgstr "Erstelle Fatlink"
+
+#: fleetactivitytracking/templates/fleetactivitytracking/fatlinkformatter.html:14
+#: stock/templates/registered/addoperation.html:15
+#: stock/templates/registered/addoperation.html:24
+msgid "Create Fleet Operation"
+msgstr "Flotten-Operation erstellen"
+
+#: fleetactivitytracking/templates/fleetactivitytracking/fatlinkformatter.html:18
+msgid "Bad request!"
+msgstr "Fehlerhafte Anfrage!"
+
+#: fleetactivitytracking/templates/fleetactivitytracking/fatlinkformatter.html:29
+#: fleetactivitytracking/templates/fleetactivitytracking/fatlinkview.html:66
+msgid "Create fatlink"
+msgstr "Erstelle fatlink"
+
+#: fleetactivitytracking/templates/fleetactivitytracking/fatlinkmodify.html:7
+#: fleetactivitytracking/templates/fleetactivitytracking/fatlinkview.html:7
+msgid "Fatlink view"
+msgstr "Fatlink sehen"
+
+#: fleetactivitytracking/templates/fleetactivitytracking/fatlinkmodify.html:11
+msgid "Edit fatlink"
+msgstr "Editiere fatlink"
+
+#: fleetactivitytracking/templates/fleetactivitytracking/fatlinkmodify.html:15
+msgid "Delete fat"
+msgstr "Lösche fat"
+
+#: fleetactivitytracking/templates/fleetactivitytracking/fatlinkmodify.html:21
+msgid "Registered characters"
+msgstr "Registrierte Charaktere"
+
+#: fleetactivitytracking/templates/fleetactivitytracking/fatlinkmodify.html:28
+#: stock/templates/registered/groupmembers.html:18
+#: stock/templates/registered/hrapplicationview.html:33
+msgid "User"
+msgstr "Benutzername"
+
+#: fleetactivitytracking/templates/fleetactivitytracking/fatlinkmodify.html:30
+#: fleetactivitytracking/templates/fleetactivitytracking/fatlinkview.html:30
+#: optimer/form.py:8 stock/templates/registered/timermanagement.html:31
+#: stock/templates/registered/timermanagement.html:163
+#: stock/templates/registered/timermanagement.html:295 timerboard/form.py:18
msgid "System"
msgstr "System"
-#: optimer/form.py:11 stock/templates/registered/fleetup.html:72
+#: fleetactivitytracking/templates/fleetactivitytracking/fatlinkmodify.html:31
+#: fleetactivitytracking/templates/fleetactivitytracking/fatlinkpersonalmonthlystatisticsview.html:22
+#: fleetactivitytracking/templates/fleetactivitytracking/fatlinkview.html:31
+msgid "Ship"
+msgstr "Schiff"
+
+#: fleetactivitytracking/templates/fleetactivitytracking/fatlinkmodify.html:32
+#: fleetactivitytracking/templates/fleetactivitytracking/fatlinkpersonalmonthlystatisticsview.html:40
+#: fleetactivitytracking/templates/fleetactivitytracking/fatlinkview.html:32
+#: fleetactivitytracking/templates/fleetactivitytracking/fatlinkview.html:77
+#: stock/templates/registered/fleetup.html:57
+#: stock/templates/registered/fleetup.html:59
+#: stock/templates/registered/timermanagement.html:33
+#: stock/templates/registered/timermanagement.html:165
+#: stock/templates/registered/timermanagement.html:297
+msgid "Eve Time"
+msgstr "Eve Zeit"
+
+#: fleetactivitytracking/templates/fleetactivitytracking/fatlinkmodify.html:40
+#: fleetactivitytracking/templates/fleetactivitytracking/fatlinkview.html:39
+#, python-format
+msgid "Docked in %(fat.system)s"
+msgstr "Docked in %(fat.system)s"
+
+#: fleetactivitytracking/templates/fleetactivitytracking/fatlinkpersonalmonthlystatisticsview.html:7
+#: fleetactivitytracking/templates/fleetactivitytracking/fatlinkpersonalstatisticsview.html:7
+msgid "Personal fatlink statistics"
+msgstr "Persönliche fatlink Statistic"
+
+#: fleetactivitytracking/templates/fleetactivitytracking/fatlinkpersonalmonthlystatisticsview.html:11
+#: fleetactivitytracking/templates/fleetactivitytracking/fatlinkstatisticsview.html:11
+#, python-format
+msgid "Participation data statistics for %(month)s, %(year)s"
+msgstr "Teilnahme Statistic für %(month)s, %(year)s"
+
+#: fleetactivitytracking/templates/fleetactivitytracking/fatlinkpersonalmonthlystatisticsview.html:14
+#: fleetactivitytracking/templates/fleetactivitytracking/fatlinkstatisticsview.html:13
+msgid "Previous month"
+msgstr "Vorheriger Monat"
+
+#: fleetactivitytracking/templates/fleetactivitytracking/fatlinkpersonalmonthlystatisticsview.html:15
+#: fleetactivitytracking/templates/fleetactivitytracking/fatlinkstatisticsview.html:15
+msgid "Next month"
+msgstr "Nächster Monat"
+
+#: fleetactivitytracking/templates/fleetactivitytracking/fatlinkpersonalmonthlystatisticsview.html:19
+#, python-format
+msgid "%(user)s has collected %(n_fats)s links this month."
+msgstr "%(user)s hat diesen Monat %(n_fats)s gesammelt."
+
+#: fleetactivitytracking/templates/fleetactivitytracking/fatlinkpersonalmonthlystatisticsview.html:23
+msgid "Times used"
+msgstr "male genutzt"
+
+#: fleetactivitytracking/templates/fleetactivitytracking/fatlinkpersonalmonthlystatisticsview.html:33
+#, python-format
+msgid "%(user)s has created %(n_created_fats)s links this month."
+msgstr "%(user)s hat diesen Monat %(n_created_fats)s links erstellt."
+
+#: fleetactivitytracking/templates/fleetactivitytracking/fatlinkpersonalmonthlystatisticsview.html:37
+#: fleetactivitytracking/templates/fleetactivitytracking/fatlinkview.html:74
+#: stock/templates/registered/dashboard.html:88
+#: stock/templates/registered/fleetupdoctrine.html:49
+#: stock/templates/registered/fleetupdoctrinesview.html:49
+#: stock/templates/registered/fleetupfittingsview.html:40
+#: stock/templates/registered/groupmembership.html:18
+#: stock/templates/registered/groups.html:17
+#: stock/templates/registered/hrapplicationview.html:47
+msgid "Name"
+msgstr "Name"
+
+#: fleetactivitytracking/templates/fleetactivitytracking/fatlinkpersonalmonthlystatisticsview.html:38
+#: fleetactivitytracking/templates/fleetactivitytracking/fatlinkview.html:75
+#: stock/templates/registered/operationmanagement.html:40
+#: stock/templates/registered/timermanagement.html:35
+#: stock/templates/registered/timermanagement.html:167
+#: stock/templates/registered/timermanagement.html:299
+msgid "Creator"
+msgstr "Ersteller"
+
+#: fleetactivitytracking/templates/fleetactivitytracking/fatlinkpersonalmonthlystatisticsview.html:41
+#: fleetactivitytracking/templates/fleetactivitytracking/fatlinkview.html:78
+#: optimer/form.py:11 stock/templates/registered/operationmanagement.html:35
+msgid "Duration"
+msgstr "Dauer"
+
+#: fleetactivitytracking/templates/fleetactivitytracking/fatlinkpersonalmonthlystatisticsview.html:42
+#: fleetactivitytracking/templates/fleetactivitytracking/fatlinkview.html:79
+msgid "Edit"
+msgstr "Editieren"
+
+#: fleetactivitytracking/templates/fleetactivitytracking/fatlinkpersonalstatisticsview.html:11
+msgid "Participation data statistics for %(year)s"
+msgstr "Teilnahme Statistic für %(year)s"
+
+#: fleetactivitytracking/templates/fleetactivitytracking/fatlinkpersonalstatisticsview.html:13
+msgid "Previous year"
+msgstr "Vorheriges Jahr"
+
+#: fleetactivitytracking/templates/fleetactivitytracking/fatlinkpersonalstatisticsview.html:15
+msgid "Next year"
+msgstr "Nächstes Jahr"
+
+#: fleetactivitytracking/templates/fleetactivitytracking/fatlinkpersonalstatisticsview.html:22
+msgid "Month"
+msgstr "Monat"
+
+#: fleetactivitytracking/templates/fleetactivitytracking/fatlinkpersonalstatisticsview.html:23
+#: fleetactivitytracking/templates/fleetactivitytracking/fatlinkstatisticsview.html:26
+msgid "Fats"
+msgstr "Fats"
+
+#: fleetactivitytracking/templates/fleetactivitytracking/fatlinkstatisticsview.html:7
+msgid "Fatlink statistics"
+msgstr "Fatlink Statistik"
+
+#: fleetactivitytracking/templates/fleetactivitytracking/fatlinkstatisticsview.html:23
+msgid "Ticker"
+msgstr "Ticker: "
+
+#: fleetactivitytracking/templates/fleetactivitytracking/fatlinkstatisticsview.html:24
+#: stock/templates/registered/dashboard.html:89
+#: stock/templates/registered/groupmembers.html:20
+#: stock/templates/registered/hrapplicationview.html:48
+msgid "Corp"
+msgstr "Corp"
+
+#: fleetactivitytracking/templates/fleetactivitytracking/fatlinkstatisticsview.html:27
+msgid "Average fats"
+msgstr "Durchschnittliche fats"
+
+#: fleetactivitytracking/templates/fleetactivitytracking/fatlinkview.html:11
+msgid "Participation data"
+msgstr "Teilnahme Daten"
+
+#: fleetactivitytracking/templates/fleetactivitytracking/fatlinkview.html:15
+msgid "Most recent clicked fatlinks"
+msgstr "Letzter geklickter fatlink"
+
+#: fleetactivitytracking/templates/fleetactivitytracking/fatlinkview.html:20
+msgid "Personal statistics"
+msgstr "Persönliche Statistik"
+
+#: fleetactivitytracking/templates/fleetactivitytracking/fatlinkview.html:28
+msgid "fatname"
+msgstr "fatname"
+
+#: fleetactivitytracking/templates/fleetactivitytracking/fatlinkview.html:49
+msgid "No fleet activity on record."
+msgstr "Keine Flotten aktivität bekannt."
+
+#: fleetactivitytracking/templates/fleetactivitytracking/fatlinkview.html:56
+msgid "Most recent fatlinks"
+msgstr "Letzter fatlink"
+
+#: fleetactivitytracking/templates/fleetactivitytracking/fatlinkview.html:61
+msgid "View statistics"
+msgstr "Statistik"
+
+#: fleetactivitytracking/templates/fleetactivitytracking/fatlinkview.html:98
+msgid "No created fatlinks on record."
+msgstr "Keine erstellten fatlinks bekannt."
+
+#: fleetactivitytracking/views.py:237
+msgid "Fleet participation registered."
+msgstr "Flotten Teilnahme registriert."
+
+#: fleetactivitytracking/views.py:248
+msgid "FAT link has expired."
+msgstr "FAT link ist abgelaufen."
+
+#: fleetactivitytracking/views.py:250
+msgid "Invalid FAT link."
+msgstr "Ungültiger FAT link."
+
+#: groupmanagement/views.py:122
+msgid "Removed user %(user)s from group %(group)s."
+msgstr "Benutzer %(user)s von Gruppe %(group)s entfernt."
+
+#: groupmanagement/views.py:124
+msgid "User does not exist in that group"
+msgstr "Benutzer existiert nicht in dieser Gruppe"
+
+#: groupmanagement/views.py:127
+msgid "Group does not exist"
+msgstr "Gruppe existiert nicht"
+
+#: groupmanagement/views.py:152
+msgid "Accepted application from %(mainchar)s to %(group)s."
+msgstr "Anfrage von %(mainchar)s zur Gruppe %(group)s beizutreten Akzeptiert."
+
+#: groupmanagement/views.py:159 groupmanagement/views.py:191
+msgid ""
+"An unhandled error occurred while processing the application from "
+"%(mainchar)s to %(group)s."
+msgstr ""
+"Bei der bearbeitung der Anfrage von %(mainchar)s zur Gruppe %(group)s "
+"beizutreten ist ein unbehandelter Fehler aufgetreten."
+
+#: groupmanagement/views.py:184
+msgid "Rejected application from %(mainchar)s to %(group)s."
+msgstr "Anfrage von %(mainchar)s zur Gruppe %(group)s beizutreten Abgelehnt."
+
+#: groupmanagement/views.py:219
+msgid "Accepted application from %(mainchar)s to leave %(group)s."
+msgstr "Anfrage von %(mainchar)s die Gruppe %(group)s zu verlassen Akzeptiert."
+
+#: groupmanagement/views.py:225 groupmanagement/views.py:258
+msgid ""
+"An unhandled error occured while processing the application from %(mainchar)s "
+"to leave %(group)s."
+msgstr ""
+"Bei der bearbeitung der Anfrage von %(mainchar)s die Gruppe %(group)s "
+"zu verlassen ist ein unbehandelter Fehler aufgetreten."
+
+#: groupmanagement/views.py:251
+msgid "Rejected application from %(mainchar)s to leave %(group)s."
+msgstr "Anfrage von %(mainchar)s die Gruppe %(group)s zu verlassen Abgelehnt."
+
+#: groupmanagement/views.py:290
+msgid "You cannot join that group"
+msgstr "Du kannst dieser Gruppe nicht beitreten"
+
+#: groupmanagement/views.py:298 groupmanagement/views.py:329
+#: stock/templates/registered/hrapplicationmanagement.html:37
+#: stock/templates/registered/hrapplicationmanagement.html:70
+#: stock/templates/registered/hrapplicationmanagement.html:97
+#: stock/templates/registered/hrapplicationmanagement.html:141
+#: stock/templates/registered/hrapplicationsearchview.html:40
+#: stock/templates/registered/hrapplicationview.html:22
+#: stock/templates/registered/srpfleetdata.html:75
+#: stock/templates/registered/srpmanagement.html:79
+msgid "Pending"
+msgstr "Ausstehend"
+
+#: groupmanagement/views.py:305
+msgid "Applied to group %(group)s."
+msgstr "Für die Gruppe %(group)s beworben."
+
+#: groupmanagement/views.py:316
+msgid "You cannot leave that group"
+msgstr "Du kannst diese Gruppe nicht verlassen"
+
+#: groupmanagement/views.py:321
+msgid "You are not a member of that group"
+msgstr "Du bist kein Mitglied dieser Gruppe"
+
+#: groupmanagement/views.py:336
+msgid "Applied to leave group %(group)s."
+msgstr "Anfrage die Gruppe %(group)s zu verlassen gesendet."
+
+#: hrapplications/forms.py:7
+#: stock/templates/registered/hrapplicationview.html:111
+msgid "Comment"
+msgstr "Kommentar"
+
+#: hrapplications/forms.py:11
+msgid "Search String"
+msgstr "Suchbegriff"
+
+#: notifications/views.py:37
+msgid "You are not authorized to view that notification."
+msgstr "Du bist nicht autorisiert diese Mitteilung zu sehen."
+
+#: notifications/views.py:49
+msgid "Deleted notification."
+msgstr "Mitteilung gelöscht."
+
+#: notifications/views.py:53
+msgid "Failed to locate notification."
+msgstr "Mitteilung konnte nicht gefunden werden."
+
+#: notifications/views.py:61
+msgid "Marked all notifications as read."
+msgstr "Alle Mitteilungen als gelesen Markieren."
+
+#: notifications/views.py:69
+msgid "Deleted all read notifications."
+msgstr "Alle gelesenen Mitteilungen gelöscht."
+
+#: optimer/form.py:7 stock/templates/registered/fleetup.html:73
+#: stock/templates/registered/fleetupdoctrinesview.html:50
+#: stock/templates/registered/operationmanagement.html:30
+msgid "Doctrine"
+msgstr "Doktrin"
+
+#: optimer/form.py:9 stock/templates/registered/fleetup.html:72
#: stock/templates/registered/fleetup.html:158
msgid "Location"
msgstr "Ort"
-#: optimer/form.py:15 stock/templates/registered/srpmanagement.html:37
+#: optimer/form.py:10 stock/templates/registered/operationmanagement.html:33
+msgid "Start Time"
+msgstr "Startzeit"
+
+#: optimer/form.py:12 stock/templates/registered/operationmanagement.html:29
+msgid "Operation Name"
+msgstr "Operationsname"
+
+#: optimer/form.py:13 stock/templates/registered/srpmanagement.html:38
msgid "Fleet Commander"
msgstr "Flottenkommandeur"
-#: optimer/form.py:16
+#: optimer/form.py:14
msgid "Extra Details"
msgstr "Zusätzliche Details"
-#: registration/forms.py:13
-msgid "Password Again"
-msgstr "Passwort wdh."
+#: optimer/views.py:57
+msgid "Created operation timer for %(opname)s."
+msgstr "Operation timer für %(opname)s erstellt."
-#: registration/forms.py:14
-msgid "Email"
-msgstr "E-Mail"
+#: optimer/views.py:76
+msgid "Removed operation timer for %(opname)s."
+msgstr "Operation timer für %(opname)s entfernt."
-#: registration/forms.py:15
-msgid "Email Again"
-msgstr "E-Mail wdh."
+#: optimer/views.py:105
+msgid "Saved changes to operation timer for %(opname)s."
+msgstr "Änderungen for operation timer %(opname)s gespeichert."
-#: services/forms.py:6
-msgid "Group"
-msgstr "Gruppen"
-
-#: services/forms.py:7
-msgid "Message"
-msgstr "Nachricht"
-
-#: services/forms.py:11
+#: services/forms.py:8
msgid "Name of Fleet:"
msgstr "SRP Flotte erstellen:"
-#: services/forms.py:12
+#: services/forms.py:9
msgid "Fleet Commander:"
msgstr "Flottenkommandeur:"
-#: services/forms.py:13
+#: services/forms.py:10
msgid "Fleet Comms:"
msgstr "Flotten Comms:"
-#: services/forms.py:14
+#: services/forms.py:11
msgid "Fleet Type:"
msgstr "Flottenzeit:"
-#: services/forms.py:15
+#: services/forms.py:12
msgid "Ship Priorities:"
msgstr "Schiffs priorität:"
-#: services/forms.py:16
+#: services/forms.py:13
msgid "Formup Location:"
msgstr "Formup Location:"
-#: services/forms.py:17
+#: services/forms.py:14
msgid "Formup Time:"
msgstr "Formup Zeit:"
-#: services/forms.py:18
+#: services/forms.py:15
msgid "Expected Duration:"
msgstr "Erwartete Dauer:"
-#: services/forms.py:19
+#: services/forms.py:16
msgid "Purpose:"
msgstr "Grund:"
-#: services/forms.py:20
+#: services/forms.py:17
msgid "Reimbursable?*"
msgstr "Erstattungsfähig?"
-#: services/forms.py:20 services/forms.py:21
+#: services/forms.py:17 services/forms.py:19
msgid "Yes"
msgstr "Ja"
-#: services/forms.py:20 services/forms.py:21
+#: services/forms.py:17 services/forms.py:19
msgid "No"
msgstr "Nein"
-#: services/forms.py:21
+#: services/forms.py:19
msgid "Important?*"
msgstr "Wichtig?"
-#: services/forms.py:22
+#: services/forms.py:21
msgid "Comments"
msgstr "Kommentar"
-#: services/forms.py:25
-msgid "Email Address"
-msgstr "Email Adresse"
-
-#: services/forms.py:27
-msgid "Update Avatar"
-msgstr "Signatur aktualisieren"
-
-#: services/forms.py:34
+#: services/forms.py:30
msgid "Password must be at least 8 characters long."
msgstr "Passwort muss mindestens 8 Zeichen lang sein"
-#: services/forms.py:43
+#: services/modules/discord/templates/registered/discord_service_ctrl.html:23
+msgid "Link Discord Server"
+msgstr "Verbinde zu Discord Server"
+
+#: services/modules/openfire/forms.py:8
+msgid "Group"
+msgstr "Gruppen"
+
+#: services/modules/openfire/forms.py:9
+msgid "Message"
+msgstr "Nachricht"
+
+#: services/modules/openfire/urls.py:16
+msgid "^set_password/$"
+msgstr ""
+
+#: services/modules/openfire/urls.py:25
+msgid "^services/jabber_broadcast/$"
+msgstr ""
+
+#: services/modules/teamspeak3/forms.py:15
#, python-format
msgid "Unable to locate user %s on server"
msgstr "Unfähig den Benutzer %s auf dem Server zu finden"
-#: sigtracker/form.py:7
-msgid "More Than 50%"
-msgstr "Mehr als 50%"
+#: services/modules/teamspeak3/templates/registered/teamspeak3_service_ctrl.html:4
+#: stock/templates/registered/services.html:15
+msgid "Service"
+msgstr "Dienst"
-#: sigtracker/form.py:7
-msgid "Less Than 50%"
-msgstr "Weniger als 50%"
+#: services/modules/teamspeak3/templates/registered/teamspeak3_service_ctrl.html:5
+msgid "Unique ID"
+msgstr "Einzigartige ID"
-#: sigtracker/form.py:7
-msgid "Less Than 10%"
-msgstr "Weniger als 10%"
+#: services/modules/teamspeak3/templates/registered/teamspeak3_service_ctrl.html:7
+#: stock/templates/registered/groupmanagement.html:26
+#: stock/templates/registered/groupmanagement.html:57
+#: stock/templates/registered/groupmembers.html:22
+#: stock/templates/registered/groupmembership.html:22
+#: stock/templates/registered/groups.html:19
+#: stock/templates/registered/notification_list.html:30
+#: stock/templates/registered/notification_list.html:61
+#: stock/templates/registered/operationmanagement.html:41
+#: stock/templates/registered/services.html:18
+#: stock/templates/registered/timermanagement.html:37
+#: stock/templates/registered/timermanagement.html:169
+#: stock/templates/registered/timermanagement.html:301
+msgid "Action"
+msgstr "Aktion"
-#: sigtracker/form.py:8
-msgid "More Than 24 Hours"
-msgstr "Mehr als 24 Stunden"
+#: services/modules/teamspeak3/templates/registered/teamspeak3_service_ctrl.html:20
+msgid "Quick Link"
+msgstr "Schnell Link"
-#: sigtracker/form.py:8
-msgid "Less Than 24 Hours"
-msgstr "Weniger als 24 Stunden"
+#: services/views.py:59
+msgid "There's a problem with your main character. Please select a new one."
+msgstr "Es gibt ein Problem mit deinem Hauptcharakter. Bitte wähle einen neuen aus"
-#: sigtracker/form.py:8
-msgid "Less Than 4 Hours"
-msgstr "Weniger als 4 Stunden"
-
-#: sigtracker/form.py:9
-msgid "Only Smallest"
-msgstr "Nur kleinste"
-
-#: sigtracker/form.py:9
-msgid "Up to Medium"
-msgstr "bis mittel"
-
-#: sigtracker/form.py:9
-msgid "Larger"
-msgstr "Größere"
-
-#: sigtracker/form.py:9
-msgid "Very Large"
-msgstr "Sehr Große"
-
-#: sigtracker/form.py:13
-#: stock/templates/registered/signaturemanagement.html:23
-msgid "ID"
-msgstr "ID"
-
-#: sigtracker/form.py:14
-#: stock/templates/registered/signaturemanagement.html:27
-msgid "Lifetime Status"
-msgstr "Lebenszeit Status"
-
-#: sigtracker/form.py:15
-#: stock/templates/registered/signaturemanagement.html:28
-msgid "Mass Status"
-msgstr "Masse Status"
-
-#: sigtracker/form.py:16
-#: stock/templates/registered/signaturemanagement.html:29
-msgid "Ship Size"
-msgstr "Schiffsgröße"
-
-#: sigtracker/form.py:17
-msgid "End Destination"
-msgstr "Ziel"
-
-#: sigtracker/form.py:18
-#: stock/templates/registered/signaturemanagement.html:26
-msgid "Goes Through"
-msgstr "Geht durch"
-
-#: sigtracker/form.py:19
-#: stock/templates/registered/signaturemanagement.html:30
-msgid "Notes"
-msgstr "Notizen"
-
-#: srp/form.py:6 stock/templates/registered/srpmanagement.html:34
+#: srp/form.py:7 stock/templates/registered/srpmanagement.html:35
msgid "Fleet Name"
msgstr "Flottenname"
-#: srp/form.py:7 stock/templates/registered/srpmanagement.html:35
+#: srp/form.py:8 stock/templates/registered/srpmanagement.html:36
msgid "Fleet Time"
msgstr "Flottenzeit"
-#: srp/form.py:8 stock/templates/registered/srpmanagement.html:36
+#: srp/form.py:9 stock/templates/registered/srpmanagement.html:37
msgid "Fleet Doctrine"
msgstr "Flottendoktrin"
-#: srp/form.py:12 stock/templates/registered/srpfleetdata.html:41
+#: srp/form.py:13 stock/templates/registered/srpfleetdata.html:42
msgid "Additional Info"
msgstr "Zusätzliche Info"
-#: srp/form.py:14
+#: srp/form.py:15
msgid "zKillboard Link"
msgstr "zKillboard Link"
-#: srp/form.py:28
+#: srp/form.py:24
+msgid "Invalid Link. Please use zKillboard.com"
+msgstr "Ungültiger Link. Bitte benutze zKillboard.com"
+
+#: srp/form.py:29
msgid "Total SRP Amount"
msgstr "Aktualisiere SRP Menge"
-#: srp/form.py:32
+#: srp/form.py:33
msgid "After Action Report Link"
msgstr "Abschlussbericht Link"
-#: stock/templates/public/base.html:82
+#: srp/views.py:97
+msgid "Created SRP fleet %(fleetname)s."
+msgstr "SRP Flotte %(fleetname)s erstellt."
+
+#: srp/views.py:116
+msgid "Removed SRP fleet %(fleetname)s."
+msgstr "SRP Flotte %(fleetname)s entfernt."
+
+#: srp/views.py:120 srp/views.py:137 srp/views.py:154 srp/views.py:171
+#: srp/views.py:189 srp/views.py:393
+msgid "Unable to locate SRP fleet with ID %(fleetid)s"
+msgstr "Unfähig SRP Flotte mit der ID %(fleetid)s zu finden"
+
+#: srp/views.py:133
+msgid "Disabled SRP fleet %(fleetname)s."
+msgstr "SRP link für %(fleetname)s deaktiviert."
+
+#: srp/views.py:150
+msgid "Enabled SRP fleet %(fleetname)s."
+msgstr "SRP link für %(fleetname)s aktiviert."
+
+#: srp/views.py:167
+msgid "Marked SRP fleet %(fleetname)s as completed."
+msgstr "SRP Flotte %(fleetname)s als vollständig markiert."
+
+#: srp/views.py:184
+#, python-brace-format
+msgid "Marked SRP fleet %(fleetname)s as incomplete."
+msgstr "SRP Flotte %(fleetname)s als unvollständig markiert."
+
+#: srp/views.py:228
+msgid ""
+"Your SRP request Killmail link is invalid. Please make sure you are using "
+"zKillboard."
+msgstr ""
+"Der Killmail link deiner SRP anfrage ist ungültig. Bitte stelle sicher, "
+"dass du zKillboard benutzt."
+
+#: srp/views.py:239
+msgid "Submitted SRP request for your %(ship)s."
+msgstr "SRP anfrage für %(ship)s gesendet."
+
+#: srp/views.py:261
+msgid "Deleted SRP request from %(character)s for their %(ship)s."
+msgstr "SPR anfrage von %(character)s für %(ship)s entfernt."
+
+#: srp/views.py:266 srp/views.py:299 srp/views.py:331 srp/views.py:345
+msgid "Unable to locate SRP request with ID %(requestid)s"
+msgstr "Unfähig SRP anfrage mit der ID %(requestid)s zu finden."
+
+#: srp/views.py:287
+msgid "Approved SRP request from %(character)s for their %(ship)s."
+msgstr "SRP anfrage von %(character)s für %(ship)s genehmigt."
+
+#: srp/views.py:318
+msgid "Rejected SRP request from %(character)s for their %(ship)s."
+msgstr "SRP anfrage von %(character)s für %(ship)s abgelehnt."
+
+#: srp/views.py:357
+msgid "Updated SRP amount."
+msgstr "Aktualisiere SRP Menge"
+
+#: srp/views.py:382
+msgid "Saved changes to SRP fleet %(fleetname)s"
+msgstr "Änderungen der SRP flotte %(fleetname)s gespeichert"
+
+#: stock/templates/public/base.html:85
+msgid "Admin"
+msgstr "Admin"
+
+#: stock/templates/public/base.html:87
msgid "Logout"
msgstr "Ausloggen"
-#: stock/templates/public/base.html:84
-#: stock/templates/registration/password_reset_complete.html:54
+#: stock/templates/public/base.html:89 stock/templates/public/login.html:14
+#: stock/templates/registration/password_reset_complete.html:49
msgid "Login"
msgstr "Einloggen"
-#: stock/templates/public/base.html:95
+#: stock/templates/public/base.html:101
msgid "Main Navigation"
msgstr "Haupmenü"
-#: stock/templates/public/base.html:101
+#: stock/templates/public/base.html:106
msgid " Dashboard"
msgstr " Dashboard"
-#: stock/templates/public/base.html:107
-msgid " Api Keys"
-msgstr " API Keys"
-
#: stock/templates/public/base.html:113
-msgid " Characters"
-msgstr " Charaktere"
-
-#: stock/templates/public/base.html:120
msgid " Groups"
msgstr " Gruppen"
-#: stock/templates/public/base.html:127
+#: stock/templates/public/base.html:120
msgid " Help"
msgstr " Hilfe"
-#: stock/templates/public/base.html:132
+#: stock/templates/public/base.html:126
msgid "Aux Navigation"
msgstr "Zusatz Navigation"
-#: stock/templates/public/base.html:138
+#: stock/templates/public/base.html:131
msgid " Services"
msgstr " Dienste"
-#: stock/templates/public/base.html:147
+#: stock/templates/public/base.html:140
msgid " Applications"
msgstr " Bewerbungen"
-#: stock/templates/public/base.html:155
+#: stock/templates/public/base.html:148
msgid " Corporation Stats"
msgstr " Korporationsstatistiken"
-#: stock/templates/public/base.html:163
+#: stock/templates/public/base.html:156
msgid " Group Management"
msgstr " Gruppenverwaltung"
-#: stock/templates/public/base.html:171
-msgid " Fleet Doctrines"
-msgstr " Flottendoktrinen"
-
-#: stock/templates/public/base.html:186
-msgid " Wormhole Tracker"
-msgstr " Wurmloch Tracker"
-
-#: stock/templates/public/base.html:193
+#: stock/templates/public/base.html:174
msgid " Fleet Operations"
msgstr " Flottenoperationen"
-#: stock/templates/public/base.html:200
+#: stock/templates/public/base.html:181
msgid " Structure Timers"
msgstr " Strukturen Timer"
-#: stock/templates/public/base.html:213
+#: stock/templates/public/base.html:188
+msgid " Fleet Activity Tracking"
+msgstr " Flottenaktivitäts-Tracking"
+
+#: stock/templates/public/base.html:194
msgid " Ship Replacement"
msgstr " Schiff’s erstattung"
-#: stock/templates/public/base.html:220
+#: stock/templates/public/base.html:200
msgid "Util"
msgstr "Werkzeuge"
-#: stock/templates/public/base.html:225
+#: stock/templates/public/base.html:204
#: stock/templates/registration/password_change_done.html:10
#: stock/templates/registration/password_change_form.html:9
#: stock/templates/registration/password_change_form.html:18
-#: stock/templates/registration/password_reset_confirm.html:53
+#: stock/templates/registration/password_reset_confirm.html:49
msgid "Change Password"
msgstr "Passwort ändern"
-#: stock/templates/public/base.html:233
+#: stock/templates/public/base.html:211
msgid " Fleet Broadcast Formatter"
msgstr "Flottenübertragungen Formatierer "
-#: stock/templates/public/base.html:241
-msgid " Jabber Broadcast"
-msgstr " Jabberübertragungen"
-
-#: stock/templates/public/login.html:55
-msgid "Username/Password Invalid"
-msgstr "Benutzername/Passwort ungültig"
-
-#: stock/templates/public/login.html:58
-#: stock/templates/public/register.html:62
-msgid "Register"
-msgstr "Registrieren"
-
-#: stock/templates/public/login.html:63
+#: stock/templates/public/login.html:57
msgid "Please sign in"
msgstr "Bitte einloggen"
-#: stock/templates/public/login.html:66
+#: stock/templates/public/login.html:62
msgid "Sign in"
msgstr "Einloggen"
-#: stock/templates/public/login.html:71
+#: stock/templates/public/login.html:68
msgid "Reset"
msgstr "Zurücksetzen"
-#: stock/templates/public/register.html:56
+#: stock/templates/public/login.html:71
+#: stock/templates/public/register.html:57
+msgid "Register"
+msgstr "Registrieren"
+
+#: stock/templates/public/register.html:13
+msgid "Registration"
+msgstr "Registration"
+
+#: stock/templates/public/register.html:51
msgid "Username Already Registered"
msgstr "Name ist bereit in Benutzung"
-#: stock/templates/public/register.html:60
+#: stock/templates/public/register.html:55
msgid "Register Account"
msgstr "Registriere Account"
@@ -927,19 +1204,6 @@ msgstr ""
msgid "Member API keys need to be account-wide."
msgstr "Mitglieder API Key muss für den ganzen Account sein."
-#: stock/templates/registered/addapikey.html:27
-#, python-format
-msgid ""
-"Create\n"
-" a full API key "
-msgstr ""
-"Einen\n"
-" vollständigen API Key erstellen "
-
#: stock/templates/registered/addapikey.html:32
#, python-format
msgid ""
@@ -950,43 +1214,29 @@ msgstr "Blaue API Key erfordern Zugriffsmaske %(BLUE_API_MASK)s oder höher"
msgid "BLUE API keys need to be account-wide."
msgstr "BLAUE API Keys müssen Account-weit sein."
-#: stock/templates/registered/addapikey.html:40
-#, python-format
-msgid ""
-"Create\n"
-" a blue key "
-msgstr ""
-"Einen blauen Key "
-"erstellen "
-
#: stock/templates/registered/addapikey.html:49
-#: stock/templates/registered/apikeymanagment.html:21
msgid "Add Key"
msgstr "Key hinzufügen"
-#: stock/templates/registered/addoperation.html:15
-#: stock/templates/registered/addoperation.html:24
-#: stock/templates/registered/fatlinkformatter.html:13
-msgid "Create Fleet Operation"
-msgstr "Flotten-Operation erstellen"
+#: stock/templates/registered/addoperation.html:7
+msgid "Alliance Auth - Fleet Operation Create"
+msgstr "Allianz Auth - Flotten Operation Erstellen"
-#: stock/templates/registered/addsignature.html:8
-#: stock/templates/registered/addsignature.html:14
-#: stock/templates/registered/addsignature.html:23
-#: stock/templates/registered/signaturemanagement.html:16
-msgid "Create Signature"
-msgstr "Signatur erstellen"
+#: stock/templates/registered/addoperation.html:9
+#: stock/templates/registered/operationmanagement.html:16
+msgid "Create Operation"
+msgstr "Operation erstellen"
+
+#: stock/templates/registered/addtimer.html:7
+msgid "Alliance Auth - Structure Timer Create"
+msgstr "Allianz Auth - Struktur Timer Erstellen"
#: stock/templates/registered/addtimer.html:9
msgid "Timer Create"
msgstr "Timer erstellen"
#: stock/templates/registered/addtimer.html:15
-#: stock/templates/registered/timermanagement.html:17
+#: stock/templates/registered/timermanagement.html:16
msgid "Create Structure Timer"
msgstr "Struktur-Timer erstellen"
@@ -994,31 +1244,28 @@ msgstr "Struktur-Timer erstellen"
msgid "Create Timer"
msgstr "Timer erstellen"
-#: stock/templates/registered/apikeymanagment.html:8
-#: stock/templates/registered/apikeymanagment.html:18
-msgid "API Key Management"
-msgstr "API Key Verwaltung"
+#: stock/templates/registered/apisso.html:3
+#: stock/templates/registered/apisso.html:4
+#: stock/templates/registered/apisso.html:7
+msgid "Verify API Ownership"
+msgstr "Bestätige API Besitz"
-#: stock/templates/registered/apikeymanagment.html:16
-msgid "No api keys found"
-msgstr "Keine API Key gefunden"
-
-#: stock/templates/registered/apikeymanagment.html:27
-msgid "API ID"
-msgstr "API ID"
-
-#: stock/templates/registered/apikeymanagment.html:28
-msgid "API Key"
-msgstr "API Key"
+#: stock/templates/registered/apisso.html:10
+#, python-format
+msgid ""
+"Please authenticate as a character on API %(api.api_id)s to prove ownership."
+msgstr ""
+"Bitte authentifiziere als ein Charakter der API %(api.api_id)s um Besitz zu bestätigen"
#: stock/templates/registered/characters.html:7
#: stock/templates/registered/characters.html:12
#: stock/templates/registered/fleetup.html:28
#: stock/templates/registered/fleetupcharacters.html:29
#: stock/templates/registered/fleetupdoctrine.html:28
+#: stock/templates/registered/fleetupdoctrinesview.html:28
#: stock/templates/registered/fleetupfitting.html:28
#: stock/templates/registered/fleetupfittingsview.html:28
-#: stock/templates/registered/hrapplicationview.html:42
+#: stock/templates/registered/hrapplicationview.html:43
msgid "Characters"
msgstr "Charaktere"
@@ -1027,371 +1274,67 @@ msgid "No primary character set"
msgstr "Keinen primären Charakter festgelegt"
#: stock/templates/registered/characters.html:35
-msgid ""
-"\n"
-" Refresh Primary\n"
-" "
-msgstr ""
-"\n"
-" Hauptcharakter "
-"aktualisieren\n"
-" "
+msgid "Refresh Primary"
+msgstr "Aktualisiere Hauptcharakter"
-#: stock/templates/registered/characters.html:39
-msgid ""
-"Make\n"
-" Primary\n"
-" "
-msgstr ""
-"Hauptcharakter\n"
-" setzten\n"
-" "
+#: stock/templates/registered/characters.html:37
+msgid "Make Primary"
+msgstr "Mache zum Hauptcharakter"
-#: stock/templates/registered/characters.html:57
+#: stock/templates/registered/characters.html:52
msgid "Alliance: "
msgstr "Allianz: "
-#: stock/templates/registered/characters.html:59
+#: stock/templates/registered/characters.html:54
msgid "Corporation: "
msgstr "Corporation: "
-#: stock/templates/registered/characters.html:61
+#: stock/templates/registered/characters.html:56
msgid "Corporation Ticker: "
msgstr "Corporation Ticker: "
-#: stock/templates/registered/corputils.html:7
-#: stock/templates/registered/corputilssearchview.html:8
-msgid "Corporation Member Tracking"
-msgstr "Corporation Mitglieder Tracking"
+#: stock/templates/registered/dashboard.html:5
+#: stock/templates/registered/dashboard.html:9
+msgid "Dashboard"
+msgstr "Dashboard"
-#: stock/templates/registered/corputils.html:12
-msgid "Corporation Member Data"
-msgstr "Corporation Mitgliedsdaten"
+#: stock/templates/registered/dashboard.html:38
+msgid "Missing main character model."
+msgstr "Hauptcharakter model fehlt"
-#: stock/templates/registered/corputils.html:18
-#: stock/templates/registered/fleetupcharacters.html:47
-#: stock/templates/registered/hrapplicationmanagement.html:26
-#: stock/templates/registered/hrapplicationmanagement.html:81
-#: stock/templates/registered/hrapplicationmanagement.html:122
-#: stock/templates/registered/hrapplicationsearchview.html:28
-msgid "Corporation"
-msgstr "Corporation"
+#: stock/templates/registered/dashboard.html:42
+msgid "Add API Key"
+msgstr "API Key hinzufügen"
-#: stock/templates/registered/corputils.html:26
-msgid "Ticker:"
-msgstr "Ticker: "
+#: stock/templates/registered/dashboard.html:45
+msgid "Change Main"
+msgstr "Hauptcharakter ändern"
-#: stock/templates/registered/corputils.html:28
-msgid "Member count:"
-msgstr "Mitgliederzahl:"
+#: stock/templates/registered/dashboard.html:52
+msgid "Groups"
+msgstr "Gruppen"
-#: stock/templates/registered/corputils.html:30
-msgid "Player count:"
-msgstr "Spieleranzahl:"
+#: stock/templates/registered/dashboard.html:71
+msgid "API Key requires EVE SSO verification"
+msgstr "API Key benötigt EVE SSO bestätigung"
-#: stock/templates/registered/corputils.html:32
-msgid "Unregistered characters:"
-msgstr "Nicht registrierte Charaktere:"
+#: stock/templates/registered/dashboard.html:71
+msgid "API Key is valid"
+msgstr "API Key ist gültig"
-#: stock/templates/registered/corputils.html:35
-msgid "API Index:"
-msgstr "API Index:"
+#: stock/templates/registered/dashboard.html:72
+msgid "API ID"
+msgstr "API ID"
-#: stock/templates/registered/corputils.html:51
-msgid "Alliance corporations"
-msgstr "Allianz Corporations"
+#: stock/templates/registered/dashboard.html:90
+#: stock/templates/registered/groupmembers.html:21
+#: stock/templates/registered/hrapplicationview.html:49
+msgid "Alliance"
+msgstr "Allianz"
-#: stock/templates/registered/corputils.html:80
-#: stock/templates/registered/corputils.html:112
-#: stock/templates/registered/corputils.html:115
-#: stock/templates/registered/corputils.html:148
-#: stock/templates/registered/corputils.html:194
-#: stock/templates/registered/corputils.html:205
-#: stock/templates/registered/corputilssearchview.html:42
-#: stock/templates/registered/corputilssearchview.html:45
-#: stock/templates/registered/corputilssearchview.html:63
-msgid "Killboard"
-msgstr "Killboard"
-
-#: stock/templates/registered/corputils.html:89
-#: stock/templates/registered/corputilssearchview.html:29
-#: stock/templates/registered/hrapplicationmanagement.html:177
-#: stock/templates/registered/hrapplicationsearchview.html:77
-msgid "Search"
-msgstr "Suche"
-
-#: stock/templates/registered/corputils.html:96
-msgid "Registered Main Characters"
-msgstr "Registrierte Haupt Charaktere"
-
-#: stock/templates/registered/corputils.html:97
-msgid "Characters without API"
-msgstr "Charaktere ohne API"
-
-#: stock/templates/registered/corputils.html:108
-msgid "Main corporation"
-msgstr "Haupt Corporation"
-
-#: stock/templates/registered/corputils.html:109
-msgid "Character list"
-msgstr "Charakterliste"
-
-#: stock/templates/registered/corputils.html:110
-#: stock/templates/registered/fatlinkpersonalstatisticsview.html:25
-#: stock/templates/registered/fatlinkstatisticsview.html:29
-msgid "Fats"
-msgstr ""
-
-#: stock/templates/registered/corputils.html:113
-#: stock/templates/registered/corputilssearchview.html:43
-msgid "Fleet statistics"
-msgstr " Flottenstatistic"
-
-#: stock/templates/registered/corputils.html:117
-#: stock/templates/registered/corputils.html:164
-#: stock/templates/registered/corputilssearchview.html:47
-#: stock/templates/registered/corputilssearchview.html:83
-msgid "API JackKnife"
-msgstr "API JackKnife"
-
-#: stock/templates/registered/corputils.html:177
-#, python-format
-msgid ""
-"Seems there are no characters in %(corp.corporation_name)s tied to a "
-"registered API!"
-msgstr ""
-"Scheint, als wären keine Charaktere zu %(corp.corporation_name)s verbunden"
-
-#: stock/templates/registered/corputils.html:187
-#, python-format
-msgid ""
-"There are atleast %(n_unacounted)s characters not accounted for in EveWho."
-msgstr ""
-"Es sind mindestens %(n_unacounted)s Charaktere nicht in EveWho bekannt."
-
-#: stock/templates/registered/corputils.html:193
-#: stock/templates/registered/corputilssearchview.html:39
-#: stock/templates/registered/fatlinkmodify.html:24
-#: stock/templates/registered/fatlinkview.html:28
-#: stock/templates/registered/fleetupcharacters.html:46
-msgid "Character"
-msgstr "Charakter"
-
-#: stock/templates/registered/corputils.html:214
-#, python-format
-msgid ""
-"Good job! Every character in %(corp.corporation_name)s seem to be tied to an "
-"API!"
-msgstr ""
-"Gut gemacht! Alle Charaktere in %(corp.corporation_name)s scheinen mit einer "
-"APIverknüft zu sein!"
-
-#: stock/templates/registered/corputils.html:223
-msgid "No corporation model found. Contact your admin."
-msgstr "Kein Corporation Model gefunden. Kontaktiere deinen Admin."
-
-#: stock/templates/registered/corputilssearchview.html:14
-msgid "Member Search Results"
-msgstr "Mitgliedersuche Ergebnisse"
-
-#: stock/templates/registered/corputilssearchview.html:59
-msgid "No API registered!"
-msgstr "Keine API registriert!"
-
-#: stock/templates/registered/discord.html:8
-#: stock/templates/registered/jabberbroadcast.html:8
-#: stock/templates/registered/jabberbroadcast.html:13
-msgid "Jabber Broadcast"
-msgstr "Jabber Übertragung"
-
-#: stock/templates/registered/discord.html:13
-msgid "Discord Connection"
-msgstr "Discordverbindung"
-
-#: stock/templates/registered/discord.html:19
-msgid "Account Linked"
-msgstr "Account verbunden"
-
-#: stock/templates/registered/discord.html:21
-msgid ""
-"Enter your Discord account credentials below. These are not stored: they are "
-"needed to determine your user ID and make you join the server."
-msgstr ""
-"Gib Deine Discord Accountdaten unten an. Diese werden nicht gespeichert: sie "
-"werden benötigt, um deine Nutzer ID zu ermitteln und dich mit dem Server zu "
-"verbinden."
-
-#: stock/templates/registered/discord.html:22
-msgid "If you do not have a Discord account, please create one Link to the line members"
-msgstr ""
-"Gebe diesen Link den Teilnehmern"
+msgid "Give this link to the line members"
+msgstr "Gebe diesen link den leine membern"
#: stock/templates/registered/srpfleetdata.html:15
msgid "SRP Fleet Data"
@@ -1983,26 +2047,30 @@ msgstr "Verluste insgesamt:"
msgid "Total ISK Cost:"
msgstr "ISK-Kosten insgesamt:"
-#: stock/templates/registered/srpfleetdata.html:39
+#: stock/templates/registered/srpfleetdata.html:40
msgid "Pilot Name"
msgstr "Name des Piloten"
-#: stock/templates/registered/srpfleetdata.html:40
+#: stock/templates/registered/srpfleetdata.html:41
msgid "Killboard Link"
msgstr "Killboard Link"
-#: stock/templates/registered/srpfleetdata.html:42
-msgid "Ship Type"
-msgstr "Schiffstypen"
-
#: stock/templates/registered/srpfleetdata.html:43
+msgid "Ship Type"
+msgstr "Schiffstyp"
+
+#: stock/templates/registered/srpfleetdata.html:44
msgid "Killboard Loss Amt"
msgstr "Summe Killboard Verluste"
-#: stock/templates/registered/srpfleetdata.html:44
+#: stock/templates/registered/srpfleetdata.html:45
msgid "SRP ISK Cost"
msgstr "SRP ISK-Kosten"
+#: stock/templates/registered/srpfleetdata.html:113
+msgid "No SRP requests for this fleet."
+msgstr "Keine SRP anfragen für diese Flotte."
+
#: stock/templates/registered/srpfleetrequest.html:8
msgid "SRP Request"
msgstr "SRP-Anfrage"
@@ -2013,7 +2081,6 @@ msgid "Create SRP Request"
msgstr "Erstelle SRP-Anfrage"
#: stock/templates/registered/srpfleetrequest.html:21
-#: stock/templates/registered/srpfleetrequestamount.html:21
msgid "SRP Code Does Not Exist"
msgstr "SRP-Code existiert nicht"
@@ -2026,7 +2093,7 @@ msgstr "SRP-Anfrage erfolgreich eingereicht"
msgid "Update SRP Amount"
msgstr "Aktualisiere SRP Menge"
-#: stock/templates/registered/srpfleetrequestamount.html:27
+#: stock/templates/registered/srpfleetrequestamount.html:24
msgid "Update SRP Request Amount"
msgstr "Aktualisiere SPR Anfragen Menge"
@@ -2050,31 +2117,56 @@ msgstr "Zeige alles"
msgid "Add SRP Fleet"
msgstr "Füge SRP Flotte hinzu"
-#: stock/templates/registered/srpmanagement.html:38
+#: stock/templates/registered/srpmanagement.html:39
msgid "Fleet AAR"
msgstr "Flotten AAR"
-#: stock/templates/registered/srpmanagement.html:39
+#: stock/templates/registered/srpmanagement.html:40
msgid "Fleet SRP Code"
msgstr "Flotten SRP Code"
-#: stock/templates/registered/srpmanagement.html:40
+#: stock/templates/registered/srpmanagement.html:41
msgid "Fleet ISK Cost"
msgstr "Flotten ISK Kosten"
-#: stock/templates/registered/srpmanagement.html:41
+#: stock/templates/registered/srpmanagement.html:42
msgid "SRP Status"
msgstr "SRP Status"
-#: stock/templates/registered/srpmanagement.html:68
+#: stock/templates/registered/srpmanagement.html:43
+
+msgid "Pending Requests"
+msgstr "Ausstehende Anfragen"
+
+#: stock/templates/registered/srpmanagement.html:62
+msgid "Link"
+msgstr "Link"
+
+#: stock/templates/registered/srpmanagement.html:70
msgid "Disabled"
msgstr "Deaktiviert"
-#: stock/templates/registered/srpmanagement.html:87
+#: stock/templates/registered/srpmanagement.html:83
#: stock/templates/registration/password_change_done.html:16
msgid "Completed"
msgstr "Fertig"
+#: stock/templates/registered/srpmanagement.html:120
+msgid "No SRP fleets created."
+msgstr "Keine SRP-Flotte erstellt."
+
+#: stock/templates/registered/teamspeakjoin.html:8
+msgid "Verify Teamspeak"
+msgstr "Teamspeak bestätigen"
+
+#: stock/templates/registered/teamspeakjoin.html:13
+msgid "Verify Teamspeak Identity"
+msgstr "Teamspeak-Identität bestätigen"
+
+#: stock/templates/registered/teamspeakjoin.html:16
+msgid "Join Server"
+msgstr "Server beitreten"
+
#: stock/templates/registered/timermanagement.html:8
msgid "Structure Timer Management"
msgstr "Struktur-Timer Verwaltung"
@@ -2083,41 +2175,49 @@ msgstr "Struktur-Timer Verwaltung"
msgid "Structure Timers"
msgstr "Struktur-Timer"
-#: stock/templates/registered/timermanagement.html:27
-msgid "Next Timer"
-msgstr "Nächster Timer"
-
-#: stock/templates/registered/timermanagement.html:31
-#: stock/templates/registered/timermanagement.html:133
-#: stock/templates/registered/timermanagement.html:235 timerboard/form.py:16
-msgid "Objective"
-msgstr "Ziel"
-
-#: stock/templates/registered/timermanagement.html:51
-#: stock/templates/registered/timermanagement.html:153
-#: stock/templates/registered/timermanagement.html:256 timerboard/form.py:10
-msgid "Hostile"
-msgstr "Feindlich"
-
-#: stock/templates/registered/timermanagement.html:56
-#: stock/templates/registered/timermanagement.html:158
-#: stock/templates/registered/timermanagement.html:261 timerboard/form.py:10
-msgid "Friendly"
-msgstr "Freundlich"
-
-#: stock/templates/registered/timermanagement.html:61
-#: stock/templates/registered/timermanagement.html:163
-#: stock/templates/registered/timermanagement.html:266 timerboard/form.py:10
-msgid "Neutral"
-msgstr "Neutral"
-
-#: stock/templates/registered/timermanagement.html:129
+#: stock/templates/registered/timermanagement.html:26
msgid "Corp Timers"
msgstr "Corp Timer"
-#: stock/templates/registered/timermanagement.html:231
-msgid "Future Timers"
-msgstr "Zukünftige Timer"
+#: stock/templates/registered/timermanagement.html:30
+#: stock/templates/registered/timermanagement.html:162
+#: stock/templates/registered/timermanagement.html:294 timerboard/form.py:21
+msgid "Objective"
+msgstr "Ziel"
+
+#: stock/templates/registered/timermanagement.html:50
+#: stock/templates/registered/timermanagement.html:182
+#: stock/templates/registered/timermanagement.html:314 timerboard/form.py:15
+msgid "Hostile"
+msgstr "Feindlich"
+
+#: stock/templates/registered/timermanagement.html:55
+#: stock/templates/registered/timermanagement.html:187
+#: stock/templates/registered/timermanagement.html:319 timerboard/form.py:15
+msgid "Friendly"
+msgstr "Freundlich"
+
+#: stock/templates/registered/timermanagement.html:60
+#: stock/templates/registered/timermanagement.html:192
+#: stock/templates/registered/timermanagement.html:324 timerboard/form.py:15
+msgid "Neutral"
+msgstr "Neutral"
+
+#: stock/templates/registered/timermanagement.html:157
+msgid "Next Timers"
+msgstr "Nächste Timer"
+
+#: stock/templates/registered/timermanagement.html:287
+msgid "No upcoming timers."
+msgstr "Keine kommenden timer."
+
+#: stock/templates/registered/timermanagement.html:289
+msgid "Past Timers"
+msgstr "Vergangene Timer"
+
+#: stock/templates/registered/timermanagement.html:420
+msgid "No past timers."
+msgstr "Keine vergangenen Timer."
#: stock/templates/registered/timerupdate.html:15
#: stock/templates/registered/timerupdate.html:27
@@ -2133,19 +2233,19 @@ msgstr "Struktur Timer existiert nicht"
msgid "Password Change"
msgstr "Passwort ändern"
-#: stock/templates/registration/password_reset_complete.html:49
+#: stock/templates/registration/password_reset_complete.html:45
msgid "Password reset complete"
msgstr "Passwort wurde zurückgesetzt"
-#: stock/templates/registration/password_reset_complete.html:51
+#: stock/templates/registration/password_reset_complete.html:47
msgid "Your password has been set."
msgstr "Passwort wurde gesetzt"
-#: stock/templates/registration/password_reset_confirm.html:58
+#: stock/templates/registration/password_reset_confirm.html:54
msgid "Password reset unsuccessful"
msgstr "Passwort Zurücksetzen Fehlgeschlagen"
-#: stock/templates/registration/password_reset_confirm.html:60
+#: stock/templates/registration/password_reset_confirm.html:56
msgid ""
"The password reset link was invalid, possibly because it has already been "
"used. Please request a new password reset."
@@ -2198,49 +2298,62 @@ msgstr "Vielen dank, dass du unsere Seite nutzt!"
msgid "Your IT Team"
msgstr "Euer IT Team"
-#: stock/templates/registration/password_reset_form.html:51
+#: stock/templates/registration/password_reset_form.html:46
msgid "Password Reset"
msgstr "Passwort zurücksetzen"
-#: stock/templates/registration/password_reset_form.html:53
+#: stock/templates/registration/password_reset_form.html:48
msgid "Forgotten your password? Enter your email below."
msgstr "Hast du dein Passwort vergessen? Gib unten deine Email-Adresse ein."
-#: stock/templates/registration/password_reset_form.html:56
+#: stock/templates/registration/password_reset_form.html:51
msgid "Reset Password"
msgstr "Passwort zurücksetzen"
-#: timerboard/form.py:9
+#: timerboard/form.py:14
msgid "Other"
msgstr "anderes"
-#: timerboard/form.py:14
+#: timerboard/form.py:19
msgid "Planet/Moon"
msgstr "Planet/Mond"
-#: timerboard/form.py:15
+#: timerboard/form.py:20
msgid "Structure Type"
msgstr "Struktur-Timer"
-#: timerboard/form.py:17
+#: timerboard/form.py:22
msgid "Days Remaining"
msgstr "Tage Verbleibend"
-#: timerboard/form.py:18
+#: timerboard/form.py:23
msgid "Hours Remaining"
msgstr "Stunden Verbleibend"
-#: timerboard/form.py:19
+#: timerboard/form.py:25
msgid "Minutes Remaining"
msgstr "Minuten Verbleibend"
-#: timerboard/form.py:20
+#: timerboard/form.py:27
msgid "Important"
msgstr "Wichtig"
-#: timerboard/form.py:21
+#: timerboard/form.py:28
msgid "Corp-Restricted"
msgstr "Corp-beschränkt"
+#: timerboard/views.py:95
+msgid "Added new timer in %(system)s at %(time)s."
+msgstr "Neuen Timer hinzugefügt in %(system)s um %(time)s."
+#: timerboard/views.py:114
+msgid "Deleted timer in %(system)s at %(time)s."
+msgstr "Timer in %(system)s um %(time)s entfernt."
+#: timerboard/views.py:118
+msgid "Unable to locate timer with ID %(timerid)s."
+msgstr "Unfähig den Timer mit der ID %(timerid)s zu finden. "
+
+#: timerboard/views.py:154
+msgid "Saved changes to the timer."
+msgstr "Änderungen am Timer gespeichert"
\ No newline at end of file
diff --git a/notifications/views.py b/notifications/views.py
index 201d7c9f..a75e64a8 100644
--- a/notifications/views.py
+++ b/notifications/views.py
@@ -3,6 +3,7 @@ from django.shortcuts import render, get_object_or_404, redirect
from .models import Notification
from django.contrib.auth.decorators import login_required
from django.contrib import messages
+from django.utils.translation import ugettext_lazy as _
import logging
logger = logging.getLogger(__name__)
@@ -33,7 +34,7 @@ def notification_view(request, notif_id):
else:
logger.warn(
"User %s not authorized to view notif_id %s belonging to user %s" % (request.user, notif_id, notif.user))
- messages.error(request, 'You are not authorized to view that notification.')
+ messages.error(request, _('You are not authorized to view that notification.'))
return redirect('auth_notification_list')
@@ -45,11 +46,11 @@ def remove_notification(request, notif_id):
if Notification.objects.filter(id=notif_id).exists():
notif.delete()
logger.info("Deleting notif id %s by user %s" % (notif_id, request.user))
- messages.success(request, 'Deleted notification.')
+ messages.success(request, _('Deleted notification.'))
else:
logger.error(
"Unable to delete notif id %s for user %s - notif matching id not found." % (notif_id, request.user))
- messages.error(request, 'Failed to locate notification.')
+ messages.error(request, _('Failed to locate notification.'))
return redirect('auth_notification_list')
@@ -57,7 +58,7 @@ def remove_notification(request, notif_id):
def mark_all_read(request):
logger.debug('mark all notifications read called by user %s' % request.user)
Notification.objects.filter(user=request.user).update(viewed=True)
- messages.success(request, 'Marked all notifications as read.')
+ messages.success(request, _('Marked all notifications as read.'))
return redirect('auth_notification_list')
@@ -65,5 +66,5 @@ def mark_all_read(request):
def delete_all_read(request):
logger.debug('delete all read notifications called by user %s' % request.user)
Notification.objects.filter(user=request.user).filter(viewed=True).delete()
- messages.success(request, 'Deleted all read notifications.')
+ messages.success(request, _('Deleted all read notifications.'))
return redirect('auth_notification_list')
diff --git a/optimer/views.py b/optimer/views.py
index d201dbe1..e10c35e7 100644
--- a/optimer/views.py
+++ b/optimer/views.py
@@ -2,6 +2,7 @@ from __future__ import unicode_literals
from django.contrib.auth.decorators import login_required
from django.contrib.auth.decorators import permission_required
from django.utils import timezone
+from django.utils.translation import ugettext_lazy as _
from django.shortcuts import get_object_or_404
from django.shortcuts import render, redirect
from django.contrib import messages
@@ -53,7 +54,7 @@ def add_optimer_view(request):
op.eve_character = character
op.save()
logger.info("User %s created op timer with name %s" % (request.user, op.operation_name))
- messages.success(request, 'Created operation timer for %s.' % op.operation_name)
+ messages.success(request, _('Created operation timer for %(opname)s.') % {"opname": op.operation_name})
return redirect("/optimer/")
else:
logger.debug("Returning new opForm")
@@ -72,7 +73,7 @@ def remove_optimer(request, optimer_id):
op = optimer.objects.get(id=optimer_id)
op.delete()
logger.info("Deleting optimer id %s by user %s" % (optimer_id, request.user))
- messages.success(request, 'Removed operation timer for %s.' % op.operation_name)
+ messages.success(request, _('Removed operation timer for %(opname)s.') % {"opname": op.operation_name})
else:
logger.error("Unable to delete optimer id %s for user %s - operation matching id not found." % (
optimer_id, request.user))
@@ -101,7 +102,7 @@ def edit_optimer(request, optimer_id):
op.eve_character = character
logger.info("User %s updating optimer id %s " % (request.user, optimer_id))
op.save()
- messages.success(request, 'Saved changes to operation timer for %s.' % op.operation_name)
+ messages.success(request, _('Saved changes to operation timer for %(opname)s.') % {"opname": op.operation_name})
return redirect("auth_optimer_view")
else:
data = {
diff --git a/services/modules/discord/templates/registered/discord_service_ctrl.html b/services/modules/discord/templates/registered/discord_service_ctrl.html
index f9315c9a..7b7fa34b 100644
--- a/services/modules/discord/templates/registered/discord_service_ctrl.html
+++ b/services/modules/discord/templates/registered/discord_service_ctrl.html
@@ -20,7 +20,7 @@
{% endif %}
{% if request.user.is_superuser %}
{% endif %}
diff --git a/services/views.py b/services/views.py
index 7cfd3833..a5517341 100755
--- a/services/views.py
+++ b/services/views.py
@@ -3,6 +3,7 @@ from __future__ import unicode_literals
from django.contrib import messages
from django.contrib.auth.decorators import login_required
from django.shortcuts import render
+from django.utils.translation import ugettext_lazy as _
from alliance_auth.hooks import get_hooks
from authentication.decorators import members_and_blues
@@ -54,7 +55,7 @@ def services_view(request):
try:
char = EveCharacter.objects.get(character_id=auth.main_char_id)
except EveCharacter.DoesNotExist:
- messages.warning(request, "There's a problem with your main character. Please select a new one.")
+ messages.warning(request, _("There's a problem with your main character. Please select a new one."))
context = {'service_ctrls': []}
for fn in get_hooks('services_hook'):
diff --git a/srp/form.py b/srp/form.py
index 7dfccfe6..2d0d6504 100755
--- a/srp/form.py
+++ b/srp/form.py
@@ -21,7 +21,7 @@ class SrpFleetUserRequestForm(forms.Form):
def clean_killboard_link(self):
data = self.cleaned_data['killboard_link']
if "zkillboard.com" not in data:
- raise forms.ValidationError("Invalid Link. Please use zKillboard.com")
+ raise forms.ValidationError(_("Invalid Link. Please use zKillboard.com"))
return data
diff --git a/srp/views.py b/srp/views.py
index f327108b..775a7f96 100755
--- a/srp/views.py
+++ b/srp/views.py
@@ -14,6 +14,7 @@ from srp.form import SrpFleetMainUpdateForm
from services.managers.srp_manager import srpManager
from notifications import notify
from django.utils import timezone
+from django.utils.translation import ugettext_lazy as _
from authentication.decorators import members_and_blues
import uuid
@@ -93,7 +94,7 @@ def srp_fleet_add_view(request):
completed = True
completed_srp_code = srp_fleet_main.fleet_srp_code
logger.info("Created SRP Fleet %s by user %s" % (srp_fleet_main.fleet_name, request.user))
- messages.success(request, 'Created SRP fleet %s.' % srp_fleet_main.fleet_name)
+ messages.success(request, _('Created SRP fleet %(fleetname)s.') % {"fleetname": srp_fleet_main.fleet_name})
else:
logger.debug("Returning blank SrpFleetMainForm")
@@ -112,11 +113,11 @@ def srp_fleet_remove(request, fleet_id):
srpfleetmain = SrpFleetMain.objects.get(id=fleet_id)
srpfleetmain.delete()
logger.info("SRP Fleet %s deleted by user %s" % (srpfleetmain.fleet_name, request.user))
- messages.success(request, 'Removed SRP fleet %s.' % srpfleetmain.fleet_name)
+ messages.success(request, _('Removed SRP fleet %(fleetname)s.') % {"fleetname": srpfleetmain.fleet_name})
else:
logger.error(
"Unable to delete SRP fleet id %s for user %s - fleet matching id not found." % (fleet_id, request.user))
- messages.error(request, 'Unable to locate SRP fleet with ID %s' % fleet_id)
+ messages.error(request, _('Unable to locate SRP fleet with ID %(fleetid)s') % {"fleetid": fleet_id})
return redirect("auth_srp_management_view")
@@ -129,11 +130,11 @@ def srp_fleet_disable(request, fleet_id):
srpfleetmain.fleet_srp_code = ""
srpfleetmain.save()
logger.info("SRP Fleet %s disabled by user %s" % (srpfleetmain.fleet_name, request.user))
- messages.success(request, 'Disabled SRP fleet %s.' % srpfleetmain.fleet_name)
+ messages.success(request, _('Disabled SRP fleet %(fleetname)s.') % {"fleetname": srpfleetmain.fleet_name})
else:
logger.error(
"Unable to disable SRP fleet id %s for user %s - fleet matching id not found." % (fleet_id, request.user))
- messages.error(request, 'Unable to locate SRP fleet with ID %s' % fleet_id)
+ messages.error(request, _('Unable to locate SRP fleet with ID %(fleetid)s') % {"fleetid": fleet_id})
return redirect("auth_srp_management_view")
@@ -146,11 +147,11 @@ def srp_fleet_enable(request, fleet_id):
srpfleetmain.fleet_srp_code = random_string(8)
srpfleetmain.save()
logger.info("SRP Fleet %s enable by user %s" % (srpfleetmain.fleet_name, request.user))
- messages.success(request, 'Enabled SRP fleet %s.' % srpfleetmain.fleet_name)
+ messages.success(request, _('Enabled SRP fleet %(fleetname)s.') % {"fleetname": srpfleetmain.fleet_name})
else:
logger.error(
"Unable to enable SRP fleet id %s for user %s - fleet matching id not found." % (fleet_id, request.user))
- messages.error(request, 'Unable to locate SRP fleet with ID %s' % fleet_id)
+ messages.error(request, _('Unable to locate SRP fleet with ID %(fleetid)s') % {"fleetid": fleet_id})
return redirect("auth_srp_management_view")
@@ -163,11 +164,11 @@ def srp_fleet_mark_completed(request, fleet_id):
srpfleetmain.fleet_srp_status = "Completed"
srpfleetmain.save()
logger.info("Marked SRP Fleet %s as completed by user %s" % (srpfleetmain.fleet_name, request.user))
- messages.success(request, 'Marked SRP fleet %s as completed.' % srpfleetmain.fleet_name)
+ messages.success(request, _('Marked SRP fleet %(fleetname)s as completed.') % {"fleetname": srpfleetmain.fleet_name})
else:
logger.error("Unable to mark SRP fleet with id %s as completed for user %s - fleet matching id not found." % (
fleet_id, request.user))
- messages.error(request, 'Unable to locate SRP fleet with ID %s' % fleet_id)
+ messages.error(request, _('Unable to locate SRP fleet with ID %(fleetid)s') % {"fleetid": fleet_id})
return redirect("auth_srp_fleet_view", fleet_id)
@@ -180,12 +181,12 @@ def srp_fleet_mark_uncompleted(request, fleet_id):
srpfleetmain.fleet_srp_status = ""
srpfleetmain.save()
logger.info("Marked SRP Fleet %s as incomplete for user %s" % (fleet_id, request.user))
- messages.success(request, 'Marked SRP fleet %s as incomplete.' % srpfleetmain.fleet_name)
+ messages.success(request, _('Marked SRP fleet %(fleetname)s as incomplete.') % {"fleetname": srpfleetmain.fleet_name})
return redirect("auth_srp_fleet_view", fleet_id)
else:
logger.error("Unable to mark SRP Fleet id %s as incomplete for user %s - fleet matching id not found." % (
fleet_id, request.user))
- messages.error(request, 'Unable to locate SRP fleet with ID %s' % fleet_id)
+ messages.error(request, _('Unable to locate SRP fleet with ID %(fleetid)s') % {"fleetid": fleet_id})
return redirect('auth_srp_management_view')
@@ -224,7 +225,7 @@ def srp_request_view(request, fleet_srp):
request.user, srp_request.killboard_link))
# THIS SHOULD BE IN FORM VALIDATION
messages.error(request,
- "Your SRP request Killmail link is invalid. Please make sure you are using zKillboard.")
+ _("Your SRP request Killmail link is invalid. Please make sure you are using zKillboard."))
return redirect("auth_srp_management_view")
srp_ship_name = EveManager.get_itemtype(ship_type_id).name
srp_request.srp_ship_name = srp_ship_name
@@ -235,7 +236,7 @@ def srp_request_view(request, fleet_srp):
completed = True
logger.info("Created SRP Request on behalf of user %s for fleet name %s" % (
request.user, srp_fleet_main.fleet_name))
- messages.success(request, 'Submitted SRP request for your %s.' % srp_ship_name)
+ messages.success(request, _('Submitted SRP request for your %(ship)s.') % {"ship": srp_ship_name})
else:
logger.debug("Returning blank SrpFleetUserRequestForm")
@@ -257,12 +258,12 @@ def srp_request_remove(request, srp_request_id):
stored_fleet_view = srpuserrequest.srp_fleet_main.id
srpuserrequest.delete()
logger.info("Deleted SRP request id %s for user %s" % (srp_request_id, request.user))
- messages.success(request, 'Deleted SRP request from %s for their %s.' % (
- srpuserrequest.character, srpuserrequest.srp_ship_name))
+ messages.success(request, _('Deleted SRP request from %(character)s for their %(ship)s.') % {
+ "character": srpuserrequest.character, "ship": srpuserrequest.srp_ship_name})
if stored_fleet_view is None:
logger.error("Unable to delete srp request id %s for user %s - request matching id not found." % (
srp_request_id, request.user))
- messages.error(request, 'Unable to locate SRP request with ID %s' % srp_request_id)
+ messages.error(request, _('Unable to locate SRP request with ID %(requestid)s') % {"requestid": srp_request_id})
return redirect("auth_srp_management_view")
else:
return redirect("auth_srp_fleet_view", stored_fleet_view)
@@ -283,8 +284,8 @@ def srp_request_approve(request, srp_request_id):
srpuserrequest.save()
logger.info("Approved SRP request id %s for character %s by user %s" % (
srp_request_id, srpuserrequest.character, request.user))
- messages.success(request, 'Approved SRP request from %s for their %s.' % (
- srpuserrequest.character, srpuserrequest.srp_ship_name))
+ messages.success(request, _('Approved SRP request from %(character)s for their %(ship)s.') % {
+ "character": srpuserrequest.character, "ship": srpuserrequest.srp_ship_name})
notify(
srpuserrequest.character.user,
'SRP Request Approved',
@@ -295,7 +296,7 @@ def srp_request_approve(request, srp_request_id):
if stored_fleet_view is None:
logger.error("Unable to approve srp request id %s on behalf of user %s - request matching id not found." % (
srp_request_id, request.user))
- messages.error(request, 'Unable to locate SRP request with ID %s' % srp_request_id)
+ messages.error(request, _('Unable to locate SRP request with ID %(requestid)s') % {"requestid": srp_request_id})
return redirect("auth_srp_management_view")
else:
return redirect("auth_srp_fleet_view", stored_fleet_view)
@@ -314,8 +315,8 @@ def srp_request_reject(request, srp_request_id):
srpuserrequest.save()
logger.info("SRP request id %s for character %s rejected by %s" % (
srp_request_id, srpuserrequest.character, request.user))
- messages.success(request, 'Rejected SRP request from %s for their %s.' % (
- srpuserrequest.character, srpuserrequest.srp_ship_name))
+ messages.success(request, _('Rejected SRP request from %(character)s for their %(ship)s.') % {
+ "character": srpuserrequest.character, "ship": srpuserrequest.srp_ship_name})
notify(
srpuserrequest.character.user,
'SRP Request Rejected',
@@ -327,7 +328,7 @@ def srp_request_reject(request, srp_request_id):
if stored_fleet_view is None:
logger.error("Unable to reject SRP request id %s on behalf of user %s - request matching id not found." % (
srp_request_id, request.user))
- messages.error(request, 'Unable to locate SRP request with ID %s' % srp_request_id)
+ messages.error(request, _('Unable to locate SRP request with ID %(requestid)s') % {"requestid": srp_request_id})
return redirect("auth_srp_management_view")
else:
return redirect("auth_srp_fleet_view", stored_fleet_view)
@@ -341,7 +342,7 @@ def srp_request_update_amount_view(request, fleet_srp_request_id):
if SrpUserRequest.objects.filter(id=fleet_srp_request_id).exists() is False:
logger.error("Unable to locate SRP request id %s for user %s" % (fleet_srp_request_id, request.user))
- messages.error(request, 'Unable to locate SRP request with ID %s' % fleet_srp_request_id)
+ messages.error(request, _('Unable to locate SRP request with ID %(requestid)s') % {"requestid": fleet_srp_request_id})
return redirect("auth_srp_management_view")
if request.method == 'POST':
@@ -353,7 +354,7 @@ def srp_request_update_amount_view(request, fleet_srp_request_id):
srp_request.save()
logger.info("Updated srp request id %s total to %s by user %s" % (
fleet_srp_request_id, form.cleaned_data['srp_total_amount'], request.user))
- messages.success(request, 'Updated SRP amount.')
+ messages.success(request, _('Updated SRP amount.'))
return redirect("auth_srp_fleet_view", srp_request.srp_fleet_main.id)
else:
logger.debug("Returning blank SrpFleetUpdateCostForm")
@@ -378,7 +379,7 @@ def srp_fleet_edit_view(request, fleet_id):
srpfleetmain.fleet_srp_aar_link = form.cleaned_data['fleet_aar_link']
srpfleetmain.save()
logger.info("User %s edited SRP Fleet %s" % (request.user, srpfleetmain.fleet_name))
- messages.success(request, 'Saved changes to SRP fleet %s' % srpfleetmain.fleet_name)
+ messages.success(request, _('Saved changes to SRP fleet %(fleetname)s') % {"fleetname": srpfleetmain.fleet_name})
return redirect("auth_srp_management_view")
else:
logger.debug("Returning blank SrpFleetMainUpdateForm")
@@ -389,5 +390,5 @@ def srp_fleet_edit_view(request, fleet_id):
else:
logger.error(
"Unable to edit srp fleet id %s for user %s - fleet matching id not found." % (fleet_id, request.user))
- messages.error(request, 'Unable to locate SRP fleet with ID %s' % fleet_id)
+ messages.error(request, _('Unable to locate SRP fleet with ID %(fleetid)s') % {"fleetid": fleet_id})
return redirect("auth_srp_management_view")
diff --git a/stock/templates/public/base.html b/stock/templates/public/base.html
index c6db7eb3..51a66054 100755
--- a/stock/templates/public/base.html
+++ b/stock/templates/public/base.html
@@ -65,7 +65,7 @@
{% endif %}
{% if user.is_authenticated %}
{% if user.is_staff %}
- Admin
+ {% trans "Admin" %}
{% endif %}
{% trans "Logout" %}
{% else %}
@@ -162,7 +162,7 @@
- Fleet Activity Tracking
+ {% trans " Fleet Activity Tracking" %}
diff --git a/stock/templates/public/login.html b/stock/templates/public/login.html
index 0a0564c9..dc8366aa 100644
--- a/stock/templates/public/login.html
+++ b/stock/templates/public/login.html
@@ -11,7 +11,7 @@
- {{ SITE_NAME }} - Login
+ {{ SITE_NAME }} - {% trans "Login" %}
{% include 'bundles/bootstrap-css.html' %}
{% include 'bundles/fontawesome.html' %}
diff --git a/stock/templates/public/register.html b/stock/templates/public/register.html
index 62697b89..147fa989 100644
--- a/stock/templates/public/register.html
+++ b/stock/templates/public/register.html
@@ -10,7 +10,7 @@
- {{ SITE_NAME }} - Login
+ {{ SITE_NAME }} - {% trans "Registration" %}
{% include 'bundles/bootstrap-css.html' %}
{% include 'bundles/fontawesome.html' %}
diff --git a/stock/templates/registered/addapikey.html b/stock/templates/registered/addapikey.html
index 2a3382a6..03c003e7 100644
--- a/stock/templates/registered/addapikey.html
+++ b/stock/templates/registered/addapikey.html
@@ -24,9 +24,9 @@
{% endif %}
- {% blocktrans %}Create
- a full API key {% endblocktrans %}
+ {% trans "Create
+ a full API key" %}
{% blocktrans %}Blue API keys require access mask {{BLUE_API_MASK}} or greater for services.{% endblocktrans %}
@@ -37,9 +37,9 @@
{% endif %}
- {% blocktrans %}Create
- a blue key {% endblocktrans %}
+ {% trans "Create
+ a blue key" %}
diff --git a/stock/templates/registered/fleetupdoctrinesview.html b/stock/templates/registered/fleetupdoctrinesview.html
index 72407798..7899eacc 100644
--- a/stock/templates/registered/fleetupdoctrinesview.html
+++ b/stock/templates/registered/fleetupdoctrinesview.html
@@ -78,7 +78,7 @@
{% endfor %}
{% else %}
-