Localisation & German translation updates (#701)

This commit is contained in:
iAddz 2017-02-12 04:04:18 +00:00 committed by Adarnof
parent a33c8c14ee
commit a6c48f8d71
46 changed files with 1426 additions and 1302 deletions

View File

@ -36,9 +36,6 @@ urlpatterns = [
url(r'^sso/', include(esi.urls, namespace='esi')), url(r'^sso/', include(esi.urls, namespace='esi')),
url(r'^sso/login$', authentication.views.sso_login, name='auth_sso_login'), url(r'^sso/login$', authentication.views.sso_login, name='auth_sso_login'),
# Corputils
url(r'^corpstats/', include(corputils.urls, namespace='corputils')),
# Index # Index
url(_(r'^$'), authentication.views.index_view, name='auth_index'), url(_(r'^$'), authentication.views.index_view, name='auth_index'),
@ -107,6 +104,9 @@ urlpatterns += i18n_patterns(
url(_(r'^refresh_api_pair/([0-9]+)/$'), eveonline.views.user_refresh_api, name='auth_user_refresh_api'), url(_(r'^refresh_api_pair/([0-9]+)/$'), eveonline.views.user_refresh_api, name='auth_user_refresh_api'),
url(_(r'^delete_api_pair/(\w+)/$'), eveonline.views.api_key_removal, name='auth_api_key_removal'), url(_(r'^delete_api_pair/(\w+)/$'), eveonline.views.api_key_removal, name='auth_api_key_removal'),
url(_(r'^characters/'), eveonline.views.characters_view, name='auth_characters'), url(_(r'^characters/'), eveonline.views.characters_view, name='auth_characters'),
# Corputils
url(_(r'^corpstats/'), include(corputils.urls, namespace='corputils')),
# Group management # Group management
url(_(r'^groups/'), groupmanagement.views.groups_view, name='auth_groups'), url(_(r'^groups/'), groupmanagement.views.groups_view, name='auth_groups'),

View File

@ -4,6 +4,7 @@ from django.contrib.auth import logout
from django.contrib.auth import authenticate from django.contrib.auth import authenticate
from django.shortcuts import render, redirect from django.shortcuts import render, redirect
from django.contrib.auth.decorators import login_required from django.contrib.auth.decorators import login_required
from django.utils.translation import ugettext_lazy as _
from eveonline.managers import EveManager from eveonline.managers import EveManager
from eveonline.models import EveCharacter from eveonline.models import EveCharacter
from authentication.models import AuthServicesInfo from authentication.models import AuthServicesInfo
@ -34,10 +35,10 @@ def login_user(request):
return redirect(redirect_to) return redirect(redirect_to)
else: else:
logger.info("Login attempt failed for user %s: user marked inactive." % user) logger.info("Login attempt failed for user %s: user marked inactive." % user)
messages.warning(request, 'Your account has been disabled.') messages.warning(request, _('Your account has been disabled.'))
else: else:
logger.info("Failed login attempt: provided username %s" % form.cleaned_data['username']) logger.info("Failed login attempt: provided username %s" % form.cleaned_data['username'])
messages.error(request, 'Username/password invalid.') messages.error(request, _('Username/password invalid.'))
return render(request, 'public/login.html', context={'form': form}) return render(request, 'public/login.html', context={'form': form})
else: else:
logger.debug("Providing new login form.") logger.debug("Providing new login form.")
@ -68,7 +69,7 @@ def register_user_view(request):
user.save() user.save()
logger.info("Created new user %s" % user) logger.info("Created new user %s" % user)
login(request, user) login(request, user)
messages.warning(request, 'Add an API key to set up your account.') messages.warning(request, _('Add an API key to set up your account.'))
return redirect("auth_dashboard") return redirect("auth_dashboard")
else: else:
@ -106,10 +107,10 @@ def sso_login(request, token):
token.save() token.save()
return redirect('auth_dashboard') return redirect('auth_dashboard')
else: else:
messages.error(request, 'Your account has been disabled.') messages.error(request, _('Your account has been disabled.'))
else: else:
messages.warning(request, messages.warning(request,
'Authenticated character has no owning account. Please log in with username and password.') _('Authenticated character has no owning account. Please log in with username and password.'))
except EveCharacter.DoesNotExist: except EveCharacter.DoesNotExist:
messages.error(request, 'No account exists with the authenticated character. Please create an account first.') messages.error(request, _('No account exists with the authenticated character. Please create an account first.'))
return redirect(login_user) return redirect(login_user)

View File

@ -10,7 +10,7 @@
<div class="container-fluid"> <div class="container-fluid">
<ul class="nav navbar-nav"> <ul class="nav navbar-nav">
<li class="dropdown"> <li class="dropdown">
<a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false">Corporations<span class="caret"></span></a> <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false">{% trans "Corporations" %}<span class="caret"></span></a>
<ul class="dropdown-menu"> <ul class="dropdown-menu">
{% for corpstat in available %} {% for corpstat in available %}
<li> <li>
@ -21,13 +21,13 @@
</li> </li>
{% if perms.corputils.add_corpstats %} {% if perms.corputils.add_corpstats %}
<li> <li>
<a href="{% url 'corputils:add' %}">Add</a> <a href="{% url 'corputils:add' %}">{% trans "Add" %}</a>
</li> </li>
{% endif %} {% endif %}
</ul> </ul>
<form class="navbar-form navbar-right" role="search" action="{% url 'corputils:search' %}" method="GET"> <form class="navbar-form navbar-right" role="search" action="{% url 'corputils:search' %}" method="GET">
<div class="form-group"> <div class="form-group">
<input type="text" class="form-control" name="search_string" placeholder="{% if search_string %}{{ search_string }}{% else %}Search characters...{% endif %}"> <input type="text" class="form-control" name="search_string" placeholder="{% if search_string %}{{ search_string }}{% else %}{% trans "Search characters..." %}{% endif %}">
</div> </div>
</form> </form>
</div> </div>

View File

@ -38,10 +38,10 @@
<div class="panel panel-default"> <div class="panel panel-default">
<div class="panel-heading clearfix"> <div class="panel-heading clearfix">
<div class="panel-title pull-left"> <div class="panel-title pull-left">
<h4>Members</h4> <h4>{% trans "Members" %}</h4>
</div> </div>
<div class="panel-title pull-right"> <div class="panel-title pull-right">
Last update: {{ corpstats.last_updated|naturaltime }} {% trans "Last update:" %} {{ corpstats.last_updated|naturaltime }}
{% if corpstats.can_update %} {% if corpstats.can_update %}
<a class="btn btn-success" type="button" href="{% url 'corputils:update' corpstats.corp.corporation_id %}" title="Update Now"> <a class="btn btn-success" type="button" href="{% url 'corputils:update' corpstats.corp.corporation_id %}" title="Update Now">
<span class="glyphicon glyphicon-refresh"></span> <span class="glyphicon glyphicon-refresh"></span>
@ -57,14 +57,14 @@
<table class="table table-hover"> <table class="table table-hover">
<tr> <tr>
<th></th> <th></th>
<th class="text-center">Character</th> <th class="text-center">{% trans "Character" %}</th>
{% if corpstats.show_apis %} {% if corpstats.show_apis %}
<th class="text-center">API</th> <th class="text-center">API</th>
{% endif %} {% endif %}
<th class="text-center">zKillboard</th> <th class="text-center">{% trans "zKillboard" %}</th>
<th class="text-center">Main Character</th> <th class="text-center">{% trans "Main Character" %}</th>
<th class="text-center">Main Corporation</th> <th class="text-center">{% trans "Main Corporation" %}</th>
<th class="text-center">Main Alliance</th> <th class="text-center">{% trans "Main Alliance" %}</th>
</tr> </tr>
{% for member in members %} {% for member in members %}
<tr {% if not member.registered %}class="danger"{% endif %}> <tr {% if not member.registered %}class="danger"{% endif %}>

View File

@ -5,7 +5,7 @@
{% block member_data %} {% block member_data %}
<div class="panel panel-default"> <div class="panel panel-default">
<div class="panel-heading clearfix"> <div class="panel-heading clearfix">
<div class="panel-title pull-left">Search Results</div> <div class="panel-title pull-left">{% trans "Search Results" %}</div>
</div> </div>
<div class="panel-body"> <div class="panel-body">
<div class="text-center"> <div class="text-center">
@ -14,13 +14,13 @@
<table class="table table-hover"> <table class="table table-hover">
<tr> <tr>
<th class="text-center"></th> <th class="text-center"></th>
<th class="text-center">Character</th> <th class="text-center">{% trans "Character" %}</th>
<th class="text-center">Corporation</th> <th class="text-center">{% trans "Corporation" %}</th>
<th class="text-center">API</th> <th class="text-center">{% trans "API" %}</th>
<th class="text-center">zKillboard</th> <th class="text-center">{% trans "zKillboard" %}</th>
<th class="text-center">Main Character</th> <th class="text-center">{% trans "Main Character" %}</th>
<th class="text-center">Main Corporation</th> <th class="text-center">{% trans "Main Corporation" %}</th>
<th class="text-center">Main Alliance</th> <th class="text-center">{% trans "Main Alliance" %}</th>
</tr> </tr>
{% for result in results %} {% for result in results %}
<tr {% if not result.1.registered %}class="danger"{% endif %}> <tr {% if not result.1.registered %}class="danger"{% endif %}>

View File

@ -6,6 +6,7 @@ from django.contrib import messages
from django.core.exceptions import PermissionDenied from django.core.exceptions import PermissionDenied
from django.db import IntegrityError from django.db import IntegrityError
from django.core.paginator import Paginator, EmptyPage, PageNotAnInteger from django.core.paginator import Paginator, EmptyPage, PageNotAnInteger
from django.utils.translation import ugettext_lazy as _
from django.conf import settings from django.conf import settings
from eveonline.models import EveCharacter, EveCorporationInfo from eveonline.models import EveCharacter, EveCorporationInfo
from corputils.models import CorpStats 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(): if CorpStats.objects.filter(pk=cs.pk).visible_to(request.user).exists():
return redirect('corputils:view_corp', corp_id=corp.corporation_id) return redirect('corputils:view_corp', corp_id=corp.corporation_id)
except EveCorporationInfo.DoesNotExist: 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: except IntegrityError:
messages.error(request, 'Selected corp already has a statistics module.') messages.error(request, _('Selected corp already has a statistics module.'))
except AssertionError: 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') return redirect('corputils:view')

View File

@ -2,6 +2,7 @@ from __future__ import unicode_literals
from django.shortcuts import render, redirect, get_object_or_404 from django.shortcuts import render, redirect, get_object_or_404
from django.contrib.auth.decorators import login_required from django.contrib.auth.decorators import login_required
from django.contrib import messages from django.contrib import messages
from django.utils.translation import ugettext_lazy as _
from eveonline.forms import UpdateKeyForm from eveonline.forms import UpdateKeyForm
from eveonline.managers import EveManager from eveonline.managers import EveManager
from authentication.managers import AuthServicesInfoManager from authentication.managers import AuthServicesInfoManager
@ -49,7 +50,7 @@ def add_api_key(request):
not EveCharacter.objects.filter(character_id=c.id).exists()] not EveCharacter.objects.filter(character_id=c.id).exists()]
logger.info("Successfully processed api add form for user %s" % request.user) logger.info("Successfully processed api add form for user %s" % request.user)
if not settings.API_SSO_VALIDATION: 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) auth = AuthServicesInfo.objects.get(user=request.user)
if not auth.main_char_id: if not auth.main_char_id:
return redirect('auth_characters') 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) api = get_object_or_404(EveApiKeyPair, api_id=api_id)
if api.user and api.user != request.user: 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)) 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') return redirect('auth_dashboard')
elif api.sso_verified: elif api.sso_verified:
logger.debug('API %s has already been verified.' % api_id) 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') return redirect('auth_dashboard')
logger.debug('API %s has not been verified. Checking if token for %s matches.' % (api_id, token.character_name)) 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 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.sso_verified = True
api.save() api.save()
EveCharacter.objects.filter(character_id__in=characters).update(user=request.user, api_id=api_id) 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) auth = AuthServicesInfo.objects.get(user=request.user)
if not auth.main_char_id: if not auth.main_char_id:
return redirect('auth_characters') return redirect('auth_characters')
return redirect('auth_dashboard') return redirect('auth_dashboard')
else: else:
messages.warning(request, '%s not found on API %s. Please SSO as a character on the API.' % ( messages.warning(request, _('%(character)s not found on API %(apiid)s. Please SSO as a character on the API.') % {
token.character_name, api.api_id)) "character": token.character_name, "apiid": api.api_id})
return render(request, 'registered/apisso.html', context={'api': api}) 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) authinfo = AuthServicesInfo.objects.get(user=request.user)
EveManager.delete_api_key_pair(api_id, request.user.id) EveManager.delete_api_key_pair(api_id, request.user.id)
EveManager.delete_characters_by_api_id(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)) 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(): if not EveCharacter.objects.filter(character_id=authinfo.main_char_id).exists():
authinfo.main_char_id = None 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( if EveCharacter.objects.filter(character_id=char_id).exists() and EveCharacter.objects.get(
character_id=char_id).user == request.user: character_id=char_id).user == request.user:
AuthServicesInfoManager.update_main_char_id(char_id, 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) set_state(request.user)
return redirect("auth_dashboard") 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") 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) api_key_pair = EveApiKeyPair.objects.get(api_id=api_id)
if api_key_pair.user == request.user: if api_key_pair.user == request.user:
refresh_api(api_key_pair) 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) set_state(request.user)
else: 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)) logger.warn("User %s not authorized to refresh api id %s" % (request.user, api_id))
else: 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)) logger.warn("User %s unable to refresh api id %s - api key not found" % (request.user, api_id))
return redirect("auth_dashboard") return redirect("auth_dashboard")

