clear master

This commit is contained in:
ivan deng
2020-10-05 20:58:16 +08:00
parent b9ff0c210b
commit 8b4c129efc
434 changed files with 130 additions and 11411 deletions

137
.gitignore vendored
View File

@@ -1,7 +1,130 @@
# PyCharm
# http://www.jetbrains.com/pycharm/webhelp/project.html
.idea
.iml
/app_odoo_customize/_resource
/app_web_studio
/web_studio
#个人文件目录不传到git每个人将个人文件放到 _s 目录下
_s/
addons_ent_remove/
addons_odoo/
app-dev/
myconf/
z/
/.idea
.idea/
\.idea
.git/
.gitee/
.vscode/
.tx/
~*.*
.pyc
.DS_Store
u*.bat
ivan.conf
chill.conf
vcs.xml
deployment.xml
# Byte-compiled / optimized / DLL files
__pycache__/
*.py[cod]
*$py.class
# C extensions
*.so
# Distribution / packaging
.Python
develop-eggs/
dist/
downloads/
eggs/
.eggs/
parts/
sdist/
var/
wheels/
*.egg-info/
.installed.cfg
*.egg
MANIFEST
# PyInstaller
# Usually these files are written by a python script from a template
# before PyInstaller builds the exe, so as to inject date/other infos into it.
*.manifest
*.spec
# Installer logs
pip-log.txt
pip-delete-this-directory.txt
# Unit test / coverage reports
htmlcov/
.tox/
.coverage
.coverage.*
.cache
nosetests.xml
coverage.xml
*.cover
.hypothesis/
.pytest_cache/
# Translations
*.mo
*.pot
# Django stuff:
*.log
local_settings.py
db.sqlite3
# Flask stuff:
instance/
.webassets-cache
# Scrapy stuff:
.scrapy
# Sphinx documentation
docs/_build/
# PyBuilder
target/
# Jupyter Notebook
.ipynb_checkpoints
# IPython
profile_default/
ipython_config.py
# pyenv
.python-version
# celery beat schedule file
celerybeat-schedule
# SageMath parsed files
*.sage.py
# Environments
.env
.venv
env/
venv/
ENV/
env.bak/
venv.bak/
# Spyder project settings
.spyderproject
.spyproject
# Rope project settings
.ropeproject
# mkdocs documentation
/site
# mypy
.mypy_cache/
.dmypy.json
dmypy.json

View File

@@ -1,3 +0,0 @@
# -*- coding: utf-8 -*-

View File

@@ -1,34 +0,0 @@
{
'name': 'App Customize Columns of List (Tree) View Dynamic',
'version': '10.0.1.6',
'author': 'Sunpop.cn',
'category': 'Productivity',
'website': 'http://www.odooapp.cn',
'sequence': 2,
'summary': 'App Customize columns of List (Tree) View. Dynamic list.',
'description': """
App Customize Columns of List (Tree) View
============
App Customize Columns of List (Tree) View module is made to show/hide the columns on the list/tree view of Odoo. After installing the module, a "Set Columns" button will be show to the list view.
You can customize every odoo list/tree view easily.
This module is ready for Community and Enterprise Edition.
""",
'images': ['static/description/sales_coms.jpg'
],
'depends': ['web'],
'data': [
'views/listview_button.xml',
],
'demo': [],
'test': [
],
'installable': True,
'application': True,
'auto_install': False,
'qweb': ['static/src/xml/listview_button_view.xml'],
}

View File

@@ -1,24 +0,0 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * apps_material_backend_theme
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 10.0c\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2016-09-07 08:57+0000\n"
"PO-Revision-Date: 2016-09-07 08:57+0000\n"
"Last-Translator: Ivan Deng <300883@qq.com>, 2017\n"
"Language-Team: Chinese (China) (https://www.transifex.com/odoo/teams/41243/zh_CN/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: zh_CN\n"
"Plural-Forms: nplurals=1; plural=0;\n"
#. module: app_dynamic_list
#. openerp-web
#: code:addons/apps_material_backend_theme/static/src/xml/listview_button_view.xml:121
#, python-format
msgid "Set Columns"
msgstr "显示列"

Binary file not shown.

Before

Width:  |  Height:  |  Size: 113 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 88 KiB

View File

@@ -1,62 +0,0 @@
<section class="oe_container">
<div class="oe_row oe_spaced">
<div class="oe_span12">
<h2 class="oe_slogan">Customize hide/show the columns on the list (tree) view dynamically</h2>
<div class="oe_demo" style=" margin: 30px auto 0; padding: 0 15px 0 0; border:none; width: 96%;">
<p>This moduld allows user to customize columns dynamically in list (tree) view of any object of any
installed module. </p>
<br>
<p>"Set Columns" button contains all field(s) in dropdown with checkbox which will exist in
list view of current object. So if user wants to show/hide any field, then he/she has to just do
check/uncheck that respective checkbox besides field name in dropdown list and then just click on
"Apply" button.</p>
</div>
</div>
</div>
<div class="oe_row oe_spaced">
<div class="oe_demo"
style=" margin: 60px auto 0; padding: 0 15px 0 0; border:none; border-top:solid 1px #dedede; width: 96%;">
<ul>
<li><p class='oe_mt32'>Sales leads in Enterprise Edition</p></li>
</ul>
</div>
<div class="oe_demo oe_picture oe_screenshot">
<img src="sales_ent.png" style="border:1px solid black"/>
<br/>
</div>
<div class="oe_demo"
style=" margin: 60px auto 0; padding: 0 15px 0 0; border:none; border-top:solid 1px #dedede; width: 96%;">
<ul>
<li><p class='oe_mt32'>Sales leads in Community Edition</p></li>
</ul>
</div>
<div class="oe_demo oe_picture oe_screenshot">
<img src="sales_com.png" style="border:1px solid black"/>
<br/>
</div>
</div>
</div>
</section>
<section class="oe_container oe_dark">
<div class="oe_row oe_spaced text-center">
<div class="oe_span12">
<h2 class="oe_slogan">Technical Help & Support</h2>
</div>
<div class="col-md-12 pad0">
<div class="oe_mt16">
<p><h4>
For any type of technical help & support requests, Feel free to contact us</h4></p>
<a style="background: #002e5a none repeat scroll 0% 0%; color: rgb(255, 255, 255);position: relative; overflow: hidden;"
class="btn btn-warning btn-lg" rel="nofollow" href="mailto:guohuadeng@hotmail.com"><span
style="height: 354px; width: 354px; top: -147.433px; left: -6.93335px;" class="o_ripple"></span>
<i class="fa fa-envelope"></i> guohuadeng@hotmail.com</a>
</div>
</div>
</div>
</section>

