templates/front/exam/index.html.twig line 1

  1. {% extends "front/base.html.twig" %}
  2. {% block title %} - Courses{% endblock %}
  3. {% block script %}
  4.     
  5. {% endblock %}
  6. {% block mainContent %}
  7.     
  8.     <section class="bg-dark align-items-center d-flex" style="background:url({{ asset('assets/images/pattern/04.png') }}) no-repeat center center; background-size:cover;">
  9.         <!-- Main banner background image -->
  10.         <div class="container">
  11.             <div class="row">
  12.                 <div class="col-12">
  13.                     <!-- Title -->
  14.                     <h1 class="text-white">{% trans %}EXAMS_KEY{% endtrans %}</h1>
  15.                     <!-- Breadcrumb -->
  16.                     <div class="d-flex">
  17.                         <nav aria-label="breadcrumb">
  18.                             <ol class="breadcrumb breadcrumb-dark breadcrumb-dots mb-0">
  19.                                 <li class="breadcrumb-item"><a href="{{ url("app_front") }}">{% trans %}HOME_KEY{% endtrans %}</a></li>
  20.                                 <li class="breadcrumb-item active" aria-current="page">{% trans %}EXAMS_KEY{% endtrans %}</li>
  21.                             </ol>
  22.                         </nav>
  23.                     </div>
  24.                 </div>
  25.             </div>
  26.         </div>
  27.     </section>
  28.     
  29.     <!-- Page content START -->
  30.     <section class="pb-0 py-sm-5">
  31.         <div class="container">
  32.             <!-- Title and select START -->
  33.             <div class="row g-3 align-items-center mb-4">
  34.                 {% if exams.getTotalItemCount %}
  35.                 <!-- Content -->
  36.                 <div class="col-md-5">
  37.                     <h4 class="mb-0">Showing {{ ((exams.getCurrentPageNumber - 1) * exams.getItemNumberPerPage) + 1 }} to {{ exams.getItemNumberPerPage * exams.getCurrentPageNumber }} of {{exams.getTotalItemCount}} result</h4>
  38.                 </div>
  39.                 {% endif %}
  40.                 <!-- Select option -->
  41.                 <div class="col-md-7">
  42.                     <div class="row g-3 align-items-center justify-content-md-end me-auto">
  43.                         <!-- Advanced filter responsive toggler START -->
  44.                         <div class="col-4 text-md-end">
  45.                             <button class="btn btn-primary mb-0 d-xl-none" type="button" data-bs-toggle="offcanvas" data-bs-target="#offcanvasSidebar" aria-controls="offcanvasSidebar">
  46.                                 <i class="fas fa-sliders-h me-1"></i> {% trans %}SHOWFILTER_KEY{% endtrans %}
  47.                             </button>
  48.                         </div>
  49.                         <!-- Advanced filter responsive toggler END -->
  50.                     </div>
  51.                 </div>
  52.             </div>
  53.             <!-- Title and select END -->
  54.             <div class="row">
  55.                 <!-- Main content START -->
  56.                 <div class="col-xl-9 col-xxl-8">
  57.                     <!-- Course list START -->
  58.                     <div class="row g-4">
  59.                         {% for exam in exams %}
  60.                         <!-- Card list START -->
  61.                         {{ include('front/exam/_item.html.twig') }}
  62.                         <!-- Card list END -->
  63.                         {% else %}
  64.                             <div class="text-center p-4 mb-5 mt-5">
  65.                                 <h2>{% trans %}EMPTY_KEY{% endtrans %}</h2>
  66.                             </div>
  67.                         {% endfor %}
  68.                     </div>
  69.                     <!-- Course list END -->
  70.                     <!-- Pagination START -->
  71.                     <div class="col-12">
  72.                         {{ knp_pagination_render(exams) }}
  73.                     </div>
  74.                     <!-- Pagination END -->
  75.                 </div>
  76.                 <!-- Main content END -->
  77.                 <!-- Right sidebar START -->
  78.                 <div class="col-lg-3 col-xxl-4">
  79.                     <!-- Responsive offcanvas body START -->
  80.                     <div class="offcanvas-xl offcanvas-end" tabindex="-1" id="offcanvasSidebar">
  81.                         <div class="offcanvas-header bg-light">
  82.                             <h5 class="offcanvas-title" id="offcanvasNavbarLabel">{% trans %}ADVANCEFILTER_KEY{% endtrans %}</h5>
  83.                             <button  type="button" class="btn-close" data-bs-dismiss="offcanvas" data-bs-target="#offcanvasSidebar" aria-label="Close"></button>
  84.                         </div>
  85.                         <div class="offcanvas-body p-3 p-xl-0">
  86.                             <form id="filter-form">
  87.                                 <!-- Category START -->
  88.                                 <div class="card card-body shadow p-4 mb-4">
  89.                                     <!-- Title -->
  90.                                     <h4 class="mb-4">{% trans %}CATEGORY_KEY{% endtrans %}</h4>
  91.                                     <div class="row">
  92.                                         <!-- Category group -->
  93.                                         <div class="col-xxl-6">
  94.                                             <div class="form-check">
  95.                                                 <input {{ sCategory is same as null ? 'checked' : '' }} required name="category" class="form-check-input" type="radio" value="all" id="flexCheckDefaultall">
  96.                                                 <label class="form-check-label" for="flexCheckDefaultall">{% trans %}ALL_KEY{% endtrans %}</label>
  97.                                             </div>
  98.                                             {% set i = 1 %}
  99.                                             {% for category in categories %}
  100.                                                 {% if i <= (categories|length) / 2 %}
  101.                                                     <div class="form-check">
  102.                                                         <input {{ sCategory is same as category ? 'checked' :'' }} name="category" required data-bs-toggle="tooltip" data-bs-placement="top" data-bs-original-title='{{ category.name }}' class="form-check-input" type="radio" value="{{ category.slug }}" id="flexCheckDefault{{ category.id }}">
  103.                                                         <label data-bs-toggle="tooltip" data-bs-placement="top" data-bs-original-title='{{ category.name }}' class="form-check-label" for="flexCheckDefault{{ category.id }}">{{ category.name }}</label>
  104.                                                     </div>
  105.                                                 {% endif %}
  106.                                                 {% set i = i + 1 %}
  107.                                             {% endfor %}
  108.                                         </div>
  109.     
  110.                                         <!-- Category group -->
  111.                                         <div class="col-xxl-6">
  112.                                             {% set i = 1 %}
  113.                                             {% for category in categories %}
  114.                                                 {% if i > (categories|length) / 2 %}
  115.                                                     <div class="form-check">
  116.                                                         <input {{ sCategory is same as category ? 'checked' : '' }} name="category" required data-bs-toggle="tooltip" data-bs-placement="top" data-bs-original-title='{{ category.name }}' class="form-check-input" type="radio" value="{{ category.slug }}" id="flexCheckDefault{{ category.id }}">
  117.                                                         <label data-bs-toggle="tooltip" data-bs-placement="top" data-bs-original-title='{{ category.name }}' title="{{ category.name }}" class="form-check-label" for="flexCheckDefault{{ category.id }}">{{ category.name|u.truncate(13) }}</label>
  118.                                                     </div>
  119.                                                 {% endif %}
  120.                                                 {% set i = i + 1 %}
  121.                                             {% endfor %}
  122.                                         </div>
  123.                                     </div><!-- Row END -->
  124.                                 </div>
  125.                                 <!-- Category END -->
  126.                                 <!-- Price START -->
  127.                                 <div class="card card-body shadow p-4 mb-4">
  128.                                     <!-- Title -->
  129.                                     <h4 class="mb-3">{% trans %}SKILLLEVEL_KEY{% endtrans %}</h4>
  130.                                     <ul class="list-inline mb-0">
  131.                                         <!-- Price item -->
  132.                                         <li class="list-inline-item">
  133.                                             <input {{ skillLevel is same as null ? 'checked' : '' }} type="radio" value="all" class="btn-check" name="skill" id="skill">
  134.                                             <label class="btn btn-light btn-primary-soft-check" for="skill">{% trans %}ALL_KEY{% endtrans %}</label>
  135.                                         </li>
  136.                                         {% for skill in skillLevels %}
  137.                                             <!-- Price item -->
  138.                                             <li class="list-inline-item">
  139.                                                 <input {{ skillLevel is same as skill ? 'checked' : '' }} type="radio" class="btn-check" name="skill" value="{{ skill.slug }}" id="skill{{ loop.index }}">
  140.                                                 <label class="btn btn-light btn-primary-soft-check" for="skill{{ loop.index }}">{{ skill.name }}</label>
  141.                                             </li>
  142.                                         {% endfor %}
  143.                                     </ul>
  144.                                 </div>
  145.                                 <!-- Price END -->
  146.         
  147.                                 <!-- Price START -->
  148.                                 <div class="card card-body shadow p-4 mb-4">
  149.                                     <!-- Title -->
  150.                                     <h4 class="mb-3">{% trans %}CLASSES_KEY{% endtrans %}</h4>
  151.                                     <ul class="list-inline mb-0">
  152.                                         <!-- Price item -->
  153.                                         <li class="list-inline-item">
  154.                                             <input {{ sClasse is same as null ? 'checked' : '' }} checked type="radio" value="all" class="btn-check" name="classe" id="option">
  155.                                             <label class="btn btn-light btn-primary-soft-check" for="option">{% trans %}ALL_KEY{% endtrans %}</label>
  156.                                         </li>
  157.                                         {% for classe in classes %}
  158.                                             <!-- Price item -->
  159.                                             <li class="list-inline-item">
  160.                                                 <input {{ sClasse is same as classe ? 'checked' : '' }} type="radio" class="btn-check" name="classe" value="{{ classe.slug }}" id="option{{ loop.index }}">
  161.                                                 <label class="btn btn-light btn-primary-soft-check" for="option{{ loop.index }}">{{ classe.name }}</label>
  162.                                             </li>
  163.                                         {% endfor %}
  164.                                     </ul>
  165.                                 </div>
  166.                                 <!-- Price END -->
  167.         
  168.                                 <!-- Language START -->
  169.                                 <div class="card card-body shadow p-4 mb-4">
  170.                                     <!-- Title -->
  171.                                     <h4 class="mb-3">{% trans %}LANGUAGE_KEY{% endtrans %}</h4>
  172.                                     <ul class="list-inline mb-0 g-3">
  173.                                         <!-- Item -->
  174.                                         <li class="list-inline-item mb-2">
  175.                                             <input {{ language is same as null ? 'checked' : '' }} value="all" checked type="radio" name="language" class="btn-check" id="btn-check-2">
  176.                                             <label class="btn btn-light btn-primary-soft-check" for="btn-check-2">{% trans %}ALL_KEY{% endtrans %}</label>
  177.                                         </li>
  178.                                         <!-- Item -->
  179.                                         <li class="list-inline-item mb-2">
  180.                                             <input  {{ language|upper is same as 'FRENCH' ? 'checked' : '' }} name="language" value="French" type="radio" class="btn-check" id="btn-check-3">
  181.                                             <label class="btn btn-light btn-primary-soft-check" for="btn-check-3">{% trans %}FRENCH_KEY{% endtrans %}</label>
  182.                                         </li>
  183.                                         <!-- Item -->
  184.                                         <li class="list-inline-item mb-2">
  185.                                             <input {{ language|upper is same as 'ENGLISH' ? 'checked' : '' }} value="English" name="language" type="radio" class="btn-check" id="btn-check-4">
  186.                                             <label class="btn btn-light btn-primary-soft-check" for="btn-check-4">{% trans %}ENGLISH_KEY{% endtrans %}</label>
  187.                                         </li>
  188.                                     </ul>
  189.                                 </div>
  190.                                 <!-- Language END -->
  191.                             </form>
  192.                             <!-- Form End -->
  193.                         </div>
  194.                         <!-- Button -->
  195.                         <div class="d-grid p-2 p-xl-0 bg-body text-center">
  196.                             <button class="btn btn-primary mb-0" type="button" onclick="$('#filter-form').submit()">{% trans %}FILTERRESULTS_KEY{% endtrans %}</button>
  197.                         </div>
  198.                     </div>
  199.                     <!-- Responsive offcanvas body END -->
  200.                 </div>
  201.                 <!-- Right sidebar END -->
  202.             </div><!-- Row END -->
  203.         </div>
  204.     </section>
  205.     <!-- Page content END -->
  206.     {{ include('front/includes/_newsletterorange.html.twig') }}
  207. {% endblock %}