View File

@ -1,8 +1,9 @@
{% extends 'public/base.html' %} {% extends 'public/base.html' %}
{% load i18n %}
{% block title %}Fleet Participation{% endblock %} {% block title %}Fleet Participation{% endblock %}
{% block page_title %}Fleet Participation{% endblock %} {% block page_title %}{% trans "Fleet Participation" %}{% endblock %}
<div class="col-lg-12"> <div class="col-lg-12">
<h1 class="page-header text-center">Character not found!</h1> <h1 class="page-header text-center">{% trans "Character not found!" %}</h1>
<div class="col-lg-12 container" id="example"> <div class="col-lg-12 container" id="example">
<div class="row"> <div class="row">
<div class="col-lg-12"> <div class="col-lg-12">
@ -13,8 +14,8 @@
<img class="ra-avatar img-responsive" src="https://image.eveonline.com/Character/{{ character_id }}_128.jpg"> <img class="ra-avatar img-responsive" src="https://image.eveonline.com/Character/{{ character_id }}_128.jpg">
</div> </div>
<div class="col-lg-10 col-sm-2"> <div class="col-lg-10 col-sm-2">
<div class="alert alert-danger" role="alert">Character not registered!</div> <div class="alert alert-danger" role="alert">{% trans "Character not registered!" %}</div>
This character is not part of any registered API-key. You must go to <a href=" {% url 'auth_api_key_management' %}">API key management</a> and add an API with the character on before being able to click fleet attendance links. {% trans "This character is not part of any registered API-key. You must go to" %} <a href=" {% url 'auth_api_key_management' %}">{% trans "API key management</a> and add an API with the character on before being able to click fleet attendance links." %}
</div> </div>
</div> </div>
</div> </div>

View File

