templates/snippets/newsletter.html.twig line 1

Open in your IDE?
  1. {% extends "layout-snippets.html.twig" %}
  2. {% block snippets %}
  3. <section id="newsletter">
  4.     <div class="apk-newsletter uk-light">
  5.         <div class="uk-container apk-container-800">
  6.             <div class="uk-text-center">
  7.                 <h2 class="uk-h2 c-orange1">{{ pimcore_textarea('newsletterTitle', { 'nl2br' : true}) }}</h2>
  8.             </div>
  9.             {#% set form = formSnippet.form %}
  10.             {% set formStatus = formSnippet.formStatus %}
  11.             {% set formSubmited = formSnippet.formSubmited %}
  12.             
  13.             {% if formSubmited %}
  14.             <div class="uk-alert-success" uk-alert>
  15.             <a class="uk-alert-close" uk-close></a>
  16.             <p>{{ "Message envoyé. Nous vous recontacterons dans les plus brefs délais."|trans }}</p>
  17.             </div>
  18.             {% else %}
  19.                 {% if formStatus == "already" %}
  20.                     <div class="uk-alert-warning" uk-alert>
  21.                     <a class="uk-alert-close" uk-close></a>
  22.                     <p>{{ "Vous êtes déjà inscit à notre newsletter."|trans }}</p>
  23.                     </div>
  24.                 {% endif %}
  25.                 {% if formStatus == "invalid-email" %}
  26.                     <div class="uk-alert-danger" uk-alert>
  27.                     <a class="uk-alert-close" uk-close></a>
  28.                     <p>{{ "Votre adresse email est invalide. Merci de recommencer."|trans }}</p>
  29.                     </div>
  30.                 {% endif %}
  31.                 {% if formStatus == "robot" %}
  32.                     <div class="uk-alert-danger" uk-alert>
  33.                     <a class="uk-alert-close" uk-close></a>
  34.                     <p>{{ "Une erreur Recaptcha est survenue. Merci de recommencer."|trans }}</p>
  35.                     </div>
  36.                 {% endif %#}
  37.                 
  38.                 <div id="sib-form-container" class="sib-form-container">
  39.                     <div id="error-message" class="sib-form-message-panel">
  40.                     <div class="sib-form-message-panel__text sib-form-message-panel__text--center">
  41.                         <svg width="20" height="20" viewBox="0 0 512 512" class="sib-icon sib-notification__icon">
  42.                         <path d="M256 40c118.621 0 216 96.075 216 216 0 119.291-96.61 216-216 216-119.244 0-216-96.562-216-216 0-119.203 96.602-216 216-216m0-32C119.043 8 8 119.083 8 256c0 136.997 111.043 248 248 248s248-111.003 248-248C504 119.083 392.957 8 256 8zm-11.49 120h22.979c6.823 0 12.274 5.682 11.99 12.5l-7 168c-.268 6.428-5.556 11.5-11.99 11.5h-8.979c-6.433 0-11.722-5.073-11.99-11.5l-7-168c-.283-6.818 5.167-12.5 11.99-12.5zM256 340c-15.464 0-28 12.536-28 28s12.536 28 28 28 28-12.536 28-28-12.536-28-28-28z" />
  43.                         </svg>
  44.                         <span class="sib-form-message-panel__inner-text">
  45.                             {{ "Une erreur est survenue. Merci de recommencer."|trans }}
  46.                         </span>
  47.                     </div>
  48.                     </div>
  49.                     <div></div>
  50.                     <div id="success-message" class="sib-form-message-panel" style="font-size:16px; text-align:left; font-family:&quot;Helvetica&quot;, sans-serif; color:#085229; background-color:#e7faf0; border-radius:3px; border-color:#13ce66;">
  51.                     <div class="sib-form-message-panel__text sib-form-message-panel__text--center">
  52.                         <svg width="20" height="20" viewBox="0 0 512 512" class="sib-icon sib-notification__icon">
  53.                         <path d="M256 8C119.033 8 8 119.033 8 256s111.033 248 248 248 248-111.033 248-248S392.967 8 256 8zm0 464c-118.664 0-216-96.055-216-216 0-118.663 96.055-216 216-216 118.664 0 216 96.055 216 216 0 118.663-96.055 216-216 216zm141.63-274.961L217.15 376.071c-4.705 4.667-12.303 4.637-16.97-.068l-85.878-86.572c-4.667-4.705-4.637-12.303.068-16.97l8.52-8.451c4.705-4.667 12.303-4.637 16.97.068l68.976 69.533 163.441-162.13c4.705-4.667 12.303-4.637 16.97.068l8.451 8.52c4.668 4.705 4.637 12.303-.068 16.97z" />
  54.                         </svg>
  55.                         <span class="sib-form-message-panel__inner-text">
  56.                             {{ "Votre inscription à la newsletter a bien été prise en compte."|trans }}
  57.                         </span>
  58.                     </div>
  59.                     </div>
  60.                     <div></div>
  61.                     <div id="sib-container" class="uk-margin-small-top" style="background: transparent; padding: 0;">
  62.                     <form id="sib-form" method="POST" action="https://b19e07cd.sibforms.com/serve/MUIEAJWd1HyzWOBjBOTEmsLJ_ZCSTiGoY_4ggTCFKCCqhLaGUOYdX2ofb3_xmcblLslgwiKztCFavAQLORFMVcNPgjsLdVyGubVCngBDuqfMxzztbhYy37nWWK2DqQMm0z2ma-gLnM06WQctj_44jTaRZOsKn9gj_3Yrzr8RcENx_do-w1D3VbVfLpjOAx3zTMbEnBRIk_LSb2pf" data-type="subscription">
  63.                         <div class="uk-grid-small uk-grid" uk-grid>
  64.                             <div class="uk-width-expand@s">
  65.                                 <div class="sib-input">
  66.                                     <div class="form__entry entry_block">
  67.                                     <div class="form__label-row ">
  68.                                         <div class="entry__field">
  69.                                         <input class="input uk-input" type="text" id="EMAIL" name="EMAIL" autocomplete="off" placeholder="{{'Entrez votre adresse mail...'|trans}}" data-required="true" required />
  70.                                         </div>
  71.                                     </div>
  72.                                     <label class="entry__error entry__error--primary uk-alert-danger" style="background-color: #fef4f6;" uk-alert>
  73.                                     </label>
  74.                                     </div>
  75.                                 </div>
  76.                             </div>
  77.                             <div class="uk-margin-small-top uk-margin-small-bottom uk-width-1-1 uk-flex-last@s">
  78.                                 <div class="sib-optin uk-margin-small-top" data-required="true">
  79.                                     <div class="form__entry entry_mcq">
  80.                                     <div class="form__label-row ">
  81.                                         <div class="entry__choice" style="">
  82.                                         <label>
  83.                                             <input type="checkbox" class="input_replaced uk-checkbox" value="1" id="OPT_IN" name="OPT_IN" required />
  84.                                             <span class="checkbox checkbox_tick_positive"
  85.                                     style="margin-left:"
  86.                                     ></span><span class="apk-conscent"><p>{{ "newsletter.conscent"|trans }}</p><span data-required="*" style="display: inline;" class="entry__label entry__label_optin"></span></span> </label>
  87.                                         </div>
  88.                                     </div>
  89.                                     <label class="entry__error entry__error--primary uk-alert-danger" style="background-color: #fef4f6;" uk-alert>
  90.                                     </label>
  91.                                     </div>
  92.                                 </div>
  93.                             </div>
  94.                             <div class="uk-width-auto@s uk-text-center">
  95.                                 <button class="sib-form-block__button uk-button sib-form-block__button-with-loader uk-button-primary uk-button-large" style="text-align:center; border: 2px solid #EB6919;" form="sib-form" type="submit">
  96.                                     <svg width="20" height="20" class="icon clickable__icon progress-indicator__icon sib-hide-loader-icon" viewBox="0 0 512 512">
  97.                                         <path d="M460.116 373.846l-20.823-12.022c-5.541-3.199-7.54-10.159-4.663-15.874 30.137-59.886 28.343-131.652-5.386-189.946-33.641-58.394-94.896-95.833-161.827-99.676C261.028 55.961 256 50.751 256 44.352V20.309c0-6.904 5.808-12.337 12.703-11.982 83.556 4.306 160.163 50.864 202.11 123.677 42.063 72.696 44.079 162.316 6.031 236.832-3.14 6.148-10.75 8.461-16.728 5.01z" />
  98.                                     </svg>
  99.                                     {{ "S'inscrire"|trans }}
  100.                                 </button>
  101.                             </div>
  102.                         </div>
  103.                         <input type="text" name="email_address_check" value="" class="input--hidden">
  104.                         <input type="hidden" name="locale" value="fr">
  105.                     </form>
  106.                     </div>
  107.                 </div>
  108.             {#% endif %#}
  109.         </div>
  110.     </div>
  111. </section>
  112. {% set recaptchaKeyPublic = pimcore_website_config('recaptchaKeyPublic') %}
  113. {#
  114. <script src="https://www.google.com/recaptcha/api.js?onload=onloadRecaptchaCallback&render={{ recaptchaKeyPublic }}"></script>
  115. #}
  116. <script>
  117.     //On load le style avec du JS
  118.     // Get HTML head element
  119.     var head = document.getElementsByTagName('HEAD')[0];
  120.     // Create new link Element
  121.     var link = document.createElement('link');
  122.     // set the attributes for link element
  123.     link.rel = 'stylesheet';
  124.     
  125.     link.type = 'text/css';
  126.     
  127.     link.href = 'https://sibforms.com/forms/end-form/build/sib-styles.css';
  128.     // Append link element to HTML head
  129.     head.appendChild(link);
  130.     /*
  131.     function onloadRecaptchaCallback(){
  132.         grecaptcha.ready(function() {
  133.             grecaptcha.execute('{{ recaptchaKeyPublic }}', {action: 'newsletter'}).then(function(token) {
  134.             //alert('recaptcha is loaded');
  135.             var recaptcha = document.getElementById('newsletter_form_recaptcha');
  136.             recaptcha.value = token;
  137.             });
  138.         });
  139.     }
  140.     // Update every 110 Seconds since token expires after 2 min
  141.     setInterval(function () {
  142.         grecaptcha.ready(function() {
  143.             grecaptcha.execute('{{ recaptchaKeyPublic }}', {action: 'newsletter'}).then(function(token) {
  144.             //alert('recaptcha is loaded');
  145.             var recaptcha = document.getElementById('newsletter_form_recaptcha');
  146.             recaptcha.value = token;
  147.             });
  148.         });
  149.     }, 110 * 1000);
  150.     */
  151. </script>
  152. <!-- START - We recommend to place the below code in footer or bottom of your website html  -->
  153. <script>
  154.     window.REQUIRED_CODE_ERROR_MESSAGE = '{{"une erreur est survenue, merci de ré-essayer"|trans}}';
  155.     window.LOCALE = '{{ app.request.locale }}';
  156.     window.EMAIL_INVALID_MESSAGE = window.SMS_INVALID_MESSAGE = '{{"Les informations que vous avez fournies ne sont pas valides. Veuillez vérifier le format du champ et réessayer."|trans}}';
  157.     window.REQUIRED_ERROR_MESSAGE = '{{"Vous devez renseigner ce champ."|trans}}';
  158.     window.GENERIC_INVALID_MESSAGE = '{{"Les informations que vous avez fournies ne sont pas valides. Veuillez vérifier le format du champ et réessayer."|trans}}';
  159.     window.translation = {
  160.         common: {
  161.         selectedList: '{quantity} liste sélectionnée',
  162.         selectedLists: '{quantity} listes sélectionnées'
  163.         }
  164.     };
  165.     var AUTOHIDE = Boolean(0);
  166.     </script>
  167.   <script defer src="https://sibforms.com/forms/end-form/build/main.js"></script>
  168. {% endblock %}