Loading resources/views/adminGen/catalogos/dependencias.blade.php +15 −49 Original line number Diff line number Diff line Loading @@ -213,63 +213,29 @@ function editItem(id, nombre) { })); }); showMessage = (msg = 'Example notification text.', position = 'top-end', showCloseButton = true, closeButtonHtml = '', duration = 3000, type = 'success') => { const toast = window.Swal.mixin({ toast: true, position: position || 'top-end', showConfirmButton: false, timer: duration, showCloseButton: showCloseButton, customClass: { container: 'custom-swal-container', popup: 'custom-swal-popup', title: 'custom-swal-title', } }); // Define el color y el icono según el tipo de mensaje let color; let icon; if (type === 'success') { color = '#4caf50'; // Color verde para éxito icon = 'success'; // Icono de éxito } else if (type === 'error') { color = '#f44336'; // Color rojo para error icon = 'error'; // Icono de error } // Aplica el estilo al mensaje toast.fire({ title: msg, function showToast(message, heading, icon) { $.toast({ heading: heading, text: message, showHideTransition: 'slide', icon: icon, showClass: { popup: 'swal2-noanimation', }, hideClass: { popup: '', }, customClass: { title: 'swal2-title', popup: 'swal2-popup', icon: 'swal2-icon', }, timerProgressBar: true, timerProgressBarColor: color, timerProgressBarHeight: 3, background: color, iconColor: 'white', position: 'top-right', loader: false, hideAfter: 10000, allowToastClose: true, textColor: '#676767', }); }; } document.addEventListener('DOMContentLoaded', function() { @if(session('success')) // Muestra el mensaje de éxito utilizando showMessage showMessage("{{ session('success') }}", 'top-end', true, '', 3000, 'success'); showToast("{{ session('success') }}", 'Exito.', 'success') @endif @if($errors->any()) @foreach($errors->all() as $error) showMessage("{{$error}}", 'top-end', true, '', 3000, 'error'); showToast(`{{ $error }}`, 'Error.', 'error'); @endforeach @endif }); Loading resources/views/adminGen/usuarios/create.blade.php +40 −63 Original line number Diff line number Diff line Loading @@ -27,31 +27,43 @@ <div class="grid grid-cols-1 md:grid-cols-2 gap-5"> <div> <label for="name">Nombre</label> <input id="name" name="name" type="text" placeholder="Ingresa el nombre" class="form-input" /> <input id="name" name="name" type="text" required placeholder="Ingresa el nombre" class="form-input" /> </div> <div> <label for="username">Usuario</label> <div class="flex"> <div class="bg-[#eee] flex justify-center items-center ltr:rounded-l-md rtl:rounded-r-md px-3 font-semibold border ltr:border-r-0 rtl:border-l-0 border-[#e0e6ed] dark:border-[#17263c] dark:bg-[#1b2e4b]"> @</div> <input id="username" name="username" type="text" placeholder="Ingresa el usuario" class="form-input ltr:rounded-l-none rtl:rounded-r-none" /> <input id="username" name="username" type="text" required placeholder="Ingresa el usuario" class="form-input ltr:rounded-l-none rtl:rounded-r-none" /> </div> </div> <div> <label for="password">Contraseña</label> <input id="password" name="password" type="password" placeholder="Ingresa la contraseña" class="form-input" /> <input id="password" name="password" type="password" required placeholder="Ingresa la contraseña" class="form-input" /> </div> <div> <label for="password_confirmation">Repetir contraseña</label> <input id="password_confirmation" name="password_confirmation" type="password" placeholder="Repite la contraseña" class="form-input" /> <input id="password_confirmation" name="password_confirmation" type="password" required placeholder="Repite la contraseña" class="form-input" /> </div> </div> <div class="grid grid-cols-1 md:grid-cols-3 gap-5"> <div class="mb-5"> <select id="dependencia_id" name="dependencia_id"> <label for="dependencia_id">Dependencia</label> <select id="dependencia_id" name="dependencia_id" required class="block w-full py-2 px-3 border border-gray-300 bg-white rounded-md shadow-sm focus:outline-none focus:ring-indigo-500 focus:border-indigo-500 sm:text-sm"> @foreach($dependencias as $dependencia) <option value="{{ $dependencia->id }}">{{ $dependencia->nombre }}</option> @endforeach </select> </div> <div class="mb-5"> <label for="role">Rol</label> <select id="role" name="role" required class="block w-full py-2 px-3 border border-gray-300 bg-white rounded-md shadow-sm focus:outline-none focus:ring-indigo-500 focus:border-indigo-500 sm:text-sm"> @foreach($roles as $role) <option value="{{ $role->name }}">{{ $role->name }}</option> @endforeach </select> </div> <div class="flex items-center"> <span class="mr-2">¿Activar usuario?</span> <label class="w-12 h-6 relative"> Loading @@ -70,6 +82,9 @@ <script src="/assets/js/highlight.min.js"></script> <script src="/assets/js/nice-select2.js"></script> <script src="https://code.jquery.com/jquery-3.6.0.min.js"></script> <link rel="stylesheet" href="/assets/css/jquery.toast.css"> <script src="/assets/js/jquery.toast.js"></script> <script> document.addEventListener("DOMContentLoaded", function(e) { Loading @@ -84,6 +99,7 @@ searchable: true }; NiceSelect.bind(document.getElementById("dependencia_id"), options); NiceSelect.bind(document.getElementById("role"), options); document.querySelectorAll('.nice-select .current').forEach(el => { if (el.textContent.trim() === 'Select an option') { Loading Loading @@ -124,64 +140,25 @@ })); }); showMessage = (msg = 'Example notification text.', position = 'top-end', showCloseButton = true, closeButtonHtml = '', duration = 3000, type = 'success') => { const toast = window.Swal.mixin({ toast: true, position: position || 'top-end', showConfirmButton: false, timer: duration, showCloseButton: showCloseButton, customClass: { container: 'custom-swal-container', popup: 'custom-swal-popup', title: 'custom-swal-title', } }); // Define el color y el icono según el tipo de mensaje let color; let icon; if (type === 'success') { color = '#4caf50'; // Color verde para éxito icon = 'success'; // Icono de éxito } else if (type === 'error') { color = '#f44336'; // Color rojo para error icon = 'error'; // Icono de error } // Aplica el estilo al mensaje toast.fire({ title: msg, function showToast(message, heading, icon) { $.toast({ heading: heading, text: message, showHideTransition: 'slide', icon: icon, showClass: { popup: 'swal2-noanimation', }, hideClass: { popup: '', }, customClass: { title: 'swal2-title', popup: 'swal2-popup', icon: 'swal2-icon', }, timerProgressBar: true, timerProgressBarColor: color, timerProgressBarHeight: 3, background: color, iconColor: 'white', position: 'top-right', loader: false, hideAfter: 10000, allowToastClose: true, textColor: '#676767', }); }; } document.addEventListener('DOMContentLoaded', function() { @if(session('success')) // Muestra el mensaje de éxito utilizando showMessage showMessage("{{ session('success') }}", 'top-end', true, '', 3000, 'success'); @endif @if($errors->any()) @foreach($errors->all() as $error) console.log("{{$error}}"); showMessage("{{$error}}", 'top-end', true, '', 3000, 'error'); showToast(`{{ $error }}`, 'Error', 'error'); @endforeach @endif }); Loading resources/views/adminGen/usuarios/index.blade.php +19 −51 Original line number Diff line number Diff line Loading @@ -37,6 +37,10 @@ <link rel="stylesheet" href="{{ Vite::asset('resources/css/highlight.min.css') }}"> <script src="/assets/js/highlight.min.js"></script> <script src="https://code.jquery.com/jquery-3.6.0.min.js"></script> <link rel="stylesheet" href="/assets/css/jquery.toast.css"> <script src="/assets/js/jquery.toast.js"></script> <script> const usuarios = @json($usuarios); const data = usuarios.map(user => [user.username, user.name, user.roles[0].name, user.dependencia.nombre, renderIsActive(user.active), renderActions(user.id, user.name)]); Loading Loading @@ -86,67 +90,31 @@ function renderIsActive(bool) { info: "Mostrando {start} a {end} de {rows} filas", }, }); window.editItem = editItem; }); showMessage = (msg = 'Example notification text.', position = 'top-end', showCloseButton = true, closeButtonHtml = '', duration = 3000, type = 'success') => { const toast = window.Swal.mixin({ toast: true, position: position || 'top-end', showConfirmButton: false, timer: duration, showCloseButton: showCloseButton, customClass: { container: 'custom-swal-container', popup: 'custom-swal-popup', title: 'custom-swal-title', } }); // Define el color y el icono según el tipo de mensaje let color; let icon; if (type === 'success') { color = '#4caf50'; // Color verde para éxito icon = 'success'; // Icono de éxito } else if (type === 'error') { color = '#f44336'; // Color rojo para error icon = 'error'; // Icono de error } // Aplica el estilo al mensaje toast.fire({ title: msg, function showToast(message, heading, icon) { $.toast({ heading: heading, text: message, showHideTransition: 'slide', icon: icon, showClass: { popup: 'swal2-noanimation', }, hideClass: { popup: '', }, customClass: { title: 'swal2-title', popup: 'swal2-popup', icon: 'swal2-icon', }, timerProgressBar: true, timerProgressBarColor: color, timerProgressBarHeight: 3, background: color, iconColor: 'white', position: 'top-right', loader: false, hideAfter: 10000, allowToastClose: true, textColor: '#676767', }); }; } document.addEventListener('DOMContentLoaded', function() { @if(session('success')) // Muestra el mensaje de éxito utilizando showMessage showMessage("{{ session('success') }}", 'top-end', true, '', 3000, 'success'); showToast("{{ session('success') }}", 'Exito.', 'success') @endif @if($errors->any()) @foreach($errors->all() as $error) showMessage("{{$error}}", 'top-end', true, '', 3000, 'error'); showToast(`{{ $error }}`, 'Error.', 'error'); @endforeach @endif }); Loading Loading
resources/views/adminGen/catalogos/dependencias.blade.php +15 −49 Original line number Diff line number Diff line Loading @@ -213,63 +213,29 @@ function editItem(id, nombre) { })); }); showMessage = (msg = 'Example notification text.', position = 'top-end', showCloseButton = true, closeButtonHtml = '', duration = 3000, type = 'success') => { const toast = window.Swal.mixin({ toast: true, position: position || 'top-end', showConfirmButton: false, timer: duration, showCloseButton: showCloseButton, customClass: { container: 'custom-swal-container', popup: 'custom-swal-popup', title: 'custom-swal-title', } }); // Define el color y el icono según el tipo de mensaje let color; let icon; if (type === 'success') { color = '#4caf50'; // Color verde para éxito icon = 'success'; // Icono de éxito } else if (type === 'error') { color = '#f44336'; // Color rojo para error icon = 'error'; // Icono de error } // Aplica el estilo al mensaje toast.fire({ title: msg, function showToast(message, heading, icon) { $.toast({ heading: heading, text: message, showHideTransition: 'slide', icon: icon, showClass: { popup: 'swal2-noanimation', }, hideClass: { popup: '', }, customClass: { title: 'swal2-title', popup: 'swal2-popup', icon: 'swal2-icon', }, timerProgressBar: true, timerProgressBarColor: color, timerProgressBarHeight: 3, background: color, iconColor: 'white', position: 'top-right', loader: false, hideAfter: 10000, allowToastClose: true, textColor: '#676767', }); }; } document.addEventListener('DOMContentLoaded', function() { @if(session('success')) // Muestra el mensaje de éxito utilizando showMessage showMessage("{{ session('success') }}", 'top-end', true, '', 3000, 'success'); showToast("{{ session('success') }}", 'Exito.', 'success') @endif @if($errors->any()) @foreach($errors->all() as $error) showMessage("{{$error}}", 'top-end', true, '', 3000, 'error'); showToast(`{{ $error }}`, 'Error.', 'error'); @endforeach @endif }); Loading
resources/views/adminGen/usuarios/create.blade.php +40 −63 Original line number Diff line number Diff line Loading @@ -27,31 +27,43 @@ <div class="grid grid-cols-1 md:grid-cols-2 gap-5"> <div> <label for="name">Nombre</label> <input id="name" name="name" type="text" placeholder="Ingresa el nombre" class="form-input" /> <input id="name" name="name" type="text" required placeholder="Ingresa el nombre" class="form-input" /> </div> <div> <label for="username">Usuario</label> <div class="flex"> <div class="bg-[#eee] flex justify-center items-center ltr:rounded-l-md rtl:rounded-r-md px-3 font-semibold border ltr:border-r-0 rtl:border-l-0 border-[#e0e6ed] dark:border-[#17263c] dark:bg-[#1b2e4b]"> @</div> <input id="username" name="username" type="text" placeholder="Ingresa el usuario" class="form-input ltr:rounded-l-none rtl:rounded-r-none" /> <input id="username" name="username" type="text" required placeholder="Ingresa el usuario" class="form-input ltr:rounded-l-none rtl:rounded-r-none" /> </div> </div> <div> <label for="password">Contraseña</label> <input id="password" name="password" type="password" placeholder="Ingresa la contraseña" class="form-input" /> <input id="password" name="password" type="password" required placeholder="Ingresa la contraseña" class="form-input" /> </div> <div> <label for="password_confirmation">Repetir contraseña</label> <input id="password_confirmation" name="password_confirmation" type="password" placeholder="Repite la contraseña" class="form-input" /> <input id="password_confirmation" name="password_confirmation" type="password" required placeholder="Repite la contraseña" class="form-input" /> </div> </div> <div class="grid grid-cols-1 md:grid-cols-3 gap-5"> <div class="mb-5"> <select id="dependencia_id" name="dependencia_id"> <label for="dependencia_id">Dependencia</label> <select id="dependencia_id" name="dependencia_id" required class="block w-full py-2 px-3 border border-gray-300 bg-white rounded-md shadow-sm focus:outline-none focus:ring-indigo-500 focus:border-indigo-500 sm:text-sm"> @foreach($dependencias as $dependencia) <option value="{{ $dependencia->id }}">{{ $dependencia->nombre }}</option> @endforeach </select> </div> <div class="mb-5"> <label for="role">Rol</label> <select id="role" name="role" required class="block w-full py-2 px-3 border border-gray-300 bg-white rounded-md shadow-sm focus:outline-none focus:ring-indigo-500 focus:border-indigo-500 sm:text-sm"> @foreach($roles as $role) <option value="{{ $role->name }}">{{ $role->name }}</option> @endforeach </select> </div> <div class="flex items-center"> <span class="mr-2">¿Activar usuario?</span> <label class="w-12 h-6 relative"> Loading @@ -70,6 +82,9 @@ <script src="/assets/js/highlight.min.js"></script> <script src="/assets/js/nice-select2.js"></script> <script src="https://code.jquery.com/jquery-3.6.0.min.js"></script> <link rel="stylesheet" href="/assets/css/jquery.toast.css"> <script src="/assets/js/jquery.toast.js"></script> <script> document.addEventListener("DOMContentLoaded", function(e) { Loading @@ -84,6 +99,7 @@ searchable: true }; NiceSelect.bind(document.getElementById("dependencia_id"), options); NiceSelect.bind(document.getElementById("role"), options); document.querySelectorAll('.nice-select .current').forEach(el => { if (el.textContent.trim() === 'Select an option') { Loading Loading @@ -124,64 +140,25 @@ })); }); showMessage = (msg = 'Example notification text.', position = 'top-end', showCloseButton = true, closeButtonHtml = '', duration = 3000, type = 'success') => { const toast = window.Swal.mixin({ toast: true, position: position || 'top-end', showConfirmButton: false, timer: duration, showCloseButton: showCloseButton, customClass: { container: 'custom-swal-container', popup: 'custom-swal-popup', title: 'custom-swal-title', } }); // Define el color y el icono según el tipo de mensaje let color; let icon; if (type === 'success') { color = '#4caf50'; // Color verde para éxito icon = 'success'; // Icono de éxito } else if (type === 'error') { color = '#f44336'; // Color rojo para error icon = 'error'; // Icono de error } // Aplica el estilo al mensaje toast.fire({ title: msg, function showToast(message, heading, icon) { $.toast({ heading: heading, text: message, showHideTransition: 'slide', icon: icon, showClass: { popup: 'swal2-noanimation', }, hideClass: { popup: '', }, customClass: { title: 'swal2-title', popup: 'swal2-popup', icon: 'swal2-icon', }, timerProgressBar: true, timerProgressBarColor: color, timerProgressBarHeight: 3, background: color, iconColor: 'white', position: 'top-right', loader: false, hideAfter: 10000, allowToastClose: true, textColor: '#676767', }); }; } document.addEventListener('DOMContentLoaded', function() { @if(session('success')) // Muestra el mensaje de éxito utilizando showMessage showMessage("{{ session('success') }}", 'top-end', true, '', 3000, 'success'); @endif @if($errors->any()) @foreach($errors->all() as $error) console.log("{{$error}}"); showMessage("{{$error}}", 'top-end', true, '', 3000, 'error'); showToast(`{{ $error }}`, 'Error', 'error'); @endforeach @endif }); Loading
resources/views/adminGen/usuarios/index.blade.php +19 −51 Original line number Diff line number Diff line Loading @@ -37,6 +37,10 @@ <link rel="stylesheet" href="{{ Vite::asset('resources/css/highlight.min.css') }}"> <script src="/assets/js/highlight.min.js"></script> <script src="https://code.jquery.com/jquery-3.6.0.min.js"></script> <link rel="stylesheet" href="/assets/css/jquery.toast.css"> <script src="/assets/js/jquery.toast.js"></script> <script> const usuarios = @json($usuarios); const data = usuarios.map(user => [user.username, user.name, user.roles[0].name, user.dependencia.nombre, renderIsActive(user.active), renderActions(user.id, user.name)]); Loading Loading @@ -86,67 +90,31 @@ function renderIsActive(bool) { info: "Mostrando {start} a {end} de {rows} filas", }, }); window.editItem = editItem; }); showMessage = (msg = 'Example notification text.', position = 'top-end', showCloseButton = true, closeButtonHtml = '', duration = 3000, type = 'success') => { const toast = window.Swal.mixin({ toast: true, position: position || 'top-end', showConfirmButton: false, timer: duration, showCloseButton: showCloseButton, customClass: { container: 'custom-swal-container', popup: 'custom-swal-popup', title: 'custom-swal-title', } }); // Define el color y el icono según el tipo de mensaje let color; let icon; if (type === 'success') { color = '#4caf50'; // Color verde para éxito icon = 'success'; // Icono de éxito } else if (type === 'error') { color = '#f44336'; // Color rojo para error icon = 'error'; // Icono de error } // Aplica el estilo al mensaje toast.fire({ title: msg, function showToast(message, heading, icon) { $.toast({ heading: heading, text: message, showHideTransition: 'slide', icon: icon, showClass: { popup: 'swal2-noanimation', }, hideClass: { popup: '', }, customClass: { title: 'swal2-title', popup: 'swal2-popup', icon: 'swal2-icon', }, timerProgressBar: true, timerProgressBarColor: color, timerProgressBarHeight: 3, background: color, iconColor: 'white', position: 'top-right', loader: false, hideAfter: 10000, allowToastClose: true, textColor: '#676767', }); }; } document.addEventListener('DOMContentLoaded', function() { @if(session('success')) // Muestra el mensaje de éxito utilizando showMessage showMessage("{{ session('success') }}", 'top-end', true, '', 3000, 'success'); showToast("{{ session('success') }}", 'Exito.', 'success') @endif @if($errors->any()) @foreach($errors->all() as $error) showMessage("{{$error}}", 'top-end', true, '', 3000, 'error'); showToast(`{{ $error }}`, 'Error.', 'error'); @endforeach @endif }); Loading