app/template/bravers/Block/news.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. {% set NewsList = repository('Eccube\\Entity\\News').getList() %}
  9. {% block javascript %}
  10.     <script>
  11.         $(function() {
  12.             $('.ec-newsRole__news').each(function() {
  13.                 var listLength = $(this).find('.ec-newsRole__newsItem').length;
  14.                 if (listLength > 5) {
  15.                     $(this).find('.ec-newsRole__newsItem:gt(4)').each(function() {
  16.                         $(this).hide();
  17.                     });
  18.                     $(this).append('<a id="news_readmore" class="ec-inlineBtn--top">{{ 'more'|trans }}</a>');
  19.                     var dispNum = 5;
  20.                     $(this).find('#news_readmore').click(function() {
  21.                         dispNum += 5;
  22.                         $(this).parent().find('.ec-newsRole__newsItem:lt(' + dispNum + ')').show();
  23.                         if (dispNum >= listLength) {
  24.                             $(this).hide();
  25.                         }
  26.                     })
  27.                 }
  28.             });
  29.             $('.ec-newsRole__newsHeading').on('click', function() {
  30.                 $newsItem = $(this).parent('.ec-newsRole__newsItem');
  31.                 $newsDescription = $newsItem.children('.ec-newsRole__newsDescription');
  32.                 if ($newsDescription.css('display') == 'none') {
  33.                     $newsItem.addClass('is_active');
  34.                     $newsDescription.slideDown(300);
  35.                 } else {
  36.                     $newsItem.removeClass('is_active');
  37.                     $newsDescription.slideUp(300);
  38.                 }
  39.                 return false;
  40.             });
  41.         });
  42.     </script>
  43. {% endblock %}
  44. <div class="ec-role">
  45.     <div class="ec-newsRole">
  46.         <div class="titleBlock no-space">
  47.             <div class="titleBlock__name">
  48.                 <img class="titleBlock__name__icon" src="{{ asset('assets/img/top/news.svg') }}" alt="お知らせ" width="32" height="32" loading="lazy">
  49.                 <h2 class="titleBlock__name__title">お知らせ</h2>
  50.             </div>
  51.         </div>
  52.         <div class="ec-newsRole__news">
  53.             {% for News in NewsList %}
  54.                 <div class="ec-newsRole__newsItem">
  55.                     <div class="ec-newsRole__newsHeading">
  56.                         <div class="ec-newsRole__newsDate">
  57.                             {{ News.publish_date|date_day }}
  58.                         </div>
  59.                         <div class="ec-newsRole__newsColumn">
  60.                             <h3 class="ec-newsRole__newsTitle">
  61.                                 {{ News.title }}
  62.                             </h3>
  63.                             {% if News.description or News.url %}
  64.                                 <div class="ec-newsRole__newsClose">
  65.                                     <a class="ec-newsRole__newsCloseBtn"></a>
  66.                                 </div>
  67.                             {% endif %}
  68.                         </div>
  69.                     </div>
  70.                     <div class="ec-newsRole__newsDescription">
  71.                         {{ News.description|raw|nl2br }}
  72.                         {% if News.url %}
  73.                             <a href="{{ News.url }}" {% if News.link_method == '1' %}target="_blank"{% endif %}>{{ '詳しくはこちら'|trans }}</a>
  74.                         {% endif %}
  75.                     </div>
  76.                 </div>
  77.             {% endfor %}
  78.         </div>
  79.     </div>
  80. </div>