templates/ProfilePreview/page.html.twig line 1

Open in your IDE?
  1. {% extends 'ProfilePreview/grid.html.twig' %}
  2. {# Проверяем есть ли у нас вообще данные для табов #}
  3. {%- macro _show_tabs(photos,selfies,videos) -%}
  4.     {% if (photos is defined and photos|length > 0) or
  5.         (selfies is defined and selfies|length > 0) or
  6.         (videos is defined and videos|length > 0)
  7.     %}true{% else %}false{% endif %}
  8. {%- endmacro -%}
  9. {% macro _data_wrapper(text, value, shortText = '') %}
  10.     {% set value = value ? value : '-' %}
  11.     <span class="name{{ shortText ? ' long-text' : '' }}">{{ text }}<i>:</i></span><span class="name-short">{{ shortText }}</span><span class="value">{{ value }}</span>
  12. {% endmacro %}
  13. {% macro _time_to_work(profile) %}
  14.     {% if (profile.phoneCallRestrictions.timeFrom == '' and profile.phoneCallRestrictions.timeTo == '') or
  15.         (profile.phoneCallRestrictions.timeFrom == profile.phoneCallRestrictions.timeTo) %}
  16.         {% trans with {} from 'profile' %}Круглосуточно{% endtrans %}
  17.     {% else %}
  18.         с
  19.         {{ profile.phoneCallRestrictions.timeFrom == '' ? 0 : profile.phoneCallRestrictions.timeFrom }}
  20.         до
  21.         {{ profile.phoneCallRestrictions.timeTo == '' ? 0 : profile.phoneCallRestrictions.timeTo }}
  22.     {% endif %}
  23. {% endmacro %}
  24. {% block title %}
  25.     {{ seo_title() }}
  26. {% endblock %}
  27. {% block metaDescription %}
  28.     <meta name="description" content="{{ seo_description() }}">
  29. {% endblock %}
  30. {% block name_page %}profile{% endblock %}
  31. {% block stylesheet %}
  32.     {{ parent() }}
  33.     <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/slick-carousel@1.8.1/slick/slick.css">
  34.     <link rel="stylesheet" href="/assets/vendors/lightgallery/css/lightgallery.min.css">
  35. {% endblock %}
  36. {% set currencyFront =
  37.     profile.city.countryCode == "RU" ? "₽" :
  38.     profile.city.countryCode == "UA" ? "₴" :
  39.     profile.city.countryCode == "KZ" ? "$" :
  40.     profile.city.countryCode == "LT" ? "€" :
  41.     profile.city.countryCode == "LV" ? "€" :
  42.     profile.city.countryCode == "EE" ? "€" : "$"
  43. %}
  44. {% block mainContainer %}
  45.     {{ knp_menu_render('breadcrumbs', {'template': '_menu/breadcrumbs.html.twig', 'profile': profile}) }}
  46.     <div class="flex-fill model-header border-line">
  47.         <h1 class="d-flex flex-fill">Индивидуалка {{ profile.name }}, <span class="age">{{ 'год'|plural(profile.personParameters.age) }}</span>&nbsp;ID {{ profile.id }}{% if profile.approved %}<span class="verification ml-auto">Фото проверено</span>{% endif %}</h1>
  48.     </div>
  49.     {%- set prices1H = [
  50.             profile.apartmentsPricing.oneHourPrice,
  51.             profile.takeOutPricing.oneHourPrice
  52.         ]|filter(v => v is not null) -%}
  53.     {%- set min1HPrice = prices1H is not empty ? min(prices1H) : 0 -%}
  54.     {%- set min1HPriceOutput = min1HPrice > 0 ? min1HPrice : '' -%}
  55.     {%- set firstStation = profile.stations is defined and profile.stations is not empty
  56.         ? profile.stations.first
  57.         : null -%}
  58.     {%- set stationOutput = firstStation ? 'метро ' ~ firstStation.name ~ ', ' : '' -%}
  59.     {%- set isDefaultCity = profile.city == default_city() -%}
  60.     {%- set morpID = profile.id -%}
  61.     {% set serviceNameList = [] %}
  62.     {% for group, servicesGroup in services | filter((servicesGroup, group) => not profile.masseur or group not in masseurExcludeServiceGroups) %}
  63.         {% for service in servicesGroup %}
  64.             {% set providedService = profile.providedService(service) %}
  65.             {% if providedService %}
  66.                 {% set serviceNameList = serviceNameList|merge([service.name|trans]) %}
  67.             {% endif %}
  68.         {% endfor %}
  69.     {% endfor %}
  70.     {%- set service1 = null -%}
  71.     {%- set service2 = null -%}
  72.     {% if serviceNameList is not empty %}
  73.         {%- set service1 = serviceNameList|seo_morphing(morpID) -%}
  74.         {%- set service2 = serviceNameList|seo_morphing(morpID + 105) -%}
  75.         {% if service1 == service2 -%}
  76.             {%- set service2 = serviceNameList|seo_morphing(morpID + 104) -%}
  77.             {% if service1 == service2 -%}
  78.                 {%- set service2 = null -%}
  79.             {% endif %}
  80.         {% endif %}
  81.     {% endif %}
  82.     {# Определяем шаблоны alt-текстов в массиве #}
  83.     {% set altTemplates = [
  84.         'инди ' ~ profile.name|trans ~ ', ' ~ profile.city.name,
  85.         'девочка по вызову ' ~ profile.name|trans ~ ', ' ~ min1HPriceOutput ~ ' руб. час',
  86.         profile.name|trans ~ (service1 ? ', ' ~ service1 : '') ~ (service2 ? ', ' ~ service2 : ''),
  87.         'шлюха ' ~ profile.name|trans ~ ', снять по тел. ' ~ profile.phoneNumber,
  88.         'проститутка ' ~ profile.name|trans ~ ', в ' ~ profile.city.name,
  89.         'проститутка ' ~ profile.name|trans ~ ', анкета ID' ~ profile.id
  90.     ] %}
  91.     <div class="d-flex profile-wrapper">
  92.         <div class="cols-1">
  93.             <section class="model-info d-flex">
  94.                 <div class="wrap">
  95.                     <div class="avatar" id="avatar-preview" itemtype="http://schema.org/ImageObject">
  96.                         {% if not profile.deleted %}
  97.                             {% set photo = profile|avatar %}
  98.                             {% if photo %}
  99.                                 <a href="{{ responsive_asset(photo.path, 'profile_media', "fullsize", "jpg") }}" class="girl-avatar__small" data-gallery="girl-avatar" data-index="0">
  100.                                     <img itemprop="contentUrl" src="{{ responsive_asset(photo.path, 'profile_media', "300x420", "jpg") }}"
  101.                                          alt="проститутка {{ profile.name|trans }}, {{ 'год'|plural(profile.personParameters.age) }}"
  102.                                          class="img-fluid" loading="lazy">
  103.                                     {% if profile.approved %}<div class="verify">
  104.                                         <svg class="icon">
  105.                                             <use xlink:href="#icon-models-profile-verify"></use>
  106.                                         </svg>
  107.                                     </div>{% endif %}
  108.                                 </a>
  109.                             {% endif %}
  110.                         {% else %}
  111.                             <img src="{{ asset('assets/images/avatar-lock.svg') }}" loading="lazy">
  112.                         {% endif %}
  113.                     </div>
  114.                     {% if  is_user_customer(app.user) and not profile.deleted %}
  115.                         <button type="button"
  116.                                 data-url-add="{{ path('account.favourites.remove', {profile: profile.id}) }}"
  117.                                 data-url-remove="{{ path('account.favourites.add', {profile: profile.id}) }}"
  118.                                 {% if is_profile_in_favourites(profile) %}
  119.                                 title="Убрать из избранного"
  120.                                 class="btn favorite like" id="favorite">
  121.                             {% else %}
  122.                                 title="Добавить в избранное"
  123.                                 class="btn favorite unlike" id="favorite">
  124.                             {% endif %}
  125.                             <svg width="40" height="40" viewBox="0 0 40 40" fill="none" xmlns="http://www.w3.org/2000/svg">
  126.                                 <path d="M0 20C0 8.95431 8.95431 0 20 0V0C31.0457 0 40 8.95431 40 20V20C40 31.0457 31.0457 40 20 40V40C8.95431 40 0 31.0457 0 20V20Z" fill="#f27900"/>
  127.                                 <path d="M20 33L18.26 31.3455C12.08 25.4921 8 21.6316 8 16.8937C8 13.0332 10.904 10 14.6 10C16.688 10 18.692 11.0153 20 12.6196C21.308 11.0153 23.312 10 25.4 10C29.096 10 32 13.0332 32 16.8937C32 21.6316 27.92 25.4921 21.74 31.358L20 33Z" fill="white"/>
  128.                                 <path class="ar" d="M18.667 25.126L14 20.412L15.424 19.008L18.681 22.294L26.008 15L27.416 16.42L18.667 25.126Z" fill="#f27900"/>
  129.                             </svg>
  130.                         </button>
  131.                     {% endif %}
  132.                     <div class="main-data">
  133.                         {% if not profile.deleted %}
  134.                             {%- include 'ProfilePreview/components/profile-phone.partial.twig' with {} -%}
  135.                             <p class="answering-type text-data"><span class="name">{% trans with {} from 'profile' %}Отвечаю на:{% endtrans %}</span>
  136.                                 {% if profile.phoneCallRestrictions.answeringTo|length > 0 %}
  137.                                     {% for answeringTo in profile.phoneCallRestrictions.answeringTo %}
  138.                                         {{ answeringTo|answering_to|trans({}, 'phone_call_restrictions') }}{% if not loop.last %},{% endif %}
  139.                                     {% endfor %}
  140.                                 {% else %}
  141.                                     Не указано
  142.                                 {% endif %}
  143.                             </p>
  144.                             <p class="answering-time text-data"><span class="name">{% trans with {} from 'profile' %}Работаю:{% endtrans %}</span> {{ _self._time_to_work(profile) }}</p>
  145.                             <p class="alert-info">
  146.                                 <span>Участились случаи мошенничества. Не отправляйте предоплату.</span>
  147.                             </p>
  148.                         {% else %}
  149.                             <div class="lock-block">
  150.                                 <img src="{{ asset('assets/images/icons/profile-lock.svg') }}">
  151.                                 <div class="text-block">
  152.                                     <p class="title">Девушка не работает</p>
  153.                                     <p class="lock">Анкета доступна только по прямой ссылке и не показывается в результатах поиска.</p>
  154.                                 </div>
  155.                             </div>
  156.                         {% endif %}
  157.                         <p class="text-data city"><span class="name">Город:</span><span class="value">{{ profile.city.name }}</span></p>
  158.                         {% if profile.stations|length > 0 %}
  159.                             <div class="metro d-flex">
  160.                                 <p class="text-data"><span class="name">{% trans with {} from 'basic' %}Метро:{% endtrans %}</span></p>
  161.                                 <ul class="d-flex">
  162.                                     {% for station in profile.stations|slice(0,3) %}
  163.                                         <li>
  164.                                             <a href="{{ path('profile_list.list_by_station', {'city': city.uriIdentity, 'station': station.uriIdentity}) }}"  class="d-flex" target="_blank"><svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
  165.                                                     <path fill-rule="evenodd" clip-rule="evenodd" d="M8 16C12.4183 16 16 12.4183 16 8C16 3.58172 12.4183 0 8 0C3.58172 0 0 3.58172 0 8C0 12.4183 3.58172 16 8 16ZM10.1682 8.33113L10.1896 11.7383H12.486L12.4646 4.26169H10.3925L8.02136 8.24568L5.58611 4.26169H3.51401V11.7383H5.81041V8.44862L7.43391 11.0654H8.54473L10.1682 8.33113Z" fill="#F27900"/>
  166.                                                 </svg>
  167.                                                 <span>{{ station.name|trans }}</span></a>{% if loop.index < 3 and not loop.last %},{% endif %}
  168.                                         </li>
  169.                                     {% endfor %}
  170.                                 </ul>
  171.                             </div>
  172.                             {% for station in profile.stations %}
  173.                                 {% set stationDistrict = station.district %}
  174.                                 {% if stationDistrict %}
  175.                                     {% if loop.first %}
  176.                                         {% set districtCounty = stationDistrict.county %}
  177.                                         {% if districtCounty %}
  178.                                             <div class="region">
  179.                                                 <p class="text-data"><span class="name">Район:</span></p>
  180.                                                 <ul>
  181.                                                     <li><a href="{{ path('profile_list.list_by_county', {'city': districtCounty.city.uriIdentity, 'county': districtCounty.uriIdentity}) }}">{{ districtCounty.name|trans }}</a>,</li>
  182.                                                     <li><a href="{{ path('profile_list.list_by_district', {'city': districtCounty.city.uriIdentity, 'district': stationDistrict.uriIdentity}) }}">{{ stationDistrict.name|trans }}</a></li>
  183.                                                 </ul>
  184.                                             </div>
  185.                                         {% endif %}
  186.                                     {% endif %}
  187.                                 {% endif %}
  188.                             {% endfor %}
  189.                         {% endif %}
  190.                         <div class="table-wrap">
  191.                             <table class="table price-table">
  192.                                 <thead>
  193.                                 <tr>
  194.                                     <th scope="col">{% trans with {} from 'profile' %}Время{% endtrans %}</th>
  195.                                     <th scope="col">{% trans with {} from 'profile' %}Апартаменты{% endtrans %}</th>
  196.                                     <th scope="col">{% trans with {} from 'profile' %}Выезд{% endtrans %}</th>
  197.                                 </tr>
  198.                                 </thead>
  199.                                 <tbody>
  200.                                 <tr>
  201.                                     <td>{% trans with {} from 'profile' %}Час{% endtrans %}</td>
  202.                                     <td>{% if profile.apartmentsPricing.oneHourPrice %}
  203.                                             {{ profile.apartmentsPricing.oneHourPrice }} {{ profile.city.countryCode|country_currency }}
  204.                                         {% else %}-{% endif %}</td>
  205.                                     <td>{% if profile.takeOutPricing.oneHourPrice %}
  206.                                             {{ profile.takeOutPricing.oneHourPrice }} {{ profile.city.countryCode|country_currency }}
  207.                                         {% else %}-{% endif %}</td>
  208.                                 </tr>
  209.                                 <tr>
  210.                                     <td>{% trans with {} from 'profile' %}2 часа{% endtrans %}</td>
  211.                                     <td>{% if profile.apartmentsPricing.twoHoursPrice %}
  212.                                             {{ profile.apartmentsPricing.twoHoursPrice }} {{ profile.city.countryCode|country_currency }}
  213.                                         {% else %}-{% endif %}</td>
  214.                                     <td>{% if profile.takeOutPricing.twoHoursPrice %}
  215.                                             {{ profile.takeOutPricing.twoHoursPrice }} {{ profile.city.countryCode|country_currency }}
  216.                                         {% else %}-{% endif %}</td>
  217.                                 </tr>
  218.                                 <tr>
  219.                                     <td>{% trans with {} from 'profile' %}Ночь{% endtrans %}</td>
  220.                                     <td>{% if profile.apartmentsPricing.nightPrice %}
  221.                                             {{ profile.apartmentsPricing.nightPrice }} {{ profile.city.countryCode|country_currency }}
  222.                                         {% else %}-{% endif %}</td>
  223.                                     <td>{% if profile.takeOutPricing.nightPrice %}
  224.                                             {{ profile.takeOutPricing.nightPrice }} {{ profile.city.countryCode|country_currency }}
  225.                                         {% else %}-{% endif %}</td>
  226.                                 </tr>
  227.                                 <tr>
  228.                                     <td>{% trans with {} from 'profile' %}Экспресс{% endtrans %} <span>(30мин)</span></td>
  229.                                     <td colspan="2">{% if profile.expressPricing.provided %}
  230.                                             {% if profile.expressPricing.price %}
  231.                                                 {{ profile.expressPricing.price }} {{ profile.city.countryCode|country_currency }}
  232.                                             {% else %}
  233.                                                 -
  234.                                             {% endif %}
  235.                                         {% else %}
  236.                                             -
  237.                                         {% endif %}</td>
  238.                                 </tr>
  239.                                 </tbody>
  240.                             </table>
  241.                         </div>
  242.                     </div>
  243.                 </div>
  244.                 <div class="second-data">
  245.                     <ul class="basic-info">
  246.                         <li>{{ _self._data_wrapper('Возраст', profile.personParameters.age, 'Возраст' )}}</li>
  247.                         <li>{{ _self._data_wrapper('Рост', profile.personParameters.height, 'Рост') }}</li>
  248.                         <li>{{ _self._data_wrapper('Вес', profile.personParameters.weight, 'Вес') }}</li>
  249.                         <li>{{ _self._data_wrapper('Размер одежды', profile.personParameters.clothSize, 'Одежда') }}</li>
  250.                         <li>{{ _self._data_wrapper('Размер обуви', profile.personParameters.shoesSize, 'Обувь') }}</li>
  251.                         <li>{{ _self._data_wrapper('Размер груди', profile.personParameters.breastSize, 'Грудь') }}</li>
  252.                     </ul>
  253.                     <div class="wrap">
  254.                         <ul class="basic-info-link">
  255.                             {%- if profile.personParameters.bodyType %}<li class="with-link"><span class="name">Телосложение:</span>
  256.                                 {%- if profile.personParameters.bodyType|body_type == 'THIN' or profile.personParameters.bodyType|body_type == 'FAT' -%}
  257.                                     <a target="_blank" href="{{ path('profile_list.list_by_body_type', {'city': city.uriIdentity,'bodyType': profile.personParameters.bodyType|body_type|slugify}) }}" class="params-link std-hover-link">{{ profile.personParameters.bodyType|body_type|trans({}, 'body_types') }}</a>
  258.                                 {%- else -%}
  259.                                     {{ profile.personParameters.bodyType|body_type|trans({}, 'body_types') }}
  260.                                 {%- endif -%}
  261.                             </li>{% endif -%}
  262.                             {%- if profile.personParameters.hairColor %}<li class="with-link"><span class="name">Цвет волос:</span><a target="_blank" href="{{ path('profile_list.list_by_hair_color', {'city': city.uriIdentity,'hairColor': profile.personParameters.hairColor|hair_color|slugify}) }}" class="params-link std-hover-link">{{ profile.personParameters.hairColor|hair_color|trans({}, 'hair_colors') }}</a></li>{% endif %}
  263.                             {%- if profile.personParameters.nationality %}<li class="with-link"><span class="name">Национальность:</span><a target="_blank" href="{{ path('profile_list.list_by_nationality', {'city': city.uriIdentity,'nationality': profile.personParameters.nationality|nationality|slugify}) }}" class="params-link std-hover-link">{{ profile.personParameters.nationality|nationality|trans({}, 'nationalities') }}</a></li>{% endif %}
  264.                             {%- if profile.personParameters.privateHaircut %}<li class="with-link"><span class="name">Интимная стрижка:</span>{{ profile.personParameters.privateHaircut|private_haircut|trans({}, 'private_haircuts') }}</li>{% endif %}
  265.                         </ul>
  266.                         <ul class="extend-info">
  267.                             {%- if profile.createdAt -%}
  268.                                 <li>{{ _self._data_wrapper('Дата регистрации', profile.createdAt|date("d") ~ ' ' ~ profile.createdAt|date("m")|trans({}, 'date') ~ ' ' ~ profile.createdAt|date("Y") ~ ' ' ~ profile.createdAt|date("H:i") ) }}</li>
  269.                             {%- endif -%}
  270.                             {%- set threshold = ("now"|date_modify("-14 days")).getTimestamp() -%}
  271.                             {%- set updatedAtTs = profile.updatedAt ? profile.updatedAt.getTimestamp() : '' -%}
  272.                             {%- if updatedAtTs and updatedAtTs >= threshold -%}
  273.                                 <li>{{ _self._data_wrapper('Дата обновления', profile.updatedAt|date("d") ~ ' ' ~ profile.updatedAt|date("m")|trans({}, 'date') ~ ' ' ~ profile.updatedAt|date("Y") ~ ' ' ~ profile.updatedAt|date("H:i") ) }}</li>
  274.                             {% endif %}
  275.                             <li>{{ _self._data_wrapper('ID анкеты', profile.id) }}</li>
  276.                         </ul>
  277.                     </div>
  278.                 </div>
  279.             </section>
  280.             {%- if _self._show_tabs(profile.photos,profile.selfies,profile.confirmedVideos) == 'true' and not profile.deleted -%}
  281.                 <section class="tabs">
  282.                     <div class="tabs-block" id="media-tabs">
  283.                         <div class="tab-header d-flex">
  284.                             {% set currentPage = '' %}
  285.                             {% if profile.photos is defined and profile.photos|length > 0 %}{% set currentPage = 'photo' %}<button type="button" class="btn d-flex photo active" data-toggle="photo"><svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
  286.                                     <path d="M20 5H16.83L15.59 3.65C15.4036 3.44539 15.1767 3.28191 14.9235 3.16999C14.6704 3.05807 14.3968 3.00017 14.12 3H9.88C9.32 3 8.78 3.24 8.4 3.65L7.17 5H4C2.9 5 2 5.9 2 7V19C2 20.1 2.9 21 4 21H20C21.1 21 22 20.1 22 19V7C22 5.9 21.1 5 20 5ZM12 18C9.24 18 7 15.76 7 13C7 10.24 9.24 8 12 8C14.76 8 17 10.24 17 13C17 15.76 14.76 18 12 18Z"/>
  287.                                 </svg>
  288.                                 <span>Фото</span></button>{% endif %}
  289.                             {% if profile.selfies is defined and profile.selfies|length > 0 %}{% set currentPage = currentPage == '' ? 'selfie' : currentPage %}<button type="button" class="btn d-flex selfie{% if currentPage == 'selfie' %} active{% endif %}" data-toggle="selfie"><svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
  290.                                     <path fill-rule="evenodd" clip-rule="evenodd" d="M7.34918 2L16.6415 2.00909C17.6637 2.00909 18.5 2.81818 18.5 3.81818V20.1818C18.5 21.1818 17.6637 22 16.6415 22H7.34918C6.32702 22 5.5 21.1818 5.5 20.1818V3.81818C5.5 2.81818 6.32702 2 7.34918 2ZM13.8 5.33642C13.8 5.84874 14.2033 6.26469 14.7001 6.26469C15.1968 6.26469 15.6001 5.84874 15.6001 5.33642C15.6001 4.82393 15.1968 4.40799 14.7001 4.40799C14.2033 4.40799 13.8 4.82393 13.8 5.33642ZM7.5 17.408C8.18084 16.8212 9.90234 16.3214 12.0001 16.3214C13.991 16.3214 15.7158 16.7717 16.5 17.3192V14.5352C15.3825 14.0049 13.8149 13.6912 12.0001 13.6912C10.1852 13.6912 8.61754 14.0049 7.5 14.5352V17.408ZM11.9859 12.7629C10.4973 12.7629 9.28594 11.5133 9.28594 9.97791C9.28594 8.44248 10.4973 7.19295 11.9859 7.19295C13.4745 7.19295 14.6859 8.44248 14.6859 9.97791C14.6859 11.5133 13.4745 12.7629 11.9859 12.7629Z"/>
  291.                                 </svg>
  292.                                 <span>Селфи</span></button>{% endif %}
  293.                             {% if profile.confirmedVideos is defined and profile.confirmedVideos|length > 0 %}{% set currentPage = currentPage == '' ? 'video' : currentPage %}<button type="button" class="btn d-flex video{% if currentPage == 'video' %} active{% endif %}" data-toggle="video"><svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
  294.                                     <path d="M22 17.7143V6.28571C22 5.02857 20.9412 4 19.6471 4H4.35294C3.05882 4 2 5.02857 2 6.28571V17.7143C2 18.9714 3.05882 20 4.35294 20H19.6471C20.9412 20 22 18.9714 22 17.7143ZM9.05882 16.5714V7.42857L16.1176 12L9.05882 16.5714Z"/>
  295.                                 </svg>
  296.                                 <span>Видео</span></button>{% endif %}
  297.                         </div>
  298.                         <div class="tab-content loading">
  299.                             {% set photoIndex = 0 %}
  300.                             {% if profile.photos is defined and profile.photos|length > 0 %}
  301.                                 <div class="tab photo active" data-id="photo">
  302.                                     <div class="photo-list" id="photos-preview">
  303.                                         {% for photo in profile.photos %}
  304.                                             <div class="list-element">
  305.                                                 <a href="{{ responsive_asset(photo.path, "profile_media", "fullsize", "jpg") }}" data-gallery="girl-gallery" class="photoswipe" data-index="{{loop.index0}}">
  306.                                                     <img
  307.                                                             srcset="{{ responsive_asset(photo.path, "profile_media", "196x250", "jpg") }} 196w,
  308.                                                         {{ responsive_asset(photo.path, "profile_media", "177x250", "jpg") }} 177w,
  309.                                                         {{ responsive_asset(photo.path, "profile_media", "228x250", "jpg") }} 228w,
  310.                                                         {{ responsive_asset(photo.path, "profile_media", "250x250", "jpg") }} 260w"
  311.                                                             sizes="(max-width: 660px) 196px,
  312.                                                         (max-width: 980px) 177px,
  313.                                                         (max-width: 1125px) 228px,
  314.                                                         260px"
  315.                                                             src="{{ responsive_asset(photo.path, "profile_media", "250x250", "jpg") }}"
  316.                                                             alt="
  317.                                                                 {%- if loop.index <= altTemplates|length -%}
  318.                                                                     {{ altTemplates[photoIndex] -}}
  319.                                                                 {%- else -%}
  320.                                                                     проститутка {{ profile.name|trans }}, анкета ID{{ profile.id }}, фото{{ photoIndex - 5 -}}
  321.                                                                 {%- endif %}"
  322.                                                             loading="lazy">
  323.                                                 </a>
  324.                                             </div>
  325.                                             {% set photoIndex = loop.index %}
  326.                                         {% endfor %}
  327.                                     </div>
  328.                                 </div>
  329.                             {% endif %}
  330.                             {% if profile.selfies is defined and profile.selfies|length > 0 %}
  331.                                 <div class="tab selfie{% if currentPage == 'selfie' %} active{% endif %}" data-id="selfie">
  332.                                     <div class="photos-block">
  333.                                         <div class="photo-list d-flex flex-wrap" id="selfie-preview">
  334.                                             {% for photo in profile.selfies %}
  335.                                                 {% set photoIndex = loop.index0 + profile.photos|length %}
  336.                                                 <div class="colorbox-photo-a-cont">
  337.                                                     <a href="{{ responsive_asset(photo.path, "profile_media", "fullsize", "jpg") }}" data-gallery="girl-selfie" class="photoswipe" data-index="{{loop.index0}}">
  338.                                                         <img
  339.                                                                 srcset="{{ responsive_asset(photo.path, "profile_media", "196x250", "jpg") }} 196w,
  340.                                                             {{ responsive_asset(photo.path, "profile_media", "177x250", "jpg") }} 177w,
  341.                                                             {{ responsive_asset(photo.path, "profile_media", "228x250", "jpg") }} 228w,
  342.                                                             {{ responsive_asset(photo.path, "profile_media", "250x250", "jpg") }} 260w"
  343.                                                                 sizes="(max-width: 660px) 196px,
  344.                                                             (max-width: 980px) 177px,
  345.                                                             (max-width: 1125px) 228px,
  346.                                                             260px"
  347.                                                                 src="{{ responsive_asset(photo.path, "profile_media", "250x250", "jpg") }}"
  348.                                                             alt="
  349.                                                                 {%- if loop.index + profile.photos|length <= altTemplates|length -%}
  350.                                                                     {{ altTemplates[photoIndex] -}}
  351.                                                                 {%- else -%}
  352.                                                                     проститутка {{ profile.name|trans }}, анкета ID{{ profile.id }}, фото{{ photoIndex - 5 -}}
  353.                                                                 {%- endif %}"
  354.                                                             loading="lazy">
  355.                                                     </a>
  356.                                                 </div>
  357.                                             {% endfor %}
  358.                                         </div>
  359.                                     </div>
  360.                                 </div>
  361.                             {% endif %}
  362.                             {% if profile.confirmedVideos is defined and profile.confirmedVideos|length > 0 %}
  363.                                 <div class="tab video{% if currentPage == 'video' %} active{% endif %}" data-id="video">
  364.                                     <div class="videos-block">
  365.                                         <ul class="video-list d-flex flex-wrap">
  366.                                             {% for video in profile.confirmedVideos %}
  367.                                                 <li>
  368.                                                     <video class="video-js vjs-big-play-centered vjs-default-skin" controls="controls" preload="metadata" data-setup="{}">
  369.                                                         <source src="{{ asset(video.path, 'profile_media') }}#t=0.5" type='video/mp4'/>
  370.                                                     </video>
  371.                                                 </li>
  372.                                             {% endfor %}
  373.                                         </ul>
  374.                                     </div>
  375.                                 </div>
  376.                             {% endif %}
  377.                         </div>
  378.                     </div>
  379.                 </section>
  380.             {% endif %}
  381.             <section class="about">
  382.                 <h2 class="border-line"><svg class="icon mr-2">
  383.                         <use xlink:href="#icon-about"></use>
  384.                     </svg>{% trans with {} from 'profile' %}О себе{% endtrans %}</h2>
  385.                 <noindex><p>{{ profile.description }}</p></noindex>
  386.             </section>
  387.             <section class="services">
  388.                 <h2 class="border-line"><svg class="icon mr-2">
  389.                         <use xlink:href="#icon-services"></use>
  390.                     </svg>{% trans with {} from 'profile' %}Предпочтения{% endtrans %}</h2>
  391.                 <div class="services-info d-flex flex-wrap">
  392.                     <div class="header-item mr-3">
  393.                         <svg class="icon mr-1">
  394.                             <use xlink:href="#icon-model-included"></use>
  395.                         </svg>
  396.                         - включено в стоимость
  397.                     </div>
  398.                     <div class="header-item mr-3">
  399.                         <svg class="icon mr-1">
  400.                             <use xlink:href="#icon-model-liking"></use>
  401.                         </svg>
  402.                         - по симпатии
  403.                     </div>
  404.                     <div class="header-item mr-3">
  405.                         <svg class="icon mr-1">
  406.                             <use xlink:href="#icon-model-charge"></use>
  407.                         </svg>
  408.                         - за дополнительную плату
  409.                     </div>
  410.                     <div class="header-item provided">
  411.                         <svg class="icon mr-1">
  412.                             <use xlink:href="#icon-model-provided"></use>
  413.                         </svg>
  414.                         - услуга не предоставляется
  415.                     </div>
  416.                 </div>
  417.                 <div class="model-services__main">
  418.                     <div class="model-services__items left w-100">
  419.                         {% set initional_group_2 = 0 %}
  420.                         {% set group_2_minet = [] %}
  421.                         {% set group_2_okon = [] %}
  422.                         {% set group_2_okon_trigger = ['Окончание на грудь','Окончание на лицо','Окончание в рот'] %} {# Слова триггеры в 2 категории для блока Окончание. Все остальные уйдут в минет #}
  423.                         {% for group, servicesGroup in services | filter((servicesGroup, group) => not profile.masseur or group not in masseurExcludeServiceGroups) %}
  424.                             {% if group == 2 %}
  425.                                 {# Тут нам нужно запомнить данные и разбить их на 2 категории - Минет и Окончание#}
  426.                                 {% for service in servicesGroup %}
  427.                                     {% if service.name == group_2_okon_trigger[0] or service.name == group_2_okon_trigger[1] or service.name == group_2_okon_trigger[2]  %}
  428.                                         {% set group_2_okon = group_2_okon|merge([service]) %}
  429.                                     {% else %}
  430.                                         {% set group_2_minet = group_2_minet|merge([service]) %}
  431.                                     {% endif %}
  432.                                 {% endfor %}
  433.                             {% elseif group == 3 and initional_group_2 == 0 %}
  434.                                 {# Т.к. выводить сразу не можем в виду перемешенного вывода, будем выводить 2ю категории перед третьей #}
  435.                                 {% set initional_group_2 = 1 %}
  436.                                 <div class="model-services__item">
  437.                                     <p class="item-title"><span>Минет</span></p>
  438.                                     {% for service in group_2_minet %}
  439.                                         {% set providedService = profile.providedService(service) %}
  440.                                         <p class="item{% if not providedService %} provided{% endif %}">
  441.                                             {% if providedService %}
  442.                                                 {% if providedService.condition == 1 %}
  443.                                                     <svg class="icon mr-1">
  444.                                                         <use xlink:href="#icon-model-included"></use>
  445.                                                     </svg>
  446.                                                 {% elseif providedService.condition == 2 %}
  447.                                                     <svg class="icon mr-1">
  448.                                                         <use xlink:href="#icon-model-liking"></use>
  449.                                                     </svg>
  450.                                                 {% elseif providedService.condition == 3 %}
  451.                                                     <svg class="icon mr-1">
  452.                                                         <use xlink:href="#icon-model-charge"></use>
  453.                                                     </svg>
  454.                                                 {% endif %}
  455.                                             {% else %}
  456.                                                 <svg class="icon mr-1">
  457.                                                     <use xlink:href="#icon-model-provided"></use>
  458.                                                 </svg>
  459.                                             {% endif %}
  460.                                             <a href="{{ path('profile_list.list_by_provided_service', {'city': profile.city.uriIdentity, 'service': service.uriIdentity}) }}" data-s="{{ service.name }}">
  461.                                                 {{ service.name|trans }}
  462.                                             </a>
  463.                                             {% if providedService and providedService.condition == 3 and providedService.extraCharge %}<span>+{{ providedService.extraCharge }} {{ currencyFront }}</span>{% endif %}
  464.                                         </p>
  465.                                     {% endfor %}
  466.                                 </div>
  467.                                 <div class="model-services__item">
  468.                                     <p class="item-title"><span>Окончание</span></p>
  469.                                     {% for service in group_2_okon %}
  470.                                         {% set providedService = profile.providedService(service) %}
  471.                                         <p class="item{% if not providedService %} provided{% endif %}">
  472.                                             {% if providedService %}
  473.                                                 {% if providedService.condition == 1 %}
  474.                                                     <svg class="icon mr-1">
  475.                                                         <use xlink:href="#icon-model-included"></use>
  476.                                                     </svg>
  477.                                                 {% elseif providedService.condition == 2 %}
  478.                                                     <svg class="icon mr-1">
  479.                                                         <use xlink:href="#icon-model-liking"></use>
  480.                                                     </svg>
  481.                                                 {% elseif providedService.condition == 3 %}
  482.                                                     <svg class="icon mr-1">
  483.                                                         <use xlink:href="#icon-model-charge"></use>
  484.                                                     </svg>
  485.                                                 {% endif %}
  486.                                             {% else %}
  487.                                                 <svg class="icon mr-1">
  488.                                                     <use xlink:href="#icon-model-provided"></use>
  489.                                                 </svg>
  490.                                             {% endif %}
  491.                                             <a href="{{ path('profile_list.list_by_provided_service', {'city': profile.city.uriIdentity, 'service': service.uriIdentity}) }}" data-s="{{ service.name }}">
  492.                                                 {{ service.name|trans }}
  493.                                             </a>
  494.                                             {% if providedService and providedService.condition == 3 and providedService.extraCharge %}<span>+{{ providedService.extraCharge }} {{ currencyFront }}</span>{% endif %}
  495.                                         </p>
  496.                                     {% endfor %}
  497.                                 </div>
  498.                                 <div class="model-services__item">
  499.                                     <p class="item-title" data-group="{{ group }}"><span>{{ group|service_group|trans({}, 'service_groups') }}</span></p>
  500.                                     {% for service in servicesGroup %}
  501.                                         {% set providedService = profile.providedService(service) %}
  502.                                         <p class="item{% if not providedService %} provided{% endif %}">
  503.                                             {% if providedService %}
  504.                                                 {% if providedService.condition == 1 %}
  505.                                                     <svg class="icon mr-1">
  506.                                                         <use xlink:href="#icon-model-included"></use>
  507.                                                     </svg>
  508.                                                 {% elseif providedService.condition == 2 %}
  509.                                                     <svg class="icon mr-1">
  510.                                                         <use xlink:href="#icon-model-liking"></use>
  511.                                                     </svg>
  512.                                                 {% elseif providedService.condition == 3 %}
  513.                                                     <svg class="icon mr-1">
  514.                                                         <use xlink:href="#icon-model-charge"></use>
  515.                                                     </svg>
  516.                                                 {% endif %}
  517.                                             {% else %}
  518.                                                 <svg class="icon mr-1">
  519.                                                     <use xlink:href="#icon-model-provided"></use>
  520.                                                 </svg>
  521.                                             {% endif %}
  522.                                             <a href="{{ path('profile_list.list_by_provided_service', {'city': profile.city.uriIdentity, 'service': service.uriIdentity}) }}" data-s="{{ service.name }}">
  523.                                                 {{ service.name|trans }}
  524.                                             </a>
  525.                                             {% if providedService and providedService.condition == 3 and providedService.extraCharge %}<span>+{{ providedService.extraCharge }} {{ currencyFront }}</span>{% endif %}
  526.                                         </p>
  527.                                     {% endfor %}
  528.                                 </div>
  529.                             {% else %}
  530.                                 {% if group == 1 or group == 5 or group == 7 %}
  531.                                     <div class="model-services__column">
  532.                                 {% endif %}
  533.                                 <div class="model-services__item">
  534.                                     <p class="item-title"><span>{{ group|service_group|trans({}, 'service_groups') }}</span></p>
  535.                                     {% for service in servicesGroup %}
  536.                                         {% set providedService = profile.providedService(service) %}
  537.                                         <p class="item{% if not providedService %} provided{% endif %}">
  538.                                             {% if providedService %}
  539.                                                 {% if providedService.condition == 1 %}
  540.                                                     <svg class="icon mr-1">
  541.                                                         <use xlink:href="#icon-model-included"></use>
  542.                                                     </svg>
  543.                                                 {% elseif providedService.condition == 2 %}
  544.                                                     <svg class="icon mr-1">
  545.                                                         <use xlink:href="#icon-model-liking"></use>
  546.                                                     </svg>
  547.                                                 {% elseif providedService.condition == 3 %}
  548.                                                     <svg class="icon mr-1">
  549.                                                         <use xlink:href="#icon-model-charge"></use>
  550.                                                     </svg>
  551.                                                 {% endif %}
  552.                                             {% else %}
  553.                                                 <svg class="icon mr-1">
  554.                                                     <use xlink:href="#icon-model-provided"></use>
  555.                                                 </svg>
  556.                                             {% endif %}
  557.                                             <a href="{{ path('profile_list.list_by_provided_service', {'city': profile.city.uriIdentity, 'service': service.uriIdentity}) }}">{{ service.name|trans }}</a>
  558.                                             {% if providedService and providedService.condition == 3 and providedService.extraCharge %}<span>+{{ providedService.extraCharge }} {{ currencyFront }}</span>{% endif %}
  559.                                         </p>
  560.                                     {% endfor %}
  561.                                 </div>
  562.                                 {% if (group == 4 and not profile.masseur) or group == 6 or group == 7 %}
  563.                                     </div>
  564.                                 {% endif %}
  565.                             {% endif %}
  566.                         {% endfor %}
  567.                     </div>
  568.                     <div class="services-special d-flex">
  569.                         <div class="services-special__item mr-3">
  570.                             <h3><span>Услуги для:</span></h3>
  571.                             {% set client_types_text = ['1','2','3','4','5'] %}
  572.                             {% set includeService = false %}
  573.                             <div class="list">
  574.                                 {% for clientTypeText in client_types_text %}
  575.                                     {% for clientType in profile.clientTypes %}
  576.                                         {% if (clientTypeText == clientType) %}
  577.                                             {% set includeService = true %}
  578.                                         {% endif %}
  579.                                     {% endfor %}
  580.                                     {% if clientTypeText|client_type != 'TRANS' %}
  581.                                     <p class="item">
  582.                                         {% if includeService == true %}
  583.                                             <svg class="icon mr-1">
  584.                                                 <use xlink:href="#icon-model-included"></use>
  585.                                             </svg>
  586.                                         {% else %}
  587.                                             <svg class="icon mr-1">
  588.                                                 <use xlink:href="#icon-model-provided"></use>
  589.                                             </svg>
  590.                                         {% endif %}
  591.                                         {{ clientTypeText|client_type|trans({}, 'client_types_f') }}
  592.                                     </p>
  593.                                         {% endif %}
  594.                                     {% set includeService = false %}
  595.                                 {% endfor %}
  596.                             </div>
  597.                         </div>
  598.                         <div class="services-special__item">
  599.                             <h3><span>Выезд</span></h3>
  600.                             {% set locations_text = ['1','2','3','4','5','6'] %}
  601.                             {% set includeService = false %}
  602.                             <div class="list">
  603.                                 {% for locationsText in locations_text %}
  604.                                     {% for locations in profile.takeOutPricing.locations %}
  605.                                         {% if (locationsText == locations) %}
  606.                                             {% set includeService = true %}
  607.                                         {% endif %}
  608.                                     {% endfor %}
  609.                                     <p class="item">
  610.                                         {% if includeService == true %}
  611.                                             <svg class="icon mr-1">
  612.                                                 <use xlink:href="#icon-model-included"></use>
  613.                                             </svg>
  614.                                         {% else %}
  615.                                             <svg class="icon mr-1">
  616.                                                 <use xlink:href="#icon-model-provided"></use>
  617.                                             </svg>
  618.                                         {% endif %}
  619.                                         {{ locationsText|take_out_location|trans({}, 'take_out_location') }}
  620.                                     </p>
  621.                                     {% set includeService = false %}
  622.                                 {% endfor %}
  623.                             </div>
  624.                         </div>
  625.                     </div>
  626.                 </div>
  627.             </section>
  628.         </div>
  629.         <div class="cols-2">
  630.             <section class="map">
  631.                 <h2 class="border-line"><svg class="icon mr-2">
  632.                         <use xlink:href="#icon-profile-map"></use>
  633.                     </svg>{% trans with {} from 'profile' %}Расположение{% endtrans %}</h2>
  634.                 <div class="map-block" id="map" style="width: 100%; height: 450px;"
  635.                      data-lat="{{ profile.mapCoordinate.latitude | default(profile.city.mapCoordinate.latitude) }}"
  636.                      data-lon="{{ profile.mapCoordinate.longitude | default(profile.city.mapCoordinate.longitude) }}"
  637.                      data-map-label="{{ asset('assets/images/map-label.svg') }}">
  638.                 </div>
  639.             </section>
  640.             {% if feature('profile_comments') and not profile.deleted %}
  641.                 {% set commentsCount = profile.comments|length %}
  642.                 <section class="comments"
  643.                     id="review-form"
  644.                     data-user="{{ is_user_customer(app.user) ? 'true' : 'false' }}"
  645.                     data-url="{{ path('profile.comment.create', {profile: profile.id}) }}"
  646.                     data-reg-url="{{ path('app_security_register') }}"
  647.                     {% if comment_form is defined %}data-entity-id="{{ comment_form.entity_id.vars.id }}"
  648.                     data-mark="{{ comment_form.mark.vars.full_name }}"
  649.                     data-text="{{ comment_form.text.vars.id }}"{% endif %}
  650.                 >
  651.                     <h2 class="border-line"><svg class="icon mr-2">
  652.                             <use xlink:href="#icon-public-comments"></use>
  653.                         </svg>{% trans with {} from 'profile' %}Отзывы{% endtrans %}</h2>
  654.                     <div class="comments-main">
  655.                         <div class="comments-main_wrap d-flex justify-content-center">
  656.                             {% if commentsCount == 0 %}
  657.                                 <div class="not-comments text-center" id="review-block-list">
  658.                                     <div  id="text-to-remove">
  659.                                         <svg width="100" height="100" viewBox="0 0 100 100" fill="none" xmlns="http://www.w3.org/2000/svg">
  660.                                             <path d="M14 78.7096H23V97L45.9545 78.7096H68C72.9635 78.7096 77 74.6894 77 69.7459V33.8911C77 28.9476 72.9635 24.9274 68 24.9274H14C9.0365 24.9274 5 28.9476 5 33.8911V69.7459C5 74.6894 9.0365 78.7096 14 78.7096Z" fill="#E5E5E5"/>
  661.                                             <path d="M86 7H32C27.0365 7 23 11.0202 23 15.9637H77C81.9635 15.9637 86 19.9839 86 24.9274V60.7822C90.9635 60.7822 95 56.762 95 51.8185V15.9637C95 11.0202 90.9635 7 86 7Z" fill="#E5E5E5"/>
  662.                                         </svg>
  663.                                         <p>Пока отзывов нет.<br>Оставьте первый отзыв.</p>
  664.                                     </div>
  665.                                     <div class="comment__elements" style="display: none">{% include 'ProfilePreview/comment-empty.html.twig' %}</div>
  666.                                 </div>
  667.                             {% else %}
  668.                                 <div class="comments overflow-hidden" id="review-block-list">
  669.                                     <div class="comment__elements">
  670.                                         {% for comment in profile.comments %}
  671.                                             {% include 'ProfilePreview/comment.html.twig' %}
  672.                                         {% endfor %}
  673.                                     </div>
  674.                                 </div>
  675.                             {% endif %}
  676.                         </div>
  677.                         {% if not is_user_advertiser(app.user) %}
  678.                             {# {% include 'ProfilePreview/form-comment.html.twig' %} #}
  679.                                 <div class="review-form" id="review-form-comment">
  680.                                     {# {% include 'ProfilePreview/form-comment.html.twig' %} #}
  681.                                 </div>
  682.                                 <div
  683.                                         class="dialog-container"
  684.                                         id="form-dialog"
  685.                                         aria-hidden="true"
  686.                                         aria-labelledby="form-dialog-title"
  687.                                         aria-describedby="form-dialog-description"
  688.                                     >
  689.                                     <div class="dialog-overlay" data-a11y-dialog-hide></div>
  690.                                     <div class="dialog-content" role="document">
  691.                                         <div class="dialog-header">
  692.                                         <button
  693.                                             data-a11y-dialog-hide
  694.                                             class="dialog-close"
  695.                                             aria-label="Close this dialog window"
  696.                                         >
  697.                                             <svg class="dialog-close__icon" fill="none" viewBox="0 0 14 14"><path fill-rule="evenodd" clip-rule="evenodd" d="M13.7 1.7A1 1 0 0 0 12.3.3L7 5.58 1.7.29A1 1 0 0 0 .3 1.71L5.58 7l-5.3 5.3a1 1 0 1 0 1.42 1.4L7 8.42l5.3 5.3a1 1 0 0 0 1.4-1.42L8.42 7l5.3-5.3Z"/></svg>
  698.                                         </button>
  699.                                         </div>
  700.                                         <div class="dialog-body">
  701.                                         </div>
  702.                                     </div>
  703.                                 </div>
  704.                         {% endif %}
  705.                     </div>
  706.                 </section>
  707.             {% endif %}
  708.         </div>
  709.     </div>
  710.     {% set excludeRecommendationProfileIds = [profile.id] %}
  711.     {{ include('components/_profile_recommendations.html.twig') }}
  712.     {{ include('ProfilePreview/nearest_profiles.html.twig') }}
  713. {% endblock %}
  714. {% block mobile_phone %}{%- include 'ProfilePreview/components/profile-phone-mobile.partial.twig' with {} -%}{% endblock %}
  715. {% block javascripts %}
  716.     <script>
  717.         window.comment_data = {
  718.             'urlCreate': '{{ path('profile.comment.create', {profile: profile.id}) }}',
  719.             'urlGet': '{{ path('profile.comment.comment_form', {profile: profile.id}) }}',
  720.             'sitekey': "{{ ewz_recaptcha_site_key }}",
  721.             'registrationUrl': "{{ path('register', {'city': city.uriIdentity}) }}"
  722.         };
  723.         window._lD = {
  724.             setLastViewedListing: '{{ app.request.attributes.get('_route') }}',
  725.             cityUrl: "{{city.uriIdentity}}",
  726.         };
  727.         window._strl = {
  728.             stations: {
  729.                 {%- for station in stations() -%}
  730.                     "{{ station.name|trans }}": "{{ path('profile_list.list_by_station', {'city': station.city.uriIdentity, 'station': station.uriIdentity}) }}"{% if not loop.last %},{% endif %}
  731.                 {%- endfor -%}
  732.             }
  733.         };
  734.     </script>
  735.     <script src="https://www.google.com/recaptcha/api.js" async defer></script>
  736.     {% set excludeRecommendationProfileIds = [profile.id] %}
  737.     {{ encore_entry_script_tags('scripts/index', null, 'basicConfig') }}
  738.     {{ parent() }}
  739.     <script type="text/javascript">
  740.         if ((window.navigator.userAgent.indexOf('iPhone') !== -1) || (window.navigator.userAgent.indexOf('iPod') !== -1)){
  741.             const video = document.querySelector('.video-js');
  742.             video.setAttribute('autoplay', true);
  743.         }
  744.     </script>
  745.     <script>
  746.         (function() {
  747.             let isRenderRecommendationsWidget = false;
  748.             let isRenderBotWidget = false;
  749.             let isRenderRecentlyViewedWidget = false;
  750.             function loadWidgets() {
  751.                 if (!isRenderRecommendationsWidget) {
  752.                     isRenderRecommendationsWidget = true;
  753.                     window.Recommendations.addViewedProfile({{ profile.id }})
  754.                 }
  755.                 if (!isRenderBotWidget) {
  756.                     isRenderBotWidget = true;
  757.                     window.profileBotHelper.addViewedProfile({{ profile.id }});
  758.                 }
  759.                 if (!isRenderRecentlyViewedWidget) {
  760.                     isRenderRecentlyViewedWidget = true;
  761.                     window.recentlyViewed.addViewedProfile({{ profile.id }});
  762.                 }
  763.                 //const recentlyViewedProfiles = recentlyViewed.getViewedProfiles();
  764.             }
  765.             document.addEventListener('DOMContentLoaded', function() {
  766.                 try {
  767.                     loadWidgets();
  768.                 } catch (error) {
  769.                     console.error(error);
  770.                 }
  771.             });
  772.             document.addEventListener("recommendations:ready", function() {
  773.                 try {
  774.                     loadWidgets();
  775.                 } catch (error) {
  776.                     console.error(error);
  777.                 }
  778.             });
  779.         })();
  780.         document.addEventListener('DOMContentLoaded', function() {
  781.             window.increase_views({{profile.id}});
  782.         });
  783.     </script>
  784. {% endblock %}