bsw/jbe@1309: if not config.role_registration then bsw/jbe@1309: return bsw/jbe@1309: end bsw/jbe@1309: if not app.session.member.role then bsw/jbe@1309: return bsw/jbe@1309: end bsw/jbe@1309: bsw/jbe@1309: local controller_id = param.get("controller_id") bsw/jbe@1309: bsw/jbe@1309: local member = Member:by_id(controller_id) bsw/jbe@1309: bsw/jbe@1309: if member.role then bsw/jbe@1309: return bsw/jbe@1309: end bsw/jbe@1309: bsw/jbe@1309: local agent = Agent:by_pk(app.session.member_id, controller_id) bsw/jbe@1309: bsw/jbe@1309: if param.get("delete") then bsw/jbe@1309: agent:destroy() bsw/jbe@1309: return bsw/jbe@1309: end bsw/jbe@1309: bsw/jbe@1309: if not agent then bsw/jbe@1309: agent = Agent:new() bsw/jbe@1309: agent.controlled_id = app.session.member_id bsw/jbe@1309: agent.controller_id = controller_id bsw/jbe@1309: agent:save() bsw/jbe@1309: end bsw/jbe@1309: