templates/front/course/_searchbar-section.html.twig line 1

Open in your IDE?
  1. <section class="first-section search-page search-course pb-0" id="course-search">
  2.     <div class="container">
  3.         <div class="row justify-content-center">
  4.             <div class="col-md-12 search-col">
  5.                 {{ form_start(form, {'attr': {'class': 'main-search'}}) }}
  6.                     <div class="form-inline">
  7.                         <div class="input-wrap">
  8.                             <div class="input-group global destination">
  9.                                 <div class="input-group-prepend">
  10.                                     <i class="fas fa-map-marker-alt"></i>
  11.                                 </div>
  12.                                 <input type="text" id="destination" autocomplete="off" placeholder="{{ 'form.select_destination' | trans }}" class="input-main-search form-control">
  13.                                 {{ form_widget(form.place) }}
  14.                                 <div class="input-group-prepend hide-desktop">
  15.                                     <button class="btn toggle-filters-mobile" type="button">
  16.                                         <i class="fal fa-sliders-h"></i>
  17.                                         {% if criteria and (criteria.place or criteria.sports or criteria.begin or criteria.ages or criteria.levels or criteria.languages or criteria.languages or criteria.hasLabels) %}
  18.                                         {% set countCriteria = 0 %}
  19.                                         {% if criteria.place %}
  20.                                             
  21.                                             {% set countCriteria = countCriteria + 1 %}
  22.                                         {% endif %}
  23.                                         {% if criteria.sports %}
  24.                                             {% set countCriteria = countCriteria + criteria.sports | length %}
  25.                                         {% endif %}
  26.                                         {% if criteria.begin %}
  27.                                             {% set countCriteria = countCriteria + 1 %}
  28.                                         {% endif %}
  29.                                         {% if criteria.ages %}
  30.                                             
  31.                                             {% set countCriteria = countCriteria + criteria.ages | length %}
  32.                                         {% endif %}
  33.                                         {% if criteria.levels %}
  34.                                             {% set countCriteria = countCriteria + criteria.levels | length %}
  35.                                         {% endif %}
  36.                                         {% if criteria.languages %}
  37.                                             {% set countCriteria = countCriteria + criteria.languages | length %}
  38.                                         {% endif %}
  39.                                         {% if criteria.hasLabels %}
  40.                                                 
  41.                                             {% set countCriteria = countCriteria + 1 %}
  42.                                         {% endif %}
  43.                                         <span class="criteria-count">{{ countCriteria }}</span>
  44.                                         {% endif %}
  45.                                     </button>
  46.                                     <button class="btn search-mobile-btn" type="submit">
  47.                                         <i class="far fa-search"></i>
  48.                                     </button>
  49.                                 </div>
  50.                             </div>
  51.                             <div class="search-dropdowns">
  52.                                 <div class="filters-header hide-desktop">
  53.                                     <span class="title">{{ 'global.filter' | trans }}</span>
  54.                                     <button class="btn close-filter" id="close-filter" type="button">
  55.                                         <i class="fal fa-times"></i>
  56.                                     </button>
  57.                                 </div>
  58.                                 <div class="filters-contain">
  59.                                     <div class="custom-dropdown-input short-input" id="sport-wrap">
  60.                                         <span class="custom-dropdown-label" id="sport-checkbox-label">{{ "directory.sport" | trans }}</span>
  61.                                         <div class="custom-dropdown-content" id="sport-checkbox">
  62.                                             {{ form_widget(form.sports) }}
  63.                                         </div>
  64.                                     </div>
  65.                                     <div class="custom-dropdown-input short-input" id="date-wrap">
  66.                                         <span class="custom-dropdown-label" id="date-input-label">
  67.                                             {{ "page_course_detail.from" | trans }}
  68.                                         </span>
  69.                                         <div class="custom-dropdown-content">
  70.                                             <div id="datepicker"></div>
  71.                                             {{ form_widget(form.begin) }}
  72.                                         </div>
  73.                                     </div>
  74.                                     <div class="custom-dropdown-input short-input" id="age-lowercase">
  75.                                         <span class="custom-dropdown-label">{{ "trainee.age" | trans }}</span>
  76.                                         <div class="custom-dropdown-content" id="age-checkbox">
  77.                                             {{ form_widget(form.ages) }}
  78.                                         </div>
  79.                                     </div>
  80.                                     {% set levelsField = form_widget(form.levels) %}
  81.                                     {% set langagesField = form_widget(form.languages) %}
  82.                                     {% set hasLabelField = form_widget(form.hasLabels) %}
  83.                                     <div class="hide-desktop course-others-filters-responsive">
  84.                                         <div class="custom-dropdown-input short-input" id="level-checkbox-wrap">
  85.                                             <span class="custom-dropdown-label">{{ "page_course_detail.level" | trans }}</span>
  86.                                             <div class="custom-dropdown-content" id="level-checkbox">
  87.                                                 {{ levelsField | raw }}
  88.                                             </div>
  89.                                         </div>
  90.                                         <div class="custom-dropdown-input short-input" id="language-checkbox-wrap">
  91.                                             <span class="custom-dropdown-label">{{ "directory.languages_spoken" | trans }}</span>
  92.                                             <div class="custom-dropdown-content" id="language-checkbox">
  93.                                                 {{ langagesField | raw }}
  94.                                             </div>
  95.                                         </div>
  96.                                         <div class="custom-dropdown-input short-input" id="label-choice-wrap">
  97.                                             <span class="custom-dropdown-label">{{ "directory.labels" | trans }}</span>
  98.                                             <div class="custom-dropdown-content">
  99.                                                 {{ hasLabelField | raw }}
  100.                                             </div>
  101.                                         </div>
  102.                                     </div>
  103.                                     <div class="custom-dropdown-input short-input more-fields hide-mobile">
  104.                                         <span class="custom-dropdown-label">{{ "directory.more_criteria" | trans }}</span>
  105.                                         <div class="custom-dropdown-content">
  106.                                             <div class="accordion" id="accordionMoreFields">
  107.                                                 <div class="card">
  108.                                                     <div class="card-header" id="level">
  109.                                                         <h5 class="mb-0">
  110.                                                             <button class="btn btn-link collapsed" type="button" data-toggle="collapse" data-target="#collapseLevel" aria-expanded="false" aria-controls="collapseLevel">
  111.                                                                 {{ "page_course_detail.level" | trans }}
  112.                                                             </button>
  113.                                                         </h5>
  114.                                                     </div>
  115.                                                     <div id="collapseLevel" class="collapse" aria-labelledby="level" data-parent="#accordionMoreFields">
  116.                                                         <div class="card-body subcheck" id="level-checkbox">
  117.                                                             {{ levelsField | raw }}
  118.                                                         </div>
  119.                                                     </div>
  120.                                                 </div>
  121.                                                 <div class="card">
  122.                                                     <div class="card-header" id="language">
  123.                                                         <h5 class="mb-0">
  124.                                                             <button class="btn btn-link collapsed" type="button" data-toggle="collapse" data-target="#collapseLanguage" aria-expanded="false" aria-controls="collapseLanguage">
  125.                                                                 {{ "directory.languages_spoken" | trans }}
  126.                                                             </button>
  127.                                                         </h5>
  128.                                                     </div>
  129.                                                     <div id="collapseLanguage" class="collapse" aria-labelledby="language" data-parent="#accordionMoreFields">
  130.                                                         <div class="card-body subcheck" id="language-checkbox">
  131.                                                             {{ langagesField | raw }}
  132.                                                         </div>
  133.                                                     </div>
  134.                                                 </div>
  135.                                                 <div class="card">
  136.                                                     <div class="card-header" id="has-labels">
  137.                                                         <h5 class="mb-0">
  138.                                                             <button class="btn btn-link collapsed" type="button" data-toggle="collapse" data-target="#collapseLabels" aria-expanded="false" aria-controls="collapseLanguage">
  139.                                                                 {{ "directory.labels" | trans }}
  140.                                                             </button>
  141.                                                         </h5>
  142.                                                     </div>
  143.                                                     <div id="collapseLabels" class="collapse" aria-labelledby="labels" data-parent="#accordionMoreFields">
  144.                                                         <div class="card-body subcheck">
  145.                                                             {{ hasLabelField | raw }}
  146.                                                         </div>
  147.                                                     </div>
  148.                                                 </div>
  149.                                             </div>
  150.                                         </div>
  151.                                     </div>
  152.                                     {# filter applied responsive #}
  153.                                     {% if criteria %}
  154.                                     <div class="row applied-filters hide-desktop">
  155.                                         <div class="col-12">
  156.                                             {% if criteria.place %}
  157.                                                 <div class="search-criteria">
  158.                                                     <span class="place-criteria"></span>
  159.                                                     <span class="delete-criteria" data-target="place">
  160.                                                         <i class="fas fa-times"></i>
  161.                                                     </span>
  162.                                                 </div>
  163.                                             {% endif %}
  164.                                             {% if criteria.sports %}
  165.                                                 {% for sport in criteria.sports %}
  166.                                                     <div class="search-criteria">
  167.                                                         {{ ("sport_name." ~ sport.slug) | trans }}
  168.                                                         <span class="delete-criteria" data-target="sports_{{ sport.id }}">
  169.                                                             <i class="fas fa-times"></i>
  170.                                                         </span>
  171.                                                     </div>
  172.                                                 {% endfor %}
  173.                                             {% endif %}
  174.                                             {% if criteria.begin %}
  175.                                                 <div class="search-criteria">
  176.                                                     {{ criteria.begin }}
  177.                                                     <span class="delete-criteria" data-target="begin">
  178.                                                         <i class="fas fa-times"></i>
  179.                                                     </span>
  180.                                                 </div>
  181.                                             {% endif %}
  182.                                             {% if criteria.ages %}
  183.                                                 {% for age in criteria.ages %}
  184.                                                     <div class="search-criteria">
  185.                                                         {{ ("age_name." ~ age.slug) | trans }}
  186.                                                         <span class="delete-criteria" data-target="ages_{{ age.id }}">
  187.                                                             <i class="fas fa-times"></i>
  188.                                                         </span>
  189.                                                     </div>
  190.                                                 {% endfor %}
  191.                                             {% endif %}
  192.                                             {% if criteria.levels %}
  193.                                                 {% for level in criteria.levels %}
  194.                                                     <div class="search-criteria">
  195.                                                         {{ ("level_name." ~ level.slug) | trans | capitalize }}
  196.                                                         <span class="delete-criteria" data-target="levels_{{ level.id }}">
  197.                                                             <i class="fas fa-times"></i>
  198.                                                         </span>
  199.                                                     </div>
  200.                                                 {% endfor %}
  201.                                             {% endif %}
  202.                                             {% if criteria.languages %}
  203.                                                 {% for language in criteria.languages %}
  204.                                                     <div class="search-criteria">
  205.                                                         {{ language }}
  206.                                                         <span class="delete-criteria" data-target="languages_{{ language.id }}">
  207.                                                             <i class="fas fa-times"></i>
  208.                                                         </span>
  209.                                                     </div>
  210.                                                 {% endfor %}
  211.                                             {% endif %}
  212.                                             {% if criteria.hasLabels %}
  213.                                                     <div class="search-criteria">
  214.                                                     {{ "directory.hasLabels" | trans }}
  215.                                                     <span class="delete-criteria" data-target="hasLabels" data-value="{{ criteria.hasLabels }}">
  216.                                                         <i class="fas fa-times"></i>
  217.                                                     </span>
  218.                                                     </div>
  219.                                             {% endif %}
  220.                                         </div>
  221.                                     </div>
  222.                                     {% endif %}
  223.                                     
  224.                                 </div>
  225.                                 <div class="hide">
  226.                                     {{ form_row(form.search) }}
  227.                                 </div>
  228.                                 
  229.                                 <button class="btn btn-main-search hide-mobile" type="submit">
  230.                                     <i class="far fa-search"></i>
  231.                                 </button>
  232.                                 <div class="hide-desktop filters-actions hide">
  233.                                     <a href="{{ path('courses') }}" class="btn btn-icon btn-reset">
  234.                                         <i class="fal fa-undo-alt"></i>
  235.                                     </a>
  236.                                     <button class="btn btn-icon add-alert" data-toggle="modal" type="button" data-target="#add-alert">
  237.                                         <i class="fal fa-bell"></i>
  238.                                     </button>
  239.                                     <button class="btn btn-main-search" type="submit">{{ "global.search" | trans }}</button>
  240.                                 </div>
  241.                             </div>
  242.                         </div>
  243.                         
  244.                         {% if criteria and criteria.place %}
  245.                         
  246.                         <div class="search-toggle search-toggle-responsive">
  247.                             <a href="{{ path('courses', app.request.query.all | merge({'view': 'list'})) }}" class="view-type {% if view == 'list' %}active{% endif %}"> 
  248.                                 <i class="fa fa-th"></i>
  249.                             </a>
  250.                             <a href="{{ path('courses', app.request.query.all | merge({'view': 'map'})) }}" class="view-type {% if view == 'map' %}active{% endif %}">
  251.                                 <i class="fas fa-map"></i>
  252.                             </a>
  253.                         </div>    
  254.                         {% endif %}        
  255.                         <button type="button" class="btn btn-create-alert hide-mobile add-alert" data-toggle="modal" data-target="#add-alert" id="add-alert-btn">
  256.                             <i class="fal fa-bell"></i>
  257.                         </button>
  258.                         <!-- Modal alert -->
  259.                         <div class="modal fade" id="add-alert" tabindex="-1" role="dialog" aria-labelledby="add-alert" aria-hidden="true">
  260.                             <div class="modal-dialog modal-dialog-centered" role="document">
  261.                                 <div class="modal-content">
  262.                                     <div class="modal-body">
  263.                                         <div class="row">
  264.                                             <div class="col-lg-12">
  265.                                                 <h5 class="modal-title">{{ 'courses.create_alert' | trans }}</h5>
  266.                                                 <button type="button" class="close" data-dismiss="modal" aria-label="Close">
  267.                                                     <i class="fal fa-times"></i>
  268.                                                 </button>
  269.                                             </div>
  270.                                         </div>
  271.                                         {% if is_granted('ROLE_TRAINEE') %}
  272.                                             <div class="row" id="my-research-title">
  273.                                                 <div class="col-12">
  274.                                                     <h6 class="text-center">{{ 'courses.my_research' | trans }}</h6>
  275.                                                 </div>
  276.                                             </div>
  277.                                             
  278.                                             <div class="row">
  279.                                                 <div class="badges" id="badges">
  280.                                                     <div class="col-lg-12">
  281.                                                         <div class="course-box">
  282.                                                             <p class="empty-research">{{ "directory.must_search_criteria" | trans }}</p>
  283.                                                         </div>
  284.                                                     </div>
  285.                                                 </div>
  286.                                             </div>
  287.                                             <div class="row mt-3" id="my-research-submit">
  288.                                                 <button class="col-md-12 btn main-btn btn-sm w-auto create-alert" type="submit">
  289.                                                     {{ 'courses.add_alert' | trans }}
  290.                                                 </button>
  291.                                             </div>
  292.                                         {% elseif is_granted('ROLE_PRO') %}
  293.                                             <div class="col-lg-12">
  294.                                                 <div class="course-box">
  295.                                                     <p class="empty-research">{{ "directory.must_logged_trainee_alert" | trans }}</p>
  296.                                                 </div>
  297.                                             </div>
  298.                                         {% else %}
  299.                                             <div class="col-lg-12">
  300.                                                 <div class="course-box">
  301.                                                     <p class="empty-research">{{ "directory.must_logged" | trans }}</p>
  302.                                                 </div>
  303.                                             </div>
  304.                                             <div class="row justify-content-center">
  305.                                                 <a href="{{ path('user_login', {'type': 'trainee'}) }}" class="btn btn-menu btn-menu-trainee m-2">{{ "global.login" | trans }}</a>    
  306.                                                 <a href="{{ path('trainee_registration') }}" class="btn btn-menu btn-login-pro m-2">{{ "global.signup" | trans }}</a>
  307.                                             </div>
  308.                                         {% endif %}
  309.                                         
  310.                                     </div>
  311.                                 </div>
  312.                             </div>
  313.                         </div>
  314.                     </div>
  315.                 {{ form_end(form) }}
  316.             </div>
  317.         </div>
  318.         {% if criteria %}
  319.         <div class="row applied-filters hide-mobile">
  320.             <div class="col-12">
  321.                 {% if criteria.place %}
  322.                 <div class="search-toggle">
  323.                     <a href="{{ path('courses', app.request.query.all | merge({'view': 'list'})) }}" class="view-type {% if view == 'list' %}active{% endif %}"> 
  324.                         <i class="fa fa-th"></i>
  325.                     </a>
  326.                     <a href="{{ path('courses', app.request.query.all | merge({'view': 'map'})) }}" class="view-type {% if view == 'map' %}active{% endif %}">
  327.                         <i class="fas fa-map"></i>
  328.                     </a>
  329.                 </div>
  330.                 {% endif %}
  331.                 <div class="search-criteria reset-criteria">
  332.                     <a href="{{ path('courses') }}" class="btn">{{ 'global.reset' | trans }}</a>
  333.                 </div>
  334.                 {% if criteria.place %}
  335.                     <div class="search-criteria">
  336.                         <span class="place-criteria"></span>
  337.                         <span class="delete-criteria" data-target="place">
  338.                             <i class="fas fa-times"></i>
  339.                         </span>
  340.                     </div>
  341.                 {% endif %}
  342.                 {% if criteria.sports %}
  343.                     {% for sport in criteria.sports %}
  344.                         <div class="search-criteria">
  345.                             {{ ("sport_name." ~ sport.slug) | trans }}
  346.                             <span class="delete-criteria" data-target="sports_{{ sport.id }}">
  347.                                 <i class="fas fa-times"></i>
  348.                             </span>
  349.                         </div>
  350.                     {% endfor %}
  351.                 {% endif %}
  352.                 {% if criteria.begin %}
  353.                     <div class="search-criteria">
  354.                         {{ criteria.begin }}
  355.                         <span class="delete-criteria" data-target="begin">
  356.                             <i class="fas fa-times"></i>
  357.                         </span>
  358.                     </div>
  359.                 {% endif %}
  360.                 {% if criteria.ages %}
  361.                     {% for age in criteria.ages %}
  362.                         <div class="search-criteria">
  363.                             {{ ("age_name." ~ age.slug) | trans }}
  364.                             <span class="delete-criteria" data-target="ages_{{ age.id }}">
  365.                                 <i class="fas fa-times"></i>
  366.                             </span>
  367.                         </div>
  368.                     {% endfor %}
  369.                 {% endif %}
  370.                 {% if criteria.levels %}
  371.                     {% for level in criteria.levels %}
  372.                         <div class="search-criteria">
  373.                             {{ ("level_name." ~ level.slug) | trans | capitalize }}
  374.                             <span class="delete-criteria" data-target="levels_{{ level.id }}">
  375.                                 <i class="fas fa-times"></i>
  376.                             </span>
  377.                         </div>
  378.                     {% endfor %}
  379.                 {% endif %}
  380.                 {% if criteria.languages %}
  381.                     {% for language in criteria.languages %}
  382.                         <div class="search-criteria">
  383.                             {{ language }}
  384.                             <span class="delete-criteria" data-target="languages_{{ language.id }}">
  385.                                 <i class="fas fa-times"></i>
  386.                             </span>
  387.                         </div>
  388.                     {% endfor %}
  389.                 {% endif %}
  390.                 {% if criteria.hasLabels %}
  391.                         <div class="search-criteria">
  392.                         {{ "directory.hasLabels" | trans }}
  393.                         <span class="delete-criteria" data-target="hasLabels" data-value="{{ criteria.hasLabels }}">
  394.                             <i class="fas fa-times"></i>
  395.                         </span>
  396.                         </div>
  397.                 {% endif %}
  398.             </div>
  399.         </div>
  400.         {% endif %}
  401.     </div>
  402. </section>