Browse Source

Ajout du profil et de jolis boutons

test_david
root 10 years ago
parent
commit
64373b600c
  1. 25
      cotisations/templates/cotisations/aff_cotisations.html
  2. 28
      cotisations/templates/cotisations/index.html
  3. BIN
      search/__pycache__/models.cpython-34.pyc
  4. 1
      search/models.py
  5. 69
      search/templates/search/index.html
  6. 4
      search/templates/search/search.html
  7. BIN
      users/__pycache__/admin.cpython-34.pyc
  8. BIN
      users/__pycache__/models.cpython-34.pyc
  9. BIN
      users/__pycache__/urls.cpython-34.pyc
  10. BIN
      users/__pycache__/views.cpython-34.pyc
  11. 21
      users/templates/users/aff_bans.html
  12. 26
      users/templates/users/aff_users.html
  13. 24
      users/templates/users/index.html
  14. 63
      users/templates/users/profil.html
  15. 1
      users/urls.py
  16. 21
      users/views.py

25
cotisations/templates/cotisations/aff_cotisations.html

@ -0,0 +1,25 @@
<table class="table table-striped">
<thead>
<tr>
<th>Utilisateur</th>
<th>Designation</th>
<th>Nombre</th>
<th>Prix unitaire</th>
<th>Moyen de paiement</th>
<th>Date</th>
<th></th>
</tr>
</thead>
{% for facture in facture_list %}
<tr>
<td>{{ facture.user }}</td>
<td>{{ facture.name }}</td>
<td>{{ facture.number }}</td>
<td>{{ facture.prix }}</td>
<td>{{ facture.paiement }}</td>
<td>{{ facture.date }}</td>
<td><a class="btn btn-primary btn-sm" role="button" href="{% url 'cotisations:edit-facture' facture.id %}"><i class="glyphicon glyphicon-tree-conifer"></i> Editer</a></td>
</tr>
{% endfor %}
</table>

28
cotisations/templates/cotisations/index.html

@ -4,29 +4,9 @@
{% block title %}Facture{% endblock %} {% block title %}Facture{% endblock %}
{% block content %} {% block content %}
<table class="table table-striped"> {% include "cotisations/aff_cotisations.html" with facture_list=facture_list %}
<thead> <br />
<tr> <br />
<th>Utilisateur</th> <br />
<th>Designation</th>
<th>Nombre</th>
<th>Prix unitaire</th>
<th>Moyen de paiement</th>
<th>Date</th>
<th></th>
</tr>
</thead>
{% for facture in facture_list %}
<tr>
<td>{{ facture.user }}</td>
<td>{{ facture.name }}</td>
<td>{{ facture.number }}</td>
<td>{{ facture.prix }}</td>
<td>{{ facture.paiement }}</td>
<td>{{ facture.date }}</td>
<td><a href="{% url 'cotisations:edit-facture' facture.id %}">Editer</a></td>
</tr>
{% endfor %}
</table>
{% endblock %} {% endblock %}

BIN
search/__pycache__/models.cpython-34.pyc

Binary file not shown.

1
search/models.py

@ -8,3 +8,4 @@ from users.models import User
class SearchForm(Form): class SearchForm(Form):
search_field = forms.CharField(label = 'Search', max_length = 100) search_field = forms.CharField(label = 'Search', max_length = 100)

69
search/templates/search/index.html

@ -1,29 +1,12 @@
{% extends "search/sidebar.html" %} {% extends "users/sidebar.html" %}
{% load bootstrap3 %} {% load bootstrap3 %}
{% block title %}Utilisateurs{% endblock %} {% block title %}Résultats de la recherche{% endblock %}
{% block content %} {% block content %}
{% if users_list %} {% if users_list %}
<h2>Résultats dans les utilisateurs</h2> <h2>Résultats dans les utilisateurs</h2>
<table class="table table-striped"> {% include "users/aff_users.html" with users_list=users_list %}
<thead>
<tr>
<th>Prénom</th>
<th>Nom</th>
<th>Pseudo</th>
<th>Modifier</th>
</tr>
</thead>
{% for user in users_list %}
<tr>
<td>{{ user.name }}</td>
<td>{{ user.surname }}</td>
<td>{{ user.pseudo }}</td>
<td><a href="{% url 'users:edit-info' user.id %}">Editer</a></td>
</tr>
{% endfor %}
</table>
{% endif%} {% endif%}
{% if machine_list %} {% if machine_list %}
<h2>Résultats dans les machines : </h2> <h2>Résultats dans les machines : </h2>
@ -42,53 +25,11 @@
{% endif %} {% endif %}
{% if facture_list %} {% if facture_list %}
<h2>Résultats dans les factures : </h2> <h2>Résultats dans les factures : </h2>
<table class="table table-striped"> {% include "cotisations/aff_cotisations.html" with facture_list=facture_list %}
<thead>
<tr>
<th>Utilisateur</th>
<th>Designation</th>
<th>Nombre</th>
<th>Prix unitaire</th>
<th>Moyen de paiement</th>
<th>Date</th>
<th></th>
</tr>
</thead>
{% for facture in facture_list %}
<tr>
<td>{{ facture.user }}</td>
<td>{{ facture.name }}</td>
<td>{{ facture.number }}</td>
<td>{{ facture.prix }}</td>
<td>{{ facture.paiement }}</td>
<td>{{ facture.date }}</td>
<td><a href="{% url 'cotisations:edit-facture' facture.id %}">Editer</a></td>
</tr>
{% endfor %}
</table>
{% endif %} {% endif %}
{% if ban_list %} {% if ban_list %}
<h2>Résultats dans les banissements : </h2> <h2>Résultats dans les banissements : </h2>
<table class="table table-striped"> {% include "users/aff_bans.html" with ban_list=ban_list %}
<thead>
<tr>
<th>Utilisateur</th>
<th>Raison</th>
<th>Date de début</th>
<th>Date de fin</th>
<th></th>
</tr>
</thead>
{% for ban in ban_list %}
<tr>
<td>{{ ban.user }}</td>
<td>{{ ban.raison }}</td>
<td>{{ ban.date_start }}</td>
<td>{{ ban.date_end }}</td>
<td><a href="{% url 'users:edit-ban' ban.id %}">Editer</a></td>
</tr>
{% endfor %}
</table>
{% endif %} {% endif %}
{% if not ban_list and not machine_list and not users_list and not facture_list%} {% if not ban_list and not machine_list and not users_list and not facture_list%}
<h3>Aucun résultat</h3> <h3>Aucun résultat</h3>

