{# @AppBundle/views/Default/layout.html.twig #}
{% extends '::base.html.twig' %}
{% block stylesheets %}
{{ parent() }}
{% endblock %}
{% block classTheme %}
{{ app.user.themeColor }}-theme
{% endblock %}
{% block body %}
<div class="content-holder">
<div class="sidebar stars-box">
{% block sidebar %}
{%- embed 'AppBundle:Student:Components/_sidebar.html.twig' -%}{%- endembed -%}
{% endblock %}
</div>
{% if show_info_about_debt() %}
<div class="info-about-debt" id="debt-notice">
<a class="close-btn" onclick="dismissNotice()">×</a>
{{- 'app.info_about_debt'|trans({}, 'app') -}}
</div>
{% endif %}
<div class="breadcrumbs">
{% if breadcrumbs is defined and breadcrumbs is not empty %}
{% block breadcrumb %}{{ app_breadcrumbs(breadcrumbs) }}{% endblock breadcrumb %}
{% endif %}
</div>
<div class="content-wrap">
{%- embed 'AppBundle:Student:Components/_flash_notice.html.twig' -%}{%- endembed -%}
<div class="modal app-modal-send-message mt-3" data-url={{ path('ms_app_send_message') }}></div>
{% block content %}
{% endblock %}
</div>
</div>
{% endblock %}
{%- block javascripts -%}
{{ parent() }}
<script type="text/javascript" src="{{ asset('/bundles/app/js/animation.js?344523') }}"></script>
<script>
if (sessionStorage.getItem('debtNoticeDismissed')) {
document.getElementById('debt-notice').style.display = 'none';
}
function dismissNotice() {
// Hide the notice
document.getElementById('debt-notice').style.display = 'none';
// Mark as dismissed in session storage
sessionStorage.setItem('debtNoticeDismissed', 'true');
}
window.addEventListener && window.addEventListener('load', function() {
document.body.className += ' loaded';
// check devices
var isMobile = false;
if(/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent)) {
isMobile = true;
document.body.className += ' mobile-version';
} else {
document.body.className += ' full-version';
}
});
document.body.addEventListener("keydown", (e) => {
if (e.key == "Enter" || e.key == " ") {
if($('body').hasClass('columns-page')){
if ($('.enter-triger') != null && $('.enter-triger').is(":visible")) {
$('.enter-triger').trigger("click");
}
} else if($('body').hasClass('subtask-list')){
if ($('.enter-triger') != null && $('.enter-triger').is(":visible")) {
var href = $('.enter-triger').attr('href');
if(href != ''){
location.href = href;
}
}
} else {
if ($('.start-game') != null && $('.start-game').is(":visible")) {
$('.start-game').trigger("click");
} else {
if ($('.enter-triger') != null && $('.enter-triger').is(":visible")) {
$('.enter-triger').trigger("click");
}
if ($('.finish-task-enter-triger') != null && $('.finish-task-enter-triger').is(":visible")) {
location.href = $('.finish-task-enter-triger').attr('href');
}
}
}
}
});
</script>
<script type="text/javascript" src="{{ asset('bundles/app/js/jquery.min.js') }}"></script>
<script src="/bundles/sonatacore/vendor/bootstrap/dist/js/bootstrap.min.js"></script>
<script src="/bundles/sonatacore/vendor/select2/select2.min.js"></script>
<script type="text/javascript" src="{{ asset('/bundles/app/js/notification.js') }}"></script>
<script>
(function () {
var holder = $('body');
// open user menu
function openUserInfo() {
var button = $('.sidebar .user-info .wrap');
button.on('click', function () {
$(this).parents('.user-info').toggleClass('open');
// remove other
$('.langs-wrap').removeClass('active');
$('.menu li.open-submenu').removeClass('open-submenu');
$('body').removeClass('submenu-is-active');
});
}
// open sub menu
function openSubMenu() {
var button = $('.sub-button'),
close = $('.mob-close-submenu');
button.on('click', function () {
$(this).parent().toggleClass('open-submenu');
$('body').toggleClass('submenu-is-active');
// remove other
$('.langs-wrap').removeClass('active');
$('.user-info').removeClass('open');
});
close.on('click', function () {
$('.menu li.open-submenu').removeClass('open-submenu');
$('body').removeClass('submenu-is-active');
});
}
// open mobile menu
function openMobMenu() {
var button = $('.sidebar .mob-button-menu');
button.on('click', function () {
holder.toggleClass('open-menu');
});
}
// open langs
function openLangs() {
var button = $('.langs-wrap .active-lang');
button.on('click', function () {
$(this).parents('.langs-wrap').toggleClass('active');
// remove other
$('.user-info').removeClass('open');
$('.menu li.open-submenu').removeClass('open-submenu');
$('body').removeClass('submenu-is-active');
});
}
$(document).ready(function () {
openUserInfo();
openMobMenu();
openSubMenu();
openLangs();
});
})();
</script>
{% endblock %}