templates/ProfilePreview/components/media.partial.twig line 1

Open in your IDE?
  1. {% import 'ProfilePreview/utils/macros.partial.twig' as macros %}
  2. {% set isPhoto = profile.photos is defined and profile.photos|length > 0%}
  3. {% set isSelfie = profile.selfies is defined and profile.selfies|length > 0%}
  4. {% set isVideo = profile.confirmedVideos is defined and profile.confirmedVideos|length > 0%}
  5. {%- set activeElement = isPhoto ? 'photo' : (isSelfie ? 'selfie' : (isVideo ? 'video' : '')) -%}
  6. <div class="profile-media d-flex">
  7.     <div class="tab-list btn-list">
  8.         {%- set currentTab = '' -%}
  9.         {%- if isPhoto -%}
  10.             {%- set currentTab = 'photo' -%}
  11.             {{- macros._tab_btn('photo', activeElement) -}}
  12.          {%- endif -%}
  13.         {%- if isSelfie -%}
  14.             {%- set currentTab = currentTab == '' ? 'selfie' : currentTab -%}
  15.             {{- macros._tab_btn('selfie', activeElement) -}}
  16.         {%- endif -%}
  17.         {%- if isVideo -%}
  18.             {%- set currentTab = currentTab == '' ? 'video' : currentTab -%}
  19.             {{- macros._tab_btn('video', activeElement) -}}
  20.         {%- endif -%}
  21.     </div>
  22.     {# <div class="tab-content loading">
  23.         {% set skeletonCount = currentTab == 'photo' ? profile.photos|length : (currentTab == 'selfie' ? profile.selfies|length : profile.confirmedVideos|length) %}
  24.         {% set skeletonCount = skeletonCount > 5 ? 5 : skeletonCount %}
  25.         <div class="tab-content-item active">
  26.             <div class="photo-block">
  27.                 <div class="photo-list d-flex-c" id="photo-list">
  28.                     {% for i in 0..skeletonCount %}
  29.                         <div class="profile-media-link skeleton">
  30.                         </div>
  31.                     {% endfor %}
  32.                 </div>
  33.             </div>
  34.         </div>
  35.     </div> #}
  36.     <div class="tab-content">
  37.         {%- if profile.photos is defined and profile.photos|length > 0 -%}
  38.             <div class="tab-content-item{{ currentTab == 'photo' ? ' active' : '' }}" data-toggle-content="photo">
  39.                 <div class="photo-block swiper" id="photo-swiper">
  40.                     <div class="photo-list d-flex-c swiper-wrapper" id="photo-list">
  41.                         {%- for photo in profile.photos -%}
  42.                             {%- if photo.path -%}
  43.                                 {%- set alt = macros._get_alt(profile, servicesList, loop.index) -%}
  44.                                 <a class="profile-media-link image-fade skeleton swiper-slide" href="{{ responsive_asset(photo.path, "profile_media", "fullsize", "jpg") }}"
  45.                                     data-gallery="girl-gallery"
  46.                                     {# class="photoswipe" #}
  47.                                     data-index="{{loop.index}}">
  48.                                     <img
  49.                                         class="profile-media-image"
  50.                                         loading="lazy"
  51.                                         src="{{ responsive_asset(photo.path, "profile_media", "h150", "jpg") }}"
  52.                                         alt="{{ alt }}">
  53.                                 </a>
  54.                             {%- endif -%}
  55.                         {%- endfor -%}
  56.                     </div>
  57.                     <div class="swiper-scrollbar swiper-loading"></div>
  58.                     <div class="swiper-button-list swiper-loading">
  59.                         <div class="swiper-button swiper-button-prev"><span class="swiper-button-wrap swiper-button-prev-wrap"></span></div>
  60.                         <div class="swiper-button swiper-button-next"><span class="swiper-button-wrap swiper-button-next-wrap"></span></div>
  61.                     </div>
  62.                 </div>
  63.             </div>
  64.         {%- endif -%}
  65.         {% if profile.selfies is defined %}
  66.             <div class="tab-content-item{{ currentTab == 'selfie' ? ' active' : '' }}" data-toggle-content="selfie">
  67.                 <div class="photo-block swiper" id="selfie-swiper">
  68.                     <div class="photo-list d-flex-c swiper-wrapper" id="selfie-list">
  69.                         {% for photo in profile.selfies %}
  70.                             {%- if photo.path -%}
  71.                                 {% set uniqId = loop.index + profile.photos|length %}
  72.                                 {% set alt = macros._get_alt(profile, servicesList, uniqId) %}
  73.                                 <a class="profile-media-link image-fade skeleton swiper-slide" href="{{ responsive_asset(photo.path, "profile_media_selfie", "fullsize", "jpg") }}"
  74.                                     data-gallery="girl-selfie"
  75.                                     {# class="photoswipe" #}
  76.                                     data-index="{{uniqId}}">
  77.                                     <img
  78.                                         class="profile-media-image"
  79.                                         loading="lazy"
  80.                                         src="{{ responsive_asset(photo.path, "profile_media_selfie", "h150", "jpg") }}"
  81.                                         alt="{{ alt }}">
  82.                                 </a>
  83.                             {%- endif -%}
  84.                         {%- endfor -%}
  85.                     </div>
  86.                     <div class="swiper-scrollbar swiper-loading"></div>
  87.                     <div class="swiper-button-list swiper-loading">
  88.                         <div class="swiper-button swiper-button-prev"><span class="swiper-button-wrap swiper-button-prev-wrap"></span></div>
  89.                         <div class="swiper-button swiper-button-next"><span class="swiper-button-wrap swiper-button-next-wrap"></span></div>
  90.                     </div>
  91.                 </div>
  92.             </div>
  93.         {%- endif -%}
  94.         {% if profile.confirmedVideos is defined and profile.confirmedVideos|length > 0 %}
  95.             <div class="tab-content-item{{ currentTab == 'video' ? ' active' : '' }}" data-toggle-content="video">
  96.                 <div class="photo-block video-block swiper" id="video-swiper">
  97.                     <div class="photo-list video-list d-flex-c swiper-wrapper" id="video-list">
  98.                         {% for video in profile.confirmedVideos %}
  99.                             <div class="swiper-slide video-item profile-media-link">
  100.                                 <video class="" preload="metadata" width="341" height="227" loop>
  101.                                     <source src="{{ asset(video.path, template == 'profile' ? 'profile_media' : 'saloon_media_video') }}" type='video/mp4'/>
  102.                                 </video>
  103.                                 <svg class="video-play" width="80" height="81" viewBox="0 0 80 81"><path fill="#fff" fill-rule="evenodd" d="M40 7.28a33.35 33.35 0 0 0 0 66.67 33.35 33.35 0 0 0 0-66.67Zm0 60a26.7 26.7 0 0 1-26.67-26.66A26.7 26.7 0 0 1 40 13.95a26.7 26.7 0 0 1 26.67 26.67A26.7 26.7 0 0 1 40 67.28Zm13.33-26.66-20 15v-30l20 15Z" clip-rule="evenodd" opacity=".6"/></svg>
  104.                             </div>
  105.                         {%- endfor -%}
  106.                     </div>
  107.                     <div class="swiper-scrollbar swiper-loading"></div>
  108.                     <div class="swiper-button-list swiper-loading">
  109.                         <div class="swiper-button swiper-button-prev"><span class="swiper-button-wrap swiper-button-prev-wrap"></span></div>
  110.                         <div class="swiper-button swiper-button-next"><span class="swiper-button-wrap swiper-button-next-wrap"></span></div>
  111.                     </div>
  112.                 </div>
  113.             </div>
  114.         {%- endif -%}
  115.     </div>
  116. </div>
  117. <script>
  118. </script>