def WorkflowDetail(req, id, err=0): v = getAdminStdVars(req) if err == 0 and id == "": # new workflow workflow = Workflow(u"") db.session.commit() v["original_name"] = "" elif id != "" and err == 0: # edit workflow workflow = getWorkflow(id) v["original_name"] = workflow.name else: # error workflow = Workflow(u"") workflow.name = req.params.get("name", "") workflow.set("description", req.params.get("description", "")) #workflow.setAccess("write", req.params.get("writeaccess", "")) v["original_name"] = req.params.get("orig_name", "") workflow.id = req.params.get("id") db.session.commit() try: rule = { "read": [ r.ruleset_name for r in workflow.access_ruleset_assocs.filter_by( ruletype='read') ], "write": [ r.ruleset_name for r in workflow.access_ruleset_assocs.filter_by( ruletype='write') ] } except: rule = {"read": [], "write": []} v["acl_read"] = makeList(req, "read", removeEmptyStrings(rule["read"]), {}, overload=0, type="read") v["acl_write"] = makeList(req, "write", removeEmptyStrings(rule["write"]), {}, overload=0, type="write") v["workflow"] = workflow v["languages"] = config.languages v["error"] = err v["actpage"] = req.params.get("actpage") v["csrf"] = req.csrf_token.current_token return req.getTAL("web/admin/modules/workflows.html", v, macro="modify")
def WorkflowDetail(req, id, err=0): v = getAdminStdVars(req) if err == 0 and id == "": # new workflow workflow = Workflow(u"") db.session.commit() v["original_name"] = "" elif id != "" and err == 0: # edit workflow workflow = getWorkflow(id) v["original_name"] = workflow.name else: # error workflow = Workflow(u"") workflow.name = req.params.get("name", "") workflow.set("description", req.params.get("description", "")) #workflow.setAccess("write", req.params.get("writeaccess", "")) v["original_name"] = req.params.get("orig_name", "") workflow.id = req.params.get("id") db.session.commit() try: rule = {"read": [r.ruleset_name for r in workflow.access_ruleset_assocs.filter_by(ruletype='read')], "write": [r.ruleset_name for r in workflow.access_ruleset_assocs.filter_by(ruletype='write')]} except: rule = {"read": [], "write": []} v["acl_read"] = makeList(req, "read", removeEmptyStrings(rule["read"]), {}, overload=0, type="read") v["acl_write"] = makeList(req, "write", removeEmptyStrings(rule["write"]), {}, overload=0, type="write") v["workflow"] = workflow v["languages"] = config.languages v["error"] = err v["actpage"] = req.params.get("actpage") v["csrf"] = req.csrf_token.current_token return req.getTAL("web/admin/modules/workflows.html", v, macro="modify")