app/template/lag/index.twig line 1

Open in your IDE?
  1. {#
  2. This file is part of EC-CUBE
  3. Copyright(c) EC-CUBE CO.,LTD. All Rights Reserved.
  4. http://www.ec-cube.co.jp/
  5. For the full copyright and license information, please view the LICENSE
  6. file that was distributed with this source code.
  7. #}
  8. {% extends 'default_frame.twig' %}
  9. {% set body_class = 'front_page' %}
  10. {% set NewsList = repository('Eccube\\Entity\\News').getList() %}
  11. {% block stylesheet %}
  12.     <style>
  13.         .slick-slider{
  14.           height:100%;
  15.           width: 100%;
  16.           overflow: hidden;
  17.         }
  18.         .main_visual.slick-slider .slick-list,
  19.         .main_visual.slick-slider .slick-track,
  20.         .main_visual.slick-slider .slick-slide,
  21.         .main_visual.slick-slider .slick-track > .slick-slide > div,
  22.         .main_visual.slick-slider .slick-slide img{
  23.           height:100%;
  24.         }
  25.         .main_visual.slick-slider .slick-slide{
  26.           overflow:hidden;
  27.         }
  28.                 .main_visual.slick-slider .slick-cloned img,
  29.         .main_visual.slick-slider .slick-slide img{
  30.           opacity:0.8;
  31.                     scale: 1.7;
  32.                     translate: -5% 0;
  33.             margin-left:auto;
  34.           transition: scale 6.5s cubic-bezier(0.1, 1, 0.2, 1) , translate 6.5s;
  35.         }
  36.         .main_visual.slick-slider:before {
  37.           background: rgba(60, 20, 0, .2);
  38.           content: '';
  39.           display: block;
  40.           height: 100%;
  41.           left: 0;
  42.           opacity: .6;
  43.           position: absolute;
  44.           top: 0;
  45.           width: 100%;
  46.           z-index: 10;
  47.         }
  48.         .main_visual.slick-slider:after {
  49.           background: linear-gradient(217deg, rgba(110, 72, 51, .6), rgba(255, 0, 0, 0) 70.71%), linear-gradient(127deg, rgba(241, 234, 230, .6), rgba(0, 255, 0, 0) 70.71%), linear-gradient(336deg, rgba(249, 247, 245, .6), rgba(0, 0, 255, 0) 70.71%);
  50.           content: '';
  51.           display: block;
  52.           height: 100%;
  53.           left: 0;
  54.           opacity: .6;
  55.           position: absolute;
  56.           top: 0;
  57.           width: 100%;
  58.           z-index: 5;
  59.         }
  60.         .slick-slide{
  61.           position:relative;
  62.         }
  63.       /* ¥Æ¥­¥¹¥È¤Î¥Õ¥§©`¥É¥¤¥ó¤È¥¹¥é¥¤¥É¥¤¥ó */
  64.       .main {
  65.           opacity: 0;
  66.           transform: translateX(10vw); /* ÓÒ¤«¤é¥¹¥é¥¤¥É¥¤¥ó */
  67.           transition: opacity 0.5s ease-in-out, transform 0.5s ease-in-out;
  68.       }
  69.       .sub {
  70.           opacity: 0;
  71.           transform: translateX(10vw); /* ÓÒ¤«¤é¥¹¥é¥¤¥É¥¤¥ó */
  72.           transition: opacity 0.5s ease-in-out 0.3s, transform 0.5s ease-in-out 0.2s; /* 0.2ÃëßW¤ì */
  73.       }
  74.       .fade-in .main {
  75.           opacity: 1;
  76.           transform: translateX(0); /* Ôª¤ÎλÖäˑø¤ë */
  77.       }
  78.       .fade-in .sub {
  79.           opacity: 1;
  80.           transform: translateX(0); /* Ôª¤ÎλÖäˑø¤ë */
  81.       }
  82. /* ±³¾°»­Ïñ¤ÎÔO¶¨ */
  83. .slick-slide {
  84.   overflow:hidden;
  85. }
  86. @-webkit-keyframes fadezoom {
  87.     0% {
  88.         transform: scale(1);
  89.     }
  90.     100% {
  91.         transform: scale(1.25);
  92.     }
  93. }
  94. @keyframes fadezoom {
  95.     0% {
  96.         transform: scale(1);
  97.     }
  98.     100% {
  99.         transform: scale(1.25);
  100.     }
  101. }
  102. .slick-animation {
  103.             scale: 1.1 !important;
  104.             translate: 5% 0 !important;
  105. /*    animation: fadezoom 20s linear 0s normal both; */
  106. }
  107.     </style>
  108. {% endblock %}
  109. {% block javascript %}
  110.     <script>
  111.             $(function() {
  112.                 // ¥á¥¤¥ó¥¹¥é¥¤¥À©`¤Î³õÆÚ»¯•r¤Î¥¤¥Ù¥ó¥È
  113.               $('.main_visual').on('init', function () {
  114.                 // ×î³õ¤Î¥¹¥é¥¤¥É¤Ë¥¢¥Ë¥á©`¥·¥ç¥ó¤òßmÓÃ
  115.                 $('.main_visual .slick-slide[data-slick-index="0"] img').addClass('slick-animation');
  116.               });
  117.               // ¥á¥¤¥ó¥¹¥é¥¤¥À©`¤ÎÔO¶¨
  118.               $('.main_visual').slick({
  119.                 autoplay: true,          // ×Ô„ÓÔÙÉú
  120.                 infinite: true,          // ŸoÏÞ¥ë©`¥×
  121.                 slidesToShow: 1,         // 1¤Ä¤Î¥¹¥é¥¤¥É¤ò±íʾ
  122.                 slidesToScroll: 1,       // ¥¹¥é¥¤¥É¤ò1¤Ä¤º¤Ä¥¹¥¯¥í©`¥ë
  123.                 arrows: false,           // Ê¸Ó¡¤ò·Ç±íʾ
  124.                 speed: 2000,             // ¥Õ¥§©`¥É¥¢¥Ë¥á©`¥·¥ç¥ó¤ÎËÙ¶È
  125.                 autoplaySpeed: 5000,     // ¥¹¥é¥¤¥É¤¬ÇФêÌæ¤ï¤ëég¸ô
  126.                 pauseOnFocus: false,     // ¥Õ¥©©`¥«¥¹•r¤Ë¥¹¥é¥¤¥É¤òÒ»•rÍ£Ö¹¤·¤Ê¤¤
  127.                 pauseOnHover: false,     // ¥Û¥Ð©`•r¤Ë¥¹¥é¥¤¥É¤òÒ»•rÍ£Ö¹¤·¤Ê¤¤
  128.                 asNavFor: '.text_slider' // .text_slider ¤ÈͬÆÚ
  129.               })
  130.               .on({
  131.                 beforeChange: function(event, slick, currentSlide, nextSlide) {
  132.                   // ¤¹¤Ù¤Æ¤Î¥¹¥é¥¤¥É¤Î¥¢¥Ë¥á©`¥·¥ç¥ó¤ò¥ê¥»¥Ã¥È
  133.                   $(".main_visual .slick-slide img").removeClass("slick-animation");
  134.                   // ´Î¤Î¥¹¥é¥¤¥É¤Ë¥¢¥Ë¥á©`¥·¥ç¥ó¤òßmÓÃ
  135.                   $(".main_visual .slick-slide[data-slick-index='" + nextSlide + "'] img").addClass("slick-animation");
  136.                   // ´Î¤Î¥¹¥é¥¤¥É¤Ë¥¢¥Ë¥á©`¥·¥ç¥ó¤òßmÓÃ
  137.                   $(".main_visual .slick-cloned img").addClass("slick-animation");
  138.                 },
  139.                 afterChange: function(event, slick, currentSlide) {
  140.                   // Ç°¤Î¥¹¥é¥¤¥É¤Î¥¤¥ó¥Ç¥Ã¥¯¥¹¤òÓ‹Ëã
  141.                   var prevSlide = (currentSlide === 0) ? slick.slideCount - 1 : currentSlide - 1;
  142.                   // Ç°¤Î¥¹¥é¥¤¥É¤Î¥¢¥Ë¥á©`¥·¥ç¥ó¤ò¥ê¥»¥Ã¥È
  143.                   $(".main_visual .slick-slide[data-slick-index='" + prevSlide + "'] img").removeClass("slick-animation");
  144.                   $(".main_visual .slick-cloned img").removeClass("slick-animation");
  145.                 }
  146.               });
  147.         // ¥Æ¥­¥¹¥È¥¹¥é¥¤¥À©`¤Î³õÆÚ»¯•r¤Î¥¤¥Ù¥ó¥È
  148.         $('.text_slider').on('init', function () {
  149.           // ×î³õ¤Î¥¹¥é¥¤¥É¤Ë 'fade-in' ¥¯¥é¥¹¤òßmÓÃ
  150.           $('.slick-slide[data-slick-index="0"]').addClass('fade-in');
  151.         });
  152.         // ¥Æ¥­¥¹¥È¥¹¥é¥¤¥À©`¤ÎÔO¶¨£¨¥á¥¤¥ó¥¹¥é¥¤¥À©`¤ÈͬÆÚ£©
  153.         $('.text_slider').slick({
  154.           autoplay: true,          // ×Ô„ÓÔÙÉú
  155.           infinite: true,          // ŸoÏÞ¥ë©`¥×
  156.           slidesToShow: 1,         // 1¤Ä¤Î¥¹¥é¥¤¥É¤ò±íʾ
  157.           slidesToScroll: 1,       // ¥¹¥é¥¤¥É¤ò1¤Ä¤º¤Ä¥¹¥¯¥í©`¥ë
  158.           fade: true,
  159.           speed: 1000,
  160.           autoplaySpeed: 5000,
  161.           arrows: false,
  162.           pauseOnFocus: false,
  163.           pauseOnHover: false,
  164.           pauseOnDotsHover: false,
  165.           asNavFor: '.main_visual' // .main_visual ¤ÈͬÆÚ
  166.         })
  167.         .on({
  168.           beforeChange: function(event, slick, currentSlide, nextSlide) {
  169.             // ´Î¤Î¥¹¥é¥¤¥É¤Ë 'fade-in' ¥¯¥é¥¹¤ò×·¼Ó
  170.             $(".text_slider .slick-slide[data-slick-index='" + nextSlide + "']").addClass("fade-in");
  171.           },
  172.           afterChange: function(event, slick, currentSlide) {
  173.             // ¬FÔڤΥ¹¥é¥¤¥ÉÒÔÍâ¤Î¤¹¤Ù¤Æ¤Î¥¹¥é¥¤¥É¤«¤é 'fade-in' ¥¯¥é¥¹¤òÏ÷³ý
  174.             $(".text_slider .slick-slide").not("[data-slick-index='" + currentSlide + "']").not(".slick-cloned").removeClass("fade-in");
  175.             // ¬FÔڤΥ¹¥é¥¤¥É¤Ë¥¯¥é¥¹¤ò´_Œg¤Ë×·¼Ó
  176.            $(".text_slider .slick-slide[data-slick-index='" + currentSlide + "']").addClass("fade-in");
  177.           }
  178.         });
  179.       });
  180.       $(function() {
  181.           $('.topic_slider').slick({
  182.               vertical: true,
  183.               autoplay: true,
  184.               autoplaySpeed: 3800,
  185.               speed: 800,
  186.               arrows: true,
  187.               pauseOnFocus: false,
  188.               pauseOnHover: false,
  189.               pauseOnDotsHover: false
  190.           });
  191.           $('.ec-sliderRole__news').each(function() {
  192.               var listLength = $(this).find('.ec-sliderRole__newsItem').length;
  193.               if (listLength > 5) {
  194.                   $(this).find('.ec-sliderRole__newsItem:gt(4)').each(function() {
  195.                       $(this).hide();
  196.                   });
  197.                   $(this).append('<a id="news_readmore" class="ec-inlineBtn--top">{{ 'more'|trans }}</a>');
  198.                   var dispNum = 5;
  199.                   $(this).find('#news_readmore').click(function() {
  200.                       dispNum += 5;
  201.                       $(this).parent().find('.ec-sliderRole__newsItem:lt(' + dispNum + ')').show();
  202.                       if (dispNum >= listLength) {
  203.                           $(this).hide();
  204.                       }
  205.                   })
  206.               }
  207.           });
  208.       });
  209.     </script>
  210. {% endblock javascript %}
  211. {% block main %}
  212.     <div class="ec-sliderRole">
  213.       <div class="ec-sliderRole__wrap">
  214.         <div class="mv__wrap">
  215.           <div class="main_visual">
  216.               <div class="item slick-slide">
  217.                 <img src="{{ asset('assets/img/top/01.jpg') }}" class="outset">
  218.               </div>
  219.               <div class="item slick-slide">
  220.                 <img src="{{ asset('assets/img/top/02.jpg') }}" class="outset">
  221.               </div>
  222.               <div class="item slick-slide">
  223.                 <img src="{{ asset('assets/img/top/03.jpg') }}" class="outset">
  224.               </div>
  225.               <div class="item slick-slide">
  226.                 <img src="{{ asset('assets/img/top/04.jpg') }}" class="outset">
  227.               </div>
  228.           </div>
  229.           <div class="text_slider">
  230.             <div class="ec-sliderRole__title">
  231.               <div class="main">Lillie and</div>
  232.               <div class="sub">Garcello</div>
  233.             </div>
  234.             <div class="ec-sliderRole__title">
  235.               <div class="main">ORIGINAL</div>
  236.               <div class="sub">GOODS</div>
  237.             </div>
  238.             <div class="ec-sliderRole__title">
  239.               <div class="main">SELECT</div>
  240.               <div class="sub">SHOP</div>
  241.             </div>
  242.             <div class="ec-sliderRole__title">
  243.               <div class="main">RECOMMENDED</div>
  244.               <div class="sub">ITEM</div>
  245.             </div>
  246.           </div>
  247.         </div>
  248.         <div class="ec-sliderRole__news topic_slider">
  249.             {% for News in NewsList %}
  250.                 <a href={{ url('news_detail',  {'id': News.id}) }} class="ec-sliderRole__newsItem" target="_blank">
  251.                     <div class="ec-sliderRole__newsHeading">
  252.                         <div class="ec-sliderRole__newsDate">
  253.                             {{ News.publish_date|date_day }}
  254.                         </div>
  255.                         <div class="ec-sliderRole__newsColumn">
  256.                             <div class="ec-sliderRole__newsTitle">
  257.                                 {{ News.title }}
  258.                             </div>
  259.                             {# {% if News.description or News.url %}
  260.                                 <div class="ec-sliderRole__newsClose">
  261.                                     <a class="ec-sliderRole__newsCloseBtn">
  262.                                         <i class="fas fa-angle-down"></i>
  263.                                     </a>
  264.                                 </div>
  265.                             {% endif %} #}
  266.                         </div>
  267.                     </div>
  268.                     {# <div class="ec-sliderRole__newsDescription">
  269.                         {{ News.description|raw|nl2br }}
  270.                         {% if News.url %}
  271.                             <br>
  272.                             <a href="{{ News.url }}" {% if News.link_method == '1' %}target="_blank"{% endif %}>{{ 'Ô”¤·¤¯¤Ï¤³¤Á¤é'|trans }}</a>
  273.                         {% endif %}
  274.                     </div> #}
  275.                 </a>
  276.             {% endfor %}
  277.         </div>
  278.       </div>
  279.     </div>
  280. {% endblock %}