Advertisement
valeraplusplus

до наценки shop2.v2-cart-product.tpl

Jun 7th, 2022
1,324
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Smarty 12.61 KB | None | 0 0
  1. {assign var=params_count value=1}
  2. {if $e.params|@count}
  3.     {assign var=params_count value=$e.params|@count}
  4. {/if}
  5. {assign var="product" value=$products.$k}
  6.  
  7. {section loop=$params_count name=co}
  8.     <tr>
  9.         <td class="cart-product">
  10.             <div class="cart-product-image{if !$product.image_filename} no-image{/if}">
  11.                 {if $product.image_filename}
  12.                 <a href="{$IMAGES_DIR}{$product.image_filename}">
  13.                     {assign var="cart_image_width" value=$shop2.my.cart_image_width|default:90}
  14.                     {assign var="cart_image_height" value=$shop2.my.cart_image_height|default:90}
  15.                     <img src="{s3_img width=$cart_image_width height=$cart_image_height src=$product.image_filename method=$shop2.my.s3_img_method}" alt="{$product.name}" title="{$product.name}" />
  16.                 </a>
  17.                 <div class="verticalMiddle"></div>
  18.                 {/if}
  19.             </div>
  20.             <div class="cart-product-details">
  21.                 {if $gift}
  22.                     <div class="cart-product-action">
  23.                         <strong>{#SHOP2_GIFT#}</strong>
  24.                         {if isset($cart.gifts_diff_amount[$product.kind_id]) && $cart.gifts_diff_amount[$product.kind_id] > $product.amount}
  25.                             <div>{#S3_SHOP2_NOT_ENOUGH_GIFTS_IN_STOCK_MESSAGE#}</div>
  26.                         {/if}
  27.                     </div>
  28.                 {/if}
  29.  
  30.                 {assign var="stock_status" value=$product.stock_status}
  31.  
  32.                 {if $stock_status == 'not_enough'}
  33.                     <div class="cart-product-action">
  34.                         <strong>{#SHOP2_PRODUCT_NOT_ENOUGH#|sprintf:$product.amount|htmlspecialchars}</strong>
  35.                         <div class="shop2-tooltip" data-tooltip="{#SHOP2_PRODUCT_NOT_ENOUGH_TOOLTIP#|sprintf:$product.amount|htmlspecialchars}"></div>
  36.                     </div>
  37.                 {elseif $stock_status == 'deleted'}
  38.                     {if !$gift}
  39.                         <div class="cart-product-action">
  40.                             <strong>{#SHOP2_PRODUCT_DELETED#}</strong>
  41.                             <div class="shop2-tooltip" data-tooltip="{#SHOP2_PRODUCT_DELETED_TOOLTIP#|htmlspecialchars}"></div>
  42.                         </div>
  43.                     {/if}
  44.                 {/if}
  45.  
  46.                 <div class="cart-product-name">
  47.                     <a {if $product.alias != "#"}href="{get_seo_url mode="product" alias=$product.alias}"{/if}>{$product.name}</a>
  48.                 </div>
  49.                
  50.                 {include file="global:shop2.v2-product-article.tpl"}
  51.  
  52.                 {if $e.discounts_applied|@count}
  53.                     <div class="cart-product-action"><strong>{#SHOP2_ACTIONS#}:</strong>
  54.                         {foreach from=$e.discounts_applied item=discount name=product_discounts}
  55.                             {$discounts.$discount.discount_name}{if !$smarty.foreach.product_discounts.last}, {/if}
  56.                             {if $cart.all.$k.promo && $discounts.$discount.discount_kind == 8}
  57.                                 <span class="discount-promo">({if $cart.all.$k.promo.main}{#SHOP2_PROMO_MAIN_TITLE#}{else}{#SHOP2_PROMO_TITLE#}{/if})</span>
  58.                             {/if}                          
  59.                         {/foreach}
  60.                     </div>
  61.                 {/if}
  62.  
  63.                 <ul class="cart-product-param">
  64.  
  65.                     {foreach from=$product.meta item=op key=kop}
  66.                         {if $op}
  67.                             {assign var="option" value=$custom_fields.$kop}
  68.                             {if $option.in_cart || !isset($option.in_cart)} {* проверка *}
  69.                                 {if ($option.type == 'text' || $option.type == 'int' || $option.type == 'float' || $option.type == 'textarea' || $option.type == 'html') && !$option.not_mod}
  70.                                     <li>
  71.                                         <div class="param-title">{$option.name}:</div>
  72.                                         <div class="param-value">{$op} {$option.unit|default:""}</div>
  73.                                     </li>
  74.                                 {elseif $option.type == 'checkbox'}
  75.                                     <li>
  76.                                         <div class="param-title">{$option.name}:</div>
  77.                                         <div class="param-value">{if $op == 1}{#SHOP2_YES#}{else}{#SHOP2_NO#}{/if}</div>
  78.                                     </li>
  79.                                 {elseif $option.type == 'color'}
  80.                                     <li>
  81.                                         <div class="param-title">{$option.name}:</div>
  82.                                         <div class="param-value">
  83.                                             <ul class="shop2-color-pick">
  84.                                                 <li class="active-color"><span style="background-color: {$op};">&nbsp;</span></li>
  85.                                             </ul>
  86.                                         </div>
  87.                                     </li>
  88.                                 {elseif $option.type == 'select'}
  89.                                     <li>
  90.                                         <div class="param-title">{$option.name}:</div>
  91.                                         <div class="param-value">{$option.options.$op}</div>
  92.                                     </li>
  93.                                 {elseif $option.type == 'multiselect' && !$option.not_mod}
  94.                                     <li>
  95.                                         <div class="param-title">{$option.name}:</div>
  96.                                         <div class="param-value">
  97.                                             {foreach from=$op item=o_v  key=o_k name=foo}
  98.                                                 {$option.options.$o_v}{if !$smarty.foreach.foo.last}, {/if}
  99.                                             {/foreach}
  100.                                         </div>
  101.                                     </li>
  102.                                 {elseif $option.type == 'image2' && !$option.not_mod}
  103.                                     <li>
  104.                                         <div class="param-title">{$option.name}:</div>
  105.                                         <div class="param-value">
  106.                                             <a href="{$IMAGES_DIR}{$op.filename}">
  107.                                                 {assign var="cart_other_image_width" value=$shop2.my.cart_other_image_width|default:90}
  108.                                                 {assign var="cart_other_image_height" value=$shop2.my.cart_other_image_height|default:90}
  109.                                                 <img src="{s3_img width=$cart_other_image_width height=$cart_other_image_height src=$op.filename method=$shop2.my.s3_img_method}" />
  110.                                             </a>
  111.                                         </div>
  112.                                     </li>
  113.                                 {elseif $option.type == 'file2' && !$option.not_mod}
  114.                                     <li>
  115.                                         <div class="param-title">{$option.name}:</div>
  116.                                         <div class="param-value">
  117.                                             <a href="{$FILES_DIR}{$op.filename}"><span class="icon"></span> {#SHOP2_DOWNLOAD#}</a>
  118.                                         </div>
  119.                                     </li>
  120.                                 {elseif ($option.type == 'color_ref' || $option.type == 'color2') && !$option.not_mod}
  121.                                     <li>
  122.                                         <div class="param-title">{$option.name}:</div>
  123.                                         <div class="param-value">
  124.                                             {include file="global:shop2.v2-color-ext.tpl" location="cart"}
  125.                                         </div>
  126.                                     </li>
  127.                                 {elseif $option.type == 'coordinates'}
  128.                                     {if $op.x}
  129.                                         <li>
  130.                                             <div class="param-title">{$option.name}:</div>
  131.                                             <div class="param-value">
  132.                                                 <a href="#" class="shop2-map-link" data-map="{$op|@json_encode|htmlspecialchars}" data-map-type="{$option.map_type|htmlspecialchars}">{$op.title|default:$product.name|htmlspecialchars}</a>
  133.                                             </div>
  134.                                         </li>
  135.                                     {/if}
  136.                                 {elseif $option.type == 'date'}
  137.                                
  138.                                     <li>
  139.                                         <div class="param-title">{$option.name}:</div>
  140.                                         <div class="param-value">{$op}</div>
  141.                                     </li>
  142.                                 {elseif $option.type == 'date_interval'}
  143.                                     <li>
  144.                                         <div class="param-title">{$option.name}:</div>
  145.                                         <div class="param-value">{#SHOP2_FROM#} {$op.from} - {#SHOP2_TO#} {$op.to}</div>
  146.                                     </li>
  147.                                 {/if}
  148.                             {/if}
  149.                         {/if}
  150.                     {/foreach}
  151.                     {foreach from=$e.params[co] item=o_v key=o_k}
  152.                         {*if $o_k == 'id'}{continue}{/if*}
  153.                         {if $o_k!='amount' && $o_v}
  154.                         <li>
  155.                             {assign var="option" value=$custom_fields.$o_k}
  156.                             {assign var="parts" value=": "|explode:$o_v}
  157.                             {if $option.in_cart || !isset($option.in_cart)} {* проверка *}
  158.                                 {*доп. поля с выбором при заказе*}
  159.                                 {if $product.cf.$o_k.not_mod}
  160.                                     {include file="global:shop2.v2-product-options-not-mod.tpl"}
  161.                                 {else}
  162.                                     {if $parts|@count == 2 && $option.type == 'color_ref' && $option.not_mod}
  163.                                         <div class="param-title">{$parts[0]}: </div>
  164.                                         <div class="param-value">
  165.                                         {include file="global:shop2.v2-color-ext.tpl" location="cart" op=$parts[1]}
  166.                                         </div>
  167.                                     {else}
  168.                                         <div class="param-title">{$o_v}</div>
  169.                                     {/if}
  170.                                     <input name="amounts[{$k}][{$smarty.section.co.index}][{$o_k}]" type="hidden" value="{$o_v|htmlspecialchars}" />
  171.                                 {/if}
  172.                             {/if}
  173.                         </li>
  174.                         {/if}
  175.                     {/foreach}
  176.                 </ul>
  177.                
  178.                 {if isset($cart.bonusParams.accrual_mode)}
  179.                     {if $cart.bonusParams.enabled && $cart.bonusParams.is_accrual && isset($user.user_id) && $product.bonus_value > 0 && !$cart.bonusParams.accrual_mode}
  180.                         <div>
  181.                             <span class="param-title">Бонус за товар:</span>
  182.                             <span class="param-value">{$e.bonus_value}</span>
  183.                         </div>
  184.                     {/if}
  185.                 {else}
  186.                     {if $cart.bonusParams.enabled && $cart.bonusParams.is_accrual && isset($user.user_id) && $e.bonus_value > 0}
  187.                         <div>
  188.                             <span class="param-title">Бонус за товар:</span>
  189.                             <span class="param-value">{$e.bonus_value}</span>
  190.                         </div>
  191.                     {/if}
  192.                 {/if}
  193.                
  194.             </div>
  195.         </td>
  196.         {if $fix_discount}
  197.             <td class="cart-price">
  198.                 {if $e.is_pre_order}
  199.                     {$shop2.my.preorder_alias|default:#SHOP2_PREORDER2#}
  200.                 {else}
  201.                     {$e.price|price_convert}
  202.                 {/if}
  203.             </td>
  204.             {if $show_discount}
  205.                 <td class="cart-price">
  206.                     {$e.price_discounted|price_convert:"":"true":"false":"2"}
  207.                 </td>
  208.             {/if}
  209.             {*assign var=id value=$e.params[co].id}
  210.             <td class="cart-price">
  211.                 {if $e.is_pre_order}
  212.                     {$shop2.my.preorder_alias|default:#SHOP2_PREORDER2#}
  213.                 {else}
  214.                     {if $id}
  215.                         {$cart.all[$id].price|price_convert}
  216.                     {else}
  217.                         {$e.price|price_convert}
  218.                     {/if}
  219.                 {/if}
  220.             </td>
  221.             {if $show_discount}
  222.                 <td class="cart-price">
  223.                     {if $id}
  224.                         {$cart.all[$id].price_discounted|price_convert:"":"true":"false":"2"}
  225.                     {else}
  226.                         {$e.price_discounted|price_convert:"":"true":"false":"2"}
  227.                     {/if}
  228.                 </td>
  229.             {/if*}
  230.         {else}
  231.             <td class="cart-price">
  232.                 {if $e.is_pre_order}
  233.                     {$shop2.my.preorder_alias|default:#SHOP2_PREORDER2#}
  234.                 {else}
  235.                     {$e.price|price_convert}
  236.                 {/if}
  237.             </td>
  238.         {/if}
  239.         <td class="cart-amount">
  240.             {if $gift}
  241.                 {$e.amount}
  242.             {else}
  243.                 {assign var="amount_min" value=$product.params.amount_min}
  244.                 {if $product.params.amount_min !="" || $product.params.amount_multiplicity !=""}
  245.                     {assign var="multiplicity" value=$product.params.amount_multiplicity|default:1}
  246.                 {/if}
  247.                 {if !$amount_min}{if $multiplicity}{assign var=amount_min value=$multiplicity}{else}{assign var="amount_min" value=$shop2.my.amount_default|default:1}{/if}{/if}           
  248.                 <div class="shop2-product-amount">
  249.                     <button type="button" class="shop2-btn amount-minus">&#8722;</button>
  250.                         {assign var="max" value=$product.amount}
  251.                         {if ($shop2.product_amount_required == 0 && $product.pre_order == 0) || $product.pre_order == 4}
  252.                             {assign var="max" value=0}
  253.                         {/if}
  254.                         <input {if $shop2.product_amount_required=='1' || $product.buy_mode==1}data-max="{$max}"{/if} data-kind="{$product.kind_id}" name="{if $e.params}amounts[{$k}][{$smarty.section.co.index}][amount]{else}amounts[{$k}]{/if}" type="text" maxlength="4" value="{if $e.params[co].amount}{$e.params[co].amount}{else}{$e.amount}{/if}" data-min="{$amount_min}" data-multiplicity="{$multiplicity}" />
  255.                     <button type="button" class="shop2-btn amount-plus">&#43;</button>
  256.                 </div>
  257.                 {*if $amount_min > 0 || $multiplicity > 0*}
  258.                 {if $multiplicity > 0} {*id1552*}
  259.                 <div class="amount-min">
  260.                     {#FILTER_INT_FROM#|mb_strtolower} {$amount_min} {$product.params.unit}
  261.                     {#FILTER_BY#|mb_strtolower} {if $multiplicity}{$multiplicity}{else}1{/if} {$product.params.unit}
  262.                 </div>
  263.                 {/if}              
  264.             {/if}
  265.         </td>
  266.         {if $gift}
  267.             <td class="cart-price">0</td>
  268.             <td>&nbsp;</td>
  269.         {else}
  270.             <td class="cart-price">
  271.                 {if $e.is_pre_order}
  272.                     -
  273.                 {else}
  274.                     {if $fix_discount}
  275.                         {if $e.custom_params[co].amount}
  276.                             {$e.custom_params[co].total|price_convert}
  277.                         {else}
  278.                             {if count($discounts) > 0}
  279.                                 {$e.discount_sum|price_convert}
  280.                             {else}
  281.                                 {$e.sum|price_convert}
  282.                             {/if}
  283.                         {/if}
  284.                     {else}
  285.                         {if $e.params[co].amount}
  286.                             {$e.params[co].amount*$e.price|price_convert}
  287.                         {else}
  288.                             {if count($discounts) > 0}
  289.                                 {$e.discount_sum|price_convert}
  290.                             {else}
  291.                                 {$e.sum|price_convert}
  292.                             {/if}
  293.                         {/if}
  294.                     {/if}
  295.                 {/if}
  296.             </td>
  297.             <td class="cart-delete">
  298.                 {strip}
  299.                 <a title="{#SHOP2_REMOVE#}" href="{$shop2.uri}?mode=cart&action=del&kind_id={$k}" data-id="
  300.                     {if $e.params}
  301.                         {ldelim}'{$k}':{ldelim}
  302.                             {foreach from=$e.params[co] item=o_v key=o_k name=foo}
  303.                                 {if $o_k == 'amount'}
  304.                                     'amount': '0'
  305.                                 {else}
  306.                                     '{$o_k|htmlspecialchars}':'{$o_v|htmlspecialchars}'
  307.                                 {/if}
  308.                                 {if !$smarty.foreach.foo.last}, {/if}
  309.                             {/foreach}
  310.                         {rdelim}{rdelim}
  311.                     {else}
  312.                         {$k}
  313.                     {/if}">
  314.                     <img src="/g/shop2v2/default/images/delete-cart-product.png" height="15" width="15" alt="" />
  315.                 </a>
  316.                 {/strip}
  317.             </td>
  318.         {/if}
  319.     </tr>
  320.     {if !$cart.tax.show_common_tax && $e.tax.active}
  321.     <tr>
  322.         <td>{#SHOP2_INCLUDING_VAT#|sprintf:$e.tax.name}</td>
  323.         <td colspan="{if $fix_discount && $show_discount}3{else}2{/if}">{$e.tax.percent}%</td>
  324.         <td colspan="2">{$e.tax.value|price_convert}</td>
  325.     </tr>
  326.     {/if}
  327. {/section}
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement