diff --git a/addons/account/models/account_invoice.py b/addons/account/models/account_invoice.py index ab6f1c65e18..966a7e08033 100644 --- a/addons/account/models/account_invoice.py +++ b/addons/account/models/account_invoice.py @@ -1273,9 +1273,10 @@ class AccountInvoiceTax(models.Model): base = 0.0 for line in tax.invoice_id.invoice_line_ids: if tax.tax_id in line.invoice_line_tax_ids: - base += line.price_subtotal - # To add include base amount taxes - base += sum((line.invoice_line_tax_ids.filtered(lambda t: t.include_base_amount) - tax.tax_id).mapped('amount')) + price_unit = line.price_unit * (1 - (line.discount or 0.0) / 100.0) + base += (line.invoice_line_tax_ids - tax.tax_id).compute_all( + price_unit, line.invoice_id.currency_id, line.quantity, line.product_id, line.invoice_id.partner_id + )['base'] tax.base = base invoice_id = fields.Many2one('account.invoice', string='Invoice', ondelete='cascade', index=True) diff --git a/addons/hr_expense/models/hr_expense.py b/addons/hr_expense/models/hr_expense.py index d9d751ed219..01ca6364ee9 100644 --- a/addons/hr_expense/models/hr_expense.py +++ b/addons/hr_expense/models/hr_expense.py @@ -89,7 +89,7 @@ class HrExpense(models.Model): user_ids.append(employee.parent_id.user_id.id) if employee.department_id and employee.department_id.manager_id and employee.parent_id != employee.department_id.manager_id: user_ids.append(employee.department_id.manager_id.user_id.id) - self.message_subscribe_users(user_ids=user_ids) + self.sudo().message_subscribe_users(user_ids=user_ids) @api.model def create(self, vals): diff --git a/addons/payment_paypal/controllers/main.py b/addons/payment_paypal/controllers/main.py index 0048c3ffb26..f840a33d6eb 100644 --- a/addons/payment_paypal/controllers/main.py +++ b/addons/payment_paypal/controllers/main.py @@ -65,7 +65,7 @@ class PaypalController(http.Controller): self.paypal_validate_data(**post) return '' - @http.route('/payment/paypal/dpn', type='http', auth="none", methods=['POST'], csrf=False) + @http.route('/payment/paypal/dpn', type='http', auth="none", methods=['POST', 'GET'], csrf=False) def paypal_dpn(self, **post): """ Paypal DPN """ _logger.info('Beginning Paypal DPN form_feedback with post data %s', pprint.pformat(post)) # debug diff --git a/addons/web_editor/static/src/js/snippets.editor.js b/addons/web_editor/static/src/js/snippets.editor.js index ef033dc07f3..cd03cb70f6a 100644 --- a/addons/web_editor/static/src/js/snippets.editor.js +++ b/addons/web_editor/static/src/js/snippets.editor.js @@ -620,7 +620,7 @@ var BuildingBlock = Widget.extend({ animation.start(true, $target); self.call_for_all_snippets($target, function (editor, $snippet) { - editor.drop_and_build_snippet(); + _.defer(function () { editor.drop_and_build_snippet(); }); }); self.create_snippet_editor($target); self.cover_target($target.data('overlay'), $target); @@ -640,12 +640,10 @@ var BuildingBlock = Widget.extend({ var self = this; $snippet.add(globalSelector.all($snippet)).each(function () { var $snippet = $(this); - setTimeout(function () { - self.create_snippet_editor($snippet); - if ($snippet.data("snippet-editor")) { - callback.call(self, $snippet.data("snippet-editor"), $snippet); - } - }); + self.create_snippet_editor($snippet); + if ($snippet.data("snippet-editor")) { + callback.call(self, $snippet.data("snippet-editor"), $snippet); + } }); }, @@ -918,17 +916,25 @@ var Editor = Class.extend({ }, _drag_and_drop_stop: function () { var self = this; - var $dropzone = this.$target.prev(); - var prev = $dropzone.length && $dropzone[0].previousSibling; + + $(".oe_drop_zone").droppable('destroy').remove(); + + var prev = this.$target.first()[0].previousSibling; var next = this.$target.last()[0].nextSibling; var $parent = this.$target.parent(); - $(".oe_drop_clone").after(this.$target); + var $clone = $(".oe_drop_clone"); + if (prev === $clone[0]) { + prev = $clone[0].previousSibling; + } else if (next === $clone[0]) { + next = $clone[0].nextSibling; + } + $clone.after(this.$target); this.$overlay.removeClass("hidden"); $("body").removeClass('move-important'); - $('.oe_drop_zone').droppable('destroy').remove(); - $(".oe_drop_clone, .oe_drop_to_remove").remove(); + $clone.remove(); + $(".oe_drop_to_remove").remove(); if (this.dropped) { this.buildingBlock.parent.rte.historyRecordUndo(this.$target); diff --git a/addons/website_portal/controllers/main.py b/addons/website_portal/controllers/main.py index cf8e818fc3b..87ba93a68b0 100644 --- a/addons/website_portal/controllers/main.py +++ b/addons/website_portal/controllers/main.py @@ -46,7 +46,7 @@ class website_account(http.Controller): 'country_id': post.pop('country_id'), 'state_id': post.pop('state_id') } - partner.commercial_partner_id.write(address_fields) + partner.commercial_partner_id.sudo().write(address_fields) partner.sudo().write(post) if redirect: return request.redirect(redirect) diff --git a/doc/cla/corporate/goopen.md b/doc/cla/corporate/goopen.md new file mode 100644 index 00000000000..91f5cded22a --- /dev/null +++ b/doc/cla/corporate/goopen.md @@ -0,0 +1,15 @@ +Slovenia, 2016-09-05 + +GoOpen, računalniške storitve, Aleš Ferlan s.p. agrees to the terms of the +Odoo Corporate Contributor License Agreement v1.0. + +I declare that I am authorized and able to make this agreement and sign this +declaration. + +Signed, + +Aleš Ferlan alefer89@protonmail.com + +List of contributors: + +Aleš Ferlan alefer89@protonmail.com diff --git a/doc/setup/deploy.rst b/doc/setup/deploy.rst index 7684abc3345..6b027a62bdd 100644 --- a/doc/setup/deploy.rst +++ b/doc/setup/deploy.rst @@ -233,15 +233,15 @@ connections to the secure port .. warning:: - In case you are using the Point of Sale module in combinaison with a `POSBox`_, + In case you are using the Point of Sale module in combination with a `POSBox`_, you must disable the HTTPS configuration for the route ``/pos/web`` to avoid - mix-content errors. + mixed-content errors. Configuration sample -------------------- * redirect http requests to https -* proxiing requests to odoo +* proxy requests to odoo in ``/etc/odoo.conf`` set: @@ -428,4 +428,4 @@ which will generate a 32 characters pseudorandom printable string. .. _use an SSH tunnel: http://www.postgresql.org/docs/9.3/static/ssh-tunnels.html .. _WSGI: http://wsgi.readthedocs.org/ -.. _POSBox: https://www.odoo.com/page/point-of-sale-hardware#part_2 \ No newline at end of file +.. _POSBox: https://www.odoo.com/page/point-of-sale-hardware#part_2