196 lines
6.5 KiB
HTML
196 lines
6.5 KiB
HTML
{{* -*- brindille -*- *}}
|
|
{{*
|
|
Inventaire des matériels en stock dans l'association ou chez les particuliers
|
|
Paramètres :
|
|
- cat_key : clé de la catégorie
|
|
- prop : =1 si matériel propriété de l'association, 0 sinon
|
|
*}}
|
|
|
|
{{* filtrer selon la catégorie *}}
|
|
{{if $_GET.cat_key == null}}
|
|
{{:assign selected_category=null}}
|
|
{{else}}
|
|
{{if $_GET.cat_key == -1}}
|
|
{{:assign selected_category=null}}
|
|
{{else}}
|
|
{{:assign selected_category=$_GET.cat_key}}
|
|
{{/if}}
|
|
{{/if}}
|
|
|
|
{{* -- Conditions de filtrage *}}
|
|
{{if $selected_category != null}}
|
|
{{:assign cat_key=$selected_category|quote_sql}}
|
|
{{:assign cat_condition="$$.category = %s"|args:$cat_key}}
|
|
{{else}}
|
|
{{:assign cat_condition="1"}}
|
|
{{/if}}
|
|
|
|
{{* filtrer selon appartenance *}}
|
|
{{if $_GET.prop == null}}
|
|
{{:assign selected_prop=null}}
|
|
{{else}}
|
|
{{if $_GET.prop == -1}}
|
|
{{:assign selected_prop=null}}
|
|
{{else}}
|
|
{{:assign selected_prop=$_GET.prop}}
|
|
{{/if}}
|
|
{{/if}}
|
|
{{if $selected_prop == null}}
|
|
{{:assign prop_condition="1"}}
|
|
{{elseif $selected_prop == 1}}
|
|
{{:assign prop_condition="$$.stock != 0"}}
|
|
{{else}}
|
|
{{:assign prop_condition="$$.notowned != 0"}}
|
|
{{/if}}
|
|
{{:assign var="prop_options." value="" label="Tous les matériels" href="?prop=-1"}}
|
|
{{:assign var="prop_options." value="1" label="Matériels propriété de l'association" href="?prop=1"}}
|
|
{{:assign var="prop_options." value="0" label="Matériels NON propriété de l'association" href="?prop=0"}}
|
|
{{*:debug propopt=$prop_options selected_prop=$selected_prop*}}
|
|
|
|
|
|
{{* sélecteurs de catégories et d'appartenances *}}
|
|
{{:assign var="cat_options." value="" label="Toutes les catégories" href="?cat_key=-1"}}
|
|
{{#load module="equipment" type="category" order="$$.name"}}
|
|
{{:assign var="categories.%s"|args:$key value=$name}}
|
|
{{:assign var="cat_options." value=$key label=$name href="?cat_key=%s"|args:$key}}
|
|
{{/load}}
|
|
{{*:debug cats=$categories selected_category=$selected_category cat_key=$cat_key cat_condition=$cat_condition *}}
|
|
{{*
|
|
<div class="shortFormLeft">
|
|
<p class="help">Inventaire des matériels présents dans l'association</p>
|
|
</div>
|
|
*}}
|
|
<fieldset class="shortFormLeft">
|
|
<legend>Filtrer par catégorie</legend>
|
|
{{:dropdown
|
|
title="Filtrer par catégorie"
|
|
options=$cat_options
|
|
value="%s"|args:$selected_category
|
|
}}
|
|
<legend>Filtrer par appartenance</legend>
|
|
{{:dropdown
|
|
title="Filtrer par appartenance"
|
|
options=$prop_options
|
|
value="%s"|args:$selected_prop
|
|
}}
|
|
</fieldset>
|
|
<div class="shortFormRight">
|
|
{{*:linkbutton class="main" label="Affichage vignette" href="equipment.html?prop=%s&cat_key=%s&fonc=inv2"|args:$selected_prop:$selected_category shape="list-ul"*}}
|
|
{{:linkbutton class="main" label="Affichage Mobile" href="equipment.html?prop=%s&cat_key=%s&fonc=inv3"|args:$selected_prop:$selected_category shape="list-ul"}}
|
|
</div>
|
|
{{*
|
|
<nav class="tabs">
|
|
<aside>
|
|
{{*:linkbutton class="main" label="Affichage vignette" href="equipment.html?prop=%s&cat_key=%s&fonc=inv2"|args:$selected_prop:$selected_category shape="list-ul"
|
|
{{:linkbutton class="main" label="Affichage Mobile" href="equipment.html?prop=%s&cat_key=%s&fonc=inv3"|args:$selected_prop:$selected_category shape="list-ul"}}
|
|
</aside>
|
|
</nav>
|
|
*}}
|
|
{{*
|
|
<div class="topnav" id="myTopnav">
|
|
<div class="dropdown">
|
|
<button class="dropbtn">Filtrer par catégorie
|
|
<i class="fa fa-caret-down"></i>
|
|
</button>
|
|
<div class="dropdown-content">
|
|
{{#foreach from=$cat_options key="key" item="value"}}
|
|
<a href={{$value.href}}>{{$value.label}}</a>
|
|
{{/foreach}}
|
|
</div>
|
|
</div>
|
|
<div class="dropdown">
|
|
<button class="dropbtn">Filtrer par appartenance
|
|
<i class="fa fa-caret-down"></i>
|
|
</button>
|
|
<div class="dropdown-content">
|
|
{{#foreach from=$prop_options key="key" item="value"}}
|
|
<a href={{$value.href}}>{{$value.label}}</a>
|
|
{{/foreach}}
|
|
</div>
|
|
</div>
|
|
<a href="javascript:void(0);" style="font-size:15px;" class="icon" onclick="myFunction()">☰</a>
|
|
</div>
|
|
*}}
|
|
|
|
|
|
{{*:debug catcond=$cat_condition*}}
|
|
{{*:debug propcond=$prop_condition*}}
|
|
|
|
{{#list module="equipment"
|
|
select="
|
|
$$.name AS 'Matériel' ;
|
|
(SELECT $$.name
|
|
FROM @TABLE as cat
|
|
WHERE cat.key = @TABLE.$$.category) AS 'Catégorie' ;
|
|
{{* $$.stock AS 'Stock' ;
|
|
(SELECT COALESCE($$.notowned, 0)) AS 'Temp' ;
|
|
(SELECT $$.stock + COALESCE($$.notowned, 0)) AS 'Total' ;
|
|
*}}
|
|
$$.out AS 'Sorti' ;
|
|
(SELECT $$.stock - $$.out) AS 'Disponible'
|
|
"
|
|
type="equipment"
|
|
where="$$.status <> 'archived' AND %s AND %s"|args:$cat_condition:$prop_condition
|
|
order=1
|
|
max=10
|
|
}}
|
|
{{:assign var=cat_name from=categories.%s|args:$category}}
|
|
<tr>
|
|
{{if $selected_prop == null}}
|
|
{{:assign prop=""}}
|
|
{{else}}
|
|
{{:assign prop="&prop=%s"|args:$selected_prop}}
|
|
{{/if}}
|
|
<td data-label="Lien">{{:link href="equipment.html?key=%s&fonc=voir"|args:$key label=$name}}</td>
|
|
<td data-label="Catégorie">{{$cat_name}}</td>
|
|
{{* <td class="num">{{$stock}}</td>
|
|
<td class="num">{{$col4}}</td>
|
|
<td class="num">{{$col5}}
|
|
<td class="num">{{$out}}</td>
|
|
<td class="num">{{$col7}}</td>
|
|
*}}
|
|
<td data-label="Sorti">{{$out}}</td>
|
|
<td data-label="Disponible">{{$col4}}</td>
|
|
<td class="actions">
|
|
{{*if $col4 >= 1}}
|
|
{{:linkbutton class="main" label="Réserver" href="equipment.html?key=%s&fonc=resa"|args:$key shape="plus"}}
|
|
{{else}}
|
|
{{:linkbutton class="main" label="Contacter nous!" href="contact.html?key=%s&fonc=resa"|args:$key shape="plus"}}
|
|
{{/if*}}
|
|
</td>
|
|
</tr>
|
|
{{* Sauvegarde chaque entrée dans une variable *}}
|
|
{{*:assign var="_equipment.%s"|args:$key name=$name catname=$cat_name out=$out dispo=$col4 href="equipment.html?key=%s&fonc=voir"|args:$key*}}
|
|
{{*
|
|
Charge les réservations acceptées/refusées/archivées de ce matériel depuis le module equipment.
|
|
Met a jour le status de la réservation dans le module web
|
|
TODO à supprimer
|
|
*}}
|
|
{{*#load module="equipment" type="reservation" equipement_id=$id assign="reservations"}}
|
|
{{*:debug reservations=$reservations}}
|
|
{{*:save key="%s"|args:$reservations.key status=$reservations.status|strval}}
|
|
{{else}}
|
|
{{*error: message="Pas de réservations pour ce matériel %s"|args:$equipment.id}}
|
|
{{/load*}}
|
|
{{else}}
|
|
<p class="block alert">Aucun matériel.</p>
|
|
{{/list}}
|
|
{{*
|
|
<script type="text/javascript">
|
|
(function () {
|
|
let table = document.querySelector("table[class=list]");
|
|
if (table != null) {
|
|
disableColumSort(table);
|
|
}
|
|
})();
|
|
|
|
function myFunction() {
|
|
var x = document.getElementById("myTopnav");
|
|
if (x.className === "topnav") {
|
|
x.className += " responsive";
|
|
} else {
|
|
x.className = "topnav";
|
|
}
|
|
}
|
|
</script>
|
|
*}} |