Binary file not shown.

Before

Width:  |  Height:  |  Size: 170 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 163 KiB

View File

@@ -1,97 +0,0 @@
odoo.define('app_dynamic_list.shcolumns', function (require) {
"use strict";
var core = require('web.core');
var ListView = require('web.ListView');
var QWeb = core.qweb;
ListView.include({
reload: function () {
this.setup_columns(this.fields_view.fields, this.grouped);
this.$el.html(QWeb.render(this._template, this));
return this.reload_content();
},
render_buttons: function($node) {
var self = this;
this._super($node);
this.$buttons.find('.oe_select_columns').click(this.proxy('my_setup_columns'));
this.$buttons.find('.oe_dropdown_btn').click(this.proxy('hide_show_columns'));
this.$buttons.find('.dropdown-menu').click(this.proxy('stop_event'));
},
my_setup_columns: function (fields, grouped) {
$("#showcb").toggle();
var getcb = document.getElementById('showcb');
this.visible_columns = _.filter(this.columns, function (column) {
var firstcheck = document.getElementById(column.id);
if(firstcheck == null)
{
var li= document.createElement("li");
var description = document.createTextNode(column.string);
var checkbox = document.createElement("input");
checkbox.id = column.id;
checkbox.type = "checkbox";
checkbox.name = "cb";
if(column.invisible !== '1')
{
checkbox.checked = true;
}
li.appendChild(checkbox);
li.appendChild(description);
getcb.appendChild(li);
}
else
{
if(column.invisible !== '1')
{
firstcheck.checked = true;
}
else
{
firstcheck.checked = false;
}
}
});
},
stop_event : function(e)
{
e.stopPropagation();
},
hide_show_columns : function()
{
$("#showcb").hide();
this.setup_columns(this.fields_view.fields, this.grouped);
this.$el.html(QWeb.render(this._template, this));
return this.reload_content();
},
setup_columns: function (fields, grouped) {
this._super(fields, grouped);
this.visible_columns = _.filter(this.columns, function (column) {
var cbid = document.getElementById(column.id);
if(cbid !== null)
{
var cbid = cbid.checked;
if(cbid !== false)
{
column.invisible = '2';
}
else
{
column.invisible = '1';
}
}
return column.invisible !== '1';
});
this.aggregate_columns = _(this.visible_columns).invoke('to_aggregate');
},
});
$(document).click(function(){
$("#showcb").hide();
});
});

View File

@@ -1,24 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<templates t-name="selectcolumns">
<t t-extend="ListView.buttons">
<t t-jquery="button.o_list_button_add" t-operation="after">
<div class="btn-group o_dropdown">
<button name="select_columns" id="select_columns"
class="oe_select_columns btn btn-default btn-sm dropdown-toggle"
data-toggle="dropdown">
Set Columns
<span class="caret"></span>
</button>
<ul id="showcb" class="dropdown-menu" style="padding:10px">
<li>
<button name="apply" id="apply" class="oe_dropdown_btn btn btn-primary btn-block">
Apply
</button>
</li>
</ul>
</div>
</t>
</t>
</templates>

View File

@@ -1,11 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<openerp>
<data>
<template id="assets_backend" name="listview" inherit_id="web.assets_backend">
<xpath expr="." position="inside">
<link rel="stylesheet" href="/app_dynamic_list/static/src/css/my.css"/>
<script type="text/javascript" src="/app_dynamic_list/static/src/js/dynamic_list.js"></script>
</xpath>
</template>
</data>
</openerp>

View File

@@ -1,4 +0,0 @@
# -*- coding: utf-8 -*-
import models

View File

@@ -1,73 +0,0 @@
# -*- coding: utf-8 -*-
# Created on 2017-11-05
# author: 广州尚鹏http://www.sunpop.cn
# email: 300883@qq.com
# resource of Sunpop
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl).
# Odoo在线中文用户手册长期更新
# http://www.sunpop.cn/documentation/user/10.0/zh_CN/index.html
# Odoo10离线中文用户手册下载
# http://www.sunpop.cn/odoo10_user_manual_document_offline/
# Odoo10离线开发手册下载-含python教程jquery参考Jinja2模板PostgresSQL参考odoo开发必备
# http://www.sunpop.cn/odoo10_developer_document_offline/
# description:
{
'name': 'App Odoo Customize(Backend Debranding Title,Language,Documentation,Quick Debug,Delete clear)',
'version': '10.0.2.4',
'author': 'Sunpop.cn',
'category': 'Productivity',
'website': 'http://www.sunpop.cn',
'license': 'AGPL-3',
'sequence': 2,
'summary': 'Quick customize and debranding your own Odoo. Quick debug, Language Switcher, Online Documentation Access,Delete test data.',
'description': """
App Odoo Customize(Debranding Title,Language,Documentation,Quick Debug)
============
White label odoo.
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/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)
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.
""",
'images': ['static/description/banner.png'],
'depends': ['web','mail'],
'data': [
'views/app_odoo_customize_view.xml',
'views/app_theme_config_settings_view.xml',
# data
'data/ir_config_parameter.xml',
],
'demo': [],
'test': [
],
'installable': True,
'application': True,
'auto_install': False,
'qweb': [
'static/src/xml/customize_user_menu.xml',
],
}

View File

