templates/master.html.twig line 1

Open in your IDE?
  1. <!DOCTYPE html>
  2. <html lang="es" dir="ltr" data-nav-layout="vertical" data-theme-mode="light" data-header-styles="light" data-menu-styles="light" data-nav-style="icon-hover" data-toggled="close">
  3. <head>
  4.     <!-- Meta Data -->
  5.     <meta charset="UTF-8">
  6.     <meta name='viewport' content='width=device-width, initial-scale=1.0'>
  7.     <meta http-equiv="X-UA-Compatible" content="IE=edge">
  8.     <title>{% block title %} LOGIC {% endblock %} </title>
  9.     <meta name="Description" content="Bootstrap Responsive Admin Web Dashboard HTML5 Template">
  10.     <meta name="Author" content="IT-SYSTEMS">
  11.     <meta name="keywords" content="admin dashboard template,admin panel html,bootstrap dashboard,admin dashboard,html template,template dashboard html,html css,bootstrap 5 admin template,bootstrap admin template,bootstrap 5 dashboard,admin panel html template,dashboard template bootstrap,admin dashboard html template,bootstrap admin panel,simple html template,admin dashboard bootstrap">
  12.     <!-- Favicon -->
  13.     <link rel="icon" src="{{ asset('assets/') }}img/brand/favicon.png" type="image/x-icon"/>
  14.     <!-- Main Theme Js -->
  15.     <script src="{{ asset('assets/') }}js/main.js"></script>
  16.     <!-- Bootstrap Css -->
  17.     <link id="style" href="{{ asset('assets/') }}libs/bootstrap/css/bootstrap.min.css" rel="stylesheet" >
  18.     <!-- Style Css custom -->
  19.     <link href="{{ asset('assets/') }}css/customappint.css" rel="stylesheet" >
  20.     <link href="{{ asset('assets/') }}css/customapp.css" rel="stylesheet" >
  21.     <!-- Style Css -->
  22.     <link href="{{ asset('assets/') }}css/styles.min.css" rel="stylesheet" >
  23.     <!-- Style Css custom -->
  24.     <link href="{{ asset('assets/') }}css/customStyles.css" rel="stylesheet" >
  25.     <!-- Icons Css -->
  26.     <link href="{{ asset('assets/') }}css/icons.css" rel="stylesheet" >
  27.     <!-- Node Waves Css -->
  28.     <link href="{{ asset('assets/') }}libs/node-waves/waves.min.css" rel="stylesheet" >
  29.     <!-- Simplebar Css -->
  30.     <link href="{{ asset('assets/') }}libs/simplebar/simplebar.min.css" rel="stylesheet" >
  31.     <!-- Color Picker Css -->
  32.     <link rel="stylesheet" href="{{ asset('assets/') }}libs/flatpickr/flatpickr.min.css">
  33.     <link rel="stylesheet" href="{{ asset('assets/') }}libs/@simonwep/pickr/themes/nano.min.css">
  34.     <!-- Choices Css -->
  35.     <link rel="stylesheet" href="{{ asset('assets/') }}libs/choices.js/public/assets/styles/choices.min.css">
  36.     <!-- Jsvector Maps -->
  37.     <link rel="stylesheet" href="{{ asset('assets/') }}libs/jsvectormap/css/jsvectormap.min.css">
  38.     <!--DatatablesCdn -->
  39.     <link rel="stylesheet" href="https://cdn.datatables.net/2.3.2/css/dataTables.bootstrap5.css" />
  40.     {#    <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/css/bootstrap.min.css">#}
  41.     <!--- Internal Sweet-Alert css-->
  42.     <link href="{{ asset('assets/') }}libs/sweetalert2/sweetalert2.min.css" rel="stylesheet">
  43.     <!--  Owl-carousel css-->
  44.     {# <link href="{{ asset('assets/') }}plugins/owl-carousel/owl.carousel.css" rel="stylesheet" />#}
  45.     <!--  steps -->
  46.     <link rel="stylesheet" href="{{ asset('assets/') }}libs/jquery-steps/jquery.steps.css">
  47.     <!---Internal Fancy uploader css-->
  48.     <link href="{{ asset('assets/') }}libs/fancyuploder/fancy_fileupload.css" rel="stylesheet" />
  49.     <!--Internal  summernote -->
  50.     <link href="https://cdn.jsdelivr.net/npm/summernote@0.9.0/dist/summernote-lite.min.css" rel="stylesheet">
  51.     <!-- Maps css -->
  52.     <link href="{{ asset('assets/') }}libs/jsvectormap/css/jsvectormap.min.css" rel="stylesheet">
  53.     <!---nav scroll css-->
  54.     {#        <link href="{{ asset('assets/') }}libs/navscroll/scrolltabs.css" rel="stylesheet" />#}
  55.     <!---SELECT2-->
  56.     <link href="https://cdn.jsdelivr.net/npm/select2@4.1.0-rc.0/dist/css/select2.min.css" rel="stylesheet" />
  57.     <!-- Internal MULTISelect2 css -->
  58.     <link rel="stylesheet" href="{{ asset('assets/') }}libs/multiselect/bootstrap-multiselect.min.css" rel="stylesheet"/>
  59.     <!-- Multi Select V2Css -->
  60.     <link rel="stylesheet" href="{{ asset ('assets') }}/libs/multi-select/css/multi-select.css">
  61.     <link rel="stylesheet" href="{{ asset('assets/') }}libs/prismjs/themes/prism-coy.min.css">
  62.     <!--File upload -->
  63.     <link rel="stylesheet" href="{{ asset('assets/') }}libs/filepond/filepond.min.css">
  64.     <link rel="stylesheet" href="{{ asset('assets/') }}libs/filepond-plugin-image-preview/filepond-plugin-image-preview.min.css">
  65.     <link rel="stylesheet" href="{{ asset('assets/') }}libs/filepond-plugin-image-edit/filepond-plugin-image-edit.min.css">
  66.     {#<!--NG PROGRESS -->
  67.         <link href="{{ asset('assets/') }}plugins/jQCloud/dist/jqcloud.min.css" rel="stylesheet">#}
  68.     <link href="https://unpkg.com/nprogress@0.2.0/nprogress.css" rel="stylesheet">
  69.     <link rel="stylesheet" href="{{ asset('assets/') }}libs/floating-labels-material-inputs/input-material.css">
  70.     <link
  71.             rel="stylesheet"
  72.             href="https://cdnjs.cloudflare.com/ajax/libs/selectize.js/0.15.2/css/selectize.default.min.css"
  73.             integrity="sha512-pTaEn+6gF1IeWv3W1+7X7eM60TFu/agjgoHmYhAfLEU8Phuf6JKiiE8YmsNC0aCgQv4192s4Vai8YZ6VNM6vyQ=="
  74.             crossorigin="anonymous"
  75.             referrerpolicy="no-referrer"
  76.     />
  77.     <style>
  78.         div.dataTables_wrapper div.dataTables_scrollBody {
  79.             min-height: 500px;
  80.             max-height: 500px;
  81.         }
  82.         .flatpickr-wrapper{
  83.             width:100%;
  84.         }
  85.         .text-wrap{
  86.             white-space:normal;
  87.         }
  88.         .width-200{
  89.             width:200px;
  90.         }
  91.         .dropdown-item.active {
  92.             background-color: rgba(1, 98, 232, 0.11) !important;
  93.         }
  94.         div.modal-body{
  95.             min-height:410px;
  96.         }
  97.     </style>
  98.     {% block styles %}
  99.     {% endblock %}
  100. </head>
  101. <body id="mainbody">
  102. {% if app.request.get('msg') == 'deleted' %}
  103.     <script src="https://cdn.jsdelivr.net/npm/sweetalert2@11"></script>
  104.     <script>
  105.         Swal.fire({
  106.             icon: 'success',
  107.             title: '¡Registro eliminado!',
  108.             text: 'El registro fue eliminado exitosamente.',
  109.             confirmButtonText: 'Aceptar'
  110.         });
  111.     </script>
  112. {% endif %}
  113. <!-- Loader -->
  114. <div id="loader" >
  115.     <img src="{{ asset('assets/') }}img/loader.svg" class="loader-img" alt="Loader">
  116. </div>
  117. <!-- Loader -->
  118. <div class="page">
  119.     {% block master %}
  120.         <!-- app-header -->
  121.         <header class="app-header">
  122.             <!-- Start::main-header-container -->
  123.             <div class="main-header-container container-fluid">
  124.                 <!-- Start::header-content-left -->
  125.                 <div class="header-content-left">
  126.                     <!-- Start::header-element -->
  127.                     <div class="header-element">
  128.                         <div class="horizontal-logo">
  129.                             <a href="index.html" class="header-logo">
  130.                                 <img src="../assets/images/brand-logos/desktop-logo.png" alt="logo" class="desktop-logo">
  131.                                 <img src="../assets/images/brand-logos/toggle-logo.png" alt="logo" class="toggle-logo">
  132.                                 <img src="../assets/images/brand-logos/desktop-white.png" alt="logo" class="desktop-white">
  133.                                 <img src="../assets/images/brand-logos/toggle-white.png" alt="logo" class="toggle-white">
  134.                             </a>
  135.                         </div>
  136.                     </div>
  137.                     <!-- End::header-element -->
  138.                     <!-- Start::header-element -->
  139.                     <div class="header-element">
  140.                         <!-- Start::header-link -->
  141.                         <a id="ctrlSideMenu" aria-label="Hide Sidebar" class="sidemenu-toggle header-link animated-arrow hor-toggle horizontal-navtoggle" data-bs-toggle="sidebar" href="javascript:void(0);">
  142.                             <i class="fa-solid fa-bars-staggered"></i>
  143.                         </a>
  144.                         <!--
  145.                         <div class="main-header-center d-none d-lg-block">
  146.                             <input class="form-control" placeholder="Search for anything..." type="search"> <button class="btn"><i class="fa fa-search d-none d-md-block"></i></button>
  147.                         </div>-->
  148.                         <!-- End::header-link -->
  149.                     </div>
  150.                     <!-- End::header-element -->
  151.                 </div>
  152.                 <!-- End::header-content-left -->
  153.                 <!-- Start::header-content-right -->
  154.                 <div class="header-content-right">
  155.                     <!-- Start::header-element -->
  156.                     <div class="header-element">
  157.                         <a href="{{ path('app_seg_home_office_new') }}"
  158.                            id="homeOfficeLink"
  159.                            class="nav-link"
  160.                            style="color:red"
  161.                            data-bs-toggle="tooltip"
  162.                            title="Home Office"
  163.                            data-bs-custom-class="tooltip-primary">
  164.                             <i id="iconHO" class="fa-solid fa-person-shelter"></i>
  165.                             <span id="textHO">Home Office</span>
  166.                         </a>
  167.                     </div>
  168.                     <!-- End::header-element -->
  169.                     <div class="header-element Search-element d-block d-lg-none">
  170.                         <!-- Start::header-link|dropdown-toggle -->
  171.                         <a href="javascript:void(0);" class="header-link dropdown-toggle" data-bs-auto-close="outside" data-bs-toggle="dropdown">
  172.                             <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 -960 960 960"  class="header-link-icon"><path d="M784-120 532-372q-30 24-69 38t-83 14q-109 0-184.5-75.5T120-580q0-109 75.5-184.5T380-840q109 0 184.5 75.5T640-580q0 44-14 83t-38 69l252 252-56 56ZM380-400q75 0 127.5-52.5T560-580q0-75-52.5-127.5T380-760q-75 0-127.5 52.5T200-580q0 75 52.5 127.5T380-400Z"/></svg>
  173.                         </a>
  174.                         <!-- End::header-link|dropdown-toggle -->
  175.                         <ul class="main-header-dropdown dropdown-menu dropdown-menu-end Search-element-dropdown" data-popper-placement="none">
  176.                             <li>
  177.                                 <div class="input-group w-100 p-2">
  178.                                     <input type="text" class="form-control" placeholder="Search....">
  179.                                     <div class="btn btn-primary">
  180.                                         <i class="fa fa-search" aria-hidden="true"></i>
  181.                                     </div>
  182.                                 </div>
  183.                             </li>
  184.                         </ul>
  185.                     </div>
  186.                     <!-- Start::header-element -->
  187.                     <div class="header-element header-fullscreen">
  188.                         <!-- Start::header-link -->
  189.                         <a onclick="openFullscreen();" href="javascript:void(0);" class="header-link">
  190.                             <svg xmlns="http://www.w3.org/2000/svg" class="full-screen-open full-screen-icon header-link-icon" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor"><path d="M0 0h24v24H0V0z" fill="none"/><path d="M7 14H5v5h5v-2H7v-3zm-2-4h2V7h3V5H5v5zm12 7h-3v2h5v-5h-2v3zM14 5v2h3v3h2V5h-5z"/></svg>
  191.                             <svg xmlns="http://www.w3.org/2000/svg" class="full-screen-close full-screen-icon header-link-icon d-none" fill="currentColor" height="24" viewBox="0 -960 960 960" width="24"><path d="M320-200v-120H200v-80h200v200h-80Zm240 0v-200h200v80H640v120h-80ZM200-560v-80h120v-120h80v200H200Zm360 0v-200h80v120h120v80H560Z"/></svg>
  192.                         </a>
  193.                         <!-- End::header-link -->
  194.                     </div>
  195.                     <!-- Start::header-element -->
  196.                     {{ render(controller('App\\Controller\\SecUserController::NotificationsMenu')) }}
  197.                     <!-- End::header-element -->
  198.                     <!-- Start::header-element -->
  199.                     <!-- End::header-element -->
  200.                     <!-- Start::header-element -->
  201.                     {#<div class="header-element header-sidebar">
  202.                                 <!-- Start::header-link-->
  203.                                 <a href="javascript:void(0);" class="header-link" data-bs-toggle="offcanvas" data-bs-target="#header-sidebar">
  204.                                     <svg xmlns="http://www.w3.org/2000/svg" class="header-link-icon" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" ><line x1="3" y1="12" x2="21" y2="12"></line><line x1="3" y1="6" x2="21" y2="6"></line><line x1="3" y1="18" x2="21" y2="18"></line></svg>
  205.                                 </a>
  206.                                 <!-- End::header-link-->
  207.                             </div>#}
  208.                     <!-- End::header-element -->
  209.                     <!-- Start::header-element -->
  210.                     <div class="header-element headerProfile-dropdown">
  211.                         <!-- Start::header-link|dropdown-toggle -->
  212.                         <button type="button" class="btn btn-primary dropdown-toggle btn-sm"
  213.                                 data-bs-toggle="dropdown" aria-expanded="false">
  214.                             <i class="fa-solid fa-user"></i> Mi Cuenta
  215.                         </button>
  216.                         <!-- End::header-link|dropdown-toggle -->
  217.                         <ul class="dropdown-menu" aria-labelledby="mainHeaderProfile">
  218.                             <li>
  219.                                 <div class="main-header-profile bg-primary menu-header-content text-fixed-white">
  220.                                     <div class="my-auto">
  221.                                         <h6 class="mb-0 lh-1 text-fixed-white">{{ app.user.persona.nombres }}</h6><span class="fs-11 op-7 lh-1"> </span>
  222.                                     </div>
  223.                                 </div>
  224.                             </li>
  225.                             <li><a class="dropdown-item d-flex ajax" href="{{ path('ter_persona_show',{'id':app.user.persona.id}) }}"><i class="bx bx-user-circle fs-18 me-2 op-7"></i>Mi Perfil</a></li>
  226.                             {#<li><a class="dropdown-item d-flex" href="editprofile.html"><i class="bx bx-cog fs-18 me-2 op-7"></i>Edit Profile </a></li>
  227.                                         <li><a class="dropdown-item d-flex border-block-end" href="mail.html"><i class="bx bxs-inbox fs-18 me-2 op-7"></i>Inbox</a></li>
  228.                                         <li><a class="dropdown-item d-flex" href="chat.html"><i class="bx bx-envelope fs-18 me-2 op-7"></i>Messages</a></li>
  229.                                         <li><a class="dropdown-item d-flex border-block-end" href="editprofile.html"><i class="bx bx-slider-alt fs-18 me-2 op-7"></i>Account Settings</a></li>#}
  230.                             <li><a class="dropdown-item d-flex" href="{{ path('app_logout') }}"><i class="bx bx-log-out fs-18 me-2 op-7"></i>Cerrar Sesion</a></li>
  231.                         </ul>
  232.                     </div>
  233.                     <!-- End::header-element -->
  234.                     <!-- Start::header-element -->
  235.                     {#<div class="header-element">
  236.                                 <!-- Start::header-link|switcher-icon -->
  237.                                 <a href="javascript:void(0);" class="header-link switcher-icon" data-bs-toggle="offcanvas" data-bs-target="#switcher-canvas">
  238.                                     <svg xmlns="http://www.w3.org/2000/svg" class="header-link-icon" width="24" height="24" viewBox="0 0 24 24"><path d="M12 16c2.206 0 4-1.794 4-4s-1.794-4-4-4-4 1.794-4 4 1.794 4 4 4zm0-6c1.084 0 2 .916 2 2s-.916 2-2 2-2-.916-2-2 .916-2 2-2z"></path><path d="m2.845 16.136 1 1.73c.531.917 1.809 1.261 2.73.73l.529-.306A8.1 8.1 0 0 0 9 19.402V20c0 1.103.897 2 2 2h2c1.103 0 2-.897 2-2v-.598a8.132 8.132 0 0 0 1.896-1.111l.529.306c.923.53 2.198.188 2.731-.731l.999-1.729a2.001 2.001 0 0 0-.731-2.732l-.505-.292a7.718 7.718 0 0 0 0-2.224l.505-.292a2.002 2.002 0 0 0 .731-2.732l-.999-1.729c-.531-.92-1.808-1.265-2.731-.732l-.529.306A8.1 8.1 0 0 0 15 4.598V4c0-1.103-.897-2-2-2h-2c-1.103 0-2 .897-2 2v.598a8.132 8.132 0 0 0-1.896 1.111l-.529-.306c-.924-.531-2.2-.187-2.731.732l-.999 1.729a2.001 2.001 0 0 0 .731 2.732l.505.292a7.683 7.683 0 0 0 0 2.223l-.505.292a2.003 2.003 0 0 0-.731 2.733zm3.326-2.758A5.703 5.703 0 0 1 6 12c0-.462.058-.926.17-1.378a.999.999 0 0 0-.47-1.108l-1.123-.65.998-1.729 1.145.662a.997.997 0 0 0 1.188-.142 6.071 6.071 0 0 1 2.384-1.399A1 1 0 0 0 11 5.3V4h2v1.3a1 1 0 0 0 .708.956 6.083 6.083 0 0 1 2.384 1.399.999.999 0 0 0 1.188.142l1.144-.661 1 1.729-1.124.649a1 1 0 0 0-.47 1.108c.112.452.17.916.17 1.378 0 .461-.058.925-.171 1.378a1 1 0 0 0 .471 1.108l1.123.649-.998 1.729-1.145-.661a.996.996 0 0 0-1.188.142 6.071 6.071 0 0 1-2.384 1.399A1 1 0 0 0 13 18.7l.002 1.3H11v-1.3a1 1 0 0 0-.708-.956 6.083 6.083 0 0 1-2.384-1.399.992.992 0 0 0-1.188-.141l-1.144.662-1-1.729 1.124-.651a1 1 0 0 0 .471-1.108z"></path></svg>
  239.                                 </a>
  240.                                 <!-- End::header-link|switcher-icon -->
  241.                             </div>#}
  242.                     <!-- End::header-element -->
  243.                 </div>
  244.                 <!-- End::header-content-right -->
  245.             </div>
  246.             <!-- End::main-header-container -->
  247.         </header>
  248.         <!-- Start::app-sidebar -->
  249.         {{ render(controller('App\\Controller\\SecUserController::MainMenu', { id:3 })) }}
  250.         <!-- End::app-sidebar -->
  251.         <!-- Start::app-content -->
  252.         <div class="main-content app-content">
  253.             <div class="container-fluid">
  254.                 {% block content %}
  255.                 {% endblock %}
  256.             </div>
  257.         </div>
  258.         <!-- End::app-content -->
  259.         <!-- Footer Start -->
  260.         <footer class="footer mt-auto py-3 bg-white text-center">
  261.             <div class="container">
  262.                 <span>Desarrollado por <a href="https://it-systems.com.co/" target="_blank"><img src="{{ asset('assets/') }}img/brand/it2s.png" width="60"></a></span>
  263.             </div>
  264.         </footer>
  265.         <!-- Footer End -->
  266.         <div id="ajax-modal" class="modal fade ajax-modal1" data-backdrop="static" data-keyboard="false"></div>
  267.         <div id="ajax-modal-stack2" class="modal fade ajax-modal2" data-backdrop="static" data-keyboard="false"></div>
  268.         <div id="ajax-modal-stack3" class="modal fade ajax-modal3" data-backdrop="static" data-keyboard="false"></div>
  269.     {% endblock %}
  270. </div>
  271. <!-- Scroll To Top -->
  272. <div class="scrollToTop">
  273.     <span class="arrow"><i class="las la-angle-double-up"></i></span>
  274. </div>
  275. <div></div>
  276. <!-- Scroll To Top -->
  277. <script src="https://code.jquery.com/jquery-3.6.1.min.js" integrity="sha256-o88AwQnZB+VDvE9tvIXrMQaPlFFSUTR+nldQm1LuPXQ=" crossorigin="anonymous"></script>
  278. <!-- Popper JS -->
  279. <script src="{{ asset('assets/') }}libs/@popperjs/core/umd/popper.min.js"></script>
  280. <!-- Bootstrap JS -->
  281. <script src="{{ asset('assets/') }}libs/bootstrap/js/bootstrap.bundle.min.js"></script>
  282. <!-- Defaultmenu JS -->
  283. <script src="{{ asset('assets/') }}js/defaultmenu.min.js"></script>
  284. <!-- Node Waves JS-->
  285. <script src="{{ asset('assets/') }}libs/node-waves/waves.min.js"></script>
  286. <!-- Sticky JS -->
  287. <script src="{{ asset('assets/') }}js/sticky.js"></script>
  288. <!-- Simplebar JS -->
  289. <script src="{{ asset('assets/') }}libs/simplebar/simplebar.min.js"></script>
  290. <script src="{{ asset('assets/') }}js/simplebar.js"></script>
  291. <!-- Color Picker JS -->
  292. <script src="{{ asset('assets/') }}libs/@simonwep/pickr/pickr.es5.min.js"></script>
  293. <!-- Apex Charts JS -->
  294. <script src="{{ asset('assets/') }}libs/apexcharts/apexcharts.min.js"></script>
  295. <!-- JSVector Maps JS -->
  296. <script src="{{ asset('assets/') }}libs/jsvectormap/js/jsvectormap.min.js"></script>
  297. <!-- JSVector Maps MapsJS -->
  298. <script src="{{ asset('assets/') }}libs/jsvectormap/maps/world-merc.js"></script>
  299. <script src="{{ asset('assets/') }}js/us-merc-en.js"></script>
  300. <!-- Chartjs Chart JS -->
  301. {#<script src="{{ asset('assets/') }}js/index.js"></script>#}
  302. <!-- Custom-Switcher JS -->
  303. {#<script src="{{ asset('assets/') }}js/custom-switcher.min.js"></script>#}
  304. <!-- Datatables Scripts -->
  305. <script src="https://cdn.datatables.net/2.3.2/js/dataTables.js"></script>
  306. <script src="https://cdn.datatables.net/2.3.2/js/dataTables.bootstrap5.js"></script>
  307. <script src="https://cdn.datatables.net/buttons/3.0.1/js/dataTables.buttons.min.js"></script>
  308. <script src="https://cdn.datatables.net/buttons/3.0.1/js/buttons.bootstrap5.min.js"></script>
  309. <script src="https://cdn.datatables.net/buttons/3.0.1/js/buttons.html5.min.js"></script>
  310. <script src="https://cdn.datatables.net/buttons/3.0.1/js/buttons.colVis.min.js"></script>
  311. <script src="https://cdnjs.cloudflare.com/ajax/libs/jszip/3.1.3/jszip.min.js"></script>
  312. <!--TABS SCROLL JQUERY -->
  313. {#        <script src="{{ asset('assets/') }}libs/navscroll/jquery.scrolltabs.js"></script>#}
  314. <!--Internal  summernote -->
  315. <script src="https://cdn.jsdelivr.net/npm/summernote@0.9.0/dist/summernote-lite.min.js"></script>
  316. <script src="{{ asset('assets/') }}libs/summernote/lang/summernote-es-ES.min.js"></script>
  317. <!--Internal Fancy uploader js-->
  318. <script src="{{ asset('assets/') }}libs/fancyuploder/jquery.ui.widget.js"></script>
  319. <script src="{{ asset('assets/') }}libs/fancyuploder/jquery.fileupload.js"></script>
  320. <script src="{{ asset('assets/') }}libs/fancyuploder/jquery.iframe-transport.js"></script>
  321. <script src="{{ asset('assets/') }}libs/fancyuploder/jquery.fancy-fileupload.js"></script>
  322. <!--Internal  Sweet-Alert js-->
  323. <script src="{{ asset('assets/') }}libs/sweetalert2/sweetalert2.min.js"></script>
  324. {#<script src="{{ asset('assets/') }}js/sweet-alerts.js"></script>#}
  325. <!--  steps -->
  326. <script src="{{ asset('assets/') }}libs/jquery-steps/jquery.steps.min.js"></script>
  327. <script src="{{ asset('assets/') }}libs/parsleyjs/parsley.min.js"></script>
  328. <!-- Date & Time Picker JS -->
  329. <script src="{{ asset('assets/') }}libs/flatpickr/flatpickr.min.js"></script>
  330. <script src="{{ asset('assets/') }}js/date&time_pickers.js"></script>
  331. <script src="https://npmcdn.com/flatpickr/dist/l10n/es.js"></script>
  332. <!-- SELECT2 JS -->
  333. <script src="https://cdn.jsdelivr.net/npm/select2@4.1.0-rc.0/dist/js/select2.min.js"></script>
  334. <!-- Internal multiSelect.min js -->
  335. <script src="{{ asset('assets/') }}/libs/multiselect/bootstrap-multiselect.min.js"></script>
  336. <!-- Internal multiSelect V2.min js -->
  337. <script src="{{ asset ('assets') }}/libs/multi-select/js/jquery.multi-select.js"></script> <!-- Multi Select Plugin Js -->
  338. <!-- Fileupload JS -->
  339. <!-- Filepond JS -->
  340. <script src="{{ asset('assets/') }}libs/filepond/filepond.min.js"></script>
  341. <script src="{{ asset('assets/') }}libs/filepond-plugin-image-preview/filepond-plugin-image-preview.min.js"></script>
  342. <script src="{{ asset('assets/') }}libs/filepond-plugin-image-exif-orientation/filepond-plugin-image-exif-orientation.min.js"></script>
  343. <script src="{{ asset('assets/') }}libs/filepond-plugin-file-validate-size/filepond-plugin-file-validate-size.min.js"></script>
  344. <script src="{{ asset('assets/') }}libs/filepond-plugin-file-encode/filepond-plugin-file-encode.min.js"></script>
  345. <script src="{{ asset('assets/') }}libs/filepond-plugin-image-edit/filepond-plugin-image-edit.min.js"></script>
  346. <script src="{{ asset('assets/') }}libs/filepond-plugin-file-validate-type/filepond-plugin-file-validate-type.min.js"></script>
  347. <script src="{{ asset('assets/') }}libs/filepond-plugin-file-validate-type/filepond-plugin-file-validate-type.min.js"></script>
  348. <script src="{{ asset('assets/') }}libs/filepond-plugin-image-crop/filepond-plugin-image-crop.min.js"></script>
  349. <script src="{{ asset('assets/') }}libs/filepond-plugin-image-resize/filepond-plugin-image-resize.min.js"></script>
  350. <script src="{{ asset('assets/') }}libs/filepond-plugin-image-transform/filepond-plugin-image-transform.min.js"></script>
  351. {#NGPROGRESS #}
  352. <script src="https://unpkg.com/nprogress@0.2.0/nprogress.js"></script>
  353. <script src="{{ asset('assets/') }}libs/floating-labels-material-inputs/materialize-inputs.jquery.js"></script>
  354. <script type="text/javascript">
  355.     $(window).on("load", function () {
  356.         $("a").prop('disabled', true);
  357.     })
  358.     $(document).ready(function () {
  359.         $("a").prop('disabled', false);
  360.         normalizacionFormulario($(document.body));
  361.         normalizacionTablas('container-fluid');
  362.         btnTrash('container-fluid');
  363.         var state = "";
  364.         var message = "";
  365.         {% for message in app.flashes('success') %}
  366.         state = 'success';
  367.         message = '{{ message |raw }}';
  368.         {% endfor %}
  369.         {% for message in app.flashes('info') %}
  370.         state = 'info';
  371.         message = '{{ message |raw }}';
  372.         {% endfor %}
  373.         {% for message in app.flashes('warning') %}
  374.         state = 'warning';
  375.         message = '{{ message |raw }}';
  376.         {% endfor %}
  377.         {% for message in app.flashes('danger') %}
  378.         state = 'error';
  379.         message = '{{ message |raw }}';
  380.         {% endfor %}
  381.         if (state != "") {
  382.             Swal.fire({
  383.                 title: message,
  384.                 icon: state,
  385.                 showCloseButton: true,
  386.                 showCancelButton: false,
  387.                 focusConfirm: false,
  388.                 confirmButtonColor: '#c61414',
  389.                 timer: 5000,
  390.             })
  391.         }
  392.         // $('.nav-tabs').scrollTabs();
  393.         //breadcumb
  394.         /*
  395.         textNavigation = "";
  396.         $.ajax({
  397.             type: "GET",
  398.             url: "app_homepage_managebreadcrumb",
  399.             success: function (data) {
  400.                 textNavigation = data;
  401.                 try {
  402.                     navigationTree = JSON.parse(textNavigation);
  403.                     navigationTree.forEach(function (element, index) {
  404.                         Object.keys(element).forEach(function (key) {
  405.                             //  var value = element[key];
  406.                             if ((navigationTree.length - 1) >= index) {
  407.                                 if (window.location.pathname == element[key]) {
  408.                                     $("#sysmainbreadcrumb").append('<li class="breadcrumb-item active" aria-current="page">' + key + '</li>');
  409.                                 }
  410.                                 if (window.location.pathname != element[key]) {
  411.                                     $("#sysmainbreadcrumb").append('<li class="breadcrumb-item" aria-current="page"><a class="sysbreadcrumb" href="' + element[key] + '" >' + key + '</a></li>');
  412.                                 }
  413.                             }
  414.                         });
  415.                     });
  416.                     $(".sysbreadcrumb").each(function (key, element) {
  417.                         if (!$(this).hasClass('ajax')) {
  418.                             $(this).on('click', function (e) {
  419.                                 $.ajax({
  420.                                     type: "POST",
  421.                                     url: "app_homepage_managebreadcrumb",
  422.                                     data: {key: $(this).text().trim(), value: $(this).attr('href').trim()},
  423.                                     success: function (data) {
  424.                                         console.log(data)
  425.                                     },
  426.                                     error: function (data) {
  427.                                         console.log("data failure comunication.." + data)
  428.                                     },
  429.                                     dataType: 'text/javascript'
  430.                                 });
  431.                             });
  432.                         }
  433.                     });
  434.                 } catch (e) {
  435.                     //Error
  436.                     //JSON is not okay
  437.                     return false;
  438.                 }
  439.             },
  440.             error: function (data) {
  441.                 console.log("data failure comunication.." + data)
  442.             }
  443.         });
  444.         */
  445.         //load modal by redirect.
  446.         {% if app.session.get('loadModalRequest') %}
  447.         urlModalGet = "{{ app.session.get('loadModalRequest') }}";
  448.         tmo = $('<a>', {
  449.             text: 'lod_modal_get',
  450.             href: urlModalGet,
  451.             class: 'ajax'
  452.         });
  453.         $(tmo).on('click', loadPopUp);
  454.         $(tmo).click();
  455.         console.log(urlModalGet);
  456.         console.log(tmo);
  457.         {%endif %}
  458.         const toggled = html.getAttribute('data-toggled');
  459.         if (
  460.             toggled === 'close' &&
  461.             window.innerWidth >= 992 &&
  462.             !$('.app').hasClass('sidenav-toggled')
  463.         ) {
  464.             $('.app').addClass('sidenav-toggled');
  465.         }
  466.     });
  467.     function normalizacionFormulario(form2, form2Load = false) {
  468.         // fix select2 bootstrap modal scroll bug
  469.         // Fetch all the forms we want to apply custom Bootstrap validation styles to
  470.         const forms = $("#" + $(form2).attr('id') + " form");
  471.         /* Loop over them and prevent submission */
  472.         Array.from(forms).forEach(form => {
  473.             if (!$(form).hasClass('ff_fileupload_hidden') || form2Load == true) {
  474.                 //if (!$(form).hasClass('wizard')) {
  475.                 form.setAttribute('novalidate', true);
  476.                 form.addEventListener('submit', event => {
  477.                     $.each($('select ,textarea,input', $(form).attr('id')), function (k) {
  478.                         var $labelReq = $("label[for='" + this.id + "']");
  479.                         if ($(this).is('textarea') && $(this).attr("required") && (!$(this).val() || $(this).val() == "<p>&nbsp;<br></p>")) {
  480.                             $labelReq.next('i').remove();
  481.                             $labelReq.after('&nbsp<i class="fas fa-exclamation-triangle"></i>');
  482.                         }
  483.                         if ($(this).is('select') && $(this).attr("required") && (!$(this).val() || $(this).val().length == 0)) {
  484.                             $labelReq.next('i').remove();
  485.                             $labelReq.after('&nbsp<i class="fas fa-exclamation-triangle "></i>');
  486.                         }
  487.                         if ($(this).is('input') && $(this).attr("required") && $(this).hasClass('readyCalendar')) {
  488.                             $labelReq.next('i').remove();
  489.                             $labelReq.after('&nbsp<i class="fas fa-exclamation-triangle "></i>');
  490.                         }
  491.                     });
  492.                     if (!form.checkValidity()) {
  493.                         event.preventDefault();
  494.                         event.stopPropagation();
  495.                         form.classList.add('not-valid');
  496.                     }
  497.                     form.classList.add('was-validated')
  498.                 }, false);
  499.                 //   }
  500.                 $.each($('input, select ,textarea, date, datetime, checkbox', $(form).attr('id')), function (k) {
  501.                     var $label = $("label[for='" + this.id + "']");
  502.                     if ($(this).is('select')) {
  503.                         parentSelect = $(this).closest('div.modal');
  504.                         if (parentSelect.length == 0) {
  505.                             parentSelect = $(this).closest('div.card-body');
  506.                         }
  507.                         enabledSelect = false;
  508.                         if ($(this).prop('multiple') && !$(this).hasClass('nonSelectMultiple')) {
  509.                             if ($(this).hasClass('selectReady')) {
  510.                                 $(this).multiselect('destroy');
  511.                                 $(this).next('div.btn-group').remove();
  512.                             }
  513.                             $(this).multiselect({enableClickableOptGroups: true,
  514.                                 enableCollapsibleOptGroups: true,
  515.                                 collapseOptGroupsByDefault: true,
  516.                                 maxHeight: 200,
  517.                                 enableCaseInsensitiveFiltering: true,
  518.                                 enableFiltering: true,
  519.                                 buttonWidth: '100%',
  520.                                 nSelectedText: 'Elementos Seleccionado',
  521.                                 nonSelectedText: 'Seleccione una opción.',
  522.                                 filterPlaceholder: 'Buscar...',
  523.                                 templates: {
  524.                                     button: '<button type="button" class="multiselect dropdown-toggle btn btn-light" data-bs-toggle="dropdown" aria-expanded="false"><span class="multiselect-selected-text"></span></button>',
  525.                                     filter: '<div class="multiselect-filter"><div class="input-group input-group-sm p-1"><div class="input-group-prepend"><i class="input-group-text fas fa-search"></i></div><input class="form-control multiselect-search" type="text" /><div class="input-group-append"><button class="multiselect-clear-filter input-group-text" type="button"><i class="fas fa-times"></i></button></div></div></div>'
  526.                                 },
  527.                                 buttonText: function (options, select) {
  528.                                     if (options.length == 0) {
  529.                                         return 'Seleccione una opción.';
  530.                                     } else {
  531.                                         var selected = '';
  532.                                         options.each(function () {
  533.                                             selected += $(this).text() + ', ';
  534.                                         });
  535.                                         return selected.substr(0, selected.length - 2);
  536.                                     }
  537.                                 }
  538.                             });
  539.                         } else if ($(this).prop('multiple') && $(this).hasClass('multipleSelect')) {
  540.                             //select multiple ordenable
  541.                             if ($(this).hasClass('selectReady')) {
  542.                                 //   $(this).multiSelect('destroy');
  543.                             }
  544.                             //$(this).multiSelect({selectableOptgroup: true});
  545.                             $(this).removeClass('form-group');
  546.                             $(this).selectize({
  547.                                 plugins: ['remove_button', 'drag_drop']
  548.                             });
  549.                         } else {
  550.                             $(this).removeAttr('multiple');
  551.                             if ($(this).is('[readonly]') || $(this).is('[disabled]')) {
  552.                                 enabledSelect = true;
  553.                             }
  554.                             if ($(this).hasClass("select2-hidden-accessible")) {
  555.                                 $(this).select2("destroy")
  556.                                 $(this).next('span').remove();
  557.                             }
  558.                             $(this).select2({
  559.                                 placeholder: {
  560.                                     id: '-1', // the value of the option
  561.                                     text: 'Seleccione una opción'
  562.                                 },
  563.                                 searchInputPlaceholder: 'Buscar',
  564.                                 disabled: enabledSelect,
  565.                                 escapeMarkup: function (markup) {
  566.                                     return markup;
  567.                                 },
  568.                                 dropdownParent: $(parentSelect)
  569.                             }).on('select2:select', function (e) {
  570.                                 var $labelReq = $("label[for='" + this.id + "']");
  571.                                 $labelReq.next('i').remove();
  572.                             });
  573.                         }
  574.                         $(this).addClass('selectReady');
  575.                         //   $.fn.modal.Constructor.prototype._enforceFocus = function _enforceFocus() {};
  576.                         //   $.fn.modal.Constructor.prototype._enforceFocus = function() {};
  577.                         //$.fn.modal.Constructor.prototype._enforceFocus = function () {};
  578.                         //$.fn.modal.Constructor.prototype.enforceFocus = function() {};//v3 z
  579.                         /*
  580.                          $(this).selectpicker('destroy');
  581.                          $(this).select2({width: '100%'});*/
  582.                     } else if ($(this).hasClass('fc-datepicker-month')) {
  583.                         /* To choose date */
  584.                         $(this).addClass('form-control');
  585.                         var calendar = flatpickr("#" + $(this).attr('id'), {'locale': 'es'});
  586.                         calendar = flatpickr("#" + $(this).attr('id'), {'locale': 'es', static: true});
  587.                         $(this).addClass('readyCalendar');
  588.                     } else if ($(this).hasClass('fc-datepicker')) {
  589.                         $(this).addClass('form-control');
  590.                         //   if (!$(this).hasClass('readyCalendar')) {
  591.                         flatpickr("#" + $(this).attr('id'), {'locale': 'es', static: true});
  592.                         $(this).addClass('readyCalendar');
  593.                         //  }
  594.                     } else if ($(this).hasClass('fc-datetimepicker')) {
  595.                         $(this).addClass('form-control');
  596.                         flatpickr("#" + $(this).attr('id'), {'locale': 'es', enableTime: true, dateFormat: "Y-m-d H:i", static: true});
  597.                         $(this).addClass('readyCalendar');
  598.                     } else if ($(this).is('input:file')) {
  599.                         //fancy file upload condicional para ver si el campo es multiple
  600.                        /* if ($(this).is('input:file') && $(this).prop('multiple') === true) {
  601.                             $(this).removeAttr('required');
  602.                             inicializarFancyFileUpload(this, 40); // ✔ correcto
  603.                         }
  604.                         */
  605.                         if (!$(this).hasClass('documentReady')) {
  606.                             $(this).addClass('file');
  607.                             $(this).addClass('form-control');
  608.                         }
  609.                         $(this).addClass('documentReady');
  610.                         if ($(this).hasClass('ff_fileupload_hidden')) {
  611.                             $(this).css({'display': 'none'});
  612.                         }
  613.                     } else if ($(this).is('input:checkbox')) {
  614.                         $label = $(this).prev('label');
  615.                         if ($label.length == 0) {
  616.                             $label = $(this).next('label');
  617.                         }
  618.                         if (!$($label).hasClass('label-success')) {
  619.                             $label.addClass("label-success");
  620.                             textTmp = $label.text();
  621.                             cont = $(this).closest('div.form-group');
  622.                             if (cont.length == 0) {
  623.                                 cont = $(this).closest('div.custom-control');
  624.                             }
  625.                             $(cont).append('<div class="custom-toggle-switch d-flex align-items-center mb-4"></div>');
  626.                             //console.log(cont);
  627.                             element = $(this).next('div.custom-toggle-switch');
  628.                             if (element.length == 0) {
  629.                                 element = $($label).next('div.custom-toggle-switch');
  630.                             }
  631.                             $(this).appendTo($(element));
  632.                             $($label).appendTo($(element));
  633.                             $("<span class='ms-3'><label>" + textTmp + "</label></span>").appendTo($(element));
  634.                             $label.text("");
  635.                             $(this).hide();
  636.                         }
  637.                     } else if ($(this).is('textarea')) {
  638.                         disText = false;
  639.                         if ($(this).prop('disabled') || $(this).prop('readonly')) {
  640.                             disText = true;
  641.                         }
  642.                         if ($(this).hasClass('summernote')) {
  643.                             $(this).summernote('destroy');
  644.                             $(this).next('div.note-editor').remove();
  645.                         }
  646.                         $(this).addClass('summernote');
  647.                         if (!disText) {
  648.                             $(this).summernote({
  649.                                 height: 158, // set editor height
  650.                                 lang: 'es-ES', // SET Language
  651.                                 toolbar: [
  652.                                     // [groupName, [list of button]]
  653.                                     ['style', ['bold', 'italic', 'underline']],
  654.                                     //['font', ['strikethrough', 'superscript', 'subscript']],
  655.                                     ['fontsize', ['fontsize']],
  656.                                     ['table', ['table']],
  657.                                     ['para', ['ul', 'ol', 'paragraph']]
  658.                                     //  ['height', ['height']]
  659.                                 ],
  660.                                 callbacks: {
  661.                                     onChange: function (contents, $editable) {
  662.                                         var $labelReq = $("label[for='" + this.id + "']");
  663.                                         $labelReq.next('i').remove();
  664.                                     }
  665.                                 }
  666.                             });
  667.                         } else {
  668.                             $(this).summernote('disable');
  669.                         }
  670.                     } else if ($(this).is('input:submit')) {
  671.                     } else if ($(this).hasClass('moneda')) {
  672.                    formatearValor()
  673.                 }
  674.                 else if ($(this).hasClass('firma') && !$(this).hasClass('readyFirma')) {
  675.                         const $inputFirma = $(this);
  676.                         const padre = $inputFirma.closest('div');
  677.                         const inputId = $inputFirma.prop('id');
  678.                         const canvasId = "draw-canvas_" + inputId;
  679.                         const btnLimpiarId = "draw-clearBtn_" + inputId;
  680.                         const btnGuardarId = "draw-saveBtn_" + inputId;
  681.                         // Insertar canvas y botones
  682.                         padre.append(`
  683.                             <canvas id="${canvasId}" height="195" width="500" style="border: 2px dotted #CCCCCC; border-radius: 5px; cursor: crosshair; display: block;"></canvas>
  684.                             <br>
  685.                             <input type="button" class="btn btn-dark mt-2" id="${btnLimpiarId}" value="Limpiar">
  686.                             <input type="button" class="btn btn-success mt-2 ml-2" id="${btnGuardarId}" value="Guardar Firma">
  687.                         `);
  688.                         firmaDigital(canvasId, inputId, btnLimpiarId, btnGuardarId);
  689.                         $inputFirma.addClass('readyFirma').hide();
  690.                     }else if ($(this).is('input[type=range]')) {
  691.                         /*$(this).ionRangeSlider({
  692.                          min: 1,
  693.                          max: 10
  694.                          });*/
  695.                     } else if ($(this).is('input[type=radio]')) {
  696.                     } else if ($(this).is('input[type=text]') || $(this).is('input[type=number]') || $(this).is('input[type=email]')) {
  697.                         // if (!$(form).hasClass('wizard')) {
  698.                         $(this).addClass('form-control');
  699.                         $(this).removeAttr('placeholder');
  700.                         //$(this).append("<div class='invalid-feedback'>Looks good!</div>");
  701.                         if (!$(this).parent('div').hasClass('form-group')) {
  702.                             $(this).parent('div').addClass('input-material form-group');
  703.                             $(this).insertBefore($label);
  704.                         } else if ($(this).prev('label').length) {
  705.                             $(this).parent('div').addClass('input-material form-group');
  706.                             $label = $(this).prev('label');
  707.                             $(this).insertBefore($label);
  708.                         }
  709.                         //}
  710.                     }
  711.                     if (!$(this).is(':radio') && !$(this).is('input[type=checkbox]') && !$(this).hasClass('multipleSelect')) {
  712.                         $(this).addClass('form-control');
  713.                     }
  714.                     /* } if ($label.hasClass('field_required')) {
  715.                      if (!$(this).is(':radio')) {
  716.                      $label.prev().css('display', 'none');
  717.                      }
  718.                      $label.before("<i class='fas fa-angle-right' style='color:red'></i>");
  719.                      } else */
  720.                     if ($(this).prop('required') && (!$(this).is(':text') || $(this).hasClass('readyCalendar')) && !$(this).is('input[type=number]') && !$(this).is('input[type=email]')) { //|| $(form).hasClass('wizard')
  721.                         if (!$(this).is(':radio')) {
  722.                             $label.prev().css('display', 'none');
  723.                         }
  724.                         $label.before('<i class="fa-solid fa-star-of-life iconobligacion"></i>&nbsp');
  725.                     }
  726.                     $(form).materializeInputs();
  727.                 });
  728.             }
  729.         });
  730.         numFormInput = $('form.ff_fileupload_hidden').length;
  731.         //console.log(numFormInput);
  732.         $('form.ff_fileupload_hidden').each(function (index) {
  733.             //console.log(index + 1);
  734.             if ((index + 1) < numFormInput) {
  735.                 if ($(this).attr('action').length === 0) {
  736.                     $(this).remove();
  737.                 } else {
  738.                     console.log($(this))
  739.                 }
  740.             } else {
  741.                 if ($(this).attr('action').length === 0) {
  742.                     $(this).remove();
  743.                 } else {
  744.                     console.log($(this))
  745.                 }
  746.             }
  747.         });
  748.         $('textarea.summernote').each(function (index) {
  749.             $(this).trigger('summernote.change');
  750.         });
  751.     }
  752. </script>
  753. <!--script para validar la conexion a HOME OFFICE -->
  754. <script>
  755.     document.addEventListener('DOMContentLoaded', function() {
  756.         $.ajax({
  757.             type: 'POST',
  758.             url: '{{ path("app_seg_home_office_validar_conexion") }}',
  759.             dataType: 'json',
  760.             headers: { 'X-Requested-With': 'XMLHttpRequest' },
  761.             success: function(info) {
  762.                 if (info.tipo === 'activo') {
  763.                     $('#homeOfficeLink')
  764.                         .removeClass('text-danger')
  765.                         .css('color', 'greenyellow');
  766.                 }
  767.             },
  768.             error: function(xhr, status, err) {
  769.                 console.error('Error validando HO:', status, err);
  770.             }
  771.         });
  772.     });
  773. </script>
  774. <!-- Modal Obj -->
  775. <script src="{{ asset('assets/') }}js/modalObj.js"></script>
  776. <!--Internal  Firma digital js -->
  777. <script src="{{ asset('assets/') }}js/firmaDigital.js"></script>
  778. <!--Internal  Formulario js -->
  779. <script src="{{ asset('assets/') }}js/formDinamic.js"></script>
  780. <!--Internal  Fileupload js -->
  781. <!--Se trae la funcion del script -->
  782. <script src="{{ asset('assets/') }}js/logic_fileupload.js"></script>
  783. <!--Internal  validarPeso js -->
  784. <script src="{{ asset('assets/') }}js/logic_validarPeso.js"></script>
  785. <!--Internal  normalizacion tablas js -->
  786. <script src="{{ asset('assets/') }}js/logic_normalizacionTablas.js"></script>
  787. <!--Internal  normalizacion tablas js -->
  788. <script>
  789.     const rutaDesconexion = "{{ path('app_seg_home_office_new') }}";
  790. </script>
  791. <script src="{{ asset('assets/') }}js/logic_Logout.js"></script>
  792. <!--Normalizacion campos con precio js -->
  793. <script src="{{ asset('assets/') }}js/logic_formateoNumero.js"></script>
  794. <!--Normalizacion Campos a calificar js -->
  795. <script src="{{ asset('assets/') }}js/logic_camposCalificativos.js"></script>
  796. <!--Activacion de Camaras js -->
  797. <script src="{{ asset('assets/') }}js/logic_cameraActivate.js"></script>
  798. <!--Activacion de recargar modal al eliminar tablas quemadas js -->
  799. <script src="{{ asset('assets/') }}js/logic_alertasEliminacionTablaQuemada.js"></script>
  800. <script src="{{ asset('assets/') }}js/logic_recargarModal.js"></script>
  801. <!--Activacion de alertas js -->
  802. <script src="{{ asset('assets/') }}js/alerts.js"></script>
  803. <!-- Realizar peticiones ajax -->
  804. <script src="{{ asset('assets/') }}js/ajax.js"></script>
  805. {% block scripts %} {% endblock %}
  806. </body>
  807. </html>