1. A menu with `/page/website.***` should be flagged as `active`
if the current url is `/page/***`. This is a retro-compatibility
patch for c9d41679fb, so the
menu is marked as active without having to rename it, by
removing this `website.` thing.
2. If you defined two menus with as url `/page/test` and `/page/test2`
Both menus were flagged as `active` when you browsed the url
`/page/test2`, because it started by both menus urls.
Fixes#3059Closes#3070
In the top menu bar, the `active` class is set when the
menu url matches the page url (the url in the browser url bar)
A while ago, we made so all urls
`/page/website.***'
were automatically redirected to
`/page/****`
Therefore, if the menu url still contains this `website.` prefix,
the active class wasn't set on it, while it should.
Fixes#3059Closes#3070
When saving a template in version 8.0, html would be saved as it should
be displayed once on the site. In particular, if some text should be
escaped once send to the browser, it will be saved as such.
But when rendering, a text node content is unescaped two times:
* for translation which seems wrong since we already use .text of a node
which already escaped it, doing it one more time is bad,
* when rendering the template, since the html template is stored in xml,
This commit remove superfluous unescaping for translation, and add an
escaping when saving the changed template content.
closes#7967
opw-646889
When dropping the snippet "Newsletter Popup", a modal appeared to choose
the newsletter. Once the button "Continue" was clicked, the modal was not
hidden and then it was impossible to scroll.
Since saas-6, all snippets should start by a s_, so we can know exactly what is
the current snippet, and retrieve the slide from the drop-snippets bar.
If none snippet match, we use the old method which consists to find the snippet
which have the biggest intersection of class betwwen dropped snippet, and all
snippets in drop-snippets bar.
A other way without update the JS code will be to had many fake class in the
snippet declaration and in the snippet code to be sure that it match the right
snippet.
Pasting from the website to the website could for example copy
t-field="..." which then would easily add an error if e.g a field
is copied to an area where it is not available.
This fix strip the data-oe-... attributes of nodes added to the DOM
when pasting.
closes#7653
opw-644968
The function popUndo doesn't exist in summernote.
But this function exists in our RTE.
The edition of a comment in the website forum uses summernote and
then it crashes when using popUndo.
In the forum, when writing a reply, if you highlighted a text
and I clicked on the link icon to hyperlink the text, neither
the OK button nor the cross button closed the popup.
This commit solved this bug.
In our RTE, the function popUndo is never used then it can be deleted.
opw:644486
Add oe_dark in color list for 'background color', else end user cannot change the color
Force background-color and not background, else background-size from oe_img is overrided
and so the background is displayed with a size:auto instead of cover
This hack was just good to print, but break all repsonsive snippets.
Previous commit specify the use of col-md when printing, and so avoid
to add xs anywhere !
When clicking on the publish/unpublish button in a form view, if the
user does not belong to the `base.group_website_publisher` group,
fallback to a simple toggling behavior.