Add base templates to extend

- kfet/base_col_1.html for one column content.
- kfet/base_col_2.html for two columns content (left for fixed content,
right for main content).
This commit is contained in:
Aurélien Delobelle 2017-05-20 13:57:21 +02:00
parent 1845ce825f
commit e60e347a53
41 changed files with 1268 additions and 1327 deletions

View file

@ -257,13 +257,13 @@ textarea {
padding:0px 5px;
}
.content-center .table .form-control {
.table .form-control {
padding: 1px 12px ;
height:28px;
margin:3px 0px;
}
.content-center .table-condensed input.form-control {
.table-condensed input.form-control {
margin: 0 !important;
border-top: 0;
border-bottom: 0;
@ -630,3 +630,27 @@ thead .tooltip {
font-weight: normal;
margin-bottom: 0;
}
/* Statement creation */
.statement-create-summary table {
margin: 0 auto;
}
.statement-create-summary tr td {
text-align: right;
}
.statement-create-summary tr td:first-child {
padding-right: 15px;
font-weight: bold;
}
.statement-create-summary tr td:last-child {
width: 80px;
}
#detail_taken table td,
#detail_balance table td {
padding: 0;
}

View file

@ -51,15 +51,6 @@
box-shadow: inset 0 5px 5px -5px #000;
}
@media (max-width: 767px) {
.navbar-nav > li:hover > a,
.navbar-nav > li > a:focus,
.nav .open > a:hover,
.nav .open > a:focus {
box-shadow: inset 0 5px 5px -5px #000, inset 0 -5px 5px -5px #000;
}
}
.navbar-nav .dropdown .dropdown-menu {
padding: 0;
border: 0;

View file

@ -1,67 +1,61 @@
{% extends "kfet/base.html" %}
{% extends "kfet/base_col_2.html" %}
{% block title %}Liste des comptes{% endblock %}
{% block content-header-title %}Comptes{% endblock %}
{% block header-title %}Comptes{% endblock %}
{% block content %}
{% block fixed-content %}
<div class="row">
<div class="col-sm-4 col-md-3 col-content-left">
<div class="content-left">
<div class="content-left-top">
<div class="line line-big">{{ accounts|length|add:-1 }}</div>
<div class="line line-bigsub">compte{{ accounts|length|add:-1|pluralize }}</div>
</div>
<div class="buttons">
<a class="btn btn-primary btn-lg" href="{% url 'kfet.account.create' %}">Créer un compte</a>
{% if perms.kfet.manage_perms %}
<a class="btn btn-primary btn-lg" href="{% url 'kfet.account.group' %}">Permissions</a>
{% endif %}
{% if perms.kfet.view_negs %}
<a class="btn btn-primary btn-lg" href="{% url 'kfet.account.negative' %}">Négatifs</a>
{% endif %}
</div>
</div>
</div>
<div class="col-sm-8 col-md-9 col-content-right">
{% include 'kfet/base_messages.html' %}
<div class="content-right">
<div class="content-right-block">
<h2>Liste des comptes</h2>
<div class="table-responsive">
<table class="table table-condensed">
<thead>
<tr>
<td></td>
<td>Trigramme</td>
<td>Nom</td>
<td>Balance</td>
<td>COF</td>
<td>Dpt</td>
<td>Promo</td>
</tr>
</thead>
<tbody>
{% for account in accounts %}
<tr>
<td class="text-center">
<a href="{% url 'kfet.account.read' account.trigramme %}">
<span class="glyphicon glyphicon-cog"></span>
</a>
</td>
<td>{{ account.trigramme }}</td>
<td>{{ account.name }}</td>
<td class="text-right">{{ account.balance }}€</td>
<td>{{ account.is_cof }}</td>
<td>{{ account.departement }}</td>
<td>{{ account.promo|default_if_none:'' }}</td>
</tr>
{% endfor %}
</tbody>
</table>
</div>
</div>
</div>
<div class="content-left-top">
<div class="line line-big">{{ accounts|length|add:-1 }}</div>
<div class="line line-bigsub">compte{{ accounts|length|add:-1|pluralize }}</div>
</div>
<div class="buttons">
<a class="btn btn-primary btn-lg" href="{% url 'kfet.account.create' %}">Créer un compte</a>
{% if perms.kfet.manage_perms %}
<a class="btn btn-primary btn-lg" href="{% url 'kfet.account.group' %}">Permissions</a>
{% endif %}
{% if perms.kfet.view_negs %}
<a class="btn btn-primary btn-lg" href="{% url 'kfet.account.negative' %}">Négatifs</a>
{% endif %}
</div>
{% endblock %}
{% block main-content %}
<div class="content-right-block">
<h2>Liste des comptes</h2>
<div class="table-responsive">
<table class="table table-condensed">
<thead>
<tr>
<td></td>
<td>Trigramme</td>
<td>Nom</td>
<td>Balance</td>
<td>COF</td>
<td>Dpt</td>
<td>Promo</td>
</tr>
</thead>
<tbody>
{% for account in accounts %}
<tr>
<td class="text-center">
<a href="{% url 'kfet.account.read' account.trigramme %}">
<span class="glyphicon glyphicon-cog"></span>
</a>
</td>
<td>{{ account.trigramme }}</td>
<td>{{ account.name }}</td>
<td class="text-right">{{ account.balance }}€</td>
<td>{{ account.is_cof|yesno:"Oui,Non" }}</td>
<td>{{ account.departement }}</td>
<td>{{ account.promo|default_if_none:'' }}</td>
</tr>
{% endfor %}
</tbody>
</table>
</div>
</div>

View file

@ -1,45 +1,39 @@
{% extends "kfet/base.html" %}
{% extends "kfet/base_col_1.html" %}
{% load staticfiles %}
{% block title %}Nouveau compte{% endblock %}
{% block header-title %}Création d'un compte{% endblock %}
{% block extra_head %}
<script src="{% static "autocomplete_light/autocomplete.js" %}" type="text/javascript"></script>
{% endblock %}
{% block content-header-title %}Création d'un compte{% endblock %}
{% block main-class %}content-form{% endblock %}
{% block content %}
{% block main-content %}
{% include 'kfet/base_messages.html' %}
<div class="row">
<div class="col-sm-12 col-md-8 col-md-offset-2 nopadding">
<div class="content-center content-form">
<form action="" method="post" class="account_create">
{% csrf_token %}
<div>
{{ trigramme_form.trigramme.errors }}
{{ trigramme_form.trigramme }}
</div>
<div id="trigramme_valid"></div>
<p class="help-block">Les mots contenant des caractères non alphanumériques seront ignorés</p>
<input type="text" name="q" id="search_autocomplete" spellcheck="false" placeholder="Chercher un utilisateur par nom, prénom ou identifiant clipper" class="form-control">
<div style="position:relative;">
<div id="search_results"></div>
</div>
<div class="form-horizontal">
<div id="form-placeholder">
{% include 'kfet/account_create_form.html' %}
</div>
{% if not perms.kfet.add_account %}
{% include 'kfet/form_authentication_snippet.html' %}
{% endif %}
</div>
</form>
</div>
<form action="" method="post" class="account_create">
{% csrf_token %}
<div>
{{ trigramme_form.trigramme.errors }}
{{ trigramme_form.trigramme }}
</div>
</div>
<div id="trigramme_valid"></div>
<p class="help-block">Les mots contenant des caractères non alphanumériques seront ignorés</p>
<input type="text" name="q" id="search_autocomplete" spellcheck="false" placeholder="Chercher un utilisateur par nom, prénom ou identifiant clipper" class="form-control">
<div style="position:relative;">
<div id="search_results"></div>
</div>
<div class="form-horizontal">
<div id="form-placeholder">
{% include 'kfet/account_create_form.html' %}
</div>
{% if not perms.kfet.add_account %}
{% include 'kfet/form_authentication_snippet.html' %}
{% endif %}
</div>
</form>
<script type="text/javascript">
$(document).ready(function() {
// Affichage des résultats d'autocomplétion

View file

@ -2,43 +2,37 @@
{% load staticfiles %}
{% block title %}Nouveau compte{% endblock %}
{% block header-title %}Création d'un compte{% endblock %}
{% block extra_head %}
<script src="{% static "autocomplete_light/autocomplete.js" %}" type="text/javascript"></script>
{% endblock %}
{% block content-header-title %}Création d'un compte{% endblock %}
{% block main-class %}content-form{% endblock %}
{% block content %}
{% block main-content %}
<div class="row">
<div class="col-sm-12 col-md-8 col-md-offset-2 nopadding">
{% include 'kfet/base_messages.html' %}
<div class="content-center content-form">
<form action="" method="post" class="account_create">
{% csrf_token %}
<div>
{{ trigramme_form.trigramme.errors }}
{{ trigramme_form.trigramme }}
{{ balance_form }}
</div>
<div id="trigramme_valid"></div>
<input type="text" name="q" id="search_autocomplete" spellcheck="false" placeholder="Chercher un utilisateur par nom, prénom ou identifiant clipper" class="form-control">
<div style="position:relative;">
<div id="search_results"></div>
</div>
<div class="form-horizontal">
<div id="form-placeholder">
{% include 'kfet/account_create_form.html' %}
</div>
{% if not perms.kfet.add_account %}
{% include 'kfet/form_authentication_snippet.html' %}
{% endif %}
</div>
</form>
</div>
<form action="" method="post" class="account_create">
{% csrf_token %}
<div>
{{ trigramme_form.trigramme.errors }}
{{ trigramme_form.trigramme }}
{{ balance_form }}
</div>
</div>
<div id="trigramme_valid"></div>
<input type="text" name="q" id="search_autocomplete" spellcheck="false" placeholder="Chercher un utilisateur par nom, prénom ou identifiant clipper" class="form-control">
<div style="position:relative;">
<div id="search_results"></div>
</div>
<div class="form-horizontal">
<div id="form-placeholder">
{% include 'kfet/account_create_form.html' %}
</div>
{% if not perms.kfet.add_account %}
{% include 'kfet/form_authentication_snippet.html' %}
{% endif %}
</div>
</form>
<script type="text/javascript">
$(document).ready(function() {
// Affichage des résultats d'autocomplétion

View file

@ -1,54 +1,51 @@
{% extends 'kfet/base.html' %}
{% extends "kfet/base_col_2.html" %}
{% block title %}Groupes de comptes{% endblock %}
{% block content-header-title %}Groupes de comptes{% endblock %}
{% block header-title %}Groupes de comptes{% endblock %}
{% block content %}
{% block fixed-content %}
<div class="row">
<div class="col-sm-4 col-md-3 col-content-left">
<div class="content-left">
<div class="content-left-top text-center">
<div class="line"></div>
</div>
<div class="buttons">
<a class="btn btn-primary btn-lg" href="{% url 'kfet.account.group.create' %}">Créer un groupe</a>
</div>
</div>
</div>
<div class="col-sm-8 col-md-9 col-content-right">
{% include 'kfet/base_messages.html' %}
<div class="content-right">
{% for group in groups %}
<div class="content-right-block">
<div class="buttons-title">
<a class="btn btn-primary" href="{% url 'kfet.account.group.update' group.pk %}">
<span class="glyphicon glyphicon-cog"></span>
</a>
</div>
<h2>{{ group.name }}</h2>
<div class="row">
<div class="col-sm-6">
<h3>Permissions</h3>
<ul>
{% for perm in group.permissions.all %}
<li>{{ perm.name }}</li>
{% endfor %}
</ul>
</div>
<div class="col-sm-6">
<h3>Comptes</h3>
<ul>
{% for user in group.user_set.all %}
<li>{{ user.profile.account_kfet }}</li>
{% endfor %}
</ul>
</div>
</div>
</div>
{% endfor %}
</div>
</div>
<div class="buttons">
<a class="btn btn-primary btn-lg" href="{% url 'kfet.account.group.create' %}">Créer un groupe</a>
</div>
{% endblock %}
{% block main-content %}
{% for group in groups %}
<div class="content-right-block">
<div class="buttons-title">
<a class="btn btn-primary" href="{% url 'kfet.account.group.update' group.pk %}">
<span class="glyphicon glyphicon-cog"></span>
</a>
</div>
<h2>{{ group.name }}</h2>
<div class="row">
<div class="col-sm-6">
<h3>Permissions</h3>
{% regroup group.permissions.all by content_type as grouped_perms %}
<ul class="list-unstyled">
{% for perms_group in grouped_perms %}
<li><b>{{ perms_group.grouper|title }}</b>
<ul class="list-unstyled">
{% for perm in perms_group.list %}
<li style="padding-left: 20px">{{ perm.name }}</li>
{% endfor %}
</ul>
{% endfor %}
</ul>
</div>
<div class="col-sm-6">
<h3>Comptes</h3>
<ul class="list-unstyled">
{% for user in group.user_set.all %}
<li>{{ user.profile.account_kfet }}</li>
{% endfor %}
</ul>
</div>
</div>
</div>
{% endfor %}
{% endblock %}

View file

@ -1,4 +1,4 @@
{% extends 'kfet/base.html' %}
{% extends 'kfet/base_col_1.html' %}
{% load staticfiles %}
{% load widget_tweaks %}
@ -8,36 +8,31 @@
{% endblock %}
{% block title %}Permissions - Édition{% endblock %}
{% block content-header-title %}Modification des permissions{% endblock %}
{% block header-title %}Modification des permissions{% endblock %}
{% block content %}
{% block main-class %}content-form{% endblock %}
<div class="row">
<div class="col-sm-12 col-md-8 col-md-offset-2 nopadding">
{% include "kfet/base_messages.html" %}
<div class="content-center content-form">
<form action="" method="post" class="form-horizontal">
{% csrf_token %}
<div class="form-group">
<label for="{{ form.name.id_for_label }}" class="col-sm-2 control-label">{{ form.name.label }}</label>
<div class="col-sm-10">
<div class="input-group">
<span class="input-group-addon">K-Fêt</span>
{{ form.name|add_class:"form-control" }}
</div>
{% if form.name.errors %}<span class="help-block">{{ form.name.errors }}</span>{% endif %}
{% if form.name.help_text %}<span class="help-block">{{ form.name.help_text }}</span>{% endif %}
</div>
</div>
{% include "kfet/form_field_snippet.html" with field=form.permissions %}
{% if not perms.kfet.manage_perms %}
{% include "kfet/form_authentication_snippet.html" %}
{% endif %}
{% include "kfet/form_submit_snippet.html" with value="Enregistrer" %}
</form>
{% block main-content %}
<form action="" method="post" class="form-horizontal">
{% csrf_token %}
<div class="form-group">
<label for="{{ form.name.id_for_label }}" class="col-sm-2 control-label">{{ form.name.label }}</label>
<div class="col-sm-10">
<div class="input-group">
<span class="input-group-addon">K-Fêt</span>
{{ form.name|add_class:"form-control" }}
</div>
{% if form.name.errors %}<span class="help-block">{{ form.name.errors }}</span>{% endif %}
{% if form.name.help_text %}<span class="help-block">{{ form.name.help_text }}</span>{% endif %}
</div>
</div>
</div>
{% include "kfet/form_field_snippet.html" with field=form.permissions %}
{% if not perms.kfet.manage_perms %}
{% include "kfet/form_authentication_snippet.html" %}
{% endif %}
{% include "kfet/form_submit_snippet.html" with value="Enregistrer" %}
</form>
<script type="text/javascript">
$(document).ready(function() {

View file

@ -1,79 +1,73 @@
{% extends 'kfet/base.html' %}
{% extends "kfet/base_col_2.html" %}
{% block title %}Comptes en négatifs{% endblock %}
{% block content-header-title %}Comptes - Négatifs{% endblock %}
{% block title %}Comptes - Négatifs{% endblock %}
{% block header-title %}Comptes en négatifs{% endblock %}
{% block content %}
{% block fixed-content %}
<div class="row">
<div class="col-sm-4 col-md-3 col-content-left">
<div class="content-left">
<div class="content-left-top">
<div class="line line-big">{{ negatives|length }}</div>
<div class="line line-bigsub">compte{{ negatives|length|pluralize }} en négatif</div>
<div class="block">
<div class="line"><b>Total:</b> {{ negatives_sum|floatformat:2 }}€</div>
</div>
<div class="block">
<div class="line"><b>Découvert autorisé par défaut</b></div>
<div class="line">Montant: {{ kfet_config.overdraft_amount }}€</div>
<div class="line">Pendant: {{ kfet_config.overdraft_duration }}</div>
</div>
</div>
{% if perms.kfet.change_settings %}
<div class="buttons">
<a class="btn btn-primary btn-lg" href="{% url 'kfet.settings' %}">Modifier les valeurs par défaut</a>
</div>
{% endif %}
</div>
<div class="content-left-top">
<div class="line line-big">{{ negatives|length }}</div>
<div class="line line-bigsub">compte{{ negatives|length|pluralize }} en négatif</div>
<div class="block">
<div class="line"><b>Total:</b> {{ negatives_sum|floatformat:2 }}€</div>
</div>
<div class="col-sm-8 col-md-9 col-content-right">
{% include 'kfet/base_messages.html' %}
<div class="content-right">
<div class="content-right-block">
<h2>Liste des comptes en négatifs</h2>
<div class="table-responsive">
<table class="table table-condensed">
<thead>
<tr>
<td></td>
<td>Tri</td>
<td>Nom</td>
<td>Balance</td>
<td>Réelle</td>
<td>Début</td>
<td>Découvert autorisé</td>
<td>Jusqu'au</td>
<td>Balance offset</td>
</tr>
</thead>
<tbody>
{% for neg in negatives %}
<tr>
<td class="text-center">
<a href="{% url 'kfet.account.update' neg.account.trigramme %}">
<span class="glyphicon glyphicon-cog"></span>
</a>
</td>
<td>{{ neg.account.trigramme }}</td>
<td>{{ neg.account.name }}</td>
<td class="text-right">{{ neg.account.balance|floatformat:2 }}€</td>
<td class="text-right">
{% if neg.balance_offset %}
{{ neg.account.real_balance|floatformat:2 }}€
{% endif %}
</td>
<td>{{ neg.start|date:'d/m/Y H:i:s'}}</td>
<td>{{ neg.authz_overdraft_amount|default_if_none:'' }}</td>
<td>{{ neg.authz_overdrafy_until|default_if_none:'' }}</td>
<td>{{ neg.balance_offset|default_if_none:'' }}</td>
</tr>
{% endfor %}
</tbody>
</table>
</div>
</div>
</div>
<div class="block">
<div class="line"><b>Découvert autorisé par défaut</b></div>
<div class="line">Montant: {{ kfet_config.overdraft_amount }}€</div>
<div class="line">Pendant: {{ kfet_config.overdraft_duration }}</div>
</div>
</div>
{% if perms.kfet.change_settings %}
<div class="buttons">
<a class="btn btn-primary btn-lg" href="{% url 'kfet.settings' %}">Modifier les valeurs par défaut</a>
</div>
{% endif %}
{% endblock %}
{% block main-content %}
<div class="content-right-block">
<h2>Liste des comptes en négatifs</h2>
<div class="table-responsive">
<table class="table table-condensed">
<thead>
<tr>
<td></td>
<td>Tri</td>
<td>Nom</td>
<td>Balance</td>
<td>Réelle</td>
<td>Début</td>
<td>Découvert autorisé</td>
<td>Jusqu'au</td>
<td>Balance offset</td>
</tr>
</thead>
<tbody>
{% for neg in negatives %}
<tr>
<td class="text-center">
<a href="{% url 'kfet.account.update' neg.account.trigramme %}">
<span class="glyphicon glyphicon-cog"></span>
</a>
</td>
<td>{{ neg.account.trigramme }}</td>
<td>{{ neg.account.name }}</td>
<td class="text-right">{{ neg.account.balance|floatformat:2 }}€</td>
<td class="text-right">
{% if neg.balance_offset %}
{{ neg.account.real_balance|floatformat:2 }}€
{% endif %}
</td>
<td>{{ neg.start|date:'d/m/Y H:i:s'}}</td>
<td>{{ neg.authz_overdraft_amount|default_if_none:'' }}</td>
<td>{{ neg.authz_overdrafy_until|default_if_none:'' }}</td>
<td>{{ neg.balance_offset|default_if_none:'' }}</td>
</tr>
{% endfor %}
</tbody>
</table>
</div>
</div>

View file

@ -1,4 +1,4 @@
{% extends "kfet/base.html" %}
{% extends "kfet/base_col_2.html" %}
{% load staticfiles %}
{% load kfet_tags %}
{% load l10n %}
@ -29,14 +29,6 @@ $(document).ready(function() {
{% endblock %}
{% block title %}
{% if account.user == request.user %}
Mon compte
{% else %}
Informations du compte {{ account.trigramme }}
{% endif %}
{% endblock %}
{% block content-header-title %}
{% if account.user == request.user %}
Mon compte
{% else %}
@ -44,47 +36,47 @@ $(document).ready(function() {
{% endif %}
{% endblock %}
{% block content %}
{% block header-title %}
{% if account.user == request.user %}
Mon compte
{% else %}
Informations du compte {{ account.trigramme }}
{% endif %}
{% endblock %}
<div class="row">
<div class="col-sm-4 col-md-3 col-content-left">
<div class="content-left">
{% include 'kfet/left_account.html' %}
{% block fixed-content %}
{% include "kfet/left_account.html" %}
{% endblock %}
{% block main-content %}
<div class="tab-content">
{% if account.user == request.user %}
<div class="content-right-block tab-pane fade in active" id="tab_stats">
<h2>Statistiques</h2>
<div>
<h3>Ma balance</h3>
<div id="stat_balance"></div>
<h3>Ma consommation</h3>
<div id="stat_last"></div>
</div>
</div>
<div class="col-sm-8 col-md-9 col-content-right">
{% include "kfet/base_messages.html" %}
<div class="content-right">
<div class="tab-content">
{% if account.user == request.user %}
<div class="content-right-block tab-pane fade in active" id="tab_stats">
<h2>Statistiques</h2>
<div>
<h3>Ma balance</h3>
<div id="stat_balance"></div>
<h3>Ma consommation</h3>
<div id="stat_last"></div>
</div>
</div><!-- content-right-block -->
{% endif %}
<div class="content-right-block tab-pane fade {% if account.user != request.user %}in active{% endif %}" id="tab_history">
{% if addcosts %}
<h2>Gagné des majorations</h2>
<div>
<ul>
{% for addcost in addcosts %}
<li>{{ addcost.date|date:'l j F' }}: +{{ addcost.sum_addcosts }}€</li>
{% endfor %}
</ul>
</div>
{% endif %}
<h2>Historique</h2>
<div id="history"></div>
</div><!-- content-right-block -->
</div><!-- tab-content -->
</div><!-- content-right-->
</div>
</div>
</div><!-- content-right-block -->
{% endif %}
<div class="content-right-block tab-pane fade {% if account.user != request.user %}in active{% endif %}" id="tab_history">
{% if addcosts %}
<h2>Gagné des majorations</h2>
<div>
<ul>
{% for addcost in addcosts %}
<li>{{ addcost.date|date:'l j F' }}: +{{ addcost.sum_addcosts }}€</li>
{% endfor %}
</ul>
</div>
{% endif %}
<h2>Historique</h2>
<div id="history"></div>
</div><!-- content-right-block -->
</div><!-- tab-content -->
<script type="text/javascript">
$(document).ready(function() {

View file

@ -1,4 +1,4 @@
{% extends "kfet/base.html" %}
{% extends "kfet/base_col_1.html" %}
{% block extra_head %}
{{ negative_form.media }}
@ -12,7 +12,7 @@
{% endif %}
{% endblock %}
{% block content-header-title %}
{% block header-title %}
{% if account.user == request.user %}
Modification de mes informations
{% else %}
@ -20,28 +20,23 @@
{% endif %}
{% endblock %}
{% block content %}
{% block main-class %}content-form{% endblock %}
<div class="row">
<div class="col-sm-12 col-md-8 col-md-offset-2 nopadding">
{% include "kfet/base_messages.html" %}
<div class="content-center content-form">
<form action="" method="post" class="form-horizontal">
{% csrf_token %}
{% include 'kfet/form_snippet.html' with form=user_form %}
{% include 'kfet/form_snippet.html' with form=cof_form %}
{% include 'kfet/form_snippet.html' with form=account_form %}
{% include 'kfet/form_snippet.html' with form=group_form %}
{% include 'kfet/form_snippet.html' with form=pwd_form %}
{% include 'kfet/form_snippet.html' with form=negative_form %}
{% if perms.kfet.is_team %}
{% include 'kfet/form_authentication_snippet.html' %}
{% endif %}
{% include 'kfet/form_submit_snippet.html' with value="Mettre à jour" %}
</form>
</div>
</div>
</div>
{% block main-content %}
<form action="" method="post" class="form-horizontal">
{% csrf_token %}
{% include 'kfet/form_snippet.html' with form=user_form %}
{% include 'kfet/form_snippet.html' with form=cof_form %}
{% include 'kfet/form_snippet.html' with form=account_form %}
{% include 'kfet/form_snippet.html' with form=group_form %}
{% include 'kfet/form_snippet.html' with form=pwd_form %}
{% include 'kfet/form_snippet.html' with form=negative_form %}
{% if perms.kfet.is_team %}
{% include 'kfet/form_authentication_snippet.html' %}
{% endif %}
{% include 'kfet/form_submit_snippet.html' with value="Mettre à jour" %}
</form>
<script type="text/javascript">

View file

@ -1,71 +1,64 @@
{% extends 'kfet/base.html' %}
{% extends 'kfet/base_col_2.html' %}
{% block title %}Articles{% endblock %}
{% block content-header-title %}Articles{% endblock %}
{% block header-title %}Articles{% endblock %}
{% block content %}
{% block fixed-content %}
<div class="row">
<div class="col-sm-4 col-md-3 col-content-left">
<div class="content-left">
<div class="content-left-top">
<div class="line line-big">{{ articles|length }}</div>
<div class="line line-bigsub">article{{ articles|length|pluralize }}</div>
</div>
<div class="buttons">
<a class="btn btn-primary btn-lg" href="{% url 'kfet.article.create' %}">
Nouvel article
</a>
<a class="btn btn-primary btn-lg" href="{% url 'kfet.category' %}">
Catégories
</a>
</div>
</div>
</div>
<div class="col-sm-8 col-md-9 col-content-right">
{% include 'kfet/base_messages.html' %}
<div class="content-right">
<div class="content-right-block">
<h2>Liste des articles</h2>
<div class="table-responsive">
<table class="table table-condensed">
<thead>
<tr>
<td></td>
<td>Nom</td>
<td class="text-right">Prix</td>
<td class="text-right">Stock</td>
<td class="text-right">En vente</td>
<td class="text-right">Affiché</td>
<td class="text-right">Dernier inventaire</td>
</tr>
</thead>
<tbody>
{% for article in articles %}
{% ifchanged article.category %}
<tr class="section">
<td colspan="7">{{ article.category.name }}</td>
</tr>
{% endifchanged %}
<tr>
<td class="text-center">
<a href="{% url 'kfet.article.read' article.pk %}">
<span class="glyphicon glyphicon-cog"></span>
</a>
</td>
<td>{{ article.name }}</td>
<td class="text-right">{{ article.price }}€</td>
<td class="text-right">{{ article.stock }}</td>
<td class="text-right">{{ article.is_sold | yesno:"En vente,Non vendu"}}</td>
<td class="text-right">{{ article.hidden | yesno:"Caché,Affiché" }}</td>
<td class="text-right">{{ article.inventory.0.at }}</td>
</tr>
{% endfor %}
</tbody>
</table>
</div>
</div>
</div>
<div class="content-left-top">
<div class="line line-big">{{ articles|length }}</div>
<div class="line line-bigsub">article{{ articles|length|pluralize }}</div>
</div>
<div class="buttons">
<a class="btn btn-primary btn-lg" href="{% url 'kfet.article.create' %}">
Nouvel article
</a>
<a class="btn btn-primary btn-lg" href="{% url 'kfet.category' %}">
Catégories
</a>
</div>
{% endblock %}
{% block main-content %}
<div class="content-right-block">
<h2>Liste des articles</h2>
<div class="table-responsive">
<table class="table table-condensed">
<thead>
<tr>
<td></td>
<td>Nom</td>
<td class="text-right">Prix</td>
<td class="text-right">Stock</td>
<td class="text-right">En vente</td>
<td class="text-right">Affiché</td>
<td class="text-right">Dernier inventaire</td>
</tr>
</thead>
<tbody>
{% for article in articles %}
{% ifchanged article.category %}
<tr class="section">
<td colspan="7">{{ article.category.name }}</td>
</tr>
{% endifchanged %}
<tr>
<td class="text-center">
<a href="{% url 'kfet.article.read' article.pk %}">
<span class="glyphicon glyphicon-cog"></span>
</a>
</td>
<td>{{ article.name }}</td>
<td class="text-right">{{ article.price }}€</td>
<td class="text-right">{{ article.stock }}</td>
<td class="text-right">{{ article.is_sold | yesno:"En vente,Non vendu"}}</td>
<td class="text-right">{{ article.hidden | yesno:"Caché,Affiché" }}</td>
<td class="text-right">{{ article.inventory.0.at }}</td>
</tr>
{% endfor %}
</tbody>
</table>
</div>
</div>

View file

@ -1,9 +1,11 @@
{% extends 'kfet/base.html' %}
{% extends 'kfet/base_col_1.html' %}
{% block title %}Nouvel article{% endblock %}
{% block content-header-title %}Création d'un article{% endblock %}
{% block header-title %}Création d'un article{% endblock %}
{% block content %}
{% block main-class %}content-form{% endblock %}
{% block main-content %}
{% include "kfet/base_form.html" with authz=perms.kfet.add_article submit_text="Enregistrer" %}

View file

@ -1,4 +1,4 @@
{% extends 'kfet/base.html' %}
{% extends 'kfet/base_col_2.html' %}
{% load staticfiles %}
{% block extra_head %}
@ -6,97 +6,89 @@
<script type="text/javascript" src="{% static 'kfet/js/statistic.js' %}"></script>
{% endblock %}
{% block title %}Informations sur l'article {{ article }}{% endblock %}
{% block content-header-title %}Article - {{ article.name }}{% endblock %}
{% block title %}Article - {{ article.name }}{% endblock %}
{% block header-title %}Informations sur l'article {{ article.name }}{% endblock %}
{% block content %}
{% block fixed-content %}
<div class="row">
<div class="col-sm-4 col-md-3 col-content-left">
<div class="content-left">
<div class="content-left-top">
<div class="line line-big">{{ article.name }}</div>
<div class="line line-bigsub">{{ article.category }}</div>
<div class="block">
<div class="line">Prix (hors réduc.): {{ article.price }}€</div>
<div class="line">Stock: {{ article.stock }}</div>
<div class="line">En vente: {{ article.is_sold | yesno:"Oui,Non" }}</div>
<div class="line">Affiché: {{ article.hidden | yesno:"Non,Oui" }}</div>
</div>
</div>
<div class="buttons">
<a class="btn btn-primary btn-lg" href="{% url 'kfet.article.update' article.pk %}">
Modifier
</a>
</div>
</div>
<div class="content-left-top">
<div class="line line-big">{{ article.name }}</div>
<div class="line line-bigsub">{{ article.category }}</div>
<div class="block">
<div class="line">Prix (hors réduc.): {{ article.price }}€</div>
<div class="line">Stock: {{ article.stock }}</div>
<div class="line">En vente: {{ article.is_sold | yesno:"Oui,Non" }}</div>
<div class="line">Affiché: {{ article.hidden | yesno:"Non,Oui" }}</div>
</div>
<div class="col-sm-8 col-md-9 col-content-right">
{% include 'kfet/base_messages.html' %}
<div class="content-right">
<div class="content-right-block">
<h2>Historique</h2>
<div class="row">
<div class="col-sm-6">
<h3>Inventaires</h3>
<table class="table">
<thead>
<tr>
<td>Date</td>
<td>Stock</td>
<td>Erreur</td>
</tr>
</thead>
<tbody>
{% for inventoryart in inventoryarts %}
<tr>
<td>{{ inventoryart.inventory.at }}</td>
<td>{{ inventoryart.stock_new }}</td>
<td>{{ inventoryart.stock_error }}</td>
</tr>
{% endfor %}
</tbody>
</table>
</div>
<div class="col-sm-6">
<h3>Prix fournisseurs</h3>
<table class="table">
<thead>
<tr>
<td>Date</td>
<td>Fournisseur</td>
<td>HT</td>
<td>TVA</td>
<td>Droits</td>
</tr>
</thead>
<tbody>
{% for supplierart in supplierarts %}
<tr>
<td>{{ supplierart.at }}</td>
<td>{{ supplierart.supplier.name }}</td>
<td>{{ supplierart.price_HT }}</td>
<td>{{ supplierart.TVA }}</td>
<td>{{ supplierart.rights }}</td>
</tr>
{% endfor %}
</tbody>
</table>
</div>
</div><!-- /row-->
</div>
<div class="content-right-block content-right-block-transparent">
<h2>Statistiques</h2>
<div class="row">
<div class="col-sm-12 nopadding">
<div class="panel-md-margin">
<h3>Ventes de {{ article.name }}</h3>
<div id="stat_last"></div>
</div>
</div>
</div><!-- /row -->
</div>
<div class="buttons">
<a class="btn btn-primary btn-lg" href="{% url 'kfet.article.update' article.pk %}">
Modifier
</a>
</div>
{% endblock %}
{% block main-content %}
<div class="content-right-block">
<h2>Historique</h2>
<div class="row" style="padding-bottom: 15px">
<div class="col-md-6">
<h3>Inventaires</h3>
<table class="table">
<thead>
<tr>
<td>Date</td>
<td>Stock</td>
<td>Erreur</td>
</tr>
</thead>
<tbody>
{% for inventoryart in inventoryarts %}
<tr>
<td>{{ inventoryart.inventory.at }}</td>
<td>{{ inventoryart.stock_new }}</td>
<td>{{ inventoryart.stock_error }}</td>
</tr>
{% endfor %}
</tbody>
</table>
</div>
<div class="col-md-6">
<h3>Prix fournisseurs</h3>
<div class="table-responsive">
<table class="table">
<thead>
<tr>
<td>Date</td>
<td>Fournisseur</td>
<td>HT</td>
<td>TVA</td>
<td>Droits</td>
</tr>
</thead>
<tbody>
{% for supplierart in supplierarts %}
<tr>
<td>{{ supplierart.at }}</td>
<td>{{ supplierart.supplier.name }}</td>
<td>{{ supplierart.price_HT }}</td>
<td>{{ supplierart.TVA }}</td>
<td>{{ supplierart.rights }}</td>
</tr>
{% endfor %}
</tbody>
</table>
</div>
</div>
</div><!-- /row-->
</div>
<div class="content-right-block">
<h2>Statistiques</h2>
<div>
<h3>Ventes</h3>
<div id="stat_last"></div>
</div>
</div>

View file

@ -1,9 +1,11 @@
{% extends 'kfet/base.html' %}
{% extends "kfet/base_col_1.html" %}
{% block title %}Édition de l'article {{ article.name }}{% endblock %}
{% block content-header-title %}Article {{ article.name }} - Édition{% endblock %}
{% block title %}{{ article.name }} - Édition{% endblock %}
{% block header-title %}Édition de l'article {{ article.name }}{% endblock %}
{% block content %}
{% block main-class %}content-form{% endblock %}
{% block main-content %}
{% include "kfet/base_form.html" with authz=perms.kfet.change_article submit_text="Mettre à jour"%}

View file

@ -30,12 +30,12 @@
<body>
{% include "kfet/base_nav.html" %}
<div class="container-fluid">
{% block content-header %}
<div class="row row-page-header">
<div class="col-lg-12">
<h1 class="page-header">{% block content-header-title %}{% endblock %}</h1>
</div>
{% block header %}
<div class="row row-page-header">
<div class="col-lg-12">
<h1 class="page-header">{% block header-title %}{% endblock %}</h1>
</div>
</div>
{% endblock %}
{% block content %}{% endblock %}
{% include "kfet/base_footer.html" %}

View file

@ -0,0 +1,14 @@
{% extends "kfet/base.html" %}
{% block content %}
<div class="row">
<div class="nopadding {% block main-size %}col-md-8 col-md-offset-2{% endblock %}">
{% include "kfet/base_messages.html" %}
<div class="content-center {% block main-class %}{% endblock %}">
{% block main-content %}{% endblock %}
</div>
</div>
<div>
{% endblock %}

View file

@ -0,0 +1,19 @@
{% extends "kfet/base.html" %}
{% block content %}
<div class="row">
<div class="col-content-left {% block fixed-size %}col-sm-4 col-md-3{% endblock %}">
<div class="content-left">
{% block fixed-content %}{% endblock %}
</div>
</div>
<div class="col-content-right {% block main-size %}col-sm-8 col-md-9{% endblock %}">
{% include "kfet/base_messages.html" %}
<div class="content-right">
{% block main-content %}{% endblock %}
</div>
</div>
</div>
{% endblock %}

View file

@ -1,17 +1,10 @@
{% load kfet_tags %}
<div class="row">
<div class="col-sm-12 col-md-8 col-md-offset-2 nopadding">
{% include "kfet/base_messages.html" %}
<div class="content-center content-form">
<form action="" method="post" class="form-horizontal">
{% csrf_token %}
{% include "kfet/form_snippet.html" %}
{% if not authz %}
{% include "kfet/form_authentication_snippet.html" %}
{% endif %}
{% include "kfet/form_submit_snippet.html" with value=submit_text %}
</form>
</div>
</div>
</div>
<form action="" method="post" class="form-horizontal">
{% csrf_token %}
{% include "kfet/form_snippet.html" %}
{% if not authz %}
{% include "kfet/form_authentication_snippet.html" %}
{% endif %}
{% include "kfet/form_submit_snippet.html" with value=submit_text %}
</form>

View file

@ -1,52 +1,46 @@
{% extends 'kfet/base.html' %}
{% extends "kfet/base_col_2.html" %}
{% block title %}Categories d'articles{% endblock %}
{% block content-header-title %}Categories d'articles{% endblock %}
{% block header-title %}Categories d'articles{% endblock %}
{% block content %}
{% block fixed-content %}
<div class="row">
<div class="col-sm-4 col-md-3 col-content-left">
<div class="content-left">
<div class="content-left-top">
<div class="line line-big">{{ categories|length }}</div>
<div class="line line-bigsub">catégorie{{ categories|length|pluralize }}</div>
</div>
</div>
</div>
<div class="col-sm-8 col-md-9 col-content-right">
{% include 'kfet/base_messages.html' %}
<div class="content-right">
<div class="content-right-block">
<h2>Liste des catégories</h2>
<div class="table-responsive">
<table class="table table-condensed">
<thead>
<tr>
<td></td>
<td>Nom</td>
<td class="text-right">Nombre d'articles</td>
<td class="text-right">Peut être majorée</td>
</tr>
</thead>
<tbody>
{% for category in categories %}
<tr>
<td class="text-center">
<a href="{% url 'kfet.category.update' category.pk %}">
<span class="glyphicon glyphicon-cog"></span>
</a>
</td>
<td>{{ category.name }}</td>
<td class="text-right">{{ category.articles.all|length }}</td>
<td class="text-right">{{ category.has_addcost | yesno:"Oui,Non"}}</td>
</tr>
{% endfor %}
</tbody>
</table>
</div>
</div>
</div>
<div class="content-left-top">
<div class="line line-big">{{ categories|length }}</div>
<div class="line line-bigsub">catégorie{{ categories|length|pluralize }}</div>
</div>
{% endblock %}
{% block main-content %}
<div class="content-right-block">
<h2>Liste des catégories</h2>
<div class="table-responsive">
<table class="table table-condensed">
<thead>
<tr>
<td></td>
<td>Nom</td>
<td class="text-right">Nombre d'articles</td>
<td class="text-right">Peut être majorée</td>
</tr>
</thead>
<tbody>
{% for category in categories %}
<tr>
<td class="text-center">
<a href="{% url 'kfet.category.update' category.pk %}">
<span class="glyphicon glyphicon-cog"></span>
</a>
</td>
<td>{{ category.name }}</td>
<td class="text-right">{{ category.articles.all|length }}</td>
<td class="text-right">{{ category.has_addcost | yesno:"Oui,Non"}}</td>
</tr>
{% endfor %}
</tbody>
</table>
</div>
</div>

View file

@ -1,9 +1,11 @@
{% extends 'kfet/base.html' %}
{% extends "kfet/base_col_1.html" %}
{% block title %}Édition de la catégorie {{ category.name }}{% endblock %}
{% block content-header-title %}Catégorie {{ category.name }} - Édition{% endblock %}
{% block title %}{{ articlecategory.name }} - Édition{% endblock %}
{% block header-title %}Édition de la catégorie {{ articlecategory.name }}{% endblock %}
{% block content %}
{% block main-class %}content-form{% endblock %}
{% block main-content %}
{% include "kfet/base_form.html" with authz=perms.kfet.edit_articlecategory submit_text="Enregistrer"%}

View file

@ -1,59 +1,53 @@
{% extends "kfet/base.html" %}
{% extends "kfet/base_col_2.html" %}
{% block title %}Liste des caisses{% endblock %}
{% block content-header-title %}Caisses{% endblock %}
{% block title %}Caisses{% endblock %}
{% block header-title %}Caisses{% endblock %}
{% block content %}
{% block fixed-content %}
<div class="row">
<div class="col-sm-4 col-md-3 col-content-left">
<div class="content-left">
<div class="content-left-top text-center">
<div class="line line-big">{{ checkouts|length }}</div>
<div class="line line-bigsub">caisse{{ checkouts|length|pluralize }}</div>
</div>
<div class="buttons">
<a class="btn btn-primary btn-lg" href="{% url 'kfet.checkout.create' %}">Créer une caisse</a>
</div>
</div>
</div>
<div class="col-sm-8 col-md-9 col-content-right">
{% include 'kfet/base_messages.html' %}
<div class="content-right">
<div class="content-right-block">
<h2>Liste des caisses</h2>
<div class="table-responsive">
<table class="table table-condensed">
<thead>
<tr>
<td></td>
<td>Nom</td>
<td class="text-right">Balance</td>
<td class="text-right">Déb. valid.</td>
<td class="text-right">Fin valid.</td>
<td class="text-right">Protégée</td>
</tr>
</thead>
<tbody>
{% for checkout in checkouts %}
<tr>
<td>
<a href="{% url 'kfet.checkout.read' checkout.pk %}">
<span class="glyphicon glyphicon-cog"></span>
</a>
</td>
<td>{{ checkout.name }}</td>
<td class="text-right">{{ checkout.balance}}€</td>
<td class="text-right">{{ checkout.valid_from }}</td>
<td class="text-right">{{ checkout.valid_to }}</td>
<td class="text-right">{{ checkout.is_protected }}</td>
</tr>
{% endfor %}
</tbody>
</table>
</div>
</div>
</div>
<div class="content-left-top text-center">
<div class="line line-big">{{ checkouts|length }}</div>
<div class="line line-bigsub">caisse{{ checkouts|length|pluralize }}</div>
</div>
<div class="buttons">
<a class="btn btn-primary btn-lg" href="{% url 'kfet.checkout.create' %}">Créer une caisse</a>
</div>
{% endblock %}
{% block main-content %}
<div class="content-right-block">
<h2>Liste des caisses</h2>
<div class="table-responsive">
<table class="table table-condensed">
<thead>
<tr>
<td></td>
<td>Nom</td>
<td class="text-right">Balance</td>
<td class="text-right">Déb. valid.</td>
<td class="text-right">Fin valid.</td>
<td class="text-right">Protégée</td>
</tr>
</thead>
<tbody>
{% for checkout in checkouts %}
<tr>
<td>
<a href="{% url 'kfet.checkout.read' checkout.pk %}">
<span class="glyphicon glyphicon-cog"></span>
</a>
</td>
<td>{{ checkout.name }}</td>
<td class="text-right">{{ checkout.balance}}€</td>
<td class="text-right">{{ checkout.valid_from }}</td>
<td class="text-right">{{ checkout.valid_to }}</td>
<td class="text-right">{{ checkout.is_protected }}</td>
</tr>
{% endfor %}
</tbody>
</table>
</div>
</div>

View file

@ -1,28 +1,13 @@
{% extends "kfet/base.html" %}
{% extends "kfet/base_col_1.html" %}
{% block extra_head %}{{ form.media }}{% endblock %}
{% block title %}Nouvelle caisse{% endblock %}
{% block content-header-title %}Création d'une caisse{% endblock %}
{% block header-title %}Création d'une caisse{% endblock %}
{% block content %}
{% block main-class %}content-form{% endblock %}
{% block main-content %}
{% include 'kfet/base_messages.html' %}
<form action="" method="post">
{% csrf_token %}
{{ form.non_field_errors}}
{% for field in form %}
{{ field.errors }}
{{ field.label_tag }}
<div style="position:relative">{{ field }}</div>
{% if field.help_text %}
<p class="help">{{ field.help_text|safe }}</p>
{% endif %}
{% endfor %}
{% if not perms.kfet.add_checkout %}
<input type="password" name="KFETPASSWORD">
{% endif %}
<input type="submit" value="Enregistrer">
</form>
{% include "kfet/base_form.html" with authz=perms.kfet.add_checkout submit_text="Enregistrer" %}
<script type="text/javascript">

View file

@ -1,50 +1,41 @@
{% extends 'kfet/base.html' %}
{% extends "kfet/base_col_2.html" %}
{% block title %}Informations sur la caisse {{ checkout.name }}{% endblock %}
{% block content-header-title %}Caisse - {{ checkout.name }}{% endblock %}
{% block title %}Caisse - {{ checkout.name }}{% endblock %}
{% block header-title %}Informations sur la caisse {{ checkout.name }}{% endblock %}
{% block content %}
{% block fixed-content %}
{% include 'kfet/left_checkout.html' %}
{% endblock %}
<div class="row">
<div class="col-sm-4 col-md-3 col-content-left">
<div class="content-left">
{% include 'kfet/left_checkout.html' %}
</div>
</div>
<div class="col-sm-8 col-md-9 col-content-right">
{% include "kfet/base_messages.html" %}
<div class="content-right">
<div class="content-right-block">
<h2>Relevés</h2>
<div>
{% if not statements %}
Pas de relevé
{% else %}
<table class="table">
<thead>
<tr>
<td></td>
<td>Date/heure</td>
<td>Montant pris</td>
<td>Montant laissé</td>
<td>Erreur</td>
</thead>
<tbody>
{% for statement in statements %}
<tr>
<td><a href="{% url 'kfet.checkoutstatement.update' checkout.pk statement.pk %}"><span class="glyphicon glyphicon-cog"></span></a></td>
<td>{{ statement.at }}</td>
<td>{{ statement.amount_taken }}</td>
<td>{{ statement.balance_new }}</td>
<td>{{ statement.amount_error }}</td>
</tr>
{% endfor %}
</tbody>
</table>
{% endif %}
</div>
</div>
</div>
{% block main-content %}
<div class="content-right-block">
<h2>Relevés</h2>
<div class="table-responsive">
{% if not statements %}
Pas de relevé
{% else %}
<table class="table">
<thead>
<tr>
<td></td>
<td>Date/heure</td>
<td>Montant pris</td>
<td>Montant laissé</td>
<td>Erreur</td>
</thead>
<tbody>
{% for statement in statements %}
<tr>
<td><a href="{% url 'kfet.checkoutstatement.update' checkout.pk statement.pk %}"><span class="glyphicon glyphicon-cog"></span></a></td>
<td>{{ statement.at }}</td>
<td>{{ statement.amount_taken }}</td>
<td>{{ statement.balance_new }}</td>
<td>{{ statement.amount_error }}</td>
</tr>
{% endfor %}
</tbody>
</table>
{% endif %}
</div>
</div>

View file

@ -1,39 +1,18 @@
{% extends 'kfet/base.html' %}
{% extends "kfet/base_col_2.html" %}
{% block extra_head %}{{ form.media }}{% endblock %}
{% block title %}Édition de la caisse {{ checkout.name }}{% endblock %}
{% block content-header-title %}Caisse {{ checkout.name }} - Édition{% endblock %}
{% block title %}Caisse {{ checkout.name }} - Édition{% endblock %}
{% block header-title %}Édition de la caisse {{ checkout.name }}{% endblock %}
{% block content %}
{% block fixed-content %}
{% include "kfet/left_checkout.html" %}
{% endblock %}
<div class="row">
<div class="col-sm-4 col-md-3 col-content-left">
<div class="content-left">
{% include 'kfet/left_checkout.html' %}
</div>
</div>
<div class="col-sm-8 col-md-9 col-content-right">
{% include 'kfet/base_messages.html' %}
<div class="content-right">
<div class="content-right-block">
<form action="" method="post">
{% csrf_token %}
{{ form.non_field_errors }}
{% for field in form %}
{{ field.errors }}
{{ field.label_tag }}
<div style="position:relative">{{ field }}</div>
{% if field.help_text %}
<p class="help">{{ field.help_text|safe }}</p>
{% endif %}
{% endfor %}
{% if not perms.kfet.add_checkout %}
<input type="password" name="KFETPASSWORD">
{% endif %}
<input type=submit value="Mettre à jour">
</form>
</div>
</div>
{% block main-content %}
<div class="content-right-block">
<div style="padding: 15px;">
{% include "kfet/base_form.html" with authz=perms.kfet.change_checkout submit_text="Mettre à jour" %}
</div>
</div>

View file

@ -1,139 +1,188 @@
{% extends "kfet/base.html" %}
{% extends "kfet/base_col_2.html" %}
{% load l10n %}
{% load widget_tweaks %}
{% block title %}Nouveau relevé{% endblock %}
{% block content-header-title %}Caisse {{ checkout.name }} - Nouveau relevé{% endblock %}
{% block title %}Nouveau relevé - {{ checkout.name }}{% endblock %}
{% block header-title %}Création d'un relevé pour la caisse {{ checkout.name }}{% endblock %}
{% block content %}
{% block fixed-content %}
{% include "kfet/left_checkout.html" %}
{% endblock %}
<div class="row">
<div class="col-sm-4 col-md-3 col-content-left">
<div class="content-left">
{% include 'kfet/left_checkout.html' %}
{% block main-content %}
<form action="" method="post">
{% csrf_token %}
<div class="content-right-block">
<h2>Général</h2>
<div class="content-form statement-create-summary">
<table>
<tr>
<td>
<label for="{{ form.not_count.id_for_label }}" class="control-label">{{ form.not_count.label }}</label>
</td>
<td>{{ form.not_count }}</td>
</tr>
<tr>
<td>Ancienne balance</td>
<td>
<span id="balance_old">{{ checkout.balance|unlocalize }}</span>
</td>
</tr>
<tr>
<td>Nouvelle balance</td>
<td><span id="balance_new">0</span></td>
</tr>
<tr>
<td>Pris</td>
<td><span id="amount_taken">0</span></td>
</tr>
<tr>
<td>Erreur</td>
<td><span id="amount_error">0</span></td>
</tr>
</table>
{% if not perms.kfet.add_checkoutstatement %}
{% include "kfet/form_authentication_snippet.html" %}
{% endif %}
<br>
<div class="row text-center">
<input type="submit" value="Enregistrer" class="btn btn-lg btn-primary">
</div>
</div>
</div>
<div class="col-sm-8 col-md-9 col-content-right">
{% include "kfet/base_messages.html" %}
<div class="content-right">
<form action="" method="post">
{% csrf_token %}
<div class="content-right-block">
<h2>Général</h2>
<div>
<label>
Ne pas compter la caisse
{{ form.not_count }}
</label><br>
Ancienne balance : <span id="balance_old">{{ checkout.balance|unlocalize }}</span><br>
Nouvelle balance : <span id="balance_new">0</span><br>
Pris : <span id="amount_taken">0</span><br>
Erreur : <span id="amount_error">0</span><br>
{% if not perms.kfet.add_checkoutstatement %}
<label for="password">Mot de passe:</label>
<input type="password" id="password" name="KFETPASSWORD">
{% endif %}
<input type="submit" value="Enregistrer">
</div>
</div>
<div class="content-right-block">
<h2>Pris</h2>
<div id="detail_taken">
<table class="table table-bordered">
<tr style="font-weight:bold;">
<td>5€</td>
<td>10€</td>
<td>20€</td>
<td>50€</td>
<td>100€</td>
<td>200€</td>
<td>500€</td>
<tr>
<tr>
<td><input id="id_taken_5" name="taken_5" data-value="5" min="0" value="0" type="number" class="form-control" required></td>
<td><input id="id_taken_10" name="taken_10" data-value="10" min="0" value="0" type="number" class="form-control" required></td>
<td><input id="id_taken_20" name="taken_20" data-value="20" min="0" value="0" type="number" class="form-control" required></td>
<td><input id="id_taken_50" name="taken_50" data-value="50" min="0" value="0" type="number" class="form-control" required></td>
<td><input id="id_taken_100" name="taken_100" data-value="100" min="0" value="0" type="number" class="form-control" required></td>
<td><input id="id_taken_200" name="taken_200" data-value="200" min="0" value="0" type="number" class="form-control" required></td>
<td><input id="id_taken_500" name="taken_500" data-value="500" min="0" value="0" type="number" class="form-control" required></td>
</tr>
</table>
<table class="table table-bordered">
<tr style="font-weight:bold;">
<td>2€</td>
<td>1€</td>
<td>0.50€</td>
<td>0.20€</td>
<td>0.10€</td>
<td>0.05€</td>
<td>0.02€</td>
<td>0.01€</td>
<tr>
<tr>
<td><input id="id_taken_2" name="taken_2" data-value="2" min="0" value="0" type="number" class="form-control" required></td>
<td><input id="id_taken_1" name="taken_1" data-value="1" min="0" value="0" type="number" class="form-control" required></td>
<td><input id="id_taken_05" name="taken_05" data-value="0.5" min="0" value="0" type="number" class="form-control" required></td>
<td><input id="id_taken_02" name="taken_02" data-value="0.2" min="0" value="0" type="number" class="form-control" required></td>
<td><input id="id_taken_01" name="taken_01" data-value="0.1" min="0" value="0" type="number" class="form-control" required></td>
<td><input id="id_taken_005" name="taken_005" data-value="0.05" min="0" value="0" type="number" class="form-control" required></td>
<td><input id="id_taken_002" name="taken_002" data-value="0.02" min="0" value="0" type="number" class="form-control" required></td>
<td><input id="id_taken_001" name="taken_001" data-value="0.01" min="0" value="0" type="number" class="form-control" required></td>
</tr>
</table>
<p style="font-weight:bold"> Chèque:</p> <input id="id_taken_cheque" name="taken_cheque" data-value="1" min="0" step="0.01" value="0" type="number" class="form-control" required>
</div>
</div>
<div class="content-right-block">
<h2>En caisse</h2>
<div id="detail_balance">
<table class="table table-bordered">
<tr style="font-weight:bold;">
<td>5€</td>
<td>10€</td>
<td>20€</td>
<td>50€</td>
<td>100€</td>
<td>200€</td>
<td>500€</td>
<tr>
<tr>
<td><input id="id_balance_5" name="balance_5" data-value="5" min="0" value="0" type="number" class="form-control" required></td>
<td><input id="id_balance_10" name="balance_10" data-value="10" min="0" value="0" type="number" class="form-control" required></td>
<td><input id="id_balance_20" name="balance_20" data-value="20" min="0" value="0" type="number" class="form-control" required></td>
<td><input id="id_balance_50" name="balance_50" data-value="50" min="0" value="0" type="number" class="form-control" required></td>
<td><input id="id_balance_100" name="balance_100" data-value="100" min="0" value="0" type="number" class="form-control" required></td>
<td><input id="id_balance_200" name="balance_200" data-value="200" min="0" value="0" type="number" class="form-control" required></td>
<td><input id="id_balance_500" name="balance_500" data-value="500" min="0" value="0" type="number" class="form-control" required></td>
</tr>
</table>
<table class="table table-bordered">
<tr style="font-weight:bold;">
<td>2€</td>
<td>1€</td>
<td>0.50€</td>
<td>0.20€</td>
<td>0.10€</td>
<td>0.05€</td>
<td>0.02€</td>
<td>0.01€</td>
<tr>
<tr>
<td><input id="id_balance_2" name="balance_2" data-value="2" min="0" value="0" type="number" class="form-control" required></td>
<td><input id="id_balance_1" name="balance_1" data-value="1" min="0" value="0" type="number" class="form-control" required></td>
<td><input id="id_balance_05" name="balance_05" data-value="0.5" min="0" value="0" type="number" class="form-control" required></td>
<td><input id="id_balance_02" name="balance_02" data-value="0.2" min="0" value="0" type="number" class="form-control" required></td>
<td><input id="id_balance_01" name="balance_01" data-value="0.1" min="0" value="0" type="number" class="form-control" required></td>
<td><input id="id_balance_005" name="balance_005" data-value="0.05" min="0" value="0" type="number" class="form-control" required></td>
<td><input id="id_balance_002" name="balance_002" data-value="0.02" min="0" value="0" type="number" class="form-control" required></td>
<td><input id="id_balance_001" name="balance_001" data-value="0.01" min="0" value="0" type="number" class="form-control" required></td>
</tr>
</table>
</div>
</div>
</form>
<div class="content-right-block">
<h2>Pris</h2>
<div id="detail_taken">
<div class="table-responsive">
<table class="table table-condensed">
<thead>
<tr>
<td>5€</td>
<td>10€</td>
<td>20€</td>
<td>50€</td>
<td>100€</td>
<td>200€</td>
<td>500€</td>
</tr>
</thead>
<tbody>
<tr>
<td><input id="id_taken_5" name="taken_5" data-value="5" min="0" value="0" type="number" class="form-control" required></td>
<td><input id="id_taken_10" name="taken_10" data-value="10" min="0" value="0" type="number" class="form-control" required></td>
<td><input id="id_taken_20" name="taken_20" data-value="20" min="0" value="0" type="number" class="form-control" required></td>
<td><input id="id_taken_50" name="taken_50" data-value="50" min="0" value="0" type="number" class="form-control" required></td>
<td><input id="id_taken_100" name="taken_100" data-value="100" min="0" value="0" type="number" class="form-control" required></td>
<td><input id="id_taken_200" name="taken_200" data-value="200" min="0" value="0" type="number" class="form-control" required></td>
<td><input id="id_taken_500" name="taken_500" data-value="500" min="0" value="0" type="number" class="form-control" required></td>
</tr>
</tbody>
</table>
</div>
<div class="table-responsive">
<table class="table table-condensed">
<thead>
<tr>
<td>2€</td>
<td>1€</td>
<td>0.50€</td>
<td>0.20€</td>
<td>0.10€</td>
<td>0.05€</td>
<td>0.02€</td>
<td>0.01€</td>
</tr>
</thead>
<tbody>
<tr>
<td><input id="id_taken_2" name="taken_2" data-value="2" min="0" value="0" type="number" class="form-control" required></td>
<td><input id="id_taken_1" name="taken_1" data-value="1" min="0" value="0" type="number" class="form-control" required></td>
<td><input id="id_taken_05" name="taken_05" data-value="0.5" min="0" value="0" type="number" class="form-control" required></td>
<td><input id="id_taken_02" name="taken_02" data-value="0.2" min="0" value="0" type="number" class="form-control" required></td>
<td><input id="id_taken_01" name="taken_01" data-value="0.1" min="0" value="0" type="number" class="form-control" required></td>
<td><input id="id_taken_005" name="taken_005" data-value="0.05" min="0" value="0" type="number" class="form-control" required></td>
<td><input id="id_taken_002" name="taken_002" data-value="0.02" min="0" value="0" type="number" class="form-control" required></td>
<td><input id="id_taken_001" name="taken_001" data-value="0.01" min="0" value="0" type="number" class="form-control" required></td>
</tr>
</tbody>
</table>
</div>
<div class="table-responsive">
<table class="table table-condensed">
<thead>
<tr><td>Chèques</td></tr>
</thead>
<tbody>
<tr>
<td>
<input id="id_taken_cheque" name="taken_cheque" data-value="1" min="0" step="0.01" value="0" type="number" class="form-control" required>
</td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
</div>
<div class="content-right-block">
<h2>En caisse</h2>
<div id="detail_balance">
<div class="table-responsive">
<table class="table table-condensed">
<thead>
<tr>
<td>5€</td>
<td>10€</td>
<td>20€</td>
<td>50€</td>
<td>100€</td>
<td>200€</td>
<td>500€</td>
</tr>
</thead>
<tbody>
<tr>
<td><input id="id_balance_5" name="balance_5" data-value="5" min="0" value="0" type="number" class="form-control" required></td>
<td><input id="id_balance_10" name="balance_10" data-value="10" min="0" value="0" type="number" class="form-control" required></td>
<td><input id="id_balance_20" name="balance_20" data-value="20" min="0" value="0" type="number" class="form-control" required></td>
<td><input id="id_balance_50" name="balance_50" data-value="50" min="0" value="0" type="number" class="form-control" required></td>
<td><input id="id_balance_100" name="balance_100" data-value="100" min="0" value="0" type="number" class="form-control" required></td>
<td><input id="id_balance_200" name="balance_200" data-value="200" min="0" value="0" type="number" class="form-control" required></td>
<td><input id="id_balance_500" name="balance_500" data-value="500" min="0" value="0" type="number" class="form-control" required></td>
</tr>
</tbody>
</table>
</div>
<div class="table-responsive">
<table class="table table-condensed">
<thead>
<tr>
<td>2€</td>
<td>1€</td>
<td>0.50€</td>
<td>0.20€</td>
<td>0.10€</td>
<td>0.05€</td>
<td>0.02€</td>
<td>0.01€</td>
</tr>
</thead>
<tbody>
<tr>
<td><input id="id_balance_2" name="balance_2" data-value="2" min="0" value="0" type="number" class="form-control" required></td>
<td><input id="id_balance_1" name="balance_1" data-value="1" min="0" value="0" type="number" class="form-control" required></td>
<td><input id="id_balance_05" name="balance_05" data-value="0.5" min="0" value="0" type="number" class="form-control" required></td>
<td><input id="id_balance_02" name="balance_02" data-value="0.2" min="0" value="0" type="number" class="form-control" required></td>
<td><input id="id_balance_01" name="balance_01" data-value="0.1" min="0" value="0" type="number" class="form-control" required></td>
<td><input id="id_balance_005" name="balance_005" data-value="0.05" min="0" value="0" type="number" class="form-control" required></td>
<td><input id="id_balance_002" name="balance_002" data-value="0.02" min="0" value="0" type="number" class="form-control" required></td>
<td><input id="id_balance_001" name="balance_001" data-value="0.01" min="0" value="0" type="number" class="form-control" required></td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
</form>
<script type="text/javascript">
$(document).ready(function() {

View file

@ -1,11 +1,14 @@
{% extends 'kfet/base.html' %}
{% extends "kfet/base_col_1.html" %}
{% block title %}Modification d'un relevé{% endblock %}
{% block content-header-title %}
Caisse {{ checkout.name }} - Modification relevé {{ checkoutstatement.at }}
{% block header-title %}
Caisse {{ checkout.name }}<br>
Modification du relevé {{ checkoutstatement.at }}
{% endblock %}
{% block content %}
{% block main-class %}content-form{% endblock %}
{% block main-content %}
{% include "kfet/base_form.html" with authz=perms.kfet.change_checkoutstatement submit_text="Enregistrer"%}

View file

@ -5,13 +5,13 @@
<div class="col-sm-10">
{% if field|widget_type == "checkboxselectmultiple" %}
<ul class="list-unstyled checkbox-select-multiple">
{% for choice in form.permissions %}
<li class="col-sm-6 col-lg-4">
<label for="{{ choice.id_for_label }}">
{{ choice.tag }} {{ choice.choice_label }}
</label>
</li>
{% endfor %}
{% for choice in form.permissions %}
<li class="col-sm-6 col-lg-4">
<label for="{{ choice.id_for_label }}">
{{ choice.tag }} {{ choice.choice_label }}
</label>
</li>
{% endfor %}
</ul>
{% else %}
{{ field|add_class:'form-control' }}

View file

@ -1,61 +1,57 @@
{% extends "kfet/base.html" %}
{% extends "kfet/base_col_1.html" %}
{% load staticfiles %}
{% load kfet_tags %}
{% block title %}Accueil{% endblock %}
{% block content-header %}{% endblock %}
{% block header %}{% endblock %}
{% block extra_head %}
<link rel="stylesheet" type="text/css" href="{% static 'kfet/css/home.css' %}">
{% endblock %}
{% block content %}
{% block main-size %}col-md-10 col-md-offset-1{% endblock %}
<div class="row">
<div class="col-sm-12 col-md-10 col-md-offset-1 nopadding">
{% include 'kfet/base_messages.html' %}
<div class="content-center">
<div class="content-right-block">
<h2>Carte</h2>
<div class="column-row">
<div class="column-sm-1 column-md-2 column-lg-3">
<div class="unbreakable carte-inverted">
{% if pressions %}
<h3>Pressions du moment</h3>
<ul class="carte">
{% for article in pressions %}
<li class="carte-line">
<div class="filler"></div>
<span class="carte-label">{{ article.name }}</span>
<span class="carte-ukf">{{ article.price | ukf:False}} UKF</span>
</li>
{% endfor %}
</ul>
{% endif %}
</div><!-- endblock unbreakable -->
{% for article in articles %}
{% ifchanged article.category %}
{% if not forloop.first %}
</ul>
</div><!-- endblock unbreakable -->
{% endif %}
<div class="unbreakable">
<h3>{{ article.category.name }}</h3>
<ul class="carte">
{% endifchanged %}
<li class="carte-line">
<div class="filler"></div>
<span class="carte-label">{{ article.name }}</span>
<span class="carte-ukf">{{ article.price | ukf:False}} UKF</span>
</li>
{% if forloop.last %}
</ul>
</div><!-- endblock unbreakable -->
{% endif %}
{% endfor %}
</div>
</div>
{% block main-content %}
<div class="content-right-block">
<h2>Carte</h2>
<div class="column-row">
<div class="column-sm-1 column-md-2 column-lg-3">
<div class="unbreakable carte-inverted">
{% if pressions %}
<h3>Pressions du moment</h3>
<ul class="carte">
{% for article in pressions %}
<li class="carte-line">
<div class="filler"></div>
<span class="carte-label">{{ article.name }}</span>
<span class="carte-ukf">{{ article.price | ukf:False}} UKF</span>
</li>
{% endfor %}
</ul>
{% endif %}
</div><!-- endblock unbreakable -->
{% for article in articles %}
{% ifchanged article.category %}
{% if not forloop.first %}
</ul>
</div><!-- endblock unbreakable -->
{% endif %}
<div class="unbreakable">
<h3>{{ article.category.name }}</h3>
<ul class="carte">
{% endifchanged %}
<li class="carte-line">
<div class="filler"></div>
<span class="carte-label">{{ article.name }}</span>
<span class="carte-ukf">{{ article.price | ukf:False}} UKF</span>
</li>
{% if forloop.last %}
</ul>
</div><!-- endblock unbreakable -->
{% endif %}
{% endfor %}
</div>
</div>
</div>
</div>

View file

@ -1,63 +1,55 @@
{% extends 'kfet/base.html' %}
{% extends "kfet/base_col_2.html" %}
{% block title %}Inventaires{% endblock %}
{% block content-header-title %}Inventaires{% endblock %}
{% block header-title %}Inventaires{% endblock %}
{% block content %}
{% block fixed-content %}
<div class="row">
<div class="col-sm-4 col-md-3 col-content-left">
<div class="content-left">
<div class="content-left-top">
</div>
<div class="buttons">
<a href="{% url 'kfet.inventory.create' %}" class="btn btn-primary btn-lg">
Nouveau
</a>
</div>
</div>
</div>
<div class="col-sm-8 col-md-9 col-content-right">
{% include 'kfet/base_messages.html' %}
<div class="content-right">
<div class="content-right-block">
<h2>Liste des inventaires</h2>
<div class="table-responsive">
<table class="table table-condensed">
<thead class="thead-default">
<tr>
<td></td>
<td>Date</td>
<td>Par</td>
<td>Nb articles</td>
<td>Commande</td>
</tr>
</thead>
<tbody>
{% for inventory in inventories %}
<tr>
<td class="text-center">
<a href="{% url 'kfet.inventory.read' inventory.pk %}">
<span class="glyphicon glyphicon-cog"></span>
</a>
</td>
<td>{{ inventory.at }}</td>
<td>{{ inventory.by.trigramme }}</td>
<td>{{ inventory.nb_articles }}</td>
<td>
{% if inventory.order %}
<a href="{% url 'kfet.order.read' inventory.order.pk %}">
#{{ inventory.order.pk }}
</a>
{% endif %}
</td>
</tr>
{% endfor %}
</tbody>
</table>
</div>
</div>
</div>
<div class="buttons">
<a href="{% url 'kfet.inventory.create' %}" class="btn btn-primary btn-lg">
Nouveau
</a>
</div>
{% endblock %}
{% block main-content %}
<div class="content-right-block">
<h2>Liste des inventaires</h2>
<div class="table-responsive">
<table class="table table-condensed">
<thead>
<tr>
<td></td>
<td>Date</td>
<td>Par</td>
<td>Nb articles</td>
<td>Commande</td>
</tr>
</thead>
<tbody>
{% for inventory in inventories %}
<tr>
<td class="text-center">
<a href="{% url 'kfet.inventory.read' inventory.pk %}">
<span class="glyphicon glyphicon-cog"></span>
</a>
</td>
<td>{{ inventory.at }}</td>
<td>{{ inventory.by.trigramme }}</td>
<td>{{ inventory.nb_articles }}</td>
<td>
{% if inventory.order %}
<a href="{% url 'kfet.order.read' inventory.order.pk %}">
#{{ inventory.order.pk }}
</a>
{% endif %}
</td>
</tr>
{% endfor %}
</tbody>
</table>
</div>
</div>

View file

@ -1,4 +1,4 @@
{% extends 'kfet/base.html' %}
{% extends "kfet/base_col_1.html" %}
{% load staticfiles %}
{% load widget_tweaks %}
@ -8,89 +8,83 @@
{% endblock %}
{% block title %}Nouvel inventaire{% endblock %}
{% block content-header-title %}Nouvel inventaire{% endblock %}
{% block header-title %}Création d'un inventaire{% endblock %}
{% block content %}
{% block main-size %}col-md-10 col-md-offset-1 col-lg-8 col-lg-offset-2{% endblock %}
<div class="row">
<div class="col-sm-12 col-md-10 col-md-offset-1 col-lg-8 col-lg-offset-2 nopadding">
{% include 'kfet/base_messages.html' %}
<div class="content-center">
<form id='inventoryform' action="" method="post">
<div class="table-responsive">
<table class="table table-condensed text-center">
<thead>
<tr>
<td>Article</td>
<td>Quantité par caisse</td>
<td>Stock théorique</td>
<td>Caisses en réserve</td>
<td>Caisses en arrière</td>
<td>Vrac</td>
<td>Stock total</td>
<td>Compte terminé</td>
</tr>
</thead>
<tbody>
{% for form in formset %}
{% ifchanged form.category %}
<tr class='section'>
<td>{{ form.category_name }}</td>
<td colspan="7"></td>
</tr>
{% endifchanged %}
<tr>
{{ form.article }}
<td class='name'>{{ form.name }}</td>
<td class='box_capacity'>{{ form.box_capacity }}</td>
<td>
<span class='current_stock'>{{ form.stock_old }}</span><span class='stock_diff'></span>
</td>
<td class='box_cellar nopadding'>
<input type='number' class='form-control' step='1'>
</td>
<td class='box_bar nopadding'>
<input type='number' class='form-control' step='1'>
</td>
<td class='misc nopadding'>
<input type='number' class='form-control' step='1'>
</td>
<td class='stock_new nopadding'>
{{ form.stock_new | attr:"readonly"| add_class:"form-control" }}
</td>
<td class='finished'>
<div class="inventory_update">
<button type='button' class='btn-sm btn-primary'>MàJ</button>
</div>
<div class="inventory_done">
<input type='checkbox' class='form_control'>
</div>
</td>
</tr>
{% endfor %}
<tr class="section">
<td>Totaux</td>
<td colspan="2"></td>
<td class="total_box_cellar"></td>
<td class="total_box_bar"></td>
<td colspan="3"></td>
</tr>
</tbody>
</table>
</div>
{{ formset.management_form }}
{% if not perms.kfet.add_inventory %}
<div class='auth-form form-horizontal'>
{% include "kfet/form_authentication_snippet.html" %}
</div>
{% endif %}
<input type="submit" value="Enregistrer" class="btn btn-primary btn-lg btn-block">
{% csrf_token %}
</form>
</div>
{% block main-content %}
<form id='inventoryform' action="" method="post">
<div class="table-responsive">
<table class="table table-condensed text-center">
<thead>
<tr>
<td>Article</td>
<td>Quantité par caisse</td>
<td>Stock théorique</td>
<td>Caisses en réserve</td>
<td>Caisses en arrière</td>
<td>Vrac</td>
<td>Stock total</td>
<td>Compte terminé</td>
</tr>
</thead>
<tbody>
{% for form in formset %}
{% ifchanged form.category %}
<tr class='section'>
<td>{{ form.category_name }}</td>
<td colspan="7"></td>
</tr>
{% endifchanged %}
<tr>
{{ form.article }}
<td class='name'>{{ form.name }}</td>
<td class='box_capacity'>{{ form.box_capacity }}</td>
<td>
<span class='current_stock'>{{ form.stock_old }}</span><span class='stock_diff'></span>
</td>
<td class='box_cellar nopadding'>
<input type='number' class='form-control' step='1'>
</td>
<td class='box_bar nopadding'>
<input type='number' class='form-control' step='1'>
</td>
<td class='misc nopadding'>
<input type='number' class='form-control' step='1'>
</td>
<td class='stock_new nopadding'>
{{ form.stock_new | attr:"readonly"| add_class:"form-control" }}
</td>
<td class='finished'>
<div class="inventory_update">
<button type='button' class='btn-sm btn-primary'>MàJ</button>
</div>
<div class="inventory_done">
<input type='checkbox' class='form_control'>
</div>
</td>
</tr>
{% endfor %}
<tr class="section">
<td>Totaux</td>
<td colspan="2"></td>
<td class="total_box_cellar"></td>
<td class="total_box_bar"></td>
<td colspan="3"></td>
</tr>
</tbody>
</table>
</div>
</div>
{{ formset.management_form }}
{% if not perms.kfet.add_inventory %}
<div class='auth-form form-horizontal'>
{% include "kfet/form_authentication_snippet.html" %}
</div>
{% endif %}
<input type="submit" value="Enregistrer" class="btn btn-primary btn-lg btn-block">
{% csrf_token %}
</form>
<script type="text/javascript">
function init_total(type) {

View file

@ -1,61 +1,55 @@
{% extends 'kfet/base.html' %}
{% extends "kfet/base_col_2.html" %}
{% block title %}Inventaire #{{ inventory.pk }}{% endblock %}
{% block content-header-title %}Inventaire #{{ inventory.pk }}{% endblock %}
{% block header-title %}Inventaire #{{ inventory.pk }}{% endblock %}
{% block content %}
{% block fixed-content %}
<div class="row">
<div class="col-sm-4 col-md-3 col-content-left">
<div class="content-left">
<div class="content-left-top">
<div class="line"><b>Date:</b> {{ inventory.at }}</div>
<div class="line"><b>Par:</b> {{ inventory.by.trigramme }}</div>
{% if inventory.order %}
<div class="line">
<b>Commande relative:</b>&nbsp;
<a href="{% url 'kfet.order.read' inventory.order.pk %}">
#{{ inventory.order.pk }}
</a>
</div>
{% endif %}
</div>
</div>
</div>
<div class="col-sm-8 col-md-9 col-content-right">
{% include 'kfet/base_messages.html' %}
<div class="content-right">
<div class="content-right-block">
<h2>Détails</h2>
<div class="table-responsive">
<table class="table table-condensed">
<thead>
<tr>
<td>Article</td>
<td>Stock avant</td>
<td>Stock après</td>
<td>Erreur</td>
</tr>
</thead>
<tbody>
{% for inventoryart in inventoryarts %}
{% ifchanged inventoryart.article.category %}
<tr class="section">
<td colspan="4">{{ inventoryart.article.category.name }}</td>
</tr>
{% endifchanged %}
<tr>
<td>{{ inventoryart.article.name }}</td>
<td>{{ inventoryart.stock_old }}</td>
<td>{{ inventoryart.stock_new }}</td>
<td>{{ inventoryart.stock_error }}</td>
</tr>
{% endfor %}
</tbody>
</table>
</div>
</div>
<div class="content-left-top">
<div class="line"><b>Date:</b> {{ inventory.at }}</div>
<div class="line"><b>Par:</b> {{ inventory.by.trigramme }}</div>
{% if inventory.order %}
<div class="line">
<b>Commande relative:</b>&nbsp;
<a href="{% url 'kfet.order.read' inventory.order.pk %}">
#{{ inventory.order.pk }}
</a>
</div>
{% endif %}
</div>
{% endblock %}
{% block main-content %}
<div class="content-right-block">
<h2>Détails</h2>
<div class="table-responsive">
<table class="table table-condensed">
<thead>
<tr>
<td>Article</td>
<td>Stock avant</td>
<td>Stock après</td>
<td>Erreur</td>
</tr>
</thead>
<tbody>
{% for inventoryart in inventoryarts %}
{% ifchanged inventoryart.article.category %}
<tr class="section">
<td colspan="4">{{ inventoryart.article.category.name }}</td>
</tr>
{% endifchanged %}
<tr>
<td>{{ inventoryart.article.name }}</td>
<td>{{ inventoryart.stock_old }}</td>
<td>{{ inventoryart.stock_new }}</td>
<td>{{ inventoryart.stock_error }}</td>
</tr>
{% endfor %}
</tbody>
</table>
</div>
</div>

View file

@ -17,7 +17,7 @@
{% block title %}K-Psul{% endblock %}
{% block content-header %}{% endblock %}
{% block header %}{% endblock %}
{% block help %}

View file

@ -1,105 +1,97 @@
{% extends 'kfet/base.html' %}
{% extends "kfet/base_col_2.html" %}
{% block title %}Commandes{% endblock %}
{% block content-header-title %}Commandes{% endblock %}
{% block header-title %}Commandes{% endblock %}
{% block content %}
{% block fixed-content %}
<div class="row">
<div class="col-sm-4 col-md-3 col-content-left">
<div class="content-left">
<div class="content-left-top">
<div class="line line-big">{{ orders|length }}</div>
<div class="line line-bigsub">commande{{ orders|length|pluralize }}</div>
</div>
<div class="buttons">
</div>
</div>
<div class="content-left-top">
<div class="line line-big">{{ orders|length }}</div>
<div class="line line-bigsub">commande{{ orders|length|pluralize }}</div>
</div>
{% endblock %}
{% block main-content %}
<div class="content-right-block">
<h2>Fournisseurs</h2>
<div class="table-responsive">
<table class="table table-condensed">
<thead>
<tr>
<td></td>
<td></td>
<td>Nom</td>
<td>Mail</td>
<td>Tél.</td>
<td>Adresse</td>
<td>Commentaire</td>
<tbody>
{% for supplier in suppliers %}
<tr>
<td class="no-padding">
<a href="{% url 'kfet.order.new' supplier.pk %}" class="btn btn-primary">
Passer une commande
</a>
</td>
<td class="text-center">
<a href="{% url 'kfet.order.supplier.update' supplier.pk %}">
<span class="glyphicon glyphicon-cog"></span>
</a>
</td>
<td>{{ supplier.name }}</td>
<td>{{ supplier.email }}</td>
<td>{{ supplier.phone }}</td>
<td>{{ supplier.address }}</td>
<td>{{ supplier.comment }}</td>
</tr>
{% endfor %}
</tbody>
</table>
</div>
<div class="col-sm-8 col-md-9 col-content-right">
{% include 'kfet/base_messages.html' %}
<div class="content-right">
<div class="content-right-block">
<h2>Fournisseurs</h2>
<div class="table-responsive">
<table class="table table-condensed">
<thead>
<tr>
<td></td>
<td></td>
<td>Nom</td>
<td>Mail</td>
<td>Tél.</td>
<td>Adresse</td>
<td>Commentaire</td>
<tbody>
{% for supplier in suppliers %}
<tr>
<td class="no-padding">
<a href="{% url 'kfet.order.new' supplier.pk %}" class="btn btn-primary">
Passer une commande
</a>
</td>
<td class="text-center">
<a href="{% url 'kfet.order.supplier.update' supplier.pk %}">
<span class="glyphicon glyphicon-cog"></span>
</a>
</td>
<td>{{ supplier.name }}</td>
<td>{{ supplier.email }}</td>
<td>{{ supplier.phone }}</td>
<td>{{ supplier.address }}</td>
<td>{{ supplier.comment }}</td>
</tr>
{% endfor %}
</tbody>
</table>
</div>
</div>
<div class="content-right-block">
<h2>Liste des commandes</h2>
<div class="table-responsive">
<table class="table table-condensed">
<thead>
<tr>
<td></td>
<td></td>
<td>Date</td>
<td>Fournisseur</td>
<td>Inventaire</td>
</tr>
</thead>
<tbody>
{% for order in orders %}
<tr>
<td class="no-padding">
{% if not order.inventory %}
<a href="{% url 'kfet.order.to_inventory' order.pk %}" class="btn btn-primary">
Générer inventaire
</a>
{% endif %}
</td>
<td>
<a href="{% url 'kfet.order.read' order.pk %}">
<span class="glyphicon glyphicon-cog"></span>
</a>
</td>
<td>{{ order.at }}</td>
<td>{{ order.supplier }}</td>
<td>
{% if order.inventory %}
<a href="{% url 'kfet.inventory.read' order.inventory.pk %}">
#{{ order.inventory.pk }}
</a>
{% endif %}
</td>
</tr>
{% endfor %}
</tbody>
</table>
</div>
</div>
</div>
</div>
<div class="content-right-block">
<h2>Liste des commandes</h2>
<div class="table-responsive">
<table class="table table-condensed">
<thead>
<tr>
<td></td>
<td></td>
<td>Date</td>
<td>Fournisseur</td>
<td>Inventaire</td>
</tr>
</thead>
<tbody>
{% for order in orders %}
<tr>
<td class="no-padding">
{% if not order.inventory %}
<a href="{% url 'kfet.order.to_inventory' order.pk %}" class="btn btn-primary">
Générer inventaire
</a>
{% endif %}
</td>
<td>
<a href="{% url 'kfet.order.read' order.pk %}">
<span class="glyphicon glyphicon-cog"></span>
</a>
</td>
<td>{{ order.at }}</td>
<td>{{ order.supplier }}</td>
<td>
{% if order.inventory %}
<a href="{% url 'kfet.inventory.read' order.inventory.pk %}">
#{{ order.inventory.pk }}
</a>
{% endif %}
</td>
</tr>
{% endfor %}
</tbody>
</table>
</div>
</div>

View file

@ -1,15 +1,13 @@
{% extends 'kfet/base.html' %}
{% extends "kfet/base_col_1.html" %}
{% load widget_tweaks %}
{% block title %}Nouvelle commande{% endblock %}
{% block content-header-title %}Nouvelle commande {{ supplier.name }}{% endblock %}
{% block header-title %}Création d'une commande {{ supplier.name }}{% endblock %}
{% block content %}
{% block main-size %}col-md-10 col-md-offset-1 col-lg-8 col-lg-offset-2{% endblock %}
{% block main-content %}
<div class="row">
<div class="col-sm-12 col-md-10 col-md-offset-1 col-lg-8 col-lg-offset-2 nopadding">
{% include "kfet/base_messages.html" %}
<div class="content-center">
<form action="" method="post">
{% csrf_token %}
<div class="table-responsive">
@ -77,9 +75,6 @@
{% endif %}
<input type="submit" value="Enregistrer" class="btn btn-primary btn-lg btn-block">
</form>
</div>
</div>
</div>
<script type='text/javascript'>
$(document).ready(function () {

View file

@ -1,66 +1,67 @@
{% extends 'kfet/base.html' %}
{% extends "kfet/base_col_2.html" %}
{% block title %}Commande #{{ order.pk }}{% endblock %}
{% block content-header-title %}Commande #{{ order.pk }}{% endblock %}
{% block header-title %}Commande #{{ order.pk }}{% endblock %}
{% block content %}
{% block fixed-content %}
<div class="row">
<div class="col-sm-4 col-md-3 col-content-left">
<div class="content-left">
<div class="content-left-top">
<div class="line"><b>Créée le:</b> {{ order.at }}</div>
<div class="line"><b>Fournisseur:</b> {{ order.supplier.name }}</div>
</div>
</div>
<div class="content-left-top">
<div class="line"><b>Créée le:</b> {{ order.at }}</div>
<div class="line"><b>Fournisseur:</b> {{ order.supplier.name }}</div>
</div>
<div class="buttons">
{% if not order.inventory %}
<a class="btn btn-primary btn-lg" href="{% url 'kfet.order.to_inventory' order.pk %}">
Générer inventaire
</a>
{% endif %}
</div>
{% endblock %}
{% block main-content %}
<div class="content-right-block">
<h2>Détails</h2>
<div class="table-responsive">
<table class="table table-condensed">
<thead>
<tr>
<td>Article</td>
<td>Commandé</td>
<td>Commandé (#box)</td>
<td>Reçu</td>
</tr>
</thead>
<tbody>
{% for orderart in orderarts %}
{% ifchanged orderart.article.category %}
<tr class="section">
<td colspan="4">{{ orderart.article.category.name }}</td>
</tr>
{% endifchanged %}
<tr>
<td>{{ orderart.article.name }}</td>
<td>{{ orderart.quantity_ordered }}</td>
<td>
{% if orderart.article.box_capacity %}
{# c'est une division ! #}
{% widthratio orderart.quantity_ordered orderart.article.box_capacity 1 %}
{% endif %}
</td>
<td>
{{ orderart.quantity_received|default_if_none:'' }}
</td>
</tr>
{% endfor %}
</tbody>
</table>
</div>
<div class="col-sm-8 col-md-9 col-content-right">
{% include 'kfet/base_messages.html' %}
<div class="content-right">
<div class="content-right-block">
<h2>Détails</h2>
<div class="table-responsive">
<table class="table table-condensed">
<thead>
<tr>
<td>Article</td>
<td>Commandé</td>
<td>Commandé (#box)</td>
<td>Reçu</td>
</tr>
</thead>
<tbody>
{% for orderart in orderarts %}
{% ifchanged orderart.article.category %}
<tr class="section">
<td colspan="4">{{ orderart.article.category.name }}</td>
</tr>
{% endifchanged %}
<tr>
<td>{{ orderart.article.name }}</td>
<td>{{ orderart.quantity_ordered }}</td>
<td>
{% if orderart.article.box_capacity %}
{# c'est une division ! #}
{% widthratio orderart.quantity_ordered orderart.article.box_capacity 1 %}
{% endif %}
</td>
<td>
{{ orderart.quantity_received|default_if_none:'' }}
</td>
</tr>
{% endfor %}
</tbody>
</table>
</div>
</div>
<div class="content-right-block">
<h2>Mail</h2>
<div>
<textarea class="form-control" style="height:500px;">{{ mail }}</textarea>
</div>
</div>
</div>
</div>
<div class="content-right-block">
<h2>Mail</h2>
<div>
<textarea class="form-control" style="height:500px;">{{ mail }}</textarea>
</div>
</div>

View file

@ -1,15 +1,13 @@
{% extends 'kfet/base.html' %}
{% extends "kfet/base_col_1.html" %}
{% load widget_tweaks %}
{% block title %}Nouvel inventaire{% endblock %}
{% block content-header-title %}Création d'inventaire depuis une commande{% endblock %}
{% block header-title %}Création d'inventaire depuis la commande #{{ order.pk }}{% endblock %}
{% block content %}
{% block main-size %}col-md-10 col-md-offset-1 col-lg-8 col-lg-offset-2{% endblock %}
{% block main-content %}
<div class="row">
<div class="col-sm-12 col-md-10 col-md-offset-1 col-lg-8 col-lg-offset-2 nopadding">
{% include "kfet/base_messages.html" %}
<div class="content-center">
<form action="" method="post">
{% csrf_token %}
<div class="table-responsive">
@ -52,8 +50,5 @@
{% endif %}
<input type="submit" value="Enregistrer" class="btn btn-primary btn-lg btn-block">
</form>
</div>
</div>
</div>
{% endblock %}

View file

@ -1,45 +1,39 @@
{% extends 'kfet/base.html' %}
{% extends "kfet/base_col_2.html" %}
{% block title %}Paramètres{% endblock %}
{% block content-header-title %}Paramètres{% endblock %}
{% block header-title %}Paramètres{% endblock %}
{% block content %}
{% block fixed-content %}
<div class="row">
<div class="col-sm-4 col-md-3 col-content-left">
<div class="content-left">
<div class="buttons">
<a class="btn btn-primary btn-lg" href="{% url 'kfet.settings.update' %}">
Modifier
</a>
</div>
</div>
</div>
<div class="col-sm-8 col-md-9 col-content-right">
{% include 'kfet/base_messages.html' %}
<div class="content-right">
<div class="content-right-block">
<h2>Valeurs</h2>
<div class="table-responsive">
<table class="table table-condensed">
<thead>
<tr>
<td>Nom</td>
<td>Valeur</td>
</tr>
</thead>
<tbody>
{% for key, value in kfet_config.list %}
<tr>
<td>{{ key }}</td>
<td>{{ value }}</td>
</tr>
{% endfor %}
</tbody>
</table>
</div>
</div>
</div>
<div class="buttons">
<a class="btn btn-primary btn-lg" href="{% url 'kfet.settings.update' %}">
Modifier
</a>
</div>
{% endblock %}
{% block main-content %}
<div class="content-right-block">
<h2>Valeurs</h2>
<div class="table-responsive">
<table class="table table-condensed">
<thead>
<tr>
<td>Nom</td>
<td>Valeur</td>
</tr>
</thead>
<tbody>
{% for key, value in kfet_config.list %}
<tr>
<td>{{ key }}</td>
<td>{{ value|default_if_none:"" }}</td>
</tr>
{% endfor %}
</tbody>
</table>
</div>
</div>

View file

@ -1,9 +1,11 @@
{% extends 'kfet/base.html' %}
{% extends "kfet/base_col_1.html" %}
{% block title %}Modification des paramètres{% endblock %}
{% block content-header-title %}Modification des paramètres{% endblock %}
{% block header-title %}Modification des paramètres{% endblock %}
{% block content %}
{% block main-class %}content-form{% endblock %}
{% block main-content %}
{% include "kfet/base_form.html" with authz=perms.kfet.change_settings submit_text="Mettre à jour"%}

View file

@ -1,9 +1,11 @@
{% extends 'kfet/base.html' %}
{% extends "kfet/base_col_1.html" %}
{% block title %}Fournisseur - Modification{% endblock %}
{% block content-header-title %}Fournisseur - Modification{% endblock %}
{% block title %}{{ supplier.name }} - Édition{% endblock %}
{% block header-title %}Édition du fournisseur {{ supplier.name }}{% endblock %}
{% block content %}
{% block main-class %}content-form{% endblock %}
{% block main-content %}
{% include 'kfet/base_form.html' with authz=perms.kfet.change_supplier submit_text="Mettre à jour" %}

View file

@ -1,4 +1,4 @@
{% extends 'kfet/base.html' %}
{% extends "kfet/base_col_1.html" %}
{% load staticfiles %}
{% block extra_head %}
@ -7,13 +7,14 @@
{% endblock %}
{% block title %}Nouveaux transferts{% endblock %}
{% block content-header-title %}Nouveaux transferts{% endblock %}
{% block header-title %}Création de transferts{% endblock %}
{% block content %}
{% block main-size %}col-sm-12{% endblock %}
{% csrf_token %}
{% block main-content %}
<form id="transfers_form">
<form id="transfers_form" style="background-color: transparent;">
{% csrf_token %}
<div class="transfer_general text-center">
<input type="text" name="comment" id="comment" placeholder="Commentaire"><!--
--><button type="submit" id="submit" class="btn btn-primary btn-lg">Enregistrer</button>

View file

@ -2062,6 +2062,7 @@ def order_to_inventory(request, pk):
return render(request, 'kfet/order_to_inventory.html', {
'formset': formset,
'order': order,
})
class SupplierUpdate(SuccessMessageMixin, UpdateView):