Files
equipment_resa/_web_inventory.html
T

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()">&#9776;</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>
*}}