fixes bootstrap4 imports, statistiques templates and adds shadow effect on active links

This commit is contained in:
artus
2018-10-13 23:08:39 +02:00
parent a7858d22b0
commit 5799ab1ea3
15 changed files with 85 additions and 97 deletions

View File

@@ -1,5 +1,5 @@
{% extends "maraudes/base.html" %} {% extends "maraudes/base.html" %}
{% load bootstrap3 %} {% load bootstrap4 %}
{% block title %} {{ block.super }} Compte-rendu du {{ object.date }} {% endblock %} {% block title %} {{ block.super }} Compte-rendu du {{ object.date }} {% endblock %}
{% block breadcrumbs %} {% block breadcrumbs %}
@@ -22,8 +22,8 @@
{% bootstrap_form form %} {% bootstrap_form form %}
</div> </div>
<div class="panel-footer text-right"> <div class="panel-footer text-right">
{% bootstrap_button "Pas de message" icon="remove" button_type="link" href="?no_mail=True" button_class="btn btn-danger btn-sm" %} {% bootstrap_button "Pas de message" button_type="link" href="?no_mail=True" button_class="btn btn-danger btn-sm" %}
<button class="btn btn-success btn-sm" id="send-button" data-loading-text="Envoi en cours..." type="submit"><span class="glyphicon glyphicon-send"></span> Envoyer</button> <button class="btn btn-success btn-sm" id="send-button" data-loading-text="Envoi en cours..." type="submit">Envoyer</button>
</div> </div>
</div> </div>
</form> </form>
@@ -37,7 +37,7 @@
<td> <td>
<a href="{% url "notes:details-sujet" observation.sujet.pk %}" id="sujet-name-{{observation.sujet.pk}}">{{observation.sujet}}</a> <a href="{% url "notes:details-sujet" observation.sujet.pk %}" id="sujet-name-{{observation.sujet.pk}}">{{observation.sujet}}</a>
<a class="btn btn-link btn-xs" nohref onclick="UpdateStats({{observation.sujet.pk}});return false;"> <a class="btn btn-link btn-xs" nohref onclick="UpdateStats({{observation.sujet.pk}});return false;">
{% bootstrap_icon "stats" %} Mise à jour</a> Mise à jour</a>
</td></tr> </td></tr>
<tr><td>{{observation.text}}</td></tr>{% endfor %}{% endfor %} <tr><td>{{observation.text}}</td></tr>{% endfor %}{% endfor %}
</table> </table>

View File

@@ -9,9 +9,9 @@
{% block page_content %} {% block page_content %}
{% load tables %} {% load tables %}
<div class="col-lg-6 col-md-12"> <div class="col-lg-7 col-md-12">
<div class="card rounded-bottom"> <div class="card rounded-bottom">
<div class="card-header rounded-0 py-2 bg-dark text-white">Planning</div> <h6 class="card-header rounded-0 py-2 bg-dark text-white">Planning</h6>
<div class="card-body"> <div class="card-body">
<h6 class="card-title">Prochaine maraude</h6> <h6 class="card-title">Prochaine maraude</h6>
<p class="card-text"> <p class="card-text">
@@ -30,22 +30,34 @@
<a href="{% url 'notes:liste-maraude' %}" class="card-link text-primary">Toutes les maraudes</a> <a href="{% url 'notes:liste-maraude' %}" class="card-link text-primary">Toutes les maraudes</a>
</div> </div>
</div> </div>
<div class="row">
{% if derniers_sujets_rencontres %} {% if derniers_sujets_rencontres %}
<div class="card card-body"> <div class="col">
{% table derniers_sujets_rencontres cols=3 cell_template="maraudes/table_cell_derniers_sujets.html" header="Ces derniers temps..." %} <div class="card rounded-bottom my-3">
<div class="card-header rounded-0 py-1 text-white bg-dark">En ce moment nous croisons...</div>
<div class="card-body">
{% for sujet in derniers_sujets_rencontres %}
{{ sujet }},
{% endfor %}
</div>
</div>
</div> </div>
{% endif %} {% endif %}
{% if derniers_sujets_signales %} {% if derniers_sujets_signales %}
<div class="col">
<div class="card rounded-bottom my-3"> <div class="card rounded-bottom my-3">
<div class="card-header rounded-0 py-1 text-white bg-dark">Signalements récents</div> <div class="card-header rounded-0 py-1 text-white bg-dark">
Signalements récents
</div>
<div class="card-body"> <div class="card-body">
{% for sjt in derniers_sujets_signales %} {% for sjt in derniers_sujets_signales %}
{{ sjt }} {{ sjt }}
{% endfor %} {% endfor %}
</div> </div>
</div> </div>
</div>
{% endif %} {% endif %}
</div>
{% if user.is_superuser and missing_cr %} {% if user.is_superuser and missing_cr %}
<div class="card border-warning rounded-bottom my-3"> <div class="card border-warning rounded-bottom my-3">
<div class="card-header py-2 bg-dark text-warning rounded-0"> <div class="card-header py-2 bg-dark text-warning rounded-0">
@@ -55,7 +67,7 @@
</div> </div>
{% endif %} {% endif %}
</div> </div>
<div class="col-md-12 col-lg-6"> <div class="col-md-12 col-lg-5">
<div class="card shadow"> <div class="card shadow">
<div class="card-header bg-dark text-white"> <div class="card-header bg-dark text-white">
<ul class="nav nav-tabs card-header-tabs" id="addNote" role="tablist"> <ul class="nav nav-tabs card-header-tabs" id="addNote" role="tablist">

View File

@@ -238,13 +238,13 @@ class FinalizeView(MaraudeurMixin,
return self.finalize() return self.finalize()
def get_context_data(self, **kwargs): def get_context_data(self, **kwargs):
obj = self.get_object() self.object = self.get_object()
context = super().get_context_data(**kwargs) context = super().get_context_data(**kwargs)
if obj.est_terminee is True: if self.object.est_terminee is True:
context['form'] = None # Useless form context['form'] = None # Useless form
return context return context
# Link there so that "Compte-rendu" menu item is not disabled # Link there so that "Compte-rendu" menu item is not disabled
context['prochaine_maraude'] = obj context['prochaine_maraude'] = self.object
return context return context

View File

@@ -1,5 +1,5 @@
{% extends "notes/base.html" %} {% extends "notes/base.html" %}
{% load bootstrap3 notes %} {% load bootstrap4 notes %}
{% block page_content %} {% block page_content %}
<div class="col-lg-8 col-md-12"> <div class="col-lg-8 col-md-12">

View File

@@ -1,5 +1,5 @@
{% extends "notes/details.html" %} {% extends "notes/details.html" %}
{% load bootstrap3 %} {% load bootstrap4 %}
{% block title %} {% block title %}
{{ block.super }} {{ sujet }} {{ block.super }} {{ sujet }}
@@ -29,7 +29,7 @@
<div class="panel-heading" role="tab" id="notesAjoutHeading"> <div class="panel-heading" role="tab" id="notesAjoutHeading">
<h4 class="panel-title"> <h4 class="panel-title">
<a class="collapsed" role="button" data-toggle="collapse" data-parent="#accordion" href="#collapseNotesAjout" aria-expanded="false" aria-controls="collapseTwo"> <a class="collapsed" role="button" data-toggle="collapse" data-parent="#accordion" href="#collapseNotesAjout" aria-expanded="false" aria-controls="collapseTwo">
{% bootstrap_icon "plus" %} Ajouter une note Ajouter une note
</a> </a>
</h4> </h4>
</div> </div>
@@ -60,11 +60,11 @@
</div> </div>
<div class="panel-footer text-right"> <div class="panel-footer text-right">
<span class="text-right" id="normal-buttons"> <span class="text-right" id="normal-buttons">
<p>{% bootstrap_icon "tasks" %} {{ sujet.statistiques.info_completed }}%&nbsp; <p>{{ sujet.statistiques.info_completed }}%&nbsp;
<span class="btn btn-primary btn-sm" id="update-stats">Mettre à jour</span></p> <span class="btn btn-primary btn-sm" id="update-stats">Mettre à jour</span></p>
</span> </span>
<span class="text-right" id="update-buttons"> <span class="text-right" id="update-buttons">
<label for="submit-form" class="btn btn-primary">{% bootstrap_icon "floppy-save" %} Enregistrer</label> <label for="submit-form" class="btn btn-primary">Enregistrer</label>
<span class="btn btn-primary btn-sm" id="cancel">Annuler</span> <span class="btn btn-primary btn-sm" id="cancel">Annuler</span>
</span> </span>
@@ -94,8 +94,8 @@
<div class="panel panel-primary text-right"><div class="panel-heading"><h4 class="panel-title"><strong>Administration :</strong></h4></div> <div class="panel panel-primary text-right"><div class="panel-heading"><h4 class="panel-title"><strong>Administration :</strong></h4></div>
<div class="panel-body text-center"> <div class="panel-body text-center">
<div class="btn-group-vertical" role="group" aria-label="..."> <div class="btn-group-vertical" role="group" aria-label="...">
<a href="{% url 'admin:notes_note_changelist' %}?sujet__exact={{sujet.pk}}" class="btn btn-primary">{% bootstrap_icon "pencil" %} Éditer les notes</a> <a href="{% url 'admin:notes_note_changelist' %}?sujet__exact={{sujet.pk}}" class="btn btn-primary">Éditer les notes</a>
<a href="{% url 'notes:sujets-merge' pk=object.pk %}" class="btn btn-danger">{% bootstrap_icon "paste" %} Fusionner</a> <a href="{% url 'notes:sujets-merge' pk=object.pk %}" class="btn btn-danger">Fusionner</a>
</div> </div>
</div> </div>
</div> </div>

View File

@@ -5,12 +5,13 @@
{{ block.super }} {{ block.super }}
{% block sidebar_insert %}{% endblock %} {% block sidebar_insert %}{% endblock %}
{% if filters %} {% if filters %}
<div class="well"> <h4 class="sidebar-heading mt-4 px-3">Filtrer</h4>
<h4 class="text-right"><span class="glyphicon glyphicon-filter"></span> <strong>Filtres</strong></h4> <ul class="nav flex-column">
<ul class="nav nav-pills nav-stacked text-right">
{% for filter in filters %} {% for filter in filters %}
<li role="presentation" {% if filter.active %} class="active" {% endif %}> <li role="presentation" class="nav-item">
<a href="?filter={{filter.parameter_name}}">{{ filter.title }}</a> <a href="?filter={{filter.parameter_name}}" class="nav-link {% if filter.active %}active{% endif %}">
{{ filter.title }}
</a>
</li> </li>
{% endfor %} {% endfor %}
</ul> </ul>

View File

@@ -9,21 +9,18 @@
{% endblock %} {% endblock %}
{% block sidebar_insert %} {% block sidebar_insert %}
<div class="panel panel-primary text-right"> <h4 class="sidebar-heading mt-4 px-3">Rechercher</h4>
<div class="panel-body"> <form action="{% url "notes:liste-sujet" %}" method="POST" class="form form-group">
<h4><strong>Rechercher</strong></h4> {% csrf_token %}
<form action="{% url "notes:liste-sujet" %}" method="POST" class="form form-group">{% csrf_token %}
<div class="input-group"> <div class="input-group">
<input type="text" name="q" class="form-control" placeholder="Chercher un sujet" aria-describedby="basic-addon1"> <input type="text" name="q" class="form-control" placeholder="Chercher un sujet" aria-describedby="basic-addon1">
<span class="input-group-btn"> <span class="input-group-btn">
<button type="submit" class="btn btn-primary"><span class=" glyphicon glyphicon-search"></span> </button> <button type="submit" class="btn btn-primary">C</button>
</span> </span>
</div> </div>
</form> </form>
<hr/> <h4 class="sidebar-heading mt-4 px-3">Outils</h4>
<h4><strong>Outils</strong></h4> <a class="btn btn-primary btn-block" href="{% url "notes:create-sujet" %}">Ajouter un sujet</a>
<a class="btn btn-primary" href="{% url "notes:create-sujet" %}">
<span class="glyphicon glyphicon-plus"></span> Ajouter un sujet</a> </div></div>
{% endblock %} {% endblock %}
{% block search %} {% block search %}

View File

@@ -1,4 +1,4 @@
{% load boolean_icons bootstrap3 %} {% load boolean_icons bootstrap4 %}
<table class="table"> <table class="table">
<tr> <tr>
<th colspan="4" class="active">Problématiques</th> <th colspan="4" class="active">Problématiques</th>

View File

@@ -1,8 +1,8 @@
{% load bootstrap3 %} {% load bootstrap4 %}
<h4>Période</h4> <h4 class="sidebar-heading mt-2 px-3">Période</h4>
<form action="" method="get"> <form class="form px-3" action="" method="get">
{% bootstrap_form form layout="inline" %} {% bootstrap_form form layout="inline" %}
<input type="hidden" name="graph" value="{{active}}" /> <input type="hidden" name="graph" value="{{active}}" />
{% bootstrap_button "Ok" button_type="submit" %} {% bootstrap_button "Ok" button_type="submit" button_class="btn btn-dark btn-block" %}
</form> </form>

View File

@@ -7,11 +7,7 @@
{% block sidebar %} {% block sidebar %}
{{ block.super }} {{ block.super }}
<hr /> <hr />
<div class="panel panel-primary">
<div class="panel-body text-right">
{% include "statistiques/filter_form.html" %} {% include "statistiques/filter_form.html" %}
</div>
</div>
{% endblock %} {% endblock %}
{% block breadcrumbs %} {% block breadcrumbs %}

View File

@@ -1,18 +1,11 @@
{% load navbar %} {% load navbar %}
<ul class="nav nav-pills nav-stacked text-right"> <hr/>
<li role="presentation" {% active namespace="statistiques" viewname="index" %}> <h6 class="sidebar-heading mt-4 px-3">Sous-Catégories</h6>
<a href="{% url "statistiques:index" %}?period={{year|default:0}}">Maraudes&nbsp; <ul class="nav flex-column">
<span class="glyphicon glyphicon-road"></span> <li class="nav-item">
</a> <a class="nav-link {% active namespace="statistiques" viewname="typologie" append=True %}" href="{% url "statistiques:typologie" %}?period={{year|default:0}}">Typologie</a>
</li> </li>
<li role="presentation" {% active namespace="statistiques" viewname="typologie" %}> <li role="nav-item">
<a href="{% url "statistiques:typologie" %}?period={{year|default:0}}">Typologie&nbsp; <a class="nav-link {% active namespace="statistiques" viewname="frequentation" append=True %}" href="{% url "statistiques:frequentation" %}?period={{year|default:0}}">Fréquentation</a>
<span class="glyphicon glyphicon-user"></span>
</a>
</li>
<li role="presentation" {% active namespace="statistiques" viewname="frequentation" %}>
<a href="{% url "statistiques:frequentation" %}?period={{year|default:0}}">Fréquentation&nbsp;
<span class="glyphicon glyphicon-stats"></span>
</a>
</li> </li>
</ul> </ul>

View File

@@ -10,27 +10,24 @@
{% block sidebar %} {% block sidebar %}
{{ block.super }} {{ block.super }}
{% if chart %}
<hr /> <hr />
<div class="panel panel-primary"> {% if chart %}
<div class="panel-body text-right">
{% include "statistiques/filter_form.html" with active=active %} {% include "statistiques/filter_form.html" with active=active %}
<hr /> <hr />
<p>Échantillon : {{ queryset_count }} objets</p> <p class="text-muted px-3">Échantillon : {{ queryset_count }} objets</p>
</div>
</div>
{% endif %} {% endif %}
{% endblock %} {% endblock %}
{% block page_content %} {% block page_content %}
<ul class="nav nav-pills nav-justified"> <div class="card card-body py-1">
<ul class="nav nav-pills justify-content-center">
{% for name in chart_list %} {% for name in chart_list %}
<li role="presentation" {%if name == active%} class="active" {%endif%}> <li class="nav-item">
<a href="?graph={{name}}&period={{year}}">{{ name }}</a> <a class="nav-link {%if name == active%}active{%endif%}" href="?graph={{name}}&period={{year}}">{{ name }}</a>
</li> </li>
{% endfor %} {% endfor %}
</ul> </ul>
</div>
{% if chart %} {% if chart %}
{{ chart.as_html }} {{ chart.as_html }}
{% endif %} {% endif %}

View File

@@ -6,13 +6,8 @@
{% block sidebar %} {% block sidebar %}
{{ block.super }} {{ block.super }}
<div class="panel panel-primary">
<div class="panel-body text-right">
{% include "statistiques/filter_form.html" %} {% include "statistiques/filter_form.html" %}
<hr /> <p class="text-muted px-3">Échantillon : {{ queryset.count }} sujets</p>
<p>Échantillon : {{ queryset.count }} sujets</p>
</div>
</div>
{% endblock %} {% endblock %}
{% block page_content %} {% block page_content %}
@@ -30,8 +25,11 @@
$("#wrapper-" + id).show(); $("#wrapper-" + id).show();
} }
</script> </script>
<ul class="nav nav-tabs"> <ul class="nav nav-tabs">
{% for title, graph in graphs %}<li role="presentation" id="tab-{{graph.get_html_id}}"><a href="#" onclick="showGraph('{{graph.get_html_id}}');">{{ title }}</a></li>{% endfor %} {% for title, graph in graphs %}
<li class="nav-item" id="tab-{{graph.get_html_id}}">
<a class="nav-link" href="#" onclick="showGraph('{{graph.get_html_id}}');">{{ title }}</a>
</li>{% endfor %}
</ul> </ul>
{% for title, graph in graphs %} {% for title, graph in graphs %}

