diff --git a/app_odoo_customize/__init__.py b/app_odoo_customize/__init__.py new file mode 100644 index 00000000..493e0ba3 --- /dev/null +++ b/app_odoo_customize/__init__.py @@ -0,0 +1,9 @@ +# -*- coding: utf-8 -*- + +from . import models +from . import hooks +from .hooks import pre_init_hook +from .hooks import post_init_hook + + + diff --git a/app_odoo_customize/__manifest__.py b/app_odoo_customize/__manifest__.py new file mode 100644 index 00000000..7d0424d5 --- /dev/null +++ b/app_odoo_customize/__manifest__.py @@ -0,0 +1,179 @@ +# -*- coding: utf-8 -*- + +# Created on 2018-11-26 +# author: 广州尚鹏,https://www.sunpop.cn +# email: 300883@qq.com +# resource of Sunpop +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). + +# Odoo12在线用户手册(长期更新) +# https://www.sunpop.cn/documentation/user/12.0/en/index.html + +# Odoo12在线开发者手册(长期更新) +# https://www.sunpop.cn/documentation/12.0/index.html + +# Odoo10在线中文用户手册(长期更新) +# https://www.sunpop.cn/documentation/user/10.0/zh_CN/index.html + +# Odoo10离线中文用户手册下载 +# https://www.sunpop.cn/odoo10_user_manual_document_offline/ +# Odoo10离线开发手册下载-含python教程,jquery参考,Jinja2模板,PostgresSQL参考(odoo开发必备) +# https://www.sunpop.cn/odoo10_developer_document_offline/ +# description: + +{ + 'name': 'odoo 16 Customize OEM(Boost, Data reset)', + 'version': '16.22.10.21', + 'author': 'Sunpop.cn', + 'category': 'Productivity', + 'website': 'https://www.sunpop.cn', + 'license': 'LGPL-3', + 'sequence': 2, + 'images': ['static/description/banner.gif'], + 'summary': """ + 1 click customize odoo, reset data. For quick develop. Set brand, boost, reset data, debug. Language Switcher. + Easy Delete data.reset account chart. + customize my odoo. + """, + 'depends': [ + 'base_setup', + 'web', + 'mail', + 'iap', + # 'digest', + # when enterprise + # 'web_mobile' + ], + 'data': [ + 'security/res_groups.xml', + 'security/ir.model.access.csv', + 'views/app_odoo_customize_views.xml', + 'views/app_theme_config_settings_views.xml', + 'views/res_config_settings_views.xml', + 'views/ir_views.xml', + 'views/ir_module_module_views.xml', + 'views/ir_translation_views.xml', + 'views/ir_ui_menu_views.xml', + 'views/ir_ui_view_views.xml', + 'views/ir_model_fields_views.xml', + 'views/ir_model_data_views.xml', + # data + 'data/ir_config_parameter_data.xml', + 'data/ir_module_module_data.xml', + # 'data/digest_template_data.xml', + 'data/res_company_data.xml', + ], + # 'qweb': [ + # 'static/src/xml/*.xml', + # ], + 'assets': { + 'web.assets_backend': [ + 'app_odoo_customize/static/src/scss/app.scss', + 'app_odoo_customize/static/src/scss/ribbon.scss', + 'app_odoo_customize/static/src/scss/dialog.scss', + 'app_odoo_customize/static/src/js/app_window_title.js', + 'app_odoo_customize/static/src/js/user_menu.js', + # 'app_odoo_customize/static/src/js/ribbon.js', + 'app_odoo_customize/static/src/js/dialog.js', + ], + }, + 'pre_init_hook': 'pre_init_hook', + 'post_init_hook': 'post_init_hook', + 'installable': True, + 'application': True, + 'auto_install': True, + 'description': """ + + App Customize Odoo (Change Title,Language,Documentation,Quick Debug) + ============ + White label odoo. + Support odoo 16,15,14, 13, 12, 11, 10, 9. + You can config odoo, make it look like your own platform. + 1. Deletes Odoo label in footer + 2. Replaces "Odoo" in Windows title + 3. Customize Documentation, Support, About links and title in usermenu + 4. Adds "Developer mode" link to the top right-hand User Menu. + 5. Adds Quick Language Switcher to the top right-hand User Menu. + 6. Adds Country flags to the top right-hand User Menu. + 7. Adds English and Chinese user documentation access to the top right-hand User Menu. + 8. Adds developer documentation access to the top right-hand User Menu. + 9. Customize "My odoo.com account" button + 10. Standalone setting panel, easy to setup. + 11. Provide 236 country flags. + 12. Multi-language Support. + 13. Change Powered by Odoo in login screen.(Please change '../views/app_odoo_customize_view.xml' #15) + 14. Quick delete test data in Apps: Sales/POS/Purchase/MRP/Inventory/Accounting/Project/Message/Workflow etc. + 15. Reset All the Sequence to beginning of 1: SO/PO/MO/Invoice... + 16. Fix odoo reload module translation bug while enable english language + 17. Stop Odoo Auto Subscribe(Moved to app_odoo_boost) + 18. Show/Hide Author and Website in Apps Dashboard + 19. One Click to clear all data (Sometime pls click twice) + 20. Show quick upgrade in app dashboard, click to show module info not go to odoo.com + 21. Can clear and reset account chart. Be cautious + 22. Update online manual and developer document to odoo12 + 23. Add reset or clear website blog data + 24. Customize Odoo Native Module(eg. Enterprise) Url + 25. Add remove expense data + 26. Add multi uninstall modules + 27. Add odoo boost modules link. + 28. Easy Menu manager. + 29. Apps version compare. Add Install version in App list. Add Local updatable filter in app list. + 30. 1 key export app translate file like .po file. + 31. Show or hide odoo Referral in the top menu. + 32. Fix odoo bug of complete name bug of product category and stock location.. + 33. Add Demo Ribbon Setting. + 34. Add Remove all quality data. + 35. Fixed for odoo 14. + 36. Add refresh translate for multi module. + 37. Easy noupdate manage for External Identifiers(xml_id) + 38. Add Draggable Dialog enable. + 39. Only erp manager can see debug menu.. + 40. Fix support for enterprise version. + + This module can help to white label the Odoo. + Also helpful for training and support for your odoo end-user. + The user can get the help document just by one click. + ## 在符合odoo开源协议的前提下,去除odoo版权信息,自定义你的odoo + 可完全自行设置下列 odoo 选项,让 odoo 看上去像是你的软件产品 + 支持odoo 15,14,13,12, 11, 10, 9 版本,社区版企业版通用 + 1. 删除菜单导航页脚的 Odoo 标签 + 2. 将弹出窗口中 "Odoo" 设置为自定义名称 + 3. 自定义用户菜单中的 Documentation, Support, About 的链接 + 4. 在用户菜单中增加快速切换开发模式 + 5. 在用户菜单中增加快速切换多国语言 + 6. 对语言菜单进行美化,设置国旗图标 + 7. 在用户菜单中增加中/英文用户手册,可以不用翻墙加速了 + 8. 在用户菜单中增加开发者手册,含python教程,jquery参考,Jinja2模板,PostgresSQL参考 + 9. 在用户菜单中自定义"My odoo.com account" + 10. 单独设置面板,每个选项都可以自定义 + 11. 提供236个国家的国旗文件(部份需要自行设置文件名) + 12. 多语言版本 + 13. 自定义登陆界面中的 Powered by Odoo + 14. 快速删除测试数据,支持模块包括:销售/POS门店/采购/生产/库存/会计/项目/消息与工作流等. + 15. 将各类单据的序号重置,从1开始,包括:SO/PO/MO/Invoice 等 + 16. 修复odoo启用英文后模块不显示中文的Bug + 17. 可停用odoo自动订阅功能,避免“同样对象关注2次”bug,同时提升性能 + 18. 显示/隐藏应用的作者和网站-在应用安装面板中 + 19. 一键清除所有数据(视当前数据情况,有时需点击2次) + 20. 在应用面板显示快速升级按键,点击时不会导航至 odoo.com + 21. 清除并重置会计科目表 + 22. 全新升级将odoo12用户及开发手册导航至国内网站,或者自己定义的网站 + 23. 增加清除网站数据功能 + 24. 自定义 odoo 原生模块跳转的url(比如企业版模块) + 25. 增加删除费用报销数据功能 + 26. 增加批量卸载模块功能 + 27. 增加odoo加速功能 + 28. 快速管理顶级菜单 + 29. App版本比较,快速查看可本地更新的模块 + 30. 一键导出翻译文件 po + 31. 显示或去除 odoo 推荐 + 32. 增加修复品类及区位名的操作 + 33. 增加 Demo 的显示设置 + 34. 增加清除质检数据 + 35. 优化至odoo14适用 + 36. 可为多个模块强制更新翻译 + 37. noupdate字段的快速管理,主要针对 xml_id + 38. 对话框可拖拽 + 39. 只有系统管理员可以操作快速debug + """, +} diff --git a/app_odoo_customize/data/digest_template_data.xml b/app_odoo_customize/data/digest_template_data.xml new file mode 100644 index 00000000..97f292e0 --- /dev/null +++ b/app_odoo_customize/data/digest_template_data.xml @@ -0,0 +1,156 @@ + + + + + + + % set user = ctx.get('user', user) + % set company = user.company_id + % set data = object.compute_kpis(company, user) + % set tips = object.compute_tips(company, user) + % set kpi_actions = object.compute_kpis_actions(company, user) + % set kpis = data.yesterday.keys() + + + + + + +
+ ${company.name} at a glance +
${datetime.date.today().strftime('%B %d, %Y')}
+
+ +
+
+
+ % for kpi in kpis: + + + + + + + +

+ ${object.fields_get()[kpi]['string']} + %if kpi in kpi_actions: + + View more + + %endif +
+ + + + + + +
+ + + + +
+ ${data['yesterday'][kpi][kpi]}
+ Yesterday + % if data['yesterday'][kpi]['margin'] != 0.0: + + % if data['yesterday'][kpi]['margin'] > 0.0: + ${"%.2f" % data['yesterday'][kpi]['margin']} % + % endif + % if data['yesterday'][kpi]['margin'] < 0.0: + ${"%.2f" % data['yesterday'][kpi]['margin']} % + % endif + + % endif +
+
+ + + + +
+ ${data['lastweek'][kpi][kpi]}
+ Last 7 Days + % if data['lastweek'][kpi]['margin'] != 0.0: + + % if data['lastweek'][kpi]['margin'] > 0.0: + ${"%.2f" % data['lastweek'][kpi]['margin']} % + % endif + % if data['lastweek'][kpi]['margin'] < 0.0: + ${"%.2f" % data['lastweek'][kpi]['margin']} % + %endif + + %endif +
+
+ + + + +
+ ${data['lastmonth'][kpi][kpi]}
+ Last 30 Days + % if data['lastmonth'][kpi]['margin'] != 0.0: + + % if data['lastmonth'][kpi]['margin'] > 0.0: + ${"%.2f" % data['lastmonth'][kpi]['margin']} % + % endif + % if data['lastmonth'][kpi]['margin'] < 0.0: + ${"%.2f" % data['lastmonth'][kpi]['margin']} % + %endif + + %endif +
+
+
+ % endfor + % if tips: + + + + +

+
${ctx['tip_description']|safe}
+
+ % endif + + + + + + + +

+
Run your business from anywhere with Odoo Mobile.
+
+
+
+
+ + + + +
+ % if user.has_group('base.group_system'): +
+ Want to customize the email? + Choose the metrics you care about +
+
+ % endif +

+ + Sent by + Odoo - Unsubscribe + +

