Akira-Kurusu commited on
Commit
4752688
·
verified ·
1 Parent(s): 7f281b4

Update web/patients.html

Browse files
Files changed (1) hide show
  1. web/patients.html +41 -29
web/patients.html CHANGED
@@ -9,7 +9,7 @@
9
  <title>Gestión de Pacientes</title>
10
  <link rel="stylesheet" href="css/simplebar.css">
11
  <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">
12
- <link rel="stylesheet" href="css/feather.css">
13
  <link rel="stylesheet" href="css/select2.css">
14
  <link rel="stylesheet" href="css/dropzone.css">
15
  <link rel="stylesheet" href="css/uppy.min.css">
@@ -185,7 +185,7 @@
185
  <div class="wrapper">
186
  <nav class="topnav navbar navbar-light">
187
  <button type="button" class="navbar-toggler text-muted mt-2 p-0 mr-3 collapseSidebar">
188
- <i class="fe fe-menu navbar-toggler-icon"></i>
189
  </button>
190
 
191
  <ul class="nav">
@@ -205,7 +205,7 @@
205
  <!-- Sidebar -->
206
  <aside class="sidebar-left border-right bg-white shadow" id="leftSidebar" data-simplebar>
207
  <a href="#" class="btn collapseSidebar toggle-btn d-lg-none text-muted ml-2 mt-3" data-toggle="toggle">
208
- <i class="fe fe-x"><span class="sr-only"></span></i>
209
  </a>
210
  <nav class="vertnav navbar navbar-light">
211
  <!-- nav bar -->
@@ -219,31 +219,31 @@
219
  <ul class="navbar-nav flex-fill w-100 mb-2">
220
  <li class="nav-item">
221
  <a class="nav-link" href="./index.html">
222
- <i class="fe fe-home fe-16"></i>
223
  <span class="ml-3 item-text">Dashboard</span>
224
  </a>
225
  </li>
226
  <li class="nav-item">
227
  <a class="nav-link" href="./diagnosis.html">
228
- <i class="fe fe-eye fe-16"></i>
229
  <span class="ml-3 item-text">Diagnóstico</span>
230
  </a>
231
  </li>
232
  <li class="nav-item active">
233
  <a class="nav-link" href="./patients.html">
234
- <i class="fe fe-users fe-16"></i>
235
  <span class="ml-3 item-text">Pacientes</span>
236
  </a>
237
  </li>
238
  <li class="nav-item">
239
  <a class="nav-link" href="./historial-consultas.html">
240
- <i class="fe fe-file-text fe-16"></i>
241
  <span class="ml-3 item-text">Consultas</span>
242
  </a>
243
  </li>
244
  <li class="nav-item">
245
  <a class="nav-link" href="./users.html">
246
- <i class="fe fe-user fe-16"></i>
247
  <span class="ml-3 item-text">Usuarios</span>
248
  </a>
249
  </li>
@@ -262,14 +262,14 @@
262
  <div class="row align-items-center mb-4">
263
  <div class="col">
264
  <h2 class="h3 page-title">
265
- <i class="fe fe-users fe-24 mr-2 text-primary"></i>
266
  Gestión de Pacientes
267
  </h2>
268
  <p class="text-muted">Administra la información de tus pacientes de manera eficiente</p>
269
  </div>
270
  <div class="col-auto">
271
  <button class="btn btn-primary" onclick="showNewPatientWizard()">
272
- <i class="fe fe-plus fe-16 mr-2"></i>Nuevo Paciente
273
  </button>
274
  </div>
275
  </div>
@@ -323,7 +323,7 @@
323
  <div class="row align-items-center" style="background-color: #f5f5f5; padding: 15px; border-radius: 8px;">
324
  <div class="col-lg-6">
325
  <h5 class="mb-3">
326
- <i class="fe fe-search mr-2"></i>Buscar Pacientes
327
  </h5>
328
  <input type="text" class="form-control search-input" id="patientSearchInput" placeholder="Buscar por nombre, ID o tipo de diabetes...">
329
  </div>
@@ -347,11 +347,11 @@
347
  </div>
348
 
349
  <div id="emptyState" class="empty-state" style="display: none;">
350
- <i class="fe fe-users"></i>
351
  <h4>No hay pacientes registrados</h4>
352
  <p class="text-muted">Comienza agregando tu primer paciente al sistema</p>
353
  <button class="btn btn-primary" onclick="showNewPatientWizard()">
354
- <i class="fe fe-plus mr-2"></i>Agregar Primer Paciente
355
  </button>
356
  </div>
357
  </div>
@@ -366,7 +366,7 @@
366
  <div class="modal-content form-wizard">
367
  <div class="modal-header step-indicator">
368
  <h5 class="modal-title">
369
- <i class="fe fe-user-plus mr-2"></i>Nuevo Paciente
370
  </h5>
371
  <div class="ml-auto">
372
  <span class="step-item active" data-step="1">1. Información Personal</span>
@@ -428,7 +428,7 @@
428
 
429
  <div class="modal-footer">
430
  <button type="button" class="btn btn-success" id="savePatientBtn" style="display: none;">
431
- <i class="fe fe-save mr-2"></i>Guardar Paciente
432
  </button>
433
  <button type="button" class="btn btn-secondary" data-dismiss="modal">Cancelar</button>
434
  </div>
@@ -442,7 +442,7 @@
442
  <div class="modal-content">
443
  <div class="modal-header">
444
  <h5 class="modal-title">
445
- <i class="fe fe-edit mr-2"></i>Editar Paciente
446
  </h5>
447
  <button type="button" class="close" data-dismiss="modal">
448
  <span aria-hidden="true">&times;</span>
@@ -496,7 +496,7 @@
496
  </div>
497
  <div class="modal-footer">
498
  <button type="button" class="btn btn-success" id="updatePatientBtn">
499
- <i class="fe fe-save mr-2"></i>Actualizar
500
  </button>
501
  <button type="button" class="btn btn-secondary" data-dismiss="modal">Cancelar</button>
502
  </div>
@@ -510,7 +510,7 @@
510
  <div class="modal-content">
511
  <div class="modal-header">
512
  <h5 class="modal-title">
513
- <i class="fe fe-user mr-2"></i>Detalles del Paciente
514
  </h5>
515
  <button type="button" class="close" data-dismiss="modal">
516
  <span aria-hidden="true">&times;</span>
@@ -521,7 +521,7 @@
521
  </div>
522
  <div class="modal-footer">
523
  <button type="button" class="btn btn-primary" onclick="startDiagnosisForPatient()">
524
- <i class="fe fe-eye mr-2"></i>Nuevo Diagnóstico
525
  </button>
526
  <button type="button" class="btn btn-secondary" data-dismiss="modal">Cerrar</button>
527
  </div>
@@ -665,7 +665,7 @@
665
 
666
  <div class="mt-3">
667
  <small class="text-muted">
668
- <i class="fe fe-calendar fe-12 mr-1"></i>
669
  Registro: ${moment(patient.creationDate).format('DD/MM/YYYY')}
670
  </small>
671
  </div>
@@ -673,21 +673,21 @@
673
 
674
  <div class="dropdown">
675
  <button class="btn btn-sm btn-outline-secondary dropdown-toggle" type="button" data-toggle="dropdown">
676
- <i class="fe fe-more-horizontal"></i>
677
  </button>
678
  <div class="dropdown-menu dropdown-menu-right">
679
  <a class="dropdown-item" href="#" onclick="viewPatientDetails(${patient.patientID})">
680
- <i class="fe fe-eye mr-2"></i>Ver Detalles
681
  </a>
682
  <a class="dropdown-item" href="#" onclick="editPatient(${patient.patientID})">
683
- <i class="fe fe-edit mr-2"></i>Editar
684
  </a>
685
  <a class="dropdown-item" href="diagnosis.html?patient=${patient.patientID}">
686
- <i class="fe fe-activity mr-2"></i>Nuevo Diagnóstico
687
  </a>
688
  <div class="dropdown-divider"></div>
689
  <a class="dropdown-item text-danger" href="#" onclick="deletePatient(${patient.patientID}, '${patient.name}')">
690
- <i class="fe fe-trash-2 mr-2"></i>Eliminar
691
  </a>
692
  </div>
693
  </div>
@@ -849,7 +849,7 @@
849
  diabetesType: formData.diabetesType || null
850
  }).then(function(response) {
851
  $('#savePatientBtn').prop('disabled', false)
852
- .html('<i class="fe fe-save mr-2"></i>Guardar Paciente');
853
 
854
  if (response && response.success) {
855
  showAlert('success', `Paciente ${formData.name} creado exitosamente`);
@@ -899,7 +899,7 @@
899
  diabetesType: formData.diabetes_type
900
  }).then(function(response) {
901
  $('#updatePatientBtn').prop('disabled', false)
902
- .html('<i class="fe fe-save mr-2"></i>Actualizar');
903
 
904
  if (response && response.success) {
905
  showAlert('success', 'Paciente actualizado exitosamente');
@@ -995,7 +995,7 @@
995
  </div>
996
  ` : `
997
  <div class="text-center text-muted py-4">
998
- <i class="fe fe-file-text fe-48 mb-3"></i>
999
  <p>No hay consultas registradas</p>
1000
  </div>
1001
  `}
@@ -1082,7 +1082,7 @@
1082
 
1083
  const alertHtml = `
1084
  <div class="alert ${alertClass} alert-dismissible fade show" role="alert">
1085
- <i class="fe fe-${type === 'error' ? 'x-circle' : type === 'success' ? 'check-circle' : type === 'warning' ? 'alert-triangle' : 'info'} mr-2"></i>
1086
  ${message}
1087
  <button type="button" class="close" data-dismiss="alert">
1088
  <span aria-hidden="true">&times;</span>
@@ -1233,5 +1233,17 @@
1233
  <script src="js/gauge.min.js"></script>
1234
  <script src="js/jquery.sparkline.min.js"></script>
1235
  <script src="js/apps.js"></script>
 
 
 
 
 
 
 
 
 
 
 
 
1236
  </body>
1237
  </html>
 
9
  <title>Gestión de Pacientes</title>
10
  <link rel="stylesheet" href="css/simplebar.css">
11
  <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">
12
+ <script src="https://cdn.jsdelivr.net/npm/feather-icons/dist/feather.min.js"></script>
13
  <link rel="stylesheet" href="css/select2.css">
14
  <link rel="stylesheet" href="css/dropzone.css">
15
  <link rel="stylesheet" href="css/uppy.min.css">
 
185
  <div class="wrapper">
186
  <nav class="topnav navbar navbar-light">
187
  <button type="button" class="navbar-toggler text-muted mt-2 p-0 mr-3 collapseSidebar">
188
+ <i data-feather="menu" class="navbar-toggler-icon"></i>
189
  </button>
190
 
191
  <ul class="nav">
 
205
  <!-- Sidebar -->
206
  <aside class="sidebar-left border-right bg-white shadow" id="leftSidebar" data-simplebar>
207
  <a href="#" class="btn collapseSidebar toggle-btn d-lg-none text-muted ml-2 mt-3" data-toggle="toggle">
208
+ <i data-feather="x"><span class="sr-only"></span></i>
209
  </a>
210
  <nav class="vertnav navbar navbar-light">
211
  <!-- nav bar -->
 
219
  <ul class="navbar-nav flex-fill w-100 mb-2">
220
  <li class="nav-item">
221
  <a class="nav-link" href="./index.html">
222
+ <i data-feather="home" class="fe-16"></i>
223
  <span class="ml-3 item-text">Dashboard</span>
224
  </a>
225
  </li>
226
  <li class="nav-item">
227
  <a class="nav-link" href="./diagnosis.html">
228
+ <i data-feather="eye" class="fe-16"></i>
229
  <span class="ml-3 item-text">Diagnóstico</span>
230
  </a>
231
  </li>
232
  <li class="nav-item active">
233
  <a class="nav-link" href="./patients.html">
234
+ <i data-feather="users" class="fe-16"></i>
235
  <span class="ml-3 item-text">Pacientes</span>
236
  </a>
237
  </li>
238
  <li class="nav-item">
239
  <a class="nav-link" href="./historial-consultas.html">
240
+ <i data-feather="file-text" class="fe-16"></i>
241
  <span class="ml-3 item-text">Consultas</span>
242
  </a>
243
  </li>
244
  <li class="nav-item">
245
  <a class="nav-link" href="./users.html">
246
+ <i data-feather="user" class="fe-16"></i>
247
  <span class="ml-3 item-text">Usuarios</span>
248
  </a>
249
  </li>
 
262
  <div class="row align-items-center mb-4">
263
  <div class="col">
264
  <h2 class="h3 page-title">
265
+ <i data-feather="users" class="fe-24 mr-2 text-primary"></i>
266
  Gestión de Pacientes
267
  </h2>
268
  <p class="text-muted">Administra la información de tus pacientes de manera eficiente</p>
269
  </div>
270
  <div class="col-auto">
271
  <button class="btn btn-primary" onclick="showNewPatientWizard()">
272
+ <i data-feather="plus" class="fe-16 mr-2"></i>Nuevo Paciente
273
  </button>
274
  </div>
275
  </div>
 
323
  <div class="row align-items-center" style="background-color: #f5f5f5; padding: 15px; border-radius: 8px;">
324
  <div class="col-lg-6">
325
  <h5 class="mb-3">
326
+ <i data-feather="search" class="mr-2"></i>Buscar Pacientes
327
  </h5>
328
  <input type="text" class="form-control search-input" id="patientSearchInput" placeholder="Buscar por nombre, ID o tipo de diabetes...">
329
  </div>
 
347
  </div>
348
 
349
  <div id="emptyState" class="empty-state" style="display: none;">
350
+ <i data-feather="users"></i>
351
  <h4>No hay pacientes registrados</h4>
352
  <p class="text-muted">Comienza agregando tu primer paciente al sistema</p>
353
  <button class="btn btn-primary" onclick="showNewPatientWizard()">
354
+ <i data-feather="plus" class="mr-2"></i>Agregar Primer Paciente
355
  </button>
356
  </div>
357
  </div>
 
366
  <div class="modal-content form-wizard">
367
  <div class="modal-header step-indicator">
368
  <h5 class="modal-title">
369
+ <i data-feather="user-plus" class="mr-2"></i>Nuevo Paciente
370
  </h5>
371
  <div class="ml-auto">
372
  <span class="step-item active" data-step="1">1. Información Personal</span>
 
428
 
429
  <div class="modal-footer">
430
  <button type="button" class="btn btn-success" id="savePatientBtn" style="display: none;">
431
+ <i data-feather="save" class="mr-2"></i>Guardar Paciente
432
  </button>
433
  <button type="button" class="btn btn-secondary" data-dismiss="modal">Cancelar</button>
434
  </div>
 
442
  <div class="modal-content">
443
  <div class="modal-header">
444
  <h5 class="modal-title">
445
+ <i data-feather="edit" class="mr-2"></i>Editar Paciente
446
  </h5>
447
  <button type="button" class="close" data-dismiss="modal">
448
  <span aria-hidden="true">&times;</span>
 
496
  </div>
497
  <div class="modal-footer">
498
  <button type="button" class="btn btn-success" id="updatePatientBtn">
499
+ <i data-feather="save" class="mr-2"></i>Actualizar
500
  </button>
501
  <button type="button" class="btn btn-secondary" data-dismiss="modal">Cancelar</button>
502
  </div>
 
510
  <div class="modal-content">
511
  <div class="modal-header">
512
  <h5 class="modal-title">
513
+ <i data-feather="user" class="mr-2"></i>Detalles del Paciente
514
  </h5>
515
  <button type="button" class="close" data-dismiss="modal">
516
  <span aria-hidden="true">&times;</span>
 
521
  </div>
522
  <div class="modal-footer">
523
  <button type="button" class="btn btn-primary" onclick="startDiagnosisForPatient()">
524
+ <i data-feather="eye" class="mr-2"></i>Nuevo Diagnóstico
525
  </button>
526
  <button type="button" class="btn btn-secondary" data-dismiss="modal">Cerrar</button>
527
  </div>
 
665
 
666
  <div class="mt-3">
667
  <small class="text-muted">
668
+ <i data-feather="calendar" class="fe-12 mr-1"></i>
669
  Registro: ${moment(patient.creationDate).format('DD/MM/YYYY')}
670
  </small>
671
  </div>
 
673
 
674
  <div class="dropdown">
675
  <button class="btn btn-sm btn-outline-secondary dropdown-toggle" type="button" data-toggle="dropdown">
676
+ <i data-feather="more-horizontal"></i>
677
  </button>
678
  <div class="dropdown-menu dropdown-menu-right">
679
  <a class="dropdown-item" href="#" onclick="viewPatientDetails(${patient.patientID})">
680
+ <i data-feather="eye" class="mr-2"></i>Ver Detalles
681
  </a>
682
  <a class="dropdown-item" href="#" onclick="editPatient(${patient.patientID})">
683
+ <i data-feather="edit" class="mr-2"></i>Editar
684
  </a>
685
  <a class="dropdown-item" href="diagnosis.html?patient=${patient.patientID}">
686
+ <i data-feather="activity" class="mr-2"></i>Nuevo Diagnóstico
687
  </a>
688
  <div class="dropdown-divider"></div>
689
  <a class="dropdown-item text-danger" href="#" onclick="deletePatient(${patient.patientID}, '${patient.name}')">
690
+ <i data-feather="trash-2" class="mr-2"></i>Eliminar
691
  </a>
692
  </div>
693
  </div>
 
849
  diabetesType: formData.diabetesType || null
850
  }).then(function(response) {
851
  $('#savePatientBtn').prop('disabled', false)
852
+ .html('<i data-feather="save" class="mr-2"></i>Guardar Paciente');
853
 
854
  if (response && response.success) {
855
  showAlert('success', `Paciente ${formData.name} creado exitosamente`);
 
899
  diabetesType: formData.diabetes_type
900
  }).then(function(response) {
901
  $('#updatePatientBtn').prop('disabled', false)
902
+ .html('<i data-feather="save" class="mr-2"></i>Actualizar');
903
 
904
  if (response && response.success) {
905
  showAlert('success', 'Paciente actualizado exitosamente');
 
995
  </div>
996
  ` : `
997
  <div class="text-center text-muted py-4">
998
+ <i data-feather="file-text" class="fe-48 mb-3"></i>
999
  <p>No hay consultas registradas</p>
1000
  </div>
1001
  `}
 
1082
 
1083
  const alertHtml = `
1084
  <div class="alert ${alertClass} alert-dismissible fade show" role="alert">
1085
+ ${(function(){var n=type==='error'?'x-circle':type==='success'?'check-circle':type==='warning'?'alert-triangle':'info';return typeof feather!=='undefined'?feather.icons[n].toSvg({'width':16,'height':16,'stroke-width':1.8,'style':'margin-right:6px;vertical-align:middle;'}):'';})()}
1086
  ${message}
1087
  <button type="button" class="close" data-dismiss="alert">
1088
  <span aria-hidden="true">&times;</span>
 
1233
  <script src="js/gauge.min.js"></script>
1234
  <script src="js/jquery.sparkline.min.js"></script>
1235
  <script src="js/apps.js"></script>
1236
+ <script>
1237
+ function _initFeather() {
1238
+ if (typeof feather !== 'undefined') feather.replace({ 'stroke-width': 1.8 });
1239
+ }
1240
+ document.addEventListener('DOMContentLoaded', _initFeather);
1241
+ var _fObserver = new MutationObserver(function(mutations) {
1242
+ if (mutations.some(function(m){ return m.addedNodes.length > 0; })) _initFeather();
1243
+ });
1244
+ document.addEventListener('DOMContentLoaded', function() {
1245
+ _fObserver.observe(document.body, { childList: true, subtree: true });
1246
+ });
1247
+ </script>
1248
  </body>
1249
  </html>