mirror of
https://github.com/ae-utbm/sith.git
synced 2024-11-25 18:44:23 +00:00
Add basic search bar
This commit is contained in:
parent
0689f864d2
commit
f1105d704e
BIN
core/static/core/img/na.gif
Normal file
BIN
core/static/core/img/na.gif
Normal file
Binary file not shown.
After Width: | Height: | Size: 1.0 KiB |
@ -26,7 +26,11 @@ header a {
|
|||||||
header a:hover {
|
header a:hover {
|
||||||
color: #2D3;
|
color: #2D3;
|
||||||
}
|
}
|
||||||
|
header form {
|
||||||
|
display: inline-block;
|
||||||
|
padding: 1em;
|
||||||
|
width: 150px;
|
||||||
|
}
|
||||||
#popupheader {
|
#popupheader {
|
||||||
width: 88%;
|
width: 88%;
|
||||||
margin: 0px auto;
|
margin: 0px auto;
|
||||||
@ -185,6 +189,24 @@ tbody>tr:hover {
|
|||||||
#user_profile .promo_pict {
|
#user_profile .promo_pict {
|
||||||
height: 45px;
|
height: 45px;
|
||||||
}
|
}
|
||||||
|
.mini_profile_link {
|
||||||
|
display: block;
|
||||||
|
text-decoration: none;
|
||||||
|
}
|
||||||
|
.mini_profile_link span {
|
||||||
|
display: inline-block;
|
||||||
|
width: 50px;
|
||||||
|
vertical-align: middle;
|
||||||
|
}
|
||||||
|
.mini_profile_link em {
|
||||||
|
vertical-align: middle;
|
||||||
|
}
|
||||||
|
.mini_profile_link img {
|
||||||
|
max-width: 40px;
|
||||||
|
max-height: 60px;
|
||||||
|
margin: 2px auto;
|
||||||
|
display: block;
|
||||||
|
}
|
||||||
/*---------------------------------PAGE--------------------------------*/
|
/*---------------------------------PAGE--------------------------------*/
|
||||||
.page_content {
|
.page_content {
|
||||||
display: block;
|
display: block;
|
||||||
|
@ -24,6 +24,10 @@
|
|||||||
<a href="{{ url('core:user_profile', user_id=user.id) }}">{{ user.get_display_name() }}</a> |
|
<a href="{{ url('core:user_profile', user_id=user.id) }}">{{ user.get_display_name() }}</a> |
|
||||||
<a href="{{ url('core:user_tools') }}">{% trans %}Tools{% endtrans %}</a> |
|
<a href="{{ url('core:user_tools') }}">{% trans %}Tools{% endtrans %}</a> |
|
||||||
<a href="{{ url('core:logout') }}">{% trans %}Logout{% endtrans %}</a>
|
<a href="{{ url('core:logout') }}">{% trans %}Logout{% endtrans %}</a>
|
||||||
|
<form action="{{ url('core:search') }}" method="GET">
|
||||||
|
<input type="text" placeholder="{% trans %}Search{% endtrans %}" name="query" />
|
||||||
|
<input type="submit" value="{% trans %}Search{% endtrans %}" style="display: none;" />
|
||||||
|
</form>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
</header>
|
</header>
|
||||||
{% else %}
|
{% else %}
|
||||||
|
@ -1,7 +1,8 @@
|
|||||||
{% extends "core/base.jinja" %}
|
{% extends "core/base.jinja" %}
|
||||||
|
|
||||||
{% block title %}{{ title }}{% endblock %}
|
{% block title %}
|
||||||
|
{% trans %}Welcome!{% endtrans %}
|
||||||
|
{% endblock %}
|
||||||
{% block content %}
|
{% block content %}
|
||||||
{% trans %}Hello, world. You're at the core index using Jinja2.{% endtrans %}
|
{% trans %}Hello, world. You're at the core index using Jinja2.{% endtrans %}
|
||||||
{% endblock %}
|
{% endblock %}
|
||||||
|
@ -1,3 +1,16 @@
|
|||||||
{% macro user_profile_link(user) -%}
|
{% macro user_profile_link(user) -%}
|
||||||
<a href="{{ url("core:user_profile", user_id=user.id) }}">{{ user.get_display_name() }}</a>
|
<a href="{{ url("core:user_profile", user_id=user.id) }}">{{ user.get_display_name() }}</a>
|
||||||
{%- endmacro %}
|
{%- endmacro %}
|
||||||
|
|
||||||
|
{% macro user_link_with_pict(user) -%}
|
||||||
|
<a href="{{ url("core:user_profile", user_id=user.id) }}" class="mini_profile_link" >
|
||||||
|
<span>
|
||||||
|
{% if user.profile_pict %}
|
||||||
|
<img src="{{ user.profile_pict.get_download_url() }}" alt="{% trans %}Profile{% endtrans %}" />
|
||||||
|
{% else %}
|
||||||
|
<img src="{{ static('core/img/na.gif') }}" alt="{% trans %}Profile{% endtrans %}" />
|
||||||
|
{% endif %}
|
||||||
|
</span>
|
||||||
|
<em>{{ user.get_display_name() }}</em>
|
||||||
|
</a>
|
||||||
|
{%- endmacro %}
|
||||||
|
26
core/templates/core/search.jinja
Normal file
26
core/templates/core/search.jinja
Normal file
@ -0,0 +1,26 @@
|
|||||||
|
{% extends "core/base.jinja" %}
|
||||||
|
|
||||||
|
{% from "core/macros.jinja" import user_link_with_pict %}
|
||||||
|
|
||||||
|
{% block title %}
|
||||||
|
{% trans %}Search result{% endtrans %}
|
||||||
|
{% endblock %}
|
||||||
|
|
||||||
|
{% block content %}
|
||||||
|
<h4>{% trans %}Users{% endtrans %}</h4>
|
||||||
|
<ul>
|
||||||
|
{% for i in result.users %}
|
||||||
|
<li>
|
||||||
|
{{ user_link_with_pict(i) }}
|
||||||
|
</li>
|
||||||
|
{% endfor %}
|
||||||
|
</ul>
|
||||||
|
<h4>{% trans %}Clubs{% endtrans %}</h4>
|
||||||
|
<ul>
|
||||||
|
{% for i in result.clubs %}
|
||||||
|
<li>
|
||||||
|
<a href="{{ url("club:club_view", club_id=i.id) }}">{{ i }}</a>
|
||||||
|
</li>
|
||||||
|
{% endfor %}
|
||||||
|
</ul>
|
||||||
|
{% endblock %}
|
@ -8,9 +8,10 @@
|
|||||||
{% if profile.permanencies %}
|
{% if profile.permanencies %}
|
||||||
<div>
|
<div>
|
||||||
<h3>Permanencies</h3>
|
<h3>Permanencies</h3>
|
||||||
<p>
|
<p>Total: {{ total_perm_time }}</p>
|
||||||
{{ total_time }}
|
<p>Foyer: {{ total_foyer_time }}</p>
|
||||||
</p>
|
<p>MDE: {{ total_mde_time }}</p>
|
||||||
|
<p>La Gommette: {{ total_gommette_time }}</p>
|
||||||
</div>
|
</div>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
{% endblock %}
|
{% endblock %}
|
||||||
|
@ -4,6 +4,8 @@ from core.views import *
|
|||||||
|
|
||||||
urlpatterns = [
|
urlpatterns = [
|
||||||
url(r'^$', index, name='index'),
|
url(r'^$', index, name='index'),
|
||||||
|
url(r'^search/$', search_view, name='search'),
|
||||||
|
url(r'^search_json/$', search_json, name='search_json'),
|
||||||
|
|
||||||
# Login and co
|
# Login and co
|
||||||
url(r'^login/$', login, name='login'),
|
url(r'^login/$', login, name='login'),
|
||||||
@ -50,5 +52,4 @@ urlpatterns = [
|
|||||||
url(r'^page/(?P<page_name>[a-z0-9/-_]*)/hist$', PageHistView.as_view(), name='page_hist'),
|
url(r'^page/(?P<page_name>[a-z0-9/-_]*)/hist$', PageHistView.as_view(), name='page_hist'),
|
||||||
url(r'^page/(?P<page_name>[a-z0-9/-_]*)/rev/(?P<rev>[0-9]+)/', PageRevView.as_view(), name='page_rev'),
|
url(r'^page/(?P<page_name>[a-z0-9/-_]*)/rev/(?P<rev>[0-9]+)/', PageRevView.as_view(), name='page_rev'),
|
||||||
url(r'^page/(?P<page_name>[a-z0-9/-_]*)/$', PageView.as_view(), name='page'),
|
url(r'^page/(?P<page_name>[a-z0-9/-_]*)/$', PageView.as_view(), name='page'),
|
||||||
|
|
||||||
]
|
]
|
||||||
|
@ -1,11 +1,46 @@
|
|||||||
from django.shortcuts import render, redirect, get_object_or_404
|
from django.shortcuts import render, redirect, get_object_or_404
|
||||||
from django.db import models
|
from django.db import models
|
||||||
|
from django.http import JsonResponse
|
||||||
|
from django.core import serializers
|
||||||
|
from django.db.models import Q
|
||||||
|
from django.contrib.auth.decorators import login_required
|
||||||
|
|
||||||
import os
|
import os
|
||||||
|
import json
|
||||||
|
from itertools import chain
|
||||||
|
|
||||||
|
from core.models import User
|
||||||
|
from club.models import Club
|
||||||
|
|
||||||
def index(request, context=None):
|
def index(request, context=None):
|
||||||
if context == None:
|
return render(request, "core/index.jinja")
|
||||||
return render(request, "core/index.jinja", {'title': 'Bienvenue!'})
|
|
||||||
else:
|
def search(query, as_json=False):
|
||||||
return render(request, "core/index.jinja", context)
|
result = {'users': None, 'clubs': None}
|
||||||
|
if query:
|
||||||
|
nicks = User.objects.filter(nick_name__icontains=query).all()
|
||||||
|
users = User.objects.filter(Q(first_name__icontains=query) | Q(last_name__icontains=query)).all()
|
||||||
|
clubs = Club.objects.filter(name__icontains=query).all()
|
||||||
|
nicks = nicks[:5]
|
||||||
|
users = users[:5]
|
||||||
|
clubs = clubs[:5]
|
||||||
|
if as_json: # Re-loads json to avoid double encoding by JsonResponse, but still benefit from serializers
|
||||||
|
nicks = json.loads(serializers.serialize('json', nicks, fields=('nick_name', 'last_name', 'first_name', 'profile_pict')))
|
||||||
|
users = json.loads(serializers.serialize('json', users, fields=('nick_name', 'last_name', 'first_name', 'profile_pict')))
|
||||||
|
clubs = json.loads(serializers.serialize('json', clubs, fields=('name')))
|
||||||
|
else:
|
||||||
|
nicks = list(nicks.all())
|
||||||
|
users = list(users.all())
|
||||||
|
clubs = list(clubs.all())
|
||||||
|
result['users'] = nicks + users
|
||||||
|
result['clubs'] = clubs
|
||||||
|
return result
|
||||||
|
|
||||||
|
@login_required
|
||||||
|
def search_view(request):
|
||||||
|
return render(request, "core/search.jinja", context={'result': search(request.GET.get('query', ''))})
|
||||||
|
|
||||||
|
@login_required
|
||||||
|
def search_json(request):
|
||||||
|
return JsonResponse(search(request.GET.get('query', ''), True))
|
||||||
|
|
||||||
|
@ -134,7 +134,14 @@ class UserStatsView(CanViewMixin, DetailView):
|
|||||||
|
|
||||||
def get_context_data(self, **kwargs):
|
def get_context_data(self, **kwargs):
|
||||||
kwargs = super(UserStatsView, self).get_context_data(**kwargs)
|
kwargs = super(UserStatsView, self).get_context_data(**kwargs)
|
||||||
kwargs['total_time'] = sum([p.end-p.start for p in self.object.permanencies.all()], timedelta())
|
from counter.models import Counter
|
||||||
|
foyer = Counter.objects.filter(name="Foyer").first()
|
||||||
|
mde = Counter.objects.filter(name="MDE").first()
|
||||||
|
gommette = Counter.objects.filter(name="La Gommette").first()
|
||||||
|
kwargs['total_perm_time'] = sum([p.end-p.start for p in self.object.permanencies.all()], timedelta())
|
||||||
|
kwargs['total_foyer_time'] = sum([p.end-p.start for p in self.object.permanencies.filter(counter=foyer)], timedelta())
|
||||||
|
kwargs['total_mde_time'] = sum([p.end-p.start for p in self.object.permanencies.filter(counter=mde)], timedelta())
|
||||||
|
kwargs['total_gommette_time'] = sum([p.end-p.start for p in self.object.permanencies.filter(counter=gommette)], timedelta())
|
||||||
return kwargs
|
return kwargs
|
||||||
|
|
||||||
class UserMiniView(CanViewMixin, DetailView):
|
class UserMiniView(CanViewMixin, DetailView):
|
||||||
|
Binary file not shown.
@ -6,7 +6,7 @@
|
|||||||
msgid ""
|
msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Report-Msgid-Bugs-To: \n"
|
"Report-Msgid-Bugs-To: \n"
|
||||||
"POT-Creation-Date: 2016-08-18 17:40+0200\n"
|
"POT-Creation-Date: 2016-08-19 01:43+0200\n"
|
||||||
"PO-Revision-Date: 2016-07-18\n"
|
"PO-Revision-Date: 2016-07-18\n"
|
||||||
"Last-Translator: Skia <skia@libskia.so>\n"
|
"Last-Translator: Skia <skia@libskia.so>\n"
|
||||||
"Language-Team: AE info <ae.info@utbm.fr>\n"
|
"Language-Team: AE info <ae.info@utbm.fr>\n"
|
||||||
@ -40,12 +40,12 @@ msgstr "numero de compte"
|
|||||||
msgid "%(club_account)s on %(bank_account)s"
|
msgid "%(club_account)s on %(bank_account)s"
|
||||||
msgstr "%(club_account)s sur %(bank_account)s"
|
msgstr "%(club_account)s sur %(bank_account)s"
|
||||||
|
|
||||||
#: accounting/models.py:109 club/models.py:147 counter/models.py:271
|
#: accounting/models.py:109 club/models.py:147 counter/models.py:291
|
||||||
#: launderette/models.py:122
|
#: launderette/models.py:122
|
||||||
msgid "start date"
|
msgid "start date"
|
||||||
msgstr "date de début"
|
msgstr "date de début"
|
||||||
|
|
||||||
#: accounting/models.py:110 club/models.py:148 counter/models.py:272
|
#: accounting/models.py:110 club/models.py:148 counter/models.py:292
|
||||||
msgid "end date"
|
msgid "end date"
|
||||||
msgstr "date de fin"
|
msgstr "date de fin"
|
||||||
|
|
||||||
@ -67,12 +67,12 @@ msgid "number"
|
|||||||
msgstr "numéro"
|
msgstr "numéro"
|
||||||
|
|
||||||
#: accounting/models.py:154 core/models.py:404 core/models.py:680
|
#: accounting/models.py:154 core/models.py:404 core/models.py:680
|
||||||
#: counter/models.py:209 counter/models.py:245 eboutic/models.py:14
|
#: counter/models.py:209 counter/models.py:255 eboutic/models.py:14
|
||||||
#: eboutic/models.py:47
|
#: eboutic/models.py:47
|
||||||
msgid "date"
|
msgid "date"
|
||||||
msgstr "date"
|
msgstr "date"
|
||||||
|
|
||||||
#: accounting/models.py:155 accounting/models.py:241 counter/models.py:237
|
#: accounting/models.py:155 accounting/models.py:241 counter/models.py:247
|
||||||
msgid "label"
|
msgid "label"
|
||||||
msgstr "intitulé"
|
msgstr "intitulé"
|
||||||
|
|
||||||
@ -80,8 +80,8 @@ msgstr "intitulé"
|
|||||||
msgid "remark"
|
msgid "remark"
|
||||||
msgstr "remarque"
|
msgstr "remarque"
|
||||||
|
|
||||||
#: accounting/models.py:157 counter/models.py:210 counter/models.py:247
|
#: accounting/models.py:157 counter/models.py:210 counter/models.py:256
|
||||||
#: eboutic/models.py:49 subscription/models.py:34
|
#: subscription/models.py:34
|
||||||
msgid "payment method"
|
msgid "payment method"
|
||||||
msgstr "méthode de paiement"
|
msgstr "méthode de paiement"
|
||||||
|
|
||||||
@ -89,7 +89,7 @@ msgstr "méthode de paiement"
|
|||||||
msgid "cheque number"
|
msgid "cheque number"
|
||||||
msgstr "numéro de chèque"
|
msgstr "numéro de chèque"
|
||||||
|
|
||||||
#: accounting/models.py:159 eboutic/models.py:119
|
#: accounting/models.py:159 eboutic/models.py:115
|
||||||
msgid "invoice"
|
msgid "invoice"
|
||||||
msgstr "facture"
|
msgstr "facture"
|
||||||
|
|
||||||
@ -114,7 +114,7 @@ msgstr "Utilisateur"
|
|||||||
msgid "Club"
|
msgid "Club"
|
||||||
msgstr "Club"
|
msgstr "Club"
|
||||||
|
|
||||||
#: accounting/models.py:163 core/templates/core/user_base.jinja:17
|
#: accounting/models.py:163 core/templates/core/user_base.jinja:18
|
||||||
msgid "Account"
|
msgid "Account"
|
||||||
msgstr "Compte"
|
msgstr "Compte"
|
||||||
|
|
||||||
@ -207,7 +207,7 @@ msgstr "Nouveau compte club"
|
|||||||
#: accounting/templates/accounting/club_account_details.jinja:44
|
#: accounting/templates/accounting/club_account_details.jinja:44
|
||||||
#: accounting/templates/accounting/journal_details.jinja:62
|
#: accounting/templates/accounting/journal_details.jinja:62
|
||||||
#: club/templates/club/club_detail.jinja:7 core/templates/core/file.jinja:38
|
#: club/templates/club/club_detail.jinja:7 core/templates/core/file.jinja:38
|
||||||
#: core/templates/core/page.jinja:31 core/templates/core/user_base.jinja:9
|
#: core/templates/core/page.jinja:31 core/templates/core/user_base.jinja:10
|
||||||
#: core/templates/core/user_tools.jinja:33
|
#: core/templates/core/user_tools.jinja:33
|
||||||
#: counter/templates/counter/counter_list.jinja:15
|
#: counter/templates/counter/counter_list.jinja:15
|
||||||
#: counter/templates/counter/counter_list.jinja:18
|
#: counter/templates/counter/counter_list.jinja:18
|
||||||
@ -269,7 +269,7 @@ msgstr "Fin"
|
|||||||
#: accounting/templates/accounting/club_account_details.jinja:20
|
#: accounting/templates/accounting/club_account_details.jinja:20
|
||||||
#: accounting/templates/accounting/journal_details.jinja:23
|
#: accounting/templates/accounting/journal_details.jinja:23
|
||||||
#: core/templates/core/user_account.jinja:19
|
#: core/templates/core/user_account.jinja:19
|
||||||
#: core/templates/core/user_account.jinja:72
|
#: core/templates/core/user_account.jinja:78
|
||||||
msgid "Amount"
|
msgid "Amount"
|
||||||
msgstr "Montant"
|
msgstr "Montant"
|
||||||
|
|
||||||
@ -324,13 +324,13 @@ msgstr "No"
|
|||||||
|
|
||||||
#: accounting/templates/accounting/journal_details.jinja:21
|
#: accounting/templates/accounting/journal_details.jinja:21
|
||||||
#: core/templates/core/user_account.jinja:16
|
#: core/templates/core/user_account.jinja:16
|
||||||
#: core/templates/core/user_account.jinja:41
|
#: core/templates/core/user_account.jinja:44
|
||||||
#: core/templates/core/user_account.jinja:70
|
#: core/templates/core/user_account.jinja:76
|
||||||
msgid "Date"
|
msgid "Date"
|
||||||
msgstr "Date"
|
msgstr "Date"
|
||||||
|
|
||||||
#: accounting/templates/accounting/journal_details.jinja:22
|
#: accounting/templates/accounting/journal_details.jinja:22
|
||||||
#: core/templates/core/user_account.jinja:44
|
#: core/templates/core/user_account.jinja:47
|
||||||
msgid "Label"
|
msgid "Label"
|
||||||
msgstr "Intitulé"
|
msgstr "Intitulé"
|
||||||
|
|
||||||
@ -908,7 +908,7 @@ msgstr "Outils"
|
|||||||
msgid "Logout"
|
msgid "Logout"
|
||||||
msgstr "Déconnexion"
|
msgstr "Déconnexion"
|
||||||
|
|
||||||
#: core/templates/core/base.jinja:36
|
#: core/templates/core/base.jinja:36 core/templates/core/search.jinja:10
|
||||||
msgid "Users"
|
msgid "Users"
|
||||||
msgstr "Utilisateurs"
|
msgstr "Utilisateurs"
|
||||||
|
|
||||||
@ -920,7 +920,7 @@ msgstr "Wiki"
|
|||||||
msgid "Pages"
|
msgid "Pages"
|
||||||
msgstr "Pages"
|
msgstr "Pages"
|
||||||
|
|
||||||
#: core/templates/core/base.jinja:39
|
#: core/templates/core/base.jinja:39 core/templates/core/search.jinja:18
|
||||||
msgid "Clubs"
|
msgid "Clubs"
|
||||||
msgstr "Clubs"
|
msgstr "Clubs"
|
||||||
|
|
||||||
@ -938,23 +938,25 @@ msgid "Create %(name)s"
|
|||||||
msgstr "Créer %(name)s"
|
msgstr "Créer %(name)s"
|
||||||
|
|
||||||
#: core/templates/core/delete_confirm.jinja:4
|
#: core/templates/core/delete_confirm.jinja:4
|
||||||
|
#: core/templates/core/delete_confirm.jinja:8
|
||||||
#: core/templates/core/file_delete_confirm.jinja:4
|
#: core/templates/core/file_delete_confirm.jinja:4
|
||||||
|
#: core/templates/core/file_delete_confirm.jinja:8
|
||||||
msgid "Delete confirmation"
|
msgid "Delete confirmation"
|
||||||
msgstr "Confirmation de suppression"
|
msgstr "Confirmation de suppression"
|
||||||
|
|
||||||
#: core/templates/core/delete_confirm.jinja:6
|
#: core/templates/core/delete_confirm.jinja:10
|
||||||
#: core/templates/core/file_delete_confirm.jinja:6
|
#: core/templates/core/file_delete_confirm.jinja:10
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "Are you sure you want to delete \"%(obj)s\"?"
|
msgid "Are you sure you want to delete \"%(obj)s\"?"
|
||||||
msgstr "Êtes-vous sûr de vouloir supprimer \"%(obj)s\" ?"
|
msgstr "Êtes-vous sûr de vouloir supprimer \"%(obj)s\" ?"
|
||||||
|
|
||||||
#: core/templates/core/delete_confirm.jinja:7
|
#: core/templates/core/delete_confirm.jinja:11
|
||||||
#: core/templates/core/file_delete_confirm.jinja:7
|
#: core/templates/core/file_delete_confirm.jinja:11
|
||||||
msgid "Confirm"
|
msgid "Confirm"
|
||||||
msgstr "Confirmation"
|
msgstr "Confirmation"
|
||||||
|
|
||||||
#: core/templates/core/delete_confirm.jinja:8
|
#: core/templates/core/delete_confirm.jinja:14
|
||||||
#: core/templates/core/file_delete_confirm.jinja:8
|
#: core/templates/core/file_delete_confirm.jinja:14
|
||||||
#: counter/templates/counter/counter_click.jinja:71
|
#: counter/templates/counter/counter_click.jinja:71
|
||||||
msgid "Cancel"
|
msgid "Cancel"
|
||||||
msgstr "Annuler"
|
msgstr "Annuler"
|
||||||
@ -1067,6 +1069,13 @@ msgstr "login"
|
|||||||
msgid "Lost password?"
|
msgid "Lost password?"
|
||||||
msgstr "Mot de passe perdu ?"
|
msgstr "Mot de passe perdu ?"
|
||||||
|
|
||||||
|
#: core/templates/core/macros.jinja:9 core/templates/core/macros.jinja:11
|
||||||
|
#: core/templates/core/user_detail.jinja:12
|
||||||
|
#: core/templates/core/user_edit.jinja:15
|
||||||
|
#: core/templates/core/user_mini.jinja:4
|
||||||
|
msgid "Profile"
|
||||||
|
msgstr "Profil"
|
||||||
|
|
||||||
#: core/templates/core/page.jinja:7 core/templates/core/page_list.jinja:4
|
#: core/templates/core/page.jinja:7 core/templates/core/page_list.jinja:4
|
||||||
#: core/templates/core/page_list.jinja:9
|
#: core/templates/core/page_list.jinja:9
|
||||||
msgid "Page list"
|
msgid "Page list"
|
||||||
@ -1219,6 +1228,10 @@ msgstr ""
|
|||||||
msgid "Your username is %(username)s."
|
msgid "Your username is %(username)s."
|
||||||
msgstr "Votre nom d'utilisateur est %(username)s."
|
msgstr "Votre nom d'utilisateur est %(username)s."
|
||||||
|
|
||||||
|
#: core/templates/core/search.jinja:6
|
||||||
|
msgid "Search result"
|
||||||
|
msgstr "Résultat de la recherche"
|
||||||
|
|
||||||
#: core/templates/core/user_account.jinja:4
|
#: core/templates/core/user_account.jinja:4
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "%(user_name)s's account"
|
msgid "%(user_name)s's account"
|
||||||
@ -1233,47 +1246,50 @@ msgid "Refillings"
|
|||||||
msgstr "Rechargements"
|
msgstr "Rechargements"
|
||||||
|
|
||||||
#: core/templates/core/user_account.jinja:17
|
#: core/templates/core/user_account.jinja:17
|
||||||
#: core/templates/core/user_account.jinja:42
|
#: core/templates/core/user_account.jinja:45
|
||||||
#: counter/templates/counter/counter_click.jinja:24
|
#: counter/templates/counter/counter_click.jinja:24
|
||||||
msgid "Counter"
|
msgid "Counter"
|
||||||
msgstr "Comptoir"
|
msgstr "Comptoir"
|
||||||
|
|
||||||
#: core/templates/core/user_account.jinja:18
|
#: core/templates/core/user_account.jinja:18
|
||||||
#: core/templates/core/user_account.jinja:43
|
#: core/templates/core/user_account.jinja:46
|
||||||
msgid "Barman"
|
msgid "Barman"
|
||||||
msgstr "Barman"
|
msgstr "Barman"
|
||||||
|
|
||||||
#: core/templates/core/user_account.jinja:20
|
#: core/templates/core/user_account.jinja:20
|
||||||
#: core/templates/core/user_account.jinja:47
|
#: core/templates/core/user_account.jinja:50
|
||||||
#: core/templates/core/user_account.jinja:73
|
|
||||||
msgid "Payment method"
|
msgid "Payment method"
|
||||||
msgstr "Méthode de paiement"
|
msgstr "Méthode de paiement"
|
||||||
|
|
||||||
#: core/templates/core/user_account.jinja:37
|
#: core/templates/core/user_account.jinja:40
|
||||||
msgid "Account buyings"
|
msgid "Account buyings"
|
||||||
msgstr "Achat sur compte utilisateur"
|
msgstr "Achat sur compte utilisateur"
|
||||||
|
|
||||||
#: core/templates/core/user_account.jinja:45
|
#: core/templates/core/user_account.jinja:48
|
||||||
msgid "Quantity"
|
msgid "Quantity"
|
||||||
msgstr "Quantité"
|
msgstr "Quantité"
|
||||||
|
|
||||||
#: core/templates/core/user_account.jinja:46
|
#: core/templates/core/user_account.jinja:49
|
||||||
msgid "Total"
|
msgid "Total"
|
||||||
msgstr "Total"
|
msgstr "Total"
|
||||||
|
|
||||||
#: core/templates/core/user_account.jinja:66
|
#: core/templates/core/user_account.jinja:72
|
||||||
msgid "Eboutic invoices"
|
msgid "Eboutic invoices"
|
||||||
msgstr "Facture eboutic"
|
msgstr "Facture eboutic"
|
||||||
|
|
||||||
#: core/templates/core/user_account.jinja:71
|
#: core/templates/core/user_account.jinja:77
|
||||||
msgid "Items"
|
msgid "Items"
|
||||||
msgstr "Articles"
|
msgstr "Articles"
|
||||||
|
|
||||||
#: core/templates/core/user_account.jinja:95
|
#: core/templates/core/user_account.jinja:99
|
||||||
msgid "User has no account"
|
msgid "User has no account"
|
||||||
msgstr "L'utilisateur n'a pas de compte"
|
msgstr "L'utilisateur n'a pas de compte"
|
||||||
|
|
||||||
#: core/templates/core/user_base.jinja:12
|
#: core/templates/core/user_base.jinja:8
|
||||||
|
msgid "Stats"
|
||||||
|
msgstr "Stats"
|
||||||
|
|
||||||
|
#: core/templates/core/user_base.jinja:13
|
||||||
#: core/templates/core/user_tools.jinja:14
|
#: core/templates/core/user_tools.jinja:14
|
||||||
msgid "Groups"
|
msgid "Groups"
|
||||||
msgstr "Groupes"
|
msgstr "Groupes"
|
||||||
@ -1283,12 +1299,6 @@ msgstr "Groupes"
|
|||||||
msgid "%(user_name)s's profile"
|
msgid "%(user_name)s's profile"
|
||||||
msgstr "Profil de %(user_name)s"
|
msgstr "Profil de %(user_name)s"
|
||||||
|
|
||||||
#: core/templates/core/user_detail.jinja:12
|
|
||||||
#: core/templates/core/user_edit.jinja:15
|
|
||||||
#: core/templates/core/user_mini.jinja:4
|
|
||||||
msgid "Profile"
|
|
||||||
msgstr "Profil"
|
|
||||||
|
|
||||||
#: core/templates/core/user_detail.jinja:21
|
#: core/templates/core/user_detail.jinja:21
|
||||||
#: core/templates/core/user_mini.jinja:12
|
#: core/templates/core/user_mini.jinja:12
|
||||||
msgid "Born: "
|
msgid "Born: "
|
||||||
@ -1371,6 +1381,10 @@ msgstr "Éditer les groupes pour %(user_name)s"
|
|||||||
msgid "User list"
|
msgid "User list"
|
||||||
msgstr "Liste d'utilisateurs"
|
msgstr "Liste d'utilisateurs"
|
||||||
|
|
||||||
|
#: core/templates/core/user_stats.jinja:4
|
||||||
|
msgid "%(user_name)s's stats"
|
||||||
|
msgstr "Stats de %(user_name)s"
|
||||||
|
|
||||||
#: core/templates/core/user_tools.jinja:4
|
#: core/templates/core/user_tools.jinja:4
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "%(user_name)s's tools"
|
msgid "%(user_name)s's tools"
|
||||||
@ -1522,7 +1536,7 @@ msgstr "comptoir"
|
|||||||
msgid "bank"
|
msgid "bank"
|
||||||
msgstr "banque"
|
msgstr "banque"
|
||||||
|
|
||||||
#: counter/models.py:214 counter/models.py:246
|
#: counter/models.py:214 counter/models.py:258
|
||||||
msgid "is validated"
|
msgid "is validated"
|
||||||
msgstr "est validé"
|
msgstr "est validé"
|
||||||
|
|
||||||
@ -1530,29 +1544,29 @@ msgstr "est validé"
|
|||||||
msgid "refilling"
|
msgid "refilling"
|
||||||
msgstr "rechargement"
|
msgstr "rechargement"
|
||||||
|
|
||||||
#: counter/models.py:241 eboutic/models.py:106
|
#: counter/models.py:251 eboutic/models.py:102
|
||||||
msgid "unit price"
|
msgid "unit price"
|
||||||
msgstr "prix unitaire"
|
msgstr "prix unitaire"
|
||||||
|
|
||||||
#: counter/models.py:242 eboutic/models.py:107
|
#: counter/models.py:252 eboutic/models.py:103
|
||||||
msgid "quantity"
|
msgid "quantity"
|
||||||
msgstr "quantité"
|
msgstr "quantité"
|
||||||
|
|
||||||
#: counter/models.py:248 eboutic/models.py:48
|
#: counter/models.py:257
|
||||||
msgid "Sith account"
|
msgid "Sith account"
|
||||||
msgstr "Compte utilisateur"
|
msgstr "Compte utilisateur"
|
||||||
|
|
||||||
#: counter/models.py:248 eboutic/models.py:48 sith/settings.py:272
|
#: counter/models.py:257 sith/settings.py:272 sith/settings.py:277
|
||||||
#: sith/settings.py:277 sith/settings.py:298 sith/settings_sample.py:258
|
#: sith/settings.py:298 sith/settings_sample.py:258
|
||||||
#: sith/settings_sample.py:263 sith/settings_sample.py:284
|
#: sith/settings_sample.py:263 sith/settings_sample.py:284
|
||||||
msgid "Credit card"
|
msgid "Credit card"
|
||||||
msgstr "Carte banquaire"
|
msgstr "Carte banquaire"
|
||||||
|
|
||||||
#: counter/models.py:251
|
#: counter/models.py:261
|
||||||
msgid "selling"
|
msgid "selling"
|
||||||
msgstr "vente"
|
msgstr "vente"
|
||||||
|
|
||||||
#: counter/models.py:275
|
#: counter/models.py:295
|
||||||
msgid "permanency"
|
msgid "permanency"
|
||||||
msgstr "permanence"
|
msgstr "permanence"
|
||||||
|
|
||||||
@ -1597,7 +1611,6 @@ msgid "Finish"
|
|||||||
msgstr "Terminer"
|
msgstr "Terminer"
|
||||||
|
|
||||||
#: counter/templates/counter/counter_click.jinja:73
|
#: counter/templates/counter/counter_click.jinja:73
|
||||||
#: eboutic/templates/eboutic/eboutic_main.jinja:41
|
|
||||||
msgid "Products: "
|
msgid "Products: "
|
||||||
msgstr "Produits : "
|
msgstr "Produits : "
|
||||||
|
|
||||||
@ -1694,27 +1707,27 @@ msgstr "ANN"
|
|||||||
msgid "You have not enough money to buy all the basket"
|
msgid "You have not enough money to buy all the basket"
|
||||||
msgstr "Vous n'avez pas assez d'argent pour acheter le panier"
|
msgstr "Vous n'avez pas assez d'argent pour acheter le panier"
|
||||||
|
|
||||||
#: eboutic/models.py:50
|
#: eboutic/models.py:48
|
||||||
msgid "validated"
|
msgid "validated"
|
||||||
msgstr "validé"
|
msgstr "validé"
|
||||||
|
|
||||||
#: eboutic/models.py:60
|
#: eboutic/models.py:61
|
||||||
msgid "Invoice already validated"
|
msgid "Invoice already validated"
|
||||||
msgstr "Facture déjà validée"
|
msgstr "Facture déjà validée"
|
||||||
|
|
||||||
#: eboutic/models.py:103
|
#: eboutic/models.py:99
|
||||||
msgid "product id"
|
msgid "product id"
|
||||||
msgstr "ID du produit"
|
msgstr "ID du produit"
|
||||||
|
|
||||||
#: eboutic/models.py:104
|
#: eboutic/models.py:100
|
||||||
msgid "product name"
|
msgid "product name"
|
||||||
msgstr "nom du produit"
|
msgstr "nom du produit"
|
||||||
|
|
||||||
#: eboutic/models.py:105
|
#: eboutic/models.py:101
|
||||||
msgid "product type id"
|
msgid "product type id"
|
||||||
msgstr "id du type du produit"
|
msgstr "id du type du produit"
|
||||||
|
|
||||||
#: eboutic/models.py:116
|
#: eboutic/models.py:112
|
||||||
msgid "basket"
|
msgid "basket"
|
||||||
msgstr "panier"
|
msgstr "panier"
|
||||||
|
|
||||||
@ -2047,4 +2060,3 @@ msgstr "Un utilisateur avec cette adresse email existe déjà"
|
|||||||
msgid "You must either choose an existing user or create a new one properly"
|
msgid "You must either choose an existing user or create a new one properly"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Vous devez soit choisir un utilisateur existant, ou en créer un proprement."
|
"Vous devez soit choisir un utilisateur existant, ou en créer un proprement."
|
||||||
|
|
||||||
|
16
migrate.py
16
migrate.py
@ -513,13 +513,17 @@ def migrate_sellings():
|
|||||||
""")
|
""")
|
||||||
Selling.objects.filter(payment_method="SITH_ACCOUNT").delete()
|
Selling.objects.filter(payment_method="SITH_ACCOUNT").delete()
|
||||||
print("Sith account selling deleted")
|
print("Sith account selling deleted")
|
||||||
|
ae = Club.objects.filter(unix_name="ae").first()
|
||||||
|
mde = Counter.objects.filter(id=1).first()
|
||||||
|
root = User.objects.filter(id=0).first()
|
||||||
|
beer = Product.objects.filter(id=1).first()
|
||||||
for r in cur:
|
for r in cur:
|
||||||
try:
|
try:
|
||||||
product = Product.objects.filter(id=r['id_produit']).first()
|
product = Product.objects.filter(id=r['id_produit']).first() or beer
|
||||||
club = Club.objects.filter(id=r['id_assocpt']).first()
|
club = Club.objects.filter(id=r['id_assocpt']).first() or ae
|
||||||
counter = Counter.objects.filter(id=r['id_comptoir']).first()
|
counter = Counter.objects.filter(id=r['id_comptoir']).first() or mde
|
||||||
op = User.objects.filter(id=r['id_utilisateur']).first()
|
op = User.objects.filter(id=r['id_utilisateur']).first() or root
|
||||||
customer = Customer.objects.filter(user__id=r['id_utilisateur_client']).first()
|
customer = Customer.objects.filter(user__id=r['id_utilisateur_client']).first() or root.customer
|
||||||
new = Selling(
|
new = Selling(
|
||||||
label=product.name,
|
label=product.name,
|
||||||
counter=counter,
|
counter=counter,
|
||||||
@ -570,6 +574,7 @@ def main():
|
|||||||
# migrate_subscriptions()
|
# migrate_subscriptions()
|
||||||
# update_customer_account()
|
# update_customer_account()
|
||||||
# migrate_counters()
|
# migrate_counters()
|
||||||
|
# migrate_permanencies()
|
||||||
# migrate_typeproducts()
|
# migrate_typeproducts()
|
||||||
# migrate_products()
|
# migrate_products()
|
||||||
# migrate_products_to_counter()
|
# migrate_products_to_counter()
|
||||||
@ -577,7 +582,6 @@ def main():
|
|||||||
# migrate_invoices()
|
# migrate_invoices()
|
||||||
# migrate_refillings()
|
# migrate_refillings()
|
||||||
# migrate_sellings()
|
# migrate_sellings()
|
||||||
# migrate_permanencies()
|
|
||||||
reset_index('core', 'counter')
|
reset_index('core', 'counter')
|
||||||
|
|
||||||
if __name__ == "__main__":
|
if __name__ == "__main__":
|
||||||
|
Loading…
Reference in New Issue
Block a user