@@ -1,71 +0,0 @@
<?xml version="1.0"?>
<openerp>
<data noupdate="0">
<record id="app_system_name" model="ir.config_parameter">
<field name="key">app_system_name</field>
<field name="value">odooApp</field>
</record>
<record id="app_show_lang" model="ir.config_parameter">
<field name="key">app_show_lang</field>
<field name="value">True</field>
</record>
<record id="app_show_debug" model="ir.config_parameter">
<field name="key">app_show_debug</field>
<field name="value">True</field>
</record>
<record id="app_show_documentation" model="ir.config_parameter">
<field name="key">app_show_documentation</field>
<field name="value">True</field>
</record>
<record id="app_show_documentation_dev" model="ir.config_parameter">
<field name="key">app_show_documentation_dev</field>
<field name="value">True</field>
</record>
<record id="app_show_support" model="ir.config_parameter">
<field name="key">app_show_support</field>
<field name="value">True</field>
</record>
<record id="app_show_account" model="ir.config_parameter">
<field name="key">app_show_account</field>
<field name="value">True</field>
</record>
<record id="app_show_enterprise" model="ir.config_parameter">
<field name="key">app_show_enterprise</field>
<field name="value">False</field>
</record>
<record id="app_show_share" model="ir.config_parameter">
<field name="key">app_show_share</field>
<field name="value">False</field>
</record>
<record id="app_show_poweredby" model="ir.config_parameter">
<field name="key">app_show_poweredby</field>
<field name="value">False</field>
</record>
<record id="app_stop_subscribe" model="ir.config_parameter">
<field name="key">app_stop_subscribe</field>
<field name="value">False</field>
</record>
<record id="app_documentation_url" model="ir.config_parameter">
<field name="key">app_documentation_url</field>
<field name="value">http://www.sunpop.cn/documentation/user/10.0/zh_CN/index.html</field>
</record>
<record id="app_documentation_dev_url" model="ir.config_parameter">
<field name="key">app_documentation_dev_url</field>
<field name="value">http://www.sunpop.cn/documentation/10.0/index.html</field>
</record>
<record id="app_support_url" model="ir.config_parameter">
<field name="key">app_support_url</field>
<field name="value">http://www.sunpop.cn/trial</field>
</record>
<record id="app_account_title" model="ir.config_parameter">
<field name="key">app_account_title</field>
<field name="value">My Online Account</field>
</record>
<record id="app_account_url" model="ir.config_parameter">
<field name="key">app_account_url</field>
<field name="value">http://www.sunpop.cn/my-account</field>
</record>
</data>
</openerp>

View File

