mirror of
https://github.com/guohuadeng/app-odoo.git
synced 2025-02-23 04:11:36 +02:00
update common
This commit is contained in:
@@ -23,7 +23,7 @@
|
||||
|
||||
{
|
||||
'name': 'Customize odoo OEM (Boost, My Odoo)',
|
||||
'version': '13.20.05.10',
|
||||
'version': '13.20.07.13',
|
||||
'author': 'Sunpop.cn',
|
||||
'category': 'Productivity',
|
||||
'website': 'https://www.sunpop.cn',
|
||||
@@ -73,6 +73,7 @@
|
||||
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.
|
||||
|
||||
This module can help to white label the Odoo.
|
||||
Also helpful for training and support for your odoo end-user.
|
||||
@@ -112,6 +113,7 @@
|
||||
30. 一键导出翻译文件 po
|
||||
31. 显示或去除 odoo 推荐
|
||||
32. 增加修复品类及区位名的操作
|
||||
33. 增加 Demo 的显示设置
|
||||
""",
|
||||
'images': ['static/description/banner.gif'],
|
||||
'depends': [
|
||||
|
||||
@@ -62,5 +62,20 @@
|
||||
<field name="key">app_account_url</field>
|
||||
<field name="value">https://www.sunpop.cn/my-account</field>
|
||||
</record>
|
||||
<!--测试环境,from oca/web-->
|
||||
<record id="app_ribbon_name" model="ir.config_parameter">
|
||||
<field name="key">app_ribbon_name</field>
|
||||
<field name="value"><![CDATA[Sunpop Test<br/>({db_name})]]></field>
|
||||
</record>
|
||||
<!-- Add ribbon color configuration parameter -->
|
||||
<record id="app_ribbon_color" model="ir.config_parameter">
|
||||
<field name="key">app_ribbon_color</field>
|
||||
<field name="value">#f0f0f0</field>
|
||||
</record>
|
||||
<!-- Add ribbon background color configuration parameter -->
|
||||
<record id="app_ribbon_background_color" model="ir.config_parameter">
|
||||
<field name="key">app_ribbon_background_color</field>
|
||||
<field name="value">rgba(255,0,0,.4)</field>
|
||||
</record>
|
||||
</data>
|
||||
</openerp>
|
||||
@@ -4,10 +4,10 @@
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: Odoo Server 13.0+e\n"
|
||||
"Project-Id-Version: Odoo Server 13.0+e-20200628\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2020-05-10 15:54+0000\n"
|
||||
"PO-Revision-Date: 2020-05-10 15:54+0000\n"
|
||||
"POT-Creation-Date: 2020-07-13 08:56+0000\n"
|
||||
"PO-Revision-Date: 2020-07-13 08:56+0000\n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: \n"
|
||||
"MIME-Version: 1.0\n"
|
||||
@@ -228,6 +228,11 @@ msgstr "开发者手册链接"
|
||||
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"
|
||||
@@ -239,11 +244,21 @@ msgstr "用户手册链接"
|
||||
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"
|
||||
@@ -296,6 +311,11 @@ msgstr "设定系统名称,代替原 Odoo 字样"
|
||||
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"
|
||||
@@ -420,13 +440,18 @@ msgstr "菜单项具体操作设置"
|
||||
#. module: app_odoo_customize
|
||||
#: model:ir.model,name:app_odoo_customize.model_ir_ui_view
|
||||
msgid "View"
|
||||
msgstr "视图"
|
||||
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"
|
||||
|
||||
@@ -4,4 +4,5 @@ from . import res_config_settings
|
||||
from . import ir_ui_view
|
||||
from . import base_language_install
|
||||
from . import ir_module_module
|
||||
from . import web_environment_ribbon_backend
|
||||
# from . import ir_ui_menu
|
||||
|
||||
@@ -32,6 +32,7 @@ class ResConfigSettings(models.TransientModel):
|
||||
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):
|
||||
@@ -57,6 +58,7 @@ class ResConfigSettings(models.TransientModel):
|
||||
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,
|
||||
@@ -74,7 +76,8 @@ class ResConfigSettings(models.TransientModel):
|
||||
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_enterprise_url=app_enterprise_url,
|
||||
app_ribbon_name=app_ribbon_name
|
||||
)
|
||||
return res
|
||||
|
||||
@@ -100,6 +103,7 @@ class ResConfigSettings(models.TransientModel):
|
||||
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%')
|
||||
|
||||
36
app_odoo_customize/models/web_environment_ribbon_backend.py
Normal file
36
app_odoo_customize/models/web_environment_ribbon_backend.py
Normal file
@@ -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"
|
||||
),
|
||||
}
|
||||
63
app_odoo_customize/static/src/js/ribbon.js
Normal file
63
app_odoo_customize/static/src/js/ribbon.js
Normal file
@@ -0,0 +1,63 @@
|
||||
/* Copyright 2015 Sylvain Calador <sylvain.calador@akretion.com>
|
||||
Copyright 2015 Javi Melendez <javi.melendez@algios.com>
|
||||
Copyright 2016 Antonio Espinosa <antonio.espinosa@tecnativa.com>
|
||||
Copyright 2017 Thomas Binsfeld <thomas.binsfeld@acsone.eu>
|
||||
Copyright 2017 Xavier Jiménez <xavier.jimenez@qubiq.es>
|
||||
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 = $('<div class="test-ribbon hidden"/>');
|
||||
$("body").append(ribbon);
|
||||
ribbon.hide();
|
||||
// Get ribbon data from backend
|
||||
rpc.query({
|
||||
model: "web.environment.ribbon.backend",
|
||||
method: "get_environment_ribbon",
|
||||
}).then(function(ribbon_data) {
|
||||
// Ribbon name
|
||||
if (ribbon_data.name && ribbon_data.name !== "False") {
|
||||
ribbon.html(ribbon_data.name);
|
||||
ribbon.show();
|
||||
}
|
||||
// Ribbon color
|
||||
if (ribbon_data.color && validStrColour(ribbon_data.color)) {
|
||||
ribbon.css("color", ribbon_data.color);
|
||||
}
|
||||
// Ribbon background color
|
||||
if (
|
||||
ribbon_data.background_color &&
|
||||
validStrColour(ribbon_data.background_color)
|
||||
) {
|
||||
ribbon.css("background-color", ribbon_data.background_color);
|
||||
}
|
||||
});
|
||||
});
|
||||
});
|
||||
28
app_odoo_customize/static/src/scss/ribbon.scss
Normal file
28
app_odoo_customize/static/src/scss/ribbon.scss
Normal file
@@ -0,0 +1,28 @@
|
||||
/* Copyright 2015 Francesco OpenCode Apruzzese <cescoap@gmail.com>
|
||||
Copyright 2017 Thomas Binsfeld <thomas.binsfeld@acsone.eu>
|
||||
* License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). */
|
||||
|
||||
.test-ribbon {
|
||||
width: 300px;
|
||||
top: 25px;
|
||||
left: -100px;
|
||||
text-align: center;
|
||||
padding: 10px;
|
||||
line-height: 20px;
|
||||
letter-spacing: 1px;
|
||||
color: #f0f0f0;
|
||||
-webkit-transform: rotate(-45deg);
|
||||
-ms-transform: rotate(-45deg);
|
||||
-moz-transform: rotate(-45deg);
|
||||
-o-transform: rotate(-45deg);
|
||||
transform: rotate(-45deg);
|
||||
z-index: 9999;
|
||||
position: fixed;
|
||||
box-shadow: 0 0 3px rgba(0, 0, 0, 0.3);
|
||||
background: rgba(255, 0, 0, 0.6);
|
||||
pointer-events: none;
|
||||
}
|
||||
|
||||
.test-ribbon b {
|
||||
font-size: 20px;
|
||||
}
|
||||
@@ -1,13 +1,17 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<odoo>
|
||||
|
||||
<template id="assets_backend" name="app_odoo_customize assets" inherit_id="web.assets_backend">
|
||||
<xpath expr="." position="inside">
|
||||
<xpath expr="//link[last()]" position="after">
|
||||
<link rel="stylesheet" type="text/scss" href="/app_odoo_customize/static/src/scss/app.scss"/>
|
||||
<link rel="stylesheet" type="text/scss" href="/app_odoo_customize/static/src/scss/ribbon.scss"/>
|
||||
</xpath>
|
||||
<xpath expr="script[last()]" position="after">
|
||||
<script type="text/javascript" src="/app_odoo_customize/static/src/js/app_window_title.js"></script>
|
||||
<script type="text/javascript" src="/app_odoo_customize/static/src/js/customize_user_menu.js"></script>
|
||||
<script type="text/javascript" src="/app_odoo_customize/static/src/js/ribbon.js"></script>
|
||||
</xpath>
|
||||
</template>
|
||||
|
||||
<!-- some odoo version not support, please remove this if you are using odoo9 -->
|
||||
<template id="replace_login" name="Login Layout" inherit_id="web.login_layout">
|
||||
<xpath expr="//a[@target='_blank']" position="replace">
|
||||
|
||||
@@ -94,6 +94,10 @@
|
||||
<div>
|
||||
<field name="app_account_url"/>
|
||||
</div>
|
||||
<label for="app_ribbon_name"/>
|
||||
<div>
|
||||
<field name="app_ribbon_name"/>
|
||||
</div>
|
||||
<label for="app_enterprise_url"/>
|
||||
<div>
|
||||
<field name="app_enterprise_url" class="oe_inline"/>
|
||||
|
||||
Reference in New Issue
Block a user