{% compress %}
<!DOCTYPE html>
<html id="html-ai8Y8J31" lang="{{ userLocale() }}"
data-locale="{{ te.request.get('_locale') }}"
data-ga="{{ userGA() }}"
data-debug="{{ te.request.get('d') or app.debug ? 1 : 0 }}"
data-currency="{{ userCurrency() }}"
data-measure="{{ userMeasure() }}"
data-env="TE"
data-logged="{{ isLogged() ? 1 : 0 }}"
{#data-initial-unread-count="{{ getUnreadCount() }}"#}
data-jwt="{{ getJwt() }}"
data-user_channel="{{ getUserChannel() }}"
data-centrifugo_connection_url="{{ centrifugoConnectionUrl }}"
data-token="{{ token }}"
data-cons-online-attribute-url="{{ url('get_cons_online_attribute') }}"
data-tokenCF="{{ csrf_token(token ~ (date('now') | date('Y-m-d H'))) }}"
data-auth-info="{{ app.session.remove('successAuth') }}"
>
<head>
{% if not te.checkIsDev and googleRemarketing is defined and googleRemarketing %}
<script>
window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}
gtag('consent', 'default', {
'ad_storage': 'denied',
'analytics_storage': 'denied',
'ad_user_data': 'denied',
'ad_personalization': 'denied'
});
setTimeout(function() {
gtag('consent', 'update', {
'ad_storage': 'granted',
'analytics_storage': 'granted',
'ad_user_data': 'granted',
'ad_personalization': 'granted'
});
}, 2000);
</script>
<!-- Google Tag Manager -->
<script>(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=
'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
})(window,document,'script','dataLayer','GTM-WCNQMZ8');</script>
<!-- End Google Tag Manager -->
{% block extraGoogleTagScript %}{% endblock %}
{% else %}
<meta name="checkIsDev" content="{{ te.checkIsDev }}" />
<meta name="googleRemarketing" content="{{ googleRemarketing is defined ? googleRemarketing : '-' }}" />
{% endif %}
{% block beforeTGM %}{% endblock %}
{% set curRoute = '' %}
{% if te.request.get('_route') is defined and te.request.get('_route') %}
{% set curRoute = te.request.get('_route') %}
{% endif %}
{% set isCollectionPageOrSlideShow = curRoute in ['app_collection', 'app_collection_slideshow', 'app_collection_slideshow_f'] %}
{% include '@Web/base-meta-header.html.twig' %}
{# CSFR токен для проверки AJAX запросов #}
<meta content="authenticity_token" name="csrf-param" />
<meta content="{{ csrf_token }}" name="csrf-token" />
{# мета-тег, запрещающий устройствам работающим на iOS (iPhone / IPod / IPad) и Android делать из номеров ссылки #}
<meta name="format-detection" content="telephone=no" />
{% block meta %}
{% endblock %}
{# оптимизация дублей страниц для поисковиков #}
{% set baseLinkRel = te.request.getSchemeAndHttpHost() %}
{% if curRoute != '' %}
{% set routeLinkRel = path(curRoute, te.request.get('_route_params')) %}
{# @TODO: уточнить, т.к. routeLinkRel используется и для Google Analytics (@Web/google.html.twig), и в строке 23 #}
{# после перехода на гугл таг, routeLinkRel - не будет использоваться ! #}
{% set routeLinkRel = routeLinkRel | split('/') | slice(2) | join('/') %}
{% else %}
{% set routeLinkRel = '#' %}
{% endif %}
{% if te.request.get('v') != null %}
<meta name="robots" content="noindex, nofollow" />
{% endif %}
{#% if te.request.get('gclid') != null %}
больше не используем, потому что негативно влияет на языковое распределение
<link rel="canonical" href="{{ baseLinkRel ~ routeLinkRel }}" />
{% endif %#}
{% if not(noSEOLink is defined) and curRoute != '' and userCountry() != 'ru' %}
{# Важный блок для гугл #}
{% if curRoute != '' and te.request.get('_route_params') is defined %}
{{ te.SEOLink(curRoute, te.request.get('_route_params'), (hrefFlag is defined ? hrefFlag : null)) | raw }}
{% endif %}
{% endif %}
{#{% block canonical %}#}
{#{{ te.getCanonicalTR() | raw }}#}
{#{% endblock %}#}
<meta name="msvalidate.01" content="465EFDDEC49D260187BF1FAF4F2FEB88" />
<meta name="timestamp" content="{{ timestamp() }}" />
<title>
{% block title %}{% endblock %}
</title>
{% block stylesheets %}
{#<link href="https://fonts.googleapis.com/css?family=Lato:300,300i,400,400i,700,700i" rel="stylesheet" />#}
{# возможность подключения стилей только для планшетов или для мобильных #}
{# чем подключать отдельный файл и замедлять скорость загрузки, лучше вывести такие стили инлайново, т.к. их немного #}
{% if is_tablet() %}
{#<link rel="stylesheet" href="{{ asset('_css/tablet.min.css') }}" />#}
<style>
.innerBoxInformer,.share-icons:hover .share-body,.swiper-container .collection-video {display: none;}
.share-icons .share-body.shown,.swiper-container .carousel-video-item {display: block;}
{# увеличение области тапа в ссылке на "collection also viewed" #}
.view-with-collection .collection-viewed-with-header .total-count-viewed-with {padding: 5px;}
</style>
{% elseif is_mobile() %}
{#<link rel="stylesheet" href="{{ asset('_css/mobile.min.css') }}" />#}
<style>
.innerBoxInformer,.share-icons:hover .share-body {display: none;}
.share-icons .share-body.shown,.swiper-container .carousel-video-item {display: block;}
@media screen and (max-height: 400px) {
{# убираем блок, который необходим для предотвращения пробивки списка на десктопах при выборе языка или страны #}
.login-locale-block .tab-block.wrap-change-location.active .pseudo-height {height: 0px;}
}
{# для мобильных, чтобы не было авто-зуминга при тапе на любом инпуте #}
input,input:focus {font-size: 16px;}
{# увеличение области тапа в ссылке на "collection also viewed" #}
.view-with-collection .collection-viewed-with-header .total-count-viewed-with {padding: 5px;}
</style>
{% endif %}
{% endblock %}
{% include '@Web/facebookPixelCode.html.twig' %}
</head>
{% set bodyClass = '' %}
{% if curRoute == 'app_collection' %}
{% set bodyClass = ' collection-active' %}
{% endif %}
{% if curRoute in ['app_collection_slideshow', 'app_collection_slideshow_f'] and is_mobile() and not is_tablet() %}
{% set bodyClass = bodyClass ~ ' slider-active' %}
{% endif %}
<body id="body" class="clearfix{{ bodyClass }}">
{% if googleRemarketing is defined and googleRemarketing %}
<!-- Google Tag Manager (noscript) -->
<noscript><iframe src="https://www.googletagmanager.com/ns.html?id=GTM-WCNQMZ8"
height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript>
<!-- End Google Tag Manager (noscript) -->
{% endif %}
<div class="data-confirm"
data-confirm-yes="{{ 'yes' | trans }}"
data-confirm-no="{{ 'no' | trans }}"
data-confirm-ok="{{ 'order.ok' | trans }}"
data-confirm-header="{{ 'buyOrder.confirm.header' | trans }}"></div>
<div class="data-confirm-sample"
{#$message, $count, array $arguments = array(), $domain = null, $locale = null#}
data-confirm-sample-title="{{ 'order.sample_is_true' | trans }}" {# заголовок в сообщении #}
{# data-confirm-yes="{{ 'order.sample_is_true_yes' | trans }}"
data-confirm-no="{{ 'order.sample_is_true_no' | trans }}" #}
data-confirm-sample-text="" {# текст уведомления #}
></div>
<div class="data-toastmessage"
data-header-warning="{{ 'buyOrder.confirm.header' | trans }}"
data-header-error="{{ 'error' | trans }}"
data-header-success="{{ 'success' | trans }}"
></div>
<div class="swipe-area-menu-open"></div>
{# оверлей, который появляется после вызова коллапс-меню на мобильных устройствах #}
<div class="overlay-bg"></div>
<div class="lining"></div>
{# вспомогательный блок, на который вешается свойство z-index в зависимости от ширины
экрана - необходимо для скрипта, отображающего блок boxInformer #}
<div class="set-z-index"></div>
{# если установлен атрибут data-smartphone, значит просмотр осуществляется со смартфона, #}
{# если установлен атрибут data-mobile, значит просмотр осуществляется с планшета #}
<div class="wrap-content js-wrap-content"
{% if te.checkIsDev %} data-dev="true" {% endif %}
{% if is_mobile() and not is_tablet() %}
data-smartphone="true"
{% elseif is_mobile() %}
data-mobile="true"
{% endif %}
>
{{ render_esi(controller('WebBundle\\Controller\\CommonController::topAction')) }}
{# вывел меню фильтров в отдельный блок, подключение JS тоже пришлось, чтобы не было лишних файлов #}
{% set isExhibition = blog is defined and blog.isExhibition %} {# не рендерить быстрые фильтры для выставок #}
{% block filter_menu %}
{{ te.buildLeftMenuLite(not isExhibition) | raw }}
{% endblock filter_menu %}
{# wrap-exhibition добавляется в блогах с выставками #}
<div class="wrap {% if isExhibition %}wrap-exhibition{% endif %}">
<div class="container-fluid">
<div class="row">
<div class="col-sm-12">
{# main-for-catalog - чтобы изменить отступ для мобилки, main - создает много пустого пространства #}
<div id="main" class="main fixed-width clearfix {{ curRoute == 'app_catalog' ? 'main-for-catalog' }}">
{% for label, messages in app.flashes %}
{% for message in messages %}
<div class="flash-{{ label }}">
{% include '@Web/Common/notifications.html.twig' with { 'notificationType': label, 'notificationText': message } %}
</div>
{% endfor %}
{% endfor %}
{% block content %}
<div id="RightContent"></div>
{% endblock content %}
</div>
</div>
</div>
</div>
</div>
<div class="both"></div>
</div>
{% if (
curRoute != 'discuss' and
curRoute != 'app_chatb_chatbpage' and
(noFloor is defined == false or noFloor == false)
) %}
{{ include('@Web/Common/footer.html.twig') }}
{% else %}
<footer id="footer"> </footer>
{% endif %}
{{ include('@Web/base-js.html.twig') }}
{% block javascripts %}{% endblock %}
{% if userCountry() == 'ru' and te.checkIsDev == false %}
<script src="//cdn.callibri.ru/callibri.js" type="text/javascript" charset="utf-8"></script>
{% endif %}
{# displaying the top filter menu during scroll up #}
{# <script>
var prevScrollpos = window.pageYOffset;
window.onscroll = function() {
var currentScrollPos = window.pageYOffset;
if (prevScrollpos > currentScrollPos) {
document.getElementById('top-filter-menu').style.top = '0';
} else {
document.getElementById('top-filter-menu').style.top = '-50px';
}
prevScrollpos = currentScrollPos;
}
</script> #}
{% if useRTWidget() and app.request.attributes.get('_route') != 'app_chatb_chatbpage' %}
{# {% set lang = getCurLocale(false) %}#}
{# {% set country = userCountry() %}#}
<script src="https://rtc.remote.team/scripts.js?port-num=3001&chat-id=170619828665B2850E08B2F170619828&client-id={{ token }}&custom-trigger-id=chat-widget-btn&portal-subdomain=te"></script>
{% endif %}
</body>
</html>
{% endcompress %}