Exemplo n.º 1
0
def editarpermiso():
    """ Funcion para editar registros a la tabla Permiso"""
    if not current_user.is_authenticated():
        flash('Debe loguearse primeramente!!!!', 'loggin')
        return render_template('index.html')

    permission = UserRol('ADMINISTRADOR')
    if permission.can():
        p = db_session.query(Permiso).filter_by(codigo=request.args.get('codigo')).first()
        form = PermisoFormulario(request.form,p)
        permiso = db_session.query(Permiso).filter_by(codigo=form.codigo.data).first()
        if request.method == 'POST':
            if form.validate():
                form.populate_obj(permiso)
                db_session.merge(permiso)
                db_session.commit()
                flash('El permiso ha sido modificado con exito','info')
                return redirect('/permiso/administrarpermiso')
            else:
                flash_errors(form)
        else:
            flash_errors(form)
        return render_template('permiso/editarpermiso.html', form=form)
    else:
        flash('Sin permisos para modificar permisos', 'permiso')
        return render_template('index.html')
Exemplo n.º 2
0
def nuevopermiso():
    """ Funcion para agregar registros a la tabla Permiso""" 
    if not current_user.is_authenticated():
        flash('Debe loguearse primeramente!!!!', 'loggin')
        return render_template('index.html')
    
    permission = UserRol('ADMINISTRADOR')
    if permission.can():
        form = PermisoFormulario(request.form)
        form.id_recurso.choices= [(r.id, r.nombre) for r in db_session.query(Recurso).order_by(Recurso.nombre)]
        if request.method == 'POST' and form.validate():
            try:
                permiso = Permiso(form.codigo.data, form.descripcion.data, form.id_recurso.data)
                db_session.add(permiso)
                db_session.commit()
                flash('El permiso ha sido registrado con exito','info')
                return redirect('/permiso/administrarpermiso')
            except DatabaseError, e:
                if e.args[0].find('duplicate key value violates unique') != -1:
                    flash('Clave unica violada por favor ingrese otra combinacion de permiso con recurso unica' , 'error')
                else:
                    flash('Error en la Base de Datos' + e.args[0], 'error')
                return render_template('permiso/nuevopermiso.html', form=form)
        return render_template('permiso/nuevopermiso.html', form=form)