{% set footerContent = footerContent ? footerContent : 'none' %}
{% set footerImage = footerImage ? footerImage : false %} {# e.g. theme_config('footerStylesLayoutFooterServiceImage') theme_config('footerStylesLayoutFooterBottomImage')#}
{% set footerLocation = footerLocation ? footerLocation : 'general' %} {# e.g. top, bottom #}
{% if footerContent == 'none' %}
<!--empty-->
{# Footer text #}
{% elseif footerContent == 'text' %}
{% block footer_snippet_wrapper %}
<div class="footer-{{ footerLocation }}-content footer-{{ footerLocation }}-{{ footerContent }}">
{% block footer_snippet_content %}
<span>
{{ ("oo.footer"~ footerLocation|capitalize ~".text.text")|trans|striptags }}
</span>
{% endblock %}
</div>
{% endblock %}
{# Footer text #}
{% elseif footerContent starts with 'categories' %}
{% block footer_categories_wrapper %}
<div class="footer-{{ footerLocation }}-content footer-{{ footerLocation }}-{{ footerContent }} d-flex flex-column flex-md-row">
{% block footer_categories_content %}
{% sw_include '@Storefront/storefront/layout/footer/categories-list.html.twig' with { setting: footerContent } %}
{% endblock %}
</div>
{% endblock %}
{# Horizontal USP's #}
{% elseif footerContent == 'usps-horizontal' %}
{% block footer_usps_wrapper_horizontal %}
{% set uspKeys = uspKeys ? uspKeys : ['one', 'two', 'three'] %}
<div class="footer-{{ footerLocation }}-content footer-{{ footerLocation }}-{{ footerContent }}">
ToDo: Fix horizontal view
{% block footer_usps_content_horizontal %}
<ul class="list-inline list-unstyled">
{% for uspKey in uspKeys %}
{% block footer_usp_wrapper_horizontal %}
<li class="usp-item list-inline-item">
{% block footer_usp_content_horizontal %}
{{ ("oo.footer"~ footerLocation|capitalize ~".usps.usp" ~ uspKey|capitalize)|trans|striptags }}
{% endblock %}
</li>
{% endblock %}
{% endfor %}
</ul>
{% endblock %}
</div>
{% endblock %}
{# Vertical USP's #}
{% elseif footerContent == 'usps-vertical' %}
{% block footer_usps_wrapper_vertical %}
{% set uspKeys = uspKeys ? uspKeys : ['one', 'two', 'three'] %}
<div class="footer-{{ footerLocation }}-content footer-{{ footerLocation }}-{{ footerContent }}">
{% block footer_usps_content_vertical_title_wrapper %}
<div class="title {{ theme_config("footerStylesFooter"~ footerLocation|capitalize ~"TitleFont") }}">
{% block footer_usps_content_vertical_title_content %}
{{ "oo.usps.title"|trans|striptags }}
{% endblock %}
</div>
{% endblock %}
{% block footer_usps_content_vertical %}
<ul class="list-group list-unstyled">
{% for uspKey in uspKeys %}
{% set uspText = ("oo.footer"~ footerLocation|capitalize ~".usps.usp" ~ uspKey|capitalize)|trans|striptags %}
{% if uspText|length > 1 %}
{% block footer_usp_wrapper_vertical %}
<li class="usp-item list-group-item pl-0 pr-0 pt-1 pb-1 border-0">
{% block footer_usp_content_vertical %}
{{uspText}}
{% endblock %}
</li>
{% endblock %}
{% endif %}
{% endfor %}
</ul>
{% endblock %}
</div>
{% endblock %}
{# Service image #}
{% elseif footerContent == 'image' %}
{% block base_footer_service_image_wrapper %}
<div class="footer-service-image">
{% block base_footer_service_image_content %}
<img src="{{ theme_config('footerStylesLayoutFooterServiceImage') |sw_encode_url }}"
alt="{{ "oo.customerService.title"|trans|striptags }}"
class="img-fluid footer-top-image-img"
style="max-height:300px;"
/>
{% endblock %}
</div>
{% endblock %}
{# Customerservice #}
{% elseif footerContent == 'customer-service-details' %}
{% block base_footer_service_content_wrapper %}
<div class="footer-service-content">
{% block base_footer_service_content_content %}
<div class="row">
{% block base_footer_service_title_row %}
<div class="col-12">
{% block base_footer_service_title_wrapper %}
<div class="title {{ theme_config("footerStylesFooter"~ footerLocation|capitalize ~"TitleFont") }}">
{% block base_footer_service_title_content %}
{{ "oo.customerService.title"|trans|striptags }}
{% endblock %}
</div>
{% endblock %}
{% block base_footer_service_servicedescription_wrapper %}
<p class="serviceDescription">
{% block base_footer_service_servicedescription_content %}
{{ "oo.customerService.description"|trans }}
{% endblock %}
</p>
{% endblock %}
</div>
{% endblock %}
</div>
<div class="row">
{# footer-service-items #}
{% sw_include '@parent/storefront/layout/footer/footer-service-items.html.twig' %}
</div>
{% endblock %}
</div>
{% endblock %}
{# Newsletter #}
{% elseif footerContent == 'newsletter-form' %}
{% block base_footer_service_newsletter_wrapper %}
<div class="footer-newsletter-form">
{% block base_footer_service_newsletter_content %}
<div class="newsletter-footer-small">
{% block base_footer_newsletter %}
<div class="title {{ theme_config("footerStylesFooter"~ footerLocation|capitalize ~"TitleFont") }}">
{% block base_footer_newsletter_text %}
{{ "oo.newsletterForm.signUpTitle"|trans|striptags }}
{% endblock %}
</div>
<div class="content">
{{ "oo.newsletterForm.signUpText"|trans|striptags }}
{# JS plugin: <plugin_root>/src/Resources/app/storefront/src/plugin/okeonline-newsletter-subscribe/okeonline-newsletter-subscribe.plugin.js #}
{# Listens to submitting form, adds it to database, gives feedback (unsuccesfull via API, succesfull via JS/Twig translaton) on the span element #}
{# subscribeOption should be any of: direct, subscribe, confirmSubscribe, unsubscribe #}
{% set oo_newsletter_subscribe_plugin_options = {
successText: 'oo.newsletterForm.messageSuccess'|trans,
modal: shopware.theme.newsletterFormInFooterModal,
storefrontUrl: app.request.get('sw-sales-channel-absolute-base-url'),
emptyFieldCaption: '(niet ingevuld)',
subscribeOption: 'direct'
} %}
<form data-okeonline-newsletter-subscribe-plugin="true" data-okeonline-newsletter-subscribe-plugin-options='{{ oo_newsletter_subscribe_plugin_options | json_encode }}'>
{% block base_footer_newsletter_message %}
<span role="message" class="d-none"></span>
{% endblock %}
<div class="form-group">
<input type="text" name="email" placeholder="{{ 'oo.newsletterForm.inputPlaceholder'|trans }}" />
{% block base_footer_newsletter_submit %}
<button role="button" aria-label="Subscribe">
{% set icon = theme_config('footerSettingsNewsletterSubmitIcon') %}
{% sw_include "@parent/storefront/utilities/icon.html.twig" ignore missing with { 'name': icon|default('arrow-right') } %}
</button>
{% endblock %}
</div>
</form>
</div>
{% endblock %}
</div>
{% block base_footer_newsletter_modal %}
{% if theme_config('footerSettingsNewsletterFormModal') %}
<div class="modal fade" id="newsletterModal" tabindex="-1" role="dialog" aria-labelledby="exampleModalLabel" aria-hidden="true">
<div class="modal-dialog modal-dialog-centered modal-lg" role="document">
<div class="modal-content">
<div class="modal-body p-0">
<div class="container-fluid">
<div class="row">
<div class="col-lg-6 p-0"><img src="{{ theme_config('footerSettingsNewsletterFormModalImage') |sw_encode_url }}" class="img-fluid" /></div>
<div class="col-lg-6 p-3">
<button type="button" class="close float-right" data-dismiss="modal" aria-label="Close">
<span aria-hidden="true">×</span>
</button>
{# TODO: Designer: Place Close button on <lg-sizes outsize modal #}
{{ "oo.footer.newsletterForm.modalContent"|trans|striptags }}
<span>{{ theme_config('footerSettingsNewsletterFormCoupon') }}</span>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
{% endif %}
{% endblock %}
{% block social_buttons %}
{# 'facebook', 'instagram', 'youtube', 'pinterest', 'tiktok', 'whatsapp', 'linkedin', 'twitter' #}
{% set mediaChannels = mediaChannels ? mediaChannels : [] %}
{% if theme_config('footerSettingsNewsletterMediaFacebook') %}
{% set mediaChannels = mediaChannels|merge([
'facebook'
]) %}
{% endif %}
{% if theme_config('footerSettingsNewsletterMediaInstagram') %}
{% set mediaChannels = mediaChannels|merge([
'instagram'
]) %}
{% endif %}
{% if theme_config('footerSettingsNewsletterMediaYoutube') %}
{% set mediaChannels = mediaChannels|merge([
'youtube'
]) %}
{% endif %}
{% if theme_config('footerSettingsNewsletterMediaPinterest') %}
{% set mediaChannels = mediaChannels|merge([
'pinterest'
]) %}
{% endif %}
{% if theme_config('footerSettingsNewsletterMediaTiktok') %}
{% set mediaChannels = mediaChannels|merge([
'tiktok'
]) %}
{% endif %}
{% if theme_config('footerSettingsNewsletterMediaWhatsapp') %}
{% set mediaChannels = mediaChannels|merge([
'whatsapp'
]) %}
{% endif %}
{% if theme_config('footerSettingsNewsletterMediaLinkedin') %}
{% set mediaChannels = mediaChannels|merge([
'linkedin'
]) %}
{% endif %}
{% if theme_config('footerSettingsNewsletterMediaTwitter') %}
{% set mediaChannels = mediaChannels|merge([
'twitter'
]) %}
{% endif %}
<div class="d-flex flex-row flex-wrap socialButtons">
{% for mediaChannel in mediaChannels %}
{% block social_button %}
<a class="btn btn-primary btn-lg mr-2 mb-2" href="{{ ("oo.newsletterForm.mediaChannel."~ mediaChannel|lower ~".url")|trans|striptags }}">
{% sw_include "@parent/storefront/utilities/icon.html.twig" ignore missing with { 'name': ("oo.newsletterForm.mediaChannel."~ mediaChannel|lower ~".icon")|trans|striptags, class:'fa'} %}
{{ ("oo.newsletterForm.mediaChannel."~ mediaChannel|lower ~".text")|trans({
'%text%': mediaChannel
})|striptags }}
</a>
{% endblock %}
{% endfor %}
</div>
{% endblock %}
{% endblock %}
</div>
{% endblock %}
{# Servicepoint navigation #}
{% elseif footerContent == 'servicepoint-navigation' %}
{% block layout_footer_service_menu_content %}
{% apply spaceless %}
<ul class="footer-service-menu-list list-unstyled">
{% for serviceMenuItem in page.footer.serviceMenu %}
{% block layout_footer_service_menu_item %}
<li class="footer-service-menu-item">
<a class="footer-service-menu-link"
href="{{ category_url(serviceMenuItem) }}"
{% if category_linknewtab(serviceMenuItem) %}target="_blank"{% endif %}
title="{{ serviceMenuItem.translated.name }}">
{{ serviceMenuItem.translated.name }}
</a>
</li>
{% endblock %}
{% endfor %}
</ul>
{% endapply %}
{% endblock %}
{# Payment and shipping logos #}
{% elseif footerContent == 'payment-shipping-logos' %}
<div class="footer-logos">
{% block layout_footer_payment_logos %}
{% for paymentMethod in page.salesChannelPaymentMethods %}
{% block layout_footer_payment_logo %}
{% if paymentMethod.media %}
<div class="footer-logo is-payment">
{% set attributes = {
'class': 'lazyload img-fluid footer-logo-image is-'~displayMode,
'data-sizes': "{
'default': '50px'
}",
'alt': (paymentMethod.media.translated.alt ?: paymentMethod.translated.name),
'title': (paymentMethod.media.translated.title ?: paymentMethod.translated.name)
} %}
{% sw_thumbnails 'footer-payment-image-thumbnails' with {
media: paymentMethod.media,
layout: 'boxed',
sizes: {
'default': '50px'
},
load: false,
loadOriginalImage: true
} %}
</div>
{% endif %}
{% endblock %}
{% endfor %}
{% endblock %}
{% block layout_footer_shipping_logos %}
{% for shippingMethod in page.salesChannelShippingMethods %}
{% block layout_footer_shipping_logo %}
{% if shippingMethod.media %}
<div class="footer-logo is-shipping">
{% sw_thumbnails 'footer-shipping-image-thumbnails' with {
media: shippingMethod.media,
sizes: {
'default': '100px'
},
attributes: {
'class': 'img-fluid footer-logo-image',
'alt': (shippingMethod.media.translated.alt ?: shippingMethod.translated.name),
'title': (shippingMethod.media.translated.title ?: shippingMethod.translated.name)
}
} %}
</div>
{% endif %}
{% endblock %}
{% endfor %}
{% endblock %}
</div>
{% endif %}