templates/ProfileSearch/list.html.twig line 1

Open in your IDE?
  1. {% extends 'ProfileList/list.html.twig' %}
  2. {# {% block stylesheet_postload %}{{ encore_entry_link_tags("styles/public-search-page") }}{{ parent() }}{% endblock %} #}
  3. {# Страница открывается по дефолту /search/ #}
  4. {% block mainContainer %}
  5.     {{ knp_menu_render('breadcrumbs', {'template': '__design/v2023/_menu/breadcrumbs.html.twig'}) }}
  6.     <div class="heading d-flex">
  7.         <h1 class="heading-title text-title mr-1" role="heading">{% trans with {'%ofCity%': city.name|geo_name('предложный'),
  8.                 '%ofTitle%': 'Поиск анкет проституток в'|trans({}, 'basic')} %}%ofTitle% %ofCity%{% endtrans %}</h1>
  9.         {# <span class="heading-count clr-main-text fw-700" data-count-profiles>{{ profiles.totalCount }}</span> #}
  10.     </div>
  11.     <div class="search-page white-round mb-4" {% if profiles is not null %} style="display:none" {% endif %}>
  12.         {{ form_start(form, {'attr': {'class': 'search-map-form d-grid'} }) }}
  13.             <div class="search-block">
  14.                 {% set current_group = 0 %}
  15.                 {% for service in form.services %}
  16.                     {% if current_group != service.vars.attr['service-group'] %}
  17.                         {% if not loop.first %}
  18.                             </div></div>
  19.                         {% endif %}
  20.                         {% set current_group = service.vars.attr['service-group'] %}
  21.                         <div class="filter-form-container filter-form-container--second">
  22.                             <div class="form-legend search-legend fw-700 mb-2">{{ current_group|service_group|trans({}, 'service_groups') }}</div>
  23.                             <div class="filter-form-list">
  24.                     {% endif %}
  25.                     <div class="filter-form-list-item d-flex-c">
  26.                         {{ form_widget(service, {'attr': {
  27.                             'class': 'item'
  28.                         }}) }}
  29.                         <label class="d-flex-c" for="{{service.vars.id}}">{{ service.vars.label|trans({}, 'left_menu') }}</label>
  30.                     </div>
  31.                     {% if loop.last %}
  32.                         </div></div>
  33.                     {% endif %}
  34.                 {% endfor %}
  35.                 <div class="filter-form-container filter-form-container--second">
  36.                     <div class="form-legend search-legend fw-700 mb-2">{{ form.nationality.vars.name|trans({}, 'service_groups') }}</div>
  37.                     <div class="filter-form-list">
  38.                         {% for nationality in form.nationality %}
  39.                             <div class="filter-form-list-item d-flex-c">
  40.                                 {{ form_widget(nationality, {'attr': {'class': 'item'}}) }}
  41.                                 <label class="d-flex-c" for="{{ nationality.vars.id }}">{{ nationality.vars.label|trans({}, 'left_menu') }}</label>
  42.                             </div>
  43.                         {% endfor %}
  44.                     </div>
  45.                 </div>
  46.             </div>
  47.             <div class="search-block">
  48.                 <div class="filter-form-container">
  49.                     <div class="form-legend search-legend fw-700 mb-2">Параметры</div>
  50.                     <div class="form-wrap form-wrap-input">
  51.                         <div class="form-field mb-2">
  52.                             <div class="form-group d-flex-c">
  53.                                 <label class="form-label"  for="{{ form.age.min.vars.id }}" title="Возраст от 18 до 100">Возраст</label>
  54.                                 {{ form_widget(form.age.min, {'attr': {
  55.                                     'class': 'form-input',
  56.                                     'maxlength': '3',
  57.                                     'placeholder': 'от',
  58.                                     'min': "18",
  59.                                     'max': "100",
  60.                                     'title': "от 18 до 100",
  61.                                     'inputmode': "numeric"
  62.                                 }}) }}
  63.                                 <span class="form-group-separator">-</span>
  64.                                 {{ form_widget(form.age.max, {'attr': {
  65.                                     'class': 'form-input',
  66.                                     'maxlength': '3',
  67.                                     'placeholder': 'до',
  68.                                     'min': "18",
  69.                                     'max': "100",
  70.                                     'title': "от 18 до 100",
  71.                                     'inputmode': "numeric"
  72.                                 }}) }}
  73.                             </div>
  74.                             {# <p class="form-help">На сайте не отображается</p> #}
  75.                             <p class="field-error" id="{{ form.age.min.vars.id }}_error"></p>
  76.                         </div>
  77.                         <div class="form-field mb-2">
  78.                             <div class="form-group d-flex-c">
  79.                                 <label class="form-label"  for="{{ form.breast_size.min.vars.id }}" title="Грудь от 0 до 20">Грудь</label>
  80.                                 {{ form_widget(form.breast_size.min, {'attr': {
  81.                                     'class': 'form-input',
  82.                                     'maxlength': '2',
  83.                                     'placeholder': 'от',
  84.                                     'min': "0",
  85.                                     'max': "20",
  86.                                     'title': "от 0 до 20",
  87.                                     'inputmode': "numeric"
  88.                                 }}) }}
  89.                                 <span class="form-group-separator">-</span>
  90.                                 {{ form_widget(form.breast_size.max, {'attr': {
  91.                                     'class': 'form-input',
  92.                                     'maxlength': '2',
  93.                                     'placeholder': 'до',
  94.                                     'min': "0",
  95.                                     'max': "20",
  96.                                     'title': "от 0 до 20",
  97.                                     'inputmode': "numeric"
  98.                                 }}) }}
  99.                             </div>
  100.                             {# <p class="form-help">На сайте не отображается</p> #}
  101.                             <p class="field-error" id="{{ form.breast_size.min.vars.id }}_error"></p>
  102.                         </div>
  103.                         <div class="form-field mb-2">
  104.                             <div class="form-group d-flex-c">
  105.                                 <label class="form-label"  for="{{ form.weight.min.vars.id }}" title="Вес от 20 до 200">Вес</label>
  106.                                 {{ form_widget(form.weight.min, {'attr': {
  107.                                     'class': 'form-input',
  108.                                     'maxlength': '3',
  109.                                     'placeholder': 'от',
  110.                                     'min': "20",
  111.                                     'max': "200",
  112.                                     'title': "от 20 до 200",
  113.                                     'inputmode': "numeric"
  114.                                 }}) }}
  115.                                 <span class="form-group-separator">-</span>
  116.                                 {{ form_widget(form.weight.max, {'attr': {
  117.                                     'class': 'form-input',
  118.                                     'maxlength': '3',
  119.                                     'placeholder': 'до',
  120.                                     'min': "20",
  121.                                     'max': "200",
  122.                                     'title': "от 20 до 200",
  123.                                     'inputmode': "numeric"
  124.                                 }}) }}
  125.                             </div>
  126.                             {# <p class="form-help">На сайте не отображается</p> #}
  127.                             <p class="field-error" id="{{ form.weight.min.vars.id }}_error"></p>
  128.                         </div>
  129.                         <div class="form-field mb-2">
  130.                             <div class="form-group d-flex-c">
  131.                                 <label class="form-label"  for="{{ form.height.min.vars.id }}" title="Рост от 40 до 300">Рост</label>
  132.                                 {{ form_widget(form.height.min, {'attr': {
  133.                                     'class': 'form-input',
  134.                                     'maxlength': '3',
  135.                                     'placeholder': 'от',
  136.                                     'min': "40",
  137.                                     'max': "300",
  138.                                     'title': "от 40 до 300",
  139.                                     'inputmode': "numeric"
  140.                                 }}) }}
  141.                                 <span class="form-group-separator">-</span>
  142.                                 {{ form_widget(form.height.max, {'attr': {
  143.                                     'class': 'form-input',
  144.                                     'maxlength': '3',
  145.                                     'placeholder': 'до',
  146.                                     'min': "40",
  147.                                     'max': "300",
  148.                                     'title': "от 40 до 300",
  149.                                     'inputmode': "numeric"
  150.                                 }}) }}
  151.                             </div>
  152.                             {# <p class="form-help">На сайте не отображается</p> #}
  153.                             <p class="field-error" id="{{ form.height.min.vars.id }}_error"></p>
  154.                         </div>
  155.                     </div>
  156.                 </div>
  157.                 <div class="filter-form-container filter-form-container--with-checkbox">
  158.                     <div class="form-legend search-legend fw-700 mb-2">Цены</div>
  159.                     <div class="form-field mb-2">
  160.                         <div class="form-group d-flex-c">
  161.                             <label class="form-label" for="{{ form.one_hour_price.min.vars.id }}">1 час</label>
  162.                             {{ form_widget(form.one_hour_price.min, {'attr': {
  163.                                 'class': 'form-input',
  164.                                 'placeholder': 'от',
  165.                                 'type': 'number',
  166.                                 'inputmode': "numeric"
  167.                             }}) }}
  168.                             <span class="form-group-separator">-</span>
  169.                             {{ form_widget(form.one_hour_price.max, {'attr': {
  170.                                 'class': 'form-input',
  171.                                 'placeholder': 'до',
  172.                                 'type': 'number',
  173.                                 'inputmode': "numeric"
  174.                             }}) }}
  175.                         </div>
  176.                         <p class="field-error" id="{{ form.one_hour_price.min.vars.id }}_error"></p>
  177.                     </div>
  178.                     <div class="form-field mb-2">
  179.                         <div class="form-group d-flex-c">
  180.                             <label class="form-label" for="{{ form.two_hours_price.min.vars.id }}">2 часа</label>
  181.                             {{ form_widget(form.two_hours_price.min, {'attr': {
  182.                                 'class': 'form-input',
  183.                                 'placeholder': 'от',
  184.                                 'type': 'number',
  185.                                 'inputmode': "numeric"
  186.                             }}) }}
  187.                             <span class="form-group-separator">-</span>
  188.                             {{ form_widget(form.two_hours_price.max, {'attr': {
  189.                                 'class': 'form-input',
  190.                                 'placeholder': 'до',
  191.                                 'type': 'number',
  192.                                 'inputmode': "numeric"
  193.                             }}) }}
  194.                         </div>
  195.                         <p class="field-error" id="{{ form.two_hours_price.min.vars.id }}_error"></p>
  196.                     </div>
  197.                     <div class="form-field mb-2">
  198.                         <div class="form-group d-flex-c">
  199.                             <label class="form-label" for="{{ form.night_price.min.vars.id }}">Ночь</label>
  200.                             {{ form_widget(form.night_price.min, {'attr': {
  201.                                 'class': 'form-input',
  202.                                 'placeholder': 'от',
  203.                                 'type': 'number',
  204.                                 'inputmode': "numeric"
  205.                             }}) }}
  206.                             <span class="form-group-separator">-</span>
  207.                             {{ form_widget(form.night_price.max, {'attr': {
  208.                                 'class': 'form-input',
  209.                                 'placeholder': 'до',
  210.                                 'type': 'number',
  211.                                 'inputmode': "numeric"
  212.                             }}) }}
  213.                         </div>
  214.                         <p class="field-error" id="{{ form.night_price.min.vars.id }}_error"></p>
  215.                     </div>
  216.                     <div class="filter-form-list-item d-flex-c">
  217.                         {{ form_widget(form.has_express, {'attr': {'class': 'item'}}) }}
  218.                         <label class="d-flex-c" for="{{ form.has_express.vars.id }}">Есть экспресс</label>
  219.                     </div>
  220.                 </div>
  221.                 <div class="filter-form-container">
  222.                     <div class="form-legend search-legend fw-700 mb-2">Новизна</div>
  223.                     <div class="form-control search-control">
  224.                         {{ form_widget(form.recency, {'attr': {
  225.                             'class': 'form-input form-webcimes-select',
  226.                             'placeholder': 'Выберите',
  227.                             'data-search': 'none'
  228.                         }}) }}
  229.                     </div>
  230.                 </div>
  231.                 <div class="filter-form-container">
  232.                     <div class="form-legend search-legend fw-700 mb-2">Метро</div>
  233.                     <div class="form-control search-control">
  234.                         {{ form_widget(form.station, {'attr': {
  235.                             'class': 'form-input form-webcimes-select',
  236.                             'placeholder': 'Выберите',
  237.                             'data-limit': '3',
  238.                         }}) }}
  239.                     </div>
  240.                 </div>
  241.                 <div class="filter-form-container filter-form-container--second">
  242.                     <div class="form-legend search-legend fw-700 mb-2">Дополнительно</div>
  243.                     <div class="filter-form-list">
  244.                         <div class="filter-form-list-item d-flex-c">
  245.                             {{ form_widget(form.with_video, {'attr': {'class': 'item'}}) }}
  246.                             <label class="d-flex-c" for="{{ form.with_video.vars.id }}">Есть видео</label>
  247.                         </div>
  248.                         <div class="filter-form-list-item d-flex-c">
  249.                             {{ form_widget(form.with_selfie, {'attr': {'class': 'item'}}) }}
  250.                             <label class="d-flex-c" for="{{ form.with_selfie.vars.id }}">Есть селфи</label>
  251.                         </div>
  252.                         <div class="filter-form-list-item d-flex-c">
  253.                             {{ form_widget(form.with_comments, {'attr': {'class': 'item'}}) }}
  254.                             <label class="d-flex-c" for="{{ form.with_comments.vars.id }}">Есть отзывы</label>
  255.                         </div>
  256.                         <div class="filter-form-list-item d-flex-c">
  257.                             {{ form_widget(form.approved, {'attr': {'class': 'item'}}) }}
  258.                             <label class="d-flex-c" for="{{ form.approved.vars.id }}">С апартаментами</label>
  259.                         </div>
  260.                         <div class="filter-form-list-item d-flex-c">
  261.                             {{ form_widget(form.apartments, {'attr': {'class': 'item'}}) }}
  262.                             <label class="d-flex-c" for="{{ form.apartments.vars.id }}">Проверенное фото</label>
  263.                         </div>
  264.                         <div class="filter-form-list-item d-flex-c">
  265.                             {{ form_widget(form.has_tattoo, {'attr': {'class': 'item'}}) }}
  266.                             <label class="d-flex-c" for="{{ form.has_tattoo.vars.id }}">Есть тату</label>
  267.                         </div>
  268.                         <div class="filter-form-list-item d-flex-c">
  269.                             {{ form_widget(form.has_piercing, {'attr': {'class': 'item'}}) }}
  270.                             <label class="d-flex-c" for="{{ form.has_piercing.vars.id }}">Есть пирсинг</label>
  271.                         </div>
  272.                     </div>
  273.                 </div>
  274.                 <div class="filter-form-container filter-form-container--second">
  275.                     <div class="form-legend search-legend fw-700 mb-2">Куда выезд</div>
  276.                     <div class="filter-form-list">
  277.                         {% for child in form.take_out_location %}
  278.                             <div class="filter-form-list-item d-flex-c">
  279.                                 {{ form_widget(child, {'attr': {'class': 'item'}}) }}
  280.                                 <label class="d-flex-c" for="{{ child.vars.id }}">{{ child.vars.label|trans({}, 'messages') }}</label>
  281.                             </div>
  282.                         {% endfor %}
  283.                     </div>
  284.                 </div>
  285.                 <div class="filter-form-container filter-form-container--second">
  286.                     <div class="form-legend search-legend fw-700 mb-2">Цвет волос</div>
  287.                     <div class="filter-form-list">
  288.                         {% for hair_color in form.hair_color %}
  289.                             <div class="filter-form-list-item d-flex-c">
  290.                                 {{ form_widget(hair_color, {'attr': {'class': 'item'}}) }}
  291.                                 <label class="d-flex-c" for="{{ hair_color.vars.id }}">{{ hair_color.vars.label|trans({}, 'left_menu') }}</label>
  292.                             </div>
  293.                         {% endfor %}
  294.                     </div>
  295.                 </div>
  296.                 <div class="filter-form-container filter-form-container--second">
  297.                     <div class="form-legend search-legend fw-700 mb-2">Интимная стрижка</div>
  298.                     <div class="filter-form-list">
  299.                         {% for private_haircut in form.private_haircut %}
  300.                             <div class="filter-form-list-item d-flex-c">
  301.                                 {{ form_widget(private_haircut, {'attr': {'class': 'item'}}) }}
  302.                                 <label class="d-flex-c" for="{{ private_haircut.vars.id }}">{{ private_haircut.vars.label|trans({}, 'left_menu') }}</label>
  303.                             </div>
  304.                         {% endfor %}
  305.                     </div>
  306.                 </div>
  307.             </div>
  308.             <div class="search-footer dialog-footer btn-list">
  309.                 <button class="btn btn-grey dialog-footer-reset btn-event" type="reset" data-reset="">Сбросить</button>
  310.                 <button class="btn btn-main dialog-footer-submit btn-event" type="submit">
  311.                     <svg class="btn-icon" width="25" height="24"><use xlink:href="#search"></use></svg>
  312.                     <span class="btn-text">Подобрать</span>
  313.                 </button>
  314.             </div>
  315.             {{ form_widget(form.search, {'label': 'Подобрать', 'attr': {
  316.                 'class': 'd-none'
  317.             }}) }}
  318.         {{ form_end(form) }}
  319.     </div>
  320.     {% if profiles is not null %}
  321.         {% block mainList %}
  322.             {{ parent() }}
  323.         {% endblock %}
  324.         {% block showMore %}
  325.             {% include 'ProfileSearch/_show_more.search.html.twig' %}
  326.             {# {% include 'ProfileList/_show_more.profiles.html.twig' %} #}
  327.         {% endblock showMore %}
  328.         {{ porpaginas_render(profiles) }}
  329.     {% endif %}
  330. {# <div class="new-questionare">{{ include('components/last_girl_list.html.twig') }}</div>
  331. {{ include('components/seo_text.html.twig', { 'type': 'bottom', "noindex": false }) }} #}
  332. {% endblock %}
  333. {% block javascripts %}
  334.     {{ parent() }}
  335.     <script type="text/javascript" src="{{ asset('form-paginator-fix.js', 'js_script') }}"></script>
  336.     <script>
  337.         window._lD = {
  338.             setLastViewedListing: '{{ app.request.attributes.get('_route') }}',
  339.             cityUrl: "{{city.uriIdentity}}",
  340.         };
  341.         (function () {
  342.             document.addEventListener('DOMContentLoaded', function () {
  343.                 var paginationContainers = ['.pagination'];
  344.                 var pagination = document.querySelector('.pagination');
  345.                 if (pagination !== null) {
  346.                     paginationContainers.forEach(function (selector) {
  347.                         new FormPaginatorFix({
  348.                             pageParameterName: 'page',
  349.                             formName: 'search_profile_form',
  350.                             pageLinkClass: 'pagination-link',
  351.                             pageLinkInactiveElement: 'span',
  352.                             pageLinkActiveElement: 'a',
  353.                             paginationContainerSelector: selector
  354.                         }).fixFirstPageLink().listen();
  355.                     });
  356.                 }
  357.             });
  358.         })();
  359.     </script>
  360. {% endblock %}