From 6969c6c5ada167a60fbb9470094b6991a0cf1a73 Mon Sep 17 00:00:00 2001 From: Jeremy Kersten Date: Wed, 15 Feb 2017 12:30:21 +0100 Subject: [PATCH] [FIX] website: allow to edit master if 'automatic footer' is disabled Before this commit, impossible to edit the master if no language switcher was displayed on the web page. --- .../static/src/js/website.translator.js | 25 +++++++++++-------- 1 file changed, 15 insertions(+), 10 deletions(-) diff --git a/addons/website/static/src/js/website.translator.js b/addons/website/static/src/js/website.translator.js index c7cdedb3b66..e5abe467076 100644 --- a/addons/website/static/src/js/website.translator.js +++ b/addons/website/static/src/js/website.translator.js @@ -8,6 +8,7 @@ var base = require('web_editor.base'); var translate = require('web_editor.translate'); var website = require('website.website'); var local_storage = require('web.local_storage'); +var utils = require('web.utils'); var qweb = core.qweb; @@ -31,17 +32,21 @@ website.TopBar.include({ }, edit_master: function (ev) { ev.preventDefault(); - var $link = $('.js_language_selector a[data-default-lang]'); - if (!$link.length) { - // Fallback for old website - var l = false; - _.each($('.js_language_selector a'), function(a) { - if (!l || a.href.length < l.href.length) { l = a; } - }); - $link = $(l); + + var lang = '/' + utils.get_cookie('website_lang'); + + var current = document.createElement('a'); + current.href = window.location.toString(); + current.search += (current.search ? '&' : '?') + 'enable_editor=1'; + if (current.pathname.indexOf(lang) === 0) { + current.pathname = current.pathname.replace(lang, ''); } - $link[0].search += ($link[0].search ? '&' : '?') + 'enable_editor=1'; - $link.click(); + + var link = document.createElement('a'); + link.href = '/website/lang/default'; + link.search += (link.search ? '&' : '?') + 'r=' + encodeURIComponent(current.pathname + current.search + current.hash); + + window.location = link.href; }, });