+
+ + + + ]]>
+
+
diff --git a/app_odoo_customize/data/ir_config_parameter_data.xml b/app_odoo_customize/data/ir_config_parameter_data.xml new file mode 100644 index 00000000..e386bd38 --- /dev/null +++ b/app_odoo_customize/data/ir_config_parameter_data.xml @@ -0,0 +1,24 @@ + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app_odoo_customize/data/ir_module_module_data.xml b/app_odoo_customize/data/ir_module_module_data.xml new file mode 100644 index 00000000..710457d2 --- /dev/null +++ b/app_odoo_customize/data/ir_module_module_data.xml @@ -0,0 +1,64 @@ + + + + + https://www.sunpop.cn + + + + https://www.sunpop.cn + + + + https://www.sunpop.cn + + + + https://www.sunpop.cn + + + + https://www.sunpop.cn + + + + https://www.sunpop.cn + + + + https://www.sunpop.cn + + + + https://www.sunpop.cn + + + + https://www.sunpop.cn + + + + https://www.sunpop.cn + + + + https://www.sunpop.cn + + + + https://www.sunpop.cn + + + + https://www.sunpop.cn + + + + https://www.sunpop.cn + + + + https://www.sunpop.cn + + + diff --git a/app_odoo_customize/data/res_company_data.xml b/app_odoo_customize/data/res_company_data.xml new file mode 100644 index 00000000..a49f19dd --- /dev/null +++ b/app_odoo_customize/data/res_company_data.xml @@ -0,0 +1,9 @@ + + + + + + https://www.sunpop.cn + + + \ No newline at end of file diff --git a/app_odoo_customize/hooks.py b/app_odoo_customize/hooks.py new file mode 100644 index 00000000..507bc547 --- /dev/null +++ b/app_odoo_customize/hooks.py @@ -0,0 +1,49 @@ +# -*- coding: utf-8 -*- + +# Created on 2018-10-12 +# author: 广州尚鹏,https://www.sunpop.cn +# email: 300883@qq.com +# resource of Sunpop +# License LGPL-3.0 or later (http://www.gnu.org/licenses/lgpl). + +# Odoo在线中文用户手册(长期更新) +# https://www.sunpop.cn/documentation/user/10.0/zh_CN/index.html + +# Odoo10离线中文用户手册下载 +# https://www.sunpop.cn/odoo10_user_manual_document_offline/ +# Odoo10离线开发手册下载-含python教程,jquery参考,Jinja2模板,PostgresSQL参考(odoo开发必备) +# https://www.sunpop.cn/odoo10_developer_document_offline/ +# description: + +from odoo import api, SUPERUSER_ID, _ + + +def pre_init_hook(cr): + try: + # 更新企业版指向 + sql = "UPDATE ir_module_module SET website = '%s' WHERE license like '%s' and website <> ''" % ('https://www.sunpop.cn', 'OEEL%') + cr.execute(sql) + cr.commit() + except Exception as e: + pass + +def post_init_hook(cr, registry): + # a = check_module_installed(cr, ['app_web_superbar','aaaaa']) + pass + # cr.execute("") + +def uninstall_hook(cr, registry): + """ + 数据初始化,卸载时执行 + """ + pass + +def check_module_installed(cr, modules): + # modules 输入参数是个 list,如 ['base', 'sale'] + env = api.Environment(cr, SUPERUSER_ID, {}) + installed = False + m = env['ir.module.module'].sudo().search([('name', 'in', modules), ('state', 'in', ['installed', 'to install', 'to upgrade'])]) + if len(m) == len(modules): + installed = True + return len(m) + diff --git a/app_odoo_customize/i18n/zh_CN.po b/app_odoo_customize/i18n/zh_CN.po new file mode 100644 index 00000000..dbf1907f --- /dev/null +++ b/app_odoo_customize/i18n/zh_CN.po @@ -0,0 +1,535 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * app_odoo_customize +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 13.0+e-20200628\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2020-11-02 08:16+0000\n" +"PO-Revision-Date: 2020-11-02 08:16+0000\n" +"Last-Translator: \n" +"Language-Team: \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Plural-Forms: \n" + +#. module: app_odoo_customize +#. openerp-web +#: code:addons/app_odoo_customize/static/src/xml/res_config_edition.xml:0 +#, python-format +msgid "(Sunpop.cn Professional Edition)" +msgstr "(Sunpop.cn 专业版)" + +#. module: app_odoo_customize +#: model_terms:ir.ui.view,arch_db:app_odoo_customize.view_app_theme_config_settings +msgid "" +"\n" +" Accounting \n" +" " +msgstr "" +"\n" +" 财务 \n" +" " + + + +#. module: app_odoo_customize +#: model_terms:ir.ui.view,arch_db:app_odoo_customize.view_app_theme_config_settings +msgid "All Business" +msgstr "所有业务数据" + +#. module: app_odoo_customize +#: model_terms:ir.ui.view,arch_db:app_odoo_customize.view_app_theme_config_settings +msgid "Base Models" +msgstr "基础数据" + +#. module: app_odoo_customize +#: model_terms:ir.ui.view,arch_db:app_odoo_customize.view_app_theme_config_settings +msgid "Expense" +msgstr "费用" + +#. module: app_odoo_customize +#: model_terms:ir.ui.view,arch_db:app_odoo_customize.view_app_theme_config_settings +msgid "Inventory" +msgstr "库存" + +#. module: app_odoo_customize +#: model_terms:ir.ui.view,arch_db:app_odoo_customize.view_app_theme_config_settings +msgid "MRP" +msgstr "制造" + +#. module: app_odoo_customize +#: model_terms:ir.ui.view,arch_db:app_odoo_customize.view_app_theme_config_settings +msgid "POS" +msgstr "POS收银" + +#. module: app_odoo_customize +#: model_terms:ir.ui.view,arch_db:app_odoo_customize.view_app_theme_config_settings +msgid "Project" +msgstr "项目" + +#. module: app_odoo_customize +#: model_terms:ir.ui.view,arch_db:app_odoo_customize.view_app_theme_config_settings +msgid "Purchase" +msgstr "采购" + +#. module: app_odoo_customize +#: model_terms:ir.ui.view,arch_db:app_odoo_customize.view_app_theme_config_settings +msgid "Quality" +msgstr "质检" + +#. module: app_odoo_customize +#: model_terms:ir.ui.view,arch_db:app_odoo_customize.view_app_theme_config_settings +msgid "Sale" +msgstr "销售" + +#. module: app_odoo_customize +#: model_terms:ir.ui.view,arch_db:app_odoo_customize.view_app_theme_config_settings +msgid "Website And Blog" +msgstr "网站与博客" + +#. module: app_odoo_customize +#: model_terms:ir.ui.view,arch_db:app_odoo_customize.view_app_theme_config_settings +msgid "Set to False to hide" +msgstr "设置为 False 则不显示" + +#. module: app_odoo_customize +#. openerp-web +#: code:addons/app_odoo_customize/static/src/xml/customize_user_menu.xml:0 +#, python-format +msgid "Activate the developer mode" +msgstr "激活开发者模式" + +#. module: app_odoo_customize +#. openerp-web +#: code:addons/app_odoo_customize/static/src/xml/customize_user_menu.xml:0 +#, python-format +msgid "Activate the developer mode (with assets)" +msgstr "激活开发者模式 (assets)" + +#. module: app_odoo_customize +#: model_terms:ir.ui.view,arch_db:app_odoo_customize.view_app_theme_config_settings +msgid "Apply" +msgstr "应用" + +#. module: app_odoo_customize +#: model_terms:ir.ui.view,arch_db:app_odoo_customize.view_app_theme_config_settings +msgid "Cancel" +msgstr "取消" + +#. module: app_odoo_customize +#: model_terms:ir.ui.view,arch_db:app_odoo_customize.view_app_theme_config_settings +msgid "Clean and reset Account Chart" +msgstr "清除会计科目,便于重置" + +#. module: app_odoo_customize +#: model_terms:ir.ui.view,arch_db:app_odoo_customize.view_app_theme_config_settings +msgid "Click to set" +msgstr "点击设置" + +#. module: app_odoo_customize +#: model:ir.model,name:app_odoo_customize.model_res_config_settings +msgid "Config Settings" +msgstr "配置设置" + +#. module: app_odoo_customize +#: model:ir.actions.act_window,name:app_odoo_customize.action_app_theme_config +#: model:ir.ui.menu,name:app_odoo_customize.menu_app_theme_config +msgid "Customize Debrand" +msgstr "定制我的odoo" + +#. module: app_odoo_customize +#: model:ir.model.fields,field_description:app_odoo_customize.field_res_config_settings__app_enterprise_url +msgid "Customize Module Url(eg. Enterprise)" +msgstr "自定义模块链接(如企业版)" + +#. module: app_odoo_customize +#: model_terms:ir.ui.view,arch_db:app_odoo_customize.view_app_theme_config_settings +msgid "Data Cleaning (Be careful to do that!)" +msgstr "数据清理(请谨慎操作!)" + +#. module: app_odoo_customize +#. openerp-web +#: code:addons/app_odoo_customize/static/src/xml/customize_user_menu.xml:0 +#, python-format +msgid "Deactivate the developer mode" +msgstr "取消开发者模式" + +#. module: app_odoo_customize +#: model_terms:ir.ui.view,arch_db:app_odoo_customize.view_app_theme_config_settings +msgid "Delete All BOM" +msgstr "删除所有物料清单" + +#. module: app_odoo_customize +#: model_terms:ir.ui.view,arch_db:app_odoo_customize.view_app_theme_config_settings +msgid "Delete All Expense and Sheet" +msgstr "删除所有费用与报销申请" + +#. module: app_odoo_customize +#: model_terms:ir.ui.view,arch_db:app_odoo_customize.view_app_theme_config_settings +msgid "" +"Delete All MRP/Sale/Purchase/Account/MRP/Inventory/Project/Message/Workflow" +msgstr "" +"清除所有业务数据 MRP/Sale/Purchase/Account/MRP/Inventory/Project/Message/Workflow" + +#. module: app_odoo_customize +#: model_terms:ir.ui.view,arch_db:app_odoo_customize.view_app_theme_config_settings +msgid "Delete All Manufacturing Order" +msgstr "删除所有生产单" + +#. module: app_odoo_customize +#: model_terms:ir.ui.view,arch_db:app_odoo_customize.view_app_theme_config_settings +msgid "Delete All Message" +msgstr "删除所有消息" + +#. module: app_odoo_customize +#: model_terms:ir.ui.view,arch_db:app_odoo_customize.view_app_theme_config_settings +msgid "Delete All Move/Picking/Package/Lot" +msgstr "删除所有库存调拨/拣货/包装/批次数据" + +#. module: app_odoo_customize +#: model_terms:ir.ui.view,arch_db:app_odoo_customize.view_app_theme_config_settings +msgid "Delete All POS Order" +msgstr "删除所有POS订单" + +#. module: app_odoo_customize +#: model_terms:ir.ui.view,arch_db:app_odoo_customize.view_app_theme_config_settings +msgid "Delete All Product" +msgstr "删除所有产品及变体" + +#. module: app_odoo_customize +#: model_terms:ir.ui.view,arch_db:app_odoo_customize.view_app_theme_config_settings +msgid "Delete All Product Attribute" +msgstr "删除所有产品属性" + +#. module: app_odoo_customize +#: model_terms:ir.ui.view,arch_db:app_odoo_customize.view_app_theme_config_settings +msgid "Delete All Project/Task/Forecast" +msgstr "删除所有项目/任务/预测" + +#. module: app_odoo_customize +#: model_terms:ir.ui.view,arch_db:app_odoo_customize.view_app_theme_config_settings +msgid "Delete All Purchase Order and Requisition" +msgstr "删除所有询价单、采购单,采购招标" + +#. module: app_odoo_customize +#: model_terms:ir.ui.view,arch_db:app_odoo_customize.view_app_theme_config_settings +msgid "Delete All Quality" +msgstr "删除所有质检单据" + +#. module: app_odoo_customize +#: model_terms:ir.ui.view,arch_db:app_odoo_customize.view_app_theme_config_settings +msgid "Delete All Quality Setting" +msgstr "删除所有质检设置" + +#. module: app_odoo_customize +#: model_terms:ir.ui.view,arch_db:app_odoo_customize.view_app_theme_config_settings +msgid "Delete All Sales Order" +msgstr "删除所有报价单、销售单" + +#. module: app_odoo_customize +#: model_terms:ir.ui.view,arch_db:app_odoo_customize.view_app_theme_config_settings +msgid "Delete All Voucher/Invoice/Bill" +msgstr "删除所有收据/发票/账单" + +#. module: app_odoo_customize +#: model_terms:ir.ui.view,arch_db:app_odoo_customize.view_app_theme_config_settings +msgid "Delete All Website/Blog" +msgstr "删除所有网站/博客" + +#. module: app_odoo_customize +#: model_terms:ir.ui.view,arch_db:app_odoo_customize.view_app_theme_config_settings +msgid "Delete All Workflow" +msgstr "删除所有工作流" + +#. module: app_odoo_customize +#: model:ir.model.fields,field_description:app_odoo_customize.field_res_config_settings__app_documentation_dev_url +msgid "Developer Documentation Url" +msgstr "开发者手册链接" + +#. module: app_odoo_customize +#. openerp-web +#: code:addons/app_odoo_customize/static/src/xml/customize_user_menu.xml:0 +#, python-format +msgid "Developer Manual" +msgstr "开发者手册" + +#. module: app_odoo_customize +#: model:ir.model.fields,field_description:app_odoo_customize.field_web_environment_ribbon_backend__display_name +msgid "Display Name" +msgstr "显示名称" + +#. module: app_odoo_customize +#: model:ir.model.fields,field_description:app_odoo_customize.field_res_config_settings__app_documentation_url +msgid "Documentation Url" +msgstr "用户手册链接" + +#. module: app_odoo_customize +#: model:ir.actions.act_window,name:app_odoo_customize.action_server_module_multi_get_po +#: model_terms:ir.ui.view,arch_db:app_odoo_customize.app_module_view_kanban +msgid "Export Translation" +msgstr "导出翻译" + +#. module: app_odoo_customize +#: model:ir.model.fields,field_description:app_odoo_customize.field_web_environment_ribbon_backend__id +msgid "ID" +msgstr "" + +#. module: app_odoo_customize +#: model:ir.model,name:app_odoo_customize.model_base_language_install +msgid "Install Language" +msgstr "安装语言" + +#. module: app_odoo_customize +#: model:ir.model.fields,field_description:app_odoo_customize.field_web_environment_ribbon_backend____last_update +msgid "Last Modified on" +msgstr "" + +#. module: app_odoo_customize +#: model:ir.ui.menu,name:app_odoo_customize.menu_app_demo_data +msgid "Load demo data" +msgstr "加载演示数据" + +#. module: app_odoo_customize +#: model:ir.model.fields,field_description:app_odoo_customize.field_ir_module_module__local_updatable +#: model_terms:ir.ui.view,arch_db:app_odoo_customize.app_view_module_filter +msgid "Local updatable" +msgstr "可本地更新" + +#. module: app_odoo_customize +#: model:ir.model,name:app_odoo_customize.model_ir_module_module +msgid "Module" +msgstr "模块" + +#. module: app_odoo_customize +#: model:ir.model.fields,field_description:app_odoo_customize.field_res_config_settings__app_account_title +msgid "My Odoo.com Account Title" +msgstr "我的帐户显示标题" + +#. module: app_odoo_customize +#: model:ir.model.fields,field_description:app_odoo_customize.field_res_config_settings__app_account_url +msgid "My Odoo.com Account Url" +msgstr "我的帐户链接" + +#. module: app_odoo_customize +#: model_terms:ir.ui.view,arch_db:app_odoo_customize.view_app_theme_config_settings +msgid "Please confirm to delete the select data?" +msgstr "您确认要删除指定数据?" + +#. module: app_odoo_customize +#: model_terms:ir.ui.view,arch_db:app_odoo_customize.replace_login +msgid "Powered by odooApp" +msgstr "技术支持 Sunpop.cn" + +#. module: app_odoo_customize +#: model:ir.actions.server,name:app_odoo_customize.action_server_module_multi_refresh_po +#: model_terms:ir.ui.view,arch_db:app_odoo_customize.app_module_view_kanban +msgid "Refresh Translation" +msgstr "刷新翻译" + +#. module: app_odoo_customize +#: model_terms:ir.ui.view,arch_db:app_odoo_customize.view_app_theme_config_settings +msgid "Reset Category And Location Complete Name" +msgstr "重置品类及区位显示名" + +#. module: app_odoo_customize +#: model:ir.model.fields,help:app_odoo_customize.field_res_config_settings__app_system_name +msgid "Setup System Name,which replace Odoo" +msgstr "设定系统名称,代替原 Odoo 字样" + +#. module: app_odoo_customize +#: model:ir.model.fields,field_description:app_odoo_customize.field_res_config_settings__group_show_author_in_apps +#: model:res.groups,name:app_odoo_customize.group_show_author_in_apps +msgid "Show Author in Apps Dashboard" +msgstr "显示应用的作者-在安装面板中" + +#. module: app_odoo_customize +#: model:ir.model.fields,field_description:app_odoo_customize.field_res_config_settings__app_ribbon_name +msgid "Show Demo Ribbon" +msgstr "显示全站测试标签" + +#. module: app_odoo_customize +#: model:ir.model.fields,field_description:app_odoo_customize.field_res_config_settings__app_show_documentation_dev +msgid "Show Developer Documentation" +msgstr "显示开发者文档" + +#. module: app_odoo_customize +#: model:ir.model.fields,field_description:app_odoo_customize.field_res_config_settings__app_show_documentation +msgid "Show Documentation" +msgstr "显示文档" + +#. module: app_odoo_customize +#: model:ir.model.fields,field_description:app_odoo_customize.field_res_config_settings__app_show_enterprise +msgid "Show Enterprise Tag" +msgstr "显示升级企业版标签提醒" + +#. module: app_odoo_customize +#: model:ir.model.fields,field_description:app_odoo_customize.field_res_config_settings__app_show_account +msgid "Show My Account" +msgstr "显示我的帐户" + +#. module: app_odoo_customize +#: model:ir.model.fields,field_description:app_odoo_customize.field_res_config_settings__module_odoo_referral +msgid "Show Odoo Referral" +msgstr "显示Odoo推荐" + +#. module: app_odoo_customize +#: model:ir.model.fields,field_description:app_odoo_customize.field_res_config_settings__app_show_poweredby +msgid "Show Powered by Odoo" +msgstr "显示Powered by Odoo" + +#. module: app_odoo_customize +#: model:ir.model.fields,field_description:app_odoo_customize.field_res_config_settings__app_show_debug +msgid "Show Quick Debug" +msgstr "显示快速调试" + +#. module: app_odoo_customize +#: model:ir.model.fields,field_description:app_odoo_customize.field_res_config_settings__app_show_lang +msgid "Show Quick Language Switcher" +msgstr "显示快速多语言切换" + +#. module: app_odoo_customize +#: model:res.groups,name:app_odoo_customize.group_show_quick_upgrade +msgid "Show Quick Upgrade in Apps Dashboard" +msgstr "在应用面板显示快速升级按键" + +#. module: app_odoo_customize +#: model:ir.model.fields,field_description:app_odoo_customize.field_res_config_settings__app_show_share +msgid "Show Share Dashboard" +msgstr "显示分享Odoo" + +#. module: app_odoo_customize +#: model:ir.model.fields,field_description:app_odoo_customize.field_res_config_settings__app_show_support +msgid "Show Support" +msgstr "显示支持" + +#. module: app_odoo_customize +#: model:ir.model.fields,field_description:app_odoo_customize.field_res_config_settings__app_support_url +msgid "Support Url" +msgstr "支持链接" + +#. module: app_odoo_customize +#: model:ir.model.fields,field_description:app_odoo_customize.field_res_config_settings__app_system_name +#: model_terms:ir.ui.view,arch_db:app_odoo_customize.view_app_theme_config_settings +msgid "System Name" +msgstr "系统名称" + +#. module: app_odoo_customize +#: model_terms:ir.ui.view,arch_db:app_odoo_customize.app_edit_menu_access_search +msgid "Top Menu" +msgstr "顶级菜单" + +#. module: app_odoo_customize +#: model:ir.model.fields,help:app_odoo_customize.field_res_config_settings__group_show_author_in_apps +msgid "Uncheck to Hide Author and Website in Apps Dashboard" +msgstr "不选中则会隐藏 App 作者及网站" + +#. module: app_odoo_customize +#: model:ir.model.fields,help:app_odoo_customize.field_res_config_settings__app_show_enterprise +msgid "Uncheck to hide the Enterprise tag" +msgstr "不选中则会隐藏升级到企业版标签" + +#. module: app_odoo_customize +#: model:ir.model.fields,help:app_odoo_customize.field_res_config_settings__app_show_share +msgid "Uncheck to hide the Odoo Share Dashboard" +msgstr "不选中则会隐藏odoo分享" + +#. module: app_odoo_customize +#: model:ir.model.fields,help:app_odoo_customize.field_res_config_settings__app_show_poweredby +msgid "Uncheck to hide the Powered by text" +msgstr "不勾选则不显示Odoo Powered by" + +#. module: app_odoo_customize +#: model:ir.model.fields,help:app_odoo_customize.field_res_config_settings__module_odoo_referral +msgid "Uncheck to remove the Odoo Referral" +msgstr "不勾选则不显示Odoo推荐" + +#. module: app_odoo_customize +#: model_terms:ir.ui.view,arch_db:app_odoo_customize.app_module_view_kanban +msgid "Uninstall" +msgstr "卸载" + +#. module: app_odoo_customize +#: model:ir.actions.server,name:app_odoo_customize.action_server_module_multi_uninstall +msgid "Uninstall Modules" +msgstr "卸载应用" + +#. module: app_odoo_customize +#: model_terms:ir.ui.view,arch_db:app_odoo_customize.app_module_view_kanban +msgid "Upgrade" +msgstr "升级" + +#. module: app_odoo_customize +#: model_terms:ir.ui.view,arch_db:app_odoo_customize.view_app_theme_config_settings +msgid "User Menu" +msgstr "用户菜单" + +#. module: app_odoo_customize +#: model_terms:ir.ui.view,arch_db:app_odoo_customize.view_app_theme_config_settings +msgid "User Menu Content" +msgstr "菜单项具体操作设置" + +#. module: app_odoo_customize +#: model:ir.model,name:app_odoo_customize.model_ir_ui_view +msgid "View" +msgstr "视图" + +#. module: app_odoo_customize +#: model_terms:ir.ui.view,arch_db:app_odoo_customize.view_app_theme_config_settings +msgid "Visit our website for more apps and Support. https://www.sunpop.cn" +msgstr "请访问我们的网站获取更多支持. http://www.sunpop.cn" + +#. module: app_odoo_customize +#: model:ir.model,name:app_odoo_customize.model_web_environment_ribbon_backend +msgid "Web Environment Ribbon Backend" +msgstr "全站测试标签" + +#. module: app_odoo_customize +#: model:ir.model.fields,help:app_odoo_customize.field_res_config_settings__app_show_account +msgid "When enable,User can login to your website" +msgstr "启用后,会显示登录到你的网站" + +#. module: app_odoo_customize +#: model:ir.model.fields,help:app_odoo_customize.field_res_config_settings__app_show_lang +msgid "When enable,User can quick switch language in user menu" +msgstr "启用后,会显示快速语言切换菜单" + +#. module: app_odoo_customize +#: model:ir.model.fields,help:app_odoo_customize.field_res_config_settings__app_show_documentation_dev +msgid "When enable,User can visit development documentation" +msgstr "启用后,会显示开发手册链接" + +#. module: app_odoo_customize +#: model:ir.model.fields,help:app_odoo_customize.field_res_config_settings__app_show_documentation +msgid "When enable,User can visit user manual" +msgstr "启用后,会显示用户手册链接" + +#. module: app_odoo_customize +#: model:ir.model.fields,help:app_odoo_customize.field_res_config_settings__app_show_support +msgid "When enable,User can vist your support site" +msgstr "启用后,会显示在线支持链接" + +#. module: app_odoo_customize +#: model:ir.model.fields,help:app_odoo_customize.field_res_config_settings__app_show_debug +msgid "When enable,everyone login can see the debug menu" +msgstr "启用后,会显示快速调试菜单" + +#. module: app_odoo_customize +#: model_terms:ir.ui.view,arch_db:app_odoo_customize.view_app_theme_config_settings +msgid "White Label Setting" +msgstr "个性化odoo设置" + +#. module: app_odoo_customize +#. openerp-web +#: code:addons/app_odoo_customize/static/src/xml/res_config_edition.xml:0 +#: model:ir.ui.menu,name:app_odoo_customize.menu_app_group +#, python-format +msgid "odooApp" +msgstr "" + +#. module: app_odoo_customize +#: model_terms:ir.ui.view,arch_db:app_odoo_customize.view_app_theme_config_settings +msgid "odooApp Customize Settings" +msgstr "odooApp 定制化设置" diff --git a/app_odoo_customize/models/__init__.py b/app_odoo_customize/models/__init__.py new file mode 100644 index 00000000..3c95cea5 --- /dev/null +++ b/app_odoo_customize/models/__init__.py @@ -0,0 +1,9 @@ +# -*- coding: utf-8 -*- + +from . import res_config_settings +from . import base_language_install +from . import ir_module_module +from . import web_environment_ribbon_backend +from . import ir_http +# from . import ir_ui_view +# from . import ir_ui_menu diff --git a/app_odoo_customize/models/base_language_install.py b/app_odoo_customize/models/base_language_install.py new file mode 100644 index 00000000..1edd0381 --- /dev/null +++ b/app_odoo_customize/models/base_language_install.py @@ -0,0 +1,18 @@ +# -*- coding: utf-8 -*- +# License LGPL-3.0 or later (http://www.gnu.org/licenses/lgpl.html). + +from odoo import api, fields, models, _ + + +class BaseLanguageInstall(models.TransientModel): + _inherit = "base.language.install" + + def lang_install(self): + self.ensure_one() + if self.overwrite: + self.env.cr.execute(""" + delete from ir_translation + where lang=%s + """, (self.lang,)) + self.env.cr.commit() + return super(BaseLanguageInstall, self).lang_install() diff --git a/app_odoo_customize/models/ir_http.py b/app_odoo_customize/models/ir_http.py new file mode 100644 index 00000000..ddf8a9d6 --- /dev/null +++ b/app_odoo_customize/models/ir_http.py @@ -0,0 +1,27 @@ +# -*- coding: utf-8 -*- +# Part of Odoo. See LICENSE file for full copyright and licensing details. + + +from odoo import models +from odoo.http import request + + + +class IrHttp(models.AbstractModel): + _inherit = 'ir.http' + + def session_info(self): + result = super(IrHttp, self).session_info() + config_parameter = request.env['ir.config_parameter'].sudo() + result['app_system_name'] = config_parameter.get_param('app_system_name', 'odooApp') + result['app_documentation_url'] = config_parameter.get_param('app_documentation_url') + result['app_documentation_dev_url'] = config_parameter.get_param('app_documentation_dev_url') + result['app_support_url'] = config_parameter.get_param('app_support_url') + result['app_account_title'] = config_parameter.get_param('app_account_title') + result['app_account_url'] = config_parameter.get_param('app_account_url') + result['app_show_documentation'] = config_parameter.get_param('app_show_documentation') + result['app_show_documentation_dev'] = config_parameter.get_param('app_show_documentation_dev') + result['app_show_support'] = config_parameter.get_param('app_show_support') + result['app_show_account'] = config_parameter.get_param('app_show_account') + result['app_show_poweredby'] = config_parameter.get_param('app_show_poweredby') + return result diff --git a/app_odoo_customize/models/ir_module_module.py b/app_odoo_customize/models/ir_module_module.py new file mode 100644 index 00000000..e8028b2b --- /dev/null +++ b/app_odoo_customize/models/ir_module_module.py @@ -0,0 +1,58 @@ +# -*- coding: utf-8 -*- + +from odoo import api, fields, models, modules, tools, _ + +import operator + +class IrModule(models.Model): + _inherit = 'ir.module.module' + + # attention: Incorrect field names !! + # installed_version refers the latest version (the one on disk) + # latest_version refers the installed version (the one in database) + # published_version refers the version available on the repository + # installed_version = fields.Char('Latest Version', compute='_get_latest_version') + # latest_version = fields.Char('Installed Version', readonly=True) + + local_updatable = fields.Boolean('Local updatable', compute='_get_latest_version', compute_sudo=False, default=False, store=True) + + def module_multi_uninstall(self): + """ Perform the various steps required to uninstall a module completely + including the deletion of all database structures created by the module: + tables, columns, constraints, etc. + """ + modules = self.browse(self.env.context.get('active_ids')) + [module.button_immediate_uninstall() for module in modules if module not in ['base', 'web']] + + # 更新翻译,当前语言 + def module_multi_refresh_po(self): + lang = self.env.user.lang + modules = self.browse(self.env.context.get('active_ids')) + # 先清理, odoo原生经常清理不干净 + for rec in modules: + translate = self.env['ir.translation'].search([ + ('lang', '=', lang), + ('module', '=', rec.name) + ]) + translate.sudo().unlink() + # 再重载 + self.sudo().with_context(overwrite=True)._update_translations(lang) + + def button_get_po(self): + self.ensure_one() + action = self.env.ref('app_odoo_customize.action_server_module_multi_get_po').read()[0] + action['context'].update({ + 'default_lang': self.env.user.lang, + }) + return action + + @api.depends('name', 'latest_version', 'state') + def _get_latest_version(self): + default_version = modules.adapt_version('1.0') + for module in self: + module.installed_version = self.get_module_info(module.name).get('version', default_version) + if module.installed_version and module.latest_version and operator.gt(module.installed_version, module.latest_version): + module.local_updatable = True + else: + module.local_updatable = False + diff --git a/app_odoo_customize/models/ir_ui_menu.py b/app_odoo_customize/models/ir_ui_menu.py new file mode 100644 index 00000000..98a32443 --- /dev/null +++ b/app_odoo_customize/models/ir_ui_menu.py @@ -0,0 +1,26 @@ +# -*- coding: utf-8 -*- + +import re + +from odoo import api, fields, models, tools, _ + +MENU_ITEM_SEPARATOR = "/" +NUMBER_PARENS = re.compile(r"\(([0-9]+)\)") + + +class IrUiMenu(models.Model): + _inherit = 'ir.ui.menu' + + def _get_full_name(self, level=6): + """ Return the full name of ``self`` (up to a certain level). """ + if level <= 0: + return '...' + if self.parent_id: + try: + name = self.parent_id._get_full_name(level - 1) + MENU_ITEM_SEPARATOR + (self.name or "") + except Exception: + name = self.name or "..." + else: + name = self.name + return name + diff --git a/app_odoo_customize/models/ir_ui_view.py b/app_odoo_customize/models/ir_ui_view.py new file mode 100644 index 00000000..30217efd --- /dev/null +++ b/app_odoo_customize/models/ir_ui_view.py @@ -0,0 +1,17 @@ +# -*- coding: utf-8 -*- + +import logging + +from odoo import api, fields, models, _ + +_logger = logging.getLogger(__name__) + +class View(models.Model): + _inherit = 'ir.ui.view' + + def _render_template(self, template, values=None, engine='ir.qweb'): + # if template in ['web.login', 'web.webclient_bootstrap']: + if not values: + values = {} + values["title"] = values["app_title"] = self.env['ir.config_parameter'].sudo().get_param("app_system_name", "odooApp") + return super(View, self)._render_template(template, values=values, engine=engine) diff --git a/app_odoo_customize/models/res_config_settings.py b/app_odoo_customize/models/res_config_settings.py new file mode 100644 index 00000000..98176652 --- /dev/null +++ b/app_odoo_customize/models/res_config_settings.py @@ -0,0 +1,542 @@ +# -*- coding: utf-8 -*- + +import logging + +from odoo import api, fields, models, _ +from odoo.exceptions import UserError, ValidationError + +_logger = logging.getLogger(__name__) + + +class ResConfigSettings(models.TransientModel): + _inherit = 'res.config.settings' + + app_system_name = fields.Char('System Name', help="Setup System Name,which replace Odoo") + app_show_lang = fields.Boolean('Show Quick Language Switcher', + help="When enable,User can quick switch language in user menu") + app_show_debug = fields.Boolean('Show Quick Debug', help="When enable,everyone login can see the debug menu") + app_show_documentation = fields.Boolean('Show Documentation', help="When enable,User can visit user manual") + app_show_documentation_dev = fields.Boolean('Show Developer Documentation', + help="When enable,User can visit development documentation") + app_show_support = fields.Boolean('Show Support', help="When enable,User can vist your support site") + app_show_account = fields.Boolean('Show My Account', help="When enable,User can login to your website") + app_show_enterprise = fields.Boolean('Show Enterprise Tag', help="Uncheck to hide the Enterprise tag") + app_show_share = fields.Boolean('Show Share Dashboard', help="Uncheck to hide the Odoo Share Dashboard") + app_show_poweredby = fields.Boolean('Show Powered by Odoo', help="Uncheck to hide the Powered by text") + group_show_author_in_apps = fields.Boolean(string="Show Author in Apps Dashboard", implied_group='app_odoo_customize.group_show_author_in_apps', + help="Uncheck to Hide Author and Website in Apps Dashboard") + module_odoo_referral = fields.Boolean('Show Odoo Referral', help="Uncheck to remove the Odoo Referral") + + app_documentation_url = fields.Char('Documentation Url') + app_documentation_dev_url = fields.Char('Developer Documentation Url') + app_support_url = fields.Char('Support Url') + app_account_title = fields.Char('My Odoo.com Account Title') + app_account_url = fields.Char('My Odoo.com Account Url') + app_enterprise_url = fields.Char('Customize Module Url(eg. Enterprise)') + app_ribbon_name = fields.Char('Show Demo Ribbon') + + @api.model + def get_values(self): + res = super(ResConfigSettings, self).get_values() + ir_config = self.env['ir.config_parameter'].sudo() + app_system_name = ir_config.get_param('app_system_name', default='odooApp') + + app_show_lang = True if ir_config.get_param('app_show_lang') == "True" else False + app_show_debug = True if ir_config.get_param('app_show_debug') == "True" else False + app_show_documentation = True if ir_config.get_param('app_show_documentation') == "True" else False + app_show_documentation_dev = True if ir_config.get_param('app_show_documentation_dev') == "True" else False + app_show_support = True if ir_config.get_param('app_show_support') == "True" else False + app_show_account = True if ir_config.get_param('app_show_account') == "True" else False + app_show_enterprise = True if ir_config.get_param('app_show_enterprise') == "True" else False + app_show_share = True if ir_config.get_param('app_show_share') == "True" else False + app_show_poweredby = True if ir_config.get_param('app_show_poweredby') == "True" else False + + app_documentation_url = ir_config.get_param('app_documentation_url', + default='https://www.sunpop.cn/documentation/user/12.0/en/index.html') + app_documentation_dev_url = ir_config.get_param('app_documentation_dev_url', + default='https://www.sunpop.cn/documentation/12.0/index.html') + app_support_url = ir_config.get_param('app_support_url', default='https://www.sunpop.cn/trial/') + app_account_title = ir_config.get_param('app_account_title', default='My Online Account') + app_account_url = ir_config.get_param('app_account_url', default='https://www.sunpop.cn/my-account/') + app_enterprise_url = ir_config.get_param('app_enterprise_url', default='https://www.sunpop.cn') + app_ribbon_name = ir_config.get_param('app_ribbon_name', default='*Sunpop.cn') + res.update( + app_system_name=app_system_name, + app_show_lang=app_show_lang, + app_show_debug=app_show_debug, + app_show_documentation=app_show_documentation, + app_show_documentation_dev=app_show_documentation_dev, + app_show_support=app_show_support, + app_show_account=app_show_account, + app_show_enterprise=app_show_enterprise, + app_show_share=app_show_share, + app_show_poweredby=app_show_poweredby, + + app_documentation_url=app_documentation_url, + app_documentation_dev_url=app_documentation_dev_url, + app_support_url=app_support_url, + app_account_title=app_account_title, + app_account_url=app_account_url, + app_enterprise_url=app_enterprise_url, + app_ribbon_name=app_ribbon_name + ) + return res + + def set_values(self): + super(ResConfigSettings, self).set_values() + ir_config = self.env['ir.config_parameter'].sudo() + ir_config.set_param("app_system_name", self.app_system_name or "") + ir_config.set_param("app_show_lang", self.app_show_lang or "False") + ir_config.set_param("app_show_debug", self.app_show_debug or "False") + ir_config.set_param("app_show_documentation", self.app_show_documentation or "False") + ir_config.set_param("app_show_documentation_dev", self.app_show_documentation_dev or "False") + ir_config.set_param("app_show_support", self.app_show_support or "False") + ir_config.set_param("app_show_account", self.app_show_account or "False") + ir_config.set_param("app_show_enterprise", self.app_show_enterprise or "False") + ir_config.set_param("app_show_share", self.app_show_share or "False") + ir_config.set_param("app_show_poweredby", self.app_show_poweredby or "False") + + ir_config.set_param("app_documentation_url", + self.app_documentation_url or "https://www.sunpop.cn/documentation/user/12.0/en/index.html") + ir_config.set_param("app_documentation_dev_url", + self.app_documentation_dev_url or "https://www.sunpop.cn/documentation/12.0/index.html") + ir_config.set_param("app_support_url", self.app_support_url or "https://www.sunpop.cn/trial/") + ir_config.set_param("app_account_title", self.app_account_title or "My Online Account") + ir_config.set_param("app_account_url", self.app_account_url or "https://www.sunpop.cn/my-account/") + ir_config.set_param("app_enterprise_url", self.app_enterprise_url or "https://www.sunpop.cn") + ir_config.set_param("app_ribbon_name", self.app_ribbon_name or "*Sunpop.cn") + + def set_module_url(self): + sql = "UPDATE ir_module_module SET website = '%s' WHERE license like '%s' and website <> ''" % (self.app_enterprise_url, 'OEEL%') + try: + self._cr.execute(sql) + self._cr.commit() + except Exception as e: + pass + + # 清数据,o=对象, s=序列 + def remove_app_data(self, o, s=[]): + for line in o: + # 检查是否存在 + try: + if not self.env['ir.model']._get(line): + continue + except Exception as e: + _logger.warning('remove data error get ir.model: %s,%s', line, e) + continue + obj_name = line + obj = self.pool.get(obj_name) + if not obj: + # 有时安装出错数据乱,没有 obj 但有 table + t_name = obj_name.replace('.', '_') + else: + t_name = obj._table + + sql = "delete from %s" % t_name + # 增加多公司处理 + try: + self._cr.execute(sql) + self._cr.commit() + except Exception as e: + _logger.warning('remove data error: %s,%s', line, e) + # 更新序号 + for line in s: + domain = ['|', ('code', '=ilike', line + '%'), ('prefix', '=ilike', line + '%')] + try: + seqs = self.env['ir.sequence'].sudo().search(domain) + if seqs.exists(): + seqs.write({ + 'number_next': 1, + }) + except Exception as e: + _logger.warning('reset sequence data error: %s,%s', line, e) + return True + + def remove_sales(self): + to_removes = [ + # 清除销售单据 + 'sale.order.line', + 'sale.order', + # 销售提成,自用 + # 'sale.commission.line', + # 不能删除报价单模板 + # 'sale.order.template.option', + # 'sale.order.template.line', + # 'sale.order.template', + ] + seqs = [ + 'sale', + ] + return self.remove_app_data(to_removes, seqs) + + def remove_product(self): + to_removes = [ + # 清除产品数据 + 'product.product', + 'product.template', + ] + seqs = [ + 'product.product', + ] + return self.remove_app_data(to_removes, seqs) + + def remove_product_attribute(self): + to_removes = [ + # 清除产品属性 + 'product.attribute.value', + 'product.attribute', + ] + seqs = [] + return self.remove_app_data(to_removes, seqs) + + def remove_pos(self): + to_removes = [ + # 清除POS单据 + 'pos.payment', + 'pos.order.line', + 'pos.order', + 'pos.session', + ] + seqs = [ + 'pos.', + ] + res = self.remove_app_data(to_removes, seqs) + + # 更新要关帐的值,因为 store=true 的计算字段要重置 + + try: + statement = self.env['account.bank.statement'].sudo().search([]) + for s in statement: + s._end_balance() + except Exception as e: + _logger.error('reset sequence data error: %s', e) + return res + + def remove_purchase(self): + to_removes = [ + # 清除采购单据 + 'purchase.order.line', + 'purchase.order', + 'purchase.requisition.line', + 'purchase.requisition', + ] + seqs = [ + 'purchase.', + ] + return self.remove_app_data(to_removes, seqs) + + def remove_expense(self): + to_removes = [ + # 清除 + 'hr.expense.sheet', + 'hr.expense', + 'hr.payslip', + 'hr.payslip.run', + ] + seqs = [ + 'hr.expense.', + ] + return self.remove_app_data(to_removes, seqs) + + def remove_mrp(self): + to_removes = [ + # 清除生产单据 + 'mrp.workcenter.productivity', + 'mrp.workorder', + 'mrp.production.workcenter.line', + 'change.production.qty', + 'mrp.production', + 'mrp.production.product.line', + 'mrp.unbuild', + 'change.production.qty', + 'sale.forecast.indirect', + 'sale.forecast', + ] + seqs = [ + 'mrp.', + ] + return self.remove_app_data(to_removes, seqs) + + def remove_mrp_bom(self): + to_removes = [ + # 清除生产BOM + 'mrp.bom.line', + 'mrp.bom', + ] + seqs = [] + return self.remove_app_data(to_removes, seqs) + + def remove_inventory(self): + to_removes = [ + # 清除库存单据 + 'stock.quant', + 'stock.move.line', + 'stock.package_level', + 'stock.quantity.history', + 'stock.quant.package', + 'stock.move', + # 'stock.pack.operation', + 'stock.picking', + 'stock.scrap', + 'stock.picking.batch', + 'stock.inventory.line', + 'stock.inventory', + 'stock.valuation.layer', + 'stock.production.lot', + # 'stock.fixed.putaway.strat', + 'procurement.group', + ] + seqs = [ + 'stock.', + 'picking.', + 'procurement.group', + 'product.tracking.default', + 'WH/', + ] + return self.remove_app_data(to_removes, seqs) + + def remove_account(self): + to_removes = [ + # 清除财务会计单据 + 'payment.transaction', + # 'account.voucher.line', + # 'account.voucher', + # 'account.invoice.line', + # 'account.invoice.refund', + # 'account.invoice', + 'account.bank.statement.line', + 'account.payment', + 'account.analytic.line', + 'account.analytic.account', + 'account.partial.reconcile', + 'account.move.line', + 'hr.expense.sheet', + 'account.move', + ] + res = self.remove_app_data(to_removes, []) + + # extra 更新序号 + domain = [ + ('company_id', '=', self.env.company.id), + '|', ('code', '=ilike', 'account.%'), + '|', ('prefix', '=ilike', 'BNK1/%'), + '|', ('prefix', '=ilike', 'CSH1/%'), + '|', ('prefix', '=ilike', 'INV/%'), + '|', ('prefix', '=ilike', 'EXCH/%'), + '|', ('prefix', '=ilike', 'MISC/%'), + '|', ('prefix', '=ilike', '账单/%'), + ('prefix', '=ilike', '杂项/%') + ] + try: + seqs = self.env['ir.sequence'].search(domain) + if seqs.exists(): + seqs.write({ + 'number_next': 1, + }) + except Exception as e: + _logger.error('reset sequence data error: %s,%s', domain, e) + return res + + def remove_account_chart(self): + company_id = self.env.company.id + self = self.with_context(force_company=company_id, company_id=company_id) + to_removes = [ + # 清除财务科目,用于重设 + 'res.partner.bank', + 'account.move.line', + 'account.invoice', + 'account.payment', + 'account.bank.statement', + 'account.tax.account.tag', + 'account.tax', + 'account.account.account.tag', + 'wizard_multi_charts_accounts', + 'account.journal', + 'account.account', + ] + # todo: 要做 remove_hr,因为工资表会用到 account + # 更新account关联,很多是多公司字段,故只存在 ir_property,故在原模型,只能用update + try: + field1 = self.env['ir.model.fields']._get('product.template', "taxes_id").id + field2 = self.env['ir.model.fields']._get('product.template', "supplier_taxes_id").id + + sql = "delete from ir_default where (field_id = %s or field_id = %s) and company_id=%d" \ + % (field1, field2, company_id) + sql2 = "update account_journal set bank_account_id=NULL where company_id=%d;" % company_id + self._cr.execute(sql) + self._cr.execute(sql2) + + self._cr.commit() + except Exception as e: + _logger.error('remove data error: %s,%s', 'account_chart: set tax and account_journal', e) + + # 增加对 pos的处理 + if self.env['ir.model']._get('pos.config'): + self.env['pos.config'].write({ + 'journal_id': False, + }) + # todo: 以下处理参考 res.partner的合并,将所有m2o的都一次处理,不需要次次找模型 + # partner 处理 + try: + rec = self.env['res.partner'].search([]) + for r in rec: + r.write({ + 'property_account_receivable_id': None, + 'property_account_payable_id': None, + }) + except Exception as e: + _logger.error('remove data error: %s,%s', 'account_chart', e) + # 品类处理 + try: + rec = self.env['product.category'].search([]) + for r in rec: + r.write({ + 'property_account_income_categ_id': None, + 'property_account_expense_categ_id': None, + 'property_account_creditor_price_difference_categ': None, + 'property_stock_account_input_categ_id': None, + 'property_stock_account_output_categ_id': None, + 'property_stock_valuation_account_id': None, + }) + except Exception as e: + pass + # 产品处理 + try: + rec = self.env['product.template'].search([]) + for r in rec: + r.write({ + 'property_account_income_id': None, + 'property_account_expense_id': None, + }) + except Exception as e: + pass + # 库存计价处理 + try: + rec = self.env['stock.location'].search([]) + for r in rec: + r.write({ + 'valuation_in_account_id': None, + 'valuation_out_account_id': None, + }) + except Exception as e: + pass # raise Warning(e) + + seqs = [] + res = self.remove_app_data(to_removes, seqs) + self.env.company.write({'chart_template_id': False}) + return res + + def remove_project(self): + to_removes = [ + # 清除项目 + 'account.analytic.line', + 'project.task', + 'project.forecast', + 'project.project', + ] + seqs = [] + return self.remove_app_data(to_removes, seqs) + + def remove_quality(self): + to_removes = [ + # 清除质检数据 + 'quality.check', + 'quality.alert', + # 'quality.point', + # 'quality.alert.stage', + # 'quality.alert.team', + # 'quality.point.test_type', + # 'quality.reason', + # 'quality.tag', + ] + seqs = [ + 'quality.check', + 'quality.alert', + # 'quality.point', + ] + return self.remove_app_data(to_removes, seqs) + + def remove_quality_setting(self): + to_removes = [ + # 清除质检设置 + 'quality.point', + 'quality.alert.stage', + 'quality.alert.team', + 'quality.point.test_type', + 'quality.reason', + 'quality.tag', + ] + return self.remove_app_data(to_removes) + + def remove_website(self): + to_removes = [ + # 清除网站数据,w, w_blog + 'blog.tag.category', + 'blog.tag', + 'blog.post', + 'blog.blog', + 'product.wishlist', + 'website.published.multi.mixin', + 'website.published.mixin', + 'website.multi.mixin', + 'website.visitor', + 'website.redirect', + 'website.seo.metadata', + # 'website.page', + # 'website.menu', + # 'website', + ] + seqs = [] + return self.remove_app_data(to_removes, seqs) + + def remove_message(self): + to_removes = [ + # 清除消息数据 + 'mail.message', + 'mail.followers', + 'mail.activity', + ] + seqs = [] + return self.remove_app_data(to_removes, seqs) + + def remove_workflow(self): + to_removes = [ + # 清除工作流 + 'wkf.workitem', + 'wkf.instance', + ] + seqs = [] + return self.remove_app_data(to_removes, seqs) + + def remove_all_biz(self): + self.remove_account() + self.remove_quality() + self.remove_inventory() + self.remove_purchase() + self.remove_mrp() + self.remove_sales() + self.remove_project() + self.remove_pos() + self.remove_expense() + self.remove_message() + return True + + def reset_cat_loc_name(self): + ids = self.env['product.category'].search([ + ('parent_id', '!=', False) + ], order='complete_name') + for rec in ids: + try: + rec._compute_complete_name() + except: + pass + ids = self.env['stock.location'].search([ + ('location_id', '!=', False), + ('usage', '!=', 'views'), + ], order='complete_name') + for rec in ids: + try: + rec._compute_complete_name() + except: + pass + return True diff --git a/app_odoo_customize/models/web_environment_ribbon_backend.py b/app_odoo_customize/models/web_environment_ribbon_backend.py new file mode 100644 index 00000000..b1ec801d --- /dev/null +++ b/app_odoo_customize/models/web_environment_ribbon_backend.py @@ -0,0 +1,36 @@ +# Copyright 2017 ACSONE SA/NV +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). + +from odoo import api, models + + +class WebEnvironmentRibbonBackend(models.AbstractModel): + + _name = "web.environment.ribbon.backend" + _description = "Web Environment Ribbon Backend" + + @api.model + def _prepare_ribbon_format_vals(self): + return {"db_name": self.env.cr.dbname} + + @api.model + def _prepare_ribbon_name(self): + name_tmpl = self.env["ir.config_parameter"].sudo().get_param("app_ribbon_name") or False + vals = self._prepare_ribbon_format_vals() + return name_tmpl and name_tmpl.format(**vals) or name_tmpl + + @api.model + def get_environment_ribbon(self): + """ + This method returns the ribbon data from ir config parameters + :return: dictionary + """ + ir_config_model = self.env["ir.config_parameter"] + name = self._prepare_ribbon_name() + return { + "name": name, + "color": ir_config_model.sudo().get_param("app_ribbon_color"), + "background_color": ir_config_model.sudo().get_param( + "app_ribbon_background_color" + ), + } diff --git a/app_odoo_customize/readme.md b/app_odoo_customize/readme.md new file mode 100644 index 00000000..573c734c --- /dev/null +++ b/app_odoo_customize/readme.md @@ -0,0 +1,92 @@ +##App Odoo Customize(Debranding Title,Language,Documentation,Quick Debug,Quick Data Clear) +============ +White label odoo. +Support Odoo 13,12, 11, 10, 9. Including communicate and enterprise version. +You can config odoo, make it look like your own platform. +1. Deletes Odoo label in footer +2. Replaces "Odoo" in Windows title +3. Customize Documentation, Support, About links and title in usermenu +4. Adds "Developer mode" link to the top right-hand User Menu. +5. Adds Quick Language Switcher to the top right-hand User Menu. +6. Adds Country flags to the top right-hand User Menu. +7. Adds English and Chinese user documentation access to the top right-hand User Menu. +8. Adds developer documentation access to the top right-hand User Menu. +9. Customize "My odoo.com account" button +10. Standalone setting panel, easy to setup. +11. Provide 236 country flags. +12. Multi-language Support. +13. Change Powered by Odoo in login screen.(Please change '../views/app_odoo_customize_view.xml' #15) +14. Quick delete test data in Apps: Sales/POS/Purchase/MRP/Inventory/Accounting/Project/Message/Workflow etc. +15. Reset All the Sequence to beginning of 1: SO/PO/MO/Invoice... +16. Fix odoo reload module translation bug while enable english language +17. Stop Odoo Auto Subscribe(Performance Improve) +18. Show/Hide Author and Website in Apps Dashboard +19. One Click to clear all data (Sometime pls click twice) +20. Show quick upgrade in app dashboard, click to show module info not go to odoo.com +21. Can clear and reset account chart. Be cautious +22. Update online manual and developer document to odoo12 +23. Add reset or clear website blog data +24. Customize Odoo Native Module(eg. Enterprise) Url +25. Add remove expense data +26. Add multi uninstall modules +27. Add odoo boost modules link. + +This module can help to white label the Odoo. +Also helpful for training and support for your odoo end-user. +The user can get the help document just by one click. + +For more support +https://www.sunpop.cn + +## 在符合odoo开源协议的前提下,去除odoo版权信息,自定义你的odoo +可完全自行设置下列 odoo 选项,让 odoo 看上去像是你的软件产品 +支持Odoo 13,12, 11, 10, 9 版本,社区版企业版通用 + +1. 删除菜单导航页脚的 Odoo 标签 +2. 将弹出窗口中 "Odoo" 设置为自定义名称 +3. 自定义用户菜单中的 Documentation, Support, About 的链接 +4. 在用户菜单中增加快速切换开发模式 +5. 在用户菜单中增加快速切换多国语言 +6. 对语言菜单进行美化,设置国旗图标 +7. 在用户菜单中增加中/英文用户手册,可以不用翻墙加速了 +8. 在用户菜单中增加开发者手册,含python教程,jquery参考,Jinja2模板,PostgresSQL参考 +9. 在用户菜单中自定义"My odoo.com account" +10. 单独设置面板,每个选项都可以自定义 +11. 提供236个国家的国旗文件(部份需要自行设置文件名) +12. 多语言版本 +13. 自定义登陆界面中的 Powered by Odoo +14. 快速删除测试数据,支持模块包括:销售/POS门店/采购/生产/库存/会计/项目/消息与工作流等. +15. 将各类单据的序号重置,从1开始,包括:SO/PO/MO/Invoice 等 +16. 修复odoo启用英文后模块不显示中文的Bug +17. 可停用odoo自动订阅功能,避免“同样对象关注2次”bug,同时提升性能 +18. 显示/隐藏应用的作者和网站-在应用安装面板中 +19. 一键清除所有数据(视当前数据情况,有时需点击2次) +20. 在应用面板显示快速升级按键,点击时不会导航至 odoo.com +21. 清除并重置会计科目表 +22. 全新升级将odoo12用户及开发手册导航至国内网站,或者自己定义的网站 +23. 增加清除网站数据功能 +24. 自定义 odoo 原生模块跳转的url(比如企业版模块) +25. 增加删除费用报销数据功能 +26. 增加批量卸载模块功能 +27. 增加odoo加速功能 + +使用方法:将解压后的 app_odoo_customize 放到 odoo的 addons目录下,激活开发者模式,应用-->更新应用列表, +找到 "App odoo Customize"模块,安装即可。 + + +## 其它技术资源: +# Odoo12在线用户手册(长期更新) +# https://www.sunpop.cn/documentation/user/12.0/en/index.html + +# Odoo12在线开发者手册(长期更新) +# https://www.sunpop.cn/documentation/12.0/index.html + +# Odoo10在线中文用户手册(长期更新) +# https://www.sunpop.cn/documentation/user/10.0/zh_CN/index.html + +# Odoo10离线中文用户手册下载 +# https://www.sunpop.cn/odoo10_user_manual_document_offline/ +# Odoo10离线开发手册下载-含python教程,jquery参考,Jinja2模板,PostgresSQL参考(odoo开发必备) +# https://www.sunpop.cn/odoo10_developer_document_offline/ +# description: + diff --git a/app_odoo_customize/security/ir.model.access.csv b/app_odoo_customize/security/ir.model.access.csv new file mode 100644 index 00000000..4277cb36 --- /dev/null +++ b/app_odoo_customize/security/ir.model.access.csv @@ -0,0 +1,2 @@ +"id","name","model_id:id","group_id:id","perm_read","perm_write","perm_create","perm_unlink" +"access_ir_config_parameter_system","ir_config_parameter_system","base.model_ir_config_parameter","base.group_user",1,0,0,0 \ No newline at end of file diff --git a/app_odoo_customize/security/res_groups.xml b/app_odoo_customize/security/res_groups.xml new file mode 100644 index 00000000..c4ae9968 --- /dev/null +++ b/app_odoo_customize/security/res_groups.xml @@ -0,0 +1,19 @@ + + + + + Show Author in Apps Dashboard + + + + Show Quick Upgrade in Apps Dashboard + + + + + + + + + \ No newline at end of file diff --git a/app_odoo_customize/static/description/app_web_enterprise_03.jpg b/app_odoo_customize/static/description/app_web_enterprise_03.jpg new file mode 100644 index 00000000..8453fb72 Binary files /dev/null and b/app_odoo_customize/static/description/app_web_enterprise_03.jpg differ diff --git a/app_odoo_customize/static/description/banner.gif b/app_odoo_customize/static/description/banner.gif new file mode 100644 index 00000000..e167ca0b Binary files /dev/null and b/app_odoo_customize/static/description/banner.gif differ diff --git a/app_odoo_customize/static/description/banner1.png b/app_odoo_customize/static/description/banner1.png new file mode 100644 index 00000000..7ed3ccec Binary files /dev/null and b/app_odoo_customize/static/description/banner1.png differ diff --git a/app_odoo_customize/static/description/cnreadme.png b/app_odoo_customize/static/description/cnreadme.png new file mode 100644 index 00000000..787cbd58 Binary files /dev/null and b/app_odoo_customize/static/description/cnreadme.png differ diff --git a/app_odoo_customize/static/description/icon.png b/app_odoo_customize/static/description/icon.png new file mode 100644 index 00000000..4c57f611 Binary files /dev/null and b/app_odoo_customize/static/description/icon.png differ diff --git a/app_odoo_customize/static/description/index.html b/app_odoo_customize/static/description/index.html new file mode 100644 index 00000000..a41bc3b7 --- /dev/null +++ b/app_odoo_customize/static/description/index.html @@ -0,0 +1,306 @@ +
+
+
+

App Odoo Customize, Odoo Boost

+

+ If you are using odoo enterprise.
+ + Get "app_web_enterprise" for more customize + +

+
+ + + +
+
+

+ You can follow this repo on github. To get the latest update of free odoo app. +

https://github.com/guohuadeng/app-odoo

+

+

+ Also you can + + get more powerful odoo apps from us. + . like [superbar widget] +

+
+ + + +
+
+

This moduld allows user to quickly customize and debranding Odoo. Quick debug, Language Switcher, + Online Documentation Access,Quick Data Clear.

+

Support odoo 15,14,13, 12, 11, 10, 9. Including community and enterprise version.

+
+
+

If you want to change the login page.

+

Please modify the file \views\app_odoo_customize_views.xml

+
+
+
+
+ +
+
+
+

This is a Long Term Support Apps.

+
+

Update: v15.21.10.07

+

odoo15 remove data optimization. Easy and fast remove data.

+

Update: v15.22.03.15

+

Add odoo15 supported.

+

Update: v13.21.08.04

+

39. Only erp manager can see debug menu..

+

38. Add Draggable Dialog enable.

+

37. Easy noupdate manage for External Identifiers(xml_id).

+

Update: v14.21.03.31

+

Account date reset, and account chart reset support multi company reset.

+

Update: v14.21.03.30