4
search/templates/search/search.html

@ -1,7 +1,7 @@
{% extends "search/sidebar.html" %} {% extends "users/sidebar.html" %}
{% load bootstrap3 %} {% load bootstrap3 %}
{% block title %}Création et modification d'utilisateur{% endblock %} {% block title %}Recherche{% endblock %}
{% block content %} {% block content %}
{% bootstrap_form_errors searchform %} {% bootstrap_form_errors searchform %}

BIN
users/__pycache__/admin.cpython-34.pyc

Binary file not shown.

BIN
users/__pycache__/models.cpython-34.pyc

Binary file not shown.

BIN
users/__pycache__/urls.cpython-34.pyc

Binary file not shown.

BIN
users/__pycache__/views.cpython-34.pyc

Binary file not shown.

21
users/templates/users/aff_bans.html

@ -0,0 +1,21 @@
<table class="table table-striped">
<thead>
<tr>
<th>Utilisateur</th>
<th>Raison</th>
<th>Date de début</th>
<th>Date de fin</th>
<th></th>
</tr>
</thead>
{% for ban in ban_list %}
<tr>
<td>{{ ban.user }}</td>
<td>{{ ban.raison }}</td>
<td>{{ ban.date_start }}</td>
<td>{{ ban.date_end }}</td>
<td><a class="btn btn-primary btn-sm" role="button" href="{% url 'users:edit-ban' ban.id %}"><i class="glyphicon glyphicon-grain"></i> Editer</a></td>
</tr>
{% endfor %}
</table>

26
users/templates/users/aff_users.html

@ -0,0 +1,26 @@
<table class="table table-striped">
<thead>
<tr>
<th>Prénom</th>
<th>Nom</th>
<th>Pseudo</th>
<th>Inscrit le</th>
<th>Profil</th>
</tr>
</thead>
{% for user in users_list %}
<tr>
<td>{{ user.name }}</td>
<td>{{ user.surname }}</td>
<td>{{ user.pseudo }}</td>
<td>{{ user.registered }}</td>
<td><form method="POST" action="{% url "users:profil"%}">
{% csrf_token %}
<input type="hidden" name="user" id="user" value="{{ user.pseudo }}"></input>
<button class="btn btn-primary btn-sm" type="submit"><i class="glyphicon glyphicon-tree-deciduous"></i></button>
</form>
</td>
</tr>
{% endfor %}
</table>

24
users/templates/users/index.html

@ -4,25 +4,9 @@
{% block title %}Utilisateurs{% endblock %} {% block title %}Utilisateurs{% endblock %}
{% block content %} {% block content %}
<table class="table table-striped"> {% include "users/aff_users.html" with users_list=users_list %}
<thead> <br />
<tr> <br />
<th>Prénom</th> <br />
<th>Nom</th>
<th>Pseudo</th>
<th>Inscrit le</th>
<th>Modifier</th>
</tr>
</thead>
{% for user in users_list %}
<tr>
<td>{{ user.name }}</td>
<td>{{ user.surname }}</td>
<td>{{ user.pseudo }}</td>
<td>{{ user.registered }}</td>
<td><a href="{% url 'users:edit-info' user.id %}">Editer</a></td>
</tr>
{% endfor %}
</table>
{% endblock %} {% endblock %}

63
users/templates/users/profil.html

