Akira-Kurusu commited on
Commit
9ac0d52
·
verified ·
1 Parent(s): cf0c049

Update web/users.html

Browse files
Files changed (1) hide show
  1. web/users.html +39 -21
web/users.html CHANGED
@@ -10,7 +10,7 @@
10
 
11
  <link rel="stylesheet" href="css/simplebar.css">
12
  <link href="https://fonts.googleapis.com/css2?family=Overpass:ital,wght@0,100;0,200;0,300;0,400;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,600;1,700;1,800;1,900&display=swap" rel="stylesheet">
13
- <link rel="stylesheet" href="css/feather.css">
14
  <link rel="stylesheet" href="css/app-light.css" id="lightTheme">
15
  <link rel="stylesheet" href="css/app-dark.css" id="darkTheme" disabled>
16
  </head>
@@ -20,7 +20,7 @@
20
  <!-- Top Navigation -->
21
  <nav class="topnav navbar navbar-light">
22
  <button type="button" class="navbar-toggler text-muted mt-2 p-0 mr-3 collapseSidebar">
23
- <i class="fe fe-menu navbar-toggler-icon"></i>
24
  </button>
25
 
26
  <ul class="nav">
@@ -40,7 +40,7 @@
40
  <!-- Sidebar -->
41
  <aside class="sidebar-left border-right bg-white shadow" id="leftSidebar" data-simplebar>
42
  <a href="#" class="btn collapseSidebar toggle-btn d-lg-none text-muted ml-2 mt-3" data-toggle="toggle">
43
- <i class="fe fe-x"><span class="sr-only"></span></i>
44
  </a>
45
  <nav class="vertnav navbar navbar-light">
46
  <!-- nav bar -->
@@ -53,31 +53,31 @@
53
  <ul class="navbar-nav flex-fill w-100 mb-2">
54
  <li class="nav-item">
55
  <a class="nav-link" href="./index.html">
56
- <i class="fe fe-home fe-16"></i>
57
  <span class="ml-3 item-text">Dashboard</span>
58
  </a>
59
  </li>
60
  <li class="nav-item">
61
  <a class="nav-link" href="./diagnosis.html">
62
- <i class="fe fe-eye fe-16"></i>
63
  <span class="ml-3 item-text">Diagnóstico</span>
64
  </a>
65
  </li>
66
  <li class="nav-item">
67
  <a class="nav-link" href="./patients.html">
68
- <i class="fe fe-users fe-16"></i>
69
  <span class="ml-3 item-text">Pacientes</span>
70
  </a>
71
  </li>
72
  <li class="nav-item">
73
  <a class="nav-link" href="./historial-consultas.html">
74
- <i class="fe fe-file-text fe-16"></i>
75
  <span class="ml-3 item-text">Consultas</span>
76
  </a>
77
  </li>
78
  <li class="nav-item active">
79
  <a class="nav-link" href="./users.html">
80
- <i class="fe fe-user fe-16"></i>
81
  <span class="ml-3 item-text">Usuarios</span>
82
  </a>
83
  </li>
@@ -97,10 +97,10 @@
97
  </div>
98
  <div class="col-auto">
99
  <button class="btn btn-primary" onclick="loadUsers()">
100
- <i class="fe fe-refresh-cw fe-16 mr-2"></i>Actualizar
101
  </button>
102
  <button class="btn btn-success ml-2" onclick="showAddUserModal()">
103
- <i class="fe fe-plus fe-16 mr-2"></i>Nuevo Usuario
104
  </button>
105
  </div>
106
  </div>
@@ -109,7 +109,7 @@
109
  <div class="card shadow">
110
  <div class="card-header">
111
  <h6 class="card-title mb-0">
112
- <i class="fe fe-users mr-2"></i>Lista de Usuarios
113
  </h6>
114
  </div>
115
  <div class="card-body">
@@ -140,11 +140,11 @@
140
  </div>
141
 
142
  <div id="emptyState" class="text-center py-5" style="display: none;">
143
- <i class="fe fe-users fe-48 text-muted mb-3"></i>
144
  <h6 class="text-muted">No se encontraron usuarios</h6>
145
  <p class="text-muted">No hay usuarios registrados en el sistema.</p>
146
  <button class="btn btn-primary" onclick="showAddUserModal()">
147
- <i class="fe fe-plus mr-1"></i>Crear Primer Usuario
148
  </button>
149
  </div>
150
  </div>
@@ -161,7 +161,7 @@
161
  <div class="modal-content">
162
  <div class="modal-header">
163
  <h5 class="modal-title" id="userModalLabel">
164
- <i class="fe fe-user mr-2"></i>Nuevo Usuario
165
  </h5>
166
  <button type="button" class="close" data-dismiss="modal" aria-label="Close">
