templates/frontend-eforum/_partials/modules/subscription.html.twig line 1

Open in your IDE?
  1. <section id="porownaj-prenumeraty" class="subscription product-section">
  2.     <div class="container">
  3.         {% if module.title is defined %}
  4.             <div class="row d-none d-md-flex">
  5.                 <div class="col col-md-12">
  6.                     <h2 class="product-section__title">{{ module.title }}</h2>
  7.                 </div>
  8.             </div>
  9.         {% endif %}
  10.         <div class="row d-none d-md-flex">
  11.             {% for productVariant in productVariants %}
  12.                 <div class="col col-md-6">
  13.                     <div class="subscription__item {{ productVariant.promoted == true ? 'subscription__item--promoted' : '' }}">
  14.                         <div class="container">
  15.                             <div class="subscription__wrap">
  16.                                 <div class="subscription__left">
  17.                                     <img src="{{ vich_uploader_asset(productVariant, 'imageFile') }}" alt=""/>
  18.                                 </div>
  19.                                 <div class="subscription__right">
  20.                                     {% if productVariant.subscriptionType is not empty %}
  21.                                         <span class="subscription__type">{{ productVariant.subscriptionType }}</span>
  22.                                     {% endif %}
  23.                                     {% if productVariant.subscriptionPlan is not empty %}
  24.                                         <div class="subscription__plan">{{ productVariant.subscriptionPlan }}</div>
  25.                                     {% endif %}
  26.                                     {% if product.checkCouponDefault(productVariant) %}
  27.                                         <div class="subscription__netto">{{ productVariant.getFullPriceAfterCoupon('net', product.couponDefault, true) }} zł netto</div>
  28.                                         <div class="subscription__brutto">{{ productVariant.getFullPriceAfterCoupon('gross', product.couponDefault, true) }} zł brutto</div>
  29.                                     {% else %}
  30.                                         <div class="subscription__netto">{{ productVariant.getFullPrice('net', true) }} zł netto</div>
  31.                                         <div class="subscription__brutto">{{ productVariant.getFullPrice('gross', true) }} zł brutto</div>
  32.                                     {% endif %}
  33.                                     <hr>
  34.                                     {% if productVariant.productVariantDescriptions is not empty %}
  35.                                         <ul class="subscription__list">
  36.                                             {% for description in productVariant.productVariantDescriptions %}
  37.                                                 <li class="subscription__listLi
  38.                                                     {{ description.highlighted == false ? 'subscription__listLi--nope' : ''}}"
  39.                                                 >
  40.                                                     {{ description.description }}
  41.                                                 </li>
  42.                                             {% endfor %}
  43.                                         </ul>
  44.                                     {% endif %}
  45.                                     <a href="#add-to-cart"
  46.                                        class="button button--bordered button--with-arrow product-nav__add GosAddToCart"
  47.                                        data-productVariantNoComplete="{{ productVariant.productVariantNoComplete }}"
  48.                                        data-productAssociationId="{{ product.id }}"
  49.                                        data-redirecttocart="false"
  50.                                        data-hidesuccessalert="false"
  51.                                         {% if product.checkCouponDefault(productVariant) %}
  52.                                             data-coupon="{{ product.couponDefault.code }}"
  53.                                         {% endif %}
  54.                                     >
  55.                                         Dodaj do koszyka
  56.                                     </a>
  57.                                 </div>
  58.                             </div>
  59.                         </div>
  60.                     </div>
  61.                 </div>
  62.             {% endfor %}
  63.         </div>
  64.         <button class="button button--blue add-to-cart-button active d-inline-block d-md-none">
  65.             <i class="icon icon--cart"></i>
  66.             Dodaj do koszyka
  67.         </button>
  68.         <div class="d-block d-md-none add-to-cart-container-mobile {% if productVariants|length > 5 %}add-to-cart-container-mobile--full-height{% endif %}">
  69.             <div class="row">
  70.                 <div class="col-12 d-flex justify-content-end">
  71.                     <button type="button" class="dModal__close"></button>
  72.                 </div>
  73.             </div>
  74.             <div class="row">
  75.                 <div class="col-12">
  76.                     <span class="product-section__title">Wybierz wersje prenumeraty</span>
  77.                 </div>
  78.             </div>
  79.             <div class="row">
  80.                 {% for productVariant in productVariants %}
  81.                     <div class="col-12">
  82.                         <a href="#add-to-cart"
  83.                            class="button add-to-cart-mobile-button GosAddToCart"
  84.                            data-productVariantNoComplete="{{ productVariant.productVariantNoComplete }}"
  85.                            data-productAssociationId="{{ product.id }}"
  86.                            data-redirecttocart="false"
  87.                            data-hidesuccessalert="false"
  88.                             {% if product.checkCouponDefault(productVariant) %}
  89.                             data-coupon="{{ product.couponDefault.code }}"
  90.                             {% endif %}
  91.                         >
  92.                             {% if productVariant.subscriptionType is not empty %}
  93.                                 <span>{{ productVariant.subscriptionType }}</span>
  94.                             {% endif %}
  95.                             {% if productVariant.subscriptionPlan is not empty %}
  96.                                 <span>{{ productVariant.subscriptionPlan }}</span>
  97.                             {% endif %}
  98.                             {% if product.checkCouponDefault(productVariant) %}
  99.                                 <span>{{ productVariant.getFullPriceAfterCoupon('net', product.couponDefault, true) }} zł netto</span>
  100.                             {% else %}
  101.                                 <span>{{ productVariant.getFullPrice('net', true) }} zł netto</span>
  102.                             {% endif %}
  103.                         </a>
  104.                     </div>
  105.                 {% endfor %}
  106.                 <div class="col-12 d-flex justify-content-center">
  107.                     {% if source is not defined or source != 'modal' %}
  108.                         <a href="#"
  109.                            class="product-form__info jsToggleProductPreview"
  110.                            data-url="{{ path('efProductPreview', {'productAssociationId': product.id, 'type': 'subscriptions'}) }}"
  111.                            tabindex="0"
  112.                         >
  113.                             {% if module.modalButtonText is defined %}
  114.                                 {{ module.modalButtonText }}
  115.                             {% else %}
  116.                                 Czym różnią się prenumeraty?
  117.                             {% endif %}
  118.                         </a>
  119.                     {% endif %}
  120.                 </div>
  121.             </div>
  122.         </div>
  123.         {% if product is defined and product.hasCycles  %}
  124.             <div class="d-block d-md-none">
  125.                 <div class="row add-to-cart-container-mobile-cycles__header">
  126.                     <h3 class="product-form__title">Wybierz swój cykl</h3>
  127.                     <button class="see-all-cycles" id="js-see-all-cycles">Zobacz wszystkie</button>
  128.                 </div>
  129.                 <div class="row add-to-cart-container-mobile-cycles">
  130.                     {% for productVariant in productVariants %}
  131.                         <div class="col col-md-6">
  132.                             <div class="subscription__item {{ productVariant.promoted == true ? 'subscription__item--promoted' : '' }}">
  133.                                 <div class="container">
  134.                                     <div class="subscription__wrap">
  135.                                         <div class="subscription__wrap-title">
  136.                                             {% if productVariant.subscriptionPlan is not empty %}
  137.                                                 <p>{{ productVariant.subscriptionPlan }}</p>
  138.                                             {% endif %}
  139.                                         </div>
  140.                                         <div class="subscription__left">
  141.                                             <img src="{{ vich_uploader_asset(productVariant, 'imageFile') }}" alt=""/>
  142.                                         </div>
  143.                                         <div class="subscription__right">
  144.                                             {% if productVariant.productVariantDescriptions is not empty %}
  145.                                                 <ul class="subscription__list">
  146.                                                     {% for description in productVariant.productVariantDescriptions %}
  147.                                                         <li class="subscription__listLi
  148.                                                             {{ description.highlighted == false ? 'subscription__listLi--nope' : ''}}"
  149.                                                         >
  150.                                                             {{ description.description }}
  151.                                                         </li>
  152.                                                     {% endfor %}
  153.                                                 </ul>
  154.                                             {% endif %}
  155.                                             <hr>
  156.                                             {% if product.checkCouponDefault(productVariant) %}
  157.                                                 <div class="subscription__wrap-price">
  158.                                                     <div class="subscription__netto">{{ productVariant.getFullPriceAfterCoupon('net', product.couponDefault, true) }} zł netto</div>
  159.                                                     <div class="subscription__brutto">{{ productVariant.getFullPriceAfterCoupon('gross', product.couponDefault, true) }} zł brutto</div>
  160.                                                 </div>
  161.                                             {% else %}
  162.                                                 <div class="subscription__wrap-price">
  163.                                                     <div class="subscription__netto">{{ productVariant.getFullPrice('net', true) }} zł netto</div>
  164.                                                     <div class="subscription__brutto">{{ productVariant.getFullPrice('gross', true) }} zł brutto</div>
  165.                                                 </div>
  166.                                             {% endif %}
  167.                                             <div class="subscription__button-wrapper">
  168.                                                 <a  href="#add-to-cart"
  169.                                                     class="button button--bordered button--with-arrow product-nav__add"
  170.                                                     data-productVariantNoComplete="{{ productVariant.productVariantNoComplete }}"
  171.                                                     data-productAssociationId="{{ product.id }}"
  172.                                                     data-redirecttocart="false"
  173.                                                     data-hidesuccessalert="false"
  174.                                                     {% if product.checkCouponDefault(productVariant) %}
  175.                                                         data-coupon="{{ product.couponDefault.code }}"
  176.                                                     {% endif %}
  177.                                                 >
  178.                                                     Dodaj do koszyka
  179.                                                 </a>
  180.                                             </div>
  181.                                         </div>
  182.                                     </div>
  183.                                 </div>
  184.                             </div>
  185.                         </div>
  186.                     {% endfor %}
  187.                 </div>
  188.             </div>
  189.             <div class="d-block d-md-none mobile-cycles-modal-background"></div>
  190.             <div class="d-block d-md-none mobile-cycles-modal">
  191.                 <div class="row">
  192.                     <div class="col-12 d-flex justify-content-end">
  193.                         <button type="button" class="dModal__close" id="js-close-mobile-cycles-modal"></button>
  194.                     </div>
  195.                 </div>
  196.                 <div class="row">
  197.                     <div class="col-12">
  198.                         <p class="mobile-cycles-modal-title">Wybierz swój cykl:</p>
  199.                     </div>
  200.                 </div>
  201.                 <div class="row">
  202.                     {% for productVariant in productVariants %}
  203.                         <div class="col col-md-6">
  204.                         <div class="subscription__item {{ productVariant.promoted == true ? 'subscription__item--promoted' : '' }}">
  205.                             <div class="container">
  206.                                 <div class="subscription__wrap">
  207.                                     <div class="subscription__wrap-title">
  208.                                         {% if productVariant.subscriptionPlan is not empty %}
  209.                                             <p>{{ productVariant.subscriptionPlan }}</p>
  210.                                         {% endif %}
  211.                                     </div>
  212.                                     <div class="subscription__left">
  213.                                         <img src="{{ vich_uploader_asset(productVariant, 'imageFile') }}" alt=""/>
  214.                                     </div>
  215.                                     <div class="subscription__right">
  216.                                         {% if productVariant.productVariantDescriptions is not empty %}
  217.                                             <ul class="subscription__list">
  218.                                                 {% for description in productVariant.productVariantDescriptions %}
  219.                                                     <li class="subscription__listLi
  220.                                                             {{ description.highlighted == false ? 'subscription__listLi--nope' : ''}}"
  221.                                                     >
  222.                                                         {{ description.description }}
  223.                                                     </li>
  224.                                                 {% endfor %}
  225.                                             </ul>
  226.                                         {% endif %}
  227.                                         <hr>
  228.                                         {% if product.checkCouponDefault(productVariant) %}
  229.                                             <div class="subscription__wrap-price">
  230.                                                 <div class="subscription__netto">{{ productVariant.getFullPriceAfterCoupon('net', product.couponDefault, true) }} zł netto</div>
  231.                                                 <div class="subscription__brutto">{{ productVariant.getFullPriceAfterCoupon('gross', product.couponDefault, true) }} zł brutto</div>
  232.                                             </div>
  233.                                         {% else %}
  234.                                             <div class="subscription__wrap-price">
  235.                                                 <div class="subscription__netto">{{ productVariant.getFullPrice('net', true) }} zł netto</div>
  236.                                                 <div class="subscription__brutto">{{ productVariant.getFullPrice('gross', true) }} zł brutto</div>
  237.                                             </div>
  238.                                         {% endif %}
  239.                                         <div class="subscription__button-wrapper">
  240.                                             <a href="#add-to-cart"
  241.                                                class="button button--bordered button--with-arrow product-nav__add"
  242.                                                data-productVariantNoComplete="{{ productVariant.productVariantNoComplete }}"
  243.                                                data-productAssociationId="{{ product.id }}"
  244.                                                data-redirecttocart="false"
  245.                                                data-hidesuccessalert="false"
  246.                                                 {% if product.checkCouponDefault(productVariant) %}
  247.                                                     data-coupon="{{ product.couponDefault.code }}"
  248.                                                 {% endif %}
  249.                                             >
  250.                                                 Dodaj do koszyka
  251.                                             </a>
  252.                                         </div>
  253.                                     </div>
  254.                                 </div>
  255.                             </div>
  256.                         </div>
  257.                     </div>
  258.                     {% endfor %}
  259.                 </div>
  260.             </div>
  261.         {% else %}
  262.             <div class="row d-flex d-md-none">
  263.                 {% if productVariants is not empty %}
  264.                     <div class="col-12">
  265.                         <div class="product-form">
  266.                             <header class="product-form__header">
  267.                                 <h3 class="product-form__title">Wybierz swoją wersję</h3>
  268.                             </header>
  269.                             {% for productVariant in productVariants %}
  270.                                 {% if productVariant.isPublished == true %}
  271.                                     <div class="product-form__group-mobile">
  272.                                         <input type="radio"
  273.                                                id="product_{{ loop.index }}_mobile"
  274.                                                name="product_mobile"
  275.                                                class="product-form__radio"
  276.                                                 {% if loop.index == 1 %} checked {% endif %}
  277.                                                data-productVariantNoComplete="{{ productVariant.productVariantNoComplete }}"
  278.                                                data-subname="{{ productVariant.tradeName }}"
  279.                                                data-productAssociationId="{{ product.id }}"
  280.                                                data-redirecttocart="false"
  281.                                                data-hidesuccessalert="false"
  282.                                                data-pixel="{{ fbPixelTrack('AddToCart', productVariant.id)|raw }}"
  283.                                                 {% if product.checkCouponDefault(productVariant) %}
  284.                                                     data-pricenet="{{ productVariant.getFullPriceAfterCoupon('net', product.couponDefault, true) }}"
  285.                                                     data-pricegross="{{ productVariant.getFullPriceAfterCoupon('gross', product.couponDefault, true) }}"
  286.                                                 {% else %}
  287.                                                     data-pricenet="{{ productVariant.getFullPrice('net', true) }}"
  288.                                                     data-pricegross="{{ productVariant.getFullPrice('gross', true) }}"
  289.                                                 {% endif %}
  290.                                         >
  291.                                         <label for="product_{{ loop.index }}_mobile" class="product-form__product">
  292.                                             <h3 class="product-form__product-name">
  293.                                                 {{ productVariant.tradeName }}
  294.                                                 <small>{{ productVariant.technicalInformations|raw }}</small>
  295.                                             </h3>
  296.                                             <h3 class="product-form__product-price">
  297.                                                 {{ productVariant.getFullPrice('net', true) }} zł netto
  298.                                                 <small>{{ productVariant.getFullPrice('gross', true) }} zł brutto</small>
  299.                                             </h3>
  300.                                         </label>
  301.                                     </div>
  302.                                 {% endif %}
  303.                             {% endfor %}
  304.                             <footer class="product-form__footer {{ source is defined and source == 'modal' ? 'product-form__footer--modal row' : '' }}">
  305.                                 {% if source is not defined or source != 'modal' %}
  306.                                     <a href="#"
  307.                                        class="product-form__info jsToggleProductPreview"
  308.                                        data-url="{{ path('efProductPreview', {'productAssociationId': product.id, 'type': 'subscriptions'}) }}"
  309.                                        tabindex="0"
  310.                                     >
  311.                                         {% if module.modalButtonText is defined %}
  312.                                             {{ module.modalButtonText }}
  313.                                         {% else %}
  314.                                             Czym różnią się prenumeraty?
  315.                                         {% endif %}
  316.                                     </a>
  317.                                 {% else %}
  318.                                     <div class="col-12 col-lg-7">
  319.                                         <a href="{{ path('efShowProduct', {
  320.                                             'categorySlug' :            product.getParentCategorySlug,
  321.                                             'categoryChildSlug':        product.getCategorySlug,
  322.                                             'productAssociationSlug' :  product.slug}) }}"
  323.                                            class="button button--bordered button--with-arrow button--fluid"
  324.                                         >
  325.                                             Więcej o produkcie
  326.                                         </a>
  327.                                     </div>
  328.                                 {% endif %}
  329.                                 <div {{ source is defined and source == 'modal' ? 'class="col-12 col-lg-5"' : '' }}>
  330.                                     <button class="button button--blue addToCart"
  331.                                             id="add-to-cart-top-mobile"
  332.                                             type="button"
  333.                                     >
  334.                                         <i class="icon icon--cart"></i>
  335.                                         Dodaj do koszyka
  336.                                     </button>
  337.                                 </div>
  338.                             </footer>
  339.                         </div>
  340.                     </div>
  341.                 {% endif %}
  342.             </div>
  343.         {% endif %}
  344.     </div>
  345. </section>