* setup new 'statistiques' module * added 'graphos' package and created first test graph * put graphos in requirements, deleted local folder * added "load_csv" management command ! * added update of premiere_rencontre field in 'load_csv' management command * added missing urls.py file * added 'merge' action and view * added 'info_completed' ratio * linked sujets:merge views inside suivi:details * added link to maraudes:details in notes table headers, if any * Major reorganisation, moved 'suivi' and 'sujets' to 'notes', cleanup in 'maraudes', dropping 'website' mixins (mostly useless) * small cleanup * worked on Maraude and Sujet lists * corrected missing line in notes.__init__ * restored 'details' view for maraudes and sujets insie 'notes' module * worked on 'notes': added navigation between maraude's compte-rendu, right content in details, header to list tables * changed queryset for CompteRenduDetailsView to all notes of same date, minor layout changes * added right content to 'details-sujet', created 'statistiques' view and update templates * restored 'statistiques' ajax view in 'details-sujet', fixed 'merge_two' util function * added auto-creation of FicheStatistique (plus some tests), pagination for notes in 'details-sujet' * added error-prone cases in paginator * fixed non-working modals, added titles * added UpdateStatistiques capacity in CompteRenduCreate view * fixed missing AjaxTemplateMixin for CreateSujetView, worked on compte-rendu creation scripts * fixed MaraudeManager.all_of() for common Maraudeurs, added color hints in planning * re-instated statistiques module link and first test page * added FinalizeView to send a mail before finalizing compte-rendu * Added PieChart view for FicheStatistique fields * small style updates, added 'age' and 'genre' fields from sujets in statistiques.PieChartView * worked on statistiques, fixed small issues in 'notes' list views * small theme change * removed some dead code * fixed notes.tests, fixed statistiques.info_completed display, added filter in SujetLisView * added some tests * added customised admin templates * added authenticate in CustomAuthenticatationBackend, more verbose login thanks to messages * added django-nose for test coverage * Corrected raising exception on first migration On first migration, qs.exists() would previously be called and raising an Exception, sot he migrations would fail. * Better try block * cleaned up custom settings.py, added some overrides of django base_settings * corrected bad dictionnary key
83 lines
2.9 KiB
HTML
83 lines
2.9 KiB
HTML
{% extends "admin/base_site.html" %}
|
|
{% load i18n static %}
|
|
|
|
{% block extrastyle %}{{ block.super }}<link rel="stylesheet" type="text/css" href="{% static "admin/css/dashboard.css" %}" />{% endblock %}
|
|
|
|
{% block coltype %}colMS{% endblock %}
|
|
|
|
{% block bodyclass %}{{ block.super }} dashboard{% endblock %}
|
|
|
|
{% block breadcrumbs %}<li>Administration</li>{% endblock %}
|
|
|
|
{% block content %}
|
|
<div id="content-main">
|
|
|
|
{% if app_list %}
|
|
{% for app in app_list %}
|
|
<div class="app-{{ app.app_label }} module">
|
|
<table>
|
|
<caption>
|
|
<a href="{{ app.app_url }}" class="section" title="{% blocktrans with name=app.name %}Models in the {{ name }} application{% endblocktrans %}">{{ app.name }}</a>
|
|
</caption>
|
|
{% for model in app.models %}
|
|
<tr class="model-{{ model.object_name|lower }}">
|
|
{% if model.admin_url %}
|
|
<th scope="row"><a href="{{ model.admin_url }}">{{ model.name }}</a></th>
|
|
{% else %}
|
|
<th scope="row">{{ model.name }}</th>
|
|
{% endif %}
|
|
|
|
{% if model.add_url %}
|
|
<td><a href="{{ model.add_url }}" class="addlink">{% trans 'Add' %}</a></td>
|
|
{% else %}
|
|
<td> </td>
|
|
{% endif %}
|
|
|
|
{% if model.admin_url %}
|
|
<td><a href="{{ model.admin_url }}" class="changelink">{% trans 'Change' %}</a></td>
|
|
{% else %}
|
|
<td> </td>
|
|
{% endif %}
|
|
</tr>
|
|
{% endfor %}
|
|
</table>
|
|
</div>
|
|
{% endfor %}
|
|
{% else %}
|
|
<p>{% trans "You don't have permission to edit anything." %}</p>
|
|
{% endif %}
|
|
</div>
|
|
{% endblock %}
|
|
|
|
{% block sidebar %}
|
|
<div id="content-related">
|
|
<div class="module" id="recent-actions-module">
|
|
<h2>{% trans 'Recent actions' %}</h2>
|
|
<h3>{% trans 'My actions' %}</h3>
|
|
{% load log %}
|
|
{% get_admin_log 10 as admin_log for_user user %}
|
|
{% if not admin_log %}
|
|
<p>{% trans 'None available' %}</p>
|
|
{% else %}
|
|
<ul class="actionlist">
|
|
{% for entry in admin_log %}
|
|
<li class="{% if entry.is_addition %}addlink{% endif %}{% if entry.is_change %}changelink{% endif %}{% if entry.is_deletion %}deletelink{% endif %}">
|
|
{% if entry.is_deletion or not entry.get_admin_url %}
|
|
{{ entry.object_repr }}
|
|
{% else %}
|
|
<a href="{{ entry.get_admin_url }}">{{ entry.object_repr }}</a>
|
|
{% endif %}
|
|
<br/>
|
|
{% if entry.content_type %}
|
|
<span class="mini quiet">{% filter capfirst %}{{ entry.content_type }}{% endfilter %}</span>
|
|
{% else %}
|
|
<span class="mini quiet">{% trans 'Unknown content' %}</span>
|
|
{% endif %}
|
|
</li>
|
|
{% endfor %}
|
|
</ul>
|
|
{% endif %}
|
|
</div>
|
|
</div>
|
|
{% endblock %}
|