def POST(self): name = xutils.get_argument("name") result = xauth.add_user(name, textutil.random_string(6)) if result["code"] == "success": # 重新加载系统 xmanager.reload() return result
def POST(self): key = xutils.get_argument("key") value = xutils.get_argument("value") type = xutils.get_argument("type") xutils.info("UpdateConfig", "%s,%s,%s" % (type, key, value)) if key == "BASE_TEMPLATE": xmanager.reload() if key in ("FS_HIDE_FILES", "DEBUG_HTML_BOX", "RECORD_LOCATION"): value = value.lower() in ("true", "yes", "on") if key == "DEBUG": setattr(xconfig, key, value == "True") web.config.debug = xconfig.DEBUG if key in ("RECENT_SEARCH_LIMIT", "RECENT_SIZE", "PAGE_SIZE", "TRASH_EXPIRE"): value = int(value) if type == "int": value = int(value) if type == "bool": value = value.lower() in ("true", "yes", "on") if key in USER_CONFIG_KEY_SET: set_user_config(key, value) else: set_sys_config(key, value) return dict(code="success")
def POST(self): name = xutils.get_argument("name") password = xutils.get_argument("password") error = xauth.add_user(name, password) added = xauth.get_user(name) # 先暴力解决 xmanager.reload() raise web.seeother("/system/user?name=%s" % name)
def POST(self): key = xutils.get_argument("key") value = xutils.get_argument("value") setattr(xconfig, key, value) if key == "BASE_TEMPLATE": xmanager.reload() if key == "FS_HIDE_FILES": setattr(xconfig, key, value == "True") return dict(code="success")
def POST(self): name = xutils.get_argument("name") error = xauth.add_user(name, textutil.random_string(6)) if error is None: # 先暴力解决 xmanager.reload() return dict(code="success") else: return error
def POST(self): name = xutils.get_argument("name") password = xutils.get_argument("password") xauth.add_user(name, password) added = xauth.get_user(name) xutils.log("Add user {}", added) # 先暴力解决 xmanager.reload() raise web.seeother("/system/user?name=" + name)
def POST(self): name = xutils.get_argument("name") password = xutils.get_argument("password") xauth.add_user(name, password) added = xauth.get_user(name) xutils.log("Add user {}", added) # 先暴力解决 xmanager.reload() return self.GET()
def POST(self): args = web.input() name = args.name password = args.password xauth.add_user(name, password) added = xauth.get_user(name) print(" -- User -- ", added) # 先暴力解决 xmanager.reload() return self.GET()
def POST(self): data_dir = xutils.get_argument("DATA_DIR") xconfig.set_data_path(data_dir) set_xconfig_bool("IS_TEST") set_xconfig_bool("OPEN_PROFILE") # 先暴力解决 xmanager.reload() raise web.seeother("/system/sys_var_admin")
def main(): global app handle_args() port = config.PORT if port != DEFAULT_PORT: # 指定端口优先级最高 os.environ["PORT"] = port if not os.environ.get("PORT"): os.environ["PORT"] = port var_env = dict() config.set("port", port) config.set("start_time", xutils.format_datetime()) # 关闭autoreload使用自己实现的版本 app = web.application(list(), var_env, autoreload=False) # 初始化数据库 xtables.init() # 加载持久化的缓存 xutils.cacheutil.load_dump() # 最后的mapping,用于匹配优先级较低的处理器 last_mapping = (r"/tools/(.*)", "handlers.tools.tools.handler") manager = xmanager.init(app, var_env, last_mapping = last_mapping) xmanager.reload() def reload_callback(): # 重新加载handlers目录下的所有模块 xmanager.reload() autoreload_thread.clear_watched_files() autoreload_thread.watch_dir(xconfig.HANDLERS_DIR, recursive=True) # autoreload just reload models autoreload_thread = AutoReloadThread(reload_callback) autoreload_thread.watch_dir(xconfig.HANDLERS_DIR, recursive=True) autoreload_thread.watch_file("xtemplate.py") autoreload_thread.start() # 启动定时任务检查 manager.run_task() # 注册信号响应 # 键盘终止信号 signal.signal(signal.SIGINT, handle_signal) # kill终止信号 signal.signal(signal.SIGTERM, handle_signal) # 时钟信号 # signal.signal(signal.SIGALRM, handle_signal) # signal.alarm(5) # 启动打开浏览器选项 if xconfig.OPEN_IN_BROWSER: webbrowser.open("http://localhost:%s/" % xconfig.PORT) app.run()
def main(): global app # 处理初始化参数 handle_args() # 初始化日志 xutils.init_logger() # 初始化数据库 try_init_db() # 加载缓存 try_load_cache() # 关闭autoreload使用自己实现的版本 var_env = dict() app = web.application(list(), var_env, autoreload=False) # 最后的mapping,用于匹配优先级较低的处理器 last_mapping = (r"/tools/(.*)", "handlers.tools.tools.handler") manager = xmanager.init(app, var_env, last_mapping = last_mapping) xmanager.reload() # 重新加载template xtemplate.reload() def reload_callback(): # 重新加载handlers目录下的所有模块 xmanager.reload() autoreload_thread.clear_watched_files() autoreload_thread.watch_dir(xconfig.HANDLERS_DIR, recursive=True) # autoreload just reload models autoreload_thread = AutoReloadThread(reload_callback) autoreload_thread.watch_dir(xconfig.HANDLERS_DIR, recursive=True) autoreload_thread.watch_file("core/xtemplate.py") autoreload_thread.start() # 启动定时任务检查 manager.run_task() # 注册信号响应 # 键盘终止信号 signal.signal(signal.SIGINT, handle_signal) # kill终止信号 signal.signal(signal.SIGTERM, handle_signal) # 时钟信号 # signal.signal(signal.SIGALRM, handle_signal) # signal.alarm(5) # 启动打开浏览器选项 if xconfig.OPEN_IN_BROWSER: webbrowser.open("http://localhost:%s/" % xconfig.PORT) app.run()
def main(): global app # 处理初始化参数 handle_args() # 初始化日志 xutils.init_logger() # 初始化数据库 try_init_db() # 加载缓存 try_load_cache() # 关闭autoreload使用自己实现的版本 var_env = dict() app = web.application(list(), var_env, autoreload=False) # 最后的mapping,用于匹配优先级较低的处理器 last_mapping = (r"/tools/(.*)", "handlers.tools.tools.handler") manager = xmanager.init(app, var_env, last_mapping=last_mapping) xmanager.reload() # 重新加载template xtemplate.reload() # 文件修改检测 init_autoreload() # 启动定时任务检查 manager.run_task() # 注册信号响应 # 键盘终止信号 signal.signal(signal.SIGINT, handle_signal) # kill终止信号 signal.signal(signal.SIGTERM, handle_signal) # 时钟信号 # signal.signal(signal.SIGALRM, handle_signal) # signal.alarm(5) # 启动打开浏览器选项 if xconfig.OPEN_IN_BROWSER: webbrowser.open("http://localhost:%s/" % xconfig.PORT) # 记录已经启动 xconfig.mark_started() # 监听端口 app.run()
def POST(self): key = xutils.get_argument("key") value = xutils.get_argument("value") if key == "BASE_TEMPLATE": xmanager.reload() if key in ("FS_HIDE_FILES", "DEBUG_HTML_BOX"): value = value.lower() in ("true", "yes", "on") if key == "DEBUG": setattr(xconfig, key, value == "True") web.config.debug = xconfig.DEBUG if key in ("RECENT_SEARCH_LIMIT", "RECENT_SIZE", "PAGE_SIZE"): value = int(value) if key == "LANG": web.setcookie("lang", value) setattr(xconfig, key, value) cacheutil.hset('sys.config', key, value) return dict(code="success")
def reload_callback(): # 重新加载handlers目录下的所有模块 xmanager.reload() autoreload_thread.clear_watched_files() autoreload_thread.watch_dir(xconfig.HANDLERS_DIR, recursive=True)
def GET(self): xmanager.reload() import web raise web.seeother("/")