mirror of
https://github.com/ae-utbm/sith.git
synced 2025-07-13 05:19:26 +00:00
Compare commits
4 Commits
fix/licens
...
features/m
Author | SHA1 | Date | |
---|---|---|---|
f234f94171 | |||
fa758867cc | |||
f41ff281fb | |||
321cb72ca8 |
8
.github/actions/setup_project/action.yml
vendored
8
.github/actions/setup_project/action.yml
vendored
@ -6,13 +6,13 @@ runs:
|
|||||||
- name: Install apt packages
|
- name: Install apt packages
|
||||||
uses: awalsh128/cache-apt-pkgs-action@latest
|
uses: awalsh128/cache-apt-pkgs-action@latest
|
||||||
with:
|
with:
|
||||||
packages: gettext libxapian-dev libgraphviz-dev
|
packages: gettext libgraphviz-dev
|
||||||
version: 1.0 # increment to reset cache
|
version: 1.0 # increment to reset cache
|
||||||
|
|
||||||
- name: Install dependencies
|
- name: Install dependencies
|
||||||
run: |
|
run: |
|
||||||
sudo apt update
|
sudo apt update
|
||||||
sudo apt install gettext libxapian-dev libgraphviz-dev
|
sudo apt install gettext libgraphviz-dev
|
||||||
shell: bash
|
shell: bash
|
||||||
|
|
||||||
- name: Set up python
|
- name: Set up python
|
||||||
@ -25,7 +25,7 @@ runs:
|
|||||||
uses: actions/cache@v3
|
uses: actions/cache@v3
|
||||||
with:
|
with:
|
||||||
path: ~/.local
|
path: ~/.local
|
||||||
key: poetry-0 # increment to reset cache
|
key: poetry-0 # increment to reset cache
|
||||||
|
|
||||||
- name: Install Poetry
|
- name: Install Poetry
|
||||||
if: steps.cached-poetry.outputs.cache-hit != 'true'
|
if: steps.cached-poetry.outputs.cache-hit != 'true'
|
||||||
|
10
.github/actions/setup_xapian/action.yml
vendored
10
.github/actions/setup_xapian/action.yml
vendored
@ -1,10 +0,0 @@
|
|||||||
name: "Setup xapian"
|
|
||||||
description: "Setup the xapian indexes"
|
|
||||||
runs:
|
|
||||||
using: composite
|
|
||||||
steps:
|
|
||||||
- name: Setup xapian index
|
|
||||||
run: |
|
|
||||||
mkdir -p /dev/shm/search_indexes
|
|
||||||
ln -s /dev/shm/search_indexes sith/search_indexes
|
|
||||||
shell: bash
|
|
9
.github/workflows/ci.yml
vendored
9
.github/workflows/ci.yml
vendored
@ -2,7 +2,7 @@ name: Sith 3 CI
|
|||||||
|
|
||||||
on:
|
on:
|
||||||
push:
|
push:
|
||||||
branches: [master, taiste]
|
branches: [master, taiste, features/**]
|
||||||
pull_request:
|
pull_request:
|
||||||
branches: [master, taiste]
|
branches: [master, taiste]
|
||||||
workflow_dispatch:
|
workflow_dispatch:
|
||||||
@ -21,11 +21,16 @@ jobs:
|
|||||||
tests:
|
tests:
|
||||||
name: Run tests and generate coverage report
|
name: Run tests and generate coverage report
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
|
container:
|
||||||
|
image: docker.elastic.co/elasticsearch/elasticsearch:7.17.14
|
||||||
|
env:
|
||||||
|
discovery.type: single-node
|
||||||
|
ports:
|
||||||
|
- 9200
|
||||||
steps:
|
steps:
|
||||||
- name: Check out repository
|
- name: Check out repository
|
||||||
uses: actions/checkout@v3
|
uses: actions/checkout@v3
|
||||||
- uses: ./.github/actions/setup_project
|
- uses: ./.github/actions/setup_project
|
||||||
- uses: ./.github/actions/setup_xapian
|
|
||||||
- uses: ./.github/actions/compile_messages
|
- uses: ./.github/actions/compile_messages
|
||||||
- name: Run tests
|
- name: Run tests
|
||||||
run: poetry run coverage run ./manage.py test
|
run: poetry run coverage run ./manage.py test
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
{% from 'core/macros.jinja' import user_profile_link, paginate %}
|
{% from 'core/macros.jinja' import user_profile_link, paginate %}
|
||||||
|
|
||||||
{% block content %}
|
{% block content %}
|
||||||
<h3>{% trans %}Sellings{% endtrans %}</h3>
|
<h3>{% trans %}Sales{% endtrans %}</h3>
|
||||||
<form id="form" action="?page=1" method="post">
|
<form id="form" action="?page=1" method="post">
|
||||||
{% csrf_token %}
|
{% csrf_token %}
|
||||||
{{ form }}
|
{{ form }}
|
||||||
|
@ -30,7 +30,7 @@
|
|||||||
{% endif %}
|
{% endif %}
|
||||||
</ul>
|
</ul>
|
||||||
{% if object.club_account.exists() %}
|
{% if object.club_account.exists() %}
|
||||||
<h4>{% trans %}Accouting: {% endtrans %}</h4>
|
<h4>{% trans %}Accounting: {% endtrans %}</h4>
|
||||||
<ul>
|
<ul>
|
||||||
{% for ca in object.club_account.all() %}
|
{% for ca in object.club_account.all() %}
|
||||||
<li><a href="{{ url('accounting:club_details', c_account_id=ca.id) }}">{{ ca.get_display_name() }}</a></li>
|
<li><a href="{{ url('accounting:club_details', c_account_id=ca.id) }}">{{ ca.get_display_name() }}</a></li>
|
||||||
|
@ -39,7 +39,7 @@
|
|||||||
<p> <a href="{{ url('com:news_moderate', news_id=news.id) }}">{% trans %}Moderate{% endtrans %}</a></p>
|
<p> <a href="{{ url('com:news_moderate', news_id=news.id) }}">{% trans %}Moderate{% endtrans %}</a></p>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
{% if user.can_edit(news) %}
|
{% if user.can_edit(news) %}
|
||||||
<p> <a href="{{ url('com:news_edit', news_id=news.id) }}">{% trans %}Edit (will be remoderated){% endtrans %}</a></p>
|
<p> <a href="{{ url('com:news_edit', news_id=news.id) }}">{% trans %}Edit (will be moderated again){% endtrans %}</a></p>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
@ -203,11 +203,7 @@
|
|||||||
<ul class="content">
|
<ul class="content">
|
||||||
<li><a href="{{ url('core:page', page_name='ae') }}">{% trans %}AE{% endtrans %}</a></li>
|
<li><a href="{{ url('core:page', page_name='ae') }}">{% trans %}AE{% endtrans %}</a></li>
|
||||||
<li><a href="{{ url('core:page', page_name='clubs') }}">{% trans %}AE's clubs{% endtrans %}</a></li>
|
<li><a href="{{ url('core:page', page_name='clubs') }}">{% trans %}AE's clubs{% endtrans %}</a></li>
|
||||||
<li><a href="{{ url('core:page', page_name='bdf') }}">{% trans %}BdF{% endtrans %}</a></li>
|
<li><a href="{{ url('core:page', page_name='utbm-associations') }}">{% trans %}Others UTBM's Associations{% endtrans %}</a></li>
|
||||||
<li><a href="{{ url('core:page', page_name='bds') }}">{% trans %}BDS{% endtrans %}</a></li>
|
|
||||||
<li><a href="{{ url('core:page', page_name='cetu') }}">{% trans %}CETU{% endtrans %}</a></li>
|
|
||||||
<li><a href="{{ url('core:page', page_name='clubs/doceo') }}">{% trans %}Doceo{% endtrans %}</a></li>
|
|
||||||
<li><a href="{{ url('core:page', page_name='positions') }}">{% trans %}Positions{% endtrans %}</a></li>
|
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
<div class="menu">
|
<div class="menu">
|
||||||
|
@ -17,7 +17,7 @@
|
|||||||
|
|
||||||
{% if user_registered %}
|
{% if user_registered %}
|
||||||
{% trans user_name=user_registered.get_display_name() %}Welcome {{ user_name }}!{% endtrans %}<br>
|
{% trans user_name=user_registered.get_display_name() %}Welcome {{ user_name }}!{% endtrans %}<br>
|
||||||
{% trans %}You successfully registred and you will soon receive a confirmation mail.{% endtrans %}<br>
|
{% trans %}You successfully registered and you will soon receive a confirmation mail.{% endtrans %}<br>
|
||||||
{% trans username=user_registered.username %}Your username is {{ username }}.{% endtrans %}<br>
|
{% trans username=user_registered.username %}Your username is {{ username }}.{% endtrans %}<br>
|
||||||
|
|
||||||
{% else %}
|
{% else %}
|
||||||
|
@ -41,11 +41,11 @@
|
|||||||
{% set refilled = customer.refillings.exists() %}
|
{% set refilled = customer.refillings.exists() %}
|
||||||
{% if bought or refilled %}
|
{% if bought or refilled %}
|
||||||
{% if bought %}
|
{% if bought %}
|
||||||
<h5>{% trans %}Account buyings{% endtrans %}</h5>
|
<h5>{% trans %}Account purchases{% endtrans %}</h5>
|
||||||
{{ monthly(buyings_month) }}
|
{{ monthly(buyings_month) }}
|
||||||
{% endif %}
|
{% endif %}
|
||||||
{% if refilled %}
|
{% if refilled %}
|
||||||
<h5>{% trans %}Refillings{% endtrans %}</h5>
|
<h5>{% trans %}Reloads{% endtrans %}</h5>
|
||||||
{{ monthly(refilling_month) }}
|
{{ monthly(refilling_month) }}
|
||||||
{% endif %}
|
{% endif %}
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
@ -10,7 +10,7 @@
|
|||||||
<p>{% trans %}Amount: {% endtrans %}{{ customer.amount }} €</p>
|
<p>{% trans %}Amount: {% endtrans %}{{ customer.amount }} €</p>
|
||||||
<p><a href="{{ url('core:user_account', user_id=profile.id) }}">{% trans %}Back{% endtrans %}</a></p>
|
<p><a href="{{ url('core:user_account', user_id=profile.id) }}">{% trans %}Back{% endtrans %}</a></p>
|
||||||
{% if customer.buyings.exists() %}
|
{% if customer.buyings.exists() %}
|
||||||
<h4>{% trans %}Account buyings{% endtrans %}</h4>
|
<h4>{% trans %}Account purchases{% endtrans %}</h4>
|
||||||
<table>
|
<table>
|
||||||
<thead>
|
<thead>
|
||||||
<tr>
|
<tr>
|
||||||
@ -43,7 +43,7 @@
|
|||||||
</table>
|
</table>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
{% if customer.refillings.exists() %}
|
{% if customer.refillings.exists() %}
|
||||||
<h4>{% trans %}Refillings{% endtrans %}</h4>
|
<h4>{% trans %}Reloads{% endtrans %}</h4>
|
||||||
<table>
|
<table>
|
||||||
<thead>
|
<thead>
|
||||||
<tr>
|
<tr>
|
||||||
|
@ -14,7 +14,7 @@
|
|||||||
{{ form }}
|
{{ form }}
|
||||||
<p><input type="submit" value="{% trans %}Show{% endtrans %}" /></p>
|
<p><input type="submit" value="{% trans %}Show{% endtrans %}" /></p>
|
||||||
</form>
|
</form>
|
||||||
<h6>{% trans %}Refillings{% endtrans %}</h6>
|
<h6>{% trans %}Reloads{% endtrans %}</h6>
|
||||||
<p>
|
<p>
|
||||||
{% for b,s in refilling_sums.items() %}
|
{% for b,s in refilling_sums.items() %}
|
||||||
{{ b }}: {{ s }} €<br/>
|
{{ b }}: {{ s }} €<br/>
|
||||||
|
@ -19,7 +19,7 @@
|
|||||||
{% endif %}
|
{% endif %}
|
||||||
{% if user.is_owner(c) %}
|
{% if user.is_owner(c) %}
|
||||||
<a href="{{ url('counter:prop_admin', counter_id=c.id) }}">{% trans %}Props{% endtrans %}</a> -
|
<a href="{{ url('counter:prop_admin', counter_id=c.id) }}">{% trans %}Props{% endtrans %}</a> -
|
||||||
<a href="{{ url('counter:refilling_list', counter_id=c.id) }}">{% trans %}Refillings list{% endtrans %}</a>
|
<a href="{{ url('counter:refilling_list', counter_id=c.id) }}">{% trans %}Reloads list{% endtrans %}</a>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
</li>
|
</li>
|
||||||
{% endfor %}
|
{% endfor %}
|
||||||
@ -41,7 +41,7 @@
|
|||||||
{% endif %}
|
{% endif %}
|
||||||
{% if user.is_owner(c) %}
|
{% if user.is_owner(c) %}
|
||||||
<a href="{{ url('counter:prop_admin', counter_id=c.id) }}">{% trans %}Props{% endtrans %}</a> -
|
<a href="{{ url('counter:prop_admin', counter_id=c.id) }}">{% trans %}Props{% endtrans %}</a> -
|
||||||
<a href="{{ url('counter:refilling_list', counter_id=c.id) }}">{% trans %}Refillings list{% endtrans %}</a>
|
<a href="{{ url('counter:refilling_list', counter_id=c.id) }}">{% trans %}Reloads list{% endtrans %}</a>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
</li>
|
</li>
|
||||||
{% endfor %}
|
{% endfor %}
|
||||||
|
@ -21,7 +21,7 @@
|
|||||||
{% block content %}
|
{% block content %}
|
||||||
<h3>{% trans counter_name=counter %}{{ counter_name }} counter{% endtrans %}</h3>
|
<h3>{% trans counter_name=counter %}{{ counter_name }} counter{% endtrans %}</h3>
|
||||||
<div>
|
<div>
|
||||||
<h3>{% trans %}Sellings{% endtrans %}</h3>
|
<h3>{% trans %}Sales{% endtrans %}</h3>
|
||||||
{% if last_basket %}
|
{% if last_basket %}
|
||||||
<h4>{% trans %}Last selling: {% endtrans %}</h4>
|
<h4>{% trans %}Last selling: {% endtrans %}</h4>
|
||||||
<p>{% trans %}Client: {% endtrans %}{{ last_customer }} - {% trans %}New amount: {% endtrans %}{{ new_customer_amount }} €.</p>
|
<p>{% trans %}Client: {% endtrans %}{{ last_customer }} - {% trans %}New amount: {% endtrans %}{{ new_customer_amount }} €.</p>
|
||||||
|
@ -13,7 +13,7 @@
|
|||||||
|
|
||||||
{% block content %}
|
{% block content %}
|
||||||
<h3>{% trans counter_name=counter %}{{ counter_name }} last operations{% endtrans %}</h3>
|
<h3>{% trans counter_name=counter %}{{ counter_name }} last operations{% endtrans %}</h3>
|
||||||
<h4>{% trans %}Refillings{% endtrans %}</h4>
|
<h4>{% trans %}Reloads{% endtrans %}</h4>
|
||||||
<table>
|
<table>
|
||||||
<thead>
|
<thead>
|
||||||
<tr>
|
<tr>
|
||||||
@ -38,7 +38,7 @@
|
|||||||
</tbody>
|
</tbody>
|
||||||
</table>
|
</table>
|
||||||
|
|
||||||
<h4>{% trans %}Sellings{% endtrans %}</h4>
|
<h4>{% trans %}Sales{% endtrans %}</h4>
|
||||||
<table>
|
<table>
|
||||||
<thead>
|
<thead>
|
||||||
<tr>
|
<tr>
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
{% from 'core/macros.jinja' import paginate %}
|
{% from 'core/macros.jinja' import paginate %}
|
||||||
|
|
||||||
{% block title %}
|
{% block title %}
|
||||||
{%- trans %}Refillings list{% endtrans %} -- {{ counter.name }}
|
{%- trans %}Reloads list{% endtrans %} -- {{ counter.name }}
|
||||||
{% endblock %}
|
{% endblock %}
|
||||||
|
|
||||||
{% block content %}
|
{% block content %}
|
||||||
|
@ -90,24 +90,6 @@
|
|||||||
</div>
|
</div>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
|
||||||
<section>
|
|
||||||
<div class="category-header">
|
|
||||||
<h3>Partenariat Eurockéenes</h3>
|
|
||||||
<br>
|
|
||||||
{% if user.is_subscribed %}
|
|
||||||
<a title="Logiciel billetterie en ligne"
|
|
||||||
href="https://widget.weezevent.com/ticket/6e2917c4-03bf-42b4-aebb-27ee8353b022?id_evenement=1013910&locale=fr-FR&code=11855"
|
|
||||||
class="weezevent-widget-integration" target="_blank"
|
|
||||||
data-src="https://widget.weezevent.com/ticket/6e2917c4-03bf-42b4-aebb-27ee8353b022?id_evenement=1013910&locale=fr-FR&code=11855"
|
|
||||||
data-width="650" data-height="600" data-resize="1" data-nopb="0" data-type="neo" data-width_auto="1"
|
|
||||||
data-noscroll="0" data-id="1013910">Billetterie Weezevent</a>
|
|
||||||
<script type="text/javascript" src="https://widget.weezevent.com/weez.js" async defer></script>
|
|
||||||
{% else %}
|
|
||||||
<div>Vous devez être cotisant pour accéder à la billeterie des Eurockéennes</div>
|
|
||||||
{% endif %}
|
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
|
|
||||||
{% for priority_groups in products|groupby('priority')|reverse %}
|
{% for priority_groups in products|groupby('priority')|reverse %}
|
||||||
{% for category, items in priority_groups.list|groupby('category') %}
|
{% for category, items in priority_groups.list|groupby('category') %}
|
||||||
{% if items|count > 0 %}
|
{% if items|count > 0 %}
|
||||||
|
@ -63,7 +63,7 @@ msgstr "IBAN"
|
|||||||
|
|
||||||
#: accounting/models.py:112
|
#: accounting/models.py:112
|
||||||
msgid "account number"
|
msgid "account number"
|
||||||
msgstr "numero de compte"
|
msgstr "numéro de compte"
|
||||||
|
|
||||||
#: accounting/models.py:116 accounting/models.py:147 club/models.py:275
|
#: accounting/models.py:116 accounting/models.py:147 club/models.py:275
|
||||||
#: com/models.py:75 com/models.py:266 com/models.py:302 counter/models.py:273
|
#: com/models.py:75 com/models.py:266 com/models.py:302 counter/models.py:273
|
||||||
@ -1173,7 +1173,7 @@ msgstr "Au"
|
|||||||
#: club/templates/club/club_sellings.jinja:5 club/views.py:154
|
#: club/templates/club/club_sellings.jinja:5 club/views.py:154
|
||||||
#: club/views.py:483 counter/templates/counter/counter_main.jinja:24
|
#: club/views.py:483 counter/templates/counter/counter_main.jinja:24
|
||||||
#: counter/templates/counter/last_ops.jinja:41
|
#: counter/templates/counter/last_ops.jinja:41
|
||||||
msgid "Sellings"
|
msgid "Sales"
|
||||||
msgstr "Ventes"
|
msgstr "Ventes"
|
||||||
|
|
||||||
#: club/templates/club/club_sellings.jinja:9 club/templates/club/stats.jinja:19
|
#: club/templates/club/club_sellings.jinja:9 club/templates/club/stats.jinja:19
|
||||||
@ -1278,7 +1278,7 @@ msgid "Counters:"
|
|||||||
msgstr "Comptoirs : "
|
msgstr "Comptoirs : "
|
||||||
|
|
||||||
#: club/templates/club/club_tools.jinja:33
|
#: club/templates/club/club_tools.jinja:33
|
||||||
msgid "Accouting: "
|
msgid "Accounting: "
|
||||||
msgstr "Comptabilité : "
|
msgstr "Comptabilité : "
|
||||||
|
|
||||||
#: club/templates/club/club_tools.jinja:41
|
#: club/templates/club/club_tools.jinja:41
|
||||||
@ -1295,8 +1295,8 @@ msgid ""
|
|||||||
"not shown wait until moderation takes action"
|
"not shown wait until moderation takes action"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Rappelez vous : les mailing listes doivent être modérées, si votre liste "
|
"Rappelez vous : les mailing listes doivent être modérées, si votre liste "
|
||||||
"nouvellement créee n'est pas affichée, attendez jusqu'à qu'un modérateur "
|
"nouvellement créée n'est pas affichée, attendez jusqu'à ce qu'un modérateur "
|
||||||
"entre en action"
|
"prenne une décision"
|
||||||
|
|
||||||
#: club/templates/club/mailing.jinja:13
|
#: club/templates/club/mailing.jinja:13
|
||||||
msgid "Mailing lists waiting for moderation"
|
msgid "Mailing lists waiting for moderation"
|
||||||
@ -1671,8 +1671,8 @@ msgid "Moderator: "
|
|||||||
msgstr "Modérateur : "
|
msgstr "Modérateur : "
|
||||||
|
|
||||||
#: com/templates/com/news_detail.jinja:42
|
#: com/templates/com/news_detail.jinja:42
|
||||||
msgid "Edit (will be remoderated)"
|
msgid "Edit (will be moderated again)"
|
||||||
msgstr "Éditer (sera resoumise à modération)"
|
msgstr "Éditer (sera soumise de nouveau à la modération)"
|
||||||
|
|
||||||
#: com/templates/com/news_edit.jinja:6 com/templates/com/news_edit.jinja:29
|
#: com/templates/com/news_edit.jinja:6 com/templates/com/news_edit.jinja:29
|
||||||
msgid "Edit news"
|
msgid "Edit news"
|
||||||
@ -1680,7 +1680,7 @@ msgstr "Éditer la nouvelle"
|
|||||||
|
|
||||||
#: com/templates/com/news_edit.jinja:39
|
#: com/templates/com/news_edit.jinja:39
|
||||||
msgid "Notice: Information, election result - no date"
|
msgid "Notice: Information, election result - no date"
|
||||||
msgstr "Information, resultat d'élection - sans date"
|
msgstr "Information, résultat d'élection - sans date"
|
||||||
|
|
||||||
#: com/templates/com/news_edit.jinja:40
|
#: com/templates/com/news_edit.jinja:40
|
||||||
msgid "Event: punctual event, associated with one date"
|
msgid "Event: punctual event, associated with one date"
|
||||||
@ -1951,7 +1951,7 @@ msgstr "T'es fou? Un événement ne peut pas finir avant même de commencer."
|
|||||||
|
|
||||||
#: com/views.py:466
|
#: com/views.py:466
|
||||||
msgid "Delete and save to regenerate"
|
msgid "Delete and save to regenerate"
|
||||||
msgstr "Supprimer et sauver pour regénérer"
|
msgstr "Supprimer et sauver pour régénérer"
|
||||||
|
|
||||||
#: com/views.py:481
|
#: com/views.py:481
|
||||||
msgid "Weekmail of the "
|
msgid "Weekmail of the "
|
||||||
@ -2036,7 +2036,7 @@ msgid ""
|
|||||||
"Designates whether this user should be treated as active. Unselect this "
|
"Designates whether this user should be treated as active. Unselect this "
|
||||||
"instead of deleting accounts."
|
"instead of deleting accounts."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Est-ce que l'utilisateur doit être traité comme actif. Déselectionnez au "
|
"Est-ce que l'utilisateur doit être traité comme actif. Désélectionnez au "
|
||||||
"lieu de supprimer les comptes."
|
"lieu de supprimer les comptes."
|
||||||
|
|
||||||
#: core/models.py:185
|
#: core/models.py:185
|
||||||
@ -2085,7 +2085,7 @@ msgstr "pronoms"
|
|||||||
|
|
||||||
#: core/models.py:234
|
#: core/models.py:234
|
||||||
msgid "tshirt size"
|
msgid "tshirt size"
|
||||||
msgstr "taille de tshirt"
|
msgstr "taille de t-shirt"
|
||||||
|
|
||||||
#: core/models.py:237
|
#: core/models.py:237
|
||||||
msgid "-"
|
msgid "-"
|
||||||
@ -2426,7 +2426,7 @@ msgstr "Voir plus"
|
|||||||
#: core/templates/core/base.jinja:122
|
#: core/templates/core/base.jinja:122
|
||||||
#: forum/templates/forum/last_unread.jinja:17
|
#: forum/templates/forum/last_unread.jinja:17
|
||||||
msgid "Mark all as read"
|
msgid "Mark all as read"
|
||||||
msgstr "Marquer tout commme lu"
|
msgstr "Marquer tout comme lu"
|
||||||
|
|
||||||
#: core/templates/core/base.jinja:132
|
#: core/templates/core/base.jinja:132
|
||||||
msgid "Logout"
|
msgid "Logout"
|
||||||
@ -2440,33 +2440,17 @@ msgstr "Accueil"
|
|||||||
msgid "Associations & Clubs"
|
msgid "Associations & Clubs"
|
||||||
msgstr "Associations & Clubs"
|
msgstr "Associations & Clubs"
|
||||||
|
|
||||||
#: core/templates/core/base.jinja:173
|
#: core/templates/core/base.jinja:204
|
||||||
msgid "AE"
|
msgid "AE"
|
||||||
msgstr "L'AE"
|
msgstr "L'AE"
|
||||||
|
|
||||||
#: core/templates/core/base.jinja:174
|
#: core/templates/core/base.jinja:205
|
||||||
msgid "AE's clubs"
|
msgid "AE's clubs"
|
||||||
msgstr "Les clubs de L'AE"
|
msgstr "Les clubs de L'AE"
|
||||||
|
|
||||||
#: core/templates/core/base.jinja:175
|
#: core/templates/core/base.jinja:206
|
||||||
msgid "BdF"
|
msgid "Others UTBM's Associations"
|
||||||
msgstr "Le BdF"
|
msgstr "Les autres associations de l'UTBM"
|
||||||
|
|
||||||
#: core/templates/core/base.jinja:176
|
|
||||||
msgid "BDS"
|
|
||||||
msgstr "Le BDS"
|
|
||||||
|
|
||||||
#: core/templates/core/base.jinja:177
|
|
||||||
msgid "CETU"
|
|
||||||
msgstr "Le CETU"
|
|
||||||
|
|
||||||
#: core/templates/core/base.jinja:178
|
|
||||||
msgid "Doceo"
|
|
||||||
msgstr "Doceo"
|
|
||||||
|
|
||||||
#: core/templates/core/base.jinja:179
|
|
||||||
msgid "Positions"
|
|
||||||
msgstr "Postes à pourvoir"
|
|
||||||
|
|
||||||
#: core/templates/core/base.jinja:187 core/templates/core/user_tools.jinja:118
|
#: core/templates/core/base.jinja:187 core/templates/core/user_tools.jinja:118
|
||||||
msgid "Elections"
|
msgid "Elections"
|
||||||
@ -2780,7 +2764,7 @@ msgstr "Cotisant jusqu'au %(subscription_end)s"
|
|||||||
|
|
||||||
#: core/templates/core/macros.jinja:86 core/templates/core/user_edit.jinja:40
|
#: core/templates/core/macros.jinja:86 core/templates/core/user_edit.jinja:40
|
||||||
msgid "Account number: "
|
msgid "Account number: "
|
||||||
msgstr "Numero de compte : "
|
msgstr "Numéro de compte : "
|
||||||
|
|
||||||
#: core/templates/core/macros.jinja:91 launderette/models.py:217
|
#: core/templates/core/macros.jinja:91 launderette/models.py:217
|
||||||
msgid "Slot"
|
msgid "Slot"
|
||||||
@ -3004,7 +2988,7 @@ msgstr "Bienvenue, %(user_name)s!"
|
|||||||
|
|
||||||
#: core/templates/core/register.jinja:10
|
#: core/templates/core/register.jinja:10
|
||||||
msgid ""
|
msgid ""
|
||||||
"You successfully registred and you will soon receive a confirmation mail."
|
"You successfully registered and you will soon receive a confirmation mail."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Vous vous êtes correctement enregistré, et vous devriez recevoir rapidement "
|
"Vous vous êtes correctement enregistré, et vous devriez recevoir rapidement "
|
||||||
"un email de confirmation."
|
"un email de confirmation."
|
||||||
@ -3063,14 +3047,14 @@ msgstr "Compte utilisateur"
|
|||||||
|
|
||||||
#: core/templates/core/user_account.jinja:44
|
#: core/templates/core/user_account.jinja:44
|
||||||
#: core/templates/core/user_account_detail.jinja:13
|
#: core/templates/core/user_account_detail.jinja:13
|
||||||
msgid "Account buyings"
|
msgid "Account purchases"
|
||||||
msgstr "Achat sur compte utilisateur"
|
msgstr "Achats du compte"
|
||||||
|
|
||||||
#: core/templates/core/user_account.jinja:48
|
#: core/templates/core/user_account.jinja:48
|
||||||
#: core/templates/core/user_account_detail.jinja:46
|
#: core/templates/core/user_account_detail.jinja:46
|
||||||
#: counter/templates/counter/cash_summary_list.jinja:17
|
#: counter/templates/counter/cash_summary_list.jinja:17
|
||||||
#: counter/templates/counter/last_ops.jinja:16
|
#: counter/templates/counter/last_ops.jinja:16
|
||||||
msgid "Refillings"
|
msgid "Reloads"
|
||||||
msgstr "Rechargements"
|
msgstr "Rechargements"
|
||||||
|
|
||||||
#: core/templates/core/user_account.jinja:53
|
#: core/templates/core/user_account.jinja:53
|
||||||
@ -4114,7 +4098,7 @@ msgstr "Nouveau comptoir"
|
|||||||
#: counter/templates/counter/counter_list.jinja:22
|
#: counter/templates/counter/counter_list.jinja:22
|
||||||
#: counter/templates/counter/counter_list.jinja:44
|
#: counter/templates/counter/counter_list.jinja:44
|
||||||
#: counter/templates/counter/refilling_list.jinja:5
|
#: counter/templates/counter/refilling_list.jinja:5
|
||||||
msgid "Refillings list"
|
msgid "Reloads list"
|
||||||
msgstr "Liste de rechargements"
|
msgstr "Liste de rechargements"
|
||||||
|
|
||||||
#: counter/templates/counter/counter_list.jinja:27
|
#: counter/templates/counter/counter_list.jinja:27
|
||||||
@ -5033,7 +5017,7 @@ msgid ""
|
|||||||
"The code of an UV must only contains uppercase characters without accent and "
|
"The code of an UV must only contains uppercase characters without accent and "
|
||||||
"numbers"
|
"numbers"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Le code d'une UV doit seulement contenire des caractères majuscule sans "
|
"Le code d'une UV doit seulement contenir des caractères majuscule sans "
|
||||||
"accents et nombres"
|
"accents et nombres"
|
||||||
|
|
||||||
#: pedagogy/models.py:67
|
#: pedagogy/models.py:67
|
||||||
@ -5058,7 +5042,7 @@ msgstr "département"
|
|||||||
|
|
||||||
#: pedagogy/models.py:103
|
#: pedagogy/models.py:103
|
||||||
msgid "objectives"
|
msgid "objectives"
|
||||||
msgstr "objecifs"
|
msgstr "objectifs"
|
||||||
|
|
||||||
#: pedagogy/models.py:104
|
#: pedagogy/models.py:104
|
||||||
msgid "program"
|
msgid "program"
|
||||||
@ -5094,7 +5078,7 @@ msgstr "heures TE"
|
|||||||
|
|
||||||
#: pedagogy/models.py:217 pedagogy/models.py:291
|
#: pedagogy/models.py:217 pedagogy/models.py:291
|
||||||
msgid "uv"
|
msgid "uv"
|
||||||
msgstr "uv"
|
msgstr "UE"
|
||||||
|
|
||||||
#: pedagogy/models.py:221
|
#: pedagogy/models.py:221
|
||||||
msgid "global grade"
|
msgid "global grade"
|
||||||
@ -5153,7 +5137,7 @@ msgstr "%(credit_type)s"
|
|||||||
#: pedagogy/templates/pedagogy/guide.jinja:59
|
#: pedagogy/templates/pedagogy/guide.jinja:59
|
||||||
#: pedagogy/templates/pedagogy/moderation.jinja:12
|
#: pedagogy/templates/pedagogy/moderation.jinja:12
|
||||||
msgid "UV"
|
msgid "UV"
|
||||||
msgstr "UV"
|
msgstr "UE"
|
||||||
|
|
||||||
#: pedagogy/templates/pedagogy/guide.jinja:61
|
#: pedagogy/templates/pedagogy/guide.jinja:61
|
||||||
msgid "Department"
|
msgid "Department"
|
||||||
@ -5253,8 +5237,8 @@ msgid "Key concepts"
|
|||||||
msgstr "Concepts clefs"
|
msgstr "Concepts clefs"
|
||||||
|
|
||||||
#: pedagogy/templates/pedagogy/uv_detail.jinja:79
|
#: pedagogy/templates/pedagogy/uv_detail.jinja:79
|
||||||
msgid "UV manager: "
|
msgid "UE manager: "
|
||||||
msgstr "Gestionnaire d'UV : "
|
msgstr "Gestionnaire d'UE : "
|
||||||
|
|
||||||
#: pedagogy/templates/pedagogy/uv_detail.jinja:86 pedagogy/tests.py:453
|
#: pedagogy/templates/pedagogy/uv_detail.jinja:86 pedagogy/tests.py:453
|
||||||
msgid ""
|
msgid ""
|
||||||
@ -5284,23 +5268,23 @@ msgstr "Signaler ce commentaire"
|
|||||||
|
|
||||||
#: pedagogy/templates/pedagogy/uv_edit.jinja:4
|
#: pedagogy/templates/pedagogy/uv_edit.jinja:4
|
||||||
#: pedagogy/templates/pedagogy/uv_edit.jinja:8
|
#: pedagogy/templates/pedagogy/uv_edit.jinja:8
|
||||||
msgid "Edit UV"
|
msgid "Edit UE"
|
||||||
msgstr "Éditer"
|
msgstr "Éditer l'UE"
|
||||||
|
|
||||||
#: pedagogy/templates/pedagogy/uv_edit.jinja:27
|
#: pedagogy/templates/pedagogy/uv_edit.jinja:27
|
||||||
msgid "Import from UTBM"
|
msgid "Import from UTBM"
|
||||||
msgstr "Importer depuis l'UTBM"
|
msgstr "Importer depuis l'UTBM"
|
||||||
|
|
||||||
#: pedagogy/templates/pedagogy/uv_edit.jinja:62
|
#: pedagogy/templates/pedagogy/uv_edit.jinja:62
|
||||||
msgid "Unknown UV code"
|
msgid "Unknown UE code"
|
||||||
msgstr "Code d'UV inconnu"
|
msgstr "Code d'UE inconnu"
|
||||||
|
|
||||||
#: pedagogy/templates/pedagogy/uv_edit.jinja:77
|
#: pedagogy/templates/pedagogy/uv_edit.jinja:77
|
||||||
msgid "Successful autocomplete"
|
msgid "Successful autocomplete"
|
||||||
msgstr "Autocomplétion réussite"
|
msgstr "Autocomplétion réussite"
|
||||||
|
|
||||||
#: pedagogy/templates/pedagogy/uv_edit.jinja:80
|
#: pedagogy/templates/pedagogy/uv_edit.jinja:80
|
||||||
msgid "An error occured: "
|
msgid "An error occurred: "
|
||||||
msgstr "Une erreur est survenue : "
|
msgstr "Une erreur est survenue : "
|
||||||
|
|
||||||
#: rootplace/templates/rootplace/delete_user_messages.jinja:8
|
#: rootplace/templates/rootplace/delete_user_messages.jinja:8
|
||||||
@ -5566,7 +5550,7 @@ msgstr "Automne et printemps"
|
|||||||
|
|
||||||
#: sith/settings.py:448
|
#: sith/settings.py:448
|
||||||
msgid "German"
|
msgid "German"
|
||||||
msgstr "Allemant"
|
msgstr "Allemand"
|
||||||
|
|
||||||
#: sith/settings.py:449
|
#: sith/settings.py:449
|
||||||
msgid "Spanish"
|
msgid "Spanish"
|
||||||
|
@ -76,7 +76,7 @@
|
|||||||
<p>{{ object.skills|markdown }}</p>
|
<p>{{ object.skills|markdown }}</p>
|
||||||
<p><b>{% trans %}Key concepts{% endtrans %}</b></p>
|
<p><b>{% trans %}Key concepts{% endtrans %}</b></p>
|
||||||
<p>{{ object.key_concepts|markdown }}</p>
|
<p>{{ object.key_concepts|markdown }}</p>
|
||||||
<p><b>{% trans %}UV manager: {% endtrans %}</b>{{ object.manager }}</p>
|
<p><b>{% trans %}UE manager: {% endtrans %}</b>{{ object.manager }}</p>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
@ -1,11 +1,11 @@
|
|||||||
{% extends "core/base.jinja" %}
|
{% extends "core/base.jinja" %}
|
||||||
|
|
||||||
{% block title %}
|
{% block title %}
|
||||||
{% trans %}Edit UV{% endtrans %}
|
{% trans %}Edit UE{% endtrans %}
|
||||||
{% endblock %}
|
{% endblock %}
|
||||||
|
|
||||||
{% block content %}
|
{% block content %}
|
||||||
<h2>{% trans %}Edit UV{% endtrans %}</h2>
|
<h2>{% trans %}Edit UE{% endtrans %}</h2>
|
||||||
<form action="" method="post" enctype="multipart/form-data" id="uv_edit">
|
<form action="" method="post" enctype="multipart/form-data" id="uv_edit">
|
||||||
{% csrf_token %}
|
{% csrf_token %}
|
||||||
{{ form.non_field_errors() }}
|
{{ form.non_field_errors() }}
|
||||||
@ -59,7 +59,7 @@
|
|||||||
url: url,
|
url: url,
|
||||||
success: function(data, _, xhr) {
|
success: function(data, _, xhr) {
|
||||||
if (xhr.status != 200) {
|
if (xhr.status != 200) {
|
||||||
createQuickNotif("{% trans %}Unknown UV code{% endtrans %}")
|
createQuickNotif("{% trans %}Unknown UE code{% endtrans %}")
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
for (let key in data) {
|
for (let key in data) {
|
||||||
@ -77,7 +77,7 @@
|
|||||||
createQuickNotif('{% trans %}Successful autocomplete{% endtrans %}')
|
createQuickNotif('{% trans %}Successful autocomplete{% endtrans %}')
|
||||||
},
|
},
|
||||||
error: function(_, _, statusMessage) {
|
error: function(_, _, statusMessage) {
|
||||||
createQuickNotif('{% trans %}An error occured: {% endtrans %}' + statusMessage)
|
createQuickNotif('{% trans %}An error occurred: {% endtrans %}' + statusMessage)
|
||||||
},
|
},
|
||||||
})
|
})
|
||||||
})
|
})
|
||||||
|
28
poetry.lock
generated
28
poetry.lock
generated
@ -1,4 +1,4 @@
|
|||||||
# This file is automatically @generated by Poetry 1.5.1 and should not be changed by hand.
|
# This file is automatically @generated by Poetry 1.6.1 and should not be changed by hand.
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "alabaster"
|
name = "alabaster"
|
||||||
@ -1526,30 +1526,6 @@ files = [
|
|||||||
{file = "wcwidth-0.2.5.tar.gz", hash = "sha256:c4d647b99872929fdb7bdcaa4fbe7f01413ed3d98077df798530e5b04f116c83"},
|
{file = "wcwidth-0.2.5.tar.gz", hash = "sha256:c4d647b99872929fdb7bdcaa4fbe7f01413ed3d98077df798530e5b04f116c83"},
|
||||||
]
|
]
|
||||||
|
|
||||||
[[package]]
|
|
||||||
name = "xapian-bindings"
|
|
||||||
version = "0.1.0"
|
|
||||||
description = "Meta-package to build and install xapian-bindings extension."
|
|
||||||
optional = false
|
|
||||||
python-versions = "*"
|
|
||||||
files = [
|
|
||||||
{file = "xapian-bindings-0.1.0.tar.gz", hash = "sha256:f2b0396082ebf4f6681ab43d6d8fd1f63b6964b18c32c91236ed067c6f62ad14"},
|
|
||||||
]
|
|
||||||
|
|
||||||
[[package]]
|
|
||||||
name = "xapian-haystack"
|
|
||||||
version = "3.0.1"
|
|
||||||
description = "A Xapian backend for Haystack"
|
|
||||||
optional = false
|
|
||||||
python-versions = "*"
|
|
||||||
files = [
|
|
||||||
{file = "xapian-haystack-3.0.1.tar.gz", hash = "sha256:a5c0e1262b95008df4dfeb58d093c654acee3f2b27ea3f7d366900895cdc70f9"},
|
|
||||||
]
|
|
||||||
|
|
||||||
[package.dependencies]
|
|
||||||
django = ">=2.2"
|
|
||||||
django-haystack = ">=2.8.0"
|
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "zipp"
|
name = "zipp"
|
||||||
version = "3.11.0"
|
version = "3.11.0"
|
||||||
@ -1572,4 +1548,4 @@ testing = ["coverage"]
|
|||||||
[metadata]
|
[metadata]
|
||||||
lock-version = "2.0"
|
lock-version = "2.0"
|
||||||
python-versions = "^3.8"
|
python-versions = "^3.8"
|
||||||
content-hash = "62519616aff5a472dac3dd8071a6404b1ee8eab12a197af717a0520f7ded0331"
|
content-hash = "32bf0229e7ac812ea278a36587c184cd4ae507f87816f573447e85cd5312e52c"
|
||||||
|
@ -33,8 +33,6 @@ phonenumbers = "^8.12"
|
|||||||
django-ajax-selects = "^2.1.0"
|
django-ajax-selects = "^2.1.0"
|
||||||
reportlab = "^3.6"
|
reportlab = "^3.6"
|
||||||
django-haystack = "^3.2.1"
|
django-haystack = "^3.2.1"
|
||||||
xapian-haystack = "^3.0.1"
|
|
||||||
xapian-bindings = "^0.1.0"
|
|
||||||
libsass = "^0.22"
|
libsass = "^0.22"
|
||||||
django-ordered-model = "^3.7"
|
django-ordered-model = "^3.7"
|
||||||
django-simple-captcha = "^0.5.17"
|
django-simple-captcha = "^0.5.17"
|
||||||
|
@ -191,9 +191,9 @@ TEMPLATES = [
|
|||||||
|
|
||||||
HAYSTACK_CONNECTIONS = {
|
HAYSTACK_CONNECTIONS = {
|
||||||
"default": {
|
"default": {
|
||||||
"ENGINE": "xapian_backend.XapianEngine",
|
"ENGINE": "haystack.backends.elasticsearch7_backend.Elasticsearch7SearchEngine",
|
||||||
"PATH": os.path.join(os.path.dirname(__file__), "search_indexes", "xapian"),
|
'URL': 'http://localhost:9200/',
|
||||||
"INCLUDE_SPELLING": True,
|
'INDEX_NAME': 'haystack',
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user