@@ -1,397 +0,0 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * app_odoo_customize
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 10.0+e-20171107\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2018-01-10 11:41+0000\n"
"PO-Revision-Date: 2018-01-10 11:41+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
#: model:ir.ui.view,arch_db:app_odoo_customize.view_app_theme_config_settings
msgid "Accounting"
msgstr "会计"
#. module: app_odoo_customize
#. openerp-web
#: code:addons/app_odoo_customize/static/src/xml/customize_user_menu.xml:7
#, 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:10
#, python-format
msgid "Activate the developer mode (with assets)"
msgstr "激活开发者模式 (assets)"
#. module: app_odoo_customize
#: model:ir.model,name:app_odoo_customize.model_app_theme_config_settings
msgid "App Odoo Customize settings"
msgstr "App Odoo 自定义设置"
#. module: app_odoo_customize
#: model:ir.ui.view,arch_db:app_odoo_customize.view_app_theme_config_settings
msgid "Apply"
msgstr "应用"
#. module: app_odoo_customize
#: model:ir.ui.view,arch_db:app_odoo_customize.view_app_theme_config_settings
msgid "Base Models"
msgstr "基础模型数据"
#. module: app_odoo_customize
#: model:ir.ui.view,arch_db:app_odoo_customize.view_app_theme_config_settings
msgid "Cancel"
msgstr "取消"
#. module: app_odoo_customize
#: model:ir.model.fields,help:app_odoo_customize.field_app_theme_config_settings_app_stop_subscribe
msgid "Check to stop Odoo Subscribe function"
msgstr "Check to stop Odoo Subscribe function"
#. module: app_odoo_customize
#: model:ir.model.fields,field_description:app_odoo_customize.field_app_theme_config_settings_create_uid
msgid "Created by"
msgstr "创建人"
#. module: app_odoo_customize
#: model:ir.model.fields,field_description:app_odoo_customize.field_app_theme_config_settings_create_date
msgid "Created on"
msgstr "创建时间"
#. module: app_odoo_customize
#: model: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:13
#, python-format
msgid "Deactivate the developer mode"
msgstr "取消激活开发者模式"
#. module: app_odoo_customize
#: model:ir.ui.view,arch_db:app_odoo_customize.view_app_theme_config_settings
msgid "Delete All BOM"
msgstr "删除所有物料清单"
#. module: app_odoo_customize
#: model:ir.ui.view,arch_db:app_odoo_customize.view_app_theme_config_settings
msgid "Delete All Manufacturing Order"
msgstr "删除所有生产单"
#. module: app_odoo_customize
#: model:ir.ui.view,arch_db:app_odoo_customize.view_app_theme_config_settings
msgid "Delete All Message"
msgstr "删除所有消息"
#. module: app_odoo_customize
#: model: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: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:ir.ui.view,arch_db:app_odoo_customize.view_app_theme_config_settings
msgid "Delete All Product"
msgstr "删除所有产品及变体"
#. module: app_odoo_customize
#: model:ir.ui.view,arch_db:app_odoo_customize.view_app_theme_config_settings
msgid "Delete All Product Attribute"
msgstr "删除所有产品属性"
#. module: app_odoo_customize
#: model: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:ir.ui.view,arch_db:app_odoo_customize.view_app_theme_config_settings
msgid "Delete All Sales Order"
msgstr "删除所有报价单、销售单"
#. module: app_odoo_customize
#: model: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: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_app_theme_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:16
#, python-format
msgid "Developer Manual"
msgstr "开发者手册"
#. module: app_odoo_customize
#: model:ir.model.fields,field_description:app_odoo_customize.field_app_theme_config_settings_display_name
msgid "Display Name"
msgstr "显示名称"
#. module: app_odoo_customize
#: model:ir.model.fields,field_description:app_odoo_customize.field_app_theme_config_settings_app_documentation_url
msgid "Documentation Url"
msgstr "用户手册链接"
#. module: app_odoo_customize
#: model:ir.model,name:app_odoo_customize.model_mail_thread
msgid "Email Thread"
msgstr "Email线程"
#. module: app_odoo_customize
#: model:ir.model.fields,field_description:app_odoo_customize.field_app_theme_config_settings_id
msgid "ID"
msgstr "ID"
#. 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.ui.view,arch_db:app_odoo_customize.view_app_theme_config_settings
msgid "Inventory"
msgstr "库存"
#. module: app_odoo_customize
#: model:ir.ui.view,arch_db:app_odoo_customize.view_app_theme_config_settings
msgid "Item to Show"
msgstr "显示/隐藏菜单项"
#. module: app_odoo_customize
#: model:ir.model.fields,field_description:app_odoo_customize.field_app_theme_config_settings___last_update
msgid "Last Modified on"
msgstr "最后修改日"
#. module: app_odoo_customize
#: model:ir.model.fields,field_description:app_odoo_customize.field_app_theme_config_settings_write_uid
msgid "Last Updated by"
msgstr "最后更新人"
#. module: app_odoo_customize
#: model:ir.model.fields,field_description:app_odoo_customize.field_app_theme_config_settings_write_date
msgid "Last Updated on"
msgstr "最后更新时间"
#. module: app_odoo_customize
#: model:ir.ui.view,arch_db:app_odoo_customize.view_app_theme_config_settings
msgid "MRP"
msgstr "生产"
#. module: app_odoo_customize
#: model:ir.model.fields,field_description:app_odoo_customize.field_app_theme_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_app_theme_config_settings_app_account_url
msgid "My Odoo.com Account Url"
msgstr "我的帐户链接"
#. module: app_odoo_customize
#: model:ir.ui.view,arch_db:app_odoo_customize.view_app_theme_config_settings
msgid "Online Support"
msgstr "系统支持"
#. module: app_odoo_customize
#: model:ir.ui.view,arch_db:app_odoo_customize.view_app_theme_config_settings
msgid "POS"
msgstr "POS门店"
#. module: app_odoo_customize
#: model: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:ir.ui.view,arch_db:app_odoo_customize.replace_login
msgid "Powered by <span>odooApp</span>"
msgstr "技术支持 <span>odooApp</span>"
#. module: app_odoo_customize
#: model:ir.ui.view,arch_db:app_odoo_customize.view_app_theme_config_settings
msgid "Purchase"
msgstr "采购"
#. module: app_odoo_customize
#: model:ir.ui.view,arch_db:app_odoo_customize.view_app_theme_config_settings
msgid "Sales"
msgstr "销售"
#. module: app_odoo_customize
#: model:ir.model.fields,help:app_odoo_customize.field_app_theme_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_app_theme_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_app_theme_config_settings_app_show_documentation
msgid "Show Documentation"
msgstr "显示文档"
#. module: app_odoo_customize
#: model:ir.model.fields,field_description:app_odoo_customize.field_app_theme_config_settings_app_show_enterprise
msgid "Show Enterprise Tag"
msgstr "显示升级企业版标签提醒"
#. module: app_odoo_customize
#: model:ir.model.fields,field_description:app_odoo_customize.field_app_theme_config_settings_app_show_account
msgid "Show My Account"
msgstr "显示我的帐户"
#. module: app_odoo_customize
#: model:ir.model.fields,field_description:app_odoo_customize.field_app_theme_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_app_theme_config_settings_app_show_debug
msgid "Show Quick Debug"
msgstr "显示快速调试"
#. module: app_odoo_customize
#: model:ir.model.fields,field_description:app_odoo_customize.field_app_theme_config_settings_app_show_lang
msgid "Show Quick Language Switcher"
msgstr "显示快速多语言切换"
#. module: app_odoo_customize
#: model:ir.model.fields,field_description:app_odoo_customize.field_app_theme_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_app_theme_config_settings_app_show_support
msgid "Show Support"
msgstr "显示支持"
#. module: app_odoo_customize
#: model:ir.model.fields,field_description:app_odoo_customize.field_app_theme_config_settings_app_stop_subscribe
msgid "Stop Odoo Subscribe(Performance Improve)"
msgstr "停用Odoo自动订阅(提高性能)"
#. module: app_odoo_customize
#: model:ir.model.fields,field_description:app_odoo_customize.field_app_theme_config_settings_app_support_url
msgid "Support Url"
msgstr "支持链接"
#. module: app_odoo_customize
#: model:ir.model.fields,field_description:app_odoo_customize.field_app_theme_config_settings_app_system_name
#: model:ir.ui.view,arch_db:app_odoo_customize.view_app_theme_config_settings
msgid "System Name"
msgstr "系统名称"
#. module: app_odoo_customize
#: model:ir.model.fields,help:app_odoo_customize.field_app_theme_config_settings_app_show_enterprise
msgid "Uncheck to hide the Enterprise tag"
msgstr "Uncheck to hide the Enterprise tag"
#. module: app_odoo_customize
#: model:ir.model.fields,help:app_odoo_customize.field_app_theme_config_settings_app_show_share
msgid "Uncheck to hide the Odoo Share Dashboard"
msgstr "Uncheck to hide the Odoo Share Dashboard"
#. module: app_odoo_customize
#: model:ir.model.fields,help:app_odoo_customize.field_app_theme_config_settings_app_show_poweredby
msgid "Uncheck to hide the Powered by text"
msgstr "不勾选则不显示Odoo Powered by"
#. module: app_odoo_customize
#: model:ir.ui.view,arch_db:app_odoo_customize.view_app_theme_config_settings
msgid "User Menu"
msgstr "用户菜单"
#. module: app_odoo_customize
#: model:ir.ui.view,arch_db:app_odoo_customize.view_app_theme_config_settings
msgid "User Menu Content"
msgstr "菜单项具体操作设置"
#. module: app_odoo_customize
#: model:ir.ui.view,arch_db:app_odoo_customize.view_app_theme_config_settings
msgid "Visit our website for more apps and Support. http://www.sunpop.cn"
msgstr "请访问我们的网站获取更多支持. http://www.sunpop.cn"
#. module: app_odoo_customize
#: model:ir.model.fields,help:app_odoo_customize.field_app_theme_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_app_theme_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_app_theme_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_app_theme_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_app_theme_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_app_theme_config_settings_app_show_debug
msgid "When enable,everyone login can see the debug menu"
msgstr "启用后,会显示快速调试菜单"
#. module: app_odoo_customize
#: model:ir.ui.view,arch_db:app_odoo_customize.view_app_theme_config_settings
msgid "White Label Setting"
msgstr "个性化odoo设置"
#. module: app_odoo_customize
#: model:ir.model,name:app_odoo_customize.model_ir_ui_view
msgid "ir.ui.view"
msgstr "ir.ui.view"
#. 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 "odooApp Customize"
msgstr "odooApp 定制"
#. module: app_odoo_customize
#: model:ir.ui.menu,name:app_odoo_customize.menu_app_group
msgid "odooApp"
msgstr "odooApp"
#. module: app_odoo_customize
#: model:ir.ui.view,arch_db:app_odoo_customize.view_app_theme_config_settings
msgid "odooApp Customize Settings"
msgstr "odooApp 定制化设置"