+

38. Add Draggable Dialog enable.

+

37. Easy noupdate manage for External Identifiers(xml_id).

+

Update: v14.21.03.03

+

Fixed odoo Title.

+

Update: v14.20.12.29

+

36. Add refresh translate for multi module.

+

Update: v14.20.08.29

+

35. Add odoo 14 Support.

+

34. Add Remove all quality data(for odoo Enterprise)

+

33. Add Demo Ribbon Setting.

+

32. Fix odoo bug of complete name bug of product category and stock location.

+

Update: v13.20.08.29

+

36. Add odoo 14 support.

+

Update: v13.20.04.12

+

31. Show or hide odoo Referral in the top menu.

+

Update: v13.20.03.23

+

30. 1 key export app translate file like .po file.

+

Update: v13.20.02.25

+

28. Easy Menu manager.

+

29. Add Install version in App list. Add Local updatable filter in app list.

+

Update: v13.19.10.19

+

27. Add Odoo 13 support, all function add

+

Update: v12.19.04.30

+

26. Add multi uninstall modules

+

Update: v12.19.04.18

+

25. Add remove expense data

+

Update: v12.19.04.17

+

Add Customize Odoo Native Module(eg. Enterprise) Url

+

Update: v12.19.3.15

+

Add reset or clear website blog data

