diff --git a/addons/crm_partner_assign/res_partner_view.xml b/addons/crm_partner_assign/res_partner_view.xml index 4d613c5ddd0..1474da025a3 100644 --- a/addons/crm_partner_assign/res_partner_view.xml +++ b/addons/crm_partner_assign/res_partner_view.xml @@ -111,6 +111,7 @@ + diff --git a/addons/web/static/src/js/tour.js b/addons/web/static/src/js/tour.js index 8a08751646e..5d962844f73 100644 --- a/addons/web/static/src/js/tour.js +++ b/addons/web/static/src/js/tour.js @@ -241,12 +241,20 @@ var Tour = { }, repositionPopover: function() { var popover = Tour.$element.data("bs.popover"); - var $tip = Tour.$element.data("bs.popover").tip(); + var $tip = popover.tip(); if (popover.options.orphan) { return $tip.css("top", $(window).outerHeight() / 2 - $tip.outerHeight() / 2); } + if (Tour.$element.parents("div").filter(function(){ return getComputedStyle(this).position === 'fixed'; }).length) { + var pos = popover.getPosition(); + var top = pos.top; + if (popover.options.placement === "top") top -= $tip.height(); + if (popover.options.placement === "bottom") top += pos.height; + $tip.css({'top': top+'px'}); + } + var offsetBottom, offsetHeight, offsetRight, offsetWidth, originalLeft, originalTop, tipOffset; offsetWidth = $tip[0].offsetWidth; offsetHeight = $tip[0].offsetHeight; @@ -270,10 +278,10 @@ var Tour = { $tip.offset(tipOffset); if (popover.options.placement === "bottom" || popover.options.placement === "top") { var left = Tour.$element.offset().left + Tour.$element.outerWidth()/2 - tipOffset.left; - $tip.find(".arrow").css("left", left ? left + "px" : ""); + popover.arrow().css("left", left ? left + "px" : ""); } else if (popover.options.placement !== "auto") { var top = Tour.$element.offset().top + Tour.$element.outerHeight()/2 - tipOffset.top; - $tip.find(".arrow").css("top", top ? top + "px" : ""); + popover.arrow().css("top", top ? top + "px" : ""); } }, _load_template: false, diff --git a/addons/website_sale/controllers/main.py b/addons/website_sale/controllers/main.py index 17f788c8ff4..7544a9d654d 100644 --- a/addons/website_sale/controllers/main.py +++ b/addons/website_sale/controllers/main.py @@ -510,7 +510,12 @@ class website_sale(http.Controller): orm_user = registry.get('res.users') order_obj = request.registry.get('sale.order') - billing_info = self.checkout_parse('billing', checkout, True) + partner_lang = request.lang if request.lang in [lang.code for lang in request.website.language_ids] else None + + billing_info = {} + if partner_lang: + billing_info['lang'] = partner_lang + billing_info.update(self.checkout_parse('billing', checkout, True)) # set partner_id partner_id = None @@ -531,7 +536,10 @@ class website_sale(http.Controller): # create a new shipping partner if checkout.get('shipping_id') == -1: - shipping_info = self.checkout_parse('shipping', checkout, True) + shipping_info = {} + if partner_lang: + shipping_info['lang'] = partner_lang + shipping_info.update(self.checkout_parse('shipping', checkout, True)) shipping_info['type'] = 'delivery' shipping_info['parent_id'] = partner_id checkout['shipping_id'] = orm_partner.create(cr, SUPERUSER_ID, shipping_info, context)