{% extends "front/base.html.twig" %}
{% block title %}
{{ 'seo.directory_title' | trans }}
{% endblock %}
{% block seo %}
<meta name="description" content="{{ 'seo.directory_description' | trans }}">
{% endblock %}
{% block stylesheets %}
<style>
.form-check {
justify-content: flex-start;
}
</style>
{{ parent() }}
{{ encore_entry_link_tags('search') }}
{% endblock %}
{% form_theme form _self %}
{%- block choice_widget_expanded -%}
{%- for child in form %}
<div class="checkbox icheck-primary">
{{- form_widget(child) -}}
</div>
{% endfor -%}
{%- endblock choice_widget_expanded -%}
{%- block _hasLabels_widget -%}
<div class="checkbox icheck-primary">
{{- form_widget(form) -}}
</div>
{%- endblock -%}
{% block body %}
<section class="first-section search-page search-pro pb-0" id="pro-search">
<div class="container">
<div class="row justify-content-center">
<div class="col-md-12 search-col">
{{ form_start(form, {'attr': {'class': 'main-search'}}) }}
<div class="form-inline">
<div class="input-wrap">
<div class="input-group global">
<div class="input-group-prepend">
<i class="fas fa-user"></i>
</div>
{{ form_widget(form.name, {'attr': {'class': 'input-main-search'}}) }}
<div class="input-group-prepend hide-desktop">
<button class="btn toggle-filters-mobile" type="button">
<i class="fal fa-sliders-h"></i>
</button>
<button class="btn search-mobile-btn" type="submit">
<i class="far fa-search"></i>
</button>
</div>
</div>
<div class="search-dropdowns">
<div class="filters-header hide-desktop">
<span class="title">{{ 'global.filter' | trans }}</span>
<button class="btn close-filter" id="close-filter" type="button">
<i class="fal fa-times"></i>
</button>
</div>
<div class="filters-contain">
<div class="custom-dropdown-input short-input" id="pro-type-wrap">
<span class="custom-dropdown-label" id="pro-type-checkbox-label">{{ "directory.all" | trans }}</span>
<div class="custom-dropdown-content" id="pro-type-checkbox">
{{ form_widget(form.type) }}
</div>
</div>
<div class="custom-dropdown-input short-input" id="sport-wrap">
<span class="custom-dropdown-label" id="sport-checkbox-label">{{ "directory.sport" | trans }}</span>
<div class="custom-dropdown-content" id="sport-checkbox">
{{ form_widget(form.sports) }}
</div>
</div>
{% set countryField = form_widget(form.country) %}
{% set languagesField = form_widget(form.languages) %}
{% set hasLabelField = form_widget(form.hasLabels) %}
<div class="hide-desktop pro-others-filters-responsive">
<div class="custom-dropdown-input short-input" id="age-lowercase">
<span class="custom-dropdown-label">{{ "directory.country_of_activity" | trans }}</span>
<div class="custom-dropdown-content">
{{ countryField | raw }}
</div>
</div>
<div class="custom-dropdown-input short-input" id="age-lowercase">
<span class="custom-dropdown-label">{{ "directory.languages_spoken" | trans }}</span>
<div class="custom-dropdown-content">
{{ languagesField | raw }}
</div>
</div>
<div class="custom-dropdown-input short-input" id="age-lowercase">
<span class="custom-dropdown-label">{{ "directory.labels" | trans }}</span>
<div class="custom-dropdown-content">
{{ hasLabelField | raw }}
</div>
</div>
</div>
<div class="custom-dropdown-input short-input more-fields hide-mobile">
<span class="custom-dropdown-label">{{ "directory.more_criteria" | trans }}</span>
<div class="custom-dropdown-content">
<div class="accordion" id="accordionMoreFields">
<div class="card">
<div class="card-header" id="country-card">
<h5 class="mb-0">
<button class="btn btn-link collapsed" type="button" data-toggle="collapse" data-target="#collapseCountry" aria-expanded="false" aria-controls="collapseCountry">
{{ "directory.country_of_activity" | trans }}
</button>
</h5>
</div>
<div id="collapseCountry" class="collapse" aria-labelledby="country" data-parent="#accordionMoreFields">
<div class="card-body subcheck">
<div class="row py-1">
<div class="col-12">
{{ countryField | raw }}
</div>
</div>
</div>
</div>
</div>
<div class="card">
<div class="card-header" id="language">
<h5 class="mb-0">
<button class="btn btn-link collapsed" type="button" data-toggle="collapse" data-target="#collapseLanguage" aria-expanded="false" aria-controls="collapseLanguage">
{{ "directory.languages_spoken" | trans }}
</button>
</h5>
</div>
<div id="collapseLanguage" class="collapse" aria-labelledby="language" data-parent="#accordionMoreFields">
<div class="card-body subcheck">
{{ languagesField | raw }}
</div>
</div>
</div>
<div class="card">
<div class="card-header" id="has-labels">
<h5 class="mb-0">
<button class="btn btn-link collapsed" type="button" data-toggle="collapse" data-target="#collapseLabels" aria-expanded="false" aria-controls="collapseLanguage">
{{ "directory.labels" | trans }}
</button>
</h5>
</div>
<div id="collapseLabels" class="collapse" aria-labelledby="labels" data-parent="#accordionMoreFields">
<div class="card-body subcheck">
{{ hasLabelField | raw }}
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="hide-desktop filters-actions hide">
<a href="{{ path('courses') }}" class="btn btn-icon btn-reset">
<i class="fal fa-undo-alt"></i>
</a>
<button class="btn btn-main-search" type="submit">{{ "global.search" | trans }}</button>
</div>
</div>
<button class="btn btn-main-search hide-mobile" type="submit">
<i class="far fa-search"></i>
</button>
</div>
</div>
{{ form_end(form) }}
</div>
</div>
{% if criteria %}
<div class="row my-3">
<div class="col-12">
<div class="search-criteria reset-criteria">
<a href="{{ path('directory') }}" class="btn">{{ 'global.reset' | trans }}</a>
</div>
{% if criteria.name %}
<div class="search-criteria">
"{{ criteria.name }}"
<span class="delete-criteria" data-target="name">
<i class="fas fa-times"></i>
</span>
</div>
{% endif %}
{% if criteria.type %}
{% for type in criteria.type %}
<div class="search-criteria">
{{ ("global." ~ type) | trans | capitalize }}
{% if type == "coach" %}
{% set key = 0 %}
{% elseif type == "club" %}
{% set key = 1 %}
{% else %}
{% set key = 2 %}
{% endif %}
<span class="delete-criteria" data-target="type_{{ key }}">
<i class="fas fa-times"></i>
</span>
</div>
{% endfor %}
{% endif %}
{% if criteria.sports %}
{% for sport in criteria.sports %}
<div class="search-criteria">
{{ ("sport_name." ~ sport.slug) | trans }}
<span class="delete-criteria" data-target="sports_{{ sport.id }}">
<i class="fas fa-times"></i>
</span>
</div>
{% endfor %}
{% endif %}
{% if criteria.country %}
<div class="search-criteria">
{{ criteria.country | upper | countryName(app.request.locale) }}
<span class="delete-criteria" data-target="country" data-country-code="{{ criteria.country }}">
<i class="fas fa-times"></i>
</span>
</div>
{% endif %}
{% if criteria.languages %}
{% for language in criteria.languages %}
<div class="search-criteria">
{{ language }}
<span class="delete-criteria" data-target="languages_{{ language.id }}">
<i class="fas fa-times"></i>
</span>
</div>
{% endfor %}
{% endif %}
{% if criteria.hasLabels %}
<div class="search-criteria">
{{ "directory.hasLabels" | trans }}
<span class="delete-criteria" data-target="hasLabels" data-value="{{ criteria.hasLabels }}">
<i class="fas fa-times"></i>
</span>
</div>
{% endif %}
</div>
</div>
{% endif %}
</div>
</section>
<section class="search-result" id="help">
<div class="container">
<div class="row mb-5 pb-5">
{% if pros | length > 0 %}
{% for pro in pros %}
<div class="col-lg-4 col-xl-3 col-md-6 col-sm-6 col-12 mb-4">
{% include "front/pro/_pro-card.html.twig" %}
</div>
{% endfor %}
{% else %}
<div class="pro-box">
<p class="empty-pro-list">{{ "directory.no_pro" | trans }}</p>
</div>
{% endif %}
</div>
<div class="row d-flex justify-content-center">
{{ knp_pagination_render(pros, 'front/_partials/availabilities-pagination.html.twig') }}
</div>
</div>
</section>
{% endblock %}
{% block javascript %}
{{ parent() }}
{{ encore_entry_script_tags('search') }}
<script>
var globalWidth = $(window).width();
$(document).ready(function() {
if (globalWidth > 991) {
$(".pro-others-filters-responsive").remove();
}
else {
$(".more-fields").remove();
}
});
$('.delete-criteria').on('click', function () {
let id = $(this).data('target');
let input = $('#' + id);
if (id == "country") {
input.find('option[value="' + $(this).data('country-code') + '"').prop('selected', false);
}
else if (id == 'hasLabels') {
$('#hasLabels_1').prop('checked', '');
$('#hasLabels_0').prop('checked', 'checked');
}
else if (input.prop('type') == 'checkbox') {
input.prop('checked', false);
}
else {
input.val('');
}
$('.btn-main-search').click();
})
</script>
{% endblock %}