167
  <span aria-hidden="true">&times;</span>
@@ -267,12 +267,12 @@
267
  <button class="btn btn-sm btn-outline-primary"
268
  onclick="editUser(${user.userID})"
269
  title="Editar">
270
- <i class="fe fe-edit fe-12"></i>
271
  </button>
272
  <button class="btn btn-sm btn-outline-danger"
273
  onclick="confirmDeleteUser(${user.userID})"
274
  title="Eliminar">
275
- <i class="fe fe-trash-2 fe-12"></i>
276
  </button>
277
  </div>
278
  </td>
@@ -285,7 +285,7 @@
285
  function showAddUserModal() {
286
  $('#userForm')[0].reset();
287
  $('#userId').val('');
288
- $('#userModalLabel').html('<i class="fe fe-user-plus mr-2"></i>Nuevo Usuario');
289
  $('#userModal').modal('show');
290
  }
291
 
@@ -300,7 +300,7 @@
300
  $('#password').val('');
301
  $('#confirmPassword').val('');
302
 
303
- $('#userModalLabel').html('<i class="fe fe-edit mr-2"></i>Editar Usuario');
304
  $('#userModal').modal('show');
305
  }
306
  }
@@ -432,12 +432,12 @@
432
  `<button class="btn btn-sm btn-outline-danger"
433
  onclick="confirmDeleteUser(${user.userID})"
434
  title="Eliminar">
435
- <i class="fe fe-trash-2 fe-12"></i>
436
  </button>` :
437
  `<button class="btn btn-sm btn-outline-secondary"
438
  disabled
439
  title="No puedes eliminar tu propia cuenta">
440
- <i class="fe fe-user-x fe-12"></i>
441
  </button>`;
442
 
443
  const row = `
@@ -458,7 +458,7 @@
458
  <button class="btn btn-sm btn-outline-primary"
459
  onclick="editUser(${user.userID})"
460
  title="Editar">
461
- <i class="fe fe-edit fe-12"></i>
462
  </button>
463
  ${deleteButton}
464
  </div>
@@ -548,5 +548,23 @@
548
  window.addEventListener('focus', centerWindow);
549
  })();
550
  </script>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
551
  </body>
552
  </html>
 
10
 
11
  <link rel="stylesheet" href="css/simplebar.css">
12
  <link href="https://fonts.googleapis.com/css2?family=Overpass:ital,wght@0,100;0,200;0,300;0,400;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,600;1,700;1,800;1,900&display=swap" rel="stylesheet">
13
+ <script src="https://cdn.jsdelivr.net/npm/feather-icons/dist/feather.min.js"></script>
14
  <link rel="stylesheet" href="css/app-light.css" id="lightTheme">
15
  <link rel="stylesheet" href="css/app-dark.css" id="darkTheme" disabled>
16
  </head>
 
20
  <!-- Top Navigation -->
21
  <nav class="topnav navbar navbar-light">
22
  <button type="button" class="navbar-toggler text-muted mt-2 p-0 mr-3 collapseSidebar">
23
+ <i data-feather="menu" class="navbar-toggler-icon"></i>
24
  </button>
25
 
26
  <ul class="nav">
 
40
  <!-- Sidebar -->
41
  <aside class="sidebar-left border-right bg-white shadow" id="leftSidebar" data-simplebar>
42
  <a href="#" class="btn collapseSidebar toggle-btn d-lg-none text-muted ml-2 mt-3" data-toggle="toggle">
43
+ <i data-feather="x"><span class="sr-only"></span></i>
44
  </a>
45
  <nav class="vertnav navbar navbar-light">
46
  <!-- nav bar -->
 
53
  <ul class="navbar-nav flex-fill w-100 mb-2">
54
  <li class="nav-item">
55
  <a class="nav-link" href="./index.html">
56
+ <i data-feather="home" class="fe-16"></i>
57
  <span class="ml-3 item-text">Dashboard</span>
58
  </a>
59
  </li>
60
  <li class="nav-item">
61
  <a class="nav-link" href="./diagnosis.html">
62
+ <i data-feather="eye" class="fe-16"></i>
63
  <span class="ml-3 item-text">Diagnóstico</span>
64
  </a>
65
  </li>
66
  <li class="nav-item">
67
  <a class="nav-link" href="./patients.html">
68
+ <i data-feather="users" class="fe-16"></i>
69
  <span class="ml-3 item-text">Pacientes</span>
70
  </a>
71
  </li>
72
  <li class="nav-item">
73
  <a class="nav-link" href="./historial-consultas.html">
74
+ <i data-feather="file-text" class="fe-16"></i>
75
  <span class="ml-3 item-text">Consultas</span>
76
  </a>
77
  </li>
78
  <li class="nav-item active">
79
  <a class="nav-link" href="./users.html">
80
+ <i data-feather="user" class="fe-16"></i>
81
  <span class="ml-3 item-text">Usuarios</span>
82
  </a>
83
  </li>
 
97
  </div>
98
  <div class="col-auto">
99
  <button class="btn btn-primary" onclick="loadUsers()">
100
+ <i data-feather="refresh-cw" class="fe-16 mr-2"></i>Actualizar
101
  </button>
102
  <button class="btn btn-success ml-2" onclick="showAddUserModal()">
103
+ <i data-feather="plus" class="fe-16 mr-2"></i>Nuevo Usuario
104
  </button>
105
  </div>
106
  </div>
 
109
  <div class="card shadow">
110
  <div class="card-header">
111
  <h6 class="card-title mb-0">
112
+ <i data-feather="users" class="mr-2"></i>Lista de Usuarios
113
  </h6>
114
  </div>
115
  <div class="card-body">
 
140
  </div>
141
 
142
  <div id="emptyState" class="text-center py-5" style="display: none;">
143
+ <i data-feather="users" class="fe-48 text-muted mb-3"></i>
144
  <h6 class="text-muted">No se encontraron usuarios</h6>
145
  <p class="text-muted">No hay usuarios registrados en el sistema.</p>
146
  <button class="btn btn-primary" onclick="showAddUserModal()">
147
+ <i data-feather="plus" class="mr-1"></i>Crear Primer Usuario
148
  </button>
149
  </div>
150
  </div>
 
161
  <div class="modal-content">
162
  <div class="modal-header">
163
  <h5 class="modal-title" id="userModalLabel">
164
+ <i data-feather="user" class="mr-2"></i>Nuevo Usuario
165
  </h5>
166
  <button type="button" class="close" data-dismiss="modal" aria-label="Close">
167
  <span aria-hidden="true">&times;</span>
 
267
  <button class="btn btn-sm btn-outline-primary"
268
  onclick="editUser(${user.userID})"
269
  title="Editar">
270
+ <i data-feather="edit" class="fe-12"></i>
271
  </button>
272
  <button class="btn btn-sm btn-outline-danger"
273
  onclick="confirmDeleteUser(${user.userID})"
274
  title="Eliminar">
275
+ <i data-feather="trash-2" class="fe-12"></i>
276
  </button>
277
  </div>
278
  </td>
 
285
  function showAddUserModal() {
286
  $('#userForm')[0].reset();
287
  $('#userId').val('');
288
+ $('#userModalLabel').html('<i data-feather="user-plus" class="mr-2"></i>Nuevo Usuario');
289
  $('#userModal').modal('show');
290
  }
291
 
 
300
  $('#password').val('');
301
  $('#confirmPassword').val('');
302
 
303
+ $('#userModalLabel').html('<i data-feather="edit" class="mr-2"></i>Editar Usuario');
304
  $('#userModal').modal('show');
305
  }
306
  }
 
432
  `<button class="btn btn-sm btn-outline-danger"
433
  onclick="confirmDeleteUser(${user.userID})"
434
  title="Eliminar">
435
+ <i data-feather="trash-2" class="fe-12"></i>
436
  </button>` :
437
  `<button class="btn btn-sm btn-outline-secondary"
438
  disabled
439
  title="No puedes eliminar tu propia cuenta">
440
+ <i data-feather="user-x" class="fe-12"></i>
441
  </button>`;
442
 
443
  const row = `
 
458
  <button class="btn btn-sm btn-outline-primary"
459
  onclick="editUser(${user.userID})"
460
  title="Editar">
461
+ <i data-feather="edit" class="fe-12"></i>
462
  </button>
463
  ${deleteButton}
464
  </div>
 
548
  window.addEventListener('focus', centerWindow);
549
  })();
550
  </script>
551
+ <script>
552
+ // Feather Icons: reemplaza <i data-feather="X"> con SVG inline
553
+ // Inmune a problemas de fuentes locales
554
+ function _initFeather() {
555
+ if (typeof feather !== 'undefined') feather.replace({ 'stroke-width': 1.8 });
556
+ }
557
+ document.addEventListener('DOMContentLoaded', _initFeather);
558
+ // Re-render al inyectar HTML dinámico (modals, cards, tablas)
559
+ var _fObserver = new MutationObserver(function(mutations) {
560
+ var needsRefresh = mutations.some(function(m) {
561
+ return m.addedNodes.length > 0;
562
+ });
563
+ if (needsRefresh) _initFeather();
564
+ });
565
+ document.addEventListener('DOMContentLoaded', function() {
566
+ _fObserver.observe(document.body, { childList: true, subtree: true });
567
+ });
568
+ </script>
569
  </body>
570
  </html>