In e29c08969 source mode was reintroduced. Since complex template seemed
broken when it was edited, the feature of forcing source mode when there
is a `% if ` or `% set` template directive of 12.3 was reintroduced.
Since the direct breaking of the template was mostly solved with the
added line:
`options.prettifyHtml = false;`
the force source mode is not so much necessary and there was report that
it was not very clear.
In this commit it is removed, and if necessary could be reintroduced
later with clearer implementation.
opw-2123730
fix#40410closes#40421closesodoo/odoo#40458
X-original-commit: be30a3ba431cf24a5fcfdfedd0f9d9f73163c717
Signed-off-by: Nicolas Lempereur (nle) <nle@odoo.com>
Open Mass Mailing in debug mode, create a new mass mailing,
choose a template for the body, check with the inspector the iframe.
The head of the iframe does not have the debug assets. This is because
the global variable relative to the debug mode gets temporary
overwritten before solving the promise.
For Gorash this has been done for:
* Performance as all the editor assets must be inserted into the iframe
assets
* As an indication to bugfixers that the fix must not be done in this
bundle as it is the exact same content as outside of the iframe and the
exact same content as previous Odoo versions.
Removing the override given that:
* If someone enable debug=assets he/she is aware of the performance hit
* A ticket has been opened because the iframe is hard to debug
without debug assets.
opw-2117649
closesodoo/odoo#40417
X-original-commit: 17c6952af3242c22bae2596f64b0addd04b9f9e0
Signed-off-by: Nicolas Martinelli (nim) <nim@odoo.com>
Now, we should either use:
- A we-select (in the end, same as collapse except it does not push the
elements in the UI)
- A simple div to always display the elements
Part of https://github.com/odoo/odoo/pull/38959
task-2066614
closesodoo/odoo#38959
Signed-off-by: Quentin Smetz (qsm) <qsm@odoo.com>
Previously, background size and position for snippets was configured in
a modal, the user could choose a "focus point", which is rather
unintuitive. They could also choose to use the "contain" background
mode, with or without repeat, or a third option, where they could
customize everything, from the background size in both directions to
whether to repeat the background in only one or in both directions.
This commit streamlines the background-sizing options, only the "cover"
and "repeat pattern" options have been kept, as they cover almost every
use case. Their configuration has been moved into the options menu for
consistency with the rest of the editor, and the background's position
is now chosen by clicking on the corresponding menu option, and dragging
the background to the desired place.
Part of https://github.com/odoo/odoo/pull/38959
maintask-2066614
task-2088304
This will allow to do the following:
1) Show a preview overlay over an element
2) Block preview overlays -> the overlay at step 1 stays no matter what
3) Encourage the user to do something that edits what the preview
overlay is currently showing.
4) The edition is finished, go back to normal by unblocking preview
overlays.
Part of https://github.com/odoo/odoo/pull/38959
task-2066614
* web_editor
This commit adds a slide counter in carousel snippets option menu, as
well as left and right buttons, this way the user can manage their
slides entirely from the options, instead of having to go to the block
itself to navigate to where they want before going back to the option
menu to add or remove a slide.
Part of https://github.com/odoo/odoo/pull/38959
maintask-2066614
task-2088291
Co-authored-by: Samuel Degueldre <sad@odoo.com>
Currently we have:
- a colorpicker for background color of snippets
- a colorpicker for foreground and background text (topbar)
- a colorpicker for menu/footer/navbar/etc
These 3 are separate colorpickers with different options.
After this Commit
All 3 will use the same color palette wich allow you to select
theme color, common colors, custom color and transparent filter.
Part of https://github.com/odoo/odoo/pull/38959
maintask-2066614
task-2087383
* web_editor
Previously, the user could choose their anchor names using a modal
window, anchor names also have weird rules, this was not a great user
experience.
This commit makes the anchor button generate anchors automatically based
on the first title in a section, or the snippet name if there are none.
If the anchor name is already taken, it is suffixed by a number. After
it has been generated, it is also copied to the clipboard and the user
is shown a toast to tell them the anchor has been generated and copied.
The anchor is displayed in the toast along with an edit button that will
open the same edition modal as previously, but it is now less
restrictive.
Part of https://github.com/odoo/odoo/pull/38959
maintask-2066614
task-2088270
* website
Now snippet options can be defined as a button which can be placed next
to the clone and delete buttons, through a new "isTopOption" method.
This commit also review the buttons and title design and take advantage
of the feature to review the way snippets options are added in their
container (that code indeed contained useless part since 13.0).
Part of https://github.com/odoo/odoo/pull/38959
task-2066614
* web_editor, website_blog, mass_mailing
In preparation of the new left panel UI, remove all snippet options UI
icons as we do not want them anymore to simplify the UI.
Part of https://github.com/odoo/odoo/pull/38959
task-2066614
Commit https://github.com/odoo/odoo/commit/f6bbc40fbe16ea5ab01ad03b8e1519c4e559bf6d
introduced a method to destroy all current editors to refresh them when
necessary... but forgot to empty the array that contains them.
In a 12.0 without custo, this is only slowing down the editor but in
master (or with custo) this makes the editor crash.
closesodoo/odoo#40372
X-original-commit: 2b5661937d9772b98c73f9f64aa419fec7676052
Signed-off-by: Quentin Smetz (qsm) <qsm@odoo.com>
*: point_of_sale
In c212cfe899 the field 'datas_fname' was
removed as it was mostly almost always a duplicate of the name or url
field. Two uses of this field were not removed in the rest of the code,
one in web_editor which caused a crash when trying to save a cropped
image. There was also one in pos_order, which I changed at the same
time, even though it isn't known to cause a bug yet, the create call is
bound to fail if it is ever triggered.
closesodoo/odoo#40329
X-original-commit: 7088d11b7f2de7ffaa5b7045b562784f7176f75d
Signed-off-by: Quentin Smetz (qsm) <qsm@odoo.com>
In 12.3 there was a number of changes in source mode. This was reverted
before 13.0 and somehow it seems the source mode was lost between the
12.3 editor changes and its revert.
With this changeset, we introduce back source mode as it was in 12.
opw-2091649
opw-2116960
closes#40026closesodoo/odoo#40120
X-original-commit: e29c08969f6e7ad981e9b7b79027d84dc89fbca2
Signed-off-by: Nicolas Lempereur (nle) <nle@odoo.com>
In f29699231 (12.3) part of the code of the editor `Link Dialog` was
moved to a web_editor/static/src/js/wysiwyg/plugin/link.js file/class.
In 13.0 the 12.3 editor changes were mostly reverted in 35b61822a but
part of the change of `Link Dialog` that was moved to another file/class
was not moved back, thus: it does not work as expected => eg. if we add
a link over an image, the image is removed.
In this commit we get back the missing part as it was in 12.0 version.
opw-2086444
closes#39858closesodoo/odoo#39881
X-original-commit: 9996d04fd2ec8329cd5561a4bc94ccc35d529d93
Signed-off-by: Nicolas Lempereur (nle) <nle@odoo.com>
Indeed, the carousel-item elements are linked to other DOM (like
indicators) and removing one would imply enabling another one... all of
this is handled by the carousel "remove slide" option.
Note: the UI to add and remove slides will be refactored in a future
update of this future saas anyway.
Part of https://github.com/odoo/odoo/pull/38997
task-2090180
closesodoo/odoo#38997
Signed-off-by: Quentin Smetz (qsm) <qsm@odoo.com>
Previously, the carousel and quotes carousel snippets were the only ones
that were not enclosed in section blocks. This had a number of
undesirable side effects, such as editing the anchor on the carousel
breaking the carousel functionality, and the inability to separately
choose a background for the carousel itself and individual slides.
I also used this opportunity to move controls relative to the entire
carousel onto the carousel itself rather than the individual slides. The
sizing_y (vertical padding) will however keep targeting individual
slides, as the carousel uses the height of its tallest slide, and also
because padding on the carousel will not get covered by slide
backgrounds and saty blank, which is unwanted.
Lastly, most of the snippet options for the carousel were rewritten, as
they were quite broken. There was some compatibility code for saas-3
left, some useless events were bound to the controls, even though they
were already handled through event-delegation at the document level.
Finally, most of the edition features were broken on duplicated
carousels since the onClone method wasn't reassigning most of the things
it needed to.
Part of https://github.com/odoo/odoo/pull/38997
task-2090180
Previously, when trying to enable a snippet overlay & options, the
'toggleFocus' method was called. Now the logic is separated for overlay
and options toggling so that we stop calling onFocus/onBlur method of
parent options when only a child snippet is being enabled.
For example, for a section with two columns inside, we had this behavior
before this commit:
1) Click on first column
2) -> the section's onFocus is called
3) -> the first column's onFocus is called
4) Click on second column
5) -> the section's onBlur is called
6) -> the first column's onBlur is called
7) -> the section's onFocus iscalled
8) -> the second column's onFocus is called
9) Click on another snippet
10) -> the section's onBlur is called
11) -> the second column's onBlur is called
Now, steps 5 and 7 are gone.
Related to https://github.com/odoo/odoo/pull/38997
Related to task-2090180
It was technically possible that two editors for the same element are
created in the same JS stack execution... and since 13.0 and the
use of native promises, it happens everytime a block is dropped in the
page.
Note: this commit fixes the problem with minimal code but the logic
should be improved in master.
closesodoo/odoo#39668
X-original-commit: 497bc892697ba1b5d2e7140f07970e468b7c90a7
Signed-off-by: Quentin Smetz (qsm) <qsm@odoo.com>
There recently were some fixes to the system of onFocus/onBlur with the
new left panel of the 13.0 editor and one still remained: the onBlur
method was most of the time called only on the main snippet options and
not the child ones. Now it works as it should, even if the system logic
has to be improved to be more robust.
One difference remains with 12.0 but this can be considered as a change
for the 13.0 version: the parent options onFocus/onBlur are called
before the child options while it was the opposite before.
closesodoo/odoo#39659
X-original-commit: 502db91c0b38567dede5d683370fef82890a99f0
Signed-off-by: Quentin Smetz (qsm) <qsm@odoo.com>
In the editor, the snippets from uninstalled module are shown with the
possibility to install the module to get snippet.
Before this commit:
When clicking on it, it will redirect to the module page, in the backend from
where you can install the module.
Now:
A popup will be shown to save current changes and install the module.
The installation will be done without changing page, in the editor. Once done,
the page will reload in editor enabled mode.
task-2089285
closesodoo/odoo#39138
Signed-off-by: Quentin Smetz (qsm) <qsm@odoo.com>
* web_editor
Commit https://github.com/odoo/odoo/commit/7e2b0ebe7996c9fa35f75949b7fc8cd5a58d7c36
broke the website JS loading as it added a dependency to a lazy loaded
JS module which was not even always lazy loaded.
A test so that this does not happens anymore will be made in another
commit.
Related to task-2092386
closesodoo/odoo#39391
X-original-commit: 5ac269d722f9ff8c206215dd1c07b8544cfd5382
Signed-off-by: Quentin Smetz (qsm) <qsm@odoo.com>
*: website
Inherited colorpicker were not used due to the context missing the
website_id and the method call being used instead of call_kw.
task-2092386
closesodoo/odoo#39357
X-original-commit: 7e2b0ebe7996c9fa35f75949b7fc8cd5a58d7c36
Signed-off-by: Quentin Smetz (qsm) <qsm@odoo.com>
Before this commit, when clicking inside a snippet which is already
enabled, it was disabled then re-enabled... which had the side effect
of calling onBlur/onFocus methods. This can be a problem with some
onFocus/onBlur implementation relying on the old behavior.
Note: this commit restores the exact same behavior as before. If an
internal snippet of the active one is clicked, then we still call the
onBlur then onFocus for the old active one (the parent) as the actual
enabled snippet changed (even if it is simply a child snippet).
closesodoo/odoo#39261
X-original-commit: 076992bdf099f3a645c9a1ef6df2cdcccbf1c2b2
Signed-off-by: Quentin Smetz (qsm) <qsm@odoo.com>
The issue here is, for modal dialogs (eg newsletter popup), when we close
the dialog, the modal is destroyed and so after the delayed execution due to
timeout, the dialog will not be available and it will generate the issue.
removed delayed execution for the traceback, which is relevant to
the modal dialogs.
task-2075232
closesodoo/odoo#38914
X-original-commit: 93deb25f873f5c4aba239b050e543b23685f5ba0
Signed-off-by: David Monjoie (dmo) <dmo@odoo.com>
If two snippet options are declared using the same data-js="..." and
that they end up targeting the same snippet in some cases, only one of
those two snippet options was shown.
This case occurred in a theme (avantgarde) for the map snippet.
closesodoo/odoo#38551
X-original-commit: 2072bfd9981eebc8c8d8d03d2f44f0e4a2489692
Signed-off-by: Quentin Smetz (qsm) <qsm@odoo.com>
When an option group is opened, all the other opened option groups were
closed. The problem is that an option group may contain other option
groups, so when trying to open a sub-group the main parent group was
closed first.
Note: this case only occurs for one option in themes for now.
Part of https://github.com/odoo/odoo/pull/38495
task-2083198
X-original-commit: 102151da12c28746bf16dd7f009c1ca3933d06ba
* website_form
To support old theme options, a hack had to be made to allow access to
left panel UI. This will be improved in master.
Part of https://github.com/odoo/odoo/pull/38495
task-2083198
X-original-commit: 5ac6a7a5dbd2af1190d0d027d0239dd1cfc257b0
In the backend, when a mailing popup was being edited, it was not
centered in the edition area (and went under the editor UI) and was not
using the correct style.
task-2083465
closesodoo/odoo#38449
X-original-commit: 6ccf3b618b4b0774deccb4f75bf33f3ea4dc8b75
Signed-off-by: Quentin Smetz (qsm) <qsm@odoo.com>
* web_editor
The purpose is to force our dropdown style in our UI so that themes do
not break it anymore (same way all the other elements are forced (cards,
headings, etc)).
task-2059538
closesodoo/odoo#38321
X-original-commit: 4ef0eac5ba134f462f72f3e9c60e5c9fc95f3a8c
Signed-off-by: Quentin Smetz (qsm) <qsm@odoo.com>
Co-authored-by: qsm-odoo <qsm@odoo.com>
When on Firefox, with sale_product_matrix and sale_quotation_builder installed,
clicking anywhere on the matrix (after opening it) raises a traceback.
It is due to the fact that isBody tries to access anchorNode.nodeName, which
is unexpectedly unaccessible as anchorNode is {Reserved}.
Due to the absence of clear documentation of the possible reasons of this problem,
it was decided to reuse the existing fallback on 'return null', which avoids the
traceback.
closesodoo/odoo#38277
X-original-commit: 70c484e72bffc9ab759df3c376ad9157acec3965
Signed-off-by: Victor Feyens (vfe) <vfe@odoo.com>
Before this commit, we hide the 'relative warning' when you don't start
you url with the current location. Now we show it only when you start
your url with the current location.
Before this commit, when you create a new link, the warning was shown
until you type a first char in the input to trigger the input change.
+ some small design theme (label font weight, muted color, ...)
closesodoo/odoo#38224
Signed-off-by: Jérémy Kersten (jke) <jke@openerp.com>
Before this commit, the feature for selecting a link and then clicking
on the "link" button or hitting the CTRL+K was partially broken.
The method "commonAncestor" was not returing the expected value.
This commit add a check in the method "showLinkDialog" to prevent
this error to happen.
closesodoo/odoo#38103
Signed-off-by: David Monjoie (dmo) <dmo@odoo.com>
Before this commit, the selection of a pictogram in the media
dialog of the website builder and the mass_mailing was not
working.
The pictogram already has the class "o_we_attachment_selected"
upon selection. This commit allow the class "font-icons-icon"
to be included in an existing selector.
closesodoo/odoo#38085
Signed-off-by: David Monjoie (dmo) <dmo@odoo.com>
A common software development pattern is to have the same data replicated across different environments, such as production and staging. This happens i.e. in Odoo.sh.
Let's assume your production instance is in ``https://www.example.com`` and your staging one is in ``https://staging.example.com``. Then:
1. A user in production modifies a website menu and makes it link to ``https://www.example.com/my-cool-page``.
1. A new change lands in staging, with a fresh copy of the production database.
1. The user goes to ``https://staging.example.com`` and navigates through the menus to validate the changes.
1. While navigating, he clicks in the website menu that links to ``https://www.example.com/my-cool-page``.
1. He makes some changes. **He didn't realize he was modifying production**.
To avoid this kind of problems, if a user pastes a link that starts with the current domain, it gets removed.
closesodoo/odoo#35715
Signed-off-by: Jérémy Kersten (jke) <jke@openerp.com>
In the case of an <ol> in an <ol> we would have something like:
1.
2. 1.
2.
3.
With this changeset we get back what we had in 12.0:
1.
1.
2.
3.
which is not perfect but the same as 12.0 version.
opw-2073751
closes#37163closesodoo/odoo#37706
X-original-commit: 479db16fdb86c6925a7f94a24f2821f3a5c047b5
Signed-off-by: Nicolas Lempereur (nle) <nle@odoo.com>