@ -8,7 +8,7 @@
{% block content %} {% block content %}
<div class="col-lg-12"> <div class="col-lg-12">
<h1 class="page-header text-center">{% blocktrans %}Edit fatlink "{{ fatlink }}"{% endblocktrans %} <h1 class="page-header text-center">{% trans "Edit fatlink" %} "{{ fatlink }}"
<div class="text-right"> <div class="text-right">
<form> <form>
<button type="submit" onclick="return confirm('Are you sure?')" class="btn btn-danger" name="deletefat" value="True"> <button type="submit" onclick="return confirm('Are you sure?')" class="btn btn-danger" name="deletefat" value="True">
@ -37,7 +37,7 @@
<td class="text-center">{{ fat.user }}</td> <td class="text-center">{{ fat.user }}</td>
<td class="text-center">{{ fat.character.character_name }}</td> <td class="text-center">{{ fat.character.character_name }}</td>
{% if fat.station != "No Station" %} {% if fat.station != "No Station" %}
<td class="text-center">Docked in {{ fat.system }}</td> <td class="text-center">{% blocktrans %}Docked in {{ fat.system }}{% endblocktrans %}</td>
{% else %} {% else %}
<td class="text-center">{{ fat.system }}</td> <td class="text-center">{{ fat.system }}</td>
{% endif %} {% endif %}

View File

@ -8,7 +8,7 @@
{% block content %} {% block content %}
<div class="col-lg-12"> <div class="col-lg-12">
<h1 class="page-header text-center">{% trans "Participation data statistics for" %} {{ month }}, {{ year }} <h1 class="page-header text-center">{% blocktrans %}Participation data statistics for {{ month }}, {{ year }}{% endblocktrans %}
{% if char_id %} {% if char_id %}
<div class="text-right"> <div class="text-right">
<a href="{% url 'auth_fatlink_view_user_statistics_month' char_id previous_month|date:"Y" previous_month|date:"m" %}" class="btn btn-info">{% trans "Previous month" %}</a> <a href="{% url 'auth_fatlink_view_user_statistics_month' char_id previous_month|date:"Y" previous_month|date:"m" %}" class="btn btn-info">{% trans "Previous month" %}</a>

View File

@ -8,7 +8,7 @@
{% block content %} {% block content %}
<div class="col-lg-12"> <div class="col-lg-12">
<h1 class="page-header text-center">{% trans "Participation data statistics for" %} {{ year }} <h1 class="page-header text-center">{% blocktrans %}Participation data statistics for {{ year }}{% endblocktrans %}
<div class="text-right"> <div class="text-right">
<a href="{% url 'auth_fatlink_view_personal_statistics_year' previous_year %}" class="btn btn-info">{% trans "Previous year" %}</a> <a href="{% url 'auth_fatlink_view_personal_statistics_year' previous_year %}" class="btn btn-info">{% trans "Previous year" %}</a>
{% if next_year %} {% if next_year %}

View File

@ -36,7 +36,7 @@
<td class="text-center">{{ fat.fatlink.name }}</td> <td class="text-center">{{ fat.fatlink.name }}</td>
<td class="text-center">{{ fat.character.character_name }}</td> <td class="text-center">{{ fat.character.character_name }}</td>
{% if fat.station != "No Station" %} {% if fat.station != "No Station" %}
<td class="text-center">Docked in {{ fat.system }}</td> <td class="text-center">{% blocktrans %}Docked in {{ fat.system }}{% endblocktrans %}</td>
{% else %} {% else %}
<td class="text-center">{{ fat.system }}</td> <td class="text-center">{{ fat.system }}</td>
{% endif %} {% endif %}
@ -46,7 +46,7 @@
{% endfor %} {% endfor %}
</table> </table>
{% else %} {% else %}
<div class="alert alert-warning text-center">No fleet activity on record.</div> <div class="alert alert-warning text-center">{% trans "No fleet activity on record." %}</div>
{% endif %} {% endif %}
{% if perms.auth.fleetactivitytracking%} {% if perms.auth.fleetactivitytracking%}
@ -95,7 +95,7 @@
</table> </table>
{% else %} {% else %}
<div class="alert alert-warning text-center">No created fatlinks on record.</div> <div class="alert alert-warning text-center">{% trans "No created fatlinks on record." %}</div>
{% endif %} {% endif %}
{% endif %} {% endif %}
</div> </div>

View File

@ -5,6 +5,7 @@ from django.core.exceptions import ObjectDoesNotExist
from django.contrib.auth.decorators import login_required from django.contrib.auth.decorators import login_required
from django.contrib.auth.decorators import permission_required from django.contrib.auth.decorators import permission_required
from django.core.exceptions import ValidationError from django.core.exceptions import ValidationError
from django.utils.translation import ugettext_lazy as _
from django.utils import timezone from django.utils import timezone
from django.contrib import messages from django.contrib import messages
from django.core.paginator import Paginator, EmptyPage, PageNotAnInteger from django.core.paginator import Paginator, EmptyPage, PageNotAnInteger
@ -233,7 +234,7 @@ def click_fatlink_view(request, token, hash, fatname):
try: try:
fat.full_clean() fat.full_clean()
fat.save() fat.save()
messages.success(request, 'Fleet participation registered.') messages.success(request, _('Fleet participation registered.'))
except ValidationError as e: except ValidationError as e:
err_messages = [] err_messages = []
for errorname, message in e.message_dict.items(): 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} 'character_name': token.character_name}
return render(request, 'fleetactivitytracking/characternotexisting.html', context=context) return render(request, 'fleetactivitytracking/characternotexisting.html', context=context)
else: else:
messages.error(request, 'FAT link has expired.') messages.error(request, _('FAT link has expired.'))
except (ObjectDoesNotExist, KeyError): except (ObjectDoesNotExist, KeyError):
messages.error(request, 'Invalid FAT link.') messages.error(request, _('Invalid FAT link.'))
return redirect('auth_fatlink_view') return redirect('auth_fatlink_view')

View File

