137 lines
6.7 KiB
Twig
137 lines
6.7 KiB
Twig
<!DOCTYPE html>
|
|
<html lang="{{ locale }}">
|
|
<head>
|
|
<meta charset="UTF-8">
|
|
{# {% if app.environment == 'dev' or#}
|
|
{# route|start_with('sandbox')#}
|
|
{# or route|start_with('security_')#}
|
|
{# or route|start_with('bo_') %}#}
|
|
<meta name="robots" content="noindex, nofollow">
|
|
<meta name="googlebot" content="noindex, nofollow">
|
|
{# {% endif %}#}
|
|
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0">
|
|
|
|
<title>{{ title is defined ? title : 'Genshin Impact interactive map - Genshin World' }}</title>
|
|
{% block meta %}{% endblock %}
|
|
|
|
<link rel="icon" href="https://genshin-world.com/favicon.ico" type="image/x-icon">
|
|
{{ encore_entry_link_tags('app') }}
|
|
|
|
{% for script in encore_entry_js_files('app') %}
|
|
<script src="{{ script }}" type="text/javascript" defer></script>
|
|
{% endfor %}
|
|
|
|
{% if app.environment == 'prod'
|
|
and not route|start_with('security_')
|
|
and not route|start_with('bo_') %}
|
|
<script async src="https://www.googletagmanager.com/gtag/js?id=G-TN3HMR3G0K"></script>
|
|
<script>
|
|
window.dataLayer = window.dataLayer || [];
|
|
function gtag(){dataLayer.push(arguments);}
|
|
gtag('js', new Date());
|
|
|
|
gtag('config', 'G-TN3HMR3G0K');
|
|
</script>
|
|
<!--suppress ES6ConvertVarToLetConst -->
|
|
<script>
|
|
var _paq = window._paq = window._paq || [];
|
|
_paq.push(['trackPageView']);
|
|
_paq.push(['enableLinkTracking']);
|
|
_paq.push(['enableHeartBeatTimer', 60]);
|
|
(function() {
|
|
var u = "//matomo.sphere.gdn/";
|
|
_paq.push(['setTrackerUrl', u+'matomo.php']);
|
|
_paq.push(['setSiteId', '1']);
|
|
var d = document, g = d.createElement("script"), s = d.getElementsByTagName("script")[0];
|
|
g.async=true; g.src=u+'matomo.js'; s.parentNode.insertBefore(g,s);
|
|
})();
|
|
</script>
|
|
{% endif %}
|
|
</head>
|
|
<body>
|
|
{% if is_granted('ROLE_CONTRIBUTOR') %}
|
|
<canvas id="transform-canvas" height="720" width="1280"></canvas>
|
|
{% endif %}
|
|
<div id="page-background"></div>
|
|
<div id="page-container" class="{% if isTouchDevice.isMobile or isTouchDevice.isTablet %}sp_app__is-touch-device{% endif %}" data-device="{{ isTouchDevice.isMobile ? 'mobile' : (isTouchDevice.isTablet ? 'tablet' : 'desktop') }}">
|
|
<header id="header-container">
|
|
{% if isTouchDevice.isMobile or isTouchDevice.isTablet %}
|
|
<div id="nav-menu-btn" class="sp_menu-btn">
|
|
<div class="sp_menu-btn__bars"></div>
|
|
</div>
|
|
{% endif %}
|
|
{% include '_menu.html.twig' %}
|
|
{% if user %}
|
|
<div class="sp_header__extra">
|
|
{% if is_granted('ROLE_CONTRIBUTOR') %}
|
|
<a class="sp_icon__container" href="{{ path('bo_dashboard') }}" title="dashboard">
|
|
<img src="{{ asset(assets.img.ui~'settings.png') }}" alt>
|
|
</a>
|
|
{% endif %}
|
|
<a class="sp_icon__container" href="{{ path('security_logout') }}" title="logout">
|
|
<img src="{{ asset(assets.img.ui~'logout.png') }}" alt>
|
|
</a>
|
|
</div>
|
|
{% endif %}
|
|
</header>
|
|
<main id="main-container">
|
|
<section id="modal-container">
|
|
<div class="sp_modal__background"></div>
|
|
<div class="sp_modal__container"></div>
|
|
</section>
|
|
<div id="blob-loader">
|
|
<div class="sp_loader__wrapper">
|
|
<div class="sp_slime__wrapper">
|
|
<div class="sp_slime__outline"></div>
|
|
<div class="sp_slime__outline_ends">
|
|
<div class="sp_slime__outline_end"></div>
|
|
<div class="sp_slime__outline_end"></div>
|
|
</div>
|
|
<div class="sp_slime__eyes">
|
|
<div class="sp_slime__eye"></div>
|
|
<div class="sp_slime__eye"></div>
|
|
</div>
|
|
</div>
|
|
<div class="sp_ground_line__wrapper">
|
|
<div class="sp_ground_line"></div>
|
|
<div class="sp_ground_line__ends">
|
|
<div class="sp_ground_line__end"></div>
|
|
<div class="sp_ground_line__end"></div>
|
|
</div>
|
|
</div>
|
|
<div class="sp_element__wrapper">
|
|
<div class="sp_elements">
|
|
{% set elements = ['anemo', 'cryo', 'dendro', 'electro', 'geo', 'hydro', 'pyro']|shuffle_array %}
|
|
|
|
{% for idx in 1..2 %}
|
|
{% for _element in elements %}
|
|
<div class="sp_element">
|
|
<div class="sp_element__icon">
|
|
<img src="{{ asset(assets.img.ui ~ 'element_'~ _element ~'.png') }}" alt="{{ _element }}">
|
|
</div>
|
|
</div>
|
|
{% endfor %}
|
|
{% endfor %}
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="sp_loader__text">
|
|
<div class="sp_loader__warn-text"></div>
|
|
</div>
|
|
</div>
|
|
<div id="toasts-container"></div>
|
|
<div id="main-left-container" class="sp_panel__container">
|
|
{% block leftPanel %}{% endblock %}
|
|
</div>
|
|
<div id="main-center-container" class="{% if region is defined %}{{ 'sp_region__background-' ~ region.mapBackground }}{% endif %}">
|
|
{% block body %}{% endblock %}
|
|
</div>
|
|
<div id="main-right-container" class="sp_panel__container">
|
|
{% block rightPanel %}{% endblock %}
|
|
</div>
|
|
</main>
|
|
<footer id="footer-container"></footer>
|
|
</div>
|
|
</body>
|
|
</html>
|