def __actions__(self, obj): """Links de acciones para un registro dado""" value = '<div>' clase = 'actions' contexto = "" perm_mod = PoseePermiso('modificar rol') perm_del = PoseePermiso('eliminar rol') url_cont = "/rolesplantilla/" tipo = obj.tipo.lower() if (tipo.find(u"proyecto") >= 0): contexto = "proyecto" elif (tipo.find(u"fase") >= 0): contexto = "fase" else: contexto = "ti" if perm_mod.is_met(request.environ): value += '<div>' + \ '<a href="' + url_cont + str(obj.id_rol) + "/edit?contexto="+ \ contexto + '" class="' + clase + '">Modificar</a>' + \ '</div><br />' if perm_del.is_met(request.environ): value += '<div><form method="POST" action="./' + str(obj.id_rol) + '" class="button-to">'+\ '<input type="hidden" name="_method" value="DELETE" />' +\ '<input onclick="return confirm(\'Está seguro?\');" value="Eliminar" type="submit" '+\ 'style="background-color: transparent; float:left; border:0; color: #286571;'+\ 'display: inline; margin: 0; padding: 0; margin-left:-3px;" class="' + clase + '"/>'+\ '</form></div><br />' value += '</div>' return value
def __actions__(self, obj): """Links de acciones para un registro dado""" value = '<div>' clase = 'actions' perm_mod = PoseePermiso('modificar rol', id_tipo_item=obj.id_tipo_item) perm_del = PoseePermiso('eliminar rol', id_tipo_item=obj.id_tipo_item) url = "./" if UrlParser.parse_nombre(request.url, "post_buscar"): url = "../" if perm_mod.is_met(request.environ): value += '<div>' + \ '<a href="' + url + str(obj.id_rol) + "/edit"+ \ '" class="' + clase + '">Modificar</a>' + \ '</div><br />' if perm_del.is_met(request.environ): value += '<div><form method="POST" action="' + url + str(obj.id_rol) + '" class="button-to">'+\ '<input type="hidden" name="_method" value="DELETE" />' +\ '<input onclick="return confirm(\'Está seguro?\');" value="Eliminar" type="submit" '+\ 'style="background-color: transparent; float:left; border:0; color: #286571;'+\ 'display: inline; margin: 0; padding: 0; margin-left:-3px;" class="' + clase + '"/>'+\ '</form></div><br />' value += '</div>' return value
def __actions__(self, obj): """Links de acciones para un registro dado""" value = '<div>' clase = 'actions' contexto = "" perm_mod = PoseePermiso('modificar rol') perm_del = PoseePermiso('eliminar rol') url_cont = "/rolesplantilla/" tipo = obj.tipo.lower() if (tipo.find(u"proyecto") >= 0): contexto = "proyecto" elif (tipo.find(u"fase") >= 0): contexto = "fase" else: contexto = "ti" if perm_mod.is_met(request.environ): value += '<div>' + \ '<a href="' + url_cont + str(obj.id_rol) + "/edit?contexto="+ \ contexto + '" class="' + clase + '">Modificar</a>' + \ '</div><br />' if perm_del.is_met(request.environ): value += '<div><form method="POST" action="./' + str(obj.id_rol) + '" class="button-to">'+\ '<input type="hidden" name="_method" value="DELETE" />' +\ '<input onclick="return confirm(\'Está seguro?\');" value="Eliminar" type="submit" '+\ 'style="background-color: transparent; float:left; border:0; color: #286571;'+\ 'display: inline; margin: 0; padding: 0; margin-left:-3px;" class="' + clase + '"/>'+\ '</form></div><br />' value += '</div>' return value
def __actions__(self, obj): """Links de acciones para un registro dado""" value = '<div>' clase = 'actions' perm_mod = PoseePermiso('modificar rol', id_tipo_item=obj.id_tipo_item) perm_del = PoseePermiso('eliminar rol', id_tipo_item=obj.id_tipo_item) url = "./" if UrlParser.parse_nombre(request.url, "post_buscar"): url = "../" if perm_mod.is_met(request.environ): value += '<div>' + \ '<a href="' + url + str(obj.id_rol) + "/edit"+ \ '" class="' + clase + '">Modificar</a>' + \ '</div><br />' if perm_del.is_met(request.environ): value += '<div><form method="POST" action="' + url + str(obj.id_rol) + '" class="button-to">'+\ '<input type="hidden" name="_method" value="DELETE" />' +\ '<input onclick="return confirm(\'Está seguro?\');" value="Eliminar" type="submit" '+\ 'style="background-color: transparent; float:left; border:0; color: #286571;'+\ 'display: inline; margin: 0; padding: 0; margin-left:-3px;" class="' + clase + '"/>'+\ '</form></div><br />' value += '</div>' return value
def __actions__(self, obj): """Links de acciones para un registro dado""" value = '<div>' clase = 'actions' id_proyecto = UrlParser.parse_id(request.url, "proyectos") if id_proyecto: url_cont = "/proyectos/%d/" % id_proyecto else: id_proyecto = UrlParser.parse_id(request.url, "proyectos_fase") url_cont = "/proyectos_fase/%d/" % id_proyecto id_fase = UrlParser.parse_id(request.url, "fases") url_cont += "fases/%d/rolesfase/" url_cont %= id_fase perm_mod = PoseePermiso('modificar rol', id_fase=id_fase) perm_del = PoseePermiso('eliminar rol', id_fase=id_fase) if perm_mod.is_met(request.environ): value += '<div>' + \ '<a href="' + url_cont + str(obj.id_rol) + "/edit"+ \ '" class="' + clase + '">Modificar</a>' + \ '</div><br />' if perm_del.is_met(request.environ): value += '<div><form method="POST" action="./' + str(obj.id_rol) + '" class="button-to">'+\ '<input type="hidden" name="_method" value="DELETE" />' +\ '<input onclick="return confirm(\'Está seguro?\');" value="Eliminar" type="submit" '+\ 'style="background-color: transparent; float:left; border:0; color: #286571;'+\ 'display: inline; margin: 0; padding: 0; margin-left:-3px;" class="' + clase + '"/>'+\ '</form></div><br />' value += '</div>' return value
def __actions__(self, obj): """Links de acciones para un registro dado""" value = '<div>' clase = 'actions' url_cont = "./" + str(obj.id_tipo_item) id_tipo = UrlParser.parse_id(request.url, "tipositems") if id_tipo: url_cont = "../" + str(obj.id_tipo_item) if UrlParser.parse_nombre(request.url, "post_buscar"): url_cont = "../" + str(obj.id_tipo_item) pp = PoseePermiso('redefinir tipo item', id_tipo_item=obj.id_tipo_item) #if PoseePermiso('redefinir tipo item').is_met(request.environ): if pp.is_met(request.environ): value += '<div>' + \ '<a href="' + url_cont + '/edit" ' + \ 'class="' + clase + '">Modificar</a>' + \ '</div><br />' value += '<div>' + \ '<a href="' + url_cont + '/atributostipoitem/" ' + \ 'class="' + clase + '">Atributos</a>' + \ '</div><br />' value += '<div>' + \ '<a href="'+ url_cont + '/miembrostipo" ' + \ 'class="' + clase + '">Usuarios</a>' + \ '</div><br />' ''' value += '<div>' + \ '<a href="'+ url_cont + '/nomiembrostipo" ' + \ 'class="' + clase + '">No miembros</a>' + \ '</div><br />' ''' value += '<div>' + \ '<a href="'+ url_cont + '/rolestipo" ' + \ 'class="' + clase + '">Roles de Tipo</a>' + \ '</div><br />' if obj.puede_eliminarse(): if pp.is_met(request.environ): value += '<div><form method="POST" action="' + str(obj.id_tipo_item) + '" class="button-to">'+\ '<input type="hidden" name="_method" value="DELETE" />' +\ '<input onclick="return confirm(\'Está seguro?\');" value="Eliminar" type="submit" '+\ 'style="background-color: transparent; float:left; border:0; color: #286571;'+\ 'display: inline; margin: 0; padding: 0; margin-left:-3px;" class="' + clase + '"/>'+\ '</form></div><br />' value += '</div>' return value
def post(self, *args, **kw): """ Crea un nuevo rol plantilla o con contexto""" id_proyecto = UrlParser.parse_id(request.url, "proyectos") url_action = self.action % id_proyecto pp = PoseePermiso('crear rol', id_proyecto=id_proyecto) kw["id_proyecto"] = id_proyecto if not pp.is_met(request.environ): flash(pp.message % pp.nombre_permiso, 'warning') redirect(url_action) #url que redirige al new y rellena los parametros que ya ingreso error_url = url_action + "new" #agregamos los parametros que ya ingreso el usuario. nombre = kw.get("nombre_rol", None).encode("utf-8") nombre_q = urllib.quote(nombre) desc = kw.get("descripcion", None).encode("utf-8") desc_q = urllib.quote(desc) params = "?nombre_rol=" + nombre_q + "&descripcion=" + desc_q error_url += params if not (kw.has_key("permisos") and kw["permisos"]): flash("Debe seleccionar al menos un permiso", 'warning') redirect(error_url) else: Rol.crear_rol(**kw) flash(u"El Rol se ha creado correctamente") redirect(url_action)
def post(self, *args, **kw): """ Crea un nuevo rol plantilla o con contexto""" id_proyecto = UrlParser.parse_id(request.url, "proyectos") url_action = self.action % id_proyecto pp = PoseePermiso('crear rol', id_proyecto=id_proyecto) kw["id_proyecto"] = id_proyecto if not pp.is_met(request.environ): flash(pp.message % pp.nombre_permiso, 'warning') redirect(url_action) #url que redirige al new y rellena los parametros que ya ingreso error_url = url_action + "new" #agregamos los parametros que ya ingreso el usuario. nombre = kw.get("nombre_rol", None).encode("utf-8") nombre_q = urllib.quote(nombre) desc = kw.get("descripcion", None).encode("utf-8") desc_q = urllib.quote(desc) params = "?nombre_rol=" + nombre_q + "&descripcion=" + desc_q error_url += params if not (kw.has_key("permisos") and kw["permisos"]): flash("Debe seleccionar al menos un permiso", 'warning') redirect(error_url) else: Rol.crear_rol(**kw) flash(u"El Rol se ha creado correctamente") redirect(url_action)
def post_buscar(self, *args, **kw): """ Controlador que recibe los parámetros de búsqueda para devolver el resultado esperado. """ puede_crear = PoseePermiso("crear proyecto").is_met(request.environ) pp = PoseePermiso('consultar proyecto') if not pp.is_met(request.environ): flash(pp.message % pp.nombre_permiso, 'warning') redirect("/proyectos/") tmpl_context.widget = self.table buscar_table_filler = ProyectoTableFiller(DBSession) buscar_table_filler.filtros = kw proyectos = buscar_table_filler.get_value() atras = '/proyectos/' return dict(lista_elementos=proyectos, page=self.title, titulo=self.title, modelo=self.model.__name__, columnas=self.columnas, url_action="/proyectos/", puede_crear=puede_crear, comboboxes=self.comboboxes, opciones=self.opciones, atras=atras)
def post(self, *args, **kw): """ Crea un nuevo rol plantilla o con contexto""" pp = None ctx = "" if kw["id_proyecto"]: ctx = "id_proyecto" pp = PoseePermiso('crear rol', id_proyecto=int(kw["id_proyecto"])) elif kw["id_fase"]: ctx = "id_fase" pp = PoseePermiso('crear rol', id_fase=int(kw["id_fase"])) elif kw["id_tipo_item"]: ctx = "id_tipo_item" pp = PoseePermiso('crear rol', id_tipo_item=int(kw["id_tipo_item"])) else: pp = PoseePermiso('crear rol') if not pp.is_met(request.environ): flash(pp.message % pp.nombre_permiso, 'warning') redirect(self.action) #en caso de exito ok_url = u"" #url que redirige al new y rellena los parametros que ya ingreso error_url = u"/rolesplantilla/new/" if ctx == "id_proyecto": ok_url = "/proyectos/%s/edit" % kw[ctx] error_url += "proyecto?{ctx}={val}".format(ctx=ctx, val=kw[ctx]) elif ctx == "id_fase": ok_url = "/fases/%s/edit" % kw[ctx] error_url += "fase?{ctx}={val}".format(ctx=ctx, val=kw[ctx]) elif ctx == "id_tipo_item": ok_url = "/tipositems/%s/edit" % kw[ctx] error_url += "ti?{ctx}={val}".format(ctx=ctx, val=kw[ctx]) else: tipo = unicode(kw["tipo"].lower()) ok_url = "/rolesplantilla/" if tipo.find(u"proyecto") >= 0: error_url += "proyecto?" elif tipo.find(u"fase") >= 0: error_url += "fase?" else: error_url += "ti?" #agregamos los parametros que ya ingreso el usuario. nombre = kw.get("nombre_rol", None).encode("utf-8") nombre_q = urllib.quote(nombre) desc = kw.get("descripcion", None).encode("utf-8") desc_q = urllib.quote(desc) params = "&nombre_rol=" + nombre_q + "&descripcion=" + desc_q error_url += params if not (kw.has_key("permisos") and kw["permisos"]): flash("Debe seleccionar al menos un permiso", 'warning') redirect(error_url) else: Rol.crear_rol(**kw) flash(u"El Rol se ha creado correctamente") redirect(ok_url)
def put(self, *args, **kw): """actualiza un rol""" pp = None atras = "/roles/" msg = u"El Rol se ha actualizado con éxito" if kw["id_proyecto"]: pp = PoseePermiso('modificar rol', id_proyecto=int(kw["id_proyecto"])) elif kw["id_fase"]: pp = PoseePermiso('modificar rol', id_fase=int(kw["id_fase"])) elif kw["id_tipo_item"]: pp = PoseePermiso('modificar rol', id_tipo_item=int(kw["id_tipo_item"])) else: pp = PoseePermiso('modificar rol') atras = "/rolesplantilla/" msg = u"El de Plantilla se ha actualizado con éxito" if not pp.is_met(request.environ): flash(pp.message % pp.nombre_permiso, 'warning') redirect(atras) if not (kw.has_key("permisos") and kw["permisos"]): flash("Debe seleccionar al menos un permiso", 'warning') redirect("./edit?contexto=%s" % kw["contexto"]) Rol.actualizar_rol(**kw) flash(msg) redirect(atras)
def put(self, *args, **kw): """actualiza un rol""" pp = None atras = "/roles/" msg = u"El Rol se ha actualizado con éxito" if kw["id_proyecto"]: pp = PoseePermiso('modificar rol', id_proyecto=int(kw["id_proyecto"])) elif kw["id_fase"]: pp = PoseePermiso('modificar rol', id_fase=int(kw["id_fase"])) elif kw["id_tipo_item"]: pp = PoseePermiso('modificar rol', id_tipo_item=int(kw["id_tipo_item"])) else: pp = PoseePermiso('modificar rol') atras = "/rolesplantilla/" msg = u"El de Plantilla se ha actualizado con éxito" if not pp.is_met(request.environ): flash(pp.message % pp.nombre_permiso, 'warning') redirect(atras) if not (kw.has_key("permisos") and kw["permisos"]): flash("Debe seleccionar al menos un permiso", 'warning') redirect("./edit?contexto=%s" % kw["contexto"]) Rol.actualizar_rol(**kw) flash(msg) redirect(atras)
def put(self, *args, **kw): if "sprox_id" in kw: del kw["sprox_id"] if "repita_nuevo_password" in kw: del kw["repita_nuevo_password"] if kw["nro_documento"]: kw["nro_documento"] = int(kw["nro_documento"]) username = request.identity['repoze.who.userid'] usuario = Usuario.by_user_name(username) id_usuario = UrlParser.parse_id(request.url, "usuarios") if (usuario.id_usuario != id_usuario): pp = PoseePermiso('modificar usuario') if not pp.is_met(request.environ): flash(pp.message % pp.nombre_permiso, 'warning') redirect(self.action) usuario = Usuario.por_id(args[0]) usuario.nombre = kw["nombre"] usuario.apellido = kw["apellido"] usuario.email = kw["email"] usuario.telefono = kw["telefono"] usuario.nro_documento = kw["nro_documento"] if kw["nuevo_password"] != None and kw.has_key('cambiar_pass'): usuario.password = kw["nuevo_password"] redirect("../")
def post_buscar(self, *args, **kw): """ Controlador que recibe los parámetros de búsqueda para devolver el resultado esperado. """ puede_crear = PoseePermiso("crear proyecto").is_met(request.environ) pp = PoseePermiso('consultar proyecto') if not pp.is_met(request.environ): flash(pp.message % pp.nombre_permiso, 'warning') redirect("/proyectos/") tmpl_context.widget = self.table buscar_table_filler = ProyectoTableFiller(DBSession) buscar_table_filler.filtros = kw proyectos = buscar_table_filler.get_value() atras = '/proyectos/' return dict(lista_elementos=proyectos, page=self.title, titulo=self.title, modelo=self.model.__name__, columnas=self.columnas, url_action="/proyectos/", puede_crear=puede_crear, comboboxes=self.comboboxes, opciones=self.opciones, atras=atras )
def post(self, *args, **kw): """ Crea un nuevo rol plantilla o con contexto""" pp = None ctx = "" if kw["id_proyecto"]: ctx = "id_proyecto" pp = PoseePermiso('crear rol', id_proyecto=int(kw["id_proyecto"])) elif kw["id_fase"]: ctx = "id_fase" pp = PoseePermiso('crear rol', id_fase=int(kw["id_fase"])) elif kw["id_tipo_item"]: ctx = "id_tipo_item" pp = PoseePermiso('crear rol', id_tipo_item=int(kw["id_tipo_item"])) else: pp = PoseePermiso('crear rol') if not pp.is_met(request.environ): flash(pp.message % pp.nombre_permiso, 'warning') redirect(self.action) #en caso de exito ok_url = u"" #url que redirige al new y rellena los parametros que ya ingreso error_url = u"/rolesplantilla/new/" if ctx == "id_proyecto": ok_url = "/proyectos/%s/edit" % kw[ctx] error_url += "proyecto?{ctx}={val}".format(ctx=ctx, val=kw[ctx]) elif ctx == "id_fase": ok_url = "/fases/%s/edit" % kw[ctx] error_url += "fase?{ctx}={val}".format(ctx=ctx, val=kw[ctx]) elif ctx == "id_tipo_item": ok_url = "/tipositems/%s/edit" % kw[ctx] error_url += "ti?{ctx}={val}".format(ctx=ctx, val=kw[ctx]) else: tipo = unicode(kw["tipo"].lower()) ok_url = "/rolesplantilla/" if tipo.find(u"proyecto") >= 0: error_url += "proyecto?" elif tipo.find(u"fase") >= 0: error_url += "fase?" else: error_url += "ti?" #agregamos los parametros que ya ingreso el usuario. nombre = kw.get("nombre_rol", None).encode("utf-8") nombre_q = urllib.quote(nombre) desc = kw.get("descripcion", None).encode("utf-8") desc_q = urllib.quote(desc) params = "&nombre_rol=" + nombre_q + "&descripcion=" + desc_q error_url += params if not (kw.has_key("permisos") and kw["permisos"]): flash("Debe seleccionar al menos un permiso", 'warning') redirect(error_url) else: Rol.crear_rol(**kw) flash(u"El Rol se ha creado correctamente") redirect(ok_url)
def put(self, *args, **kw): """update a record""" pp = PoseePermiso('modificar rol') if not pp.is_met(request.environ): flash(pp.message % pp.nombre_permiso, 'warning') redirect(self.action) Rol.actualizar_rol(**kw) redirect(self.action)
def put(self, *args, **kw): """update a record""" pp = PoseePermiso('modificar rol') if not pp.is_met(request.environ): flash(pp.message % pp.nombre_permiso, 'warning') redirect(self.action) Rol.actualizar_rol(**kw) redirect(self.action)
def edit(self, *args, **kw): """Despliega una pagina para modificar rol""" pp = PoseePermiso('modificar rol') if not pp.is_met(request.environ): flash(pp.message % pp.nombre_permiso, 'warning') redirect(self.action) tmpl_context.widget = self.edit_form value = self.edit_filler.get_value(values={'id_rol': int(args[0])}) page = "Rol {nombre}".format(nombre=value["nombre_rol"]) atras = self.action return dict(value=value, page=page, atras=atras)
def edit(self, *args, **kw): """Despliega una pagina para modificar rol""" pp = PoseePermiso('modificar rol') if not pp.is_met(request.environ): flash(pp.message % pp.nombre_permiso, 'warning') redirect(self.action) tmpl_context.widget = self.edit_form value = self.edit_filler.get_value(values={'id_rol': int(args[0])}) page = "Rol {nombre}".format(nombre=value["nombre_rol"]) atras = self.action return dict(value=value, page=page, atras=atras)
def post(self, *args, **kw): """create a new record""" pp = PoseePermiso('crear rol') if not pp.is_met(request.environ): flash(pp.message % pp.nombre_permiso, 'warning') redirect(self.action) if (not kw.has_key('tipo')): kw["tipo"] = self.rol_tipo Rol.crear_rol(**kw) redirect(self.action)
def post(self, *args, **kw): """create a new record""" pp = PoseePermiso('crear rol') if not pp.is_met(request.environ): flash(pp.message % pp.nombre_permiso, 'warning') redirect(self.action) if (not kw.has_key('tipo')): kw["tipo"] = self.rol_tipo Rol.crear_rol(**kw) redirect(self.action)
def new(self, *args, **kw): """Despliega una pagina para crear un rol""" pp = PoseePermiso('crear rol') if not pp.is_met(request.environ): flash(pp.message % pp.nombre_permiso, 'warning') redirect(self.action) tmpl_context.widget = self.new_form if request.environ.get('HTTP_REFERER') == "http://" + request.environ.get('HTTP_HOST',) + "/": atras = "../" else: atras = "/roles" return dict(value=kw, page="Nuevo Rol", action=self.action, atras=atras)
def put(self, *args, **kw): """update a record""" url_action = url_action = "../../" pp = PoseePermiso('redefinir tipo item', id_tipo_item=kw["id_tipo_item"]) if not pp.is_met(request.environ): flash(pp.message % pp.nombre_permiso, 'warning') redirect(url_action) tipo = TipoItem.por_id(int(kw["id_tipo_item"])) tipo.descripcion = unicode(kw["descripcion"]) flash("Actualizacion exitosa") redirect("./")
def new(self, *args, **kw): """Despliega una pagina para crear un usuario""" pp = PoseePermiso('crear usuario') if not pp.is_met(request.environ): flash(pp.message % pp.nombre_permiso, 'warning') redirect("/usuarios/") page = u"Nuevo Usuario" atras = "/usuarios/" return dict(super(UsuarioController, self).new(*args, **kw), page=page, atras=atras)
def __actions__(self, obj): """Links de acciones para un registro dado""" value = '<div>' clase = 'actions' url_cont = "/proyectos/%d/rolesproyecto/" % obj.id_proyecto perm_mod = PoseePermiso('modificar rol', id_proyecto=obj.id_proyecto) perm_del = PoseePermiso('eliminar rol', id_proyecto=obj.id_proyecto) if perm_mod.is_met(request.environ): value += '<div>' + \ '<a href="' + url_cont + str(obj.id_rol) + "/edit"+ \ '" class="' + clase + '">Modificar</a>' + \ '</div><br />' if perm_del.is_met(request.environ): value += '<div><form method="POST" action="./' + str(obj.id_rol) + '" class="button-to">'+\ '<input type="hidden" name="_method" value="DELETE" />' +\ '<input onclick="return confirm(\'Está seguro?\');" value="Delete" type="submit" '+\ 'style="background-color: transparent; float:left; border:0; color: #286571;'+\ 'display: inline; margin: 0; padding: 0;" class="' + clase + '"/>'+\ '</form></div><br />' value += '</div>' return value
def new(self, *args, **kw): """Despliega una pagina para crear un tipo_item""" id_tipo_item = UrlParser.parse_id(request.url, "tipositems") url_action = "./" pp = PoseePermiso('redefinir tipo item', id_tipo_item=id_tipo_item) if not pp.is_met(request.environ): flash(pp.message % pp.nombre_permiso, 'warning') redirect(atras) tmpl_context.widget = self.new_form return dict(value=kw, page=u"Nuevo Atributo", action=url_action, atras=url_action)
def new(self, *args, **kw): """Despliega una pagina para crear un tipo_item""" id_tipo_item = UrlParser.parse_id(request.url, "tipositems") url_action = "./" pp = PoseePermiso('redefinir tipo item', id_tipo_item=id_tipo_item) if not pp.is_met(request.environ): flash(pp.message % pp.nombre_permiso, 'warning') redirect(atras) tmpl_context.widget = self.new_form return dict(value=kw, page=u"Nuevo Atributo", action=url_action, atras=url_action)
def edit(self, *args, **kw): """Despliega una pagina para modificar el atributo""" id_tipo_item = UrlParser.parse_id(request.url, "tipositems") url_action = "../" pp = PoseePermiso('redefinir tipo item', id_tipo_item=id_tipo_item) if not pp.is_met(request.environ): flash(pp.message % pp.nombre_permiso, 'warning') redirect(url_action) tmpl_context.widget = self.edit_form value = self.edit_filler.get_value( \ values={'id_atributos_por_tipo_item': int(args[0])}) value['_method'] = 'PUT' page = "Atributo {nombre}".format(nombre=value["nombre"]) return dict(value=value, page=page, atras=url_action)
def edit(self, id_proyecto, *args, **kw): """Despliega una pagina para admistrar un proyecto""" pp = PoseePermiso('modificar proyecto', id_proyecto=id_proyecto) if not pp.is_met(request.environ): flash(pp.message % pp.nombre_permiso, 'warning') redirect("/proyectos") proyecto = Proyecto.por_id(id_proyecto) tmpl_context.widget = self.edit_form value = self.edit_filler.get_value(values={'id_proyecto': id_proyecto}) value['_method'] = 'PUT' atras = "/proyectos/" return dict(value=value, page="Modificar Proyecto %s" % proyecto.nombre, atras=atras)
def revertir(self, *args, **kw): """ Revierte el ítem en cuestion a la version indicada. """ id_item = UrlParser.parse_id(request.url, "items") id_version = int(args[0]) if not id_item: redirect("../") item = Item.por_id(id_item) pp = PoseePermiso('modificar item', id_tipo_item=item.id_tipo_item) if not pp.is_met(request.environ): flash(pp.message % pp.nombre_permiso, 'warning') redirect("../") user = Usuario.by_user_name(request.credentials["repoze.what.userid"]) item.revertir(id_version, user) redirect("../")
def edit(self, id_proyecto,*args, **kw): """Despliega una pagina para admistrar un proyecto""" pp = PoseePermiso('modificar proyecto', id_proyecto=id_proyecto) if not pp.is_met(request.environ): flash(pp.message % pp.nombre_permiso, 'warning') redirect("/proyectos") proyecto = Proyecto.por_id(id_proyecto) tmpl_context.widget = self.edit_form value = self.edit_filler.get_value(values={'id_proyecto': id_proyecto}) value['_method'] = 'PUT' atras = "/proyectos/" return dict(value=value, page="Modificar Proyecto %s" % proyecto.nombre, atras=atras )
def revertir(self, *args, **kw): """ Revierte el ítem en cuestion a la version indicada. """ id_item = UrlParser.parse_id(request.url, "items") id_version = int(args[0]) if not id_item: redirect("../") item = Item.por_id(id_item) pp = PoseePermiso('modificar item', id_tipo_item=item.id_tipo_item) if not pp.is_met(request.environ): flash(pp.message % pp.nombre_permiso, 'warning') redirect("../") user = Usuario.by_user_name(request.credentials["repoze.what.userid"]) item.revertir(id_version, user) redirect("../")
def put(self, *args, **kw): """update""" if "sprox_id" in kw: del kw["sprox_id"] id_proyecto = int(kw["id_proyecto"]) id_fase = int(kw["id_fase"]) del kw["id_fase"] pp = PoseePermiso('modificar fase', id_fase=id_fase) if not pp.is_met(request.environ): flash(pp.message % pp.nombre_permiso, 'warning') redirect("../") proy = Proyecto.por_id(id_proyecto) proy.modificar_fase(id_fase, **kw) flash("Fase modificada") redirect("./")
def put(self, *args, **kw): """update""" if "sprox_id" in kw: del kw["sprox_id"] id_proyecto = int(kw["id_proyecto"]) id_fase = int(kw["id_fase"]) del kw["id_fase"] pp = PoseePermiso('modificar fase', id_fase=id_fase) if not pp.is_met(request.environ): flash(pp.message % pp.nombre_permiso, 'warning') redirect("../") proy = Proyecto.por_id(id_proyecto) proy.modificar_fase(id_fase, **kw) flash("Fase modificada") redirect("./")
def _do_get_provider_count_and_objs(self, id_proyecto=None, **kw): """ Retorna la Lista los proyectos del sistema sobre """ if id_proyecto: proy = Proyecto.por_id(id_proyecto) return 1, [proy] count, lista = super(ProyectoTableFiller, self).\ _do_get_provider_count_and_objs(**kw) filtrados = [] for p in lista: pp = PoseePermiso(u"modificar proyecto", id_proyecto=p.id_proyecto) if pp.is_met(request.environ): filtrados.append(p) return len(filtrados), filtrados
def _do_get_provider_count_and_objs(self, id_proyecto=None, **kw): """ Retorna la Lista los proyectos del sistema sobre """ if id_proyecto: proy = Proyecto.por_id(id_proyecto) return 1, [proy] count, lista = super(ProyectoTableFiller, self).\ _do_get_provider_count_and_objs(**kw) filtrados = [] for p in lista: pp = PoseePermiso(u"modificar proyecto", id_proyecto=p.id_proyecto) if pp.is_met(request.environ): filtrados.append(p) return len(filtrados), filtrados
def new(self, *args, **kw): """Pagina para generar una nueva linea base""" id_fase = UrlParser.parse_id(request.url, "fases") pp = PoseePermiso("crear lb", id_fase=id_fase) if not id_fase: flash("Se Debe especificar una fase", "warning") redirect("../") if not pp.is_met(request.environ): flash(pp.message % pp.nombre_permiso, 'warning') redirect("../") fase = Fase.por_id(id_fase) titulo = u"Generar LB para Fase: %s" % fase.nombre tmpl_context.tabla_items = item_generar_table items = item_generar_table_filler.get_value(id_fase=fase.id_fase) return dict(items=items, page=titulo, atras='./')
def new(self, *args, **kw): """Despliega una pagina para crear un tipo_item""" id_fase = UrlParser.parse_id(request.url, "fases") if not id_fase: id_fase = UrlParser.parse_id(request.url, "fases_ti") pp = PoseePermiso('crear tipo item', id_fase=id_fase) if not pp.is_met(request.environ): flash(pp.message % pp.nombre_permiso, 'warning') redirect("./") atras = self.action tmpl_context.widget = self.new_form return dict(value=kw, page=u"Nuevo Tipo de Ítem", action=self.action, atras=atras)
def new(self, *args, **kw): """Despliega una pagina para crear un rol""" pp = PoseePermiso('crear rol') if not pp.is_met(request.environ): flash(pp.message % pp.nombre_permiso, 'warning') redirect(self.action) tmpl_context.widget = self.new_form if request.environ.get( 'HTTP_REFERER') == "http://" + request.environ.get( 'HTTP_HOST', ) + "/": atras = "../" else: atras = "/roles" return dict(value=kw, page="Nuevo Rol", action=self.action, atras=atras)
def edit(self, *args, **kw): """Despliega una pagina para realizar modificaciones""" id_fase = UrlParser.parse_id(request.url, "fases") fase = Fase.por_id(int(id_fase)) id_proyecto = UrlParser.parse_id(request.url, "proyectos") atras = "./" if not id_proyecto: id_proyecto = UrlParser.parse_id(request.url, "proyectos_fase") pp = PoseePermiso('modificar fase', id_fase=id_fase) if not pp.is_met(request.environ): flash(pp.message % pp.nombre_permiso, 'warning') redirect("./") tmpl_context.widget = FaseEditForm(DBSession) value = self.edit_filler.get_value(values={'id_fase': id_fase}) page = u"Modificar Fase: %s" % value["nombre"] return dict(value=value, page=page, atras=atras)
def put(self, *args, **kw): """actualiza un rol""" id_tipo_item = UrlParser.parse_id(request.url, "tipositems") url_action = "../../" msg = u"El Rol se ha actualizado con éxito" pp = PoseePermiso('modificar rol', id_tipo_item=id_tipo_item) if not pp.is_met(request.environ): flash(pp.message % pp.nombre_permiso, 'warning') redirect(url_action) if not (kw.has_key("permisos") and kw["permisos"]): flash("Debe seleccionar al menos un permiso", 'warning') redirect(url_action + kw["id_rol"] + "/edit") Rol.actualizar_rol(**kw) flash(msg) redirect(url_action)
def edit(self, *args, **kw): """Despliega una pagina para modificar el atributo""" id_tipo_item = UrlParser.parse_id(request.url, "tipositems") url_action = "../" pp = PoseePermiso('redefinir tipo item', id_tipo_item=id_tipo_item) if not pp.is_met(request.environ): flash(pp.message % pp.nombre_permiso, 'warning') redirect(url_action) tmpl_context.widget = self.edit_form value = self.edit_filler.get_value( \ values={'id_atributos_por_tipo_item': int(args[0])}) value['_method'] = 'PUT' page = "Atributo {nombre}".format(nombre=value["nombre"]) return dict(value=value, page=page, atras=url_action)
def put(self, *args, **kw): """actualiza un rol""" id_tipo_item = UrlParser.parse_id(request.url, "tipositems") url_action = "../../" msg = u"El Rol se ha actualizado con éxito" pp = PoseePermiso('modificar rol', id_tipo_item=id_tipo_item) if not pp.is_met(request.environ): flash(pp.message % pp.nombre_permiso, 'warning') redirect(url_action) if not (kw.has_key("permisos") and kw["permisos"]): flash("Debe seleccionar al menos un permiso", 'warning') redirect(url_action + kw["id_rol"] + "/edit") Rol.actualizar_rol(**kw) flash(msg) redirect(url_action)
def post(self, *args, **kw): """create a new record""" id_tipo_item = UrlParser.parse_id(request.url, "tipositems") url_action = "./" pp = PoseePermiso('redefinir tipo item',id_tipo_item=id_tipo_item) if not pp.is_met(request.environ): flash(pp.message % pp.nombre_permiso, 'warning') redirect(url_action) if kw.has_key("sprox_id"): del kw["sprox_id"] tipo = TipoItem.por_id(id_tipo_item) try: tipo.agregar_atributo(**kw) except NombreDeAtributoError, err: flash(unicode(err), "warning")
def post(self, *args, **kw): """create a new record""" id_tipo_item = UrlParser.parse_id(request.url, "tipositems") url_action = "./" pp = PoseePermiso('redefinir tipo item', id_tipo_item=id_tipo_item) if not pp.is_met(request.environ): flash(pp.message % pp.nombre_permiso, 'warning') redirect(url_action) if kw.has_key("sprox_id"): del kw["sprox_id"] tipo = TipoItem.por_id(id_tipo_item) try: tipo.agregar_atributo(**kw) except NombreDeAtributoError, err: flash(unicode(err), "warning")
def post(self, *args, **kw): """create a new record""" id_proyecto = UrlParser.parse_id(request.url, "proyectos") id_fase = UrlParser.parse_id(request.url, "fases") if not id_proyecto: id_proyecto = UrlParser.parse_id(request.url, "proyectos_fase") if not id_proyecto: id_proyecto = UrlParser.parse_id(request.url, "proyectos_fase_ti") id_fase = UrlParser.parse_id(request.url, "fases_ti") pp = PoseePermiso('crear tipo item', id_fase=id_fase) url_action = self.action if not pp.is_met(request.environ): flash(pp.message % pp.nombre_permiso, 'warning') redirect(url_action) if kw.has_key("sprox_id"): del kw["sprox_id"] id_padre = int(kw["id_padre"]) id_importado = kw["id_importado"] if (kw["id_importado"]): id_importado = int(kw["id_importado"]) mezclar = False if kw.has_key("mezclar"): mezclar = kw["mezclar"] del kw["mezclar"] del kw["id_padre"] del kw["id_importado"] proy = Proyecto.por_id(id_proyecto) tipo = proy.definir_tipo_item(id_padre, id_importado, mezclar, **kw) #Creamos el rol miembro de tipo de ítem #plant_m = Rol.obtener_rol_plantilla(nombre_rol=u"Miembro de Tipo Item") #rol_m = Rol.nuevo_rol_desde_plantilla(plantilla=plant_m, # id=tipo.id_tipo_item) flash(u"Creacion exitosa") redirect(url_action)
def edit(self, *args, **kw): """Despliega una pagina para realizar modificaciones""" id_fase = UrlParser.parse_id(request.url, "fases") fase = Fase.por_id(int(id_fase)) id_proyecto = UrlParser.parse_id(request.url, "proyectos") atras = "./" if not id_proyecto: id_proyecto = UrlParser.parse_id(request.url, "proyectos_fase") pp = PoseePermiso('modificar fase', id_fase=id_fase) if not pp.is_met(request.environ): flash(pp.message % pp.nombre_permiso, 'warning') redirect("./") tmpl_context.widget = FaseEditForm(DBSession) value = self.edit_filler.get_value(values={'id_fase': id_fase}) page = u"Modificar Fase: %s" % value["nombre"] return dict(value=value, page=page, atras=atras)
def edit(self, *args, **kw): """Despliega una pagina para modificar usuario""" username = request.identity['repoze.who.userid'] usuario = Usuario.by_user_name(username) if usuario.id_usuario != int(args[0]): pp = PoseePermiso('modificar usuario') if not pp.is_met(request.environ): flash(pp.message % pp.nombre_permiso, 'warning') redirect("/usuarios") tmpl_context.widget = self.edit_form user = Usuario.por_id(args[0]) page = "Usuario {nombre}".format(nombre=user.nombre_usuario) atras = "/usuarios/" value = self.edit_filler.get_value(values={'id_usuario': args[0]}) value['_method'] = 'PUT' return dict(value=value, page=page, id=args[0], atras=atras )
def edit(self, *args, **kw): """Despliega una pagina para modificar tipo_item""" id_tipo = UrlParser.parse_id(request.url, "tipositems") id_fase = UrlParser.parse_id(request.url, "fases") if not id_fase: id_fase = UrlParser.parse_id(request.url, "fases_ti") value = self.edit_filler.get_value(values={'id_tipo_item': id_tipo}) url_action = "./" pp = PoseePermiso('redefinir tipo item', id_tipo_item=id_tipo) if not pp.is_met(request.environ): flash(pp.message % pp.nombre_permiso, 'warning') redirect(url_action) tmpl_context.widget = self.edit_form value['_method'] = 'PUT' page = "Tipo Item: {nombre}".format(nombre=value["nombre"]) return dict(value=value, page=page, atras=url_action, url_action=url_action )