@ -0,0 +1,63 @@
{% extends "users/sidebar.html" %}
{% load bootstrap3 %}
{% block title %}Profil{% endblock %}
{% block content %}
<h2>Adhérent</h2>
<a class="btn btn-primary btn-sm" role="button" href="{% url 'users:edit-info' user.id %}"><i class="glyphicon glyphicon-fire"></i> Editer</a>
<a class="btn btn-primary btn-sm" role="button" href="{% url 'users:password' user.id %}"><i class="glyphicon glyphicon-leaf"></i> Changer le mot de passe</a>
<a class="btn btn-primary btn-sm" role="button" href="{% url 'users:state' user.id %}"><i class="glyphicon glyphicon-flash"></i> Changer le statut</a>
<br />
<br />
<table class="table table-striped">
<tr>
<th>Prénom</th>
<td>{{ user.name }}</td>
<th>Nom</th>
<td>{{ user.surname }}</td>
</tr>
<tr>
<th>Pseudo</th>
<td>{{ user.pseudo }}</td>
<th>E-mail</th>
<td>{{ user.email }}</td>
</tr>
<tr>
<th>Ecole</th>
<td>{{ user.school }}</td>
<th>Promo</th>
<td>{{ user.promo }}</td>
</tr>
<tr>
<th>Chambre</th>
<td>{{ user.room }}</td>
<th>Date d'inscription</th>
<td>{{ user.registered}}</td>
</tr>
</table>
<h2>Machines :</h2>
{% if machine_list %}
<!-- {% include "machine/aff_machines.html" with machine_list=machine_list } -->
{% else %}
<p>Aucune machine</p>
{% endif %}
<h2>Cotisations :</h2>
<h4><a class="btn btn-primary btn-sm" role="button" href="{% url 'cotisations:new-facture' user.id %}"><i class="glyphicon glyphicon-piggy-bank"></i> Ajouter une cotisation</a></h4>
{% if facture_list %}
{% include "cotisations/aff_cotisations.html" with facture_list=facture_list %}
{% else %}
<p>Aucune facture</p>
{% endif %}
<h2>Bannissements :</h2>
<h4><a class="btn btn-primary btn-sm" role="button" href="{% url 'users:add-ban' user.id %}"><i class="glyphicon glyphicon-tint"></i> Ajouter un bannissement</a></h4>
{% if ban_list %}
{% include "users/aff_bans.html" with ban_list=ban_list %}
{% else %}
<p>Aucun bannissement</p>
{% endif %}
<br />
<br />
<br />
{% endblock %}

1
users/urls.py

@ -11,6 +11,7 @@ urlpatterns = [
url(r'^edit_ban/(?P<banid>[0-9]+)$', views.edit_ban, name='edit-ban'), url(r'^edit_ban/(?P<banid>[0-9]+)$', views.edit_ban, name='edit-ban'),
url(r'^add_right/$', views.add_right, name='add-right'), url(r'^add_right/$', views.add_right, name='add-right'),
url(r'^del_right/$', views.del_right, name='del-right'), url(r'^del_right/$', views.del_right, name='del-right'),
url(r'^profil/$', views.profil, name='profil'),
url(r'^$', views.index, name='index'), url(r'^$', views.index, name='index'),
] ]

21
users/views.py

@ -9,8 +9,11 @@ from django.contrib import messages
from django.db.models import Max from django.db.models import Max
from django.utils import timezone from django.utils import timezone
from users.models import User, Right, Ban, DelRightForm, UserForm, InfoForm, PasswordForm, StateForm, RightForm, BanForm from users.models import User, Right, Ban, DelRightForm, UserForm, InfoForm, PasswordForm, StateForm, RightForm, BanForm, ProfilForm
from cotisations.models import Facture
from machines.models import Machine
from users.forms import PassForm from users.forms import PassForm
from search.models import SearchForm
from cotisations.views import is_adherent from cotisations.views import is_adherent
from re2o.login import makeSecret, hashNT from re2o.login import makeSecret, hashNT
@ -32,7 +35,7 @@ def is_ban(user):
def has_access(user): def has_access(user):
""" Renvoie si un utilisateur a accès à internet""" """ Renvoie si un utilisateur a accès à internet"""
if user.state == 0 and not is_ban(user) and is_adherent(user): if user.state == User.STATE_ACTIVE and not is_ban(user) and is_adherent(user):
return True return True
else: else:
return False return False
@ -143,3 +146,17 @@ def edit_ban(request, banid):
def index(request): def index(request):
users_list = User.objects.order_by('pk') users_list = User.objects.order_by('pk')
return render(request, 'users/index.html', {'users_list': users_list}) return render(request, 'users/index.html', {'users_list': users_list})
def profil(request):
if request.method == 'POST':
profil = ProfilForm(request.POST or None)
if profil.is_valid():
profils = profil.cleaned_data['user']
users = User.objects.get(pseudo = profils)
machines = None
factures = Facture.objects.filter(user__pseudo = users)
bans = Ban.objects.filter(user__pseudo = users)
return render(request, 'users/profil.html', {'user': users, 'machine_list' :machines, 'facture_list':factures, 'ban_list':bans})
return redirect("/users/")
return redirect("/users/")

Loading…
Cancel
Save