Exemplo n.º 1
0
def editarusuario():
    """ Funcion para editar registros de la tabla Usuario""" 
    """ Se obtiene la fecha actual para almacenar la fecha de ultima actualizacion """
    if not current_user.is_authenticated():
        flash('Debe loguearse primeramente!!!!', 'loggin')
        return render_template('index.html')
    
    permission = UserRol('ADMINISTRADOR')
    if permission.can():
        today = datetime.date.today()
        """ Se un objeto md5 para encriptar la contrasenha del usuario """    
        con = md5.new()
        conf = md5.new()
        p = db_session.query(Usuario).filter_by(usuario=request.args.get('usu')).first()  
        form = UsuarioFormulario(request.form,p)
        usuario = db_session.query(Usuario).filter_by(usuario=form.usuario.data).first()  
        if request.method == 'POST' and form.validate():
            if form.fecha_nac.data > today :
                flash('Ingrese una fecha de nacimiento valida','error')
                return render_template('usuario/editarusuario.html', form=form)  
            if form.password.data != form.confirmar.data :
                conf.update(form.confirmar.data)
                confir = conf.hexdigest()
                if form.password.data != confir :
                    flash('Las contrasenhas deben coincidir','error')
                    return render_template('usuario/editarusuario.html', form=form)  
            try:
                con.update(form.password.data)
                aux = usuario.id
                form.populate_obj(usuario)
                usuario.password = con.hexdigest()
                usuario.id = aux
                db_session.merge(usuario)
                db_session.commit()
                flash('El usuario ha sido modificado con exito','info')
                return redirect('/usuario/administrarusuario')
            except DatabaseError, e:
                flash('Error en la Base de Datos' + e.args[0],'error')
                return render_template('usuario/editarusuario.html', form=form)
        else:
            flash_errors(form)
        return render_template('usuario/editarusuario.html', form=form)
Exemplo n.º 2
0
def nuevousuario():
    """ Funcion para agregar registros a la tabla Usuario""" 
    """ Se obtiene la fecha actual para verificar la fecha de nacimiento """
    if not current_user.is_authenticated():
        flash('Debe loguearse primeramente!!!!', 'loggin')
        return render_template('index.html')
    
    permission = UserRol('ADMINISTRADOR')
    if permission.can():
        today = datetime.date.today()
        form = UsuarioFormulario(request.form)
        """ Se un objeto md5 para encriptar la contrasenha del usuario """    
        con = md5.new()  
        if request.method == 'POST' and form.validate():
            if form.fecha_nac.data > today :
                flash('Ingrese una fecha de nacimiento valida','error')
                return render_template('usuario/nuevousuario.html', form=form)  
            if form.password.data != form.confirmar.data :
                flash('Las contrasenhas deben coincidir','error')
                return render_template('usuario/nuevousuario.html', form=form)  
            try:
                con.update(form.password.data)
                usu = Usuario(form.usuario.data,  
                    form.nombre.data, form.apellido.data, con.hexdigest(), 
                    form.correo.data, form.domicilio.data, 
                    form.telefono.data, form.fecha_nac.data)
                db_session.add(usu)
                db_session.commit()
                flash('El Usuario ha sido registrado con exito ','info')
                return redirect('/usuario/administrarusuario')
            except DatabaseError, e:
                if e.args[0].find('duplicate key value violates unique')!=-1:
                    flash('Clave unica violada por favor ingrese otro USUARIO para el registro' ,'error')
                else:
                    flash('Error en la Base de Datos' + e.args[0],'error')
                return render_template('usuario/nuevousuario.html', form=form)
        else:
            flash_errors(form) 
        return render_template('usuario/nuevousuario.html', form=form)