src/Eccube/Resource/template/default/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="ec-secHeading">
  47.             <span class="ec-secHeading__en">{{ 'NEWS'|trans }}</span>
  48.             <span class="ec-secHeading__line"></span>
  49.             <span class="ec-secHeading__ja">{{ '新着情報'|trans }}</span>
  50.         </div>
  51.         <div class="ec-newsRole__news">
  52.             {% for News in NewsList %}
  53.                 <div class="ec-newsRole__newsItem">
  54.                     <div class="ec-newsRole__newsHeading">
  55.                         <div class="ec-newsRole__newsDate">
  56.                             {{ News.publish_date|date_day }}
  57.                         </div>
  58.                         <div class="ec-newsRole__newsColumn">
  59.                             <div class="ec-newsRole__newsTitle">
  60.                                 {{ News.title }}
  61.                             </div>
  62.                             {% if News.description or News.url %}
  63.                                 <div class="ec-newsRole__newsClose">
  64.                                     <a class="ec-newsRole__newsCloseBtn">
  65.                                         <i class="fas fa-angle-down"></i>
  66.                                     </a>
  67.                                 </div>
  68.                             {% endif %}
  69.                         </div>
  70.                     </div>
  71.                     <div class="ec-newsRole__newsDescription">
  72.                         {{ News.description|raw|nl2br }}
  73.                         {% if News.url %}
  74.                             <br>
  75.                             <a href="{{ News.url }}" {% if News.link_method == '1' %}target="_blank"{% endif %}>{{ '詳しくはこちら'|trans }}</a>
  76.                         {% endif %}
  77.                     </div>
  78.                 </div>
  79.             {% endfor %}
  80.         </div>
  81.     </div>
  82. </div>