Browse Source

Vues cannoniques navbar et adresses de contact

tickets
Grizzly 6 years ago
committed by Gabriel Detraz
parent
commit
a0dcda6975
  1. 6
      re2o/context_processors.py
  2. 4
      re2o/templates/re2o/contact.html
  3. 8
      re2o/views.py
  4. 5
      templates/base.html
  5. 13
      tickets/templates/tickets/contact.html
  6. 6
      tickets/templates/tickets/navbar_logout.html
  7. 10
      tickets/views.py

6
re2o/context_processors.py

@ -62,8 +62,10 @@ def context_optionnal_apps(request):
"""Fonction de context pour générer la navbar en fonction des
apps optionnels"""
optionnal_apps = [import_module(app) for app in OPTIONNAL_APPS]
optionnal_templates_navbar_list = [app.views.navbar_user(request) for app in optionnal_apps]
return {'optionnal_templates_navbar_list':optionnal_templates_navbar_list}
optionnal_templates_navbar_user_list = [app.views.navbar_user(request) for app in optionnal_apps]
optionnal_templates_navbar_logout_list = [app.views.navbar_logout(request) for app in optionnal_apps]
return {'optionnal_templates_navbar_user_list':optionnal_templates_navbar_user_list,
'optionnal_templates_navbar_logout_list':optionnal_templates_navbar_logout_list}
def date_now(request):

4
re2o/templates/re2o/contact.html

@ -32,6 +32,10 @@ with this program; if not, write to the Free Software Foundation, Inc.,
<h2>{% blocktrans %}Contact the organisation {{asso_name}}{% endblocktrans %}</h2>
</br>
{% for template in optionnal_templates_contact_list %}
{{template}}
{% endfor %}
{% for contact in contacts %}
<div class="panel panel-info">

8
re2o/views.py

@ -43,6 +43,8 @@ from preferences.models import (
)
from .contributors import CONTRIBUTORS
from importlib import import_module
from re2o.settings_local import OPTIONNAL_APPS
def form(ctx, template, request):
@ -113,12 +115,16 @@ def contact_page(request):
"""
address = MailContact.objects.all()
optionnal_apps = [import_module(app) for app in OPTIONNAL_APPS]
optionnal_templates_contact_list = [app.views.contact(request) for app in optionnal_apps]
return render(
request,
"re2o/contact.html",
{
'contacts': address,
'asso_name': AssoOption.objects.first().name
'asso_name': AssoOption.objects.first().name,
'optionnal_templates_contact_list':optionnal_templates_contact_list,
}
)

5
templates/base.html

@ -101,7 +101,7 @@ with this program; if not, write to the Free Software Foundation, Inc.,
<li><a href="{% url 'cotisations:index' %}"><i class="fa fa-eur"></i> {% trans "Manage the subscriptions" %}</a></li>
{% acl_end %}
{% for template in optionnal_templates_navbar_list%}
{% for template in optionnal_templates_navbar_user_list%}
{{ template }}
{% endfor %}
</ul>
@ -140,6 +140,9 @@ with this program; if not, write to the Free Software Foundation, Inc.,
</ul>
</li>
{% if not request.user.is_authenticated %}
{% for template in optionnal_templates_navbar_logout_list %}
{{ template }}
{% endfor %}
{% if var_sa %}
<li>
<a href="{% url 'users:new-user' %}">

13
tickets/templates/tickets/contact.html

@ -0,0 +1,13 @@
{% load i18n %}
<div class="panel panel-info">
<div class="panel-heading"><h4>Tickets</h4></div>
<div class="panel-body">
<div class="row">
<div class="col-sm-9">
{% blocktrans %} Si vous rencontrez des problème concernant les services proposés par l'association {{ asso_name }}, il vous est possible d'ouvir un ticket qui sera traité par les membres actifs de l'association. Si vous souhaitez nous contacter pour une question autres qu'un problème technique, choisissez l'une des adresses mail ci-dessous. {% endblocktrans %}
</div>
<div class="col-sm-3"><a class="btn btn-primary" href="{% url 'tickets:new-ticket' %}"><i class="fa fa-ticket"></i> {% trans "Ouvrir un ticket" %}</a></div>
</div>
</div>
</div>

6
tickets/templates/tickets/navbar_logout.html

@ -0,0 +1,6 @@
{% load i18n %}
<li>
<a href="{% url 'tickets:new-ticket' %}">
<i class="fa fa-ticket"></i> {% trans "Ouvrir un ticket" %}
</a>
</li>

10
tickets/views.py

@ -148,6 +148,16 @@ def preferences(request):
context = {'preferences':preferences}
return render_to_string('tickets/preferences.html', context=context, request=request, using=None)
def contact(request):
"""Vue cannonique d'affichage d'une adresse dans la page contact.
Utilisée ici pour proposer l'ouverture d'un ticket"""
return render_to_string('tickets/contact.html')
def navbar_user(request):
"""Vue cannonique d'affichage des tickets dans la navbar"""
return render_to_string('tickets/navbar.html')
def navbar_logout(request):
"""Vue cannonique d'affichage du lien de creation de ticket
lorsque l'utilisateur est déconnecté dans la navbar"""
return render_to_string('tickets/navbar_logout.html')

Loading…
Cancel
Save