diff --git a/addons/account/__openerp__.py b/addons/account/__openerp__.py
index 477655ac2b6..f3699bff585 100644
--- a/addons/account/__openerp__.py
+++ b/addons/account/__openerp__.py
@@ -38,7 +38,6 @@ You could use this simplified accounting in case you work with an (external) acc
'views/partner_view.xml',
'views/product_view.xml',
'views/account_analytic_view.xml',
- 'views/company_view.xml',
'views/res_config_view.xml',
'views/account_tip_data.xml',
'views/account.xml',
diff --git a/addons/account/models/res_config.py b/addons/account/models/res_config.py
index 76de3db1d25..be03ef03a0f 100644
--- a/addons/account/models/res_config.py
+++ b/addons/account/models/res_config.py
@@ -40,13 +40,13 @@ class AccountConfigSettings(models.TransientModel):
has_chart_of_accounts = fields.Boolean(string='Company has a chart of accounts')
chart_template_id = fields.Many2one('account.chart.template', string='Template',
domain="[('visible','=', True)]")
- use_anglo_saxon = fields.Boolean(string='Use Anglo-Saxon Accounting', related='company_id.anglo_saxon_accounting')
- code_digits = fields.Integer(string='# of Digits', related='company_id.accounts_code_digits', help="No. of digits to use for account code")
+ use_anglo_saxon = fields.Boolean(string='Use Anglo-Saxon Accounting *', related='company_id.anglo_saxon_accounting')
+ code_digits = fields.Integer(string='# of Digits *', related='company_id.accounts_code_digits', help="No. of digits to use for account code")
tax_calculation_rounding_method = fields.Selection(
[
('round_per_line', 'Round calculation of taxes per line'),
('round_globally', 'Round globally calculation of taxes '),
- ], related='company_id.tax_calculation_rounding_method', string='Tax calculation rounding method',
+ ], related='company_id.tax_calculation_rounding_method', string='Tax calculation rounding method *',
help="""If you select 'Round per line' : for each tax, the tax amount will first be
computed and rounded for each PO/SO/invoice line and then these rounded amounts will be summed,
leading to the total amount for that tax. If you select 'Round globally': for each tax,
@@ -58,8 +58,8 @@ class AccountConfigSettings(models.TransientModel):
purchase_tax_id = fields.Many2one('account.tax.template', string='Default purchase tax', oldname="purchase_tax")
sale_tax_rate = fields.Float(string='Sales tax (%)')
purchase_tax_rate = fields.Float(string='Purchase tax (%)')
- bank_account_code_prefix = fields.Char(string='Bank Accounts Prefix', related='company_id.bank_account_code_prefix', help='Define the code prefix for the bank accounts', oldname='bank_account_code_char')
- cash_account_code_prefix = fields.Char(string='Cash Accounts Prefix', related='company_id.cash_account_code_prefix', help='Define the code prefix for the cash accounts')
+ bank_account_code_prefix = fields.Char(string='Bank Accounts Prefix *', related='company_id.bank_account_code_prefix', help='Define the code prefix for the bank accounts', oldname='bank_account_code_char')
+ cash_account_code_prefix = fields.Char(string='Cash Accounts Prefix *', related='company_id.cash_account_code_prefix', help='Define the code prefix for the cash accounts')
template_transfer_account_id = fields.Many2one('account.account.template', help="Intermediary account used when moving money from a liquidity account to another")
transfer_account_id = fields.Many2one('account.account',
related='company_id.transfer_account_id',
@@ -143,6 +143,7 @@ class AccountConfigSettings(models.TransientModel):
module_account_bank_statement_import_csv = fields.Boolean("Import in .csv format",
help='Get your bank statements from your bank and import them in Odoo in the .CSV format.\n'
'-This installs the module account_bank_statement_import_csv.')
+ overdue_msg = fields.Text(related='company_id.overdue_msg', string='Overdue Payments Message *')
@api.model
diff --git a/addons/account/views/company_view.xml b/addons/account/views/company_view.xml
deleted file mode 100644
index a3bd3fac5fc..00000000000
--- a/addons/account/views/company_view.xml
+++ /dev/null
@@ -1,26 +0,0 @@
-
-
-
-
- res.company.form.inherit
-
- res.company
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/addons/account/views/res_config_view.xml b/addons/account/views/res_config_view.xml
index ba595c74aa8..5840947cf1f 100644
--- a/addons/account/views/res_config_view.xml
+++ b/addons/account/views/res_config_view.xml
@@ -98,7 +98,7 @@
-
+
@@ -258,6 +258,19 @@
+
+
+
+
+
+
+
+
+
+
+
+ (*) This configuration value is related to the company you're logged in.
+
diff --git a/addons/auth_ldap/__openerp__.py b/addons/auth_ldap/__openerp__.py
index 494521fb7dc..39f37e79573 100644
--- a/addons/auth_ldap/__openerp__.py
+++ b/addons/auth_ldap/__openerp__.py
@@ -2,13 +2,13 @@
{
'name' : 'Authentication via LDAP',
- 'depends' : ['base'],
+ 'depends' : ['base', 'base_setup'],
#'description': < auto-loaded from README file
'category' : 'Extra Tools',
'data' : [
- 'views/res_company_views.xml',
'views/ldap_installer_views.xml',
'security/ir.model.access.csv',
+ 'views/auth_ldap_config_settings_views.xml',
],
'external_dependencies' : {
'python' : ['ldap'],
diff --git a/addons/auth_ldap/models/__init__.py b/addons/auth_ldap/models/__init__.py
index ddc234b54b1..5ee6a1b93fb 100644
--- a/addons/auth_ldap/models/__init__.py
+++ b/addons/auth_ldap/models/__init__.py
@@ -3,3 +3,4 @@
import res_company
import res_company_ldap
import res_users
+import auth_ldap_config_settings
\ No newline at end of file
diff --git a/addons/auth_ldap/models/auth_ldap_config_settings.py b/addons/auth_ldap/models/auth_ldap_config_settings.py
new file mode 100644
index 00000000000..2d29bca1f08
--- /dev/null
+++ b/addons/auth_ldap/models/auth_ldap_config_settings.py
@@ -0,0 +1,10 @@
+# -*- coding: utf-8 -*-
+# Part of Odoo. See LICENSE file for full copyright and licensing details.
+
+from odoo import fields, models
+
+
+class BaseConfigSettings(models.TransientModel):
+ _inherit = 'base.config.settings'
+
+ ldaps = fields.One2many(related='company_id.ldaps', string="LDAP Parameters *")
diff --git a/addons/auth_ldap/views/auth_ldap_config_settings_views.xml b/addons/auth_ldap/views/auth_ldap_config_settings_views.xml
new file mode 100644
index 00000000000..b4586c8945d
--- /dev/null
+++ b/addons/auth_ldap/views/auth_ldap_config_settings_views.xml
@@ -0,0 +1,42 @@
+
+
+
+ base.config.settings.form.inherit.auth.ldap
+ base.config.settings
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/addons/auth_ldap/views/res_company_views.xml b/addons/auth_ldap/views/res_company_views.xml
deleted file mode 100644
index e3668c4e0a4..00000000000
--- a/addons/auth_ldap/views/res_company_views.xml
+++ /dev/null
@@ -1,37 +0,0 @@
-
-
-
- res.company.form.inherit
- res.company
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/addons/base_setup/models/res_config.py b/addons/base_setup/models/res_config.py
index d30a2771a5d..8b1d9a5e828 100644
--- a/addons/base_setup/models/res_config.py
+++ b/addons/base_setup/models/res_config.py
@@ -11,6 +11,8 @@ class BaseConfigSettings(models.TransientModel):
group_multi_company = fields.Boolean(string='Manage multiple companies',
help='Work in multi-company environments, with appropriate security access between companies.',
implied_group='base.group_multi_company')
+ company_id = fields.Many2one('res.company', string='Company', required=True,
+ default=lambda self: self.env.user.company_id)
module_share = fields.Boolean(string='Allow documents sharing',
help="""Share or embbed any screen of Odoo.""")
module_portal = fields.Boolean(string='Activate the customer portal',
@@ -32,6 +34,17 @@ class BaseConfigSettings(models.TransientModel):
implied_group='base.group_multi_currency',
help="Allows to work in a multi currency environment")
+ # Report config from base/res/res_company.py
+ custom_footer = fields.Boolean(related="company_id.custom_footer", string="Custom footer *", help="Check this to define the report footer manually. Otherwise it will be filled in automatically.")
+ rml_footer = fields.Text(related="company_id.rml_footer", string='Custom Report Footer *', help="Footer text displayed at the bottom of all reports.")
+ rml_footer_readonly = fields.Text(related='rml_footer', string='Report Footer *', readonly=True)
+ rml_paper_format = fields.Selection(related="company_id.rml_paper_format", string="Paper Format *", required=True)
+ font = fields.Many2one(related='company_id.font', string="Font *", help="Set the font into the report header, it will be used as default font in the RML reports of the user company")
+ rml_header = fields.Text(related="company_id.rml_header", string="RML Header *")
+ rml_header2 = fields.Text(related="company_id.rml_header2", string='RML Internal Header *')
+ rml_header3 = fields.Text(related="company_id.rml_header3", string='RML Internal Header for Landscape Reports *')
+
+
@api.multi
def open_company(self):
return {
@@ -63,3 +76,6 @@ class BaseConfigSettings(models.TransientModel):
partner_rule = self.env.ref('base.res_partner_rule')
for config in self:
partner_rule.write({'active': not config.company_share_partner})
+
+ def act_discover_fonts(self):
+ self.company_id.act_discover_fonts()
diff --git a/addons/base_setup/views/res_config_views.xml b/addons/base_setup/views/res_config_views.xml
index 1996530b637..10c55e76b90 100644
--- a/addons/base_setup/views/res_config_views.xml
+++ b/addons/base_setup/views/res_config_views.xml
@@ -13,6 +13,7 @@
+
@@ -109,6 +110,47 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ (*) This configuration value is related to the company you're logged in.
+
diff --git a/addons/hr_timesheet_attendance/__openerp__.py b/addons/hr_timesheet_attendance/__openerp__.py
index f3af1ac4711..a5d3e313464 100644
--- a/addons/hr_timesheet_attendance/__openerp__.py
+++ b/addons/hr_timesheet_attendance/__openerp__.py
@@ -12,6 +12,7 @@
'security/ir.model.access.csv',
'report/hr_timesheet_attendance_report_view.xml',
'views/hr_timesheet_sheet_views.xml',
+ 'views/hr_timesheet_attendance_config_settings_views.xml',
],
'auto_install': True,
}
diff --git a/addons/hr_timesheet_attendance/models/__init__.py b/addons/hr_timesheet_attendance/models/__init__.py
index e9110f22b7c..24e4387943f 100644
--- a/addons/hr_timesheet_attendance/models/__init__.py
+++ b/addons/hr_timesheet_attendance/models/__init__.py
@@ -4,3 +4,4 @@
import hr_attendance
import hr_timesheet_sheet
import res_company
+import project_config_settings
\ No newline at end of file
diff --git a/addons/hr_timesheet_attendance/models/project_config_settings.py b/addons/hr_timesheet_attendance/models/project_config_settings.py
new file mode 100644
index 00000000000..d38f3520b50
--- /dev/null
+++ b/addons/hr_timesheet_attendance/models/project_config_settings.py
@@ -0,0 +1,9 @@
+# -*- coding: utf-8 -*-
+# Part of Odoo. See LICENSE file for full copyright and licensing details.
+
+from odoo import fields, models
+
+class HrTimesheetConfiguration(models.TransientModel):
+ _inherit = 'project.config.settings'
+
+ timesheet_max_difference = fields.Float(related='company_id.timesheet_max_difference', string="Timesheet allowed difference(Hours) *")
diff --git a/addons/hr_timesheet_attendance/views/hr_timesheet_attendance_config_settings_views.xml b/addons/hr_timesheet_attendance/views/hr_timesheet_attendance_config_settings_views.xml
new file mode 100644
index 00000000000..9a036597094
--- /dev/null
+++ b/addons/hr_timesheet_attendance/views/hr_timesheet_attendance_config_settings_views.xml
@@ -0,0 +1,18 @@
+
+
+
+
+ project.config.settings.form.inherit.timesheet.attendance
+ project.config.settings
+
+
+
+
+
-
-
-
diff --git a/addons/hr_timesheet_sheet/models/hr_timesheet_sheet_config_settings.py b/addons/hr_timesheet_sheet/models/hr_timesheet_sheet_config_settings.py
index f26fcfb2561..e48a18cdbe8 100644
--- a/addons/hr_timesheet_sheet/models/hr_timesheet_sheet_config_settings.py
+++ b/addons/hr_timesheet_sheet/models/hr_timesheet_sheet_config_settings.py
@@ -8,3 +8,4 @@ class HrTimesheetConfiguration(models.TransientModel):
_inherit = 'project.config.settings'
module_project_timesheet_synchro = fields.Boolean(string="Timesheet app for Chrome/Android/iOS")
+ timesheet_range = fields.Selection(related='company_id.timesheet_range', string="Timesheet range *")
diff --git a/addons/hr_timesheet_sheet/models/res_company.py b/addons/hr_timesheet_sheet/models/res_company.py
index 46267b9b8a2..b4a5ef24ac2 100644
--- a/addons/hr_timesheet_sheet/models/res_company.py
+++ b/addons/hr_timesheet_sheet/models/res_company.py
@@ -9,7 +9,3 @@ class ResCompany(models.Model):
timesheet_range = fields.Selection([('week', 'Week'), ('month', 'Month')],
default='week', string='Timesheet range', help="Periodicity on which you validate your timesheets.")
- timesheet_max_difference = fields.Float(string='Timesheet allowed difference(Hours)',
- help="Allowed difference in hours between the sign in/out and the timesheet " \
- "computation for one sheet. Set this to 0 if you do not want any control.",
- default=0.0)
diff --git a/addons/hr_timesheet_sheet/views/hr_timesheet_sheet_config_settings_views.xml b/addons/hr_timesheet_sheet/views/hr_timesheet_sheet_config_settings_views.xml
index 695ea0ae152..24e309070cf 100644
--- a/addons/hr_timesheet_sheet/views/hr_timesheet_sheet_config_settings_views.xml
+++ b/addons/hr_timesheet_sheet/views/hr_timesheet_sheet_config_settings_views.xml
@@ -10,6 +10,7 @@
Timesheets
+