templates/ProfileList/list.html.twig line 1

Open in your IDE?
  1. {% extends 'grid.html.twig' %}
  2. {% set city = app.request.get('city', default_city()) %}
  3. {% block title %}
  4.     {{ seo_title() }}
  5. {% endblock %}
  6. {% block metaDescription %}
  7.     <meta name="description" content="{{ seo_description() }}">
  8. {% endblock %}
  9. {% block navbar %}
  10.     {{ parent() }}
  11. {% endblock %}
  12. {% block mainContainer %}
  13.     {{ seo_top() }}
  14.     <h1>{{ seo_heading() }}</h1>
  15.     {% block afterHeading %}{% endblock %}
  16.     {% include 'ProfileList/geo_category_linkage.partial.html.twig' %}
  17.     {% if homepage_city_listings_block is defined and homepage_city_listings_block %}
  18.         {% if homepage_city_listings_block.hasSaloons %}
  19.             <h3><a href="{{ path('saloon_list.list_by_city', {city: city.uriIdentity}) }}">Интим-салоны {{ city.name|trans }}</a></h3>
  20.             <div class="row mb-3">
  21.                 {% include 'SaloonList/list.saloons.html.twig' with { 'saloons': homepage_city_listings_block.saloons } %}
  22.             </div>
  23.         {% endif %}
  24.         {% if homepage_city_listings_block.hasMasseurs %}
  25.             <h3><a href="{{ path('masseur_list.page', {city: city.uriIdentity}) }}">Массажистки {{ city.name|trans }}</a></h3>
  26.             <div class="row mb-3">
  27.                 {% include 'ProfileList/list.profiles.html.twig' with {
  28.                     'profiles': homepage_city_listings_block.masseurs,
  29.                     'show_total_count': false
  30.                 } %}
  31.             </div>
  32.         {% endif %}
  33.     {% endif %}
  34.     {#
  35.     {% if source is defined and source %}
  36.     <h6 style="background-color: #ee4056;height: 20px;">
  37.         {% if source == 'county' %}К сожалению, все девушки из округа <a href="{{ category_url }}">{{ county.name }}</a> сейчас отдыхают, посмотрите проституток из других округов города {{ city.name|trans }}.{% endif %}
  38.         {% if source == 'district' %}К сожалению, все девушки из района <a href="{{ category_url }}">{{ district.name }}</a> сейчас отдыхают, посмотрите проституток из других районов города {{ city.name|trans }}.{% endif %}
  39.         {% if source == 'station' %}К сожалению, все девушки работающие вблизи метро <a href="{{ category_url }}">{{ station.name }}</a> сейчас отдыхают, посмотрите проституток у других станций метро в этом районе города {{ city.name|trans }}.{% endif %}
  40.         {% if source == 'approved' or source == 'with_comments' or  source == 'with_video' or source == 'elite' or source == 'with_selfie' %}
  41.             {% if source == 'approved' %}
  42.                 {% set source_name = '<a href="' ~ path('profile_list.list_approved', {city:city.uriIdentity}) ~ '">Проверенные анкеты</a>' %}
  43.             {% elseif source == 'with_comments' %}
  44.                 {% set source_name = '<a href="' ~ path('profile_list.list_with_comments', {city:city.uriIdentity}) ~ '">Анкеты с отзывами</a>' %}
  45.             {% elseif source == 'with_video' %}
  46.                 {% set source_name = '<a href="' ~ path('profile_list.list_with_video', {city:city.uriIdentity}) ~ '">Анкеты с видео</a>' %}
  47.             {% elseif source == 'with_selfie' %}
  48.                 {% set source_name = '<a href="' ~ path('profile_list.list_with_selfie', {city:city.uriIdentity}) ~ '">Анкеты с селфи</a>' %}
  49.             {% elseif source == 'with_whatsapp' %}
  50.                 {% set source_name = '<a href="' ~ path('profile_list.list_with_whatsapp', {city:city.uriIdentity}) ~ '">Анкеты с WhatsApp</a>' %}
  51.             {% elseif source == 'with_telegram' %}
  52.                 {% set source_name = '<a href="' ~ path('profile_list.list_with_telegram', {city:city.uriIdentity}) ~ '">Анкеты с Telegram</a>' %}
  53.             {% elseif source == 'elite' %}
  54.                 {% set source_name = '<a href="' ~ path('profile_list.list_for_elite_girls', {city:city.uriIdentity}) ~ '">Элитные проститутки</a>' %}
  55.             {% else %}
  56.                 {% set source_name = '' %}
  57.             {% endif %}
  58.             {% if source_default == 'approved' %}К сожалению, все <a href="{{ category_url }}">проверенные девушки</a> сейчас отдыхают, посмотрите раздел {{ source_name|raw }}{% endif %}
  59.             {% if source_default == 'with_comments' %}К сожалению, все <a href="{{ category_url }}">девушки, у которых есть отзывы</a> сейчас отдыхают, посмотрите раздел {{ source_name|raw }}{% endif %}
  60.             {% if source_default == 'with_video' %}К сожалению, все <a href="{{ category_url }}">девушки, у которых есть видео</a> сейчас отдыхают, посмотрите раздел {{ source_name|raw }}{% endif %}
  61.             {% if source_default == 'with_selfie' %}К сожалению, все <a href="{{ category_url }}">девушки, у которых есть селфи</a> сейчас отдыхают, посмотрите раздел {{ source_name|raw }}{% endif %}
  62.             {% if source_default == 'with_whatsapp' %}К сожалению, все <a href="{{ category_url }}">девушки с WhatsApp</a> сейчас отдыхают, посмотрите раздел {{ source_name|raw }}{% endif %}
  63.             {% if source_default == 'with_telegram' %}К сожалению, все <a href="{{ category_url }}">девушки с Telegram</a> сейчас отдыхают, посмотрите раздел {{ source_name|raw }}{% endif %}
  64.         {% endif %}
  65.         {% if source == 'by_params' %}К сожалению, раздел пуст. Посмотрите другие анкеты, которые мы подобрали для Вас.{% endif %}
  66.         {% if source == 'service' %}К сожалению, все девушки, которые практикуют услугу <a href="{{ category_url }}">{{ service.name }}</a> сейчас отдыхают. Но мы подобрали для Вас девушек которые не против оказать Вам похожие услуги, взгляните!{% endif %}
  67.         {% if source == 'city' %}К сожалению, данный раздел пуст. Взгляните на другие анкеты, которые мы нашли для Вас в городе {{ city.name|trans }}.{% endif %}
  68.         {% if source == 'country' %}К сожалению, данный раздел пуст. Взгляните на анкеты которые мы подобрали для Вас.{% endif %}
  69.         {% if source == 'massage_service' %}К сожалению, все девушки для которых массаж — это призвание сейчас отдыхают. Посмотрите проституток, которые также готовы сделать Вам массаж.{% endif %}
  70.     </h6>
  71.     {% endif %}
  72.     #}
  73.     {{ porpaginas_render(profiles) }}
  74.     {% block mainList %}
  75.         <div
  76.             id="profile-list"
  77.             class="row mb-3"
  78.             data-recommendations-fill-applied="{{ recommendations_fill_applied|default(false) ? 1 : 0 }}"
  79.             data-recommendations-fill-original-count="{{ recommendations_fill_original_count|default(profiles.totalCount|default(0)) }}"
  80.         >
  81.             {% include 'ProfileList/list.profiles.html.twig' %}
  82.         </div>
  83.     {% endblock %}
  84.     {% block showMore %}
  85.         {% include 'ProfileList/_show_more.profiles.html.twig' %}
  86.     {% endblock showMore %}
  87.     {{ porpaginas_render(profiles) }}
  88.     {% if not skip_listing_recommendations|default(false) %}
  89.         {% if ssr_recommended_profiles is defined and ssr_recommended_profiles is not empty %}
  90.             <h4>Рекомендуемые</h4>
  91.             <div class="row mb-3">
  92.                 {% include 'ProfileList/list.profiles.html.twig' with {
  93.                     profiles: ssr_recommended_profiles,
  94.                     show_total_count: false
  95.                 } %}
  96.             </div>
  97.         {% else %}
  98.             {% include 'Recommendations/_profile_recommendations.html.twig' %}
  99.         {% endif %}
  100.     {% endif %}
  101.     {% set cities_circle = city_main_pages_linkage_circle() %}
  102.     {% if cities_circle is not null %}
  103.         <div class="city_main_pages_linkage_circle">
  104.             <h3>Также рекомендуем:</h3>
  105.             {% if cities_circle[0] is not null %}<a href="{{ cities_circle[0].href }}"
  106.                                                     style="text-transform: capitalize;">{{ cities_circle[0].text }}</a>
  107.                 <br/>{% endif %}
  108.             {% if cities_circle[1] is not null %}<a href="{{ cities_circle[1].href }}"
  109.                                                     style="text-transform: capitalize;">{{ cities_circle[1].text }}</a>{% endif %}
  110.         </div>
  111.     {% endif %}
  112.     {% set cities_circle = city_main_pages_linkage_by_countries_circle() %}
  113.     {% if cities_circle is not null %}
  114.         <div class="city_main_pages_linkage_circle">
  115.             <h3>Также рекомендуем:</h3>
  116.             {% if cities_circle[0] is not null %}<a href="{{ cities_circle[0].href }}"
  117.                                                     style="text-transform: capitalize;">{{ cities_circle[0].text }}</a>
  118.                 <br/>{% endif %}
  119.             {% if cities_circle[1] is not null %}<a href="{{ cities_circle[1].href }}"
  120.                                                     style="text-transform: capitalize;">{{ cities_circle[1].text }}</a>{% endif %}
  121.         </div>
  122.     {% endif %}
  123.     {#
  124.     если указать в вызове параметр kind, напр. 'myCustomKind', то из перевода будут браться соответственно
  125.     MYCUSTOMKIND_FIRST_ и MYCUSTOMKIND_SECOND_ + падеж указанный в конфиге кольцовки, напр. MYCUSTOMKIND_FIRST_NOMINATIVE
  126.     можно использовать вызов без параметра, тогда из перевода будут браться соответственно PROSTITUTES_ и INDIVIDUALS_ с соответствующими падежfvb
  127.     #}
  128.     {% set circle = inner_linkage_circle('prostitutes') %}
  129.     {% if circle is not null %}
  130.         <div class="inner_linkage_circle">
  131.             <h3>Также интересуются:</h3>
  132.             <a href="{{ circle[0].href }}">{{ circle[0].text }}</a><br/>
  133.             <a href="{{ circle[1].href }}">{{ circle[1].text }}</a>
  134.         </div>
  135.     {% endif %}
  136.     {% set districts_circle = districts_linkage_circle() %}
  137.     {% if districts_circle is not null %}
  138.         <div class="city_main_pages_linkage_circle">
  139.             <h3>Также интересуются:</h3>
  140.             {% if districts_circle[0] is not null %}<a href="{{ districts_circle[0].href }}"
  141.                                                        style="text-transform: capitalize;">{{ districts_circle[0].text }}</a>
  142.                 <br/>{% endif %}
  143.             {% if districts_circle[1] is not null %}<a href="{{ districts_circle[1].href }}"
  144.                                                        style="text-transform: capitalize;">{{ districts_circle[1].text }}</a>{% endif %}
  145.         </div>
  146.     {% endif %}
  147.     {% set stations_circle = station_pages_linkage_circle() %}
  148.     {% if stations_circle is not null %}
  149.         <div class="station_pages_linkage_circle">
  150.             <h3>Также интересуются:</h3>
  151.             {% if stations_circle[0] is not null %}<a
  152.                 href="{{ stations_circle[0].href }}">{{ stations_circle[0].text }}</a><br/>{% endif %}
  153.             {% if stations_circle[1] is not null %}<a
  154.                 href="{{ stations_circle[1].href }}">{{ stations_circle[1].text }}</a>{% endif %}
  155.         </div>
  156.     {% endif %}
  157.     {% block beforeFooter %}{% endblock %}
  158.     {% include 'last_girl_list.html.twig' %}
  159.     {# комменты анкет для листинга станции #}
  160.     {% include 'ProfileList/station_comments.partial.html.twig' %}
  161.     {% include 'ProfileList/profile_filter.partial.html.twig' %}
  162.     <h3>Виджет Анкеты по категориям</h3>
  163.     <div id="widget_profiles_by_categories" style="display:flex;gap:10px"></div>
  164.     <script type="text/javascript">
  165.         {% set route = app.request.get('_route') %}
  166.         {% if
  167.             route == 'homepage'
  168.             or (route == 'profile_list.list_by_city' and app.request.get('city').id == default_city().id) %}
  169.         document.addEventListener('DOMContentLoaded', _ => {
  170.             fetch('{{ path('profile_widget.by_categories', {city: app.request.attributes.get('city', default_city()).uriIdentity}) }}', {
  171.                 method: 'GET',
  172.                 headers: {
  173.                     "X-Requested-With": "XMLHttpRequest"
  174.                 },
  175.             }).then(response => {
  176.                 if (response.status < 300) {
  177.                     return response.text();
  178.                 } else {
  179.                     console.warn("🤔");
  180.                     return null;
  181.                 }
  182.             }).then(response => {
  183.                 document.querySelector('#widget_profiles_by_categories').innerHTML = response;
  184.                 if (typeof filterData === 'function') {
  185.                     filterData();
  186.                 }
  187.             });
  188.         });
  189.         {% endif %}
  190.     </script>
  191.     <script type="text/javascript">
  192.         document.addEventListener('DOMContentLoaded', function () {
  193.             const profileNodes = document.querySelectorAll('[data-profile-id]');
  194.             if (!profileNodes.length) {
  195.                 return;
  196.             }
  197.             const profileIds = Array.from(profileNodes)
  198.                 .map(node => parseInt(node.dataset.profileId, 10))
  199.                 .filter(Number.isInteger);
  200.             if (!profileIds.length) {
  201.                 return;
  202.             }
  203.             fetch('{{ path('profile_ctr.increase_shows') }}', {
  204.                 method: 'POST',
  205.                 headers: {
  206.                     'Content-Type': 'application/json',
  207.                     'X-Requested-With': 'XMLHttpRequest',
  208.                 },
  209.                 body: JSON.stringify({
  210.                     profiles: profileIds,
  211.                     source: '{{ source|default('') }}',
  212.                 }),
  213.             });
  214.         });
  215.     </script>
  216. {% endblock %}