View File

@@ -35,26 +35,20 @@
<div class="row"> <div class="row">
<nav class="col-md-2 d-none d-md-block bg-light sidebar"> <nav class="col-md-2 d-none d-md-block bg-light sidebar">
<div class="sidebar-sticky"> <div class="sidebar-sticky">
{% if user.is_authenticated %}
<h6 class="sidebar-heading px-3 mt-4 text-muted">Menu</h6> <h6 class="sidebar-heading px-3 mt-4 text-muted">Menu</h6>
<ul class="nav flex-column"> <ul class="nav flex-column">
{% if user.is_authenticated %}
<li class="nav-item"> <li class="nav-item">
<a href="{% url 'maraudes:index' %}" class="nav-link {% active namespace="maraudes" append=True %}">Maraudes</a> <a href="{% url 'maraudes:index' %}" class="nav-link {% active namespace="maraudes" append=True %}">Maraudes</a>
</li> </li>
<li class="nav-item"> <li class="nav-item">
<a href="{% url 'notes:liste-sujet' %}" class="nav-link {% active namespace="notes" append=True %}">Suivi</a> <a href="{% url 'notes:liste-sujet' %}" class="nav-link {% active namespace="notes" append=True %}">Suivi</a>
</li> </li>
</ul> {% endif %}
{% else %}
<h6 class="sidebar-heading px-3 mt-4 mb-1 text-muted">
<span>Menu</span>
</h6>
<ul class="nav flex-column">
<li class="nav-item"> <li class="nav-item">
<a class="nav-link {% active namespace="statistiques" append=True %}" href="{% url "statistiques:index" %}">Statistiques</a> <a class="nav-link {% active namespace="statistiques" append=True %}" href="{% url "statistiques:index" %}">Statistiques</a>
</li> </li>
</ul> </ul>
{% endif %}
{% block sidebar %}{% endblock %} {% block sidebar %}{% endblock %}
</div> </div>
</nav> </nav>

View File

@@ -15,7 +15,7 @@ def active(context, namespace=None, viewname=None, append=False):
except: except:
(cur_namespace, cur_viewname) = (None, context.request.resolver_match.view_name) (cur_namespace, cur_viewname) = (None, context.request.resolver_match.view_name)
string = "class=\"active\"" if not append else "active" string = "class=\"active shadow\"" if not append else "active shadow"
if namespace == cur_namespace: if namespace == cur_namespace:
if not viewname or viewname == cur_viewname: if not viewname or viewname == cur_viewname: