update odoo customize

This commit is contained in:
ivan deng
2023-02-17 14:55:37 +08:00
parent ca873f5b89
commit e22a161a6c
6 changed files with 83 additions and 97 deletions

View File

@@ -6,6 +6,7 @@ import { patch } from "@web/core/utils/patch";
import { browser } from "@web/core/browser/browser";
import { registry } from "@web/core/registry";
import { session } from "@web/session";
import { useService } from "@web/core/utils/hooks";
const userMenuRegistry = registry.category("user_menuitems");
patch(UserMenu.prototype, "app_odoo_customize.UserMenu", {
@@ -15,19 +16,59 @@ patch(UserMenu.prototype, "app_odoo_customize.UserMenu", {
userMenuRegistry.remove("asset_asset");
userMenuRegistry.remove("leave_debug");
userMenuRegistry.remove("separator0");
if (session.app_show_debug) {
userMenuRegistry.add("debug", debugItem)
.add("asset_asset", activateAssetsDebugging)
.add("leave_debug", leaveDebugMode)
.add("separator0", separator8)
}
userMenuRegistry.remove("documentation");
if (session.app_show_documentation) {
userMenuRegistry.add("documentation", documentationItem);
}
userMenuRegistry.remove("support");
if (session.app_show_support) {
userMenuRegistry.add("support", supportItem)
}
userMenuRegistry.remove("odoo_account");
userMenuRegistry.add("debug", debugItem)
.add("asset_asset", activateAssetsDebugging)
.add("leave_debug", leaveDebugMode)
.add("separator0", separator8)
.add("documentation", documentationItem)
.add("support", supportItem)
.add("odoo_account", odooAccountItem);
if (session.app_show_account) {
userMenuRegistry.add("odoo_account", odooAccountItem);
}
// this.rpc = useService("rpc");
// todo: 处理语言列表rpc取值同上处理 userMenuRegistry.add("slang_"+语言代码, debugItem(语言代码), env)
// todo: 语言图片的处理,正常直接参考 Shortcuts 的处理,直接生成 html代码即可。
// Shortcuts不成就可以扩展 @web/webclient/user_menu/user_menu 参考 CheckBox 的处理。建议直接CheckBox这个类型改增加个 element.img的处理选中的语言就是 ischecked的
//
// return env.services.rpc("/web/action/load", {
// action_id: actionID,
// additional_context: context,
// });
/*
self._rpc({
model: 'res.lang',
method: 'search_read',
domain: [],
fields: ['name', 'code'],
lazy: false,
}).then(function (res) {
_.each(res, function (lang) {
var a = '';
if (lang['code'] === session.user_context.lang) {
a = '<i class="fa fa-check"></i>';
} else {
a = '';
}
lang_list += '<a role="menuitem" href="#" class="dropdown-item" data-lang-menu="lang" data-lang-id="' + lang['code']
+ '"><img class="flag" src="app_odoo_customize/static/src/img/flags/' + lang['code'] + '.png"/>' + lang['name'] + a + '</a>';
});
lang_list += '<div role="separator" class="dropdown-divider"/>';
setTimeout( function() {
$('switch-lang').replaceWith(lang_list);
}, 1000);
})
*/
},
// getElements() {
// var ret = this._super.apply(this, arguments);