Files
dockerfluxodecaixapro/modules/index/views/layout.twig
T
2026-09-01 10:46:29 -03:00

181 lines
6.2 KiB
Twig
Executable File

<!DOCTYPE html>
<html lang="pt-BR">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
{# SEO Meta Tags #}
<title>{{ title|default(seo.meta_title|default(platformName)) }}</title>
<meta name="description" content="{{ seo.meta_description }}">
{% if seo.meta_keywords %}
<meta name="keywords" content="{{ seo.meta_keywords }}">
{% endif %}
<link rel="canonical" href="{{ canonical_url|default(url(request_path|default(''))) }}">
{# Open Graph / Facebook #}
<meta property="og:type" content="website">
<meta property="og:url" content="{{ url(request_path|default('')) }}">
<meta property="og:title" content="{{ seo.og_title|default(title|default(platformName)) }}">
<meta property="og:description" content="{{ seo.og_description|default(seo.meta_description) }}">
{% if seo.og_image %}
<meta property="og:image" content="{{ url('storage/uploads/seo/' ~ seo.og_image) }}">
{% endif %}
{# Twitter #}
<meta name="twitter:card" content="{{ seo.twitter_card|default('summary_large_image') }}">
<meta name="twitter:url" content="{{ url(request_path|default('')) }}">
<meta name="twitter:title" content="{{ seo.og_title|default(title|default(platformName)) }}">
<meta name="twitter:description" content="{{ seo.og_description|default(seo.meta_description) }}">
{% if seo.og_image %}
<meta name="twitter:image" content="{{ url('storage/uploads/seo/' ~ seo.og_image) }}">
{% endif %}
{# Google Verification #}
{% if seo.google_site_verification %}
<meta name="google-site-verification" content="{{ seo.google_site_verification }}">
{% endif %}
{# JSON-LD Structured Data #}
{% if seo.json_ld_type and seo.json_ld_type != 'none' %}
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "{{ seo.json_ld_type }}",
"name": "{{ seo.json_ld_name }}",
"url": "{{ seo.json_ld_url }}",
"description": "{{ seo.json_ld_description }}",
{% if seo.json_ld_phone %}"telephone": "{{ seo.json_ld_phone }}",{% endif %}
{% if seo.json_ld_email %}"email": "{{ seo.json_ld_email }}",{% endif %}
{% if seo.json_ld_address %}
"address": {
"@type": "PostalAddress",
"streetAddress": "{{ seo.json_ld_address }}",
"addressLocality": "{{ seo.json_ld_city }}",
"addressRegion": "{{ seo.json_ld_state }}",
"postalCode": "{{ seo.json_ld_zip }}",
"addressCountry": "{{ seo.json_ld_country }}"
},
{% endif %}
"sameAs": [
{% set social_links = seo.json_ld_social_links|split('\n') %}
{% for link in social_links %}
"{{ link|trim }}"{{ not loop.last ? ',' : '' }}
{% endfor %}
]
}
</script>
{% endif %}
{# Google Analytics #}
{% if seo.google_analytics_id %}
<script async src="https://www.googletagmanager.com/gtag/js?id={{ seo.google_analytics_id }}"></script>
<script>
window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}
gtag('js', new Date());
gtag('config', '{{ seo.google_analytics_id }}');
</script>
{% endif %}
{# Bootstrap CSS #}
<link rel="stylesheet" href="{{ asset_url('css/bootstrap.min.css') }}">
{# Theme Specific Assets #}
<link rel="stylesheet" href="{{ asset_url('css/landing-page.css') }}">
{# Bootstrap Icons #}
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap-icons@1.11.3/font/bootstrap-icons.min.css">
{# Quill Editor CSS (se habilitado) #}
{# Alpine.js #}
<script src="https://cdn.jsdelivr.net/npm/alpinejs@3.x.x/dist/cdn.min.js" defer></script>
{% block head %}{% endblock %}
{# Customizer CSS #}
<style id="theme-customizer-css">
:root {
--primary-color: {{ theme_settings.primary_color|default('#0d6efd') }};
--bg-color: {{ theme_settings.background_color|default('#f8f9fa') }};
--text-color: {{ theme_settings.text_color|default('#212529') }};
}
body {
background-color: var(--bg-color) !important;
color: var(--text-color) !important;
}
.text-primary, .btn-primary {
color: var(--primary-color) !important;
}
.bg-primary, .btn-primary {
background-color: var(--primary-color) !important;
border-color: var(--primary-color) !important;
}
{% if theme_settings.container_width == 'container-fluid' %}
.container {
max-width: 100% !important;
}
{% endif %}
</style>
</head>
<body style="background:#f8f9fa;">
{% block layout_navbar %}
{# Navbar Global #}
{% if not is_maintenance_mode or (auth.user is defined and auth.user.role == 'super_admin') %}
{% include 'partials/nav-bar.twig' %}
{% endif %}
{% endblock %}
{% block layout_body %}
{# Conteúdo da página #}
<main class="container py-4">
{% block content %}{% endblock %}
</main>
{% endblock %}
{# Footer Global #}
{% if not is_maintenance_mode or (auth.user is defined and auth.user.role == 'super_admin') %}
{% include 'partials/footer.twig' %}
{% endif %}
{# Bootstrap JS #}
<script src="{{ asset_url('js/bootstrap.bundle.js') }}"></script>
{# Quill Editor JS (se habilitado) #}
{% block scripts %}{% endblock %}
<link rel="stylesheet" type="text/css" href="/consent/cookieconsent.min.css" />
<script src="/consent/cookieconsent.min.js"></script>
<script>
window.addEventListener("load", function(){
window.cookieconsent.initialise({
"palette": {
"popup": {
"background": "#216942",
"text": "#b2d192"
},
"button": {
"background": "#afed71"
}
},
"content": {
"message": "{{ __('layout.cookie_consent.message') }}",
"dismiss": "{{ __('layout.cookie_consent.dismiss') }}",
"link": "{{ __('layout.footer.terms') }}",
"href": "/user_terms.html"
}
})});
</script>
</body>
</html>