{# layout.html.twig #} {# Base layout #} {% set sPortalName = ('portal:' ~ app['combodo.portal.instance.id']) |dict_s %} {% if app['combodo.current_user'] is defined and app['combodo.current_user'] is not null %} {% set bUserConnected = true %} {% set bUserCanLogOff = app['combodo.current_user'].CanLogOff() %} {% set sUserFullname = app['combodo.current_user'].Get('first_name') ~ ' ' ~ app['combodo.current_user'].Get('last_name') %} {% set sUserEmail = app['combodo.current_user'].Get('email') %} {% set sUserPhotoUrl = app['combodo.current_contact.photo_url'] %} {% else %} {% set bUserConnected = false %} {% set bUserCanLogOff = false %} {% set sUserFullname = '' %} {% set sUserEmail = '' %} {% set sUserPhotoUrl = app['combodo.portal.base.absolute_url'] ~ 'img/user-profile-default-256px.png' %} {% endif %} {# This block can be used to add your own meta tags by extending the default template #} {% block pPageExtraMetas %} {% endblock %} {% block pPageTitle %}{% if sPageTitle is defined and sPageTitle is not null %}{{ sPageTitle }} - {{ constant('ITOP_APPLICATION_SHORT') }}{% else %}{{ 'Page:DefaultTitle'|dict_format(constant('ITOP_APPLICATION_SHORT')) }}{% endif %}{% endblock %} {% block pPageStylesheets %} {# First bootstrap core, lib themes, then bootstrap theme, portal adjustements #} {# - Bootstrap Datetime picker #} {# - Datatables #} {# - Font OpenSans #} {# - Font Combodo #} {# - Font awesome #} {# - Misc libs #} {# - Bootstrap theme #} {# - Portal adjustments for BS theme #} {# - New main portal file #} {# Tippy for tooltips and Popper for their placement #} {# Fontawesome 5 power transform as CSS #} {# UI Extensions CSS, in an undefined order #} {% if app['ui_extensions_helper'].css_files is defined %} {% for css_file in app['ui_extensions_helper'].css_files %} {% endfor %} {% endif %} {# Custom CSS that is supposed to do adjustments to the portal #} {% if app['combodo.portal.instance.conf'].properties.themes.custom is defined %} {% endif %} {# Others CSS that will come after the theme/portal/custom, in an undefined order #} {% if app['combodo.portal.instance.conf'].properties.themes.others is defined %} {% for theme in app['combodo.portal.instance.conf'].properties.themes.others %} {% endfor %} {% endif %} {% endblock %} {% block pStyleinline %} {# UI Extensions inline CSS #} {% if app['ui_extensions_helper'].css_inline is not null %} {% endif %} {% endblock %} {% block pPageScripts %} {% if is_development_environment() %} {% else %} {% endif %} {# Tippy for tooltips and Popper for their placement #} {# Visible.js to check if an element is visible on screen #} {# Base64.js #} {# Moment.js with locales #} {# Datatables #} {# Export for Datatables #} {# CKEditor files for HTML WYSIWYG #} {{ inject_ckeditor_resources()|raw }} {# - Highlighter for code snippets created with CKEditor #} {# Date-time picker for Bootstrap #} {# Typeahead files for autocomplete #} {# Selectize for sets #} {# Form files #} {# Form files for portal #} {# Clipboard helper #} {# User Preferences #} {# Polyfill for custom elements #} {# custom elements #} {# UI Extensions JS, in an undefined order #} {% if app['ui_extensions_helper'].js_files is defined %} {% for js_file in app['ui_extensions_helper'].js_files %} {% endfor %} {% endif %} {% endblock %} {% block pPageBodyWrapper %} {% block pNavigationWrapper %} {% block pNavigationSideMenuWrapper %} {% include template('navigation_menu') %} {% endblock %} {% endblock %}
{% block pMainWrapper %}
{% block pEnvBannerWrapper %} {% if app['combodo.current_environment'] != 'production' %} {% endif %} {% endblock %} {% include template('session_messages') %}
{% block pMainHeader %} {% endblock %}
{% block pMainContent %} {% endblock %}
{% block pPageUIExtensionMainContent %} {% if app['ui_extensions_helper'].html[constant('iPortalUIExtension::ENUM_PORTAL_EXT_UI_MAIN_CONTENT')] is defined %} {{ app['ui_extensions_helper'].html[constant('iPortalUIExtension::ENUM_PORTAL_EXT_UI_MAIN_CONTENT')]|raw }} {% endif %} {% endblock %}
{% endblock %}
{% block pModalForAllWrapper %} {% endblock %} {% block pModalForAlert %} {% endblock %} {% block pPageOverlay %}
{% include template('loader') %}
{% endblock %} {% block pPageUIExtensionBody %} {% if app['ui_extensions_helper'].html[constant('iPortalUIExtension::ENUM_PORTAL_EXT_UI_BODY')] is defined %} {{ app['ui_extensions_helper'].html[constant('iPortalUIExtension::ENUM_PORTAL_EXT_UI_BODY')]|raw }} {% endif %} {% endblock %} {% endblock %} {% block pPageLiveScripts %} {% endblock %} {% block pPageExtensionsScripts %} {# UI Extensions inline JS #} {% if app['ui_extensions_helper'].js_inline is not null %} {% endif %} {% endblock %}