From 099ea7682d4e768f92799acf61f487f03ba21eaa Mon Sep 17 00:00:00 2001 From: ivan deng Date: Tue, 23 May 2023 18:49:20 +0800 Subject: [PATCH] fix common --- app_common/controllers/main.py | 2 +- app_common/models/base.py | 4 +++- app_odoo_customize/static/src/js/user_menu.js | 14 ++++++++++++++ 3 files changed, 18 insertions(+), 2 deletions(-) diff --git a/app_common/controllers/main.py b/app_common/controllers/main.py index 8514bae8..2637f060 100644 --- a/app_common/controllers/main.py +++ b/app_common/controllers/main.py @@ -28,7 +28,7 @@ class AppController(http.Controller): # 返回这个图片的base64编码 return base64.b64encode(BytesIO(response.content).read()) - @http.route(['/my/ua', '/web/ua', '/web/ua/show'], auth='public', methods=['GET']) + @http.route(['/my/ua', '/wxa/ua', '/web/ua', '/web/ua/show'], auth='public', methods=['GET']) def app_ua_show(self): # https://github.com/selwin/python-user-agents ua_string = request.httprequest.headers.get('User-Agent') diff --git a/app_common/models/base.py b/app_common/models/base.py index 970b5877..000e850e 100644 --- a/app_common/models/base.py +++ b/app_common/models/base.py @@ -130,6 +130,7 @@ def get_ua_type(): # MicroMessenger: Mozilla/5.0 (Linux; Android 10; ELE-AL00 Build/HUAWEIELE-AL00; wv) # AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/78.0.3904.62 XWEB/2767 MMWEBSDK/20210302 Mobile Safari/537.36 MMWEBID/6689 MicroMessenger/8.0.2.1860(0x2800023B) Process/appbrand2 WeChat/arm64 Weixin NetType/WIFI Language/zh_CN ABI/arm64 # MiniProgramEnv/android + # 'Mozilla/5.0 (iPhone; CPU iPhone OS 15_7_5 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148 MicroMessenger/8.0.37(0x18002529) NetType/WIFI Language/zh_CN' # 微信浏览器,开发工具,小程序,iphone # Mozilla/5.0 (iPhone; CPU iPhone OS 11_0 like Mac OS X) AppleWebKit/604.1.38 (KHTML, like Gecko) Version/11.0 Mobile/15A372 Safari/604.1 # wechatdevtools/1.03.2011120 MicroMessenger/7.0.4 Language/zh_CN webview/ @@ -142,7 +143,8 @@ def get_ua_type(): # web 表示普通浏览器,后续更深入处理 utype = 'web' # todo: 引入现成 py lib,处理企业微信 - if 'MicroMessenger' in ua and 'webdebugger' not in ua and ('MiniProgramEnv' in ua or 'wechatdevtools' in ua): + if 'MicroMessenger' in ua and 'webdebugger' not in ua \ + and ('miniProgram' in ua or 'MiniProgram' in ua or 'MiniProgramEnv' in ua or 'wechatdevtools' in ua): # 微信小程序及开发者工具 utype = 'wxapp' elif 'MicroMessenger' in ua: diff --git a/app_odoo_customize/static/src/js/user_menu.js b/app_odoo_customize/static/src/js/user_menu.js index 99776b54..05342782 100644 --- a/app_odoo_customize/static/src/js/user_menu.js +++ b/app_odoo_customize/static/src/js/user_menu.js @@ -19,6 +19,8 @@ patch(UserMenu.prototype, "app_odoo_customize.UserMenu", { this.app_lang_list = session.app_lang_list; //todo: 演习 shortCutsItem 中的用法,当前是直接 xml 写了展现 + userMenuRegistry.add("refresh_current", refresh_current, {'force': true}); + if (session.app_show_lang) { userMenuRegistry.add("separator1", separator1, {'force': true}) } @@ -166,3 +168,15 @@ function odooAccountItem(env) { sequence: 60, }; } + +function refresh_current(env) { + return { + type: "item", + id: "refresh_current", + description: env._t("Refresh Page"), + callback: () => { + location.reload(); + }, + sequence: 58, + }; +}