mirror of
https://github.com/guohuadeng/app-odoo.git
synced 2025-02-23 04:11:36 +02:00
update to 11
This commit is contained in:
@@ -15,8 +15,8 @@
|
|||||||
# http://www.sunpop.cn/odoo10_developer_document_offline/
|
# http://www.sunpop.cn/odoo10_developer_document_offline/
|
||||||
# description:
|
# description:
|
||||||
{
|
{
|
||||||
'name': 'App Odoo Customize(Backend Debranding Title,Language,Documentation,Quick Debug,Delete clear)',
|
'name': 'App Odoo Customize(Backend Debranding Title,Language,Documentation,Quick Debug,Clear Data)',
|
||||||
'version': '10.0.2.4',
|
'version': '11.0.3.3',
|
||||||
'author': 'Sunpop.cn',
|
'author': 'Sunpop.cn',
|
||||||
'category': 'Productivity',
|
'category': 'Productivity',
|
||||||
'website': 'http://www.sunpop.cn',
|
'website': 'http://www.sunpop.cn',
|
||||||
@@ -28,6 +28,7 @@
|
|||||||
App Odoo Customize(Debranding Title,Language,Documentation,Quick Debug)
|
App Odoo Customize(Debranding Title,Language,Documentation,Quick Debug)
|
||||||
============
|
============
|
||||||
White label odoo.
|
White label odoo.
|
||||||
|
Support Odoo 11, 10, 9.
|
||||||
You can config odoo, make it look like your own platform.
|
You can config odoo, make it look like your own platform.
|
||||||
1. Deletes Odoo label in footer
|
1. Deletes Odoo label in footer
|
||||||
2. Replaces "Odoo" in Windows title
|
2. Replaces "Odoo" in Windows title
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
# -*- coding: utf-8 -*-
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
import ir_ui_view
|
|
||||||
import app_theme_config_settings
|
import app_theme_config_settings
|
||||||
|
import ir_ui_view
|
||||||
import base_language_install
|
import base_language_install
|
||||||
import mail_thread
|
import mail_thread
|
||||||
|
|||||||
@@ -33,7 +33,7 @@ class AppThemeConfigSettings(models.TransientModel):
|
|||||||
app_account_url = fields.Char('My Odoo.com Account Url')
|
app_account_url = fields.Char('My Odoo.com Account Url')
|
||||||
|
|
||||||
@api.model
|
@api.model
|
||||||
def get_default_all(self, fields):
|
def get_values(self):
|
||||||
ir_config = self.env['ir.config_parameter']
|
ir_config = self.env['ir.config_parameter']
|
||||||
app_system_name = ir_config.get_param('app_system_name', default='odooApp')
|
app_system_name = ir_config.get_param('app_system_name', default='odooApp')
|
||||||
|
|
||||||
@@ -76,7 +76,7 @@ class AppThemeConfigSettings(models.TransientModel):
|
|||||||
)
|
)
|
||||||
|
|
||||||
@api.multi
|
@api.multi
|
||||||
def set_default_all(self):
|
def set_values(self):
|
||||||
self.ensure_one()
|
self.ensure_one()
|
||||||
ir_config = self.env['ir.config_parameter']
|
ir_config = self.env['ir.config_parameter']
|
||||||
ir_config.set_param("app_system_name", self.app_system_name or "")
|
ir_config.set_param("app_system_name", self.app_system_name or "")
|
||||||
|
|||||||
@@ -1,6 +1,7 @@
|
|||||||
##App Odoo Customize(Debranding Title,Language,Documentation,Quick Debug,Quick Data Clear)
|
##App Odoo Customize(Debranding Title,Language,Documentation,Quick Debug,Quick Data Clear)
|
||||||
============
|
============
|
||||||
White label odoo.
|
White label odoo.
|
||||||
|
Support Odoo 11, 10, 9.
|
||||||
You can config odoo, make it look like your own platform.
|
You can config odoo, make it look like your own platform.
|
||||||
1. Deletes Odoo label in footer
|
1. Deletes Odoo label in footer
|
||||||
2. Replaces "Odoo" in Windows title
|
2. Replaces "Odoo" in Windows title
|
||||||
|
|||||||
@@ -9,7 +9,8 @@
|
|||||||
<a class="btn btn-primary mb16" href="https://www.odoo.com/apps/modules/10.0/app_ui_enhance/">App UI enhance</a>
|
<a class="btn btn-primary mb16" href="https://www.odoo.com/apps/modules/10.0/app_ui_enhance/">App UI enhance</a>
|
||||||
</h1>
|
</h1>
|
||||||
<br>
|
<br>
|
||||||
<h3>Lastest update: v10.0.2.4, 2018-02-04</h3>
|
<h3>Lastest update: v11.0.3.3, 2018-03-03</h3>
|
||||||
|
<h3>Add Odoo 11 Support</h3>
|
||||||
<ul>
|
<ul>
|
||||||
<li>1. Deletes Odoo label in footer</li>
|
<li>1. Deletes Odoo label in footer</li>
|
||||||
<li>2. Replaces "Odoo" in Windows title</li>
|
<li>2. Replaces "Odoo" in Windows title</li>
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
odoo.define('app_system_name', function (require) {
|
odoo.define('app_odoo_customize.app_system_name', function (require) {
|
||||||
"use strict";
|
"use strict";
|
||||||
|
|
||||||
var WebClient = require('web.WebClient');
|
var WebClient = require('web.WebClient');
|
||||||
|
|||||||
@@ -1,117 +1,165 @@
|
|||||||
odoo.define('app_odoo_customize.customize_user_menu', function (require) {
|
odoo.define('app_odoo_customize.UserMenu', function (require) {
|
||||||
"use strict";
|
"use strict";
|
||||||
var Model = require('web.Model');
|
|
||||||
var session = require('web.session');
|
/**
|
||||||
|
* This widget is appended by the webclient to the right of the navbar.
|
||||||
|
* It displays the avatar and the name of the logged user (and optionally the
|
||||||
|
* db name, in debug mode).
|
||||||
|
* If clicked, it opens a dropdown allowing the user to perform actions like
|
||||||
|
* editing its preferences, accessing the documentation, logging out...
|
||||||
|
*/
|
||||||
|
|
||||||
var UserMenu = require('web.UserMenu');
|
var UserMenu = require('web.UserMenu');
|
||||||
var documentation_url;
|
//避免错误,要再定义
|
||||||
|
var session2 = require('web.session');
|
||||||
|
var documentation_url = 'http://www.sina.com.cn';
|
||||||
var documentation_dev_url;
|
var documentation_dev_url;
|
||||||
var support_url;
|
var support_url;
|
||||||
var account_title;
|
var account_title;
|
||||||
var account_url;
|
var account_url;
|
||||||
UserMenu.include({
|
|
||||||
on_menu_debug: function () {
|
|
||||||
window.location = $.param.querystring(window.location.href, 'debug');
|
|
||||||
},
|
|
||||||
on_menu_debugassets: function () {
|
|
||||||
window.location = $.param.querystring(window.location.href, 'debug=assets');
|
|
||||||
},
|
|
||||||
on_menu_quitdebug: function () {
|
|
||||||
window.location.search = "?";
|
|
||||||
},
|
|
||||||
on_menu_documentation: function () {
|
|
||||||
window.open(documentation_url, '_blank');
|
|
||||||
},
|
|
||||||
on_menu_documentation_dev: function () {
|
|
||||||
window.open(documentation_dev_url, '_blank');
|
|
||||||
},
|
|
||||||
on_menu_support: function () {
|
|
||||||
window.open(support_url, '_blank');
|
|
||||||
},
|
|
||||||
on_menu_account: function () {
|
|
||||||
window.open(account_url, '_blank');
|
|
||||||
},
|
|
||||||
});
|
|
||||||
|
|
||||||
$(document).ready(function () {
|
UserMenu.include({
|
||||||
var self = this;
|
init: function () {
|
||||||
documentation_url = 'http://www.sunpop.cn/documentation/user/10.0/zh_CN/index.html';
|
this._super.apply(this, arguments);
|
||||||
documentation_dev_url = 'http://www.sunpop.cn/documentation/10.0/index.html';
|
var self = this
|
||||||
support_url = 'http://www.sunpop.cn/trial';
|
var session = this.getSession();
|
||||||
account_title = 'My Online Account';
|
var lang_list = '';
|
||||||
account_url = 'http://www.sunpop.cn/my-account';
|
|
||||||
setTimeout(function () {
|
self._rpc({
|
||||||
new Model('ir.config_parameter').call('search_read', [[['key', '=', 'app_show_debug']], ['value']]).then(function (show) {
|
model: 'res.lang',
|
||||||
if (show.length >= 1 && (show[0]['value'] == "False")) {
|
method: 'search_read',
|
||||||
|
domain: [],
|
||||||
|
fields: ['name', 'code'],
|
||||||
|
lazy: false,
|
||||||
|
}).then(function (res) {
|
||||||
|
_.each(res, function (lang) {
|
||||||
|
var a = '';
|
||||||
|
if (lang['code'] === session.user_context.lang) {
|
||||||
|
a = '<i class="fa fa-check"></i>';
|
||||||
|
} else {
|
||||||
|
a = '';
|
||||||
|
}
|
||||||
|
lang_list += '<li><a href="#" data-lang-menu="lang" data-lang-id="' + lang['code'] + '"><img class="flag" src="app_odoo_customize/static/src/img/flags/' + lang['code'] + '.png"/>' + lang['name'] + a + '</a></li>';
|
||||||
|
});
|
||||||
|
lang_list += '<li class="divider"></li>';
|
||||||
|
$('switch-lang').replaceWith(lang_list);
|
||||||
|
})
|
||||||
|
|
||||||
|
//取参数
|
||||||
|
self._rpc({
|
||||||
|
model: 'ir.config_parameter',
|
||||||
|
method: 'search_read',
|
||||||
|
domain: [['key', '=like', 'app_%']],
|
||||||
|
fields: ['key', 'value'],
|
||||||
|
lazy: false,
|
||||||
|
}).then(function (res) {
|
||||||
|
$.each(res, function (key, val) {
|
||||||
|
if (val.key == 'app_documentation_url')
|
||||||
|
documentation_url = val.value;
|
||||||
|
if (val.key == 'app_documentation_dev_url')
|
||||||
|
documentation_dev_url = val.value;
|
||||||
|
if (val.key == 'app_support_url')
|
||||||
|
support_url = val.value;
|
||||||
|
if (val.key == 'app_account_title')
|
||||||
|
account_title = val.value;
|
||||||
|
if (val.key == 'app_account_url')
|
||||||
|
account_url = val.value;
|
||||||
|
// 控制显示
|
||||||
|
if (val.key == 'app_show_lang' && val.value == "False") {
|
||||||
|
$('switch-lang').hide();
|
||||||
|
}
|
||||||
|
if (val.key == 'app_show_debug' && val.value == "False") {
|
||||||
$('[data-menu="debug"]').parent().hide();
|
$('[data-menu="debug"]').parent().hide();
|
||||||
$('[data-menu="debugassets"]').parent().hide();
|
$('[data-menu="debugassets"]').parent().hide();
|
||||||
$('[data-menu="quitdebug"]').parent().hide();
|
$('[data-menu="quitdebug"]').parent().hide();
|
||||||
}
|
}
|
||||||
});
|
if (val.key == 'app_show_documentation' && val.value == "False") {
|
||||||
new Model('ir.config_parameter').call('search_read', [[['key', '=', 'app_show_documentation']], ['value']]).then(function (show) {
|
|
||||||
if (show.length >= 1 && (show[0]['value'] == "False"))
|
|
||||||
$('[data-menu="documentation"]').parent().hide();
|
$('[data-menu="documentation"]').parent().hide();
|
||||||
else {
|
|
||||||
new Model('ir.config_parameter').call('search_read', [[['key', '=', 'app_documentation_url']], ['value']]).then(function (res) {
|
|
||||||
if (res.length >= 1) {
|
|
||||||
_.each(res, function (item) {
|
|
||||||
documentation_url = item['value'];
|
|
||||||
});
|
|
||||||
}
|
}
|
||||||
});
|
if (val.key == 'app_show_documentation_dev' && val.value == "False") {
|
||||||
}
|
|
||||||
});
|
|
||||||
new Model('ir.config_parameter').call('search_read', [[['key', '=', 'app_show_documentation_dev']], ['value']]).then(function (show) {
|
|
||||||
if (show.length >= 1 && (show[0]['value'] == "False"))
|
|
||||||
$('[data-menu="documentation_dev"]').parent().hide();
|
$('[data-menu="documentation_dev"]').parent().hide();
|
||||||
else {
|
|
||||||
new Model('ir.config_parameter').call('search_read', [[['key', '=', 'app_documentation_dev_url']], ['value']]).then(function (res) {
|
|
||||||
if (res.length >= 1) {
|
|
||||||
_.each(res, function (item) {
|
|
||||||
documentation_dev_url = item['value'];
|
|
||||||
});
|
|
||||||
}
|
}
|
||||||
});
|
if (val.key == 'app_show_support' && val.value == "False") {
|
||||||
}
|
|
||||||
});
|
|
||||||
new Model('ir.config_parameter').call('search_read', [[['key', '=', 'app_show_support']], ['value']]).then(function (show) {
|
|
||||||
if (show.length >= 1 && (show[0]['value'] == "False"))
|
|
||||||
$('[data-menu="support"]').parent().hide();
|
$('[data-menu="support"]').parent().hide();
|
||||||
else {
|
|
||||||
new Model('ir.config_parameter').call('search_read', [[['key', '=', 'app_support_url']], ['value']]).then(function (res) {
|
|
||||||
if (res.length >= 1) {
|
|
||||||
_.each(res, function (item) {
|
|
||||||
support_url = item['value'];
|
|
||||||
});
|
|
||||||
}
|
}
|
||||||
});
|
if (val.key == 'app_show_account' && val.value == "False") {
|
||||||
}
|
|
||||||
});
|
|
||||||
new Model('ir.config_parameter').call('search_read', [[['key', '=', 'app_show_account']], ['value']]).then(function (show) {
|
|
||||||
if (show.length >= 1 && (show[0]['value'] == "False"))
|
|
||||||
$('[data-menu="account"]').parent().hide();
|
$('[data-menu="account"]').parent().hide();
|
||||||
else {
|
|
||||||
new Model('ir.config_parameter').call('search_read', [[['key', '=', 'app_account_title']], ['value']]).then(function (res) {
|
|
||||||
if (res.length >= 1) {
|
|
||||||
_.each(res, function (item) {
|
|
||||||
account_title = item['value'];
|
|
||||||
});
|
|
||||||
}
|
}
|
||||||
|
if (val.key == 'app_account_title' && val.value) {
|
||||||
$('[data-menu="account"]').html(account_title);
|
$('[data-menu="account"]').html(account_title);
|
||||||
});
|
|
||||||
}
|
}
|
||||||
});
|
if (val.key == 'app_show_poweredby' && val.value == "False") {
|
||||||
new Model('ir.config_parameter').call('search_read', [[['key', '=', 'app_account_url']], ['value']]).then(function (res) {
|
|
||||||
if (res.length >= 1) {
|
|
||||||
_.each(res, function (item) {
|
|
||||||
account_url = item['value'];
|
|
||||||
});
|
|
||||||
}
|
|
||||||
});
|
|
||||||
new Model('ir.config_parameter').call('search_read', [[['key', '=', 'app_show_poweredby']], ['value']]).then(function (show) {
|
|
||||||
if (show.length >= 1 && (show[0]['value'] == "False"))
|
|
||||||
$('.o_sub_menu_footer').hide();
|
$('.o_sub_menu_footer').hide();
|
||||||
});
|
}
|
||||||
}, 2500);
|
|
||||||
});
|
});
|
||||||
})
|
})
|
||||||
|
},
|
||||||
|
/**
|
||||||
|
* @override
|
||||||
|
* 由于odoo11 没传ev到事件,所以要重载
|
||||||
|
*/
|
||||||
|
start: function () {
|
||||||
|
var self = this;
|
||||||
|
return this._super.apply(this, arguments).then(function () {
|
||||||
|
//语言切换特殊处理
|
||||||
|
self.$el.on('click', 'li a[data-lang-menu]', function (ev) {
|
||||||
|
ev.preventDefault();
|
||||||
|
var f = self['_onMenuLang']
|
||||||
|
f.call(self, $(this));
|
||||||
|
});
|
||||||
|
//控制debug显示
|
||||||
|
var mMode = 'normal';
|
||||||
|
if (window.location.href.indexOf('debug') != -1)
|
||||||
|
mMode = 'debug';
|
||||||
|
if (window.location.href.indexOf('debug=assets') != -1)
|
||||||
|
mMode = 'assets';
|
||||||
|
if (mMode == 'normal')
|
||||||
|
$('[data-menu="quitdebug"]').parent().hide();
|
||||||
|
if (mMode == 'debug')
|
||||||
|
$('[data-menu="debug"]').parent().hide();
|
||||||
|
if (mMode == 'assets')
|
||||||
|
$('[data-menu="debugassets"]').parent().hide();
|
||||||
|
});
|
||||||
|
},
|
||||||
|
_onMenuAccount: function () {
|
||||||
|
window.open(account_url, '_blank');
|
||||||
|
},
|
||||||
|
_onMenuDocumentation: function () {
|
||||||
|
window.open(documentation_url, '_blank');
|
||||||
|
},
|
||||||
|
_onMenuSupport: function () {
|
||||||
|
window.open(support_url, '_blank');
|
||||||
|
},
|
||||||
|
//增加的方法
|
||||||
|
_onMenuDebug: function () {
|
||||||
|
window.location = $.param.querystring(window.location.href, 'debug');
|
||||||
|
},
|
||||||
|
_onMenuDebugassets: function () {
|
||||||
|
window.location = $.param.querystring(window.location.href, 'debug=assets');
|
||||||
|
},
|
||||||
|
_onMenuQuitdebug: function () {
|
||||||
|
window.location.search = "?";
|
||||||
|
},
|
||||||
|
_onMenuDocumentation_dev: function () {
|
||||||
|
window.open(documentation_dev_url, '_blank');
|
||||||
|
},
|
||||||
|
_onMenuLang: function (ev) {
|
||||||
|
var self = this;
|
||||||
|
var lang = ($(ev).data("lang-id"));
|
||||||
|
var session = this.getSession();
|
||||||
|
return this._rpc({
|
||||||
|
model: 'res.users',
|
||||||
|
method: 'write',
|
||||||
|
args: [session.uid, {'lang': lang}],
|
||||||
|
}).then(function (result) {
|
||||||
|
self.do_action({
|
||||||
|
type: 'ir.actions.client',
|
||||||
|
res_model: 'res.users',
|
||||||
|
tag: 'reload_context',
|
||||||
|
target: 'current',
|
||||||
|
});
|
||||||
|
});
|
||||||
|
},
|
||||||
|
})
|
||||||
|
|
||||||
|
});
|
||||||
|
|||||||
@@ -1,49 +0,0 @@
|
|||||||
odoo.define('app_odoo_customize.switch_language', function (require) {
|
|
||||||
"use strict";
|
|
||||||
|
|
||||||
var Model = require('web.Model');
|
|
||||||
var session = require('web.session');
|
|
||||||
var UserMenu = require('web.UserMenu');
|
|
||||||
|
|
||||||
UserMenu.include({
|
|
||||||
on_menu_lang: function (ev) {
|
|
||||||
var self = this;
|
|
||||||
var lang = ($(ev).data("lang-id"));
|
|
||||||
new Model('res.users').call('write', [[session.uid], {'lang': lang}]).then(function () {
|
|
||||||
self.do_action({
|
|
||||||
type: 'ir.actions.client',
|
|
||||||
res_model: 'res.users',
|
|
||||||
tag: 'reload_context',
|
|
||||||
target: 'current'
|
|
||||||
});
|
|
||||||
});
|
|
||||||
return false;
|
|
||||||
},
|
|
||||||
});
|
|
||||||
//
|
|
||||||
$(document).ready(function () {
|
|
||||||
var self = this;
|
|
||||||
var lang_list = '';
|
|
||||||
setTimeout(function () {
|
|
||||||
new Model('ir.config_parameter').call('search_read', [[['key', '=', 'app_show_lang']], ['value']]).then(function (show) {
|
|
||||||
if (show.length >= 1 && (show[0]['value'] == "False"))
|
|
||||||
$('switch-lang').hide();
|
|
||||||
else {
|
|
||||||
new Model('res.lang').call('search_read', [[], ['name', 'code']]).then(function (res) {
|
|
||||||
_.each(res, function (lang) {
|
|
||||||
var a = '';
|
|
||||||
if (lang['code'] === session.user_context.lang) {
|
|
||||||
a = '<i class="fa fa-check"></i>';
|
|
||||||
} else {
|
|
||||||
a = '';
|
|
||||||
}
|
|
||||||
lang_list += '<li><a href="#" data-menu="lang" data-lang-id="' + lang['code'] + '"><img class="flag" src="app_odoo_customize/static/src/img/flags/' + lang['code'] + '.png"/>' + lang['name'] + a + '</a></li>';
|
|
||||||
});
|
|
||||||
lang_list += '<li class="divider"></li>';
|
|
||||||
$('switch-lang').replaceWith(lang_list);
|
|
||||||
});
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}, 2500);
|
|
||||||
});
|
|
||||||
});
|
|
||||||
@@ -3,13 +3,13 @@
|
|||||||
<t t-extend="UserMenu">
|
<t t-extend="UserMenu">
|
||||||
<t t-jquery=".dropdown-menu" t-operation="prepend">
|
<t t-jquery=".dropdown-menu" t-operation="prepend">
|
||||||
<switch-lang/>
|
<switch-lang/>
|
||||||
<li t-if="widget.session.debug != true">
|
<li>
|
||||||
<a href="#" data-menu="debug">Activate the developer mode</a>
|
<a href="#" data-menu="debug">Activate the developer mode</a>
|
||||||
</li>
|
</li>
|
||||||
<li t-if="widget.session.debug != 'assets'">
|
<li>
|
||||||
<a href="#" data-menu="debugassets">Activate the developer mode (with assets)</a>
|
<a href="#" data-menu="debugassets">Activate the developer mode (with assets)</a>
|
||||||
</li>
|
</li>
|
||||||
<li t-if="widget.session.debug != false">
|
<li>
|
||||||
<a href="#" data-menu="quitdebug">Deactivate the developer mode</a>
|
<a href="#" data-menu="quitdebug">Deactivate the developer mode</a>
|
||||||
</li>
|
</li>
|
||||||
<li>
|
<li>
|
||||||
|
|||||||
@@ -4,9 +4,8 @@
|
|||||||
<template id="switch_language" name="switch_language assets" inherit_id="web.assets_backend">
|
<template id="switch_language" name="switch_language assets" inherit_id="web.assets_backend">
|
||||||
<xpath expr="." position="inside">
|
<xpath expr="." position="inside">
|
||||||
<link rel="stylesheet" href="/app_odoo_customize/static/src/css/app.css"/>
|
<link rel="stylesheet" href="/app_odoo_customize/static/src/css/app.css"/>
|
||||||
<script type="text/javascript" src="/app_odoo_customize/static/src/js/switch_language.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/app_window_title.js"/>
|
<script type="text/javascript" src="/app_odoo_customize/static/src/js/app_window_title.js"/>
|
||||||
|
<script type="text/javascript" src="/app_odoo_customize/static/src/js/customize_user_menu.js"></script>
|
||||||
</xpath>
|
</xpath>
|
||||||
</template>
|
</template>
|
||||||
<!-- some odoo version not support, please remove this if you are using odoo9 -->
|
<!-- some odoo version not support, please remove this if you are using odoo9 -->
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<openerp>
|
<odoo>
|
||||||
<data>
|
<data>
|
||||||
<record id="view_app_theme_config_settings" model="ir.ui.view">
|
<record id="view_app_theme_config_settings" model="ir.ui.view">
|
||||||
<field name="name">App Odoo Customize Settings</field>
|
<field name="name">App Odoo Customize Settings</field>
|
||||||
@@ -60,7 +60,7 @@
|
|||||||
<field name="app_show_poweredby"/>
|
<field name="app_show_poweredby"/>
|
||||||
<label for="app_show_poweredby"/>
|
<label for="app_show_poweredby"/>
|
||||||
</div>
|
</div>
|
||||||
<div>
|
<div invisible="1">
|
||||||
<field name="app_stop_subscribe"/>
|
<field name="app_stop_subscribe"/>
|
||||||
<label for="app_stop_subscribe"/>
|
<label for="app_stop_subscribe"/>
|
||||||
</div>
|
</div>
|
||||||
@@ -161,4 +161,4 @@
|
|||||||
action="action_app_theme_config"
|
action="action_app_theme_config"
|
||||||
groups="base.group_system"/>
|
groups="base.group_system"/>
|
||||||
</data>
|
</data>
|
||||||
</openerp>
|
</odoo>
|
||||||
|
|||||||
Reference in New Issue
Block a user