diff options
| author | Christophe Simonis <chs@odoo.com> | 2017-05-02 18:53:44 +0200 |
|---|---|---|
| committer | Christophe Simonis <chs@odoo.com> | 2017-05-02 18:53:44 +0200 |
| commit | bf7de4d32ff30dd8b322d6c9c2cf2e9feb302e6f (patch) | |
| tree | bdb67554300b520e41fec6dc32107d4b90156e40 /addons | |
| parent | a97cb66961a77e9e3efb6de0d852e93f57afc350 (diff) | |
| parent | 3f6bb0f544d5bdd102eb06fbc7d5aa9095efc235 (diff) | |
[MERGE] forward port branch saas-15 up to 3f6bb0f544d
Diffstat (limited to 'addons')
| -rw-r--r-- | addons/account/wizard/account_financial_report.py | 2 | ||||
| -rw-r--r-- | addons/auth_signup/data/auth_signup_data.xml | 4 | ||||
| -rw-r--r-- | addons/hr_expense/models/hr_expense.py | 8 | ||||
| -rw-r--r-- | addons/sale/data/mail_template_data.xml | 2 | ||||
| -rw-r--r-- | addons/sale/models/account_invoice.py | 2 | ||||
| -rw-r--r-- | addons/stock/models/stock_warehouse.py | 3 | ||||
| -rw-r--r-- | addons/web/static/src/js/fields/field_utils.js | 2 | ||||
| -rw-r--r-- | addons/website_forum/data/forum_data.xml | 2 | ||||
| -rw-r--r-- | addons/website_hr/security/hr_employee_security.xml | 10 | ||||
| -rw-r--r-- | addons/website_hr/security/ir.model.access.csv | 2 |
10 files changed, 29 insertions, 8 deletions
diff --git a/addons/account/wizard/account_financial_report.py b/addons/account/wizard/account_financial_report.py index aca71bfc333..7712d1fa9cb 100644 --- a/addons/account/wizard/account_financial_report.py +++ b/addons/account/wizard/account_financial_report.py @@ -48,4 +48,4 @@ class AccountingReport(models.TransientModel): def _print_report(self, data): data['form'].update(self.read(['date_from_cmp', 'debit_credit', 'date_to_cmp', 'filter_cmp', 'account_report_id', 'enable_filter', 'label_filter', 'target_move'])[0]) - return self.env['report'].get_action(self, 'account.report_financial', data=data) + return self.env['report'].get_action(self, 'account.report_financial', data=data, config=False) diff --git a/addons/auth_signup/data/auth_signup_data.xml b/addons/auth_signup/data/auth_signup_data.xml index 2cc3d07195c..2b6ceeeed79 100644 --- a/addons/auth_signup/data/auth_signup_data.xml +++ b/addons/auth_signup/data/auth_signup_data.xml @@ -20,7 +20,7 @@ <record id="reset_password_email" model="mail.template"> <field name="name">Auth Signup: Reset Password</field> <field name="model_id" ref="base.model_res_users"/> - <field name="email_from"><![CDATA[${object.company_id.name} <${(object.company_id.email or user.email)|safe}>]]></field> + <field name="email_from"><![CDATA["${object.company_id.name|safe}" <${(object.company_id.email or user.email)|safe}>]]></field> <field name="email_to">${object.email|safe}</field> <field name="subject">Password reset</field> <field name="body_html"><![CDATA[ @@ -56,7 +56,7 @@ <record id="set_password_email" model="mail.template"> <field name="name">Auth Signup: Odoo Connection</field> <field name="model_id" ref="base.model_res_users"/> - <field name="email_from"><![CDATA[${object.company_id.name} <${(object.company_id.email or user.email)|safe}>]]></field> + <field name="email_from"><![CDATA["${object.company_id.name|safe}" <${(object.company_id.email or user.email)|safe}>]]></field> <field name="email_to">${object.email|safe}</field> <field name="subject"><![CDATA[${object.company_id.name} invitation to connect on Odoo]]></field> <field name="body_html"><![CDATA[ diff --git a/addons/hr_expense/models/hr_expense.py b/addons/hr_expense/models/hr_expense.py index f3a10cfb417..facef9e2f6f 100644 --- a/addons/hr_expense/models/hr_expense.py +++ b/addons/hr_expense/models/hr_expense.py @@ -550,3 +550,11 @@ class HrExpenseSheet(models.Model): res['domain'] = [('id', 'in', self.mapped('account_move_id').ids)] res['context'] = {} return res + + + @api.one + @api.constrains('expense_line_ids') + def _check_employee(self): + employee_ids = self.expense_line_ids.mapped('employee_id') + if len(employee_ids) > 1 or (len(employee_ids) == 1 and employee_ids != self.employee_id): + raise ValidationError(_('You cannot add expense lines of another employee.'))
\ No newline at end of file diff --git a/addons/sale/data/mail_template_data.xml b/addons/sale/data/mail_template_data.xml index 72b2dae500c..23eaa72eac3 100644 --- a/addons/sale/data/mail_template_data.xml +++ b/addons/sale/data/mail_template_data.xml @@ -18,7 +18,7 @@ % set access_action = object.with_context(force_website=True).get_access_action() % set is_online = access_action and access_action['type'] == 'ir.actions.act_url' % set doc_name = 'quotation' if object.state in ('draft', 'sent') else 'order confirmation' -% set access_name = is_online and object.template_id and 'Accept and pay %s online' % doc_name or 'View %s' % doc_name +% set access_name = is_online and object.template_id and doc_name == 'quotation' and 'Accept and pay %s online' % doc_name or 'View %s' % doc_name % set access_url = is_online and '/mail/view?model=sale.order&res_id=%d' % (object.id) or '' % if object.partner_id.parent_id: diff --git a/addons/sale/models/account_invoice.py b/addons/sale/models/account_invoice.py index 3d61900129d..dcd930d3eb1 100644 --- a/addons/sale/models/account_invoice.py +++ b/addons/sale/models/account_invoice.py @@ -101,4 +101,4 @@ class AccountInvoiceLine(models.Model): layout_category_id = fields.Many2one('sale.layout_category', string='Section') layout_category_sequence = fields.Integer( related='layout_category_id.sequence', - string='Layout Sequence', store=True, default=0) + string='Layout Sequence', store=True) diff --git a/addons/stock/models/stock_warehouse.py b/addons/stock/models/stock_warehouse.py index 9242aeefa2a..bb4916e30de 100644 --- a/addons/stock/models/stock_warehouse.py +++ b/addons/stock/models/stock_warehouse.py @@ -611,7 +611,8 @@ class Warehouse(models.Model): pull.write({'name': pull.name.replace(warehouse.name, new_name, 1)}) for push in route.push_ids: push.write({'name': push.name.replace(warehouse.name, new_name, 1)}) - warehouse.mto_pull_id.write({'name': warehouse.mto_pull_id.name.replace(warehouse.name, new_name, 1)}) + if warehouse.mto_pull_id: + warehouse.mto_pull_id.write({'name': warehouse.mto_pull_id.name.replace(warehouse.name, new_name, 1)}) for warehouse in self: sequence_data = warehouse._get_sequence_values() warehouse.in_type_id.sequence_id.write(sequence_data['in_type_id']) diff --git a/addons/web/static/src/js/fields/field_utils.js b/addons/web/static/src/js/fields/field_utils.js index 534ae68bbf5..afc15b7a882 100644 --- a/addons/web/static/src/js/fields/field_utils.js +++ b/addons/web/static/src/js/fields/field_utils.js @@ -392,7 +392,7 @@ function parseInteger(value) { value = value.replace(new RegExp(core._t.database.parameters.thousands_sep, "g"), ''); var parsed = Number(value); // do not accept not numbers or float values - if (isNaN(parsed) || parsed % 1) { + if (isNaN(parsed) || parsed % 1 || parsed < -2147483648 || parsed > 2147483647) { throw new Error(_.str.sprintf(core._t("'%s' is not a correct integer"), value)); } return parsed; diff --git a/addons/website_forum/data/forum_data.xml b/addons/website_forum/data/forum_data.xml index b4a2a56ceba..939fac46191 100644 --- a/addons/website_forum/data/forum_data.xml +++ b/addons/website_forum/data/forum_data.xml @@ -138,7 +138,7 @@ <record id="validation_email" model="mail.template"> <field name="name">Forum: Email Verification</field> <field name="model_id" ref="base.model_res_users"/> - <field name="email_from"><![CDATA[${object.company_id.name} <${(object.company_id.email or user.email)|safe}>]]></field> + <field name="email_from"><![CDATA["${object.company_id.name|safe}" <${(object.company_id.email or user.email)|safe}>]]></field> <field name="email_to">${object.email|safe}</field> <field name="subject"><![CDATA[${object.company_id.name} Forums validation]]></field> <field name="body_html"><![CDATA[ diff --git a/addons/website_hr/security/hr_employee_security.xml b/addons/website_hr/security/hr_employee_security.xml index e2125c2575b..a86b14310a8 100644 --- a/addons/website_hr/security/hr_employee_security.xml +++ b/addons/website_hr/security/hr_employee_security.xml @@ -10,4 +10,14 @@ <field name="perm_create" eval="False"/> <field name="perm_unlink" eval="False"/> </record> + <record id="hr_employee_portal" model="ir.rule"> + <field name="name">hr_employee: Portal</field> + <field name="model_id" ref="hr.model_hr_employee"/> + <field name="domain_force">[('website_published', '=', True)]</field> + <field name="groups" eval="[(4, ref('base.group_portal'))]"/> + <field name="perm_read" eval="True"/> + <field name="perm_write" eval="False"/> + <field name="perm_create" eval="False"/> + <field name="perm_unlink" eval="False"/> + </record> </odoo>
\ No newline at end of file diff --git a/addons/website_hr/security/ir.model.access.csv b/addons/website_hr/security/ir.model.access.csv index 6f038a47ba9..53be505e42e 100644 --- a/addons/website_hr/security/ir.model.access.csv +++ b/addons/website_hr/security/ir.model.access.csv @@ -1,3 +1,5 @@ id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink access_hr_employee_public,hr.employee.public,hr.model_hr_employee,base.group_public,1,0,0,0 +access_hr_employee_portal,hr.employee.portal,hr.model_hr_employee,base.group_portal,1,0,0,0 access_resource_public,resource.resource.public,resource.model_resource_resource,base.group_public,1,0,0,0 +access_resource_portal,resource.resource.portal,resource.model_resource_resource,base.group_portal,1,0,0,0 |