View File

@@ -1,6 +0,0 @@
# -*- coding: utf-8 -*-
import ir_ui_view
import app_theme_config_settings
import base_language_install
import mail_thread

View File

@@ -1,440 +0,0 @@
# -*- coding: utf-8 -*-
import logging
from openerp import api, fields, models, _
_logger = logging.getLogger(__name__)
class AppThemeConfigSettings(models.TransientModel):
_inherit = 'res.config.settings'
_name = 'app.theme.config.settings'
_description = u"App Odoo Customize settings"
app_system_name = fields.Char('System Name', help=u"Setup System Name,which replace Odoo")
app_show_lang = fields.Boolean('Show Quick Language Switcher',
help=u"When enable,User can quick switch language in user menu")
app_show_debug = fields.Boolean('Show Quick Debug', help=u"When enable,everyone login can see the debug menu")
app_show_documentation = fields.Boolean('Show Documentation', help=u"When enable,User can visit user manual")
app_show_documentation_dev = fields.Boolean('Show Developer Documentation',
help=u"When enable,User can visit development documentation")
app_show_support = fields.Boolean('Show Support', help=u"When enable,User can vist your support site")
app_show_account = fields.Boolean('Show My Account', help=u"When enable,User can login to your website")
app_show_enterprise = fields.Boolean('Show Enterprise Tag', help=u"Uncheck to hide the Enterprise tag")
app_show_share = fields.Boolean('Show Share Dashboard', help=u"Uncheck to hide the Odoo Share Dashboard")
app_show_poweredby = fields.Boolean('Show Powered by Odoo', help=u"Uncheck to hide the Powered by text")
app_stop_subscribe = fields.Boolean('Stop Odoo Subscribe(Performance Improve)', help=u"Check to stop Odoo Subscribe function")
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')
@api.model
def get_default_all(self, fields):
ir_config = self.env['ir.config_parameter']
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_stop_subscribe = True if ir_config.get_param('app_stop_subscribe') == "True" else False
app_documentation_url = ir_config.get_param('app_documentation_url',
default='http://www.sunpop.cn/documentation/user/10.0/en/index.html')
app_documentation_dev_url = ir_config.get_param('app_documentation_dev_url',
default='http://www.sunpop.cn/documentation/10.0/index.html')
app_support_url = ir_config.get_param('app_support_url', default='http://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='http://www.sunpop.cn/my-account/')
return dict(
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_stop_subscribe=app_stop_subscribe,
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
)
@api.multi
def set_default_all(self):
self.ensure_one()
ir_config = self.env['ir.config_parameter']
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_stop_subscribe", self.app_stop_subscribe or "False")
ir_config.set_param("app_documentation_url",
self.app_documentation_url or "http://www.sunpop.cn/documentation/user/10.0/en/index.html")
ir_config.set_param("app_documentation_dev_url",
self.app_documentation_dev_url or "http://www.sunpop.cn/documentation/10.0/index.html")
ir_config.set_param("app_support_url", self.app_support_url or "http://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 "http://www.sunpop.cn/my-account/")
return True
@api.multi
def remove_sales(self):
to_removes = [
# 清除销售单据
['sale.order.line', ],
['sale.order', ],
]
try:
for line in to_removes :
obj_name = line[0]
obj = self.pool.get(obj_name)
if obj and obj._table_exist:
sql = "delete from %s" % obj._table
self._cr.execute(sql)
# 更新序号
seqs = self.env['ir.sequence'].search([('code', '=', 'sale.order')])
for seq in seqs:
seq.write({
'number_next': 1,
})
sql = "update ir_sequence set number_next=1 where code ='sale.order';"
self._cr.execute(sql)
except Exception, e:
raise Warning(e)
return True
def remove_product(self):
to_removes = [
# 清除产品数据
['product.product', ],
['product.template', ],
]
try:
for line in to_removes :
obj_name = line[0]
obj = self.pool.get(obj_name)
if obj and obj._table_exist:
sql = "delete from %s" % obj._table
self._cr.execute(sql)
# 更新序号,针对自动产品编号
seqs = self.env['ir.sequence'].search([('code', '=', 'product.product')])
for seq in seqs:
seq.write({
'number_next': 1,
})
sql = "update ir_sequence set number_next=1 where code ='product.product';"
self._cr.execute(sql)
except Exception, e:
raise Warning(e)
return True
def remove_product_attribute(self):
to_removes = [
# 清除产品属性
['product.attribute.value', ],
['product.attribute', ],
]
try:
for line in to_removes :
obj_name = line[0]
obj = self.pool.get(obj_name)
if obj and obj._table_exist:
sql = "delete from %s" % obj._table
self._cr.execute(sql)
except Exception, e:
raise Warning(e)
return True
@api.multi
def remove_pos(self):
to_removes = [
# 清除POS单据
['pos.order.line', ],
['pos.order', ],
]
try:
for line in to_removes :
obj_name = line[0]
obj = self.pool.get(obj_name)
if obj and obj._table_exist:
sql = "delete from %s" % obj._table
self._cr.execute(sql)
# 更新序号
seqs = self.env['ir.sequence'].search([('code', '=', 'pos.order')])
for seq in seqs:
seq.write({
'number_next': 1,
})
sql = "update ir_sequence set number_next=1 where code ='pos.order';"
self._cr.execute(sql)
except Exception, e:
raise Warning(e)
return True
@api.multi
def remove_purchase(self):
to_removes = [
# 清除采购单据
['purchase.order.line', ],
['purchase.order', ],
['purchase.requisition.line', ],
['purchase.requisition', ],
]
try:
for line in to_removes :
obj_name = line[0]
obj = self.pool.get(obj_name)
if obj and obj._table_exist:
sql = "delete from %s" % obj._table
self._cr.execute(sql)
# 更新序号
seqs = self.env['ir.sequence'].search([('code', '=', 'purchase.order')])
for seq in seqs:
seq.write({
'number_next': 1,
})
sql = "update ir_sequence set number_next=1 where code ='purchase.order';"
self._cr.execute(sql)
except Exception, e:
raise Warning(e)
return True
@api.multi
def remove_mrp(self):
to_removes = [
# 清除生产单据
['mrp.workcenter.productivity', ],
['mrp.workorder', ],
['mrp.production.workcenter.line', ],
['mrp.production', ],
['mrp.production.product.line', ],
['mrp.unbuild', ],
['change.production.qty', ],
]
try:
for line in to_removes :
obj_name = line[0]
obj = self.pool.get(obj_name)
if obj and obj._table_exist:
sql = "delete from %s" % obj._table
self._cr.execute(sql)
# 更新序号
seqs = self.env['ir.sequence'].search(['|', ('code', '=', 'mrp.production'), ('code', '=', 'mrp.unbuild')])
for seq in seqs:
seq.write({
'number_next': 1,
})
sql = "update ir_sequence set number_next=1 where (code ='mrp.production' or code ='mrp.unbuild');"
self._cr.execute(sql)
except Exception, e:
raise Warning(e)
return True
@api.multi
def remove_mrp_bom(self):
to_removes = [
# 清除生产BOM
['mrp.bom.line', ],
['mrp.bom', ],
]
try:
for line in to_removes :
obj_name = line[0]
obj = self.pool.get(obj_name)
if obj and obj._table_exist:
sql = "delete from %s" % obj._table
self._cr.execute(sql)
except Exception, e:
raise Warning(e)
return True
@api.multi
def remove_inventory(self):
to_removes = [
# 清除库存单据
['stock.quant', ],
['stock.quant.package', ],
['stock.quant.move.rel', ],
['stock.move', ],
['stock.pack.operation', ],
['stock.picking', ],
['stock.scrap', ],
['stock.inventory.line', ],
['stock.inventory', ],
['stock.production.lot', ],
['stock.fixed.putaway.strat', ],
['make.procurement', ],
['procurement.order', ],
['procurement.group', ],
]
try:
for line in to_removes :
obj_name = line[0]
obj = self.pool.get(obj_name)
if obj and obj._table_exist:
sql = "delete from %s" % obj._table
self._cr.execute(sql)
# 更新序号
seqs = self.env['ir.sequence'].search([
'|', ('code', '=', 'stock.lot.serial'),
'|', ('code', '=', 'stock.lot.tracking'),
'|', ('code', '=', 'stock.orderpoint'),
'|', ('code', '=', 'stock.picking'),
'|', ('code', '=', 'stock.quant.package'),
'|', ('code', '=', 'stock.scrap'),
'|', ('code', '=', 'stock.picking'),
'|', ('prefix', '=', 'WH/IN/'),
'|', ('prefix', '=', 'WH/INT/'),
'|', ('prefix', '=', 'WH/OUT/'),
'|', ('prefix', '=', 'WH/PACK/'),
('prefix', '=', 'WH/PICK/')
])
for seq in seqs:
seq.write({
'number_next': 1,
})
sql = "update ir_sequence set number_next=1 where (" \
"code ='stock.lot.serial' " \
"or code ='stock.lot.tracking' " \
"or code ='stock.orderpoint'" \
"or code ='stock.picking'" \
"or code ='stock.quant.package'" \
"or code ='stock.scrap'" \
"or code ='stock.picking'" \
"or prefix ='WH/IN/'" \
"or prefix ='WH/INT/'" \
"or prefix ='WH/OUT/'" \
"or prefix ='WH/PACK/'" \
"or prefix ='WH/PICK/'" \
");"
self._cr.execute(sql)
except Exception, e:
raise Warning(e)
return True
@api.multi
def remove_account(self):
to_removes = [
# 清除财务会计单据
['account.voucher.line', ],
['account.voucher', ],
['account.bank.statement', ],
['account.bank.statement.line', ],
['account.payment', ],
['account.analytic.line', ],
['account.invoice.line', ],
['account.invoice', ],
['account.partial.reconcile', ],
['account.move.line', ],
['account.move', ],
]
try:
for line in to_removes :
obj_name = line[0]
obj = self.pool.get(obj_name)
if obj and obj._table_exist:
sql = "delete from %s" % obj._table
self._cr.execute(sql)
# 更新序号
seqs = self.env['ir.sequence'].search([
'|', ('code', '=', 'account.reconcile'),
'|', ('code', '=', 'account.payment.customer.invoice'),
'|', ('code', '=', 'account.payment.customer.refund'),
'|', ('code', '=', 'account.payment.supplier.invoice'),
'|', ('code', '=', 'account.payment.supplier.refund'),
'|', ('code', '=', 'account.payment.transfer'),
'|', ('prefix', 'like', 'BNK1/'),
'|', ('prefix', 'like', 'CSH1/'),
'|', ('prefix', 'like', 'INV/'),
'|', ('prefix', 'like', 'EXCH/'),
'|', ('prefix', 'like', 'MISC/'),
'|', ('prefix', 'like', u'账单/'),
('prefix', 'like', u'杂项/')
])
for seq in seqs:
seq.write({
'number_next': 1,
})
# todo: 帐单 or BILL/%
sql = "update ir_sequence set number_next=1 where (" \
"code ='account.reconcile' " \
"or code ='account.payment.customer.invoice' " \
"or code ='account.payment.customer.refund' " \
"or code ='account.payment.supplier.invoice' " \
"or code ='account.payment.supplier.refund' " \
"or prefix like 'BNK1/%'" \
"or prefix like 'CSH1/%'" \
"or prefix like 'INV/%'" \
"or prefix like 'EXCH/%'" \
"or prefix like 'MISC/%'" \
"or prefix like '账单/%'" \
"or prefix like '杂项/%'" \
");"
self._cr.execute(sql)
except Exception, e:
raise Warning(e)
return True
@api.multi
def remove_message(self):
to_removes = [
# 清除消息数据
['mail.message', ],
['mail.followers', ],
]
try:
for line in to_removes :
obj_name = line[0]
obj = self.pool.get(obj_name)
if obj and obj._table_exist:
sql = "delete from %s" % obj._table
self._cr.execute(sql)
except Exception, e:
raise Warning(e)
return True
@api.multi
def remove_workflow(self):
to_removes = [
# 清除工作流
['wkf.workitem', ],
['wkf.instance', ],
]
try:
for line in to_removes :
obj_name = line[0]
obj = self.pool.get(obj_name)
if obj and obj._table_exist:
sql = "delete from %s" % obj._table
self._cr.execute(sql)
except Exception, e:
raise Warning(e)
return True

View File

@@ -1,21 +0,0 @@
# -*- coding: utf-8 -*-
# Copyright 2017 Jarvis (www.odoomod.com)
# License LGPL-3.0 or later (http://www.gnu.org/licenses/lgpl.html).
from openerp import api, fields, models, _
class BaseLanguageInstall(models.TransientModel):
_inherit = "base.language.install"
@api.multi
def lang_install(self):
self.ensure_one()
self.env.cr.execute("""
delete from ir_translation
where (name='ir.module.module,shortdesc'
or name='ir.module.module,description'
or name='ir.module.module,summary')
and lang=%s
""", (self.lang,))
return super(BaseLanguageInstall, self).lang_install()

View File

@@ -1,18 +0,0 @@
# -*- coding: utf-8 -*-
import logging
from openerp import api, fields, models, _
_logger = logging.getLogger(__name__)
class View(models.Model):
_inherit = 'ir.ui.view'
@api.model
def render_template(self, template, values=None, engine='ir.qweb'):
if template in ['web.login', 'web.webclient_bootstrap']:
if not values:
values = {}
values["title"] = self.env['ir.config_parameter'].get_param("app_system_name", "odooApp")
return super(View, self).render_template(template, values=values, engine=engine)

View File

@@ -1,39 +0,0 @@
# -*- coding: utf-8 -*-
# Copyright 2017 Jarvis (www.odoomod.com)
# License LGPL-3.0 or later (http://www.gnu.org/licenses/lgpl.html).
from openerp import api, fields, models, _
class MailThread(models.AbstractModel):
_inherit = "mail.thread"
@api.multi
def message_subscribe(self, partner_ids=None, channel_ids=None, subtype_ids=None, force=True):
""" 停用订阅功能. """
ir_config = self.env['ir.config_parameter']
app_stop_subscribe = True if ir_config.get_param('app_stop_subscribe') == "True" else False
if app_stop_subscribe:
return
else:
return super(MailThread, self).message_subscribe(partner_ids, channel_ids, subtype_ids, force)
@api.multi
def message_auto_subscribe(self, updated_fields, values=None):
""" 停用订阅功能. """
ir_config = self.env['ir.config_parameter']
app_stop_subscribe = True if ir_config.get_param('app_stop_subscribe') == "True" else False
if app_stop_subscribe:
return
else:
return super(MailThread, self).message_auto_subscribe(updated_fields, values)
@api.multi
def _message_auto_subscribe_notify(self, partner_ids):
""" 停用订阅功能. """
ir_config = self.env['ir.config_parameter']
app_stop_subscribe = True if ir_config.get_param('app_stop_subscribe') == "True" else False
if app_stop_subscribe:
return
else:
return super(MailThread, self)._message_auto_subscribe_notify(partner_ids)

View File

@@ -1,60 +0,0 @@
##App Odoo Customize(Debranding Title,Language,Documentation,Quick Debug,Quick Data Clear)
============
White label odoo.
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/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)
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
http://www.sunpop.cn
## 在符合odoo开源协议的前提下去除odoo版权信息自定义你的odoo
可完全自行设置下列 odoo 选项,让 odoo 看上去像是你的软件产品
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同时提升性能
使用方法:将解压后的 app_odoo_customize 放到 odoo的 addons目录下激活开发者模式应用-->更新应用列表,
找到 "App odoo Customize"模块,安装即可。
## 其它技术资源:
#### odoo10-windows64位高性能最新绿色版下载及制作方法-提速50%
http://www.sunpop.cn/odoo10_fast_x64_download/
#### Odoo10离线中文用户手册下载
http://www.sunpop.cn/odoo10_user_manual_document_offline/
#### Odoo10离线开发手册下载-含python教程jquery参考Jinja2模板PostgresSQL参考odoo开发必备
http://www.sunpop.cn/odoo10_developer_document_offline/

Binary file not shown.

Before

Width:  |  Height:  |  Size: 54 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 66 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 78 KiB

View File

@@ -1,137 +0,0 @@
<section class="oe_container">
<div class="oe_row oe_spaced" style="max-width: 800px;">
<div class="oe_span12">
<h2 class="oe_slogan">App Odoo Customize</h2>
<div class="oe_demo" style=" margin: 30px auto 0; padding: 0 15px 0 0; border:none; width: 96%;">
<p>This moduld allows user to quickly customize and debranding Odoo. Quick debug, Language Switcher,
Online Documentation Access,Quick Data Clear. </p>
<h1>More Powerful UI addons:
<a class="btn btn-primary mb16" href="https://www.odoo.com/apps/modules/10.0/app_ui_enhance/">App UI enhance</a>
</h1>
<br>
<h3>Lastest update: v10.0.2.4, 2018-02-04</h3>
<ul>
<li>1. Deletes Odoo label in footer</li>
<li>2. Replaces "Odoo" in Windows title</li>
<li>3. Customize Documentation, Support, About links and title in usermenu</li>
<li>4. Adds "Developer mode" link to the top right-hand User Menu.</li>
<li>5. Adds Quick Language Switcher to the top right-hand User Menu.</li>
<li>6. Adds Country flags to the top right-hand User Menu.</li>
<li>7. Adds English and Chinese user documentation access to the top right-hand User Menu.</li>
<li>8. Adds developer documentation access to the top right-hand User Menu.</li>
<li>9. Customize "My odoo.com account" button</li>
<li>10. Standalone setting panel, easy to setup.</li>
<li>11. Provide 236 country flags.</li>
<li>12. Multi-language Support.</li>
<li>13. Change Powered by Odoo in login screen.(Please change '../views/app_odoo_customize_view.xml' #15)</li>
<li>14. Quick delete test data in Apps: Sales/POS/Purchase/MRP/Inventory/Accounting/Base Models.</li>
<li>15. Reset All the Sequence to beginning of 1: SO/PO/MO/Invoice...</li>
<li>16. Fix odoo reload module translation bug while enable english language</li>
<li>17. Stop Odoo Auto Subscribe(Performance Improve)</li>
</ul>
<p>
This module can help to white label the Odoo.
Also helpful for training and support for your odoo end-user.<br/>
The user can get the help document just by one click.
</p>
</div>
<div class="oe_demo oe_screenshot">
<img src="cnreadme.png" style="border:1px solid black"/>
<br/>
</div>
</div>
</div>
<div class="oe_row oe_spaced" style="max-width: 800px;">
<div class="oe_demo"
style="margin: 20px auto; padding: 0 15px 0 0; border:none; border-top:solid 1px #dedede; width: 96%;">
<h2 class='oe_mt32'>Odoo Customize(Debranding Title,Language,Documentation,Quick Debug)</h2>
</div>
<div class="oe_demo oe_screenshot">
<img src="banner.png" style="border:1px solid black"/>
<br/>
<img src="set3.png" style="border:1px solid black"/>
<br/>
</div>
<div class="oe_demo"
style="margin: 20px auto; padding: 0 15px 0 0; border:none; border-top:solid 1px #dedede; width: 96%;">
<h2 class='oe_mt32'>Multi-language support: Chinese ready</h2>
</div>
<div class="oe_demo oe_screenshot">
<img src="set11.png" style="border:1px solid black"/>
</br>
<img src="set12.png" style="border:1px solid black"/>
<br/>
</div>
</div>
<div class="oe_row oe_spaced" style="max-width: 800px;">
<div class="oe_demo"
style=" argin: 20px auto; padding: 0 15px 0 0; border:none; border-top:solid 1px #dedede; width: 96%; ">
<h2 class='oe_mt32'>How to use: Go to Settings -> odooApp Settings</h2>
</div>
<div class="oe_demo oe_screenshot">
<img src="set1.png" style="border:1px solid black"/>
<br/>
</div>
</div>
<div class="oe_row oe_spaced" style="max-width: 800px;">
<div class="oe_demo"
style="margin: 20px auto; padding: 0 15px 0 0; border:none; border-top:solid 1px #dedede; width: 96%;">
<h2 class='oe_mt32'>Setup more flags: just rename the flag pic to locale code of the country</h2>
<p>You can find the pictures in "\app-odoo\app_odoo_customize\static\src\img\flags"</p>
</div>
<div class="oe_demo oe_screenshot">
<img src="set2.png" style="border:1px solid black"/>
<br/>
</div>
</div>
<div class="oe_row oe_spaced" style="max-width: 800px;">
<div class="oe_demo"
style="margin: 20px auto; padding: 0 15px 0 0; border:none; border-top:solid 1px #dedede; width: 96%;">
<h2 class='oe_mt32'>Quick Delete test Data.</h2>
<p>You can quickly delete all the test data in Apps: Sales/POS/Purchase/MRP/Inventory/Accounting/Message/Workflow etc.</p>
</div>
<div class="oe_demo oe_screenshot">
<img src="set3.png" style="border:1px solid black"/>
<br/>
</div>
</div>
</section>
<section class="oe_container oe_dark">
<div class="oe_row oe_spaced text-center">
<div class="oe_span12">
<h2 class="oe_slogan">Technical Help & Support</h2>
</div>
<div class="col-md-12 pad0">
<div class="oe_mt16">
<p><h4>
For any type of technical help & support requests, Feel free to contact us</h4></p>
<a style="background: #002e5a none repeat scroll 0% 0%; color: rgb(255, 255, 255);position: relative; overflow: hidden;"
class="btn btn-warning btn-lg" rel="nofollow" href="mailto:guohuadeng@hotmail.com"><span
style="height: 354px; width: 354px; top: -147.433px; left: -6.93335px;" class="o_ripple"></span>
<i class="fa fa-envelope"></i> guohuadeng@hotmail.com</a>
<p><h4>
Via QQ: 300883</h4></p>
<a style="background: #002e5a none repeat scroll 0% 0%; color: rgb(255, 255, 255);position: relative; overflow: hidden;"
class="btn btn-warning btn-lg" rel="nofollow" href="mailto:300883@qq.com"><span
style="height: 354px; width: 354px; top: -147.433px; left: -6.93335px;" class="o_ripple"></span>
<i class="fa fa-envelope"></i> 300883@qq.com</a>
</div>
<div class="oe_mt16">
<p><h4>
Visit our website for more support.</h4></p>
<a style="background: #002e5a none repeat scroll 0% 0%; color: rgb(255, 255, 255);position: relative; overflow: hidden;"
class="btn btn-warning btn-lg" rel="nofollow" href="http://www.sunpop.cn" target="_blank"><span
style="height: 354px; width: 354px; top: -147.433px; left: -6.93335px;" class="o_ripple"></span>
<i class="fa fa-web"></i>http://www.sunpop.cn</a>
</div>
</div>
</div>
</section>

Binary file not shown.

Before

Width:  |  Height:  |  Size: 154 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 80 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 124 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 35 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 36 KiB

View File

@@ -1,4 +0,0 @@
.o_user_menu .dropdown-menu img {
height: 20px;
margin: 2px;
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 25 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 23 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 23 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 23 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 28 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 23 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 34 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 26 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 20 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 31 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 21 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 20 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 17 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 28 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 20 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 17 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 20 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 24 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 45 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 30 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 32 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 21 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 24 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 26 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 46 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 34 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 28 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 22 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 24 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 21 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 17 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 20 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 36 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 17 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 20 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 28 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 19 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 32 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 22 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 25 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 19 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 25 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 17 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 12 KiB

Some files were not shown because too many files have changed in this diff Show More