templates/Includes/main-title-block-with-contact.html.twig line 1

Open in your IDE?
  1. {% set useContactBoxVariables = not useContactBoxVariables is defined or useContactBoxVariables %}
  2. <div class="title-block--with-contact content-block container container-sm title-block--move-up {{ styleModifier | default(null) }}">
  3.     <div class="row">
  4.         <div class="col-md-6 d-flex align-items-center text-md-right">
  5.             <div class="w-100">
  6.                 {% if title|default('') or subtitle|default('') or badges|default([]) %}
  7.                     <div class="title-block title-block--main title-block--right">
  8.                         {% if badges|default([]) %}
  9.                             <div class="mb-2">
  10.                                 {% for badge in badges %}
  11.                                     <span class="badge badge-primary mb-1">{{badge.title}}</span>
  12.                                 {% endfor %}
  13.                             </div>
  14.                         {% endif %}
  15.                         {% if title|default('') %}
  16.                             <h1 class="title-block__title">{{ title | raw }}</h1>
  17.                         {% endif %}
  18.                         {% if subtitle|default('') %}
  19.                             <h2 class="title-block__sub-title">{{ subtitle }}</h2>
  20.                         {% endif %}
  21.                         {% if wysiwyg | default(null) %}
  22.                             <div class="wysiwyg title-block__wysiwyg">{{ wysiwyg | raw }}</div>
  23.                         {% endif %}
  24.                     </div>
  25.                 {% endif %}
  26.             </div>
  27.         </div>
  28.         <div class="col-md-6">
  29.             <div class="contact-box">
  30.                 {% if contactHasTabs | default(false) %}
  31.                     <nav>
  32.                         <div class="nav nav-tabs nav-tabs--small" id="nav-tab" role="tablist">
  33.                             <a class="nav-link active" id="nav-list-tab" data-toggle="tab" href="#tab-place" role="tab" aria-controls="tab-place" aria-selected="false">
  34.                                 {{ tab2Title|default(false) ? tab2Title|trans : 'contacttab.Gemeinde'|trans }}
  35.                             </a>
  36.                             <a class="nav-link " id="nav-map-tab" data-toggle="tab" href="#tab-region" role="tab" aria-controls="tab-region" aria-selected="true">
  37.                                 {{ tab1Title|default(false) ? tab1Title|trans : 'contacttab.Tourismusregion'|trans }}
  38.                             </a>
  39.                         </div>
  40.                     </nav>
  41.                     <div class="tab-content" role="tabpanel">
  42.                         <div class="tab-pane fade" id="tab-region" aria-labelledby="#tab-region">
  43.                             {% if contactBox |default(null) %}
  44.                             {{ _self.contact(contactBox |default(null), contactBoxAuthor|default(null)) }}
  45.                             {% endif %}
  46.                         </div>
  47.                         <div class="tab-pane fade show active" id="tab-place" aria-labelledby="#tab-place">
  48.                             {{ _self.contact(useContactBoxVariables ? {
  49.                                 useContactBoxVariables: true,
  50.                                 contactName: contactBoxName |default(null),
  51.                                 name: contactBoxFirstname|default('') ~ ' ' ~ contactBoxLastname|default(''),
  52.                                 logo: contactBoxImage |default(null),
  53.                                 street: contactBoxStreet |default(null),
  54.                                 zip: contactBoxZip|default(null),
  55.                                 city: contactBoxCity|default(null),
  56.                                 phone: contactBoxPhone|default(null),
  57.                                 mobilephone: contactMobileBoxPhone|default(null),
  58.                                 fax: contactBoxFax|default(null),
  59.                                 email: contactBoxEmail|default(null),
  60.                                 website: contactBoxWebsite|default(null),
  61.                                 isYoungStyria: isYoungStyria|default(false)
  62.                             } : null, contactBoxAuthor|default(null)) }}
  63.                         </div>
  64.                     </div>
  65.                 {% else %}
  66.                     {{ _self.contact(contactBox|default(null) ? contactBox : useContactBoxVariables ? {
  67.                         contactName: contactBoxName |default(null),
  68.                         name: contactBoxFirstname|default('') ~ ' ' ~ contactBoxLastname|default(''),
  69.                         logo: contactBoxImage |default(null),
  70.                         street: contactBoxStreet |default(null),
  71.                         zip: contactBoxZip|default(null),
  72.                         city: contactBoxCity |default(null),
  73.                         phone: contactBoxPhone |default(null),
  74.                         mobilephone: contactMobileBoxPhone|default(null),
  75.                         fax: contactBoxFax |default(null),
  76.                         email: contactBoxEmail |default(null),
  77.                         website: contactBoxWebsite |default(null),
  78.                         isYoungStyria: isYoungStyria|default(false)
  79.                     } : null, contactBoxAuthor|default(null) ) }}
  80.                 {% endif %}
  81.             </div>
  82.             {% if link1|default('') is not empty or link2|default('') is not empty or link3|default('') is not empty %}
  83.                 <div class="contact-box-external-links">
  84.                     <div class="row">
  85.                         <div class="col-1">
  86.                             <span class="contact-box__link-icon icon icon-link-external" aria-label="Website" title="Website"></span>
  87.                         </div>
  88.                         <div class="col">
  89.                             {{ 'presseDetail.externeLinks'|trans }}
  90.                             <ul class="p-0 mt-1">
  91.                                 {% if link1|default('') %}
  92.                                     <li class="contact-box__link contact-box__link--external">{{ link1|raw }}</li>
  93.                                 {% endif %}
  94.                                 {% if link2|default('') %}
  95.                                     <li class="contact-box__link contact-box__link--external">{{ link2|raw }}</li>
  96.                                 {% endif %}
  97.                                 {% if link3|default('') %}
  98.                                     <li class="contact-box__link contact-box__link--external">{{ link3|raw }}</li>
  99.                                 {% endif %}
  100.                             </ul>
  101.                         </div>
  102.                     </div>
  103.                 </div>
  104.             {% endif %}
  105.         </div>
  106.     </div>
  107. </div>
  108. {% macro contact(contactBox, contactBoxAuthor) %}
  109.     {% if contactBox|default(null) %}
  110.         {% if not contactBox is instanceof('Pimcore\\Model\\DataObject\\Contact') and contactBox.isYoungStyria|default(false) %}
  111.             <img class="young-styria__logo" src="/static/img/young-styria/young-styria.jpg">
  112.         {% endif %}
  113.         {% if contactBox.logo|default(null) %}
  114.             {% set image = contactBox.logo|default(null) %}
  115.             {{ image ? image.getThumbnail('contact-box-logo').getHTML({
  116.                 imgAttributes: {
  117.                     class: 'js-lazy-img img-fluid contact-box__logo'
  118.                 },
  119.                 lowQualityPlaceholder: true
  120.             }) | raw : ''}}
  121.         {% endif %}
  122.         {% if contactBox.contactName|default(false) %}
  123.             <h2 class="contact-box__title">
  124.                 {{ contactBox.contactName }}
  125.             </h2>
  126.         {% endif %}
  127.         {% if contactBox.name|default('') %}
  128.             {{ contactBox.name|default('') }}<br>
  129.         {% endif %}
  130.         {% if contactBox.firstname|default('') %}
  131.             {{ contactBox.firstname|default('') }}<br>
  132.         {% endif %}
  133.         {% if contactBox.lastname|default('') %}
  134.             {{ contactBox.lastname|default('') }}<br>
  135.         {% endif %}
  136.         <address class="contact-box__address">
  137.                 {{ (contactBox.street ~ "<br>\n" ~ contactBox.zip ~ ' ' ~ contactBox.city) |raw }}
  138.         </address>
  139.         {% if contactBox.phone|default(null)  %}
  140.             {% set phone = contactBox.phone|default(null) %}
  141.             <a href="tel:{{ phone }}" class="contact-box__link">
  142.                 <span class="contact-box__link-icon icon icon-phone" aria-label="phone" title="phone"></span>
  143.                 {{ phone }}
  144.             </a>
  145.         {% endif %}
  146.         {% if contactBox.mobilephone|default(null)  %}
  147.             {% set mobilephone = contactBox.mobilephone|default(null) %}
  148.             <a href="tel:{{ mobilephone }}" class="contact-box__link">
  149.                 <span class="contact-box__link-icon icon icon-phone" aria-label="phone" title="phone"></span>
  150.                 {{ mobilephone }}
  151.             </a>
  152.         {% endif %}
  153.         {% if contactBox.fax|default(null)  %}
  154.             {% set fax =  contactBox.fax|default(null) %}
  155.             <a href="fax:{{fax }}" class="contact-box__link">
  156.                 <span class="contact-box__link-icon icon icon-fax" aria-label="fax" title="fax"></span>
  157.                 {{ fax }}
  158.             </a>
  159.         {% endif %}
  160.         {% if contactBox.email|default(null) %}
  161.             {% set email = contactBox.email|default(null) %}
  162.             <a href="mailto:{{ email }}" class="contact-box__link">
  163.                 <span class="contact-box__link-icon icon icon-mail" aria-label="E-Mail Address" title="E-Mail Address"></span>
  164.                 {{ 'contact.E-Mail senden'|trans }}
  165.             </a>
  166.         {% endif %}
  167.         {% if contactBox.website|default(null) %}
  168.             {% set website = contactBox.website|default(null) %}
  169.             {% set website = (website starts with 'www.') ? ('https://' ~ website) : website %}
  170.             <a href="{{ website }}" class="contact-box__link" target="_blank">
  171.                 <span class="contact-box__link-icon icon icon-link-external" aria-label="Website" title="Website"></span>
  172.                 {{ 'contact.Website'|trans }}
  173.             </a>
  174.         {% endif %}
  175. {#                            use array syntax for contactBox author instead of method syntax, because methode syntax return false positives#}
  176.         {% if contactBoxAuthor|default(null) %}
  177.             <div class="mt-4 row">
  178.                 <div class="col-1">
  179.                     <span class="icon-pen icon contact-box__link-icon" aria-hidden="true"></span>
  180.                 </div>
  181.                 <div class="col">
  182.                     {{ 'contact.Verfasst von'|trans }}: <br>
  183.                     {{ contactBoxAuthor }}
  184.                 </div>
  185.             </div>
  186.         {% endif %}
  187.     {% endif %}
  188. {% endmacro %}