Skip to content
This repository was archived by the owner on Apr 11, 2021. It is now read-only.
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions bin/locale.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
./manage.py makemessages -v 1 --all -e html -i "*.txt" -i "*.json" -i "*.md" -i "celery*" -i "*.sh" -i "medias" -i "final" -i "mails_debug"
55 changes: 28 additions & 27 deletions coach/menu.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@
from django.core.urlresolvers import reverse
from club.models import ClubMembership
from users.notification import UserNotifications
from django.utils.translation import ugettext_lazy as _

def add_pages(request):
'''
Expand All @@ -19,31 +20,31 @@ def _ext(url, caption):

def _build_club_generic():
return {
'caption' : 'Les clubs',
'caption' : _('Clubs'),
'menu': [
_p('club-list', u'Voir les clubs'),
_p('club-landing', u'Créer un club'),
_p('club-list', _('View clubs')),
_p('club-landing', _('Create a club')),
],
'icon' : 'icon-star',
}

def _build_help():
# Build help menu with contact & news
submenu = {
'caption' : 'Aide',
'caption' : _('Help'),
'menu' : [],
'icon' : 'icon-help-circled',
}
submenu['menu'].append(_p(('page-list', 'help'), 'Aide', lazy=True))
submenu['menu'].append(_p('vma-glossary', 'Glossaire'))
submenu['menu'].append(_p(('page-list', 'news'), 'News', lazy=True))
submenu['menu'].append(_p(('contact_form',), 'Contact', lazy=True))
submenu['menu'].append(_p(('page-list', 'help'), _('Help'), lazy=True))
submenu['menu'].append(_p('vma-glossary', _('Glossary')))
submenu['menu'].append(_p(('page-list', 'news'), _('News'), lazy=True))
submenu['menu'].append(_p(('contact_form',), _('Contact'), lazy=True))
return submenu

menu = []
if request.user.is_authenticated():
menu.append(_p('report-current', 'Semaine', 'icon-list'))
menu.append(_p('report-current-month', 'Calendrier', icon='icon-calendar', lazy=True))
menu.append(_p('report-current', _('This Week'), 'icon-list'))
menu.append(_p('report-current-month', _('Calendar'), icon='icon-calendar', lazy=True))

# Load memberships
members = request.user.memberships.exclude(role__in=('archive', 'prospect'))
Expand All @@ -61,22 +62,22 @@ def _build_help():

# Add club list for athletes
if m.role in ('athlete', ):
submenu['menu'].append(_p(('club-members', m.club.slug), u'Les membres'))
submenu['menu'].append(_p(('club-members', m.club.slug), _('Members')))
submenu['menu'].append('__SEPARATOR__')

# Add club admin links for trainers
if m.role in ('trainer', 'staff') or request.user.is_superuser:
submenu['menu'].append(_p(('club-members-name', m.club.slug, 'athletes', 'name'), u'Mes Athlètes'))
submenu['menu'].append(_p(('club-races', m.club.slug, ), u'Les courses', lazy=True))
submenu['menu'].append(_p(('club-members-name', m.club.slug, 'athletes', 'name'), _('My athletes')))
submenu['menu'].append(_p(('club-races', m.club.slug, ), _('Races'), lazy=True))
# Removed plans because non functional
#submenu['menu'].append(_p(('plans', ), u'Mes plans', lazy=True))
submenu['menu'].append(_p(('club-members-name', m.club.slug, 'all', 'name'), u'Tout le club'))
submenu['menu'].append(_p(('club-members-name', m.club.slug, 'all', 'name'), _('All the club')))

# Manage links
if m.club.manager == request.user or request.user.is_superuser:
submenu['menu'].append(_p(('club-members-name', m.club.slug, 'prospects', 'name'), u'Nouveaux'))
submenu['menu'].append(_p(('club-members-name', m.club.slug, 'archives', 'name'), u'Archives'))
submenu['menu'].append(_p(('club-manage', m.club.slug), u'Administrer'))
submenu['menu'].append(_p(('club-members-name', m.club.slug, 'prospects', 'name'), _('Newcomers')))
submenu['menu'].append(_p(('club-members-name', m.club.slug, 'archives', 'name'), _('Archives')))
submenu['menu'].append(_p(('club-manage', m.club.slug), _('Manage')))

submenu['menu'].append('__SEPARATOR__')

Expand All @@ -102,21 +103,21 @@ def _build_help():
'menu' : [],
'icon' : 'icon-user',
}
submenu['menu'].append(_p('message-inbox', u'Mes messages'))
submenu['menu'].append(_p('user-preferences', u'Mes préférences'))
submenu['menu'].append(_p(('user-public-profile', request.user.username), 'Mon profil public'))
submenu['menu'].append(_p('stats', 'Mes statistiques', lazy=True))
submenu['menu'].append(_p('vma', 'Mes allures'))
submenu['menu'].append(_p('user-races', 'Mes records'))
submenu['menu'].append(_p('user-garmin', u'Données Garmin'))
submenu['menu'].append(_p('message-inbox', _('My messages')))
submenu['menu'].append(_p('user-preferences', _('My preferences')))
submenu['menu'].append(_p(('user-public-profile', request.user.username), _('My public profile')))
submenu['menu'].append(_p('stats', _('My statistics'), lazy=True))
submenu['menu'].append(_p('vma', _('My paces')))
submenu['menu'].append(_p('user-races', _('My records')))
submenu['menu'].append(_p('user-garmin', _('Garmin Sync')))
submenu['menu'].append('__SEPARATOR__')
submenu['menu'].append(_p('logout', u'Se déconnecter'))
submenu['menu'].append(_p('logout', _('Logout')))
menu.append(submenu)
else:
menu.append(_p('user-create', u'Créer un compte', 'icon-plus'))
menu.append(_p('user-create', _('Create an account'), 'icon-plus'))
menu.append(_build_club_generic())
menu.append(_build_help())
menu.append(_p('login', 'Se connecter', 'icon-user'))
menu.append(_p('login', _('Login'), 'icon-user'))

# Search for active main menu
# based on sub items
Expand Down
14 changes: 14 additions & 0 deletions coach/settings.py
Original file line number Diff line number Diff line change
Expand Up @@ -66,6 +66,18 @@
# If you set this to False, Django will not use timezone-aware datetimes.
USE_TZ = True

# Available languages for translations
from django.utils.translation import ugettext_lazy as _
LANGUAGES = (
('fr', _('French')),
('en', _('English')),
)

# Use our own locales
LOCALE_PATHS = (
HOME + '/locale',
)

# Absolute filesystem path to the directory that will hold user-uploaded files.
# Example: "/home/media/media.lawrence.com/media/"
MEDIA_ROOT = HOME + '/medias'
Expand Down Expand Up @@ -125,6 +137,7 @@
'coach.settings.load_constants',
'django.contrib.auth.context_processors.auth',
'django.core.context_processors.request',
'django.core.context_processors.i18n',
)

MIDDLEWARE_CLASSES = (
Expand All @@ -133,6 +146,7 @@
'django.middleware.csrf.CsrfViewMiddleware',
'django.contrib.auth.middleware.AuthenticationMiddleware',
'django.contrib.messages.middleware.MessageMiddleware',
'django.middleware.locale.LocaleMiddleware',
# Uncomment the next line for simple clickjacking protection:
# 'django.middleware.clickjacking.XFrameOptionsMiddleware',
)
Expand Down
3 changes: 3 additions & 0 deletions coach/urls.py
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,9 @@

# Contact Form
url(r'^contact/', include('contact_form.urls')),

# Languages switch
url(r'^lang/', include('django.conf.urls.i18n')),
)

# Direct admin and static medias
Expand Down
Binary file added locale/en/LC_MESSAGES/django.mo
Binary file not shown.
Loading