better integration of notes, templates clean up
This commit is contained in:
@@ -20,15 +20,19 @@ class Observation(Note):
|
||||
def __str__(self):
|
||||
return "%s" % self.sujet
|
||||
|
||||
def get_date(self):
|
||||
def note_date(self):
|
||||
""" Enforce value of created_date """
|
||||
return self.rencontre.date
|
||||
|
||||
def get_labels(self):
|
||||
def note_time(self):
|
||||
""" Enforce value of created_time """
|
||||
return self.rencontre.heure_debut
|
||||
|
||||
def note_labels(self):
|
||||
return [self.rencontre.lieu, self.rencontre.heure_debut]
|
||||
|
||||
def get_bg_colors(self):
|
||||
return ("success", "info")
|
||||
def note_bg_colors(self):
|
||||
return ("info", "info")
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -1,29 +1,16 @@
|
||||
{% load notes %}
|
||||
<div class="panel panel-primary">
|
||||
<!-- Default panel contents -->
|
||||
<div class="panel-heading"><h3 class="panel-title">Compte-Rendu</h3>
|
||||
</div>
|
||||
<div class="panel-body">
|
||||
<p class="bg-info">Maraudeurs: {{ maraude.binome.first_name }}, {{ maraude.referent.first_name }}</p>
|
||||
{% if maraude.est_terminee %}<p>Terminée à {{ maraude.heure_fin}} </p>
|
||||
<p>{{maraude.rencontre_count}} rencontres</p>
|
||||
{% else %}
|
||||
|
||||
{% endif %}
|
||||
<div class="panel-heading">
|
||||
<h3 class="panel-title">{{ maraude.binome }} & {{ maraude.referent }}
|
||||
<span class="pull-right"><span class="label pull-right">Rencontres : {{ maraude.rencontre_count}}</span></span></h3>
|
||||
</div>
|
||||
<table class="table table-bordered table-striped">
|
||||
{% for rencontre, observations in maraude %}
|
||||
<tr>
|
||||
<th>{{ rencontre.lieu }}</th>
|
||||
<th>{{ rencontre.heure_debut }}</th>
|
||||
<th style="text-align:right" width="150">Durée: {{ rencontre.duree }}min</th>
|
||||
</tr>
|
||||
{% for observation in observations %}
|
||||
<tr><td>{{ observation.sujet }}</td><td colspan="2"> {{ observation.note }}</td>
|
||||
</tr>
|
||||
{% for note in notes %}
|
||||
{% inline_table note header="sujet" %}
|
||||
{% endfor %}
|
||||
{% endfor %}
|
||||
</table>
|
||||
{% if user.is_superuser and maraude.est_terminee %}<div class="panel-footer">
|
||||
<a class="btn btn-primary" href="{% url 'maraudes:update' maraude.pk %}">Modifier</a>
|
||||
</table>
|
||||
{% if user.is_superuser and maraude.est_terminee %}<div class="panel-footer text-right">
|
||||
<a class="btn btn-sm btn-default" href="{% url 'maraudes:update' maraude.pk %}">Modifier</a>
|
||||
</div>{%endif%}
|
||||
</div>
|
||||
|
||||
@@ -1,20 +1,23 @@
|
||||
|
||||
{% load bootstrap3 %}
|
||||
<form method="post" action="{% url 'maraudes:update' maraude.pk %}?continue=True">
|
||||
{% csrf_token %}
|
||||
{{ base_formset.management_form }}
|
||||
{% csrf_token %}
|
||||
{{ base_formset.management_form }}
|
||||
<div class="col-md-12 text-center well">
|
||||
<div class="btn-group">
|
||||
<button type="submit" class="btn btn-sm btn-success" formaction="{% url 'maraudes:update' maraude.pk %}?continue=False">
|
||||
{% bootstrap_icon "refresh" %} Mettre à jour</button>
|
||||
{% bootstrap_button "Enregistrer et quitter" button_type="submit" button_class="btn-primary btn-sm" icon="ok-circle" %}
|
||||
</div>
|
||||
</div>
|
||||
{% for form, inline_formset in forms %}
|
||||
<div class="col-md-6 col-sd-12">
|
||||
<div class="panel panel-default">
|
||||
<div class="panel-heading text-right">
|
||||
{% bootstrap_field form.DELETE field_class="col-md-1"%}
|
||||
<button type="submit" class="btn btn-sm btn-success" formaction="{% url 'maraudes:update' maraude.pk %}?continue=False">
|
||||
{% bootstrap_icon "refresh" %} Mettre à jour</button>
|
||||
{% bootstrap_button "Enregistrer et quitter" button_type="submit" button_class="btn-primary btn-sm" icon="ok-circle" %}
|
||||
</div>
|
||||
<div class="panel-body">
|
||||
{% include "compte_rendu/compterendu_form.html" %}
|
||||
</div>
|
||||
<div class="panel-footer text-right">
|
||||
{% bootstrap_field form.DELETE %}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
{% endfor %}
|
||||
|
||||
@@ -1,6 +1,9 @@
|
||||
<div class="col-md-6">
|
||||
{% if maraude.est_terminee %}
|
||||
{% include "compte_rendu/compterendu.html" with maraude=compte_rendu %}
|
||||
{% else %}
|
||||
{% if user.is_superuser %}<a class="btn btn-primary" href="{% url 'maraudes:create' maraude.pk %}">Écrire le compte-rendu</a>
|
||||
{% else %} <p class="alert alert-info">Le compte-rendu n'a pas encore été écrit</p>{% endif %}
|
||||
{% endif %}
|
||||
</div>
|
||||
{% include 'maraudes/panel_dernieres_maraudes.html' %}
|
||||
|
||||
@@ -15,21 +15,7 @@
|
||||
</div>
|
||||
</div>
|
||||
|
||||
{% if dernieres_maraudes %}<div class="col-md-6" id="dernieres-maraudes">
|
||||
<div class="panel panel-default">
|
||||
<div class="panel-heading">
|
||||
<p>Dernières maraudes
|
||||
<span class="pull-right"><a href="{% url 'maraudes:liste' %}" class="btn btn-primary btn-sm">Aller à la liste</a></span></p>
|
||||
</div>
|
||||
<div class="list-group">
|
||||
{% for maraude in dernieres_maraudes %}
|
||||
<a href="{% url 'maraudes:details' maraude.pk %}" class="list-group-item">
|
||||
<strong>{{ maraude }}</strong> <small>{{maraude.binome}} & {{maraude.referent}}</small>
|
||||
</a>
|
||||
{% endfor %}
|
||||
</div>
|
||||
</div>
|
||||
</div>{% endif %}
|
||||
{% include 'maraudes/panel_dernieres_maraudes.html' %}
|
||||
|
||||
{% if user.is_superuser %}<div class="col-md-6" id="administration">
|
||||
<div class="panel panel-danger">
|
||||
|
||||
16
maraudes/templates/maraudes/panel_dernieres_maraudes.html
Normal file
16
maraudes/templates/maraudes/panel_dernieres_maraudes.html
Normal file
@@ -0,0 +1,16 @@
|
||||
{% if dernieres_maraudes %}
|
||||
<div class="col-md-6" id="dernieres-maraudes">
|
||||
<div class="panel panel-default">
|
||||
<div class="panel-heading">
|
||||
<p>Dernières maraudes
|
||||
<span class="pull-right"><a href="{% url 'maraudes:liste' %}" class="btn btn-primary btn-sm">Aller à la liste</a></span></p>
|
||||
</div>
|
||||
<div class="list-group">
|
||||
{% for maraude in dernieres_maraudes %}
|
||||
<a href="{% url 'maraudes:details' maraude.pk %}" class="list-group-item">
|
||||
<strong>{{ maraude }}</strong> <small>{{maraude.binome}} & {{maraude.referent}}</small>
|
||||
</a>
|
||||
{% endfor %}
|
||||
</div>
|
||||
</div>
|
||||
</div>{% endif %}
|
||||
@@ -12,6 +12,7 @@ from .models import ( Maraude, Maraudeur,
|
||||
Rencontre, Lieu,
|
||||
Planning, )
|
||||
from .compte_rendu import CompteRendu
|
||||
from notes.models import Note
|
||||
# Forms
|
||||
from django import forms
|
||||
from django.forms import inlineformset_factory, modelformset_factory, modelform_factory
|
||||
@@ -29,11 +30,7 @@ class MaraudesView(views.WebsiteProtectedMixin):
|
||||
permissions = ['maraudes.view_maraudes']
|
||||
|
||||
|
||||
class IndexView(MaraudesView, generic.TemplateView):
|
||||
header = "La Maraude"
|
||||
header_small = "Tableau de bord"
|
||||
|
||||
template_name = "maraudes/index.html"
|
||||
class DerniereMaraudeMixin(object):
|
||||
count = 5
|
||||
@cached_property
|
||||
def dernieres_maraudes(self):
|
||||
@@ -49,9 +46,16 @@ class IndexView(MaraudesView, generic.TemplateView):
|
||||
context['dernieres_maraudes'] = self.dernieres_maraudes
|
||||
return context
|
||||
|
||||
class IndexView(MaraudesView, DerniereMaraudeMixin, generic.TemplateView):
|
||||
header = "La Maraude"
|
||||
header_small = "Tableau de bord"
|
||||
|
||||
template_name = "maraudes/index.html"
|
||||
|
||||
|
||||
## MARAUDES
|
||||
|
||||
class MaraudeDetailsView(MaraudesView, generic.DetailView):
|
||||
class MaraudeDetailsView(MaraudesView, DerniereMaraudeMixin, generic.DetailView):
|
||||
model = Maraude
|
||||
context_object_name = "maraude"
|
||||
template_name = "maraudes/details.html"
|
||||
@@ -62,6 +66,11 @@ class MaraudeDetailsView(MaraudesView, generic.DetailView):
|
||||
|
||||
def get_context_data(self, **kwargs):
|
||||
context = super().get_context_data(**kwargs)
|
||||
context['notes'] = Note.objects.get_queryset().filter(
|
||||
created_date=self.object.date
|
||||
).order_by(
|
||||
'created_time'
|
||||
)
|
||||
context['compte_rendu'] = CompteRendu.objects.get(pk=self.object.pk)
|
||||
return context
|
||||
|
||||
|
||||
Reference in New Issue
Block a user