templates/Layouts/base.html.twig line 1

Open in your IDE?
  1. <!DOCTYPE html>
  2. <html lang="en">
  3.     <head><base href="../"/>
  4.         <title>{% block title %}{% endblock %} | POPINA ORDER</title>
  5.         <meta charset="utf-8" />
  6.         <meta name="description" content="POPINA ORDER" />
  7.         <meta name="keywords" content="POPINA ORDER, popina order, V2" />
  8.         <meta name="viewport" content="width=device-width, initial-scale=1" />
  9.         <meta property="og:locale" content="en_US" />
  10.         <meta property="og:type" content="article" />
  11.         <meta property="og:title" content="POPINA ORDER, popina order, V2" />
  12.         <meta property="og:url" content="https://www.popinaorder.fr" />
  13.         <meta property="og:site_name" content="POPINA ORDER" />
  14.         <link rel="canonical" href="https://www.popinaorder.fr" />
  15.         <link rel="shortcut icon" href="{{ asset('foxorders/media/logos/favicon.ico') }}" />
  16.         <!--begin::Fonts(mandatory for all pages)-->
  17.         <link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Inter:300,400,500,600,700" />
  18.         <link href="{{ asset('foxorders/css/style.css' )}}" rel="stylesheet" type="text/css"/>
  19.         <!--end::Fonts-->
  20.         {% block stylesheets %}{% endblock %}
  21.         <!--begin::Global Stylesheets Bundle(mandatory for all pages)-->
  22.         <link href="{{ asset('metronic/v8.1.5/plugins/global/plugins.bundle.css') }}" rel="stylesheet" type="text/css" />
  23.         <link href="{{ asset('metronic/v8.1.5/css/style.bundle.css') }}" rel="stylesheet" type="text/css" />
  24.         <!--end::Global Stylesheets Bundle-->
  25.         {% if role() in ['manager', 'shop_owner'] and false == is_granted('ROLE_PREVIOUS_ADMIN')%}
  26.             <script id="ze-snippet" src="https://static.zdassets.com/ekr/snippet.js?key=1b6086bc-27aa-467b-92da-38268b74a8fa"></script>
  27.         {% endif %}
  28.     </head>
  29.     <body {% block body_params %}id="kt_app_body" data-kt-app-layout="dark-sidebar" data-kt-app-header-fixed="true" data-kt-app-sidebar-enabled="true" data-kt-app-sidebar-fixed="true" data-kt-app-sidebar-hoverable="true" data-kt-app-sidebar-push-header="true" data-kt-app-sidebar-push-toolbar="true" data-kt-app-sidebar-push-footer="true" data-kt-app-toolbar-enabled="true" class="app-default"{% endblock %}>
  30.         <!--begin::Theme mode setup on page load-->
  31.         {% set orderTypeProspective = constant('APP\\Entity\\Order\\OrderInterface::TYPE_PROSPECTIVE') ?? null %}
  32.         {% set timeSlotBlockingTypeProduct = constant('APP\\Entity\\Shop\\ShopSettingsInterface::TIME_SLOT_BLOCKING_TYPE_PRODUCT') ?? null %}
  33.         {% set timeSlotBlockingTypeOrder = constant('APP\\Entity\\Shop\\ShopSettingsInterface::TIME_SLOT_BLOCKING_TYPE_ORDER') ?? null %}
  34.         {% set defaultImageMaxSize = constant('APP\\Entity\\Franchise\\MediaInterface::DEFAULT_IMAGE_MAX_SIZE') ?? null %}
  35.         {% set defaultVideoMaxSize = constant('APP\\Entity\\Franchise\\MediaInterface::DEFAULT_VIDEO_MAX_SIZE') ?? null %}
  36.         {% set paymentMethodOnline = constant('App\\Entity\\Shop\\PaymentMethodInterface::TYPE_ONLINE' ?? null) %}
  37.         {% set paymentMethodOffline = constant('App\\Entity\\Shop\\PaymentMethodInterface::TYPE_OFFLINE' ?? null) %}
  38.         {% set imageTypeFile = constant('App\\Entity\\ImageInterface::IMAGE_TYPE_FILE' ?? null) %}
  39.         {% set imageTypeLink = constant('App\\Entity\\ImageInterface::IMAGE_TYPE_LINK' ?? null) %}
  40.         {% set isManager = ('manager' == role()) %}
  41.         {% set isShopManager = ('shop_owner' == role()) %}
  42.         {% set isAdministrator = ('administrator' == role()) %}
  43.         {% set isSupport = ('support' == role()) %}
  44.         {% set isPreviousAdmin = is_granted('ROLE_PREVIOUS_ADMIN') %}
  45.         {% set blankImageUrl = foxorders_media_directory ~ 'blank.png' %}
  46.         <script>
  47.             var blankImageUrl = "{{ '/' ~ blankImageUrl }}";
  48.             var defaultThemeMode = "light"
  49.             var themeMode;
  50.             if ( document.documentElement ) {
  51.                 if ( document.documentElement.hasAttribute("data-theme-mode")) {
  52.                     themeMode = document.documentElement.getAttribute("data-theme-mode");
  53.                 } else {
  54.                     if ( localStorage.getItem("data-theme") !== null ) {
  55.                         themeMode = localStorage.getItem("data-theme");
  56.                     } else {
  57.                         themeMode = defaultThemeMode;
  58.                     }
  59.                 }
  60.                 if (themeMode === "system") {
  61.                     themeMode = window.matchMedia("(prefers-color-scheme: dark)").matches ? "dark" : "light";
  62.                 }
  63.                 document.documentElement.setAttribute("data-theme", themeMode);
  64.             }
  65.         </script>
  66.         <!--end::Theme mode setup on page load-->
  67.         {% block main %}{% endblock %}
  68.         <!--begin::FOSJsRoutingBundle Javascript-->
  69.         <script src="https://code.jquery.com/jquery-3.6.0.min.js" integrity="sha256-/xUj+3OJU5yExlq6GSYGSHk7tPXikynS7ogEvDej/m4=" crossorigin="anonymous"> </script>
  70.         <script src="{{ asset('bundles/fosjsrouting/js/router.js') }}"></script>
  71.         <script src="{{ path('fos_js_routing_js', { callback: 'fos.Router.setData' }) }}"></script>
  72.         <!--end::FOSJsRoutingBundle Javascript-->
  73.         <script>var hostUrl = "assets/";</script>
  74.         <!--begin::Global Javascript Bundle(mandatory for all pages)-->
  75.         <script src="{{ asset('metronic/v8.1.5/plugins/global/plugins.bundle.js') }}"></script>
  76.         <script src="{{ asset('metronic/v8.1.5/js/scripts.bundle.js') }}"></script>
  77.         <!--end::Global Javascript Bundle-->
  78.         <script src="https://code.jquery.com/ui/1.13.2/jquery-ui.js"></script>
  79.         <!--begin::Custom Javascript(used for this page only)-->
  80.         <script type="text/javascript">
  81.                 var defaultImageMaxSize = '{{defaultImageMaxSize}}';
  82.                 var defaultVideoMaxSize = '{{defaultVideoMaxSize}}';
  83.                 var _validationRules = {};
  84.                 var orderTypeProspective = '{{orderTypeProspective}}';
  85.                 var timeSlotBlockingTypeProduct = '{{timeSlotBlockingTypeProduct}}';
  86.                 var timeSlotBlockingTypeOrder = '{{timeSlotBlockingTypeOrder}}';
  87.                 var imageTypeFile = '{{imageTypeFile}}';
  88.                 var imageTypeLink = '{{imageTypeLink}}';
  89.                 var baseTranslations = {
  90.                     'image': {
  91.                         'invalid': '{{ 'app.global.validation.imageFile.invalid'|trans({'%size%': defaultImageMaxSize/1000000}) }}',
  92.                     },
  93.                     'image_url': {
  94.                         'invalid': '{{ 'app.global.validation.imageUrl.invalid'|trans }}',
  95.                     },
  96.                     'video': {
  97.                         'invalid': '{{ 'app.global.validation.imageFile.invalid'|trans({'%size%': defaultVideoMaxSize/1000000}) }}',
  98.                     },
  99.                 };
  100.                 // Modal translations
  101.                 var modalTranslations = {
  102.                     'submit' : {
  103.                         'message': '{{ 'app.global.validation.modal.submit.message' | trans }}',
  104.                         'ok': '{{ 'app.global.validation.modal.submit.ok' | trans }}'
  105.                     },
  106.                     'delete' : {
  107.                         'message': '{{ 'app.global.validation.modal.delete.message'|trans }}',
  108.                         'yes': '{{ 'app.global.validation.modal.delete.yes' | trans }}',
  109.                         'no': '{{ 'app.global.validation.modal.delete.no' | trans }}',
  110.                         'cancel': {
  111.                             'message': '{{ 'app.global.validation.modal.delete.cancel.message' | trans }}',
  112.                             'ok': '{{ 'app.global.validation.modal.delete.cancel.ok' | trans }}'
  113.                         }
  114.                     },
  115.                     'close' : {
  116.                         'message': '{{ 'app.global.validation.modal.close.message' | trans }}',
  117.                         'yes': '{{ 'app.global.validation.modal.close.yes' | trans }}',
  118.                         'no': '{{ 'app.global.validation.modal.close.no' | trans }}',
  119.                         'cancel': {
  120.                             'message': '{{ 'app.global.validation.modal.close.cancel.message' | trans  }}',
  121.                             'ok': '{{ 'app.global.validation.modal.close.cancel.ok' | trans }}'
  122.                         }
  123.                     },
  124.                     'reset' : {
  125.                         'message': '{{ 'app.global.validation.modal.reset.message' | trans }}',
  126.                         'yes': '{{ 'app.global.validation.modal.reset.yes' | trans }}',
  127.                         'no': '{{ 'app.global.validation.modal.reset.no' | trans }}',
  128.                         'cancel': {
  129.                             'message': '{{ 'app.global.validation.modal.reset.cancel.message' | trans }}',
  130.                             'ok': '{{ 'app.global.validation.modal.reset.cancel.ok' | trans }}',
  131.                         }
  132.                     },
  133.                 }
  134.                 var swalTranslations = {
  135.                     'update' :{
  136.                         'success':{
  137.                             'title' : '{{ 'app.global.swal_messages.update.success.title'|trans }}',
  138.                             'message' : '{{ 'app.global.swal_messages.update.success.message'|trans }}',
  139.                         },
  140.                         'fail':{
  141.                             'title' : '{{ 'app.global.swal_messages.update.fail.title'|trans }}',
  142.                             'message' : '{{ 'app.global.swal_messages.update.fail.message'|trans }}'
  143.                         },
  144.                     },
  145.                     'continue' : {
  146.                         'yes': '{{ 'app.global.validation.modal.continue.yes' | trans }}',
  147.                         'no': '{{ 'app.global.validation.modal.continue.no' | trans }}'
  148.                     },
  149.                 }
  150.             </script>
  151.         {% block javascripts %}{% endblock %}
  152.         <script src="{{ asset('foxorders/js/validation/form-validation.js') }}"></script>
  153.         <script src="{{ asset('foxorders/js/helper/string.js') }}"></script>
  154.         <script src="{{ asset('foxorders/js/helper/search.js') }}"></script>
  155.         <script src="{{asset('foxorders/js/vich/delete.js') }}"></script>
  156.         <script src="{{ asset('foxorders/js/franchise/pragma-actions-disabler.js') }}"></script>
  157.         {% if true == is_granted('ROLE_ADMIN')%}
  158.             <script src="{{asset('foxorders/js/ajax/check-menu-clone-command.js') }}"></script>
  159.         {% endif %}
  160.         <!--end::Custom Javascript-->
  161.     </body>
  162. </html>