templates/common/components/contact_form.html.twig line 1

Open in your IDE?
  1. {% import 'common/macros/elements.html.twig' as elements %}
  2. {% import 'common/macros/forms.html.twig' as forms %}
  3. {% import 'common/macros/svg.html.twig' as svg %}
  4. {% set lang = app.session.get('locale')|default('en') %}
  5. {% set formLang = lang == 'hu' ? 'hu-HU' : 'en-US' %}
  6. {% set contactForm = getMessageForm(location ?? null).createView() %}
  7. <section class="contact-form-section section {{ theme|default('dark') }}" id="get_in_touch">
  8.     <div class="overlay">
  9.         {{ svg.footer_icf }}
  10.     </div>
  11.     <div class="form-wrapper">
  12.         <div class="section-header">
  13.             {{ elements.heading('common.contact'|trans|upper, 4, 'section-category') }}
  14.             {% if location is not defined %}
  15.                 {{ elements.heading(
  16.                     'contact_form.we_d_love_to_hear'|trans ~
  17.                     '<br/>' ~
  18.                     'contact_form.from_you'|trans,
  19.                     2,
  20.                     'section-title'
  21.                 ) }}
  22.             {% else %}
  23.                 {{ elements.heading(
  24.                     'contact_form.get_in_touch'|trans ~
  25.                     (lang == 'en' ? ' ' ~ location.getCity() : ''),
  26.                 2,
  27.                 'section-title'
  28.                 ) }}
  29.             {% endif %}
  30.         </div>
  31.         <div class="contact-form">
  32.             <div role="form" lang="{{ formLang }}" dir="ltr">
  33.                 {{ form_start(contactForm, {'attr': {'novalidate': 'novalidate'}}) }}
  34.                 {{ form_widget(contactForm._token) }}
  35.                 {{ form_errors(contactForm) }}
  36.                 <div class="form-elements">
  37.                     <div class="styled-select" style="{{ location is not defined ? '' : 'display:none' }}">
  38.                         {{ form_widget(
  39.                             contactForm.type,
  40.                             {
  41.                                 'id': 'contact_type',
  42.                                 'value':
  43.                                 (location is not defined or (location|lower == 'amsterdam')) and defaultInquiry is not defined
  44.                                 ? 'customer_service'
  45.                                 : 'general_inquiry',
  46.                                 'attr': {
  47.                                 'placeholder': 'contact_form.your_name'|trans
  48.                             }
  49.                             }
  50.                         ) }}
  51.                     </div>
  52.                     {{ form_errors(contactForm.type) }}
  53.                     <p>{{ form_widget(contactForm.name, {'attr': {'placeholder': 'contact_form.your_name'|trans}}) }}</p>
  54.                     {{ form_errors(contactForm.name) }}
  55.                     <p>{{ form_widget(contactForm.phoneNumber, {'attr': {'placeholder': 'contact_form.phone_number'|trans}}) }}</p>
  56.                     {{ form_errors(contactForm.phoneNumber) }}
  57.                     <p>{{ form_widget(contactForm.email, {'attr': {'placeholder': 'contact_form.email'|trans}}) }}</p>
  58.                     {{ form_errors(contactForm.email) }}
  59.                     <p>{{ form_widget(contactForm.message, {'attr': {'placeholder': 'contact_form.message'|trans}}) }}</p>
  60.                     {{ form_errors(contactForm.message) }}
  61.                     <div class="styled-checkbox">
  62.                         <span class="form-control-wrap checkbox">
  63.                             <span class="item">
  64.                                 <label>
  65.                                 {{ form_widget(contactForm.privacyPolicyAccepted) }}
  66.                                     <span class="label">
  67.                                         <span>
  68.                                             {{- 'contact_form.accept_terms_text_prefix'|trans -}}
  69.                                             <a href="{{ path('privacy_policy_index') }}" target="_blank">
  70.                                                 {{- 'contact_form.accept_terms_text_suffix'|trans -}}
  71.                                             </a>
  72.                                         </span>
  73.                                     </span>
  74.                                 </label>
  75.                             </span>
  76.                         </span>
  77.                     </div>
  78.                     {{ form_errors(contactForm.privacyPolicyAccepted) }}
  79.                     <input type="hidden" name="g-recaptcha-response">
  80.                     <input type="hidden" name="email_repeat">
  81.                     <input type="hidden" name="form_rendered_at" value="{{ 'now'|date('U') }}">
  82.                     <p>{{ form_widget(contactForm.send, {
  83.                         'label': 'common.send'|trans|upper,
  84.                         'attr': {
  85.                           'class': 'btn cta-secondary g-recaptcha',
  86.                           'data-sitekey': google_captcha_site_key,
  87.                           'data-callback': 'onRecaptchaSubmit',
  88.                           'data-action': 'submit'
  89.                         }})
  90.                       }}</p>
  91.                 </div>
  92.                 {{ form_end(contactForm) }}
  93.                 <a
  94.                     class="btn cta-primary customer-service-button"
  95.                     href="https://www.echst.net/?utm_source=icftechnology.com&utm_medium=banner&utm_campaign=icf_redirect"
  96.                     target="_blank"
  97.                 >
  98.                     {{ 'common.customer_service_btn'|trans }}
  99.                 </a>
  100.             </div>
  101.         </div>
  102.     </div>
  103. </section>