templates/modul/index.html.twig line 1

Open in your IDE?
  1. {% extends 'siteBase.html.twig' %}
  2. {# Sayfa İstekleri #}
  3. {% set sBoyutlar = 'slider'|ayarlar|split('X') %}
  4. {% set sliders = ''|site_sliders %}
  5. {% block dil %}{{ app.session.get('dil')['kisa'] }}{% endblock %} {# tr or en #}
  6. {% block title %}{{ 'title'|ayarlar(app.session.get('dil')['id']) }}{% endblock %}
  7. {% block keywords %}{{ 'keywords'|ayarlar(app.session.get('dil')['id']) }}{% endblock %}
  8. {% block description %}{{ 'description'|ayarlar(app.session.get('dil')['id']) }}{% endblock %}
  9. {% block title2 %}{{ 'title'|ayarlar(app.session.get('dil')['id']) }}{% endblock %}
  10. {% block description2 %}{{ 'description'|ayarlar(app.session.get('dil')['id']) }}{% endblock %}
  11. {% block image_alt %}{{ 'title'|ayarlar(app.session.get('dil')['id']) }}{% endblock %}
  12. {% block title3 %}{{ 'title'|ayarlar(app.session.get('dil')['id']) }}{% endblock %}
  13. {% block description3 %}{{ 'description'|ayarlar(app.session.get('dil')['id']) }}{% endblock %}
  14. {% block image %}{{ 'siteYolu'|ayarlar~'storage/logo.webp' }}{% endblock %}
  15. {% block image2 %}{{ 'siteYolu'|ayarlar~'storage/logo.webp' }}{% endblock %}
  16. {% block body %}
  17.  
  18.   {#
  19. -- Slider : "sliders" adında bir dizide döndürülmektedir. Dizinin "baslik, aciklama, resim" değişkenleri bulunuyor. Bu bilgiler ile kodlamayınız.
  20. ----------------------------------------------------
  21. #}
  22.     <style>
  23.         .astro-bg {
  24.             position: relative;
  25.             background: linear-gradient(135deg, #1e0f3a 0%, #4b1f6f 45%, #7b2cbf 100%);
  26.             overflow: hidden;
  27.         }
  28.         .astro-bg::before {
  29.             content: "";
  30.             position: absolute;
  31.             inset: 0;
  32.             background-image:
  33.                     radial-gradient(2px 2px at 20px 30px, white, transparent),
  34.                     radial-gradient(2px 2px at 80px 120px, white, transparent),
  35.                     radial-gradient(2px 2px at 150px 60px, white, transparent),
  36.                     radial-gradient(2px 2px at 200px 200px, white, transparent),
  37.                     radial-gradient(2px 2px at 300px 80px, white, transparent),
  38.                     radial-gradient(2px 2px at 400px 150px, white, transparent);
  39.             background-repeat: repeat;
  40.             background-size: 400px 400px;
  41.             opacity: 0.6;
  42.             animation: starsMove 60s linear infinite;
  43.             z-index: 1;
  44.         }
  45.         .astro-bg::after {
  46.             content: "";
  47.             position: absolute;
  48.             inset: 0;
  49.             background-image: radial-gradient(1px 1px at 50px 50px, #fff, transparent);
  50.             background-size: 200px 200px;
  51.             opacity: 0.4;
  52.             z-index: 1;
  53.         }
  54.         @keyframes starsMove {
  55.             from {
  56.                 transform: translateY(0);
  57.             }
  58.             to {
  59.                 transform: translateY(-400px);
  60.             }
  61.         }
  62.     </style>
  63.     <!-- Hero with search form and slider -->
  64.     <section class="py-5 astro-bg" >
  65.         <div class="container py-sm-2 py-md-3 py-lg-4 py-xl-5" style="position: relative; z-index: 2">
  66.             <div class="row align-items-center justify-content-center">
  67.                 <div class="col-md-7 mb-5 mb-md-0">
  68.                     <h1 class="display-3 text-white text-center text-md-start pb-sm-2 pb-md-3 pb-lg-0 pb-xxl-3 mb-4 mb-lg-5">Sana nasıl yardımcı olabilirim?</h1>
  69.                     <!-- Search form -->
  70.                     <form class="bg-white border rounded p-2" data-bs-theme="light">
  71.                         <div class="d-flex flex-column flex-lg-row gap-2 p-1">
  72.                             <div class="d-flex flex-column flex-sm-row w-100 gap-2 gap-sm-3">
  73.                                 <div class="position-relative w-100" >
  74.                                     <i class="fi-arrow-down-right position-absolute top-50 start-0 translate-middle-y z-1 fs-xl text-secondary-emphasis ms-2"></i>
  75.                                     <select class="form-select form-select-lg form-icon-start border-0" id="konu" data-select='{
  76.                         "classNames": {
  77.                           "containerInner": ["form-select", "form-select-lg", "form-icon-start", "border-0"]
  78.                         },
  79.                         "searchEnabled": true
  80.                       }' aria-label="Location select" required onchange="$('.ss').fadeOut(0);$('#tur').val('');if(this.value==''){return;}if(this.value=='Aşk'){$('.ozelSecim').fadeIn(0);}else{$('.ozelSecim2').fadeIn(0);}">
  81.                                         <option value="">Konu</option>
  82.                                         <option value="Aşk">Aşk</option>
  83.                                         <option value="Genel Konular">Genel Konular</option>
  84.                                     </select>
  85.                                 </div>
  86.                                 <hr class="d-sm-none m-0">
  87.                                 <hr class="vr d-none d-sm-block my-2">
  88.                                 <div class="position-relative w-100">
  89.                                     <i class="fi-user-check position-absolute top-50 start-0 translate-middle-y z-1 fs-xl text-secondary-emphasis ms-2"></i>
  90.                                     <select class="form-select form-select-lg form-icon-start border-0" id="tur" data-select='{
  91.                         "classNames": {
  92.                           "containerInner": ["form-select", "form-select-lg", "form-icon-start", "border-0"]
  93.                         },
  94.                         "searchEnabled": true
  95.                       }' aria-label="Location select" required>
  96.                                         <option value="">Tür</option>
  97.                                         <option value="Belirli bir kişi" class="ss ozelSecim" style="display: none;">Belirli bir kişi</option>
  98.                                         <option value="Diğer" class="ss ozelSecim" style="display: none;">Diğer</option>
  99.                                         <option value="Tüm Paketler" class="ss ozelSecim2" style="display: none;">Tüm Paketler</option>
  100.                                     </select>
  101.                                 </div>
  102.                             </div>
  103.                             <button type="button" class="btn btn-lg btn-primary">Ara</button>
  104.                         </div>
  105.                     </form>
  106.                 </div>
  107.                 <!-- Slider -->
  108.                 <div class="col-10 col-sm-7 col-md-5 col-xl-4 offset-xl-1">
  109.                     <div class="ps-md-4 ps-xl-0">
  110.                         <div class="position-relative">
  111.                             <div class="swiper" data-swiper='{
  112.                     "effect": "creative",
  113.                     "speed": 450,
  114.                     "allowTouchMove": false,
  115.                     "autoplay": {
  116.                       "delay": 6500,
  117.                       "disableOnInteraction": false
  118.                     },
  119.                     "creativeEffect": {
  120.                       "prev": {
  121.                         "shadow": true,
  122.                         "translate": ["-20%", 0, -1]
  123.                       },
  124.                       "next": {
  125.                         "translate": ["100%", 0, 0]
  126.                       }
  127.                     },
  128.                     "thumbs": {
  129.                       "swiper": "#thumbs"
  130.                     }
  131.                   }' style="-webkit-clip-path: url(#mask); clip-path: url(#mask)">
  132.                                 <div class="swiper-wrapper">
  133.                                     {% for slider in sliders %}
  134.                                     <div class="swiper-slide">
  135.                                         <div class="ratio" style="--fn-aspect-ratio: calc(344 / 416 * 100%)">
  136.                                             {{ slider.resim|imgOlustur('',0,'cover')|raw }}
  137.                                         </div>
  138.                                     </div>
  139.                                     {% endfor %}
  140.                                 </div>
  141.                             </div>
  142.                             <svg class="position-absolute" xmlns="http://www.w3.org/2000/svg" width="0" height="0" viewBox="0 0 416 344" fill="none">
  143.                                 <defs>
  144.                                     <clipPath id="mask" clipPathUnits="objectBoundingBox" transform="scale(0.0024, 0.0029)">
  145.                                         <path d="M298.045 0.00804178C263.343 -0.177193 230.353 15.0453 208 41.558C185.786 14.8641 152.705 -0.40169 117.954 0.00804178C52.8095 0.00804178 0 52.7547 0 117.821C0 229.325 194.835 338.197 202.734 342.405C205.921 344.532 210.078 344.532 213.266 342.405C221.165 338.197 416 230.902 416 117.821C416 52.7547 363.19 0.00804178 298.045 0.00804178Z"/>
  146.                                     </clipPath>
  147.                                 </defs>
  148.                             </svg>
  149.                         </div>
  150.                         <div class="mx-auto" style="max-width: 382px">
  151.                             <div class="swiper swiper-load swiper-thumbs py-4 px-4 mt-2" id="thumbs" data-swiper='{
  152.                     "spaceBetween": 24,
  153.                     "slidesPerView": 3,
  154.                     "watchSlidesProgress": true,
  155.                     "breakpoints": {
  156.                       "500": {
  157.                         "spaceBetween": 32
  158.                       }
  159.                     }
  160.                   }' style="--swiper-thumbnail-border-color: rgba(255,255,255, .4); --swiper-thumbnail-active-border-color: var(--fn-info)">
  161.                                 <div class="swiper-wrapper">
  162.                                     {% for slider in sliders %}
  163.                                     <div class="swiper-slide swiper-thumb rounded-circle p-2">
  164.                                         <div class="ratio ratio-1x1 rounded-circle overflow-hidden">
  165.                                             {{ slider.resim|imgOlustur('',0,'cover')|raw }}
  166.                                         </div>
  167.                                         <div class="position-absolute top-50 start-50 translate-middle d-flex align-items-center justify-content-center opacity-0" style="width: 150%; height: 150%">
  168.                                             <svg class="animate-spin" width="144" viewBox="0 0 100 100" xmlns="http://www.w3.org/2000/svg" style="animation-duration: 22s">
  169.                                                 <path id="circlePath" fill="none" d="M 10, 50a 40,40 0 1,1 80,0a 40,40 0 1,1 -80,0"/>
  170.                                                 <text id="text" font-size="9.4" fill="rgba(255,255,255, .65)" style="letter-spacing: -.05">
  171.                                                     <textPath id="textPath" href="#circlePath">{{ slider.baslik|default('') }}</textPath>
  172.                                                 </text>
  173.                                             </svg>
  174.                                         </div>
  175.                                     </div>
  176.                                     {% endfor %}
  177.                                 </div>
  178.                             </div>
  179.                         </div>
  180.                     </div>
  181.                 </div>
  182.             </div>
  183.         </div>
  184.     </section>
  185.     <section class="container pt-2 pt-sm-3 pt-md-4 pt-lg-5 pb-5 my-xxl-3">
  186.         <h2 class="h1 pt-1 pt-sm-2 pt-lg-0 pb-md-2 pb-lg-3 pb-xl-0 mb-sm-4 mb-xl-5" style="max-width: 525px">{{ veriler[3][0].adi }}</h2>
  187.         <div class="row">
  188.             <div class="col-md-6">
  189.                 <div class="position-relative w-100 h-100 bg-body-tertiary rounded overflow-hidden" style="max-width: 564px">
  190.                     <img src="assets/img/about/v1/account-cta.jpg" class="position-absolute top-0 start-0 w-100 h-100 object-fit-cover" alt="Image">
  191.                 </div>
  192.             </div>
  193.             <!-- Accordion + CTA button -->
  194.             <div class="col-md-6">
  195.             </div>
  196.         </div>
  197.     </section>
  198.     {#
  199. <section class="bg-[#131313] w-full h-[900px]  lg:h-[680px]
  200.              md:h-[600px] sm:h-[500px]  relative z-[1] overflow-hidden">
  201.     <div class="swiper-container w-full h-full absolute left-0 top-0">
  202.         <div class="swiper-wrapper">
  203.             {% for slider in sliders %}
  204.                 <div class="swiper-slide">
  205.                     <div class="slide-inner slide-bg-image" data-background="{{ path('panel_storage',{'file': slider.resim}) }}">
  206.                         <!-- <div class="gradient-overlay"></div> -->
  207.                         <div class="wraper">
  208.                             <div class="relative h-[900px] lg:h-[680px]  md:h-[600px] sm:h-[500px]">
  209.                                 <div
  210.                                         class="max-w-[550px] lg:w-[600px] md:w-full  absolute top-1/2 left-0 transform  -translate-y-1/2">
  211.                                     <div data-swiper-parallax="200" class="wpo-hero-title-top">
  212.                                             <span
  213.                                                     class="text-[22px] col:text-[18px] text-[#e4e4e4] font-heading-font">{{ 'siteAdi'|ayarlar }}</span>
  214.                                     </div>
  215.                                     <div data-swiper-parallax="300" class="slide-title">
  216.                                         <h2
  217.                                                 class="text-[70px] font-black leading-[90px] mt-[10px] mb-[25px] lg:text-[50px] md:text-[40px] md:leading-[55px] col:text-[30px] col:leading-[35px] text-white">
  218.                                             {{ slider.baslik }}</h2>
  219.                                     </div>
  220.                                     <div data-swiper-parallax="400" class="slide-text">
  221.                                         <p class="text-[25px] text-white font-heading-font
  222.                                                                         leading-[35px]
  223.                                                 max-w-[500px] pl-[20px] border-l-[2px]
  224.                                                 border-l-white mb-[60px]
  225.                                                 md:text-[18px] col:leading-[22px]
  226.                                                 col:mb-[30px]">
  227.                                             {{ slider.aciklama }}</p>
  228.                                     </div>
  229.                                     <div data-swiper-parallax="500" class="slide-btn">
  230.                                         <!-- Buton kaldırıldı -->
  231.                                     </div>
  232.                                 </div>
  233.                             </div>
  234.                         </div>
  235.                     </div> <!-- end slide-inner -->
  236.                 </div> <!-- end swiper-slide -->
  237.             {% endfor %}
  238.         </div>
  239.         <!-- end swiper-wrapper -->
  240.         <!-- swipper controls -->
  241.         <div class="swiper-pagination"></div>
  242.         <div class="swiper-button-next"></div>
  243.         <div class="swiper-button-prev"></div>
  244.     </div>
  245.     <!-- end of wpo-hero-slide-section-->
  246. </section>
  247. #}
  248. {#
  249. -- Site Sayfa Verileri : "veriler[3]" adında bir dizi döndürülüyor. 0. elemanı sayfa bilgilerini içerir. 1 elemanı dizidir. Ve sayfa içeriğini döndürür. Bu bilgilere göre kodlama yapınız.  
  250. -- Modül alanları : baslik, metin, resim
  251. ** Resimleri çekerken sadece "ornek.jpg|imgOlustur(100,10,'cover')" filtresini kullanmalısın. Bu filtre şu özelliğe sahitir; "ornek.jpg|imgOlustur(yükseklik,radius,'cover/contain')"
  252. ----------------------------------------------------
  253. #}
  254. {#
  255. -- Site Sayfa Verileri : "veriler[4]" adında bir dizi döndürülüyor. 0. elemanı sayfa bilgilerini içerir. 1 elemanı dizidir. Ve sayfa içeriğini döndürür. Bu bilgilere göre kodlama yapınız.  
  256. -- Modül alanları : seourl, sayfabaşlığı, anahtarkelimeler, sayfaaçıklaması, adı, metin, resimler, fiyat, kişidenistenenalanlar
  257. ** Resimleri çekerken sadece "ornek.jpg|imgOlustur(100,10,'cover')" filtresini kullanmalısın. Bu filtre şu özelliğe sahitir; "ornek.jpg|imgOlustur(yükseklik,radius,'cover/contain')"
  258. ----------------------------------------------------
  259. #}
  260. {#
  261. -- Site Sayfa Verileri : "veriler[7]" adında bir dizi döndürülüyor. 0. elemanı sayfa bilgilerini içerir. 1 elemanı dizidir. Ve sayfa içeriğini döndürür. Bu bilgilere göre kodlama yapınız.  
  262. -- Modül alanları : soru, cevap
  263. ** Resimleri çekerken sadece "ornek.jpg|imgOlustur(100,10,'cover')" filtresini kullanmalısın. Bu filtre şu özelliğe sahitir; "ornek.jpg|imgOlustur(yükseklik,radius,'cover/contain')"
  264. ----------------------------------------------------
  265. #}
  266.                     
  267.                     {% endblock %}
  268. {% block javascripts %}{% endblock %}