示例#1
0
def registrar():
    formulario = RegistrarForm()
    if formulario.validate_on_submit():
        #Comienzo a tocar
        Existe= False
        with open('usuarios') as archivo:
            archivo_csv2 = csv.reader(archivo)
            registro2 = next(archivo_csv2)
            while registro2 and Existe==False:
                if formulario.usuario.data == registro2[0]:
                    flash('El usuario ya esta en uso.')
                    Existe=True
                registro2 = next(archivo_csv2, None)
        #Termine de tocar
        if Existe ==False:
            if formulario.password.data == formulario.password_check.data:

                with open('usuarios', 'a+', newline='') as archivo:
                    archivo_csv = csv.writer(archivo)
                    registro = [formulario.usuario.data, formulario.password.data]
                    archivo_csv.writerow(registro)
                flash('Usuario creado correctamente')
                return redirect(url_for('ingresar'))
            else:
                flash('Las passwords no matchean')
    return render_template('registrar.html', form=formulario)
示例#2
0
def registrar():
    formulario = RegistrarForm()
    if formulario.validate_on_submit():
        if formulario.password.data == formulario.password_check.data:
            archivoAgregar('usuarios.csv', [formulario.usuario.data, formulario.password.data]) #Modulo para agregar una línea nueva a un archivo.
            flash('Usuario creado correctamente')
            return redirect(url_for('ingresar'))
        else:
            flash('Las passwords no matchean')
    return render_template('registrar.html', form=formulario)
示例#3
0
def registrar():
    formulario = RegistrarForm()
    if formulario.validate_on_submit():
        if formulario.password.data == formulario.password_check.data:
            with open('usuarios', 'a+') as archivo:
                archivo_csv = csv.writer(archivo)
                registro = [formulario.usuario.data, formulario.password.data]
                archivo_csv.writerow(registro)
            flash('Usuario creado correctamente')
            return redirect(url_for('ingresar'))
        else:
            flash('Las passwords no matchean')
    return render_template('registrar.html', form=formulario)
示例#4
0
def registrar():
    formulario = RegistrarForm()  #instancia objeto en formulario
    if formulario.validate_on_submit():
        if formulario.password.data == formulario.password_check.data:  #verifica que la Pass se haya colocado igual en ambos campos
            with open(
                    'usuarios.csv', 'a+', newline=""
            ) as archivo:  #Agrego new line para que el usuario se cree sin espacios
                archivo_csv = csv.writer(archivo)
                registro = [formulario.usuario.data, formulario.password.data]
                archivo_csv.writerow(registro)
            flash('Se ha creado tu usuario correctamente!')
            return redirect(url_for('ingresar'))
        else:
            flash('Las contraseñas no coinciden')
    return render_template('registrar.html', form=formulario)
示例#5
0
def registrar():
    formulario = RegistrarForm()
    if formulario.validate_on_submit():
        if formulario.password.data == formulario.password_check.data:
            if AccesoArchivo.ValidarUsuarioNuevo(formulario.usuario.data):               
                with open('usuarios.csv', 'a+', newline='') as archivo:
                    archivo_csv = csv.writer(archivo)
                    registro = [formulario.usuario.data, formulario.password.data]
                    archivo_csv.writerow(registro)
                flash('Usuario creado correctamente')
                return redirect(url_for('ingresar'))
            else:
                flash("Usuario previamente registrado")
        else:
            flash('Las passwords no concuerdan')
    return render_template('registrar.html', form=formulario)
示例#6
0
def registrar():
    formulario = RegistrarForm()
    if formulario.validate_on_submit():
        if processing.existir(formulario.usuario.data):
            flash('El nombre de usuario ya existe, eliga otro.')  #
            return render_template('registrar.html', formulario=formulario)
        if formulario.password.data == formulario.password_check.data:
            with open('usuarios', 'a+', newline='') as archivo:
                archivo_csv = csv.writer(archivo)
                registro = [formulario.usuario.data, formulario.password.data]
                archivo_csv.writerow(registro)
            flash('Usuario creado correctamente')
            return redirect(url_for('ingresar'))
        else:
            flash('Las passwords no matchean')
    return render_template('registrar.html', formulario=formulario)
