Nouvelle feuille de style + gestion fournisseurs
This commit is contained in:
@@ -3,7 +3,6 @@
|
||||
{% block top_menu %}
|
||||
<span class='top_menu_item' onclick='javascript:document.location="/componants";'>Rechercher un composant</span>
|
||||
<span class='top_menu_item_selected' onclick='javascript:document.location="/componants/{{ componant.id }}";'>Éditer un composant</span>
|
||||
<span class='top_menu_item' onclick='javascript:document.location="/componants/new";'>Nouveau composant</span>
|
||||
<span class='top_menu_item' onclick='javascript:document.location="/componants/in";'>Entrée de stock</span>
|
||||
<span class='top_menu_item' onclick='javascript:document.location="/componants/out";'>Sortie de stock</span>
|
||||
{% endblock %}
|
||||
@@ -24,111 +23,111 @@
|
||||
{% endblock %}
|
||||
|
||||
{% block content %}
|
||||
<h3>Note:</h3>
|
||||
<div class='note'>
|
||||
<p>Cette page vous permet de modifier directement un composant.</p>
|
||||
<p>À moins de vouloir corriger une erreur de saisie, ou de saisir un inventaire vous ne devez
|
||||
<strong>PAS</strong> modifier directement
|
||||
les quantités d'un composant.</p>
|
||||
<p>Cliquez sur les liens suivants pour saisir des <a href='/componant/in/{{ componant.id }}'>entrées</a>
|
||||
ou <a href='/componant/out/{{ componant.id }}'>sorties</a> de stock.</p>
|
||||
</div>
|
||||
<h3>Composant:</h3>
|
||||
<div class='block margin_bottom no_border'>
|
||||
<label class='editable'>Référence (unique)</label>
|
||||
<input
|
||||
id='reference'
|
||||
type='text'
|
||||
class='editable'
|
||||
onchange='javascript:update_componant(this, {{ componant.id }}, "text");'
|
||||
maxlength='20'
|
||||
title='Référence interne unique (max. 20)'
|
||||
placeholder='Référence interne unique (max. 20)'
|
||||
value='{{ componant.reference }}' />
|
||||
</div>
|
||||
<div class='block margin_bottom no_border'>
|
||||
<label class='editable'>Désignation</label>
|
||||
<input
|
||||
id='designation'
|
||||
type='text'
|
||||
class='editable'
|
||||
onchange='javascript:update_componant(this, {{ componant.id }}, "text");'
|
||||
maxlength='50'
|
||||
title='Désignation (max. 50)'
|
||||
placeholder='Désignation (max. 50)'
|
||||
value='{{ componant.designation }}' />
|
||||
</div>
|
||||
<div class='block margin_bottom no_border'>
|
||||
<label class='editable'>Dernier prix d'achat</label>
|
||||
<input
|
||||
id='last_price'
|
||||
type='text'
|
||||
class='editable'
|
||||
onchange='javascript:update_componant(this, {{ componant.id }}, "numeric");'
|
||||
maxlength='15'
|
||||
title="Dernier prix d'achat"
|
||||
placeholder="Dernier prix d'achat"
|
||||
value='{{ componant.last_price }}' />
|
||||
</div>
|
||||
<div class='block margin_bottom no_border'>
|
||||
<label class='editable'>Coût d'achat moyen pondéré</label>
|
||||
<input
|
||||
id='mean_price'
|
||||
type='text'
|
||||
class='editable'
|
||||
maxlength='15'
|
||||
title='CMP (non éditable)'
|
||||
readonly value='{{ componant.mean_price }}' />
|
||||
</div>
|
||||
<div class='block margin_bottom no_border'>
|
||||
<label class='editable'>Quantité</label>
|
||||
<input
|
||||
id='quantity'
|
||||
type='text'
|
||||
class='editable'
|
||||
onchange='javascript:update_componant(this, {{ componant.id }}, "numeric");'
|
||||
maxlength='15'
|
||||
title='Quantité'
|
||||
placeholder='Quantité'
|
||||
value='{{ componant.quantity }}' />
|
||||
</div>
|
||||
<div class='block margin_bottom no_border'>
|
||||
<label class='editable'>Quantité minimum</label>
|
||||
<input
|
||||
id='min_quantity'
|
||||
type='text'
|
||||
class='editable'
|
||||
onchange='javascript:update_componant(this, {{ componant.id }}, "numeric");'
|
||||
maxlength='15'
|
||||
title='Quantité minimum'
|
||||
placeholder='Quantité minimum'
|
||||
value='{{ componant.min_quantity }}' />
|
||||
</div>
|
||||
<div class='block margin_bottom no_border'>
|
||||
<label class='editable'>Emplacement</label>
|
||||
<input
|
||||
id='place'
|
||||
type='text'
|
||||
class='editable'
|
||||
onchange='javascript:update_componant(this, {{ componant.id }}, "text");'
|
||||
maxlength='15'
|
||||
title='Emplacement (max. 15)'
|
||||
placeholder='Emplacement (max. 15)'
|
||||
value='{{ componant.place }}' />
|
||||
</div>
|
||||
<div class='block margin_bottom no_border'>
|
||||
<label class='editable'>Fournisseur</label>
|
||||
<select
|
||||
id='provider_id'
|
||||
onchange='javascript:update_componant(this, {{ componant.id }}, "numeric");'
|
||||
title='Fournisseur'>
|
||||
{% for prov in providers %}
|
||||
{% set option_selected = '' %}
|
||||
{% if prov.id == provider.id %}
|
||||
{% set option_selected = 'selected="selected"' %}
|
||||
{% endif %}
|
||||
<option {{ option_selected }} value='{{ prov.id }}'>{{ prov.name }}</option>
|
||||
{% endfor %}
|
||||
</select>
|
||||
</div>
|
||||
<div id='note' class='main_block'>
|
||||
<text>Note:</text>
|
||||
<div class='note'>
|
||||
<p>Cette page vous permet de modifier directement un composant.<br/>
|
||||
À moins de vouloir corriger une erreur de saisie, ou de saisir un inventaire <br/>
|
||||
vous ne devez <strong>PAS</strong> modifier directement les quantités d'un composant.</p>
|
||||
<p>Cliquez sur les liens suivants pour saisir des
|
||||
<span class='top_menu_item_selected' onclick='javascript:document.location="/componant/in/{{ componant.id }}"'>entrées</span>
|
||||
ou
|
||||
<span class='top_menu_item_selected' onclick='javascript:document.location="/componant/out/{{ componant.id }}"'>sorties</span> de stock.</p>
|
||||
</div>
|
||||
</div>
|
||||
<div id='edit' class='main_block'>
|
||||
<text>Composant:</text>
|
||||
<div class='input_block'>
|
||||
<label>Référence (unique)</label>
|
||||
<input
|
||||
id='reference'
|
||||
type='text'
|
||||
onchange='javascript:update_componant(this, {{ componant.id }}, "text");'
|
||||
maxlength='20'
|
||||
title='Référence interne unique (max. 20)'
|
||||
placeholder='Référence interne unique (max. 20)'
|
||||
value='{{ componant.reference }}' />
|
||||
</div>
|
||||
<div class='input_block'>
|
||||
<label>Désignation</label>
|
||||
<input
|
||||
id='designation'
|
||||
type='text'
|
||||
onchange='javascript:update_componant(this, {{ componant.id }}, "text");'
|
||||
maxlength='50'
|
||||
title='Désignation (max. 50)'
|
||||
placeholder='Désignation (max. 50)'
|
||||
value='{{ componant.designation }}' />
|
||||
</div>
|
||||
<div class='input_block'>
|
||||
<label>Dernier prix d'achat</label>
|
||||
<input
|
||||
id='last_price'
|
||||
type='text'
|
||||
onchange='javascript:update_componant(this, {{ componant.id }}, "numeric");'
|
||||
maxlength='15'
|
||||
title="Dernier prix d'achat"
|
||||
placeholder="Dernier prix d'achat"
|
||||
value='{{ componant.last_price }}' />
|
||||
</div>
|
||||
<div class='input_block'>
|
||||
<label>Coût d'achat moyen</label>
|
||||
<input
|
||||
id='mean_price'
|
||||
type='text'
|
||||
maxlength='15'
|
||||
title='CMP (non éditable)'
|
||||
readonly value='{{ componant.mean_price }}' />
|
||||
</div>
|
||||
<div class='input_block'>
|
||||
<label>Quantité</label>
|
||||
<input
|
||||
id='quantity'
|
||||
type='text'
|
||||
onchange='javascript:update_componant(this, {{ componant.id }}, "numeric");'
|
||||
maxlength='15'
|
||||
title='Quantité'
|
||||
placeholder='Quantité'
|
||||
value='{{ componant.quantity }}' />
|
||||
</div>
|
||||
<div class='input_block'>
|
||||
<label>Quantité minimum</label>
|
||||
<input
|
||||
id='min_quantity'
|
||||
type='text'
|
||||
onchange='javascript:update_componant(this, {{ componant.id }}, "numeric");'
|
||||
maxlength='15'
|
||||
title='Quantité minimum'
|
||||
placeholder='Quantité minimum'
|
||||
value='{{ componant.min_quantity }}' />
|
||||
</div>
|
||||
<div class='input_block'>
|
||||
<label>Emplacement</label>
|
||||
<input
|
||||
id='place'
|
||||
type='text'
|
||||
onchange='javascript:update_componant(this, {{ componant.id }}, "text");'
|
||||
maxlength='15'
|
||||
title='Emplacement (max. 15)'
|
||||
placeholder='Emplacement (max. 15)'
|
||||
value='{{ componant.place }}' />
|
||||
</div>
|
||||
<div class='input_block'>
|
||||
<label>Fournisseur</label>
|
||||
<select
|
||||
id='provider_id'
|
||||
onchange='javascript:update_componant(this, {{ componant.id }}, "numeric");'
|
||||
title='Fournisseur'>
|
||||
{% for prov in providers %}
|
||||
{% if prov.id > 1 %}
|
||||
{% set option_selected = '' %}
|
||||
{% if prov.id == provider.id %}
|
||||
{% set option_selected = 'selected="selected"' %}
|
||||
{% endif %}
|
||||
<option {{ option_selected }} value='{{ prov.id }}'>{{ prov.name }}</option>
|
||||
{% endif %}
|
||||
{% endfor %}
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
{% endblock %}
|
||||
|
||||
@@ -4,8 +4,7 @@
|
||||
{% endblock %}
|
||||
{% block title %}Liste des composants{% endblock %}
|
||||
{% block top_menu %}
|
||||
<span class='top_menu_item_selected' onclick='javascript:document.location="/componants/search";'>Rechercher un composant</span>
|
||||
<span class='top_menu_item' onclick='javascript:document.location="/componants/new";'>Nouveau composant</span>
|
||||
<span class='top_menu_item_selected' onclick='javascript:document.location="/componants";'>Gestion des composants</span>
|
||||
<span class='top_menu_item' onclick='javascript:document.location="/componants/in";'>Entrée de stock</span>
|
||||
<span class='top_menu_item' onclick='javascript:document.location="/componants/out";'>Sortie de stock</span>
|
||||
{% endblock %}
|
||||
@@ -29,66 +28,73 @@
|
||||
<!-- ----------------------------------------------------
|
||||
Recherche
|
||||
----------------------------------------------------- -->
|
||||
<h3>Recherche:</h3>
|
||||
<div class='block margin_bottom no_border'>
|
||||
<label class='editable'>Référence (unique)</label>
|
||||
<input
|
||||
id='reference'
|
||||
type='text'
|
||||
class='editable'
|
||||
onkeyup='javascript:search_componants_by_reference(this, "text");'
|
||||
maxlength='20'
|
||||
title='Référence interne unique (max. 20)'
|
||||
placeholder='Référence interne unique (max. 20)'
|
||||
value='{{ reference }}' />
|
||||
</div>
|
||||
<div class='block margin_bottom no_border'>
|
||||
<label class='editable'>Désignation</label>
|
||||
<input
|
||||
id='designation'
|
||||
type='text'
|
||||
class='editable'
|
||||
onkeyup='javascript:search_componants_by_designation(this, "text");'
|
||||
maxlength='50'
|
||||
title='Désignation (max. 50)'
|
||||
placeholder='Désignation (max. 50)'
|
||||
value='{{ designation }}' />
|
||||
</div>
|
||||
<div class='block margin_bottom no_border'>
|
||||
<label class='editable'>Emplacement</label>
|
||||
<input
|
||||
id='place'
|
||||
type='text'
|
||||
class='editable'
|
||||
onkeyup='javascript:search_componants_by_place(this, "text");'
|
||||
maxlength='15'
|
||||
title='Emplacement (max. 15)'
|
||||
placeholder='Emplacement (max. 15)'
|
||||
value='{{ place }}' />
|
||||
</div>
|
||||
<div class='block margin_bottom no_border'>
|
||||
<label class='editable'>Fournisseur</label>
|
||||
<select
|
||||
id='provider_id'
|
||||
onchange='javascript:search_componants_by_provider(this, "numeric");'
|
||||
title='Fournisseur'>
|
||||
{% for prov in providers %}
|
||||
{% set selected = '' %}
|
||||
{% if prov.id == provider_id %}
|
||||
{% set selected = 'selected' %}
|
||||
{% endif %}
|
||||
<option value='{{ prov.id }}' {{ selected }}>{{ prov.name }}</option>
|
||||
{% endfor %}
|
||||
</select>
|
||||
</div>
|
||||
<div class='block margin_bottom no_border center'>
|
||||
<text title='Rechercher' class='search' onclick='javascript:update_componants("reference");'></text>
|
||||
<text title='Enregistrer' class='save' onclick='javascript:new_componant();'></text>
|
||||
<div id='search' class='main_block'>
|
||||
<text>Recherche:</text>
|
||||
<div class='input_block'>
|
||||
<label>Référence (unique)</label>
|
||||
<input
|
||||
id='reference'
|
||||
type='text'
|
||||
onkeyup='javascript:search_componants_by_reference(this, "text");'
|
||||
maxlength='20'
|
||||
title='Référence interne unique (max. 20)'
|
||||
placeholder='Référence interne unique (max. 20)'
|
||||
value='{{ reference }}' />
|
||||
</div>
|
||||
<div class='input_block'>
|
||||
<label>Désignation</label>
|
||||
<input
|
||||
id='designation'
|
||||
type='text'
|
||||
onkeyup='javascript:search_componants_by_designation(this, "text");'
|
||||
maxlength='50'
|
||||
title='Désignation (max. 50)'
|
||||
placeholder='Désignation (max. 50)'
|
||||
value='{{ designation }}' />
|
||||
</div>
|
||||
<div class='input_block'>
|
||||
<label>Emplacement</label>
|
||||
<input
|
||||
id='place'
|
||||
type='text'
|
||||
onkeyup='javascript:search_componants_by_place(this, "text");'
|
||||
maxlength='15'
|
||||
title='Emplacement (max. 15)'
|
||||
placeholder='Emplacement (max. 15)'
|
||||
value='{{ place }}' />
|
||||
</div>
|
||||
<div class='input_block'>
|
||||
<label>Fournisseur</label>
|
||||
<select
|
||||
id='provider_id'
|
||||
onchange='javascript:search_componants_by_provider(this, "numeric");'
|
||||
title='Fournisseur'>
|
||||
{% for prov in providers %}
|
||||
{% set selected = '' %}
|
||||
{% if prov.id == provider_id %}
|
||||
{% set selected = 'selected' %}
|
||||
{% endif %}
|
||||
<option value='{{ prov.id }}' {{ selected }}>{{ prov.name }}</option>
|
||||
{% endfor %}
|
||||
</select>
|
||||
</div>
|
||||
<div class='button_block'>
|
||||
<input
|
||||
type='image'
|
||||
src='/static/images/search.png'
|
||||
title='Rechercher'
|
||||
onclick='javascript:update_componants("reference");'/>
|
||||
<input
|
||||
type='image'
|
||||
src='/static/images/save.png'
|
||||
title='Enregistrer'
|
||||
onclick='javascript:new_componant();'/>
|
||||
</div>
|
||||
</div>
|
||||
<!-- ----------------------------------------------------
|
||||
Resultat
|
||||
----------------------------------------------------- -->
|
||||
<div id='result_container' class='result_container'>
|
||||
<div id='result_container' class='main_block'>
|
||||
|
||||
</div>
|
||||
{% endblock %}
|
||||
|
||||
76
templates/provider.html
Normal file
76
templates/provider.html
Normal file
@@ -0,0 +1,76 @@
|
||||
{% extends "index.html" %}
|
||||
{% block title %}Éditer un fournisseur{% endblock %}
|
||||
{% block top_menu %}
|
||||
<span class='top_menu_item' onclick='javascript:document.location="/providers";'>Gérer les fournisseurs</span>
|
||||
<span class='top_menu_item_selected' onclick='javascript:document.location="/providers/{{ provider.id }}";'>Éditer un fournisseur</span>
|
||||
{% endblock %}
|
||||
{% block left_menu %}
|
||||
<div class='left_menu_item' onclick='javascript:document.location="/";'>
|
||||
Accueil
|
||||
</div>
|
||||
<div class='left_menu_item' onclick='javascript:document.location="/componants";'>
|
||||
Composants
|
||||
</div>
|
||||
<div class='left_menu_item' onclick='javascript:document.location="/kits";'>
|
||||
Kits
|
||||
</div>
|
||||
<div class='left_menu_item_selected' onclick='javascript:document.location="/providers";'>
|
||||
Fournisseurs
|
||||
</div>
|
||||
{% endblock %}
|
||||
|
||||
{% block content %}
|
||||
<div id='edit' class='main_block'>
|
||||
<text>Composant:</text>
|
||||
<div class='input_block'>
|
||||
<label>Nom (unique)</label>
|
||||
<input
|
||||
id='name'
|
||||
type='text'
|
||||
onchange='javascript:update_provider(this, {{ provider.id }}, "text");'
|
||||
maxlength='20'
|
||||
title='Nom unique (max. 20)'
|
||||
placeholder='Nom unique (max. 20)'
|
||||
value='{{ provider.name }}' />
|
||||
</div>
|
||||
<div class='input_block'>
|
||||
<label>Adresse</label>
|
||||
<input
|
||||
id='address'
|
||||
type='text'
|
||||
onchange='javascript:update_provider(this, {{ provider.id }}, "text");'
|
||||
title='Adresse'
|
||||
placeholder='Adresse'
|
||||
value='{{ provider.address }}' />
|
||||
</div>
|
||||
<div class='input_block'>
|
||||
<label>@ mail</label>
|
||||
<input
|
||||
id='mail'
|
||||
type='text'
|
||||
onchange='javascript:update_provider(this, {{ provider.id }}, "text");'
|
||||
title="Adresse e-mail"
|
||||
placeholder="Adresse e-mail"
|
||||
value='{{ provider.mail }}' />
|
||||
</div>
|
||||
<div class='input_block'>
|
||||
<label>URL</label>
|
||||
<input
|
||||
id='url'
|
||||
type='text'
|
||||
onchange='javascript:update_provider(this, {{ provider.id }}, "text");'
|
||||
title="URL"
|
||||
placeholder="URL"
|
||||
value='{{ provider.url }}' />
|
||||
</div>
|
||||
<div class='input_block'>
|
||||
<label>Commentaires</label>
|
||||
<input
|
||||
id='comment'
|
||||
type='text'
|
||||
onchange='javascript:update_provider(this, {{ provider.id }}, "text");'
|
||||
title='Commentaire'
|
||||
value='{{ provider.comment }}' />
|
||||
</div>
|
||||
</div>
|
||||
{% endblock %}
|
||||
90
templates/providers.html
Normal file
90
templates/providers.html
Normal file
@@ -0,0 +1,90 @@
|
||||
{% extends "index.html" %}
|
||||
{% block bodyheader %}
|
||||
<body onload="javascript:update_providers();">
|
||||
{% endblock %}
|
||||
{% block title %}Liste des fournisseurs{% endblock %}
|
||||
{% block top_menu %}
|
||||
<span class='top_menu_item_selected' onclick='javascript:document.location="/providers";'>Gérer les fournisseurs</span>
|
||||
{% endblock %}
|
||||
|
||||
{% block left_menu %}
|
||||
<div class='left_menu_item' onclick='javascript:document.location="/";'>
|
||||
Accueil
|
||||
</div>
|
||||
<div class='left_menu_item' onclick='javascript:document.location="/componants";'>
|
||||
Composants
|
||||
</div>
|
||||
<div class='left_menu_item' onclick='javascript:document.location="/kits";'>
|
||||
Kits
|
||||
</div>
|
||||
<div class='left_menu_item_selected' onclick='javascript:document.location="/providers";'>
|
||||
Fournisseurs
|
||||
</div>
|
||||
{% endblock %}
|
||||
|
||||
{% block content %}
|
||||
<!-- ----------------------------------------------------
|
||||
Recherche
|
||||
----------------------------------------------------- -->
|
||||
<div id='search' class='main_block'>
|
||||
<text>Recherche:</text>
|
||||
<div class='input_block'>
|
||||
<label>Nom (unique)</label>
|
||||
<input
|
||||
id='name'
|
||||
type='text'
|
||||
onkeyup='javascript:search_providers_by_name(this, "text");'
|
||||
title='Nom unique'
|
||||
placeholder='Nom unique'
|
||||
value='{{ name }}' />
|
||||
</div>
|
||||
<div class='input_block'>
|
||||
<label>Adresse</label>
|
||||
<input
|
||||
id='address'
|
||||
type='text'
|
||||
onkeyup='javascript:search_providers_by_address(this, "text");'
|
||||
title='Adresse'
|
||||
placeholder='Adresse'
|
||||
value='{{ address }}' />
|
||||
</div>
|
||||
<div class='input_block'>
|
||||
<label>@ mail</label>
|
||||
<input
|
||||
id='mail'
|
||||
type='text'
|
||||
onkeyup='javascript:search_providers_by_mail(this, "text");'
|
||||
title='Adresse mail'
|
||||
placeholder='Adresse mail'
|
||||
value='{{ mail }}' />
|
||||
</div>
|
||||
<div class='input_block'>
|
||||
<label>URL</label>
|
||||
<input
|
||||
id='url'
|
||||
type='text'
|
||||
onkeyup='javascript:search_providers_by_url(this, "text");'
|
||||
title='URL'
|
||||
placeholder='URL'
|
||||
value='{{ url }}' />
|
||||
</div>
|
||||
<div class='button_block'>
|
||||
<input
|
||||
type='image'
|
||||
src='/static/images/search.png'
|
||||
title='Rechercher'
|
||||
onclick='javascript:update_providers("name");'/>
|
||||
<input
|
||||
type='image'
|
||||
src='/static/images/save.png'
|
||||
title='Enregistrer'
|
||||
onclick='javascript:new_provider();'/>
|
||||
</div>
|
||||
</div>
|
||||
<!-- ----------------------------------------------------
|
||||
Resultat
|
||||
----------------------------------------------------- -->
|
||||
<div id='result_container' class='result_container'>
|
||||
|
||||
</div>
|
||||
{% endblock %}
|
||||
@@ -1,31 +0,0 @@
|
||||
<h3>Résultat:</h3>
|
||||
{% set ss='' %}
|
||||
{% if row_count > 1 %}
|
||||
{% set ss='s' %}
|
||||
{% endif %}
|
||||
<div class='row_count'>{{ row_count }} objet{{ ss }} selectionné{{ ss }}</div>
|
||||
<div class='block' style='border-top-style: none;'>
|
||||
<label onclick='javascript:update_componants_by_reference("{{ order }}");'>Référence</label>
|
||||
<label onclick='javascript:update_componants_by_designation("{{ order }}");' class='border_left' style='width: 440px;'>Désignation</label>
|
||||
<label onclick='javascript:update_componants_by_quantity("{{ order }}");' class='border_left' style='width: 100px;'>Quantité</label>
|
||||
<label onclick='javascript:update_componants_by_place("{{ order }}");' class='border_right border_left' style='width: 160px;'>Emplacement</label>
|
||||
<label style='width: 106px; cursor: default;'>Action</label>
|
||||
</div>
|
||||
{% set row_class = cycler('odd', 'even') %}
|
||||
{% for componant in componants %}
|
||||
<div class='block {{ row_class.next() }}'>
|
||||
<text style='width: 192px;'>{{ componant.reference }}</text>
|
||||
<text class='border_left' style='width: 432px;'>{{ componant.designation }}</text>
|
||||
<text class='num border_left' style='width: 92px;'>{{ componant.quantity }}</text>
|
||||
<text class='num border_right border_left' style='width: 152px;'>{{ componant.place }}</text>
|
||||
<div class='inner' style='width: 95px;'>
|
||||
<text class='edit' title='Éditer' onclick='javascript:document.location="/componants/{{ componant.id }}"'></text>
|
||||
<text class='trash' title='Supprimer' onclick='javascript:confirm_delete()?document.location="/componants/delete/{{ componant.id }}":false;'></text>
|
||||
</div>
|
||||
</div>
|
||||
{% endfor %}
|
||||
<div class='pages_nav_bar'>
|
||||
<text><span class='prev_page' onclick='javascript:previous_page({{ prevhop }});'><</span></text>
|
||||
<text><span class='page_num'>{{ page }} / {{ page_count }}</span></text>
|
||||
<text><span class='next_page' onclick='javascript:next_page({{ nexthop }})'>></span></text>
|
||||
</div>
|
||||
44
templates/result_componants.html
Normal file
44
templates/result_componants.html
Normal file
@@ -0,0 +1,44 @@
|
||||
<div class='main_block'>
|
||||
<text>Résultat:
|
||||
{% set ss='' %}
|
||||
{% if row_count > 1 %}
|
||||
{% set ss='s' %}
|
||||
{% endif %}
|
||||
{{ row_count }} objet{{ ss }} selectionné{{ ss }}
|
||||
</text>
|
||||
<div class='row_block border_bottom'>
|
||||
<label style='width: 200px;' onclick='javascript:update_componants_by_reference("{{ order }}");'>Référence</label>
|
||||
<label class='border_left' style='width: 449px;' onclick='javascript:update_componants_by_designation("{{ order }}");'>Désignation</label>
|
||||
<label class='border_left' style='width: 99px;' onclick='javascript:update_componants_by_quantity("{{ order }}");'>Quantité</label>
|
||||
<label class='border_left' style='width: 149px;' onclick='javascript:update_componants_by_place("{{ order }}");'>Emplacement</label>
|
||||
<label class='border_left' style='width: 99px; cursor: default;'>Action</label>
|
||||
</div>
|
||||
{% set row_class = cycler('odd', 'even') %}
|
||||
{% for componant in componants %}
|
||||
<div class='row_block {{ row_class.next() }}'>
|
||||
<text style='width: 190px;'>{{ componant.reference }}</text>
|
||||
<text class='border_left' style='width: 439px;'>{{ componant.designation }}</text>
|
||||
<text class='num border_left' style='width: 89px;'>{{ componant.quantity }}</text>
|
||||
<text class='num border_right border_left' style='width: 139px;'>{{ componant.place }}</text>
|
||||
<div class='action_bar_block border_left' style='width: 89px;'>
|
||||
<input
|
||||
type='image'
|
||||
src='/static/images/edit.png'
|
||||
title='Éditer'
|
||||
onclick='javascript:document.location="/componants/{{ componant.id }}"'/>
|
||||
<input
|
||||
type='image'
|
||||
src='/static/images/trash.png'
|
||||
title='Supprimer'
|
||||
onclick='javascript:confirm_componant_delete()?document.location="/componants/delete/{{ componant.id }}":false;'/>
|
||||
</div>
|
||||
</div>
|
||||
{% endfor %}
|
||||
<div class='nav_page_block border_top'>
|
||||
<text>
|
||||
<span class='prev_page' onclick='javascript:c_previous_page({{ prevhop }});'><</span>
|
||||
<span class='page_num'>{{ page }} / {{ page_count }}</span>
|
||||
<span class='next_page' onclick='javascript:c_next_page({{ nexthop }})'>></span>
|
||||
</text>
|
||||
</div>
|
||||
</div>
|
||||
44
templates/result_providers.html
Normal file
44
templates/result_providers.html
Normal file
@@ -0,0 +1,44 @@
|
||||
<div class='main_block'>
|
||||
<text>Résultat:
|
||||
{% set ss='' %}
|
||||
{% if row_count > 1 %}
|
||||
{% set ss='s' %}
|
||||
{% endif %}
|
||||
{{ row_count }} objet{{ ss }} selectionné{{ ss }}
|
||||
</text>
|
||||
<div class='row_block border_bottom'>
|
||||
<label style='width: 209px;' onclick='javascript:update_providers_by_name("{{ order }}");'>Nom</label>
|
||||
<label class='border_left' style='width: 199px;' onclick='javascript:update_providers_by_address("{{ order }}");'>Addresse</label>
|
||||
<label class='border_left' style='width: 199px;' onclick='javascript:update_providers_by_mail("{{ order }}");'>@ Mail</label>
|
||||
<label class='border_left' style='width: 299px;' onclick='javascript:update_providers_by_url("{{ order }}");'>URL</label>
|
||||
<label class='border_left' style='width: 89px;' style='cursor: default;'>Action</label>
|
||||
</div>
|
||||
{% set row_class = cycler('odd', 'even') %}
|
||||
{% for provider in providers %}
|
||||
<div class='row_block {{ row_class.next() }}'>
|
||||
<text style='width: 199px;'>{{ provider.name }}</text>
|
||||
<text class='border_left' style='width: 189px;'>{{ provider.address }}</text>
|
||||
<text class='border_left' style='width: 189px;'>{{ provider.mail }}</text>
|
||||
<text class='border_left' style='width: 289px;'>{{ provider.url }}</text>
|
||||
<div class='action_bar_block border_left' style='width: 89px;'>
|
||||
<input
|
||||
type='image'
|
||||
src='/static/images/edit.png'
|
||||
title='Éditer'
|
||||
onclick='javascript:document.location="/providers/{{ provider.id }}"'/>
|
||||
<input
|
||||
type='image'
|
||||
src='/static/images/trash.png'
|
||||
title='Supprimer'
|
||||
onclick='javascript:confirm_provider_delete()?document.location="/providers/delete/{{ provider.id }}":false;'/>
|
||||
</div>
|
||||
</div>
|
||||
{% endfor %}
|
||||
<div class='nav_page_block border_top'>
|
||||
<text>
|
||||
<span class='prev_page' onclick='javascript:p_previous_page({{ prevhop }});'><</span>
|
||||
<span class='page_num'>{{ page }} / {{ page_count }}</span>
|
||||
<span class='next_page' onclick='javascript:p_next_page({{ nexthop }})'>></span>
|
||||
</text>
|
||||
</div>
|
||||
</div>
|
||||
100
templates/test.html
Normal file
100
templates/test.html
Normal file
@@ -0,0 +1,100 @@
|
||||
{% extends "index.html" %}
|
||||
{% block bodyheader %}
|
||||
<body onload="javascript:update_componants();">
|
||||
{% endblock %}
|
||||
{% block title %}Liste des composants{% endblock %}
|
||||
{% block top_menu %}
|
||||
<span class='top_menu_item_selected' onclick='javascript:document.location="/componants";'>Gestion des composants</span>
|
||||
<span class='top_menu_item' onclick='javascript:document.location="/componants/in";'>Entrée de stock</span>
|
||||
<span class='top_menu_item' onclick='javascript:document.location="/componants/out";'>Sortie de stock</span>
|
||||
{% endblock %}
|
||||
|
||||
{% block left_menu %}
|
||||
<div class='left_menu_item' onclick='javascript:document.location="/";'>
|
||||
Accueil
|
||||
</div>
|
||||
<div class='left_menu_item_selected' onclick='javascript:document.location="/componants";'>
|
||||
Composants
|
||||
</div>
|
||||
<div class='left_menu_item' onclick='javascript:document.location="/kits";'>
|
||||
Kits
|
||||
</div>
|
||||
<div class='left_menu_item' onclick='javascript:document.location="/providers";'>
|
||||
Fournisseurs
|
||||
</div>
|
||||
{% endblock %}
|
||||
|
||||
{% block content %}
|
||||
<!-- ----------------------------------------------------
|
||||
Recherche
|
||||
----------------------------------------------------- -->
|
||||
<div id='search' class='main_block'>
|
||||
<text>Recherche:</text>
|
||||
<div class='input_block'>
|
||||
<label>Référence (unique)</label>
|
||||
<input
|
||||
id='reference'
|
||||
type='text'
|
||||
onkeyup='javascript:search_componants_by_reference(this, "text");'
|
||||
maxlength='20'
|
||||
title='Référence interne unique (max. 20)'
|
||||
placeholder='Référence interne unique (max. 20)'
|
||||
value='{{ reference }}' />
|
||||
</div>
|
||||
<div class='input_block'>
|
||||
<label>Désignation</label>
|
||||
<input
|
||||
id='designation'
|
||||
type='text'
|
||||
onkeyup='javascript:search_componants_by_designation(this, "text");'
|
||||
maxlength='50'
|
||||
title='Désignation (max. 50)'
|
||||
placeholder='Désignation (max. 50)'
|
||||
value='{{ designation }}' />
|
||||
</div>
|
||||
<div class='input_block'>
|
||||
<label>Emplacement</label>
|
||||
<input
|
||||
id='place'
|
||||
type='text'
|
||||
onkeyup='javascript:search_componants_by_place(this, "text");'
|
||||
maxlength='15'
|
||||
title='Emplacement (max. 15)'
|
||||
placeholder='Emplacement (max. 15)'
|
||||
value='{{ place }}' />
|
||||
</div>
|
||||
<div class='input_block'>
|
||||
<label>Fournisseur</label>
|
||||
<select
|
||||
id='provider_id'
|
||||
onchange='javascript:search_componants_by_provider(this, "numeric");'
|
||||
title='Fournisseur'>
|
||||
{% for prov in providers %}
|
||||
{% set selected = '' %}
|
||||
{% if prov.id == provider_id %}
|
||||
{% set selected = 'selected' %}
|
||||
{% endif %}
|
||||
<option value='{{ prov.id }}' {{ selected }}>{{ prov.name }}</option>
|
||||
{% endfor %}
|
||||
</select>
|
||||
</div>
|
||||
<div class='button_block'>
|
||||
<input
|
||||
type='image'
|
||||
src='/static/images/search.png'
|
||||
title='Rechercher'
|
||||
onclick='javascript:update_componants("reference");'/>
|
||||
<input
|
||||
type='image'
|
||||
src='/static/images/save.png'
|
||||
title='Enregistrer'
|
||||
onclick='javascript:new_componant();'/>
|
||||
</div>
|
||||
</div>
|
||||
<!-- ----------------------------------------------------
|
||||
Resultat
|
||||
----------------------------------------------------- -->
|
||||
<div id='result_container' class='main_block'>
|
||||
|
||||
</div>
|
||||
{% endblock %}
|
||||
Reference in New Issue
Block a user