app/template/plugin/CustomerReview42/Block/customer_review4_product_detail_review.twig line 1

Open in your IDE?
  1. {% import _self as stars %}
  2. {% set star_size = 22 %}
  3. <script>
  4. // レビュー折りたたみサイズ(px)
  5. var foldSize = 95;
  6. $(document).ready(function(){
  7.     //総合スコアを上部へも表示
  8.     var rs = $('#product_review_area .review_score').clone();
  9.     rs.find('.review_all_score_title').remove();
  10.     rs.append('<span>のレビュー</span>');
  11.     if($('.product-detail-nav-section').length){
  12.         //特殊ページ
  13.         $('.top_review_score').append(rs);
  14.     }else{
  15.         //デフォルトページ
  16.         $('.top_review_score').append(rs);
  17.     }
  18.     // レビューエリアの移動
  19.     var target = $('#product_review_area');
  20.     $('body').append(target);
  21.     target.ready(function() {
  22.         $('#product_review_area').appendTo('#review_area');
  23.     });
  24.     // レビュー折りたたみ
  25.     $('.review_list li .review-body').each(function(i, e){
  26.         if(foldSize < $(e).innerHeight()){
  27.             $(e).data('height', $(e).outerHeight());
  28.             $(e).innerHeight(foldSize);
  29.             $(e).css('overflow', 'hidden');
  30.             $(e).addClass('fold');
  31.             $(e).after('<div class="fade"></div>');
  32.             $(e).after('<div class="moreread"><a href="javascript:;">&#8681; 続きを読む</a></div>');
  33.         }
  34.     });
  35.     
  36.     $(document).on('click', '.review_list li .moreread', function(){
  37.         var rb = $(this).parent().find('.review-body');
  38.         rb.animate({'height': rb.data('height')}, function(){rb.css('height', 'auto')});
  39.         rb.removeClass('fold');
  40.         $(this).after('<div class="shortread"><a href="javascript:;">&#8679; もっと少なく読む</a></div>');
  41.         $(this).parent().find('.fade').remove();
  42.         $(this).remove();
  43.     });
  44.     $(document).on('click', '.review_list li .shortread', function(){
  45.         var rb = $(this).parent().find('.review-body');
  46.         rb.animate({'height': foldSize});
  47.         rb.addClass('fold');
  48.         rb.after('<div class="fade"></div>');
  49.         $(this).after('<div class="moreread"><a href="javascript:;">&#8681; 続きを読む</a></div>');
  50.         $(this).remove();
  51.     });
  52. });
  53. </script>
  54. {% set review_config = repository('Plugin\\CustomerReview42\\Entity\\CustomerReviewConfig').get() %}
  55. {% if review_config.isDetailInReview %}
  56. {% set review_list = repository('Plugin\\CustomerReview42\\Entity\\CustomerReviewList').getReviewList(Product.id) %}
  57. {% set review_total = repository('Plugin\\CustomerReview42\\Entity\\CustomerReviewTotal').getRecommend(Product.id) %}
  58. {% set reviewer_total = 0 %}
  59. {% set review_total_point = 0 %}
  60. {% set count = 5 %}
  61. {% for i in review_total %}
  62.     {% set reviewer_total = reviewer_total + i %}
  63.     {% set review_total_point = review_total_point + i * count %}
  64.     {% set count = count - 1 %}
  65. {% endfor %}
  66. {% set review_point = reviewer_total == 0 ? 0  : (review_total_point / reviewer_total) %}
  67. {% set number = reviewer_total %}
  68. {% set avg_star = review_point %}
  69. <!--▼レビューエリア-->
  70. <div id="product_review_area" class="review_area">
  71.     <h2>ユーザーレビュー</h2>
  72.     {% if 0 < review_list|length %}
  73.         <a href="{{ url('review_list', {'id': Product.id}) }}">
  74.             <h3 class="review_score"  data-avg="{{ avg_star }}" data-num="{{ number }}" data-starsize="{{ star_size }}" data-imgbase="{{ asset('aneros/img/products/') }}">
  75.                 <span class="review_all_score_title">総合スコア:</span>
  76.                 <span class="review_all_score_image" style="display: inline-block"></span>
  77.                 <span class="review_all_score"></span>
  78.             </h3>
  79.             <p style="text-align:center; font-weight:bold; text-decoration:underline;">詳細を表示する</p>
  80.         </a>
  81.         <ul class="review_list">
  82.         {% for Review in review_list %}
  83.             <li>
  84.                 <h3 class="review-title">{{ Review.title }}</h3>
  85.                 <p class="review-hed">
  86.                     <span style="font-weight:bold;">
  87.                         <span>{{ Review.reviewer_name }}</span>
  88.                     </span><br />
  89.                     <span>
  90.                         {{ Review.create_date|date_format }}
  91.                     </span><br />
  92.                     <span class="recommend_level">
  93.                         <span>
  94.                         {% for i in 0..4 %}
  95.                             {% if i < Review.recommend_level %}
  96.                                 <img src="{{ asset('aneros/img/products/star.jpg') }}" class="recommend_star" alt="星あり">
  97.                             {% else %}
  98.                                 <img src="{{ asset('aneros/img/products/no_star.jpg') }}" class="recommend_nostar" alt="星なし">
  99.                             {% endif %}
  100.                         {% endfor %}
  101.                         </span>
  102.                     </span>
  103.                 </p>
  104.                 <p class="review-body">{{ Review.comment|nl2br }}</p>
  105.             </li>
  106.         {% endfor %}
  107.         </ul>
  108.     {% else %}
  109.         <ul class="review_list">
  110.             <li>
  111.         ただいま、レビューはありません。「レビューを書く」ボタンからレビューを書きましょう!
  112.             </li>
  113.         </ul>
  114.     {% endif %}
  115.     <div class="btn_area">
  116.         <a href="{{ url('review_post', {'id': Product.id}) }}"
  117.             class="button btn btn-success btn-block">レビューを書く</a>
  118.     </div>
  119. </div>
  120. <!-- ▲レビューエリア -->
  121. {% endif %}