+

Update: v12.19.3.12

+

Optimize chinese translate and document.

+

Fix bug: Data reset.

+

Update: v12.19.1.20

+

Fix bug: Save config error.

+

Update: v12.19.1.05

+

Fix bug: If you install Muk moudle, odooapp customize would pop error like "attachment_location". Sometime you need to uninstall this app and restart odoo, install again to take affect.

+

Update: v12.0.12.25

+

add 22. Update online manual and developer document to odoo12.

+

Update: v12.0.11.08

+

Add 21. Reset Account Chart.

+

Update: v12.0.9.30

+

Add 20. Show quick upgrade in app dashboard

+

Update: v12.0.9.25

+

Now ready for Odoo 13,12, please email to me. guohuadeng@hotmail.com

+

Update: v12.0.7.23

+

Fix Login bug when install website.

+

Add 19. One Click to clear all data (Sometime pls click twice)

+

Add 18. Show/Hide Author and Website in Apps Dashboard

+

More Powerful addons:

+

+ Sunpop.cn Awesome Odoo Addons +

+
+

Odoo 13, 12, 11, 10 Support. Community and Enterprise version support

+
    +
  • 1. Deletes Odoo label in footer
  • +
  • 2. Replaces "Odoo" in Windows title
  • +
  • 3. Customize Documentation, Support, About links and title in usermenu
  • +
  • 4. Adds "Developer mode" link to the top right-hand User Menu.
  • +
  • 5. Adds Quick Language Switcher to the top right-hand User Menu.
  • +
  • 6. Adds Country flags to the top right-hand User Menu.
  • +
  • 7. Adds English and Chinese user documentation access to the top right-hand User Menu.
  • +
  • 8. Adds developer documentation access to the top right-hand User Menu.
  • +
  • 9. Customize "My odoo.com account" button
  • +
  • 10. Standalone setting panel, easy to setup.
  • +
  • 11. Provide 236 country flags.
  • +
  • 12. Multi-language Support.
  • +
  • 13. Change Powered by Odoo in login screen.(Please change '../views/app_odoo_customize_view.xml' #15)
  • +
  • 14. Quick delete test data in Apps: Sales/POS/Purchase/MRP/Inventory/Accounting/Project/Base Models.
  • +
  • 15. Reset All the Sequence to beginning of 1: SO/PO/MO/Invoice...
  • +
  • 16. Fix odoo reload module translation bug while enable english language
  • +
  • 17. Stop Odoo Auto Subscribe(Performance Improve)
  • +
  • 18. Show/Hide Author and Website in Apps Dashboard (odoo 11 only)
  • +
  • 19. One Click to clear all data (Sometime pls click twice)
  • +
  • 20. Show quick upgrade in app dashboard, click to show module info not go to odoo.com
  • +
  • 21. Can clear and reset account chart. Be cautious.
  • +
  • 22. Update online manual and developer document to odoo12.
  • +
  • 23. Add reset or clear website blog data
  • +
  • 24. Customize Odoo Native Module(eg. Enterprise) Url
  • +
  • 25. Add remove expense data
  • +
  • 26. Add multi uninstall modules
  • +
  • 27. Add odoo boost modules link.
  • +
  • 28. Easy Menu manager.
  • +
  • 29. Apps version compare. Add Install version in App list. Add Local updatable filter in app list.
  • +
  • 30. 1 key export app translate file like .po file.
  • +
  • 32. Fix odoo bug of complete name bug of product category and stock location..
  • +
  • 33. Add Demo Ribbon Setting.
  • +
  • 34. Add Remove all quality data.
  • +
  • 35. Fixed for odoo 14.
  • +
+

+ This module can help to white label the Odoo. + Also helpful for training and support for your odoo end-user.
+ The user can get the help document just by one click. +

+
+ +
+ +
+
+
+
+ + +
+
+

Odoo Customize(Debranding Title,Language,Documentation,Quick Debug)

+
+
+ +
+ +
+
+
+

Multi-language support: Chinese ready

+
+
+ +
+ +
+
+
+ +
+
+

How to use: Go to Settings -> odooApp Settings

+
+
+ +
+
+
+ +
+
+

Set System Icon (odoo 10 only)

+
+
+ +
+
+
+ +
+
+

Show/Hide Author and Website in Apps Dashboard

+
+

Before

+
+ +
+
+

After uncheck "Show Author in Apps Dashboard"

+
+ +
+
+
+ +
+
+

Show quick upgrade in app dashboard, click to show module info not go to odoo.com

+
+

No more redirect to odoo.com

+
+ +
+
+
+ +
+
+

Setup more flags: just rename the flag pic to locale code of the country

+

You can find the pictures in "\app-odoo\app_odoo_customize\static\src\img\flags"

+
+
+ +
+
+
+ +
+
+

Customize Module Url(eg. Enterprise).

+
+
+ +
+
+
+ +
+
+

Quick Delete test Data.

+

You can quickly delete all the test data in Apps: Sales/POS/Purchase/MRP/Inventory/Accounting/Message/Workflow etc.

+
+
+ +
+
+
+ +
+ +
+
+
+

Technical Help & Support

+
+
+
+

+ For any type of technical help & support requests, Feel free to contact us

+ + guohuadeng@hotmail.com +

+ Via QQ: 300883 (App user would not get QQ or any other IM support. Only for odoo project customize.)

+ + 300883@qq.com +
+
+

+ Visit our website for more support.

+

https://www.sunpop.cn

+
+
+
+
+ diff --git a/app_odoo_customize/static/description/set1.jpg b/app_odoo_customize/static/description/set1.jpg new file mode 100644 index 00000000..f5e378f2 Binary files /dev/null and b/app_odoo_customize/static/description/set1.jpg differ diff --git a/app_odoo_customize/static/description/set11.png b/app_odoo_customize/static/description/set11.png new file mode 100644 index 00000000..3f004c03 Binary files /dev/null and b/app_odoo_customize/static/description/set11.png differ diff --git a/app_odoo_customize/static/description/set12.png b/app_odoo_customize/static/description/set12.png new file mode 100644 index 00000000..b65edc24 Binary files /dev/null and b/app_odoo_customize/static/description/set12.png differ diff --git a/app_odoo_customize/static/description/set18-1.jpg b/app_odoo_customize/static/description/set18-1.jpg new file mode 100644 index 00000000..56c40177 Binary files /dev/null and b/app_odoo_customize/static/description/set18-1.jpg differ diff --git a/app_odoo_customize/static/description/set18-2.jpg b/app_odoo_customize/static/description/set18-2.jpg new file mode 100644 index 00000000..32028d74 Binary files /dev/null and b/app_odoo_customize/static/description/set18-2.jpg differ diff --git a/app_odoo_customize/static/description/set19.jpg b/app_odoo_customize/static/description/set19.jpg new file mode 100644 index 00000000..8bea0b62 Binary files /dev/null and b/app_odoo_customize/static/description/set19.jpg differ diff --git a/app_odoo_customize/static/description/set2.png b/app_odoo_customize/static/description/set2.png new file mode 100644 index 00000000..896f33b1 Binary files /dev/null and b/app_odoo_customize/static/description/set2.png differ diff --git a/app_odoo_customize/static/description/set20.jpg b/app_odoo_customize/static/description/set20.jpg new file mode 100644 index 00000000..c4dccda1 Binary files /dev/null and b/app_odoo_customize/static/description/set20.jpg differ diff --git a/app_odoo_customize/static/description/set21.jpg b/app_odoo_customize/static/description/set21.jpg new file mode 100644 index 00000000..b86c19e3 Binary files /dev/null and b/app_odoo_customize/static/description/set21.jpg differ diff --git a/app_odoo_customize/static/description/set3.jpg b/app_odoo_customize/static/description/set3.jpg new file mode 100644 index 00000000..87504d99 Binary files /dev/null and b/app_odoo_customize/static/description/set3.jpg differ diff --git a/app_odoo_customize/static/src/img/flags/ar_SY.png b/app_odoo_customize/static/src/img/flags/ar_SY.png new file mode 100644 index 00000000..b7f684e0 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/ar_SY.png differ diff --git a/app_odoo_customize/static/src/img/flags/bg.png b/app_odoo_customize/static/src/img/flags/bg.png new file mode 100644 index 00000000..8716c7a0 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/bg.png differ diff --git a/app_odoo_customize/static/src/img/flags/bs_BA.png b/app_odoo_customize/static/src/img/flags/bs_BA.png new file mode 100644 index 00000000..d3595a50 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/bs_BA.png differ diff --git a/app_odoo_customize/static/src/img/flags/de_DE.png b/app_odoo_customize/static/src/img/flags/de_DE.png new file mode 100644 index 00000000..5bcb0b2b Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/de_DE.png differ diff --git a/app_odoo_customize/static/src/img/flags/en_AU.png b/app_odoo_customize/static/src/img/flags/en_AU.png new file mode 100644 index 00000000..8108cc37 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/en_AU.png differ diff --git a/app_odoo_customize/static/src/img/flags/en_GB.png b/app_odoo_customize/static/src/img/flags/en_GB.png new file mode 100644 index 00000000..18d5ff99 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/en_GB.png differ diff --git a/app_odoo_customize/static/src/img/flags/en_US.png b/app_odoo_customize/static/src/img/flags/en_US.png new file mode 100644 index 00000000..5c4f03e2 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/en_US.png differ diff --git a/app_odoo_customize/static/src/img/flags/es_AR.png b/app_odoo_customize/static/src/img/flags/es_AR.png new file mode 100644 index 00000000..3adecbad Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/es_AR.png differ diff --git a/app_odoo_customize/static/src/img/flags/es_BO.png b/app_odoo_customize/static/src/img/flags/es_BO.png new file mode 100644 index 00000000..e44677a1 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/es_BO.png differ diff --git a/app_odoo_customize/static/src/img/flags/es_CL.png b/app_odoo_customize/static/src/img/flags/es_CL.png new file mode 100644 index 00000000..85d3a6c8 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/es_CL.png differ diff --git a/app_odoo_customize/static/src/img/flags/es_CO.png b/app_odoo_customize/static/src/img/flags/es_CO.png new file mode 100644 index 00000000..736d7618 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/es_CO.png differ diff --git a/app_odoo_customize/static/src/img/flags/es_CR.png b/app_odoo_customize/static/src/img/flags/es_CR.png new file mode 100644 index 00000000..361a65fe Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/es_CR.png differ diff --git a/app_odoo_customize/static/src/img/flags/es_DO.png b/app_odoo_customize/static/src/img/flags/es_DO.png new file mode 100644 index 00000000..29970e73 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/es_DO.png differ diff --git a/app_odoo_customize/static/src/img/flags/es_EC.png b/app_odoo_customize/static/src/img/flags/es_EC.png new file mode 100644 index 00000000..0273da66 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/es_EC.png differ diff --git a/app_odoo_customize/static/src/img/flags/es_ES.png b/app_odoo_customize/static/src/img/flags/es_ES.png new file mode 100644 index 00000000..0c9580b0 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/es_ES.png differ diff --git a/app_odoo_customize/static/src/img/flags/es_GT.png b/app_odoo_customize/static/src/img/flags/es_GT.png new file mode 100644 index 00000000..139e648b Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/es_GT.png differ diff --git a/app_odoo_customize/static/src/img/flags/es_MX.png b/app_odoo_customize/static/src/img/flags/es_MX.png new file mode 100644 index 00000000..539739fe Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/es_MX.png differ diff --git a/app_odoo_customize/static/src/img/flags/es_UY.png b/app_odoo_customize/static/src/img/flags/es_UY.png new file mode 100644 index 00000000..fa065560 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/es_UY.png differ diff --git a/app_odoo_customize/static/src/img/flags/es_VE.png b/app_odoo_customize/static/src/img/flags/es_VE.png new file mode 100644 index 00000000..facca467 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/es_VE.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_afghanistan.png b/app_odoo_customize/static/src/img/flags/flag_afghanistan.png new file mode 100644 index 00000000..e5ee97f1 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_afghanistan.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_algeria.png b/app_odoo_customize/static/src/img/flags/flag_algeria.png new file mode 100644 index 00000000..afaf8142 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_algeria.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_american_samoa.png b/app_odoo_customize/static/src/img/flags/flag_american_samoa.png new file mode 100644 index 00000000..49a77ce6 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_american_samoa.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_andorra.png b/app_odoo_customize/static/src/img/flags/flag_andorra.png new file mode 100644 index 00000000..b1fb0225 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_andorra.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_angola.png b/app_odoo_customize/static/src/img/flags/flag_angola.png new file mode 100644 index 00000000..d16b690f Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_angola.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_anguilla.png b/app_odoo_customize/static/src/img/flags/flag_anguilla.png new file mode 100644 index 00000000..b63d5f43 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_anguilla.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_antigua_and_barbuda.png b/app_odoo_customize/static/src/img/flags/flag_antigua_and_barbuda.png new file mode 100644 index 00000000..1ed51774 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_antigua_and_barbuda.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_armenia.png b/app_odoo_customize/static/src/img/flags/flag_armenia.png new file mode 100644 index 00000000..e819b9b5 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_armenia.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_aruba.png b/app_odoo_customize/static/src/img/flags/flag_aruba.png new file mode 100644 index 00000000..35cd54d6 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_aruba.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_austria.png b/app_odoo_customize/static/src/img/flags/flag_austria.png new file mode 100644 index 00000000..0993dfa8 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_austria.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_azerbaijan.png b/app_odoo_customize/static/src/img/flags/flag_azerbaijan.png new file mode 100644 index 00000000..e0d7c6a7 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_azerbaijan.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_bahamas.png b/app_odoo_customize/static/src/img/flags/flag_bahamas.png new file mode 100644 index 00000000..5b75d213 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_bahamas.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_bahrain.png b/app_odoo_customize/static/src/img/flags/flag_bahrain.png new file mode 100644 index 00000000..131c494a Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_bahrain.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_bangladesh.png b/app_odoo_customize/static/src/img/flags/flag_bangladesh.png new file mode 100644 index 00000000..14ccd4c7 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_bangladesh.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_barbados.png b/app_odoo_customize/static/src/img/flags/flag_barbados.png new file mode 100644 index 00000000..1923c7a5 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_barbados.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_belarus.png b/app_odoo_customize/static/src/img/flags/flag_belarus.png new file mode 100644 index 00000000..5d098126 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_belarus.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_belgium.png b/app_odoo_customize/static/src/img/flags/flag_belgium.png new file mode 100644 index 00000000..d19bd942 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_belgium.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_belize.png b/app_odoo_customize/static/src/img/flags/flag_belize.png new file mode 100644 index 00000000..e5c30ded Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_belize.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_benin.png b/app_odoo_customize/static/src/img/flags/flag_benin.png new file mode 100644 index 00000000..500fd032 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_benin.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_bermuda.png b/app_odoo_customize/static/src/img/flags/flag_bermuda.png new file mode 100644 index 00000000..f44a1100 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_bermuda.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_bhutan.png b/app_odoo_customize/static/src/img/flags/flag_bhutan.png new file mode 100644 index 00000000..94c81a9e Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_bhutan.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_botswana.png b/app_odoo_customize/static/src/img/flags/flag_botswana.png new file mode 100644 index 00000000..b458e964 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_botswana.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_british_indian_ocean_territory.png b/app_odoo_customize/static/src/img/flags/flag_british_indian_ocean_territory.png new file mode 100644 index 00000000..4ca19cfb Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_british_indian_ocean_territory.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_british_virgin_islands.png b/app_odoo_customize/static/src/img/flags/flag_british_virgin_islands.png new file mode 100644 index 00000000..5b88c96a Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_british_virgin_islands.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_brunei.png b/app_odoo_customize/static/src/img/flags/flag_brunei.png new file mode 100644 index 00000000..433a7465 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_brunei.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_burkina_faso.png b/app_odoo_customize/static/src/img/flags/flag_burkina_faso.png new file mode 100644 index 00000000..9d105b7e Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_burkina_faso.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_burma.png b/app_odoo_customize/static/src/img/flags/flag_burma.png new file mode 100644 index 00000000..31a5fc27 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_burma.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_burundi.png b/app_odoo_customize/static/src/img/flags/flag_burundi.png new file mode 100644 index 00000000..7a11bf80 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_burundi.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_cambodia.png b/app_odoo_customize/static/src/img/flags/flag_cambodia.png new file mode 100644 index 00000000..4b313803 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_cambodia.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_cameroon.png b/app_odoo_customize/static/src/img/flags/flag_cameroon.png new file mode 100644 index 00000000..e5b98fd6 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_cameroon.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_canada.png b/app_odoo_customize/static/src/img/flags/flag_canada.png new file mode 100644 index 00000000..30e76b08 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_canada.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_cape_verde.png b/app_odoo_customize/static/src/img/flags/flag_cape_verde.png new file mode 100644 index 00000000..a12b2618 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_cape_verde.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_cayman_islands.png b/app_odoo_customize/static/src/img/flags/flag_cayman_islands.png new file mode 100644 index 00000000..2751dd1c Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_cayman_islands.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_central_african_republic.png b/app_odoo_customize/static/src/img/flags/flag_central_african_republic.png new file mode 100644 index 00000000..5ce7df13 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_central_african_republic.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_chad.png b/app_odoo_customize/static/src/img/flags/flag_chad.png new file mode 100644 index 00000000..250ea6f4 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_chad.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_checkered.png b/app_odoo_customize/static/src/img/flags/flag_checkered.png new file mode 100644 index 00000000..128d5d78 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_checkered.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_comoros.png b/app_odoo_customize/static/src/img/flags/flag_comoros.png new file mode 100644 index 00000000..c09c3927 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_comoros.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_congo_democratic_republic.png b/app_odoo_customize/static/src/img/flags/flag_congo_democratic_republic.png new file mode 100644 index 00000000..4091ed9a Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_congo_democratic_republic.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_congo_republic.png b/app_odoo_customize/static/src/img/flags/flag_congo_republic.png new file mode 100644 index 00000000..2f4795aa Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_congo_republic.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_cook_islands.png b/app_odoo_customize/static/src/img/flags/flag_cook_islands.png new file mode 100644 index 00000000..f337d0c9 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_cook_islands.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_cote_divoire.png b/app_odoo_customize/static/src/img/flags/flag_cote_divoire.png new file mode 100644 index 00000000..536abd6a Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_cote_divoire.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_croatia.png b/app_odoo_customize/static/src/img/flags/flag_croatia.png new file mode 100644 index 00000000..1471bf15 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_croatia.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_cuba.png b/app_odoo_customize/static/src/img/flags/flag_cuba.png new file mode 100644 index 00000000..e5b23f52 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_cuba.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_cyprus.png b/app_odoo_customize/static/src/img/flags/flag_cyprus.png new file mode 100644 index 00000000..1d30fa97 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_cyprus.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_czech_republic.png b/app_odoo_customize/static/src/img/flags/flag_czech_republic.png new file mode 100644 index 00000000..6c5556a8 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_czech_republic.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_denmark.png b/app_odoo_customize/static/src/img/flags/flag_denmark.png new file mode 100644 index 00000000..c9e4450b Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_denmark.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_djibouti.png b/app_odoo_customize/static/src/img/flags/flag_djibouti.png new file mode 100644 index 00000000..db95c50b Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_djibouti.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_dominica.png b/app_odoo_customize/static/src/img/flags/flag_dominica.png new file mode 100644 index 00000000..d2dc6374 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_dominica.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_east_timor.png b/app_odoo_customize/static/src/img/flags/flag_east_timor.png new file mode 100644 index 00000000..1553f1e5 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_east_timor.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_egypt.png b/app_odoo_customize/static/src/img/flags/flag_egypt.png new file mode 100644 index 00000000..ebe257ad Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_egypt.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_el_salvador.png b/app_odoo_customize/static/src/img/flags/flag_el_salvador.png new file mode 100644 index 00000000..0c114b89 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_el_salvador.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_england.png b/app_odoo_customize/static/src/img/flags/flag_england.png new file mode 100644 index 00000000..41940377 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_england.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_equatorial_guinea.png b/app_odoo_customize/static/src/img/flags/flag_equatorial_guinea.png new file mode 100644 index 00000000..5bf6458b Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_equatorial_guinea.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_eritrea.png b/app_odoo_customize/static/src/img/flags/flag_eritrea.png new file mode 100644 index 00000000..6e7e770e Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_eritrea.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_estonia.png b/app_odoo_customize/static/src/img/flags/flag_estonia.png new file mode 100644 index 00000000..5ef87c07 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_estonia.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_ethiopia.png b/app_odoo_customize/static/src/img/flags/flag_ethiopia.png new file mode 100644 index 00000000..5330161f Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_ethiopia.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_eu.png b/app_odoo_customize/static/src/img/flags/flag_eu.png new file mode 100644 index 00000000..7b67730d Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_eu.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_faeroe_islands.png b/app_odoo_customize/static/src/img/flags/flag_faeroe_islands.png new file mode 100644 index 00000000..5d781a32 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_faeroe_islands.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_falkland_islands.png b/app_odoo_customize/static/src/img/flags/flag_falkland_islands.png new file mode 100644 index 00000000..788bee08 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_falkland_islands.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_fiji.png b/app_odoo_customize/static/src/img/flags/flag_fiji.png new file mode 100644 index 00000000..ffc11731 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_fiji.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_finland.png b/app_odoo_customize/static/src/img/flags/flag_finland.png new file mode 100644 index 00000000..24f113ec Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_finland.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_french_polynesia.png b/app_odoo_customize/static/src/img/flags/flag_french_polynesia.png new file mode 100644 index 00000000..43b6698f Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_french_polynesia.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_gabon.png b/app_odoo_customize/static/src/img/flags/flag_gabon.png new file mode 100644 index 00000000..bfdc1ea7 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_gabon.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_gambia.png b/app_odoo_customize/static/src/img/flags/flag_gambia.png new file mode 100644 index 00000000..62194b7d Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_gambia.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_generic.png b/app_odoo_customize/static/src/img/flags/flag_generic.png new file mode 100644 index 00000000..c12b24df Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_generic.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_georgia.png b/app_odoo_customize/static/src/img/flags/flag_georgia.png new file mode 100644 index 00000000..09dae1d4 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_georgia.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_ghana.png b/app_odoo_customize/static/src/img/flags/flag_ghana.png new file mode 100644 index 00000000..e985e9ce Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_ghana.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_gibraltar.png b/app_odoo_customize/static/src/img/flags/flag_gibraltar.png new file mode 100644 index 00000000..731a99a2 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_gibraltar.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_greece.png b/app_odoo_customize/static/src/img/flags/flag_greece.png new file mode 100644 index 00000000..7d5f7019 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_greece.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_greenland.png b/app_odoo_customize/static/src/img/flags/flag_greenland.png new file mode 100644 index 00000000..94ccb785 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_greenland.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_grenada.png b/app_odoo_customize/static/src/img/flags/flag_grenada.png new file mode 100644 index 00000000..6555c1b7 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_grenada.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_guam.png b/app_odoo_customize/static/src/img/flags/flag_guam.png new file mode 100644 index 00000000..271cd8cc Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_guam.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_guernsey.png b/app_odoo_customize/static/src/img/flags/flag_guernsey.png new file mode 100644 index 00000000..e45ae1d8 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_guernsey.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_guinea.png b/app_odoo_customize/static/src/img/flags/flag_guinea.png new file mode 100644 index 00000000..99839874 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_guinea.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_guinea_bissau.png b/app_odoo_customize/static/src/img/flags/flag_guinea_bissau.png new file mode 100644 index 00000000..9d743983 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_guinea_bissau.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_guyana.png b/app_odoo_customize/static/src/img/flags/flag_guyana.png new file mode 100644 index 00000000..0d9bb963 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_guyana.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_haiti.png b/app_odoo_customize/static/src/img/flags/flag_haiti.png new file mode 100644 index 00000000..4b4eb300 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_haiti.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_honduras.png b/app_odoo_customize/static/src/img/flags/flag_honduras.png new file mode 100644 index 00000000..62b85fa7 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_honduras.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_hong_kong.png b/app_odoo_customize/static/src/img/flags/flag_hong_kong.png new file mode 100644 index 00000000..8426e7cc Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_hong_kong.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_hungary.png b/app_odoo_customize/static/src/img/flags/flag_hungary.png new file mode 100644 index 00000000..d903f3dc Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_hungary.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_iceland.png b/app_odoo_customize/static/src/img/flags/flag_iceland.png new file mode 100644 index 00000000..2fc4f7ab Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_iceland.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_india.png b/app_odoo_customize/static/src/img/flags/flag_india.png new file mode 100644 index 00000000..ceb9971c Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_india.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_indonesia.png b/app_odoo_customize/static/src/img/flags/flag_indonesia.png new file mode 100644 index 00000000..aff745b5 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_indonesia.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_iran.png b/app_odoo_customize/static/src/img/flags/flag_iran.png new file mode 100644 index 00000000..cc6acabe Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_iran.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_iraq.png b/app_odoo_customize/static/src/img/flags/flag_iraq.png new file mode 100644 index 00000000..570f8994 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_iraq.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_ireland.png b/app_odoo_customize/static/src/img/flags/flag_ireland.png new file mode 100644 index 00000000..75c91bed Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_ireland.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_isle_of_man.png b/app_odoo_customize/static/src/img/flags/flag_isle_of_man.png new file mode 100644 index 00000000..1f761fee Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_isle_of_man.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_israel.png b/app_odoo_customize/static/src/img/flags/flag_israel.png new file mode 100644 index 00000000..b05ebc26 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_israel.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_italy.png b/app_odoo_customize/static/src/img/flags/flag_italy.png new file mode 100644 index 00000000..f6aa615e Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_italy.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_jamaica.png b/app_odoo_customize/static/src/img/flags/flag_jamaica.png new file mode 100644 index 00000000..3a422e62 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_jamaica.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_japan.png b/app_odoo_customize/static/src/img/flags/flag_japan.png new file mode 100644 index 00000000..066ab4d8 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_japan.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_jersey.png b/app_odoo_customize/static/src/img/flags/flag_jersey.png new file mode 100644 index 00000000..03f648fb Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_jersey.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_jordan.png b/app_odoo_customize/static/src/img/flags/flag_jordan.png new file mode 100644 index 00000000..6d680054 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_jordan.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_kazakhstan.png b/app_odoo_customize/static/src/img/flags/flag_kazakhstan.png new file mode 100644 index 00000000..e1562a65 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_kazakhstan.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_kenya.png b/app_odoo_customize/static/src/img/flags/flag_kenya.png new file mode 100644 index 00000000..14a202cf Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_kenya.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_kiribati.png b/app_odoo_customize/static/src/img/flags/flag_kiribati.png new file mode 100644 index 00000000..f5b08a25 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_kiribati.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_kuwait.png b/app_odoo_customize/static/src/img/flags/flag_kuwait.png new file mode 100644 index 00000000..82357429 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_kuwait.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_kyrgyzstan.png b/app_odoo_customize/static/src/img/flags/flag_kyrgyzstan.png new file mode 100644 index 00000000..b4974f47 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_kyrgyzstan.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_laos.png b/app_odoo_customize/static/src/img/flags/flag_laos.png new file mode 100644 index 00000000..665aa7d8 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_laos.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_latvia.png b/app_odoo_customize/static/src/img/flags/flag_latvia.png new file mode 100644 index 00000000..b466aa7f Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_latvia.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_lebanon.png b/app_odoo_customize/static/src/img/flags/flag_lebanon.png new file mode 100644 index 00000000..6e170b1d Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_lebanon.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_lesotho.png b/app_odoo_customize/static/src/img/flags/flag_lesotho.png new file mode 100644 index 00000000..f6ee22d8 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_lesotho.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_liberia.png b/app_odoo_customize/static/src/img/flags/flag_liberia.png new file mode 100644 index 00000000..d4c10fc4 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_liberia.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_libya.png b/app_odoo_customize/static/src/img/flags/flag_libya.png new file mode 100644 index 00000000..14f9a3a3 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_libya.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_liechtenstein.png b/app_odoo_customize/static/src/img/flags/flag_liechtenstein.png new file mode 100644 index 00000000..a2f5fc0b Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_liechtenstein.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_lithuania.png b/app_odoo_customize/static/src/img/flags/flag_lithuania.png new file mode 100644 index 00000000..709383fc Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_lithuania.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_luxembourg.png b/app_odoo_customize/static/src/img/flags/flag_luxembourg.png new file mode 100644 index 00000000..dc4814f8 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_luxembourg.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_macau.png b/app_odoo_customize/static/src/img/flags/flag_macau.png new file mode 100644 index 00000000..cf60bb75 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_macau.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_macedonia.png b/app_odoo_customize/static/src/img/flags/flag_macedonia.png new file mode 100644 index 00000000..2d9a8ae7 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_macedonia.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_madagascar.png b/app_odoo_customize/static/src/img/flags/flag_madagascar.png new file mode 100644 index 00000000..2e84d6ee Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_madagascar.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_malawi.png b/app_odoo_customize/static/src/img/flags/flag_malawi.png new file mode 100644 index 00000000..a17c4519 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_malawi.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_malaysia.png b/app_odoo_customize/static/src/img/flags/flag_malaysia.png new file mode 100644 index 00000000..1eeb7be3 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_malaysia.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_maldives.png b/app_odoo_customize/static/src/img/flags/flag_maldives.png new file mode 100644 index 00000000..d9d72e23 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_maldives.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_mali.png b/app_odoo_customize/static/src/img/flags/flag_mali.png new file mode 100644 index 00000000..cae153fe Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_mali.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_malta.png b/app_odoo_customize/static/src/img/flags/flag_malta.png new file mode 100644 index 00000000..736aa4ca Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_malta.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_marshall_islands.png b/app_odoo_customize/static/src/img/flags/flag_marshall_islands.png new file mode 100644 index 00000000..082eb763 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_marshall_islands.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_martinique.png b/app_odoo_customize/static/src/img/flags/flag_martinique.png new file mode 100644 index 00000000..a20c9b38 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_martinique.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_mauritania.png b/app_odoo_customize/static/src/img/flags/flag_mauritania.png new file mode 100644 index 00000000..03db77f7 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_mauritania.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_mauritius.png b/app_odoo_customize/static/src/img/flags/flag_mauritius.png new file mode 100644 index 00000000..5336f591 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_mauritius.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_micronesia.png b/app_odoo_customize/static/src/img/flags/flag_micronesia.png new file mode 100644 index 00000000..dfda47ee Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_micronesia.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_moldova.png b/app_odoo_customize/static/src/img/flags/flag_moldova.png new file mode 100644 index 00000000..e7ee75db Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_moldova.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_monaco.png b/app_odoo_customize/static/src/img/flags/flag_monaco.png new file mode 100644 index 00000000..b51dc7f6 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_monaco.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_mongolia.png b/app_odoo_customize/static/src/img/flags/flag_mongolia.png new file mode 100644 index 00000000..825a0c29 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_mongolia.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_montenegro.png b/app_odoo_customize/static/src/img/flags/flag_montenegro.png new file mode 100644 index 00000000..8d1ad79b Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_montenegro.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_montserrat.png b/app_odoo_customize/static/src/img/flags/flag_montserrat.png new file mode 100644 index 00000000..53b21152 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_montserrat.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_morocco.png b/app_odoo_customize/static/src/img/flags/flag_morocco.png new file mode 100644 index 00000000..193f0cd2 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_morocco.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_mozambique.png b/app_odoo_customize/static/src/img/flags/flag_mozambique.png new file mode 100644 index 00000000..e8051d3c Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_mozambique.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_namibia.png b/app_odoo_customize/static/src/img/flags/flag_namibia.png new file mode 100644 index 00000000..ebaa9ce1 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_namibia.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_nauru.png b/app_odoo_customize/static/src/img/flags/flag_nauru.png new file mode 100644 index 00000000..c8cbecc4 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_nauru.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_nepal.png b/app_odoo_customize/static/src/img/flags/flag_nepal.png new file mode 100644 index 00000000..c43e96da Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_nepal.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_netherlands.png b/app_odoo_customize/static/src/img/flags/flag_netherlands.png new file mode 100644 index 00000000..e566685f Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_netherlands.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_netherlands_antilles.png b/app_odoo_customize/static/src/img/flags/flag_netherlands_antilles.png new file mode 100644 index 00000000..c1fbf588 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_netherlands_antilles.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_new_zealand.png b/app_odoo_customize/static/src/img/flags/flag_new_zealand.png new file mode 100644 index 00000000..2ed6512e Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_new_zealand.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_nicaragua.png b/app_odoo_customize/static/src/img/flags/flag_nicaragua.png new file mode 100644 index 00000000..e48abf3b Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_nicaragua.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_niger.png b/app_odoo_customize/static/src/img/flags/flag_niger.png new file mode 100644 index 00000000..a54b1d8b Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_niger.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_nigeria.png b/app_odoo_customize/static/src/img/flags/flag_nigeria.png new file mode 100644 index 00000000..afdc0fbd Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_nigeria.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_niue.png b/app_odoo_customize/static/src/img/flags/flag_niue.png new file mode 100644 index 00000000..ec9fa49a Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_niue.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_norfolk_island.png b/app_odoo_customize/static/src/img/flags/flag_norfolk_island.png new file mode 100644 index 00000000..7dcad5b0 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_norfolk_island.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_north_korea.png b/app_odoo_customize/static/src/img/flags/flag_north_korea.png new file mode 100644 index 00000000..4df5f0a4 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_north_korea.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_northern_mariana_islands.png b/app_odoo_customize/static/src/img/flags/flag_northern_mariana_islands.png new file mode 100644 index 00000000..3da7c7c0 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_northern_mariana_islands.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_norway.png b/app_odoo_customize/static/src/img/flags/flag_norway.png new file mode 100644 index 00000000..f1e64f75 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_norway.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_oman.png b/app_odoo_customize/static/src/img/flags/flag_oman.png new file mode 100644 index 00000000..a50864e3 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_oman.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_pakistan.png b/app_odoo_customize/static/src/img/flags/flag_pakistan.png new file mode 100644 index 00000000..e4633af1 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_pakistan.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_palau.png b/app_odoo_customize/static/src/img/flags/flag_palau.png new file mode 100644 index 00000000..2425cbf4 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_palau.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_panama.png b/app_odoo_customize/static/src/img/flags/flag_panama.png new file mode 100644 index 00000000..1fdbc11f Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_panama.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_papua_new_guinea.png b/app_odoo_customize/static/src/img/flags/flag_papua_new_guinea.png new file mode 100644 index 00000000..cc0455c7 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_papua_new_guinea.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_paraguay.png b/app_odoo_customize/static/src/img/flags/flag_paraguay.png new file mode 100644 index 00000000..e3b76cee Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_paraguay.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_peru.png b/app_odoo_customize/static/src/img/flags/flag_peru.png new file mode 100644 index 00000000..a40226fd Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_peru.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_philippines.png b/app_odoo_customize/static/src/img/flags/flag_philippines.png new file mode 100644 index 00000000..d847f8c1 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_philippines.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_pirate.png b/app_odoo_customize/static/src/img/flags/flag_pirate.png new file mode 100644 index 00000000..bc493602 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_pirate.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_pitcairn_islands.png b/app_odoo_customize/static/src/img/flags/flag_pitcairn_islands.png new file mode 100644 index 00000000..f2b9b5e2 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_pitcairn_islands.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_poland.png b/app_odoo_customize/static/src/img/flags/flag_poland.png new file mode 100644 index 00000000..9fb2f6aa Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_poland.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_portugal.png b/app_odoo_customize/static/src/img/flags/flag_portugal.png new file mode 100644 index 00000000..c3de0b19 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_portugal.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_puerto_rico.png b/app_odoo_customize/static/src/img/flags/flag_puerto_rico.png new file mode 100644 index 00000000..3c995992 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_puerto_rico.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_qatar.png b/app_odoo_customize/static/src/img/flags/flag_qatar.png new file mode 100644 index 00000000..902fc4d5 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_qatar.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_rainbow.png b/app_odoo_customize/static/src/img/flags/flag_rainbow.png new file mode 100644 index 00000000..78fc721c Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_rainbow.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_romania.png b/app_odoo_customize/static/src/img/flags/flag_romania.png new file mode 100644 index 00000000..4e7f9f13 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_romania.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_rwanda.png b/app_odoo_customize/static/src/img/flags/flag_rwanda.png new file mode 100644 index 00000000..444c8c79 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_rwanda.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_saint_helena.png b/app_odoo_customize/static/src/img/flags/flag_saint_helena.png new file mode 100644 index 00000000..82a3b598 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_saint_helena.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_saint_kitts_and_nevis.png b/app_odoo_customize/static/src/img/flags/flag_saint_kitts_and_nevis.png new file mode 100644 index 00000000..796827d5 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_saint_kitts_and_nevis.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_saint_lucia.png b/app_odoo_customize/static/src/img/flags/flag_saint_lucia.png new file mode 100644 index 00000000..d3a719dc Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_saint_lucia.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_saint_pierre_and_miquelon.png b/app_odoo_customize/static/src/img/flags/flag_saint_pierre_and_miquelon.png new file mode 100644 index 00000000..ef0df15c Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_saint_pierre_and_miquelon.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_saint_vincent_and_the_grenadines.png b/app_odoo_customize/static/src/img/flags/flag_saint_vincent_and_the_grenadines.png new file mode 100644 index 00000000..15f36674 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_saint_vincent_and_the_grenadines.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_samoa.png b/app_odoo_customize/static/src/img/flags/flag_samoa.png new file mode 100644 index 00000000..209897e4 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_samoa.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_san_marino.png b/app_odoo_customize/static/src/img/flags/flag_san_marino.png new file mode 100644 index 00000000..a1222635 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_san_marino.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_sao_tome_and_principe.png b/app_odoo_customize/static/src/img/flags/flag_sao_tome_and_principe.png new file mode 100644 index 00000000..40534684 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_sao_tome_and_principe.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_saudi_arabia.png b/app_odoo_customize/static/src/img/flags/flag_saudi_arabia.png new file mode 100644 index 00000000..20061b91 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_saudi_arabia.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_scotland.png b/app_odoo_customize/static/src/img/flags/flag_scotland.png new file mode 100644 index 00000000..bb01bc94 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_scotland.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_senegal.png b/app_odoo_customize/static/src/img/flags/flag_senegal.png new file mode 100644 index 00000000..1047e9be Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_senegal.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_serbia.png b/app_odoo_customize/static/src/img/flags/flag_serbia.png new file mode 100644 index 00000000..255e428b Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_serbia.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_seychelles.png b/app_odoo_customize/static/src/img/flags/flag_seychelles.png new file mode 100644 index 00000000..e1a139fe Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_seychelles.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_sierra_leone.png b/app_odoo_customize/static/src/img/flags/flag_sierra_leone.png new file mode 100644 index 00000000..a223c5df Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_sierra_leone.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_singapore.png b/app_odoo_customize/static/src/img/flags/flag_singapore.png new file mode 100644 index 00000000..a4a4a812 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_singapore.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_slovakia.png b/app_odoo_customize/static/src/img/flags/flag_slovakia.png new file mode 100644 index 00000000..e7c39150 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_slovakia.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_slovenia.png b/app_odoo_customize/static/src/img/flags/flag_slovenia.png new file mode 100644 index 00000000..85385895 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_slovenia.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_solomon_islands.png b/app_odoo_customize/static/src/img/flags/flag_solomon_islands.png new file mode 100644 index 00000000..fcd10c18 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_solomon_islands.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_somalia.png b/app_odoo_customize/static/src/img/flags/flag_somalia.png new file mode 100644 index 00000000..2f856d2e Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_somalia.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_south_africa.png b/app_odoo_customize/static/src/img/flags/flag_south_africa.png new file mode 100644 index 00000000..617fe9f4 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_south_africa.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_south_georgia.png b/app_odoo_customize/static/src/img/flags/flag_south_georgia.png new file mode 100644 index 00000000..d4705488 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_south_georgia.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_sri_lanka.png b/app_odoo_customize/static/src/img/flags/flag_sri_lanka.png new file mode 100644 index 00000000..3fbe5791 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_sri_lanka.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_sudan.png b/app_odoo_customize/static/src/img/flags/flag_sudan.png new file mode 100644 index 00000000..f607390b Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_sudan.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_suriname.png b/app_odoo_customize/static/src/img/flags/flag_suriname.png new file mode 100644 index 00000000..d12cae84 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_suriname.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_swaziland.png b/app_odoo_customize/static/src/img/flags/flag_swaziland.png new file mode 100644 index 00000000..27fdf138 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_swaziland.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_sweden.png b/app_odoo_customize/static/src/img/flags/flag_sweden.png new file mode 100644 index 00000000..870be17a Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_sweden.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_switzerland.png b/app_odoo_customize/static/src/img/flags/flag_switzerland.png new file mode 100644 index 00000000..e487a0e5 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_switzerland.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_tajikistan.png b/app_odoo_customize/static/src/img/flags/flag_tajikistan.png new file mode 100644 index 00000000..4c66da33 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_tajikistan.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_tanzania.png b/app_odoo_customize/static/src/img/flags/flag_tanzania.png new file mode 100644 index 00000000..f2ee2ea2 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_tanzania.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_thailand.png b/app_odoo_customize/static/src/img/flags/flag_thailand.png new file mode 100644 index 00000000..445da6ab Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_thailand.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_togo.png b/app_odoo_customize/static/src/img/flags/flag_togo.png new file mode 100644 index 00000000..28a696ee Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_togo.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_tonga.png b/app_odoo_customize/static/src/img/flags/flag_tonga.png new file mode 100644 index 00000000..bb9e9afb Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_tonga.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_trinidad_and_tobago.png b/app_odoo_customize/static/src/img/flags/flag_trinidad_and_tobago.png new file mode 100644 index 00000000..25226659 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_trinidad_and_tobago.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_tunisia.png b/app_odoo_customize/static/src/img/flags/flag_tunisia.png new file mode 100644 index 00000000..13bb8782 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_tunisia.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_turkmenistan.png b/app_odoo_customize/static/src/img/flags/flag_turkmenistan.png new file mode 100644 index 00000000..981a9308 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_turkmenistan.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_turks_and_caicos_islands.png b/app_odoo_customize/static/src/img/flags/flag_turks_and_caicos_islands.png new file mode 100644 index 00000000..8efd241c Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_turks_and_caicos_islands.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_tuvalu.png b/app_odoo_customize/static/src/img/flags/flag_tuvalu.png new file mode 100644 index 00000000..6c38b44a Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_tuvalu.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_uganda.png b/app_odoo_customize/static/src/img/flags/flag_uganda.png new file mode 100644 index 00000000..52ee97d8 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_uganda.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_united_arab_emirates.png b/app_odoo_customize/static/src/img/flags/flag_united_arab_emirates.png new file mode 100644 index 00000000..460a9d5c Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_united_arab_emirates.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_uzbekistan.png b/app_odoo_customize/static/src/img/flags/flag_uzbekistan.png new file mode 100644 index 00000000..8df3de42 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_uzbekistan.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_vanuatu.png b/app_odoo_customize/static/src/img/flags/flag_vanuatu.png new file mode 100644 index 00000000..697f6212 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_vanuatu.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_vatican_city.png b/app_odoo_customize/static/src/img/flags/flag_vatican_city.png new file mode 100644 index 00000000..ffb303b5 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_vatican_city.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_vietnam.png b/app_odoo_customize/static/src/img/flags/flag_vietnam.png new file mode 100644 index 00000000..4e89f65d Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_vietnam.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_virgin_islands.png b/app_odoo_customize/static/src/img/flags/flag_virgin_islands.png new file mode 100644 index 00000000..ce23e137 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_virgin_islands.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_wales.png b/app_odoo_customize/static/src/img/flags/flag_wales.png new file mode 100644 index 00000000..4e30af59 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_wales.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_wallis_and_futuna.png b/app_odoo_customize/static/src/img/flags/flag_wallis_and_futuna.png new file mode 100644 index 00000000..d97fc3f9 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_wallis_and_futuna.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_white.png b/app_odoo_customize/static/src/img/flags/flag_white.png new file mode 100644 index 00000000..0efc9ee7 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_white.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_yemen.png b/app_odoo_customize/static/src/img/flags/flag_yemen.png new file mode 100644 index 00000000..e9dea302 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_yemen.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_zambia.png b/app_odoo_customize/static/src/img/flags/flag_zambia.png new file mode 100644 index 00000000..96d06e4d Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_zambia.png differ diff --git a/app_odoo_customize/static/src/img/flags/flag_zimbabwe.png b/app_odoo_customize/static/src/img/flags/flag_zimbabwe.png new file mode 100644 index 00000000..7501780d Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/flag_zimbabwe.png differ diff --git a/app_odoo_customize/static/src/img/flags/fr_FR.png b/app_odoo_customize/static/src/img/flags/fr_FR.png new file mode 100644 index 00000000..ae26d3b9 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/fr_FR.png differ diff --git a/app_odoo_customize/static/src/img/flags/ko_KR.png b/app_odoo_customize/static/src/img/flags/ko_KR.png new file mode 100644 index 00000000..b0b21dfa Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/ko_KR.png differ diff --git a/app_odoo_customize/static/src/img/flags/logo_red_200x50.png b/app_odoo_customize/static/src/img/flags/logo_red_200x50.png new file mode 100644 index 00000000..8b5b87b8 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/logo_red_200x50.png differ diff --git a/app_odoo_customize/static/src/img/flags/pt_BR.png b/app_odoo_customize/static/src/img/flags/pt_BR.png new file mode 100644 index 00000000..9b01d07d Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/pt_BR.png differ diff --git a/app_odoo_customize/static/src/img/flags/ru_RU.png b/app_odoo_customize/static/src/img/flags/ru_RU.png new file mode 100644 index 00000000..c251d628 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/ru_RU.png differ diff --git a/app_odoo_customize/static/src/img/flags/sq_AL.png b/app_odoo_customize/static/src/img/flags/sq_AL.png new file mode 100644 index 00000000..8aac6dce Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/sq_AL.png differ diff --git a/app_odoo_customize/static/src/img/flags/tr_TR.png b/app_odoo_customize/static/src/img/flags/tr_TR.png new file mode 100644 index 00000000..4e27f6a2 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/tr_TR.png differ diff --git a/app_odoo_customize/static/src/img/flags/uk_UA.png b/app_odoo_customize/static/src/img/flags/uk_UA.png new file mode 100644 index 00000000..4eac918d Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/uk_UA.png differ diff --git a/app_odoo_customize/static/src/img/flags/zh_CN.png b/app_odoo_customize/static/src/img/flags/zh_CN.png new file mode 100644 index 00000000..d969efa0 Binary files /dev/null and b/app_odoo_customize/static/src/img/flags/zh_CN.png differ diff --git a/app_odoo_customize/static/src/img/icon76red.png b/app_odoo_customize/static/src/img/icon76red.png new file mode 100644 index 00000000..aa490954 Binary files /dev/null and b/app_odoo_customize/static/src/img/icon76red.png differ diff --git a/app_odoo_customize/static/src/img/logo_sunpop.png b/app_odoo_customize/static/src/img/logo_sunpop.png new file mode 100644 index 00000000..bc32c24e Binary files /dev/null and b/app_odoo_customize/static/src/img/logo_sunpop.png differ diff --git a/app_odoo_customize/static/src/js/app_window_title.js b/app_odoo_customize/static/src/js/app_window_title.js new file mode 100644 index 00000000..155261eb --- /dev/null +++ b/app_odoo_customize/static/src/js/app_window_title.js @@ -0,0 +1,13 @@ +/** @odoo-module **/ + +import { WebClient } from "@web/webclient/webclient"; +import { patch } from "@web/core/utils/patch"; +import { session } from "@web/session"; + +patch(WebClient.prototype, "app_odoo_customize.WebClient", { + setup() { + this._super.apply(this, arguments); + const app_system_name = session.app_system_name || 'odooApp'; + this.title.setParts({ zopenerp: app_system_name }); // zopenerp is easy to grep + } +}); diff --git a/app_odoo_customize/static/src/js/dialog.js b/app_odoo_customize/static/src/js/dialog.js new file mode 100644 index 00000000..8c337eb9 --- /dev/null +++ b/app_odoo_customize/static/src/js/dialog.js @@ -0,0 +1,23 @@ +/** @odoo-module **/ + +import { Dialog } from "@web/core/dialog/dialog"; +import { patch } from "@web/core/utils/patch"; +import { session } from "@web/session"; + +patch(Dialog.prototype, "app_odoo_customize.Dialog", { + setup() { + this._super.apply(this, arguments); + const app_system_name = session.app_system_name || "odooApp"; + this.title = app_system_name; + }, + // mounted() { + // //todo: 没用,不能用 jq的处理方式 + // this._super.apply(this, arguments); + // var $dl = this.__owl__.vnode ? this.__owl__.vnode.elm : null; + // var $ml = $dl.children[0].children[0].children[0]; + // $ml.draggable({ + // handle: ".modal-header" + // }); + // }, +}); + diff --git a/app_odoo_customize/static/src/js/ribbon.js b/app_odoo_customize/static/src/js/ribbon.js new file mode 100644 index 00000000..187b3044 --- /dev/null +++ b/app_odoo_customize/static/src/js/ribbon.js @@ -0,0 +1,63 @@ +/* Copyright 2015 Sylvain Calador + Copyright 2015 Javi Melendez + Copyright 2016 Antonio Espinosa + Copyright 2017 Thomas Binsfeld + Copyright 2017 Xavier Jiménez + License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). */ + +odoo.define("web_environment_ribbon.ribbon", function(require) { + "use strict"; + + var rpc = require("web.rpc"); + var core = require("web.core"); + + // Code from: http://jsfiddle.net/WK_of_Angmar/xgA5C/ + function validStrColour(strToTest) { + if (strToTest === "") { + return false; + } + if (strToTest === "inherit") { + return true; + } + if (strToTest === "transparent") { + return true; + } + var image = document.createElement("img"); + image.style.color = "rgb(0, 0, 0)"; + image.style.color = strToTest; + if (image.style.color !== "rgb(0, 0, 0)") { + return true; + } + image.style.color = "rgb(255, 255, 255)"; + image.style.color = strToTest; + return image.style.color !== "rgb(255, 255, 255)"; + } + + core.bus.on("web_client_ready", null, function() { + var ribbon = $('