<!doctype html>
<html lang="{{ app.request.locale }}">
<head>
<meta charset="UTF-8">
<meta name="viewport"
content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
{% set companyObj = app.request.get('companyInner') %}
{% set isMobile = isMobile(companyObj) %}
{% set companyStyles = companyStyles(app.request.get('companyInner')) %}
{% if companyStyles.favicon is defined and companyStyles.favicon is not empty %}
<link rel="icon" type="{{ companyStyles.favicon.contentType }}" href="{{ sonata_path(companyStyles.favicon, 'reference') }}">
{% else %}
<link rel="icon" type="image/png" href="{{ app.request.getSchemeAndHttpHost() }}/build/images/favicon-96x96.png">
{% endif %}
{% if page is defined and page is not empty %}
{% set metaInfo = getMeta(page) %}
{% endif %}
{% if metaInfo is defined and metaInfo is not empty %}
{% block meta %}
{% include '/components/meta/meta.twig' %}
{% endblock %}
{% else %}
<title>{% block pageTitle %}Index Page{% endblock %}</title>
{% endif %}
{% set companyObj = app.request.get('companyInner') %}
{% if companyObj.slug is defined and companyObj.slug == 'e-sim' %}
<!-- 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-MKLD3JHN');</script>
<!-- End Google Tag Manager -->
{% endif %}
{% if companyObj.slug is defined and companyObj.slug == 'pl' %}
<!-- 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-56R88XPR');</script>
<!-- End Google Tag Manager -->
{% endif %}
{% if companyObj.slug is defined and companyObj.slug == 'cz' %}
<!-- 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-N5JBGRSW');</script>
<!-- End Google Tag Manager -->
{% endif %}
{% if companyObj.slug is defined and companyObj.slug == 'buy' %}
<!-- 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-M4P5JKNJ');</script>
<!-- End Google Tag Manager -->
{% endif %}
{% block stylesheets %}
{{ encore_entry_link_tags('app') }}
{% endblock %}
{% set referer = getReferer(app.request) %}
{# {{dump(referer)}} #}
{# {{ sonata_media(companyStyles.mainImage, 'reference') }} #}
{# <input type="hidden" name="_token" value="{{ csrf_token('registration') }}"> #}
{# <input type="hidden" name="_token" value="{{ csrf_token('email-verification') }}"> #}
{# <input type="hidden" name="_token" value="{{ csrf_token('code-resend') }}"> #}
{# <input type="hidden" name="_token" value="{{ csrf_token('password-reset') }}"> #}
{# <script src="https://www.google.com/recaptcha/api.js?render={{ recaptcha_key }}"></script> #}
{% if companyStyles.fonts is defined and companyStyles.fonts is not empty %}
{{ companyStyles.fonts|raw }}
{% endif %}
{% if companyStyles.fontFamily is defined and companyStyles.fontFamily is not empty %}
<style>
* {
font-family: {{ companyStyles.fontFamily|raw }};
}
</style>
{% endif %}
{% if not isMobile %}
<style>
/* width */
::-webkit-scrollbar {
width: 4px;
padding-left: 18px;
}
/* Track */
::-webkit-scrollbar-track {
box-shadow: inset 0 0 5px grey;
border-radius: 500px;
margin-right: 10px;
}
/* Handle */
::-webkit-scrollbar-thumb {
background: {{ companyStyles.buttonColor }};
border-radius: 500px;
}
/* Handle on hover */
::-webkit-scrollbar-thumb:hover {
background: {{ companyStyles.buttonColor }};
}
.stepper-wrapper {
margin-top: 50px;
display: flex;
justify-content: space-between;
margin-bottom: 20px;
gap: 5px;
}
.stepper-item {
position: relative;
display: flex;
flex-direction: column;
align-items: center;
flex: 1;
text-align: center;
@media (max-width: 500px) {
font-size: 10px;
}
@media (min-width: 501px) and (max-width: 768px) {
font-size: 12px;
}
}
.stepper-item::before {
position: absolute;
content: "";
border-bottom: 2px solid #F7F7FA;
width: 100%;
top: 20px;
left: -50%;
z-index: 2;
@media (max-width: 768px) {
top: 15px;
}
}
.stepper-item::after {
position: absolute;
content: "";
border-bottom: 2px solid #F7F7FA;
width: 100%;
top: 20px;
left: 50%;
z-index: 2;
@media (max-width: 768px) {
top: 15px;
}
}
.stepper-item .step-counter {
position: relative;
z-index: 5;
display: flex;
justify-content: center;
align-items: center;
width: 40px;
height: 40px;
border-radius: 50%;
background: #F7F7FA;
margin-bottom: 6px;
border: 2px solid #E2E2E9;
@media (max-width: 768px) {
width: 30px;
height: 30px;
}
}
.stepper-item.active {
font-weight: 500;
}
.stepper-item.active .step-counter {
background-color: {{ companyStyles.buttonColor }};
color: white;
border-color: {{ companyStyles.buttonColor }};
}
.stepper-item.active .step-name {
color: {{ companyStyles.buttonColor }};
}
.stepper-item.completed .step-counter {
background-color: {{ companyStyles.buttonColor }};
border-color: {{ companyStyles.buttonColor }};
}
.stepper-item.completed::after {
position: absolute;
content: "";
border-bottom: 2px solid{{ companyStyles.buttonColor }};
width: 100%;
top: 20px;
left: 50%;
z-index: 3;
}
.stepper-item:first-child::before {
content: none;
}
.stepper-item:last-child::after {
content: none;
}
.rating {
display: inline-flex;
flex-direction: row; /* Естественный порядок слева направо */
font-size: 24px;
line-height: 1;
}
.rating input {
display: none; /* Скрываем радиокнопки */
}
.rating label {
cursor: default;
color: #ccc; /* Цвет пустой звезды */
padding: 0 2px;
}
/* Подсветка звезд в зависимости от data-rating */
.rating[data-rating="1"] label:nth-of-type(-n+1),
.rating[data-rating="2"] label:nth-of-type(-n+2),
.rating[data-rating="3"] label:nth-of-type(-n+3),
.rating[data-rating="4"] label:nth-of-type(-n+4),
.rating[data-rating="5"] label:nth-of-type(-n+5) {
color: {{ companyStyles.buttonColor }}; /* Цвет заполненной звезды */
}
/* Убираем интерактивность */
.rating label:hover,
.rating label:hover ~ label {
color: #ccc; /* Отключаем hover-эффект */
}
.splide__pagination {
bottom: -24px;
gap: 4px;
}
.splide__pagination__page.is-active {
background-color: {{ companyStyles.buttonColor }};
opacity: 1;
width: 48px;
border-radius: 500px;
transform: none;
}
.splide__pagination__page {
background-color: #F7F7FA;
background: #F7F7FA;
opacity: 1;
width: 16px;
height: 8px;
border-radius: 500px;
}
.banner {
@media (max-width: 768px) {
background-image: none !important;
}
}
</style>
{% endif %}
{% block additional_stylesheets %}
{% endblock %}
{% if companyStyles.linkTextColor is defined %}
<style>
.prose :where(ul > li):not(:where([class~="not-prose"],[class~="not-prose"] *))::marker {
color: {{ companyStyles.linkTextColor }};
}
.prose :where(a):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
color: {{ companyStyles.linkTextColor }};
}
</style>
{% endif %}
</head>
<body style="{% if isMobile %}{{ inlineStyles(app.request.get('companyInner'), constant('App\\Constants\\SettingConstants::BODY_STYLES')) }}{% else %}#FFF{% endif %}"
{% if recaptcha_enabled %}data-recaptcha_key="{{ recaptcha_key }}"{% endif %}>
{% if companyObj.slug is defined and companyObj.slug == 'e-sim' %}
<!-- Google Tag Manager (noscript) -->
<noscript>
<iframe src="https://www.googletagmanager.com/ns.html?id=GTM-MKLD3JHN"
height="0" width="0" style="display:none;visibility:hidden">
</iframe>
</noscript>
<!-- End Google Tag Manager (noscript) -->
{% endif %}
{% if companyObj.slug is defined and companyObj.slug == 'pl' %}
<!-- Google Tag Manager (noscript) -->
<noscript>
<iframe src="https://www.googletagmanager.com/ns.html?id=GTM-56R88XPR"
height="0" width="0" style="display:none;visibility:hidden"></iframe>
</noscript>
<!-- End Google Tag Manager (noscript) -->
{% endif %}
{% if companyObj.slug is defined and companyObj.slug == 'cz' %}
<!-- Google Tag Manager (noscript) -->
<noscript>
<iframe src="https://www.googletagmanager.com/ns.html?id=GTM-N5JBGRSW"
height="0" width="0" style="display:none;visibility:hidden"></iframe>
</noscript>
<!-- End Google Tag Manager (noscript) -->
{% endif %}
{% if companyObj.slug is defined and companyObj.slug == 'buy' %}
<!-- Google Tag Manager (noscript) -->
<noscript>
<iframe src="https://www.googletagmanager.com/ns.html?id=GTM-M4P5JKNJ"
height="0" width="0" style="display:none;visibility:hidden"></iframe>
</noscript>
<!-- End Google Tag Manager (noscript) -->
{% endif %}
{% if page is defined and page is not empty %}
{% if operator is defined %}
{% set faqOperator = operator %}
{% else %}
{% set faqOperator = null %}
{% endif %}
{% set faqs = getFaq(app.request.get('companyInner'), page, faqOperator) %}
{% include '@App/shared/ui/modal/modalFaqs.html.twig' with {
faqItems: faqs
} %}
{% endif %}
<!-- break-words -->
{# #todo стилизовать и может по другому хотите выводить #}
{% for message in app.flashes('error') %}
<div class="p-4 mb-4 text-sm text-red-800 rounded-lg bg-red-50" role="alert">
<span class="font-medium">{{ message }}</span>
</div>
{% endfor %}
{% block content %}
{% endblock %}
{% include '@App/shared/ui/loader/loader.html.twig' %}
<div class="modal-window__backdrop hidden fixed top-0 left-0 w-full h-full bg-black opacity-60 z-[6]"
id="modal-backdrop"></div>
{% block footer %}
{% if not isMobile and (companyObj.footerVisible is not defined or companyObj.footerVisible) %}
{% include '@App/shared/ui/footer/footer.html.twig' %}
{% endif %}
{% endblock %}
{% block javascripts %}
{{ encore_entry_script_tags('app') }}
{% endblock %}
<!--Start of Tawk.to Script-->
<script type="text/javascript">
var Tawk_API = Tawk_API || {}, Tawk_LoadStart = new Date();
(function () {
var s1 = document.createElement("script"), s0 = document.getElementsByTagName("script")[0];
s1.async = true;
s1.src = 'https://embed.tawk.to/65c0de458d261e1b5f5c87ac/1hlsm8gm2';
s1.charset = 'UTF-8';
s1.setAttribute('crossorigin', '*');
s0.parentNode.insertBefore(s1, s0);
})();
</script>
<!--End of Tawk.to Script-->
{% if companyObj is not empty and companyObj.customScripts is not empty %}
{{ companyObj.customScripts | raw }}
{% endif %}
</body>
</html>