def after_add(self, entity_obj, sf, req): length = len(str(sf.query(func.count(Archives.id)).scalar())) obj = sf.query(Archives).get(entity_obj.id) max_length = AppSettingHelper.get("s_usr_code_fmt_length", "5") prefix = AppSettingHelper.get("s_usr_code_prefix", "P") if length > Utils.parse_int(max_length): max_length = "%s" % (length + 1) fmt = prefix + "%0" + max_length + "d" obj.code = fmt % entity_obj.id sf.commit()
def load(self): usr = self.request.current_user level_u = UserSettingHelper(usr) level_u_ = level_u.load() level_s = AppSettingHelper.load() level_all = dict(level_u_, **level_s) return level_all
def init(): AppSettingHelper.load() #Create Root Category helper = CategoryHelper("ROOT") if not helper.exists("ROOT"): helper.create("ROOT") role_id = Loader.create_super_role() if not role_id: return Loader.create_root_account(role_id) Loader.create_base_securitypoints() Loader.assign_points_to_superadmin(role_id) #自定义加载 for cls in ObjectPool.server_starups: obj = cls() if hasattr(obj, "load"): obj.load()
def get(self, *args, **kwargs): """ render login form :param args: :param kwargs: """ allowd_register = AppSettingHelper.get("s_usr_register_open", "N") opt = dict() opt["allowd_register"] = allowd_register self.render("login.html", opt=opt)
def save(self): kv = self.request.wrap_params_to_dict() level_user = dict() level_system = dict() for k in kv: if k.startswith("u_"): level_user[k] = kv[k] elif k.startswith("s_"): level_system[k] = kv[k] AppSettingHelper.set(level_system) u = UserSettingHelper("%s" % self.request.current_user) u.set(level_user) #允许用户在设置保存之后再做其它数据变更 items = ObjectPool.setting for k in items.keys(): obj = items[k].cls() if hasattr(obj, "save"): msg = obj.save(kv, self.request) if msg: return msg AppSettingHelper.reload() return "success"
def create(login_id, pwd, archives_id=None, enabled=0): cnn = SessionFactory.new() obj = Account() obj.login_name = login_id obj.login_pwd = Utils.md5(pwd) obj.create_time = Utils.current_datetime() obj.enabled = enabled obj.archives_id = archives_id cnn.add(obj) cnn.flush() default_role_id = Utils.parse_int(AppSettingHelper.get("s_usr_register_default_role_name", "0")) if default_role_id > 0: default_role = cnn.query(Role).get(default_role_id) if default_role: obj.roles.append(default_role) cnn.commit() return obj.id
def create(self): account_name = self.param("account_name") if not account_name: return "AccountNameRequired" email = self.param("email") if not email: return "EmailRequired" pwd = self.param("pwd") if not pwd: return "PwdRequired" agree = self.param("agree") print(agree) if not agree: return "AgreeRequired" re_pwd = self.param("re_pwd") if pwd != re_pwd: return "PwdNotSame" sf = SessionFactory.new() num = sf.query(func.count(Account.id)).filter(Account.login_name == account_name).scalar() if num > 0: return "AccountExists" num = sf.query(func.count(Archives.id)).filter(Archives.email == email).scalar() if num > 0: return "EmailExists" #create a person length = len(str(sf.query(func.count(Archives.id)).scalar())) max_length = AppSettingHelper.get("s_usr_code_fmt_length", "5") prefix = AppSettingHelper.get("s_usr_code_prefix", "P") if length > Utils.parse_int(max_length): max_length = "%s" % (length + 1) fmt = prefix + "%0" + max_length + "d" p = Archives() p.email = email p.name = Utils.email_account_name(email) p.join_date = Utils.current_datetime() sf.add(p) sf.flush() p.code = fmt % p.id u = Account() u.login_name = account_name u.login_pwd = Utils.md5(pwd) u.create_time = Utils.current_datetime() u.last_logon_time = Utils.current_datetime() u.enabled = 1 u.archives_id = p.id sf.add(u) sf.flush() default_role_id = Utils.parse_int(AppSettingHelper.get("s_usr_register_default_role_name", 0)) if default_role_id > 0: default_role = sf.query(Role).get(default_role_id) if default_role: u.roles.append(default_role) sf.commit() self.request.set_secure_cookie(IRequest.__key_account_id__, "%i" % u.id) self.request.set_secure_cookie(IRequest.__key_account_name__, email) return "Success"
def get(self, *args, **kwargs): allowd_register = AppSettingHelper.get("s_usr_register_open", "N") opt = dict() opt["allowd_register"] = allowd_register self.render("reg.html", opt=opt)