def create():
    """Esta función crea una sesión"""
    #Creacion de nuevo objeto usuario sin atributos
    usuario = Usuario()
    #Extrer datos del formulario y asignarlo a atributos del objeto creado
    usuario.correo = request.form['correo']
    #Se pone el correo en minúsculas
    usuario.correo = usuario.correo.lower()
    usuario.password = request.form['password']
    #Se verifican las credenciales del usuario
    if usuario.inicio_de_sesion_valido():
        #Se establece que hay una sesión iniciada
        session['logged_in'] = True
        #Se busca al usuario actual
        current_user = Usuario.obtener(correo="*****@*****.**")
        #Se establece que el id del usuario que inició sesión
        session['current_user_id'] = current_user.id
        flash('Inicio de sesión exitoso.')
        #Se redirecciona la página de inicio
        return redirect(url_for('inicio_page.inicio'))
    #Si las credenciales no coinciden, no se inicia la sesión
    else:
        session['logged_in'] = False
        flash('Correo electrónico o contraseña incorrectos.')
        return render_template('login.html')
def create():
    #Array de errores
    errores = []
    #Creación de nuevo objeto
    usuario = Usuario()
    #Datos introducidos por el usuario
    usuario.correo = request.form['correo']
    usuario.nombre_de_usuario = request.form['nombre_de_usuario']
    usuario.password = request.form['password']
    usuario.nombre_completo = request.form['nombre_completo']
    usuario.celular = request.form['celular']
    usuario.dni = request.form['dni']
    dia = int(request.form['fecha_de_nacimiento_dia'])
    mes = int(request.form['fecha_de_nacimiento_mes'])
    anho = int(request.form['fecha_de_nacimiento_anho'])
    usuario.fecha_nacimiento = datetime(anho, mes, dia)
    usuario.numero_de_tarjeta = request.form['numero_de_tarjeta']
    if usuario.es_mayor_de_edad() and usuario.nombre_completo_es_valido():
        if usuario.crear():
            #Se logea al usuario automaticamente
            session['logged_in'] = True
            session['current_user_id'] = usuario.id
            #Se crea una nueva canasta si el usuario logra registrarse
            canasta = Canasta()
            #El usuario de esta canasta será el usuario que se acaba de registrar
            canasta.usuario = usuario
            #Se crea la canasta
            if canasta.crear():
                print("Canasta registrada")
            return redirect(url_for('inicio_page.inicio'))
        else:
            errores.append('Hubo un error al crear tu cuenta.')
            return render_template('usuarios/registrations/new.html',
                                   errores=errores)
    else:
        if not usuario.es_mayor_de_edad():
            errores.append("Debes ser mayor de edad para registrarte")
        if not usuario.nombre_completo_es_valido():
            errores.append("Tu nombre no debe contener caracteres especiales.")
        return render_template('usuarios/registrations/new.html',
                               errores=errores)