示例#1
0
    def asignar_roles(self, *args, **kw):
        """ Asigna los roles seleccionados a un usuario """

        if kw:
            pks = []
            for k, pk in kw.items():
                if not k.isalnum():
                    continue
                pks.append(int(pk))
            transaction.begin()
            id_user = UrlParser.parse_id(request.url, "miembros")
            id_proyecto = UrlParser.parse_id(request.url, "proyectos")
            user = Usuario.por_id(id_user)
            roles = DBSession.query(Rol).filter(Rol.id_rol.in_(pks)).all()
            for r in roles:
                if r.tipo.find(
                        u"Plantilla") >= 0:  #crear rol a partir de plantilla
                    rol_new = Rol.nuevo_rol_desde_plantilla(plantilla=r,
                                                            id=id_proyecto)
                    rol_new.usuarios.append(user)
                else:
                    r.usuarios.append(user)
            transaction.commit()
            flash("Roles Asignados correctamente")
        else:
            flash("Seleccione por lo menos un rol", "warning")
        return "./"
示例#2
0
    def asignar_roles(self, *args, **kw):
        """ Asigna los roles seleccionados a un usuario """

        if kw:
            pks = []
            for k, pk in kw.items():
                if not k.isalnum():
                    continue
                pks.append(int(pk))
            transaction.begin()
            id_user = UrlParser.parse_id(request.url, "nomiembros")
            id_proyecto = UrlParser.parse_id(request.url, "proyectos")
            user = Usuario.por_id(id_user)
            roles = DBSession.query(Rol).filter(Rol.id_rol.in_(pks)).all()
            for r in roles:
                if r.tipo.find(u"Plantilla") >= 0: #crear rol a partir de plantilla
                    rol_new = Rol.nuevo_rol_desde_plantilla(plantilla=r, 
                                                            id=id_proyecto)
                    rol_new.usuarios.append(user)
                else:
                    r.usuarios.append(user)
            transaction.commit()
            flash("Roles Asignados correctamente")
        else:
            flash("Seleccione por lo menos un rol", "warning")
        return "./"
示例#3
0
    def post(self, *args, **kw):
        if "sprox_id" in kw:
            del kw["sprox_id"]

        proy = Proyecto(**kw)
        DBSession.add(proy)
        DBSession.flush()
        proy.codigo = Proyecto.generar_codigo(proy)

        #Creamos el rol miembro  y lider de proyecto para este proyecto.
        plant_l = Rol.obtener_rol_plantilla(nombre_rol=u"Lider de Proyecto")
        rol_l = Rol.nuevo_rol_desde_plantilla(plantilla=plant_l, id=proy.id_proyecto)

        flash("Se ha creado un nuevo proyecto")
        redirect("/proyectos/")
示例#4
0
    def post(self, *args, **kw):
        if "sprox_id" in kw:
            del kw["sprox_id"]

        proy = Proyecto(**kw)
        DBSession.add(proy)
        DBSession.flush()
        proy.codigo = Proyecto.generar_codigo(proy)

        #Creamos el rol miembro  y lider de proyecto para este proyecto.
        plant_l = Rol.obtener_rol_plantilla(nombre_rol=u"Lider de Proyecto")
        rol_l = Rol.nuevo_rol_desde_plantilla(plantilla=plant_l,
                                              id=proy.id_proyecto)

        flash("Se ha creado un nuevo proyecto")
        redirect("/proyectos/")