custom/plugins/NimbitsPriceOnRequestNext/src/Resources/views/storefront/base.html.twig line 1

Open in your IDE?
  1. {% sw_extends '@parent/storefront/base.html.twig' %}
  2. {% block base_body %}
  3.     {{ parent() }}
  4.     {% block nb_priceonrequest_toasts %}
  5.         {% block nb_priceonrequest_toasts_success %}
  6.             <div class="wrapper">
  7.                 <div class="" id="toast">
  8.                     <div class="container-1 alert nb-alert-success" role="alert">
  9.                         {{ 'nimbits-pricerequests.finish.alert'|trans }}
  10.                     </div>
  11.                     <div class="container-2 alert nb-alert-failure" role="alert">
  12.                         {{ 'nimbits-pricerequests.fail.alert'|trans }}
  13.                     </div>
  14.                 </div>
  15.             </div>
  16.         {% endblock %}
  17.     {% endblock %}
  18.     {% block nb_priceonrequest_requestform_entiremodal %}
  19.         <!-- Modal -->
  20.         <div class="modal fade" id="priceOnRequestModalCenter" tabindex="-1" role="dialog"
  21.              aria-labelledby="priceOnRequestModalCenterTitle" aria-hidden="true">
  22.             <input type="hidden" name="nb_priceonrequest_quantity_producttitle_seperator"
  23.                    value="{{ 'nimbits-pricerequests.popup.quantityProductTitleSeperator'|trans }}"/>
  24.             <div class="modal-dialog modal-dialog-centered" role="document">
  25.                 <div class="modal-content">
  26.                     {% block nb_priceonrequest_requestform_modalheader %}
  27.                         <div class="modal-header">
  28.                             <h5 class="modal-title"
  29.                                 id="priceOnRequestModalCenterTitle">{{ 'nimbits-pricerequests.popup.popupTitle'|trans }}</h5>
  30.                             <button type="button" class="close" data-dismiss="modal" aria-label="Close">
  31.                                 <span aria-hidden="true">&times;</span>
  32.                             </button>
  33.                         </div>
  34.                     {% endblock %}
  35.                     {% block nb_priceonrequest_requestform_modalbody %}
  36.                         <div class="modal-body">
  37.                             {% block nb_priceonrequest_requestform_text %}
  38.                                 <div class="request-text">
  39.                                     {{ 'nimbits-pricerequests.popup.text'|trans }}
  40.                                 </div><br>
  41.                             {% endblock %}
  42.                             {% block nb_priceonrequest_requestform_product %}
  43.                                 {% if page.footer.extensions.nimbitsPriceOnRequestSettings.nbporshowarticlesinrequestform %}
  44.                                     <div class="request-product">
  45.                                         <div class="row request-product-title">
  46.                                             <div class="col">
  47.                                                 <b>{{ 'nimbits-pricerequests.popup.product'|trans }}</b>
  48.                                             </div>
  49.                                         </div>
  50.                                         <div class="row request-product-data border">
  51.                                             <div class="col nb_pricerequest_form_lineitems_div">
  52.                                             </div>
  53.                                         </div>
  54.                                     </div>
  55.                                 {% endif %}
  56.                             {% endblock %}
  57.                             {% block nb_priceonrequest_requestform_form %}
  58.                                 <form class="needs-validation" novalidate method="post"
  59.                                       action="{{ path('frontend.action.nimbits.price-request-request') }}">
  60.                                     {% block nb_priceonrequest_requestform_csrf %}
  61.                                         {{ sw_csrf('frontend.action.nimbits.price-request-request') }}
  62.                                     {% endblock %}
  63.                                     <input type="hidden"
  64.                                            value="{{ path('frontend.action.nimbits.price-request-customerdata') }}"
  65.                                            id="nimbits-priconrequest-cdata-url">
  66.                                     <input name="nbpr_form_sourceurl" class="nbpr_form_sourceurl" type="hidden"
  67.                                            value=""/>
  68.                                     {% block nb_priceonrequest_requestform_recaptcha %}
  69.                                         <input type="hidden" name="nbpr_recaptcha_rca" id="nbpr_recaptcha_rca"
  70.                                                value="{% if page.footer.extensions.nimbitsPriceOnRequestSettings.nbprorecaptchasettingsactive == true %}1{% else %}0{% endif %}">
  71.                                         {% if page.footer.extensions.nimbitsPriceOnRequestSettings.nbprorecaptchasettingsactive == true %}
  72.                                             <input type="hidden" name="nbpr_deftoken" id="nbpr_deftoken"
  73.                                                    value="{{ page.footer.extensions.nimbitsPriceOnRequestSettings.nbprorecaptchasettingstoken }}">
  74.                                             <input type="hidden" name="nbpr_token" id="nbpr_token" value="">
  75.                                         {% endif %}
  76.                                     {% endblock %}
  77.                                     <input name="nb_pricerequest_form_lineitems" type="hidden"/>
  78.                                     {% block nb_priceonrequest_requestform_salutation %}
  79.                                         <div class="row">
  80.                                             <div class="col">
  81.                                                 <div class="form-group">
  82.                                                     <label for="priceOnRequestFormSalutation">{{ 'nimbits-pricerequests.popup.salutation'|trans }} {% if page.footer.extensions.nimbitsPriceOnRequestSettings.nbproformsettingsrequiredsalutation == false %}{{ 'nimbits-pricerequests.popup.optional'|trans }}{% else %}{{ 'nimbits-pricerequests.popup.required'|trans }}{% endif %}</label>
  83.                                                     <select name="nbpr_salutation" class="form-control"
  84.                                                             id="priceOnRequestFormSalutation"
  85.                                                             {% if page.footer.extensions.nimbitsPriceOnRequestSettings.nbproformsettingsrequiredsalutation == true %} required{% endif %}>
  86.                                                         <option value="">{{ 'nimbits-pricerequests.popup.salutation'|trans }} {% if page.footer.extensions.nimbitsPriceOnRequestSettings.nbproformsettingsrequiredsalutation == false %}{{ 'nimbits-pricerequests.popup.optional'|trans }}{% else %}{{ 'nimbits-pricerequests.popup.required'|trans }}{% endif %}</option>
  87.                                                         <option>{{ 'nimbits-pricerequests.popup.genderw'|trans }}</option>
  88.                                                         <option>{{ 'nimbits-pricerequests.popup.genderm'|trans }}</option>
  89.                                                         <option>{{ 'nimbits-pricerequests.popup.gendern'|trans }}</option>
  90.                                                     </select>
  91.                                                 </div>
  92.                                             </div>
  93.                                             <div class="col">
  94.                                                 <div class="form-group">
  95.                                                     <label for="priceOnRequestFormCompany">{{ 'nimbits-pricerequests.popup.company'|trans }} {% if page.footer.extensions.nimbitsPriceOnRequestSettings.nbproformsettingsrequiredcompany == false %}{{ 'nimbits-pricerequests.popup.optional'|trans }}{% else %}{{ 'nimbits-pricerequests.popup.required'|trans }}{% endif %}</label>
  96.                                                     <input name="nbpr_company" type="text" class="form-control"
  97.                                                            id="priceOnRequestFormCompany"
  98.                                                            placeholder="{{ 'nimbits-pricerequests.popup.company'|trans }} {% if page.footer.extensions.nimbitsPriceOnRequestSettings.nbproformsettingsrequiredcompany == false %}{{ 'nimbits-pricerequests.popup.optional'|trans }}"{% else %}{{ 'nimbits-pricerequests.popup.required'|trans }}" required{% endif %}
  99.                                                     >
  100.                                                 </div>
  101.                                             </div>
  102.                                         </div>
  103.                                     {% endblock %}
  104.                                     {% block nb_priceonrequest_requestform_firstlastname %}
  105.                                         <div class="row">
  106.                                             {% block nb_priceonrequest_requestform_firstname %}
  107.                                                 <div class="col">
  108.                                                     <div class="form-group">
  109.                                                         <label for="priceOnRequestFormForename">{{ 'nimbits-pricerequests.popup.name'|trans }} {% if page.footer.extensions.nimbitsPriceOnRequestSettings.nbproformsettingsrequiredsfirstname == false %}{{ 'nimbits-pricerequests.popup.optional'|trans }}{% else %}{{ 'nimbits-pricerequests.popup.required'|trans }}{% endif %}</label>
  110.                                                         <input name="nbpr_firstname" type="text" class="form-control"
  111.                                                                id="priceOnRequestFormForename"
  112.                                                                placeholder="{{ 'nimbits-pricerequests.popup.name'|trans }} {% if page.footer.extensions.nimbitsPriceOnRequestSettings.nbproformsettingsrequiredsfirstname == false %}{{ 'nimbits-pricerequests.popup.optional'|trans }}"{% else %}{{ 'nimbits-pricerequests.popup.required'|trans }}" required{% endif %}
  113.                                                         >
  114.                                                     </div>
  115.                                                 </div>
  116.                                             {% endblock %}
  117.                                             {% block nb_priceonrequest_requestform_lastname %}
  118.                                                 <div class="col">
  119.                                                     <div class="form-group">
  120.                                                         <label for="priceOnRequestFormSurname">{{ 'nimbits-pricerequests.popup.surname'|trans }} {% if page.footer.extensions.nimbitsPriceOnRequestSettings.nbproformsettingsrequiredlastname == false %}{{ 'nimbits-pricerequests.popup.optional'|trans }}{% else %}{{ 'nimbits-pricerequests.popup.required'|trans }}{% endif %}</label>
  121.                                                         <input name="nbpr_surname" type="text" class="form-control"
  122.                                                                id="priceOnRequestFormSurname"
  123.                                                                placeholder="{{ 'nimbits-pricerequests.popup.surname'|trans }} {% if page.footer.extensions.nimbitsPriceOnRequestSettings.nbproformsettingsrequiredlastname == false %}{{ 'nimbits-pricerequests.popup.optional'|trans }}"{% else %}{{ 'nimbits-pricerequests.popup.required'|trans }}" required{% endif %}
  124.                                                         >
  125.                                                     </div>
  126.                                                 </div>
  127.                                             {% endblock %}
  128.                                         </div>
  129.                                     {% endblock %}
  130.                                     {% block nb_priceonrequest_requestform_phonemail %}
  131.                                         <div class="row">
  132.                                             {% block nb_priceonrequest_requestform_phone %}
  133.                                                 {% if page.footer.extensions.nimbitsPriceOnRequestSettings.nbproformsettingsphoneactive %}
  134.                                                     <div class="col">
  135.                                                         <div class="form-group">
  136.                                                             <label for="priceOnRequestFormPhonenumber">{{ 'nimbits-pricerequests.popup.phonenumber'|trans }} {% if page.footer.extensions.nimbitsPriceOnRequestSettings.nbproformsettingsrequiredphonenumber == false %}{{ 'nimbits-pricerequests.popup.optional'|trans }}{% else %}{{ 'nimbits-pricerequests.popup.required'|trans }}{% endif %}</label>
  137.                                                             <input type="tel" name="nbpr_phonenumber"
  138.                                                                    class="form-control"
  139.                                                                    id="priceOnRequestFormPhonenumber"
  140.                                                                    placeholder="{{ 'nimbits-pricerequests.popup.phonenumber'|trans }} {% if page.footer.extensions.nimbitsPriceOnRequestSettings.nbproformsettingsrequiredphonenumber == false %}{{ 'nimbits-pricerequests.popup.optional'|trans }}"{% else %}{{ 'nimbits-pricerequests.popup.required'|trans }}" required{% endif %}
  141.                                                             >
  142.                                                         </div>
  143.                                                     </div>
  144.                                                 {% endif %}
  145.                                             {% endblock %}
  146.                                             {% block nb_priceonrequest_requestform_mail %}
  147.                                                 <div class="col">
  148.                                                     <div class="form-group">
  149.                                                         <label for="priceOnRequestFormMail">{{ 'nimbits-pricerequests.popup.mail'|trans }} {% if page.footer.extensions.nimbitsPriceOnRequestSettings.nbproformsettingsrequiredemail == false %}{{ 'nimbits-pricerequests.popup.optional'|trans }}{% else %}{{ 'nimbits-pricerequests.popup.required'|trans }}{% endif %}</label>
  150.                                                         <input name="nbpr_mail" type="email" class="form-control"
  151.                                                                id="priceOnRequestFormMail"
  152.                                                                placeholder="{{ 'nimbits-pricerequests.popup.mail'|trans }} {% if page.footer.extensions.nimbitsPriceOnRequestSettings.nbproformsettingsrequiredemail == false %}{{ 'nimbits-pricerequests.popup.optional'|trans }}"{% else %}{{ 'nimbits-pricerequests.popup.required'|trans }}" required{% endif %}
  153.                                                         >
  154.                                                         <div class="invalid-feedback">
  155.                                                             {{ 'nimbits-pricerequests.popup.entervalidmail'|trans }}
  156.                                                         </div>
  157.                                                     </div>
  158.                                                 </div>
  159.                                             {% endblock %}
  160.                                         </div>
  161.                                     {% endblock %}
  162.                                     {% block nb_priceonrequest_requestform_address %}
  163.                                         {% if page.footer.extensions.nimbitsPriceOnRequestSettings.nbproformsettingsaddressactive %}
  164.                                             {% block nb_priceonrequest_requestform_streethousenumber %}
  165.                                                 <div class="row">
  166.                                                     {% block nb_priceonrequest_requestform_street %}
  167.                                                         <div class="col">
  168.                                                             <div class="form-group">
  169.                                                                 <label for="priceOnRequestFormStreet">{{ 'nimbits-pricerequests.popup.street'|trans }} {% if page.footer.extensions.nimbitsPriceOnRequestSettings.nbproformsettingsrequiredaddress == false %}{{ 'nimbits-pricerequests.popup.optional'|trans }}{% else %}{{ 'nimbits-pricerequests.popup.required'|trans }}{% endif %}</label>
  170.                                                                 <input name="nbpr_street" type="text"
  171.                                                                        class="form-control"
  172.                                                                        id="priceOnRequestFormStreet"
  173.                                                                        placeholder="{{ 'nimbits-pricerequests.popup.street'|trans }} {% if page.footer.extensions.nimbitsPriceOnRequestSettings.nbproformsettingsrequiredaddress == false %}{{ 'nimbits-pricerequests.popup.optional'|trans }}"{% else %}{{ 'nimbits-pricerequests.popup.required'|trans }}" required{% endif %}
  174.                                                                 >
  175.                                                                 <div class="invalid-feedback">
  176.                                                                     {{ 'nimbits-pricerequests.popup.entervalidstreet'|trans }}
  177.                                                                 </div>
  178.                                                             </div>
  179.                                                         </div>
  180.                                                     {% endblock %}
  181.                                                     {% block nb_priceonrequest_requestform_housenumber %}
  182.                                                         <div class="col">
  183.                                                             <div class="form-group">
  184.                                                                 <label for="priceOnRequestFormHousenumber">{{ 'nimbits-pricerequests.popup.housenumber'|trans }} {% if page.footer.extensions.nimbitsPriceOnRequestSettings.nbproformsettingsrequiredaddress == false %}{{ 'nimbits-pricerequests.popup.optional'|trans }}{% else %}{{ 'nimbits-pricerequests.popup.required'|trans }}{% endif %}</label>
  185.                                                                 <input name="nbpr_housenumber" type="text"
  186.                                                                        class="form-control"
  187.                                                                        id="priceOnRequestFormHousenumber"
  188.                                                                        placeholder="{{ 'nimbits-pricerequests.popup.housenumber'|trans }} {% if page.footer.extensions.nimbitsPriceOnRequestSettings.nbproformsettingsrequiredaddress == false %}{{ 'nimbits-pricerequests.popup.optional'|trans }}"{% else %}{{ 'nimbits-pricerequests.popup.required'|trans }}" required{% endif %}
  189.                                                                 >
  190.                                                                 <div class="invalid-feedback">
  191.                                                                     {{ 'nimbits-pricerequests.popup.entervalidhousenumber'|trans }}
  192.                                                                 </div>
  193.                                                             </div>
  194.                                                         </div>
  195.                                                     {% endblock %}
  196.                                                 </div>
  197.                                             {% endblock %}
  198.                                             {% block nb_priceonrequest_requestform_zipcodecity %}
  199.                                                 <div class="row">
  200.                                                     {% block nb_priceonrequest_requestform_zipcode %}
  201.                                                         <div class="col">
  202.                                                             <div class="form-group">
  203.                                                                 <label for="priceOnRequestFormZipcode">{{ 'nimbits-pricerequests.popup.zipcode'|trans }} {% if page.footer.extensions.nimbitsPriceOnRequestSettings.nbproformsettingsrequiredaddress == false %}{{ 'nimbits-pricerequests.popup.optional'|trans }}{% else %}{{ 'nimbits-pricerequests.popup.required'|trans }}{% endif %}</label>
  204.                                                                 <input name="nbpr_zipcode" type="text"
  205.                                                                        class="form-control"
  206.                                                                        id="priceOnRequestFormZipcode"
  207.                                                                        placeholder="{{ 'nimbits-pricerequests.popup.zipcode'|trans }} {% if page.footer.extensions.nimbitsPriceOnRequestSettings.nbproformsettingsrequiredaddress == false %}{{ 'nimbits-pricerequests.popup.optional'|trans }}"{% else %}{{ 'nimbits-pricerequests.popup.required'|trans }}" required{% endif %}
  208.                                                                 >
  209.                                                                 <div class="invalid-feedback">
  210.                                                                     {{ 'nimbits-pricerequests.popup.entervalidzipcode'|trans }}
  211.                                                                 </div>
  212.                                                             </div>
  213.                                                         </div>
  214.                                                     {% endblock %}
  215.                                                     {% block nb_priceonrequest_requestform_city %}
  216.                                                         <div class="col">
  217.                                                             <div class="form-group">
  218.                                                                 <label for="priceOnRequestFormCity">{{ 'nimbits-pricerequests.popup.city'|trans }} {% if page.footer.extensions.nimbitsPriceOnRequestSettings.nbproformsettingsrequiredaddress == false %}{{ 'nimbits-pricerequests.popup.optional'|trans }}{% else %}{{ 'nimbits-pricerequests.popup.required'|trans }}{% endif %}</label>
  219.                                                                 <input name="nbpr_city" type="text" class="form-control"
  220.                                                                        id="priceOnRequestFormCity"
  221.                                                                        placeholder="{{ 'nimbits-pricerequests.popup.city'|trans }} {% if page.footer.extensions.nimbitsPriceOnRequestSettings.nbproformsettingsrequiredaddress == false %}{{ 'nimbits-pricerequests.popup.optional'|trans }}"{% else %}{{ 'nimbits-pricerequests.popup.required'|trans }}" required{% endif %}
  222.                                                                 >
  223.                                                                 <div class="invalid-feedback">
  224.                                                                     {{ 'nimbits-pricerequests.popup.entervalidcity'|trans }}
  225.                                                                 </div>
  226.                                                             </div>
  227.                                                         </div>
  228.                                                     {% endblock %}
  229.                                                 </div>
  230.                                             {% endblock %}
  231.                                             {% block nb_priceonrequest_requestform_country %}
  232.                                                 <div class="form-group">
  233.                                                     <label for="priceOnRequestFormCountry">{{ 'nimbits-pricerequests.popup.country'|trans }} {% if page.footer.extensions.nimbitsPriceOnRequestSettings.nbproformsettingsrequiredaddress == false %}{{ 'nimbits-pricerequests.popup.optional'|trans }}{% else %}{{ 'nimbits-pricerequests.popup.required'|trans }}{% endif %}</label>
  234.                                                     <input name="nbpr_country" type="text" class="form-control"
  235.                                                            id="priceOnRequestFormCountry"
  236.                                                            placeholder="{{ 'nimbits-pricerequests.popup.country'|trans }} {% if page.footer.extensions.nimbitsPriceOnRequestSettings.nbproformsettingsrequiredaddress == false %}{{ 'nimbits-pricerequests.popup.optional'|trans }}"{% else %}{{ 'nimbits-pricerequests.popup.required'|trans }}" required{% endif %}
  237.                                                     >
  238.                                                     <div class="invalid-feedback">
  239.                                                         {{ 'nimbits-pricerequests.popup.entervalidcountry'|trans }}
  240.                                                     </div>
  241.                                                 </div>
  242.                                             {% endblock %}
  243.                                         {% endif %}
  244.                                     {% endblock %}
  245.                                     {% block nb_priceonrequest_requestform_comment %}
  246.                                         <div class="form-group">
  247.                                             <label for="priceOnRequestFormMessage">{{ 'nimbits-pricerequests.popup.request'|trans }} {% if page.footer.extensions.nimbitsPriceOnRequestSettings.nbproformsettingsrequiredcomment == false %}{{ 'nimbits-pricerequests.popup.optional'|trans }}{% else %}{{ 'nimbits-pricerequests.popup.required'|trans }}{% endif %}</label>
  248.                                             <textarea name="nbpr_comment" class="form-control"
  249.                                                       id="priceOnRequestFormMessage" rows="3"
  250.                                                       {% if page.footer.extensions.nimbitsPriceOnRequestSettings.nbproformsettingsrequiredcomment == true %}required {% endif %}></textarea>
  251.                                         </div>
  252.                                     {% endblock %}
  253.                                     {% block nb_priceonrequest_requestform_dataprivacy %}
  254.                                         <div class="custom-control custom-checkbox">
  255.                                             <input type="checkbox" class="custom-control-input" id="priceOnRequestCheck"
  256.                                                    required>
  257.                                             <label class="custom-control-label"
  258.                                                    for="priceOnRequestCheck">{{ 'nimbits-pricerequests.popup.dataprivacytext'|trans|raw }}{{ 'nimbits-pricerequests.popup.required'|trans }}</label>
  259.                                         </div>
  260.                                         <div class="form-group mt-2">
  261.                                             {{ 'nimbits-pricerequests.popup.requiredtext'|trans }}
  262.                                         </div>
  263.                                     {% endblock %}
  264.                                     <input name="nbpr_deletecart" class="nbpr_deletecart" type="hidden" value="">
  265.                                     {% if page.footer.extensions.nimbitsPriceOnRequestSettings.nbprohoneypotactive == true %}
  266.                                         {% sw_include '@Storefront/storefront/component/captcha/base.html.twig' %}
  267.                                     {% endif %}
  268.                                     {% block nb_priceonrequest_requestform_buttons %}
  269.                                         <div class="modal-footer">
  270.                                             <button type="button" class="btn btn-secondary"
  271.                                                     data-dismiss="modal">{{ 'nimbits-pricerequests.popup.closebutton'|trans }}</button>
  272.                                             <button type="submit"
  273.                                                     class="btn btn-primary nimbits-requestprice-button">{{ 'nimbits-pricerequests.popup.requestbutton'|trans }}</button>
  274.                                         </div>
  275.                                     {% endblock %}
  276.                                 </form>
  277.                             {% endblock %}
  278.                         </div>
  279.                     {% endblock %}
  280.                 </div>
  281.             </div>
  282.         </div>
  283.     {% endblock %}
  284.     {% block nb_priceonrequest_requestform_modalcenter %}
  285.         <button data-toggle="modal" data-target="#priceOnRequestModalCenter"
  286.                 class="btn btn-block btn-nb-pricerequest-hidden btn-primary" style="display:none;"
  287.                 title="{{ 'nimbits-pricerequests.cart.cartRequestButton'|trans }}">
  288.             {{ 'nimbits-pricerequests.cart.cartRequestButton'|trans }}
  289.         </button>
  290.     {% endblock %}
  291.     {% block nb_priceonrequest_requestform_recaptchascript %}
  292.         {% if page.footer.extensions.nimbitsPriceOnRequestSettings.nbprorecaptchasettingsactive == true %}
  293.             <script src="https://www.google.com/recaptcha/api.js?render={{ page.footer.extensions.nimbitsPriceOnRequestSettings.nbprorecaptchasettingstoken }}"></script>
  294.             <script>
  295.                 function refreshGRECaptcha() {
  296.                     var rca = document.querySelector('[name="nbpr_recaptcha_rca"]').value;
  297.                     if (rca == 1) {
  298.                         var deftoken = document.querySelector("[name='nbpr_deftoken']").value;
  299.                         grecaptcha.execute(deftoken, {action: 'homepage'}).then(function (token) {
  300.                             document.querySelector("[name='nbpr_token']").value = token;
  301.                         });
  302.                     }
  303.                 };
  304.                 if (typeof grecaptcha !== 'undefined') {
  305.                     setInterval(refreshGRECaptcha, 60 * 1000);
  306.                     grecaptcha.ready(function () {
  307.                         refreshGRECaptcha();
  308.                     });
  309.                 }
  310.             </script>
  311.             {% if page.footer.extensions.nimbitsPriceOnRequestSettings.nbprorecaptchasettingslogovisible == true %}
  312.                 <style>
  313.                     .grecaptcha-badge {
  314.                         display: none;
  315.                     }
  316.                 </style>
  317.             {% endif %}
  318.         {% endif %}
  319.     {% endblock %}
  320. {% endblock %}