@ -14,6 +14,7 @@ from groupmanagement.models import GroupRequest
from authentication.models import AuthServicesInfo from authentication.models import AuthServicesInfo
from authentication.managers import UserState from authentication.managers import UserState
from eveonline.managers import EveManager from eveonline.managers import EveManager
from django.utils.translation import ugettext_lazy as _
import logging import logging
@ -119,12 +120,12 @@ def group_membership_remove(request, group_id, user_id):
# Remove group from user # Remove group from user
user.groups.remove(group) user.groups.remove(group)
logger.info("User %s removed user %s from group %s" % (request.user, user, 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: except ObjectDoesNotExist:
messages.warning(request, "User does not exist in that group") messages.warning(request, _("User does not exist in that group"))
except ObjectDoesNotExist: except ObjectDoesNotExist:
messages.warning(request, "Group does not exist") messages.warning(request, _("Group does not exist"))
return redirect('auth_group_membership_list', group_id) 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", notify(group_request.user, "Group Application Accepted", level="success",
message="Your application to %s has been accepted." % group_request.group) message="Your application to %s has been accepted." % group_request.group)
messages.success(request, 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: except PermissionDenied as p:
logger.warning("User %s attempted to accept group join request %s but permission was denied" % logger.warning("User %s attempted to accept group join request %s but permission was denied" %
(request.user, group_request_id)) (request.user, group_request_id))
raise p raise p
except: except:
messages.error(request, 'An unhandled error occurred while processing the application from %s to %s.' % ( 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})
group_request.main_char, group_request.group))
logger.exception("Unhandled exception occurred while user %s attempting to accept grouprequest id %s." % ( logger.exception("Unhandled exception occurred while user %s attempting to accept grouprequest id %s." % (
request.user, group_request_id)) request.user, group_request_id))
pass pass
@ -182,15 +182,14 @@ def group_reject_request(request, group_request_id):
notify(group_request.user, "Group Application Rejected", level="danger", notify(group_request.user, "Group Application Rejected", level="danger",
message="Your application to %s has been rejected." % group_request.group) message="Your application to %s has been rejected." % group_request.group)
messages.success(request, 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: except PermissionDenied as p:
logger.warning("User %s attempted to reject group join request %s but permission was denied" % logger.warning("User %s attempted to reject group join request %s but permission was denied" %
(request.user, group_request_id)) (request.user, group_request_id))
raise p raise p
except: except:
messages.error(request, 'An unhandled error occured while processing the application from %s to %s.' % ( 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})
group_request.main_char, group_request.group))
logger.exception("Unhandled exception occured while user %s attempting to reject group request id %s" % ( logger.exception("Unhandled exception occured while user %s attempting to reject group request id %s" % (
request.user, group_request_id)) request.user, group_request_id))
pass pass
@ -218,14 +217,14 @@ def group_leave_accept_request(request, group_request_id):
notify(group_request.user, "Group Leave Request Accepted", level="success", notify(group_request.user, "Group Leave Request Accepted", level="success",
message="Your request to leave %s has been accepted." % group_request.group) message="Your request to leave %s has been accepted." % group_request.group)
messages.success(request, 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: except PermissionDenied as p:
logger.warning("User %s attempted to accept group leave request %s but permission was denied" % logger.warning("User %s attempted to accept group leave request %s but permission was denied" %
(request.user, group_request_id)) (request.user, group_request_id))
raise p raise p
except: except:
messages.error(request, 'An unhandled error occured while processing the application from %s to leave %s.' % ( messages.error(request, _('An unhandled error occured while processing the application from %(mainchar)s to leave %(group)s.') % {
group_request.main_char, group_request.group)) "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" % ( logger.exception("Unhandled exception occured while user %s attempting to accept group leave request id %s" % (
request.user, group_request_id)) request.user, group_request_id))
pass pass
@ -250,15 +249,15 @@ def group_leave_reject_request(request, group_request_id):
request.user, group_request.user, group_request.group.name)) request.user, group_request.user, group_request.group.name))
notify(group_request.user, "Group Leave Request Rejected", level="danger", notify(group_request.user, "Group Leave Request Rejected", level="danger",
message="Your request to leave %s has been rejected." % group_request.group) message="Your request to leave %s has been rejected." % group_request.group)
messages.success(request, 'Rejected application from %s to leave %s.' % ( messages.success(request, _('Rejected application from %(mainchar)s to leave %(group)s.') % {
group_request.main_char, group_request.group)) "mainchar": group_request.main_char, "group": group_request.group})
except PermissionDenied as p: except PermissionDenied as p:
logger.warning("User %s attempted to reject group leave request %s but permission was denied" % logger.warning("User %s attempted to reject group leave request %s but permission was denied" %
(request.user, group_request_id)) (request.user, group_request_id))
raise p raise p
except: except:
messages.error(request, 'An unhandled error occured while processing the application from %s to leave %s.' % ( messages.error(request, _('An unhandled error occured while processing the application from %(mainchar)s to leave %(group)s.') % {
group_request.main_char, group_request.group)) "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" % ( logger.exception("Unhandled exception occured while user %s attempting to reject group leave request id %s" % (
request.user, group_request_id)) request.user, group_request_id))
pass pass
@ -296,7 +295,7 @@ def group_request_add(request, group_id):
if not GroupManager.joinable_group(group): if not GroupManager.joinable_group(group):
logger.warning("User %s attempted to join group id %s but it is not a joinable group" % logger.warning("User %s attempted to join group id %s but it is not a joinable group" %
(request.user, group_id)) (request.user, group_id))
messages.warning(request, "You cannot join that group") messages.warning(request, _("You cannot join that group"))
return redirect('auth_groups') return redirect('auth_groups')
if not request.user.has_perm('groupmanagement.request_groups') and not group.authgroup.public: 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 # 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.leave_request = False
grouprequest.save() grouprequest.save()
logger.info("Created group request for user %s to group %s" % (request.user, Group.objects.get(id=group_id))) 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") return redirect("auth_groups")
@ -328,12 +327,12 @@ def group_request_leave(request, group_id):
if not GroupManager.joinable_group(group): if not GroupManager.joinable_group(group):
logger.warning("User %s attempted to leave group id %s but it is not a joinable group" % logger.warning("User %s attempted to leave group id %s but it is not a joinable group" %
(request.user, group_id)) (request.user, group_id))
messages.warning(request, "You cannot leave that group") messages.warning(request, _("You cannot leave that group"))
return redirect('auth_groups') return redirect('auth_groups')
if group not in request.user.groups.all(): if group not in request.user.groups.all():
logger.debug("User %s attempted to leave group id %s but they are not a member" % logger.debug("User %s attempted to leave group id %s but they are not a member" %
(request.user, group_id)) (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') return redirect('auth_groups')
if group.authgroup.open: if group.authgroup.open:
logger.info("%s leaving %s as is an open group" % (request.user, group)) 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.leave_request = True
grouprequest.save() grouprequest.save()
logger.info("Created group leave request for user %s to group %s" % (request.user, Group.objects.get(id=group_id))) 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") return redirect("auth_groups")

Binary file not shown.

File diff suppressed because it is too large Load Diff

View File

@ -3,6 +3,7 @@ from django.shortcuts import render, get_object_or_404, redirect
from .models import Notification from .models import Notification
from django.contrib.auth.decorators import login_required from django.contrib.auth.decorators import login_required
from django.contrib import messages from django.contrib import messages
from django.utils.translation import ugettext_lazy as _
import logging import logging
logger = logging.getLogger(__name__) logger = logging.getLogger(__name__)
@ -33,7 +34,7 @@ def notification_view(request, notif_id):
else: else:
logger.warn( logger.warn(
"User %s not authorized to view notif_id %s belonging to user %s" % (request.user, notif_id, notif.user)) "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') return redirect('auth_notification_list')
@ -45,11 +46,11 @@ def remove_notification(request, notif_id):
if Notification.objects.filter(id=notif_id).exists(): if Notification.objects.filter(id=notif_id).exists():
notif.delete() notif.delete()
logger.info("Deleting notif id %s by user %s" % (notif_id, request.user)) logger.info("Deleting notif id %s by user %s" % (notif_id, request.user))
messages.success(request, 'Deleted notification.') messages.success(request, _('Deleted notification.'))
else: else:
logger.error( logger.error(
"Unable to delete notif id %s for user %s - notif matching id not found." % (notif_id, request.user)) "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') return redirect('auth_notification_list')
@ -57,7 +58,7 @@ def remove_notification(request, notif_id):
def mark_all_read(request): def mark_all_read(request):
logger.debug('mark all notifications read called by user %s' % request.user) logger.debug('mark all notifications read called by user %s' % request.user)
Notification.objects.filter(user=request.user).update(viewed=True) 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') return redirect('auth_notification_list')
@ -65,5 +66,5 @@ def mark_all_read(request):
def delete_all_read(request): def delete_all_read(request):
logger.debug('delete all read notifications called by user %s' % request.user) logger.debug('delete all read notifications called by user %s' % request.user)
Notification.objects.filter(user=request.user).filter(viewed=True).delete() 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') return redirect('auth_notification_list')

View File

@ -2,6 +2,7 @@ from __future__ import unicode_literals
from django.contrib.auth.decorators import login_required from django.contrib.auth.decorators import login_required
from django.contrib.auth.decorators import permission_required from django.contrib.auth.decorators import permission_required
from django.utils import timezone 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 get_object_or_404
from django.shortcuts import render, redirect from django.shortcuts import render, redirect
from django.contrib import messages from django.contrib import messages
@ -53,7 +54,7 @@ def add_optimer_view(request):
op.eve_character = character op.eve_character = character
op.save() op.save()
logger.info("User %s created op timer with name %s" % (request.user, op.operation_name)) 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/") return redirect("/optimer/")
else: else:
logger.debug("Returning new opForm") logger.debug("Returning new opForm")
@ -72,7 +73,7 @@ def remove_optimer(request, optimer_id):
op = optimer.objects.get(id=optimer_id) op = optimer.objects.get(id=optimer_id)
op.delete() op.delete()
logger.info("Deleting optimer id %s by user %s" % (optimer_id, request.user)) 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: else:
logger.error("Unable to delete optimer id %s for user %s - operation matching id not found." % ( logger.error("Unable to delete optimer id %s for user %s - operation matching id not found." % (
optimer_id, request.user)) optimer_id, request.user))
@ -101,7 +102,7 @@ def edit_optimer(request, optimer_id):
op.eve_character = character op.eve_character = character
logger.info("User %s updating optimer id %s " % (request.user, optimer_id)) logger.info("User %s updating optimer id %s " % (request.user, optimer_id))
op.save() 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") return redirect("auth_optimer_view")
else: else:
data = { data = {

View File

@ -20,7 +20,7 @@
{% endif %} {% endif %}
{% if request.user.is_superuser %} {% if request.user.is_superuser %}
<div class="text-center" style="padding-top:5px;"> <div class="text-center" style="padding-top:5px;">
<a type="button" class="btn btn-success" href="{% url 'auth_discord_add_bot' %}">{% trans "Link Discord" %} Server</a> <a type="button" class="btn btn-success" href="{% url 'auth_discord_add_bot' %}">{% trans "Link Discord Server" %}</a>
</div> </div>
{% endif %} {% endif %}
</td> </td>

View File

@ -3,6 +3,7 @@ from __future__ import unicode_literals
from django.contrib import messages from django.contrib import messages
from django.contrib.auth.decorators import login_required from django.contrib.auth.decorators import login_required
from django.shortcuts import render from django.shortcuts import render
from django.utils.translation import ugettext_lazy as _
from alliance_auth.hooks import get_hooks from alliance_auth.hooks import get_hooks
from authentication.decorators import members_and_blues from authentication.decorators import members_and_blues
@ -54,7 +55,7 @@ def services_view(request):
try: try:
char = EveCharacter.objects.get(character_id=auth.main_char_id) char = EveCharacter.objects.get(character_id=auth.main_char_id)
except EveCharacter.DoesNotExist: 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': []} context = {'service_ctrls': []}
for fn in get_hooks('services_hook'): for fn in get_hooks('services_hook'):

View File

@ -21,7 +21,7 @@ class SrpFleetUserRequestForm(forms.Form):
def clean_killboard_link(self): def clean_killboard_link(self):
data = self.cleaned_data['killboard_link'] data = self.cleaned_data['killboard_link']
if "zkillboard.com" not in data: 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 return data

View File

@ -14,6 +14,7 @@ from srp.form import SrpFleetMainUpdateForm
from services.managers.srp_manager import srpManager from services.managers.srp_manager import srpManager
from notifications import notify from notifications import notify
from django.utils import timezone from django.utils import timezone
from django.utils.translation import ugettext_lazy as _
from authentication.decorators import members_and_blues from authentication.decorators import members_and_blues
import uuid import uuid
@ -93,7 +94,7 @@ def srp_fleet_add_view(request):
completed = True completed = True
completed_srp_code = srp_fleet_main.fleet_srp_code 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)) 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: else:
logger.debug("Returning blank SrpFleetMainForm") logger.debug("Returning blank SrpFleetMainForm")
@ -112,11 +113,11 @@ def srp_fleet_remove(request, fleet_id):
srpfleetmain = SrpFleetMain.objects.get(id=fleet_id) srpfleetmain = SrpFleetMain.objects.get(id=fleet_id)
srpfleetmain.delete() srpfleetmain.delete()
logger.info("SRP Fleet %s deleted by user %s" % (srpfleetmain.fleet_name, request.user)) 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: else:
logger.error( logger.error(
"Unable to delete SRP fleet id %s for user %s - fleet matching id not found." % (fleet_id, request.user)) "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") return redirect("auth_srp_management_view")
@ -129,11 +130,11 @@ def srp_fleet_disable(request, fleet_id):
srpfleetmain.fleet_srp_code = "" srpfleetmain.fleet_srp_code = ""
srpfleetmain.save() srpfleetmain.save()
logger.info("SRP Fleet %s disabled by user %s" % (srpfleetmain.fleet_name, request.user)) 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: else:
logger.error( logger.error(
"Unable to disable SRP fleet id %s for user %s - fleet matching id not found." % (fleet_id, request.user)) "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") 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.fleet_srp_code = random_string(8)
srpfleetmain.save() srpfleetmain.save()
logger.info("SRP Fleet %s enable by user %s" % (srpfleetmain.fleet_name, request.user)) 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: else:
logger.error( logger.error(
"Unable to enable SRP fleet id %s for user %s - fleet matching id not found." % (fleet_id, request.user)) "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") return redirect("auth_srp_management_view")
@ -163,11 +164,11 @@ def srp_fleet_mark_completed(request, fleet_id):
srpfleetmain.fleet_srp_status = "Completed" srpfleetmain.fleet_srp_status = "Completed"
srpfleetmain.save() srpfleetmain.save()
logger.info("Marked SRP Fleet %s as completed by user %s" % (srpfleetmain.fleet_name, request.user)) 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: else:
logger.error("Unable to mark SRP fleet with id %s as completed for user %s - fleet matching id not found." % ( logger.error("Unable to mark SRP fleet with id %s as completed for user %s - fleet matching id not found." % (
fleet_id, request.user)) 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) 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.fleet_srp_status = ""
srpfleetmain.save() srpfleetmain.save()
logger.info("Marked SRP Fleet %s as incomplete for user %s" % (fleet_id, request.user)) 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) return redirect("auth_srp_fleet_view", fleet_id)
else: else:
logger.error("Unable to mark SRP Fleet id %s as incomplete for user %s - fleet matching id not found." % ( logger.error("Unable to mark SRP Fleet id %s as incomplete for user %s - fleet matching id not found." % (
fleet_id, request.user)) 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') return redirect('auth_srp_management_view')
@ -224,7 +225,7 @@ def srp_request_view(request, fleet_srp):
request.user, srp_request.killboard_link)) request.user, srp_request.killboard_link))
# THIS SHOULD BE IN FORM VALIDATION # THIS SHOULD BE IN FORM VALIDATION
messages.error(request, 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") return redirect("auth_srp_management_view")
srp_ship_name = EveManager.get_itemtype(ship_type_id).name srp_ship_name = EveManager.get_itemtype(ship_type_id).name
srp_request.srp_ship_name = srp_ship_name srp_request.srp_ship_name = srp_ship_name
@ -235,7 +236,7 @@ def srp_request_view(request, fleet_srp):
completed = True completed = True
logger.info("Created SRP Request on behalf of user %s for fleet name %s" % ( logger.info("Created SRP Request on behalf of user %s for fleet name %s" % (
request.user, srp_fleet_main.fleet_name)) 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: else:
logger.debug("Returning blank SrpFleetUserRequestForm") 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 stored_fleet_view = srpuserrequest.srp_fleet_main.id
srpuserrequest.delete() srpuserrequest.delete()
logger.info("Deleted SRP request id %s for user %s" % (srp_request_id, request.user)) 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.' % ( messages.success(request, _('Deleted SRP request from %(character)s for their %(ship)s.') % {
srpuserrequest.character, srpuserrequest.srp_ship_name)) "character": srpuserrequest.character, "ship": srpuserrequest.srp_ship_name})
if stored_fleet_view is None: if stored_fleet_view is None:
logger.error("Unable to delete srp request id %s for user %s - request matching id not found." % ( logger.error("Unable to delete srp request id %s for user %s - request matching id not found." % (
srp_request_id, request.user)) 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") return redirect("auth_srp_management_view")
else: else:
return redirect("auth_srp_fleet_view", stored_fleet_view) return redirect("auth_srp_fleet_view", stored_fleet_view)
@ -283,8 +284,8 @@ def srp_request_approve(request, srp_request_id):
srpuserrequest.save() srpuserrequest.save()
logger.info("Approved SRP request id %s for character %s by user %s" % ( logger.info("Approved SRP request id %s for character %s by user %s" % (
srp_request_id, srpuserrequest.character, request.user)) srp_request_id, srpuserrequest.character, request.user))
messages.success(request, 'Approved SRP request from %s for their %s.' % ( messages.success(request, _('Approved SRP request from %(character)s for their %(ship)s.') % {
srpuserrequest.character, srpuserrequest.srp_ship_name)) "character": srpuserrequest.character, "ship": srpuserrequest.srp_ship_name})
notify( notify(
srpuserrequest.character.user, srpuserrequest.character.user,
'SRP Request Approved', 'SRP Request Approved',
@ -295,7 +296,7 @@ def srp_request_approve(request, srp_request_id):
if stored_fleet_view is None: 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." % ( logger.error("Unable to approve srp request id %s on behalf of user %s - request matching id not found." % (
srp_request_id, request.user)) 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") return redirect("auth_srp_management_view")
else: else:
return redirect("auth_srp_fleet_view", stored_fleet_view) return redirect("auth_srp_fleet_view", stored_fleet_view)
@ -314,8 +315,8 @@ def srp_request_reject(request, srp_request_id):
srpuserrequest.save() srpuserrequest.save()
logger.info("SRP request id %s for character %s rejected by %s" % ( logger.info("SRP request id %s for character %s rejected by %s" % (
srp_request_id, srpuserrequest.character, request.user)) srp_request_id, srpuserrequest.character, request.user))
messages.success(request, 'Rejected SRP request from %s for their %s.' % ( messages.success(request, _('Rejected SRP request from %(character)s for their %(ship)s.') % {
srpuserrequest.character, srpuserrequest.srp_ship_name)) "character": srpuserrequest.character, "ship": srpuserrequest.srp_ship_name})
notify( notify(
srpuserrequest.character.user, srpuserrequest.character.user,
'SRP Request Rejected', 'SRP Request Rejected',
@ -327,7 +328,7 @@ def srp_request_reject(request, srp_request_id):
if stored_fleet_view is None: 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." % ( logger.error("Unable to reject SRP request id %s on behalf of user %s - request matching id not found." % (
srp_request_id, request.user)) 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") return redirect("auth_srp_management_view")
else: else:
return redirect("auth_srp_fleet_view", stored_fleet_view) 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: 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)) 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") return redirect("auth_srp_management_view")
if request.method == 'POST': if request.method == 'POST':
@ -353,7 +354,7 @@ def srp_request_update_amount_view(request, fleet_srp_request_id):
srp_request.save() srp_request.save()
logger.info("Updated srp request id %s total to %s by user %s" % ( 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)) 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) return redirect("auth_srp_fleet_view", srp_request.srp_fleet_main.id)
else: else:
logger.debug("Returning blank SrpFleetUpdateCostForm") 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.fleet_srp_aar_link = form.cleaned_data['fleet_aar_link']
srpfleetmain.save() srpfleetmain.save()
logger.info("User %s edited SRP Fleet %s" % (request.user, srpfleetmain.fleet_name)) 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") return redirect("auth_srp_management_view")
else: else:
logger.debug("Returning blank SrpFleetMainUpdateForm") logger.debug("Returning blank SrpFleetMainUpdateForm")
@ -389,5 +390,5 @@ def srp_fleet_edit_view(request, fleet_id):
else: else:
logger.error( logger.error(
"Unable to edit srp fleet id %s for user %s - fleet matching id not found." % (fleet_id, request.user)) "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") return redirect("auth_srp_management_view")

View File

@ -65,7 +65,7 @@
{% endif %} {% endif %}
{% if user.is_authenticated %} {% if user.is_authenticated %}
{% if user.is_staff %} {% if user.is_staff %}
<li><a href="{% url 'admin:index' %}">Admin</a></li> <li><a href="{% url 'admin:index' %}">{% trans "Admin" %}</a></li>
{% endif %} {% endif %}
<li><a href="{% url 'auth_logout_user' %}">{% trans "Logout" %}</a></li> <li><a href="{% url 'auth_logout_user' %}">{% trans "Logout" %}</a></li>
{% else %} {% else %}
@ -162,7 +162,7 @@
<li> <li>
<a class="{% navactive request 'auth_fatlink_view auth_fatlink_view_statistics auth_fatlink_view_statistics_month auth_fatlink_view_personal_statistics auth_fatlink_view_personal_statistics_year auth_fatlink_view_personal_statistics_month auth_fatlink_view_user_statistics_month auth_create_fatlink_view auth_modify_fatlink_view auth_click_fatlink_view' %}" href="{% url 'auth_fatlink_view' %}"> <a class="{% navactive request 'auth_fatlink_view auth_fatlink_view_statistics auth_fatlink_view_statistics_month auth_fatlink_view_personal_statistics auth_fatlink_view_personal_statistics_year auth_fatlink_view_personal_statistics_month auth_fatlink_view_user_statistics_month auth_create_fatlink_view auth_modify_fatlink_view auth_click_fatlink_view' %}" href="{% url 'auth_fatlink_view' %}">
<i class="fa fa-users fa-lightbulb-o fa-fw grayiconecolor"></i> Fleet Activity Tracking <i class="fa fa-users fa-lightbulb-o fa-fw grayiconecolor"></i>{% trans " Fleet Activity Tracking" %}
</a> </a>
</li> </li>

View File

@ -11,7 +11,7 @@
<meta name="viewport" content="width=device-width, initial-scale=1"> <meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="description" content=""> <meta name="description" content="">
<meta name="author" content=""> <meta name="author" content="">
<title>{{ SITE_NAME }} - Login</title> <title>{{ SITE_NAME }} - {% trans "Login" %}</title>
{% include 'bundles/bootstrap-css.html' %} {% include 'bundles/bootstrap-css.html' %}
{% include 'bundles/fontawesome.html' %} {% include 'bundles/fontawesome.html' %}

View File

@ -10,7 +10,7 @@
<meta name="viewport" content="width=device-width, initial-scale=1"> <meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="description" content=""> <meta name="description" content="">
<meta name="author" content=""> <meta name="author" content="">
<title>{{ SITE_NAME }} - Login</title> <title>{{ SITE_NAME }} - {% trans "Registration" %}</title>
{% include 'bundles/bootstrap-css.html' %} {% include 'bundles/bootstrap-css.html' %}
{% include 'bundles/fontawesome.html' %} {% include 'bundles/fontawesome.html' %}

View File

@ -24,9 +24,9 @@
</p> </p>
{% endif %} {% endif %}
<p class="text-center"> <p class="text-center">
{% blocktrans %}<a target="_blank" <a target="_blank"
href="https://community.eveonline.com/support/api-key/CreatePredefined?accessMask={{MEMBER_API_MASK}}">Create href="https://community.eveonline.com/support/api-key/CreatePredefined?accessMask={{MEMBER_API_MASK}}">{% trans "Create
a full API key</a>{% endblocktrans %} a full API key" %}</a>
</p> </p>
<p class="text-center"> <p class="text-center">
{% blocktrans %}Blue API keys require access mask {{BLUE_API_MASK}} or greater for services.{% endblocktrans %} {% blocktrans %}Blue API keys require access mask {{BLUE_API_MASK}} or greater for services.{% endblocktrans %}
@ -37,9 +37,9 @@
</p> </p>
{% endif %} {% endif %}
<p class="text-center"> <p class="text-center">
{% blocktrans %}<a target="_blank" <a target="_blank"
href="https://community.eveonline.com/support/api-key/CreatePredefined?accessMask={{BLUE_API_MASK}}">Create href="https://community.eveonline.com/support/api-key/CreatePredefined?accessMask={{BLUE_API_MASK}}">{% trans "Create
a blue key</a>{% endblocktrans %} a blue key" %}</a>
</p> </p>
<form class="form-signin" role="form" action="{% url 'auth_add_api_key' %}" method="POST"> <form class="form-signin" role="form" action="{% url 'auth_add_api_key' %}" method="POST">

View File

@ -4,7 +4,7 @@
{% load i18n %} {% load i18n %}
{% get_current_language as LANGUAGE_CODE %} {% get_current_language as LANGUAGE_CODE %}
{% block title %}Alliance Auth - Fleet Operation Create{% endblock %} {% block title %}{% trans "Alliance Auth - Fleet Operation Create" %}{% endblock %}
{% block page_title %}{% trans "Create Operation" %}{% endblock page_title %} {% block page_title %}{% trans "Create Operation" %}{% endblock page_title %}
{% block extra_css %} {% block extra_css %}

View File

@ -4,7 +4,7 @@
{% load i18n %} {% load i18n %}
{% get_current_language as LANGUAGE_CODE %} {% get_current_language as LANGUAGE_CODE %}
{% block title %}Alliance Auth - Structure Timer Create{% endblock %} {% block title %}{% trans "Alliance Auth - Structure Timer Create" %}{% endblock %}
{% block page_title %}{% trans "Timer Create" %}{% endblock page_title %} {% block page_title %}{% trans "Timer Create" %}{% endblock page_title %}
{% block extra_css %} {% block extra_css %}

View File

@ -1,13 +1,14 @@
{% extends 'public/base.html' %} {% extends 'public/base.html' %}
{% load staticfiles %} {% load staticfiles %}
{% block title %}Verify API Ownership{% endblock %} {% load i18n %}
{% block page_title%}Verify API Ownership{% endblock %} {% block title %}{% trans "Verify API Ownership" %}{% endblock %}
{% block page_title%}{% trans "Verify API Ownership" %}{% endblock %}
{% block content %} {% block content %}
<div class="col-lg-12"> <div class="col-lg-12">
<h1 class="page-header text-center">Verify API Ownership</div> <h1 class="page-header text-center">{% trans "Verify API Ownership" %}</div>
<div class="col-xs-4 col-xs-offset-4"> <div class="col-xs-4 col-xs-offset-4">
<div class="panel panel-default> <div class="panel panel-default>
<div class="panel-header">Please authenticate as a character on API {{ api.api_id }} to prove ownership.</div> <div class="panel-header">{% blocktrans %}Please authenticate as a character on API {{ api.api_id }} to prove ownership.{% endblocktrans %}</div>
<div class="panel-body"> <div class="panel-body">
<div class="text-center"> <div class="text-center">
<a href="{% url 'auth_api_sso' api.api_id %}"> <a href="{% url 'auth_api_sso' api.api_id %}">

View File

@ -35,14 +35,14 @@
{% endif %} {% endif %}
</div> </div>
{% else %} {% else %}
<div class="alert alert-danger" role="alert">Missing main character model.</div> <div class="alert alert-danger" role="alert">{% trans "Missing main character model." %}</div>
{% endif %} {% endif %}
<div class="clearfix"></div> <div class="clearfix"></div>
<div class="col-sm-6"> <div class="col-sm-6">
<a href="{% url 'auth_add_api_key' %}" class="btn btn-block btn-success" label="Add API Key">Add API Key</a> <a href="{% url 'auth_add_api_key' %}" class="btn btn-block btn-success" label="Add API Key">{% trans "Add API Key" %}</a>
</div> </div>
<div class="col-sm-6"> <div class="col-sm-6">
<a href="{% url 'auth_characters' %}" class="btn btn-block btn-info" label="Change Main Character">Change Main</a> <a href="{% url 'auth_characters' %}" class="btn btn-block btn-info" label="Change Main Character">{% trans "Change Main" %}</a>
</div> </div>
</div> </div>
</div> </div>

View File

@ -78,7 +78,7 @@
{% endfor %} {% endfor %}
{% else %} {% else %}
<h3>There seems to be no Doctrines in here at the moment!</h3> <h3>{% trans "There seems to be no Doctrines in here at the moment!" %}</h3>
{% endif %} {% endif %}
</div> </div>
</div> </div>

View File

@ -42,7 +42,7 @@
{% endfor %} {% endfor %}
</table> </table>
{% else %} {% else %}
<div class="alert alert-warning text-center">No group add requests.</div> <div class="alert alert-warning text-center">{% trans "No group add requests." %}</div>
{% endif %} {% endif %}
</div> </div>
</div> </div>
@ -73,7 +73,7 @@
{% endfor %} {% endfor %}
</table> </table>
{% else %} {% else %}
<div class="alert alert-warning text-center">No group leave requests.</div> <div class="alert alert-warning text-center">{% trans "No group leave requests." %}</div>
{% endif %} {% endif %}
</div> </div>
</div> </div>

View File

@ -11,7 +11,7 @@
<span class="icon-bar"></span> <span class="icon-bar"></span>
<span class="icon-bar"></span> <span class="icon-bar"></span>
</button> </button>
<a class="navbar-brand" href="#">Group Management</a> <a class="navbar-brand" href="#">{% trans "Group Management" %}</a>
</div> </div>
<div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1"> <div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1">
<ul class="nav navbar-nav"> <ul class="nav navbar-nav">

View File

@ -37,7 +37,7 @@
{% endfor %} {% endfor %}
</table> </table>
{% else %} {% else %}
<div class="alert alert-warning text-center">No group members to list.</div> <div class="alert alert-warning text-center">{% trans "No group members to list." %}</div>
{% endif %} {% endif %}
</div> </div>
</div> </div>

View File

@ -47,7 +47,7 @@
{% endfor %} {% endfor %}
</table> </table>
{% else %} {% else %}
<div class="alert alert-warning text-center">No groups to list.</div> <div class="alert alert-warning text-center">{% trans "No groups to list." %}</div>
{% endif %} {% endif %}
</div> </div>
</div> </div>

View File

@ -47,7 +47,7 @@
{% endfor %} {% endfor %}
</table> </table>
{% else %} {% else %}
<div class="alert alert-warning text-center">No groups available.</div> <div class="alert alert-warning text-center">{% trans "No groups available." %}</div>
{% endif %} {% endif %}
</div> </div>

View File

@ -111,7 +111,7 @@
{% endfor %} {% endfor %}
</table> </table>
{% else %} {% else %}
<div class="alert alert-warning text-center">No pending applications.</div> <div class="alert alert-warning text-center">{% trans "No pending applications." %}</div>
{% endif %} {% endif %}
</div> </div>
</div> </div>
@ -155,7 +155,7 @@
{% endfor %} {% endfor %}
</table> </table>
{% else %} {% else %}
<div class="alert alert-warning text-center">No reviewed applications.</div> <div class="alert alert-warning text-center">{% trans "No reviewed applications." %}</div>
{% endif %} {% endif %}
</div> </div>
</div> </div>

View File

@ -64,7 +64,7 @@
<div class="modal-content"> <div class="modal-content">
<div class="modal-header"> <div class="modal-header">
<button type="button" class="close" data-dismiss="modal"><span aria-hidden="true">&times;</span><span <button type="button" class="close" data-dismiss="modal"><span aria-hidden="true">&times;</span><span
class="sr-only">Close</span></button> class="sr-only">{% trans "Close" %}</span></button>
<h4 class="modal-title" id="myModalLabel">{% trans "Application Search" %}</h4> <h4 class="modal-title" id="myModalLabel">{% trans "Application Search" %}</h4>
</div> </div>
<div class="modal-body"> <div class="modal-body">

View File

@ -4,7 +4,7 @@
{% load i18n %} {% load i18n %}
{% load eveonline_extras %} {% load eveonline_extras %}
{% block title %}Alliance Auth - View Application{% endblock %} {% block title %}Alliance Auth - {% trans "View Application" %}{% endblock %}
{% block page_title %}{% trans "View Application" %}{% endblock page_title %} {% block page_title %}{% trans "View Application" %}{% endblock page_title %}
{% block extra_css %}{% endblock extra_css %} {% block extra_css %}{% endblock extra_css %}
@ -119,7 +119,7 @@
<a class="collapsed" data-toggle="collapse" data-parent="#accordion" <a class="collapsed" data-toggle="collapse" data-parent="#accordion"
href="#collapseThree" aria-expanded="false" href="#collapseThree" aria-expanded="false"
aria-controls="collapseThree"> aria-controls="collapseThree">
Comments - {{ comments|length }} {% blocktrans %}Comments - {{ comments|length }}{% endblocktrans %}
</a> </a>
</h4> </h4>
</div> </div>

View File

@ -14,8 +14,8 @@
<li class="active"><a data-toggle="tab" href="#unread">{% trans "Unread" %} <b>({{unread|length}})</b></a></li> <li class="active"><a data-toggle="tab" href="#unread">{% trans "Unread" %} <b>({{unread|length}})</b></a></li>
<li><a data-toggle="tab" href="#read">{% trans "Read" %} <b>({{read|length}})</b></a></li> <li><a data-toggle="tab" href="#read">{% trans "Read" %} <b>({{read|length}})</b></a></li>
<div class="text-right"> <div class="text-right">
<a href="{% url 'auth_mark_all_notifications_read' %}" class="btn btn-primary">Mark All Read</a> <a href="{% url 'auth_mark_all_notifications_read' %}" class="btn btn-primary">{% trans "Mark All Read" %}</a>
<a href="{% url 'auth_delete_all_read_notifications' %}" class="btn btn-danger">Delete All Read</a> <a href="{% url 'auth_delete_all_read_notifications' %}" class="btn btn-danger">{% trans "Delete All Read" %}</a>
</div> </div>
</ul> </ul>
<div class="tab-content"> <div class="tab-content">
@ -45,7 +45,7 @@
{% endfor %} {% endfor %}
</table> </table>
{% else %} {% else %}
<div class="alert alert-warning text-center">No unread notifications.</div> <div class="alert alert-warning text-center">{% trans "No unread notifications." %}</div>
{% endif %} {% endif %}
</div> </div>
</div> </div>
@ -76,7 +76,7 @@
{% endfor %} {% endfor %}
</table> </table>
{% else %} {% else %}
<div class="alert alert-warning text-center">No read notifications.</div> <div class="alert alert-warning text-center">{% trans "No read notifications." %}</div>
{% endif %} {% endif %}
</div> </div>
</div> </div>

View File

@ -72,7 +72,7 @@
</tr> </tr>
</table> </table>
{% else %} {% else %}
<br /><div class="alert alert-warning text-center">No fleet operations found.</div> <br /><div class="alert alert-warning text-center">{% trans "No fleet operations found." %}</div>
{% endif %} {% endif %}
</div> </div>

View File

@ -1,11 +1,12 @@
{% extends "public/base.html" %} {% extends "public/base.html" %}
{% load staticfiles %} {% load staticfiles %}
{% load i18n %}
{% block page_title %}Credentials{% endblock page_title %} {% block page_title %}Credentials{% endblock page_title %}
{% block title %}Credentials{% endblock title%} {% block title %}{% trans "Credentials" %}{% endblock title%}
{% block content %} {% block content %}
<div class="col-lg-12"> <div class="col-lg-12">
<h1 class="page-header text-center">{{ service }} Credentials</h1> <h1 class="page-header text-center">{% blocktrans %}{{ service }} Credentials{% endblocktrans %}</h1>
<div class="container-fluid"> <div class="container-fluid">
<div class="col-lg-4 col-lg-offset-4"> <div class="col-lg-4 col-lg-offset-4">
<form class="form-signin"> <form class="form-signin">
@ -16,7 +17,7 @@
</div> </div>
{% endfor %} {% endfor %}
</form> </form>
<a href="{% url 'auth_services' %}" class="btn btn-lg btn-block btn-primary" title="Continue">Continue</a> <a href="{% url 'auth_services' %}" class="btn btn-lg btn-block btn-primary" title="Continue">{% trans "Continue" %}</a>
</div> </div>
</div> </div>
</div> </div>

View File

@ -110,7 +110,7 @@
{% endfor %} {% endfor %}
</table> </table>
{% else %} {% else %}
<div class="alert alert-warning text-center">No SRP requests for this fleet.</div> <div class="alert alert-warning text-center">{% trans "No SRP requests for this fleet." %}</div>
{% endif %} {% endif %}
</div> </div>
</div> </div>

View File

@ -40,7 +40,7 @@
<th class="text-center">{% trans "Fleet SRP Code" %}</th> <th class="text-center">{% trans "Fleet SRP Code" %}</th>
<th class="text-center">{% trans "Fleet ISK Cost" %}</th> <th class="text-center">{% trans "Fleet ISK Cost" %}</th>
<th class="text-center">{% trans "SRP Status" %}</th> <th class="text-center">{% trans "SRP Status" %}</th>
<th class="text-center">{% trans "Pending Requests" %}</th> <th class="text-center">{% trans "Pending Requests" %}</th>
<th class="text-center">{% trans "Actions" %}</th> <th class="text-center">{% trans "Actions" %}</th>
</tr> </tr>
{% for srpfleet in srpfleets %} {% for srpfleet in srpfleets %}
@ -117,7 +117,7 @@
{% endfor %} {% endfor %}
</table> </table>
{% else %} {% else %}
<div class="alert alert-warning text-center">No SRP fleets created.</div> <div class="alert alert-warning text-center">{% trans "No SRP fleets created." %}</div>
{% endif %} {% endif %}
</div> </div>
</div> </div>

View File

@ -290,7 +290,7 @@
{% endfor %} {% endfor %}
</table> </table>
{% else %} {% else %}
<div class="alert alert-warning text-center">No upcoming timers.</div> <div class="alert alert-warning text-center">{% trans "No upcoming timers." %}</div>
{% endif %} {% endif %}
<h4><b>{% trans "Past Timers" %}</b></h4> <h4><b>{% trans "Past Timers" %}</b></h4>
{% if past_timers %} {% if past_timers %}
@ -426,7 +426,7 @@
{% endfor %} {% endfor %}
</table> </table>
{% else %} {% else %}
<div class="alert alert-warning text-center">No past timers.</div> <div class="alert alert-warning text-center">{% trans "No past timers." %}</div>
{% endif %} {% endif %}
</div> </div>

View File

@ -7,6 +7,7 @@ from django.contrib.auth.decorators import permission_required
from django.shortcuts import get_object_or_404 from django.shortcuts import get_object_or_404
from authentication.decorators import members_and_blues from authentication.decorators import members_and_blues
from django.utils import timezone from django.utils import timezone
from django.utils.translation import ugettext_lazy as _
from django.contrib import messages from django.contrib import messages
from authentication.states import MEMBER_STATE, BLUE_STATE from authentication.states import MEMBER_STATE, BLUE_STATE
from authentication.models import AuthServicesInfo from authentication.models import AuthServicesInfo
@ -91,7 +92,7 @@ def add_timer_view(request):
timer.user = request.user timer.user = request.user
timer.save() timer.save()
logger.info("Created new timer in %s at %s by user %s" % (timer.system, timer.eve_time, request.user)) logger.info("Created new timer in %s at %s by user %s" % (timer.system, timer.eve_time, request.user))
messages.success(request, 'Added new timer in %s at %s.' % (timer.system, timer.eve_time)) messages.success(request, _('Added new timer in %(system)s at %(time)s.') % {"system": timer.system, "time": timer.eve_time})
return redirect("/timers/") return redirect("/timers/")
else: else:
logger.debug("Returning new TimerForm") logger.debug("Returning new TimerForm")
@ -110,11 +111,11 @@ def remove_timer(request, timer_id):
timer = Timer.objects.get(id=timer_id) timer = Timer.objects.get(id=timer_id)
timer.delete() timer.delete()
logger.debug("Deleting timer id %s by user %s" % (timer_id, request.user)) logger.debug("Deleting timer id %s by user %s" % (timer_id, request.user))
messages.success(request, 'Deleted timer in %s at %s.' % (timer.system, timer.eve_time)) messages.success(request, _('Deleted timer in %(system)s at %(time)s.') % (timer.system, timer.eve_time))
else: else:
logger.error( logger.error(
"Unable to delete timer id %s for user %s - timer matching id not found." % (timer_id, request.user)) "Unable to delete timer id %s for user %s - timer matching id not found." % (timer_id, request.user))
messages.error(request, 'Unable to locate timer with ID %s.' % timer_id) messages.error(request, _('Unable to locate timer with ID %(timerid)s.') % {"timerid": timer_id})
return redirect("auth_timer_view") return redirect("auth_timer_view")
@ -150,7 +151,7 @@ def edit_timer(request, timer_id):
timer.eve_character = character timer.eve_character = character
timer.eve_corp = corporation timer.eve_corp = corporation
logger.info("User %s updating timer id %s " % (request.user, timer_id)) logger.info("User %s updating timer id %s " % (request.user, timer_id))
messages.success(request, 'Saved changes to the timer.') messages.success(request, _('Saved changes to the timer.'))
timer.save() timer.save()
return redirect("auth_timer_view") return redirect("auth_timer_view")
else: else: