barra.js 2.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. function barra(profesor, retardos) {
  2. profesor.faltas = profesor.total - profesor.asistencias - profesor.retardos - profesor.justificaciones;
  3. if (profesor.total != 0)
  4. var porcentajes = {
  5. "asistencias": profesor.asistencias / profesor.total * 100,
  6. "retardos": profesor.retardos / profesor.total * 100,
  7. "justificaciones": profesor.justificaciones / profesor.total * 100,
  8. "faltas": 100 * profesor.faltas / profesor.total
  9. }
  10. else
  11. var porcentajes = {
  12. "asistencias": 0,
  13. "retardos": 0,
  14. "justificaciones": 0,
  15. "faltas": 0
  16. }
  17. var html = `
  18. <section id="profesor-${profesor.id}">
  19. <div class="row">
  20. <div class="col-12">
  21. <div class="progress">
  22. <div class="progress-bar bg-success" role="progressbar" style="width: ${porcentajes.asistencias}%" aria-valuenow="${porcentajes.asistencias}" aria-valuemin="0" aria-valuemax="100"></div>
  23. <!-- Show retardos only if it's set to true -->
  24. ${retardos ? `<div class="progress-bar bg-warning" role="progressbar" style="width: ${porcentajes.retardos}%" aria-valuenow="${porcentajes.retardos}" aria-valuemin="0" aria-valuemax="100"></div>` : ``}
  25. <div class="progress-bar bg-azul" role="progressbar" style="width: ${porcentajes.justificaciones}%" aria-valuenow="${porcentajes.justificaciones}" aria-valuemin="0" aria-valuemax="100"></div>
  26. <div class="progress-bar bg-info" role="progressbar" style="width: ${porcentajes.faltas}%" aria-valuenow="${porcentajes.faltas}" aria-valuemin="0" aria-valuemax="100"></div>
  27. </div>
  28. </div>
  29. </div>
  30. <!-- Span Asistencias: # Retardos: # Faltas: # -->
  31. <div class="row justify-content-center">
  32. <span class="mx-3 mt-1">Asistencias: ${profesor.asistencias}</span>
  33. ${retardos ? `<span class="mx-3 mt-1">Retardos: ${profesor.retardos}</span>` : `` }
  34. <span class="mx-3 mt-1">Justificaciones: ${profesor.justificaciones}</span>
  35. <span class="mx-3 mt-1">Faltas: ${profesor.faltas}</span>
  36. </div>
  37. </div>
  38. `;
  39. return html;
  40. }