{% extends 'base.html.twig' %}
{# ============================================ #}
{% set selectedclub = app.session.get('club-selected') %}
{% block title %}
{% if selectedclub is defined and selectedclub.uuid is defined %}
{{ selectedclub.name }} -
{% endif %}
Cénacle Rémi Mollet
{% endblock %}
{# ============================================ #}
{% block stylesheets %}
<link rel="stylesheet" href="{{ app.request.baseUrl }}/assets/dashboard/dashboard.css">
<link rel="stylesheet" href="{{ app.request.baseUrl }}/assets/menu/menu.css">
<link rel="stylesheet" href="{{ app.request.baseUrl }}/assets/footer/footer.css">
<link rel="preconnect" href="https://fonts.gstatic.com">
<link href="https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,300;0,400;0,500;0,600;1,400;1,500;1,600&display=swap" rel="stylesheet">
<link href="https://fonts.googleapis.com/css2?family=Josefin+Sans:wght@600;700&display=swap" rel="stylesheet">
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap@4.6.0/dist/css/bootstrap.min.css" integrity="sha384-B0vP5xmATw1+K9KRQjQERJvTumQW0nPEzvF6L/Z6nronJ3oUOFUFpCjEUQouq2+l" crossorigin="anonymous">
<link rel="stylesheet" href="{{ app.request.baseUrl }}/assets/home/search-city.css">
{% block stylesheets2 %}{% endblock %}
{% endblock %}
{# ============================================ #}
{% block javascripts %}{% endblock %}
{# ============================================ #}
{% block betweenheadandbody %}
<script id="search-city-item-template" type="text/x-handlebars-template">
<div>{{ '{{ name }} ({{ zipcode }})' }}</div>
</script>
{% endblock %}
{# ============================================ #}
{% block switchLanguageButton %}
<div class="language">
<label class="toggle">
<input type="checkbox" id="language" {% if app.request.locale == 'en' %}checked{% endif %}>
<span class="toggle-switch"></span>
<div class="fr"></div>
<div class="en"></div>
</label>
</div>
{% endblock %}
{% block searchclub %}
{# Barre de recherche club #}
<div class="search-club">
<div class="first-line" id="gotoclubsearchbtn">
<h4>rechercher un club</h4>
<div class="toggle-btn">
<i class="fas fa-arrow-circle-right"></i>
<i class="fas fa-times"></i>
</div>
</div>
<div class="second-line">
{# search country / city #}
<label for="country"></label>
<select name="pays" id="pays">
<option label="France Métropolitaine" value="France"></option>
{#<option label="Guyane" value="guyane"></option>
<option label="Suisse" value="suisse"></option>
<option label="Hollande" value="hollande"></option>
<option label="Canada" value="Canada"></option>#}
</select>
<label for="ville"></label>
<div>
<input type="text" class="form-control typeahead" name="ville" id="ville" placeholder="Renseigner une ville" autocomplete="off">
</div>
{# rayon city #}
<p>Rayon</p>
<div class="rayon">
<input type="range" min="1" max="25" step="1" value="5" id="slider">
<div id="selector">
<div id="selectValue"></div>
</div>
</div>
<div class="btn" id="clubsearchbtn"><a href="#">rechercher</a></div>
</div>
</div>
{% endblock %}
{% block searchclubjs %}
<script src="{{ app.request.baseUrl }}/vendor/typeahead/typeahead.bundle.js"></script>
<script src="{{ app.request.baseUrl }}/vendor/handlebars/handlebars.min-v4.7.7.js"></script>
{# JS rayon km + autocompletion ville #}
<script>
var slider = document.getElementById("slider");
var selector = document.getElementById("selector");
var selectValue = document.getElementById("selectValue");
var zipcodeSelected;
selectValue.innerHTML = slider.value;
slider.oninput = function(){
selectValue.innerHTML = slider.value;
selector.style.left = this.value + " km";
}
var searchCityItemTemplate = Handlebars.compile($("#search-city-item-template").html());
$(document).ready(function() {
function getDisplayName(result) {
//console.log("getDisplayName", result);
return result.name + ' (' + result.zipcode + ')';
}
var bloodhound = new Bloodhound({
datumTokenizer: Bloodhound.tokenizers.whitespace,
queryTokenizer: Bloodhound.tokenizers.whitespace,
remote: {
url: "{{ app.request.baseUrl }}/api/city?q=%QUERY",
prepare: function (query, settings) {
settings.url = settings.url.replace('%QUERY', query);
//console.log("Search url: " + settings.url);
return settings;
}
}
});
bloodhound.initialize();
$('#ville').typeahead({
hint: true,
highlight: true,
minLength: 1
},
{
limit: 20,
source: bloodhound,
display: getDisplayName,
templates: {
suggestion: function(result) {
return searchCityItemTemplate(result);
}
}
});
$('#ville').focus();
$('#ville').bind('typeahead:select', function(ev, result) {
var element = result.element;
console.log("search select", result.zipcode, slider.value);
zipcodeSelected = result.zipcode;
// window.location = '{{ app.request.baseUrl }}/v2/view-grid/' + element.name;
});
$('#ville').on('keypress',function(e) {
if(e.which == 13) {
goToSearchClub();
}
});
$('#clubsearchbtn').click(function() {
goToSearchClub();
});
$('#gotoclubsearchbtn').click(function() {
window.location = '{{ app.request.baseUrl }}/club';
});
});
function goToSearchClub() {
if(zipcodeSelected && zipcodeSelected != '') {
window.location = '{{ app.request.baseUrl }}/club?zc=' + zipcodeSelected + '&d=' + slider.value;
}
}
</script>
{% endblock %}
{# ============================================ #}
{% block body %}
{{ render(controller('App\\Controller\\MenuController::viewMenu')) }}
<!-- Button top -->
<div class="top-button">
<i class="fas fa-arrow-up"></i>
</div>
{% block dashboardcontent %}{% endblock %}
{{ render(controller('App\\Controller\\FooterController::viewFooter')) }}
{# JS Bootstrap #}
<script src="https://code.jquery.com/jquery-3.5.1.min.js" integrity="sha256-9/aliU8dGd2tb6OSsuzixeV4y/faTqgFtohetphbbj0=" crossorigin="anonymous"></script>
<script src="https://unpkg.com/@popperjs/core@2"></script>
<script src="https://cdn.jsdelivr.net/npm/bootstrap@4.6.0/dist/js/bootstrap.bundle.min.js" integrity="sha384-Piv4xVNRyMGpqkS2by6br4gNJ7DXjqk09RmUpJ8jgGtD7zP9yug3goQfGII0yAns" crossorigin="anonymous"></script>
{# Link for icons #}
<script src="https://kit.fontawesome.com/297127ae03.js" crossorigin="anonymous"></script>
{# JS for menu & scroll #}
<script src="{{ app.request.baseUrl }}/assets/menu/menu.js"></script>
<script src="{{ app.request.baseUrl }}/assets/search-club/search-club.js"></script>
<script src="{{ app.request.baseUrl }}/assets/topbutton.js"></script>
<script src="{{ app.request.baseUrl }}/assets/dashboard/dashboard.js"></script>
{% block javascripts_end_body %}{% endblock %}
{% endblock %}