122 lines
5.1 KiB
HTML
122 lines
5.1 KiB
HTML
{{:assign var="custom_css." value="./style.css"}}
|
||
{{:assign var="custom_css." value="/content.css"}}
|
||
|
||
{{:admin_header title="Vélos à vendre" custom_css=$custom_css current="module_velos_a_vendre"}}
|
||
|
||
|
||
{{#select DISTINCT type FROM plugin_stock_velos ;}}
|
||
{{:assign var='types.' value=$type}}
|
||
{{:assign var='index' value=$types|count}}
|
||
{{:assign var='types_index.%s'|args:$type value='%d-1'|math:$index}}
|
||
{{/select}}
|
||
{{#select DISTINCT genre FROM plugin_stock_velos ;}}
|
||
{{:assign var='genres.' value=$genre}}
|
||
{{:assign var='index' value=$genres|count}}
|
||
{{:assign var='genres_index.%s'|args:$genre value='%d-1'|math:$index}}
|
||
{{/select}}
|
||
{{#select DISTINCT roues FROM plugin_stock_velos ;}}
|
||
{{:assign var='rouess.' value=$roues}}
|
||
{{:assign var='index' value=$rouess|count}}
|
||
{{:assign var='roues_index.%s'|args:$roues value='%d-1'|math:$index}}
|
||
{{/select}}
|
||
{{:assign var='roues' value=$rouess}}
|
||
|
||
|
||
|
||
<div class="filters">
|
||
<fieldset>
|
||
<legend>Filtrer les vélos</legend>
|
||
<dl>
|
||
{{:input name="type" type="select" label="Type de vélo" options=$types default_empty="Tous les types de vélo"}}
|
||
</dl>
|
||
<dl>
|
||
{{:input name="genre" type="select" label="Genre de cadre" options=$genres default_empty="Tous les genres de cadre"}}
|
||
</dl>
|
||
<dl>
|
||
{{:input name="roues" type="select" label="Taille de roue" options=$roues default_empty="Toutes les tailles de roue"}}
|
||
</dl>
|
||
</fieldset>
|
||
</div>
|
||
|
||
<style id='bike-hide'></style>
|
||
|
||
<div class="bike-list">
|
||
{{#select id, etiquette, type, genre, roues, couleur, prix, modele, date_entree FROM plugin_stock_velos WHERE raison_sortie IS NULL AND prix > 0 ORDER BY date_entree DESC;}}
|
||
{{:assign taille=$roues|truncate:2:"":false}}
|
||
{{:assign var='bike_type_index' from='types_index.%s'|args:$type}}
|
||
{{:assign var='bike_genre_index' from='genres_index.%s'|args:$genre}}
|
||
{{:assign var='bike_roues_index' from='roues_index.%s'|args:$roues}}
|
||
<div class="container" type="{{$bike_type_index}}" genre="{{$bike_genre_index}}" roues="{{$bike_roues_index}}">
|
||
<div class="image-wrapper">
|
||
{{#select name, path FROM files WHERE parent = {"ext/p/stock_velos/public/%s"|args:$id} ;}}
|
||
<a href="{{$root_url}}{{$path}}" target="_dialog">
|
||
<img src="{{$root_url}}{{$path}}?150px" class="image">
|
||
</a>
|
||
{{else}}
|
||
<div class="placeholder" style="background-image: url({{$config.files.logo}});">
|
||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="-50 0 740 512" class="image"><!--!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.--><path d="M312 32c-13.3 0-24 10.7-24 24s10.7 24 24 24l25.7 0 34.6 64-149.4 0-27.4-38C191 99.7 183.7 96 176 96l-56 0c-13.3 0-24 10.7-24 24s10.7 24 24 24l43.7 0 22.1 30.7-26.6 53.1c-10-2.5-20.5-3.8-31.2-3.8C57.3 224 0 281.3 0 352s57.3 128 128 128c65.3 0 119.1-48.9 127-112l49 0c8.5 0 16.3-4.5 20.7-11.8l84.8-143.5 21.7 40.1C402.4 276.3 384 312 384 352c0 70.7 57.3 128 128 128s128-57.3 128-128s-57.3-128-128-128c-13.5 0-26.5 2.1-38.7 6L375.4 48.8C369.8 38.4 359 32 347.2 32L312 32zM458.6 303.7l32.3 59.7c6.3 11.7 20.9 16 32.5 9.7s16-20.9 9.7-32.5l-32.3-59.7c3.6-.6 7.4-.9 11.2-.9c39.8 0 72 32.2 72 72s-32.2 72-72 72s-72-32.2-72-72c0-18.6 7-35.5 18.6-48.3zM133.2 368l65 0c-7.3 32.1-36 56-70.2 56c-39.8 0-72-32.2-72-72s32.2-72 72-72c1.7 0 3.4 .1 5.1 .2l-24.2 48.5c-9 18.1 4.1 39.4 24.3 39.4zm33.7-48l50.7-101.3 72.9 101.2-.1 .1-123.5 0zm90.6-128l108.5 0L317 274.8 257.4 192z"/></svg>
|
||
</div>
|
||
{{/select}}
|
||
</div>
|
||
<span class="label">{{$etiquette}}</span>
|
||
<div class="properties">
|
||
<ul>
|
||
<li class="date-entree">entré en stock {{$date_entree|relative_date}} </li>
|
||
<li class="numero-unique">numéro unique : {{$id|intval}} </li>
|
||
|
||
<li>Type : {{$type}}</li>
|
||
<li>Taille : {{$roues}}</li>
|
||
<li>Cadre : {{$genre}}</li>
|
||
<li>Modèle : {{$modele}}</li>
|
||
|
||
<li>Prix : {{$prix}} €</li>
|
||
</ul>
|
||
</div>
|
||
</div>
|
||
{{else}}
|
||
Aucun vélo n'est à vendre, revenez plus tard.
|
||
{{/select}}
|
||
</div>
|
||
|
||
|
||
|
||
<script type="text/javascript">
|
||
function set_toggle_hide(input_id) {
|
||
console.log(input_id);
|
||
document.getElementById(input_id).addEventListener('change', function() {
|
||
v_type = document.getElementById('f_type').value
|
||
v_genre = document.getElementById('f_genre').value
|
||
v_roues = document.getElementById('f_roues').value
|
||
console.log(v_type, v_genre, v_roues);
|
||
|
||
|
||
css = document.getElementById("bike-hide")
|
||
css.innerHTML = ""
|
||
if (v_type) {
|
||
css.innerHTML += `
|
||
.container:not([type="${v_type}"]){
|
||
display:none;
|
||
}
|
||
`;
|
||
}
|
||
if (v_genre) {
|
||
css.innerHTML += `
|
||
.container:not([genre="${v_genre}"]){
|
||
display:none;
|
||
}
|
||
`;
|
||
}
|
||
if (v_roues) {
|
||
css.innerHTML += `
|
||
.container:not([roues="${v_roues}"]){
|
||
display:none;
|
||
}
|
||
`;
|
||
}
|
||
});
|
||
}
|
||
set_toggle_hide('f_type')
|
||
set_toggle_hide('f_genre')
|
||
set_toggle_hide('f_roues')
|
||
|
||
</script> |