Commit dbf7d435 authored by Elliot Axel Noriega's avatar Elliot Axel Noriega
Browse files

Edicion de archivo de ejemplo de csv docentes y adicion de script para borrar materias en conjunto

parent ccc92e30
Loading
Loading
Loading
Loading
+7 −6
Original line number Diff line number Diff line
@@ -240,6 +240,7 @@ def leerXLS(request,archivo,filas_errores,texto_errores,unidad):
    df = pd.read_excel(archivo)
    # normalizamos las columanas para evitar errores en la lectura
    df.columns = df.columns.str.lower()
    print(df)
    # Validar que no haya valores nulos en el DataFrame
    if df.isnull().values.any():
        messages.error(request, 'El archivo CSV contiene valores faltantes. Por favor, verifica y vuelve a intentarlo.')
@@ -248,16 +249,16 @@ def leerXLS(request,archivo,filas_errores,texto_errores,unidad):
        for indice, fila in df.iterrows():
        # Utiliza el formulario para validar los datos
            sni = fila['sni']
            if sni=='N/A':
                sni = '0'
            if sni=='Candidato':
                sni = '1'
            if sni=='Nivel I':
            elif sni=='Nivel I':
                sni = '2'
            if sni=='Nivel II':
            elif sni=='Nivel II':
                sni='3'
            if sni=='Nivel III':
            elif sni=='Nivel III':
                sni='4'
            else:
                sni = '0'        
            # Declaramos un diccionario para inicializar el formulario de docente.
            form_data = {
                'nombre': fila['nombre'],
+69 −1
Original line number Diff line number Diff line
@@ -211,3 +211,71 @@
</form>

  {% endblock contenido %}
  
  
  {% block scripts %}
  <script src="https://code.jquery.com/jquery-3.6.4.min.js"></script>
  <script>
  $(document).ready(function() {
      // Asociar el clic en el span con el envío del formulario
      $('#searchSpan').on('click', function() {
          $('#searchForm').submit();
      });
  });
  </script>
  <script>
    $(document).ready(function() {
        // Asociar el clic en el span con el envío del formulario de búsqueda
        $('#searchSpan').on('click', function() {
            $('#searchForm').submit();
        });
  
        // Asociar el cambio en el menú desplegable con el envío del formulario de ordenamiento
        $('#orderSelect').on('change', function() {
            $('#orderForm').submit();
        });
    });
    </script>

    <script>
      // Esta función actualiza el estado del botón de eliminar según la cantidad de checkboxes seleccionados
      function actualizarEstado() {
          // Obtenemos todos los elementos de tipo checkbox
          var checkboxes = document.getElementsByName('materias[]');
          // Inicializamos el contador de checkboxes seleccionados
          var numSeleccionados = 0;
    
          // Iteramos sobre cada checkbox.
          for(var i = 0; i < checkboxes.length; i++) {
            // Verificamos si el checkbox actual está marcado
            if (checkboxes[i].checked) {
              // Si está marcado, incrementamos el contador de checkboxes seleccionados
              numSeleccionados++;          
            }
          }  
          
          var btnEliminar = document.getElementById('botonEliminar');
          // Si hay más de un checkbox seleccionado, mostramos el botón de eliminar
          if (numSeleccionados > 1) {
            btnEliminar.style.display = 'block';        
          } else {
            // Si hay uno o ningún checkbox seleccionado, ocultamos el botón de eliminar
            btnEliminar.style.display = 'none';
          }
      }
    
      // Esta función se ejecuta cuando se selecciona o deselecciona el checkbox 'Todos'
      function seleccionar(source) {
          // Obtenemos todos los elementos de tipo checkbox
          var checkboxes = document.getElementsByName('materias[]');
    
          // Iteramos sobre cada checkbox y lo marcamos o desmarcamos según el estado del checkbox 'Todos'
          for(var i = 0; i < checkboxes.length; i++) {
            checkboxes[i].checked = source.checked;
          }
    
          // Después de marcar o desmarcar todos los checkboxes, actualizamos el estado del botón de eliminar
          actualizarEstado();
      }
    </script>
{% endblock scripts %}
 No newline at end of file