示例#7
0
def Registrarse():
    if g.user:
        return redirect(url_for('perfil'))
    form = RegistrarForm()
    if request.method == 'GET':
        return render_template("registrarse.html", form=form)
    if request.method == 'POST':
        name = request.form.get('name')
        email = request.form.get('email')
        username = request.form.get('user')
        password = request.form.get('contra')

        if not utils.isUsernameValid(name):
            flash("Nombre invalido")
        if not utils.isEmailValid(email):
            flash("Correo invalido")
            return render_template('registrarse.html', form=form)
        if not utils.isUsernameValid(username):
            flash("Usuario invalido")
            return render_template('registrarse.html', form=form)
        if not utils.isPasswordValid(password):
            flash(
                "La contraseña debe tener al menos una mayúscula y un número")
            return render_template('registrarse.html', form=form)

        db = get_db()
        usuariodisponible = db.execute("SELECT * FROM usuario WHERE user = ?",
                                       (username, )).fetchall()
        if usuariodisponible:
            flash("El usuario no esta disponible")
            return render_template('registrarse.html', form=form)
        else:
            correodisponible = db.execute(
                "SELECT * FROM usuario WHERE correo = ?",
                (email, )).fetchall()
            if correodisponible:
                flash("El correo ya está registrado")
                return render_template('registrarse.html', form=form)

        activacion = s.dumps(email, salt='activacion-correo')
        hash_password = generate_password_hash(password)
        db.execute(
            "INSERT INTO usuario (nombre,user,correo,contraseña,activo,activacion) values (?,?,?,?,?,?)",
            (name, username, email, hash_password, False, activacion))
        db.commit()
        link = url_for('confirmar_correo',
                       activacion=activacion,
                       _external=True)
        yag = yagmail.SMTP(
            '*****@*****.**',
            'HolamundoMintic2020')  #SMTP protocolo de envío de correos
        yag.send(to=email,
                 subject='Activa tu cuenta',
                 contents='Bienvenido, usa el link para activar tu cuenta ' +
                 link)
        form1 = IniciosesionForm()
        return render_template('Iniciosesion.html', form=form1)
示例#8
0
def registrar():
    formulario = RegistrarForm()
    if formulario.validate_on_submit():
        if formulario.password.data == formulario.password_check.data:
            with open(
                    'usuarios', 'a+', newline=''
            ) as archivo:  #abre el archivo de usuario y lee y agrega una linea en el primer renglo vacio
                archivo_csv = csv.writer(
                    archivo)  #abrir el csv en modo escribir
                registro = [formulario.usuario.data, formulario.password.data]
                archivo_csv.writerow(registro)  #escribe una linea de resgistro
            flash('Usuario creado correctamente')
            return redirect(
                url_for('ingresar'))  #te redirecciona al inicio para ingresar
        else:
            flash('Las contraseñas no coinciden')
    return render_template(
        'registrar.html', form=formulario
    )  #si no valida el submit te direcciona a la pagina de registrar
示例#9
0
文件: app.py 项目: avegam/ifts18-2-
def registrar():
    formulario = RegistrarForm()
    if formulario.validate_on_submit():
        if formulario.password.data == formulario.password_check.data:
            with open ('usuarios', 'r+') as archivo:
                archileer = csv.reader(archivo)
                leerusuarios = list(archileer)
                for z in range(len(leerusuarios)):
                    if leerusuarios[z][0] == formulario.usuario.data:
                        flash('nombre de usuario ya esta usado')
                        return render_template('registrar.html', form=formulario)
            with open('usuarios', 'a+') as archivo2:
                archivo_csv = csv.writer(archivo2)
                registro = [formulario.usuario.data, formulario.password.data]
                archivo_csv.writerow(registro)
            flash('Usuario creado correctamente')
            return redirect(url_for('ingresar'))
        else:
            flash('Las passwords no matchean')
    return render_template('registrar.html', form=formulario)
示例#10
0
def registrar():
    if 'username' in session and session['username'] == 'admin':
        formulario = RegistrarForm()
        if formulario.validate_on_submit():
            if formulario.password.data == formulario.password_check.data:
                with open('usuarios', 'a+') as archivo:
                    archivo_csv = csv.writer(archivo, lineterminator="\n")
                    registro = [
                        formulario.usuario.data, formulario.password.data
                    ]
                    archivo_csv.writerow(registro)
                flash('Usuario creado correctamente')
                return redirect(url_for('ingresar'))
            else:
                flash('Las passwords no matchean')
        return render_template('registrar.html',
                               form=formulario,
                               errores=mensajesErroresArchivo)
    else:
        return render_template('sin_permiso.html')
示例#11
0
def registrar():
    if 'username' in session:
        return render_template('ingresado.html')
    formulario = RegistrarForm()
    if formulario.validate_on_submit():
        if formulario.password.data == formulario.password_check.data:
            valor, huboError = validarExisteUsuario(formulario.usuario.data)
            tratarError(huboError)
            if valor == 0:
                flash("Error: El usuario ya existe")
                return render_template('registrar.html', form=formulario)
            registro = [formulario.usuario.data, formulario.password.data]
            valor, huboError = grabarUsuario(registro)
            tratarError(huboError)
            if valor == 1:
                flash('Mensaje: Usuario creado correctamente')
            else:
                flash('Error: Hubo un error en la creación del usuario')
            return redirect(url_for('ingresar'))
        else:
            flash('Error: Las passwords que acaba de ingresar no son la misma')
    return render_template('registrar.html', form=formulario)