templates/base.html.twig line 1

Open in your IDE?
  1. {# Symfony Version 5.4 #}
  2. <?xml version="1.0" encoding="UTF-8"?>
  3. <!DOCTYPE html>
  4. <html>
  5.     <head>
  6.         <meta contentType="text/html" />
  7.         <meta charset="UTF-8" />
  8.         <meta class="viewport" name="viewport" content="width=device-width, initial-scale=1.0">
  9.         <title>EPOSManager - {% block title %}Il software per le società di manutenzione POS{% endblock %}</title>
  10.         {% block stylesheets %}
  11.             <link rel="stylesheet" type="text/css" href="https://fonts.googleapis.com/css?family=Lato:300,400,400i,700|Raleway:300,400,500,600,700|Crete+Round:400i" />
  12.             <link rel="stylesheet" type="text/css" href="{{ asset ('css/bootstrap.css') }}" />
  13.             <link rel="stylesheet" type="text/css" href="{{ asset ('css/style.css') }}" />
  14.             <link rel="stylesheet" type="text/css" href="{{ asset ('css/dark.css') }}" />
  15.             <link rel="stylesheet" type="text/css" href="{{ asset ('css/font-icons.css') }}" />
  16.             <link rel="stylesheet" type="text/css" href="{{ asset ('css/animate.css') }}" />
  17.             <link rel="stylesheet" type="text/css" href="{{ asset ('css/magnific-popup.css') }}" />
  18.             <link rel="stylesheet" type="text/css" href="{{ asset ('css/calendar.css') }}" />
  19.             <link rel="stylesheet" type="text/css" href="{{ asset ('css/components/timepicker.css') }}" />
  20.             <link rel="stylesheet" type="text/css" href="{{ asset ('css/components/jquery.timepicker.css') }}" />
  21.             <link rel="stylesheet" type="text/css" href="{{ asset ('css/components/datepicker.css') }}" />
  22.             <link rel="stylesheet" type="text/css" href="{{ asset ('css/components/daterangepicker.css') }}" />
  23.             <link rel="stylesheet" type="text/css" href="{{ asset ('css/components/bs-switches.css') }}" />
  24.             <link rel="stylesheet" type="text/css" href="{{ asset ('css/personal_2025_05_07/classes.css') }}" />
  25.             <link rel="stylesheet" type="text/css" href="{{ asset ('css/personal_2025_05_07/custom.css') }}" />
  26.             <link rel="stylesheet" type="text/css" href="{{ asset ('css/personal_2025_05_07/themeOverride.css') }}" />
  27.             {# Colors #}
  28.             {# Primary: #333 #}
  29.             {# Secondary: #777 #}
  30.             {# Tertiary: #ddd #}
  31.             {% block printStylesheet %}{% endblock %}
  32.             {% block revoSliderCss %}{% endblock %}
  33.         {% endblock %}
  34.         <link rel="icon" type="image/x-icon" href="{{ asset('favicon.ico') }}" />
  35.         {% block pwa %}
  36.             <meta name="theme-color" content="#cf6c02"/>
  37.             <link rel="manifest" href="{{ asset ('manifest.json') }}">
  38.             
  39.             {# iOS #}
  40.             <link rel="apple-touch-icon" href="https://www.eposmanager.software/images/graphics_2025_02_04/pwa/logo-152.png">
  41.             <meta name="apple-mobile-web-app-capable" content="yes"> 
  42.             <meta name="apple-mobile-web-app-status-bar-style" content="black">
  43.             <meta name="apple-mobile-web-app-title" content="EPOS Manager">
  44.             {# Windows #}
  45.             <meta name="application-name" content="EPOS Manager" />
  46.             <meta name="msapplication-TileImage" content="https://www.eposmanager.software/images/graphics_2025_02_04/pwa/logo-144.png"> 
  47.             <meta name="msapplication-TileColor" content="#cf6c02">
  48.         {% endblock %}
  49.         {% block recaptcha %}{% endblock %}
  50.     </head>
  51.     <body class="stretched">
  52.         {% include "components/loading.html.twig" %}
  53.         {% block body %}
  54.             {% set menuExternal = true %}
  55.             {% if ('user_' in app.request.attributes.get('_route')) or ('admin_' in app.request.attributes.get('_route')) %}
  56.                 {% set menuExternal = false %}
  57.             {% endif %}
  58.             <div id="divAlerts">
  59.                 {% for flash_message in app.session.flashbag.get('notice_success') %}
  60.                     <div class="alert alert-dismissible alert-success notice">
  61.                         <i class="icon-thumbs-up"></i><strong>Congratulazioni! </strong> {{ flash_message|raw }}
  62.                         <button type="button" class="btn-close btn-sm" data-bs-dismiss="alert" aria-hidden="true"></button>
  63.                     </div>
  64.                 {% endfor %}
  65.                 {% for flash_message in app.session.flashbag.get('notice_info') %}
  66.                     <div class="alert alert-dismissible alert-info notice">
  67.                         <i class="icon-warning-sign"></i><strong>Informazioni importanti! </strong> {{ flash_message|raw }}
  68.                         <button type="button" class="btn-close btn-sm" data-bs-dismiss="alert" aria-hidden="true"></button>
  69.                     </div>
  70.                 {% endfor %}
  71.                 
  72.                 {% for flash_message in app.session.flashbag.get('notice_warning') %}
  73.                     <div class="alert alert-dismissible alert-warning notice">
  74.                         <i class="icon-warning-sign"></i><strong>Attenzione!!!</strong> {{ flash_message|raw }}
  75.                         <button type="button" class="btn-close btn-sm" data-bs-dismiss="alert" aria-hidden="true"></button>
  76.                     </div>
  77.                 {% endfor %}
  78.                 {% for flash_message in app.session.flashbag.get('notice_danger') %}
  79.                     <div class="alert alert-dismissible alert-danger notice">
  80.                         <i class="icon-remove"></i><strong>Attenzione!!!</strong> {{ flash_message|raw }}
  81.                         <button type="button" class="btn-close btn-sm" data-bs-dismiss="alert" aria-hidden="true"></button>
  82.                     </div>
  83.                 {% endfor %}
  84.             </div>
  85.             {# Cookie Modal #}
  86.             <div id="modalCookie" class="modal fade" tabindex="-1" role="dialog">
  87.                 <div class="modal-dialog modal-md" role="document">
  88.                     <div class="modal-content">
  89.                         <div class="modal-header"><h4 class="modal-title text-uppercase txt_a_c">Preferenze cookie</h4></div>
  90.                         <div class="modal-body">
  91.                             <div class="row">
  92.                                 <div class="col-12 switch">
  93.                                     <label>Centro preferenze sulla privacy</label>
  94.                                     <p class="font_14 m_b_10p txt_a_j">Il sito utilizza i cookie per mostrarti contenuti personalizzati e gestire gli obiettivi aziendali. Di seguito puoi trovare ulteriori informazioni su come utilizziamo i cookie. Puoi accettare tutti i cookie, selezionarli singolarmente o rifiutarli tutti. Per saperne di più sulla nostra cookie policy puoi visitare <a href='{{ path ("cookies" ) }}'>la pagina dedicata</a> in qualsiasi momento.</p>
  95.                                     <label>Gestisci preferenze consenso</label>
  96.                                     <div class="toggle toggle-border bg_f8 m_b_5p">
  97.                                         <div class="toggle-header font_12">
  98.                                             <div class="toggle-icon"><i class="toggle-closed icon-plus"></i><i class="toggle-open icon-minus"></i></div>
  99.                                             <div class="toggle-title">Cookie obbligatori<span class="f_right color_888">Sempre attivi</span></div>
  100.                                         </div>
  101.                                         <div class="toggle-content font_12 txt_a_j">Questi cookie sono necessari per le funzioni essenziali de sito, come la gestione della sicurezza della rete e la sua accessibilità. I cookie standard non possono essere disattivati.</div>
  102.                                     </div>
  103.                                     <div class="toggle toggle-border bg_f8 m_b_5p">
  104.                                         <div class="toggle-header font_12">
  105.                                             <div class="toggle-icon"><i class="toggle-closed icon-plus"></i><i class="toggle-open icon-minus"></i></div>
  106.                                             <div class="toggle-title">Cookie di Analisi</div>
  107.                                         </div>
  108.                                         <div class="toggle-content font_12 txt_a_j">Questi cookie raccolgono informazioni, come ad esempio il numero di utenti che sta utilizzando il nostro sito o le pagine più visitate, per aiutarci a migliorare l'esperienza dell'utente. La disattivazione di questi cookie comporta l'impossibilità da parte nostra di raccogliere informazioni per migliorare l'esperienza di navigazione.</div>
  109.                                     </div>
  110.                                 </div>
  111.                             </div>
  112.                         </div>
  113.                         <div class="modal-footer txt_a_c">
  114.                             <a href="{{ path ('cookie_accept') }}" class="button button-3d button-mini button-green width_100">Consenti tutti</a>
  115.                             <a href="{{ path ('cookie_deny') }}" class="button button-3d button-mini button-red width_100">Rifiuta analisi</a>
  116.                         </div>
  117.                     </div>
  118.                 </div>
  119.             </div>
  120.             {% block headJavascripts %}{% endblock %}
  121.             <div id="wrapper" class="clearfix">
  122.                 <div id="divContent" class="clearfix">
  123.                     {# HEADER #}
  124.                     {% block header %}
  125.                         <header id="header" class="full-header dark">
  126.                             <div id="header-wrap" class="bg_sc z_ind_10">
  127.                                 <div class="container">
  128.                                     <div class="header-row">
  129.                                         {% if app.user is null %}
  130.                                             {% set homePath = "homepage" %}
  131.                                         {% elseif is_granted('ROLE_ADMIN') %}
  132.                                             {% set homePath = "admin_index" %}
  133.                                         {% elseif is_granted('ROLE_USER') %}
  134.                                             {% set homePath = "user_index" %}
  135.                                         {% endif %}
  136.                                         <div id="logo">
  137.                                             <a href="{{ path (homePath) }}" class="standard-logo" data-dark-logo="{{ asset (asset_graphics ~ '/logo.png') }}"><img src="{{ asset (asset_graphics ~ '/logo.png') }}" class="p_5p" alt="EPOSManager"></a>
  138.                                             <a href="{{ path (homePath) }}" class="retina-logo" data-dark-logo="{{ asset (asset_graphics ~ '/logo@2x.png') }}"><img src="{{ asset (asset_graphics ~ '/logo@2x.png') }}" class="p_5p" alt="EPOSManager"></a>
  139.                                         </div>
  140.                                         <div id="primary-menu-trigger">
  141.                                             <svg class="svg-trigger" viewBox="0 0 100 100"><path d="m 30,33 h 40 c 3.722839,0 7.5,3.126468 7.5,8.578427 0,5.451959 -2.727029,8.421573 -7.5,8.421573 h -20"></path><path d="m 30,50 h 40"></path><path d="m 70,67 h -40 c 0,0 -7.5,-0.802118 -7.5,-8.365747 0,-7.563629 7.5,-8.634253 7.5,-8.634253 h 20"></path></svg>
  142.                                         </div>
  143.                                         <nav class="primary-menu">
  144.                                             <ul class="one-page-menu menu-container" data-easing="easeInOutExpo" data-speed="1250" data-offset="100">
  145.                                                 {% block menu %}
  146.                                                     <li class="menu-item"><a class="menu-link" href="{{ path ('homepage') }}"><div>Home</div></a></li>
  147.                                                    
  148.                                                     <li class="menu-item"><a class="menu-link" {% if app.request.get("_route") == 'homepage' %}data-href="#mission" href=""{% else %}href="{{ path ('homepage_with_section', {'section': 'mission'}) }}"{% endif %}><div>Missione</div></a></li> 
  149.                                                     <li class="menu-item"><a class="menu-link" {% if app.request.get("_route") == 'homepage' %}data-href="#software" href=""{% else %}href="{{ path ('homepage_with_section', {'section': 'software'}) }}"{% endif %}><div>Il software</div></a></li>
  150.                                                     <li class="menu-item"><a class="menu-link" {% if app.request.get("_route") == 'homepage' %}data-href="#features" href=""{% else %}href="{{ path ('homepage_with_section', {'section': 'features'}) }}"{% endif %}><div>Caratteristiche</div></a></li>
  151.                                                     <li class="menu-item"><a class="menu-link" {% if app.request.get("_route") == 'homepage' %}data-href="#providers" href=""{% else %}href="{{ path ('homepage_with_section', {'section': 'providers'}) }}"{% endif %}><div>Fornitori</div></a></li>
  152.                                                     <li class="menu-item"><a class="menu-link" {% if app.request.get("_route") == 'homepage' %}data-href="#contact" href=""{% else %}href="{{ path ('homepage_with_section', {'section': 'contact'}) }}"{% endif %}><div>Richiedi una demo</div></a></li>
  153.                                                     <li class="menu-item"><a class="menu-link" href="{{ path ('login_redirect') }}"><div>Accedi</div></a></li>
  154.                                                 {% endblock %}
  155.                                             </ul>
  156.                                         </nav>
  157.                                     </div>
  158.                                 </div>
  159.                             </div>
  160.                             <div class="header-wrap-clone"></div>
  161.                         </header>
  162.                     {% endblock %}
  163.                     {% block pageTitle %}
  164.                         {% if menuExternal == false %}
  165.                             <section id="page-title" class="page-title-dark bg_th">
  166.                                 <div class="container">
  167.                                     <h1>{% block pageTitleH1 %}Benvenuto amministratore{% endblock %}</h1>
  168.                                     <ol class="breadcrumb">
  169.                                         <li class="breadcrumb-item">
  170.                                             {% if 'admin_' in app.request.attributes.get('_route') %}
  171.                                                 <a href="{{ path('admin_index') }}">Amministratore</a>
  172.                                             {% else %}
  173.                                                 <a href="{{ path('user_index') }}">Scrivania</a>
  174.                                             {% endif %}
  175.                                         </li>
  176.                                         {% block pageTitleBreadcrumb %}
  177.                                         {% endblock %}
  178.                                     </ol>
  179.                                 </div>
  180.                             </section>
  181.                         {% endif %}
  182.                     {% endblock %}
  183.                     {% block subMenu %}
  184.                         {% if menuExternal == false %}
  185.                             <section>
  186.                                 <nav class="navbar navbar-expand-lg navbar-dark bg_sc">
  187.                                     <div class="container">
  188.                                         <div class="navbar-collapse" id="navbarSupportedContent">
  189.                                             <ul class="navbar-nav me-auto">
  190.                                                 {% block subMenuLeft %}
  191.                                                 {% endblock %}
  192.                                             </ul>
  193.                                             <ul class="navbar-nav">
  194.                                                 {% block subMenuRight %}
  195.                                                 {% endblock %}
  196.                                             </ul>
  197.                                         </div>
  198.                                     </div>
  199.                                 </nav>
  200.                             </section>
  201.                         {% endif %}
  202.                     {% endblock %}
  203.                     {# CONTENT #}
  204.                     {% block content %}
  205.                     {% endblock %}
  206.                     {# FOOTER #}
  207.                     {% block footer %}
  208.                     {% endblock %}
  209.                 </div>
  210.                 {% block divHelp %}
  211.                     <div id="divHelp" class="divHelp hide_print">
  212.                         <img id="helpImage" src="{{ asset (icon_help)}}">
  213.                         <a href="javascript:closeHelp()"><i id="helpClose" class="icon-times font_20 color_r"></i></a>
  214.                         <h4 id="helpTitle" class="uppercase m_b_10p b_b_pr"></h4>
  215.                         <div class="overflow_a max_h_170p"><p id="helpText" class="txt_a_j"></p></div>
  216.                     </div>
  217.                 {% endblock %}
  218.                 {% block divHelp2 %}
  219.                     <div id="divHelp2" class="modal fade" tabindex="-1" role="dialog">
  220.                         <div class="modal-dialog modal-lg" role="document">
  221.                             <div class="modal-content">
  222.                                 <div class="modal-header"><h4 class="modal-title text-uppercase txt_a_c">{% block titleDivHelp2 %}{% endblock %}</h4></div>
  223.                                 
  224.                                 <div class="modal-body">
  225.                                     <div class="row">
  226.                                         <div class="col-12 p_lr_30p">
  227.                                             {% block innerDivHelp2 %}{% endblock %}
  228.                                         </div>
  229.                                     </div>
  230.                                 </div>
  231.                                 <div class="modal-footer txt_a_c">
  232.                                     <a href="javascript:void(0)" class="button button-3d button-mini button-red" data-bs-dismiss="modal">Esci</a>
  233.                                 </div>
  234.                             </div>
  235.                         </div>
  236.                     </div>
  237.                 {% endblock %}
  238.             <div id="gotoTop" class="icon-angle-up"></div>
  239.         {% endblock %}
  240.         {% block javascripts %}
  241.             <script type="text/javascript" src="{{ asset ('js/jquery.js') }}"></script>
  242.             <script type="text/javascript" src="{{ asset ('js/plugins.js') }}"></script>
  243.             <script type="text/javascript" src="{{ asset ('js/functions.js') }}"></script>
  244.             <script type="text/javascript" src="{{ asset ('js/personal_2025_05_07/utilities.js') }}"></script>
  245.             <script type="text/javascript" src="{{ asset ('js/components/moment.js') }}"></script>
  246.             <script type="text/javascript" src="{{ asset ('js/components/datepicker-it.js') }}"></script>
  247.             <script type="text/javascript" src="{{ asset ('js/components/daterangepicker.js') }}"></script>
  248.             <script type="text/javascript" src="{{ asset ('js/components/timepicker.js') }}"></script>
  249.             <script type="text/javascript" src="{{ asset ('js/components/jquery.timepicker.js') }}"></script>
  250.             <script type="text/javascript" src="{{ asset ('js/components/moment.js') }}"></script>
  251.             <script type="text/javascript" src="{{ asset ('js/components/bs-switches.js') }}"></script>
  252.             
  253.             {% include 'components/js/update_tab_filters.html.twig' %}
  254.             
  255.             {% block innerJavascripts %}
  256.                 <script>
  257.                     $('input[type="submit"]').on("mousepress", function(){
  258.                         this.setAttribute("disabled", true)});
  259.                     $('button[type="submit"]').on("mousepress", function(){
  260.                         this.setAttribute("disabled", true)});
  261.                 </script>
  262.                 {# HELP #}
  263.                 <script>
  264.                     function divHelp(slug){
  265.                         $.post('{{ path ("help") }}', {slug: slug}, function(response){ 
  266.                             if(response.code == 200 && response.success){
  267.                                 document.getElementById('divHelp').style.visibility = "visible";
  268.                                 document.getElementById('helpClose').style.visibility = "visible";
  269.                                 document.getElementById('helpImage').style.visibility = "visible";
  270.                                 document.getElementById('helpTitle').innerHTML = response.title;
  271.                                 document.getElementById('helpText').innerHTML = response.text;
  272.                                 $("#helpButton").click();
  273.                             }
  274.                         }, "json");
  275.                     }
  276.                     function closeHelp(){
  277.                         document.getElementById('divHelp').style.visibility = "hidden";
  278.                         document.getElementById('helpClose').style.visibility = "hidden";
  279.                         document.getElementById('helpImage').style.visibility = "hidden";
  280.                     }
  281.                 </script>
  282.                 {# SERVICE WORKERS #}
  283.                 <script>
  284.                     window.addEventListener("load", () => {
  285.                         if ("serviceWorker" in navigator) {
  286.                             navigator.serviceWorker.register("{{ asset('service-worker.js') }}");
  287.                             Notification.requestPermission().then((result) => {
  288.                                 if (result === "granted") {
  289.                                     {% if app.user is defined and is_granted("ROLE_ADMIN") %}
  290.                                         {# notifications(); #}
  291.                                     {% endif %}
  292.                                 }
  293.                             });
  294.                         }
  295.                     });
  296.                 </script>
  297.                 <script>
  298.                     {% if not app.request.cookies.get('cookieconsent_dismissed') == "yes" %}
  299.                         $(document).ready(function(){
  300.                             modalCookie();
  301.                         });
  302.                     {% endif %}
  303.                     function modalCookie(){
  304.                         $('#modalCookie').modal({backdrop: 'static', keyboard: false}).modal("show");
  305.                     }
  306.                 </script>
  307.             {% endblock %}
  308.         {% endblock %}
  309.         <div id="divModals" class="clearfix">
  310.             {% block modals %}
  311.             {% endblock %}
  312.         </div>
  313.     </body>
  314. </html>