diff options
| author | Samuel Degueldre <sad@odoo.com> | 2020-03-24 13:34:17 +0000 |
|---|---|---|
| committer | Samuel Degueldre <sad@odoo.com> | 2020-03-30 11:06:48 +0000 |
| commit | 49ea7b2b413dfcb2290b02eee4b43bfdabd535b2 (patch) | |
| tree | 0b07f2a364b5d151053dfde9024d80f585573072 /addons/web_editor/controllers | |
| parent | 25630e442129e98a78e790949a471e5eceb9a843 (diff) | |
[IMP] web_editor: improve image optimization workflow in media dialog
Previously, when selecting an image, the user could optimize their
images by clicking a little cog icon in the media dialog. They would
also be prompted to optimize their images when uploading them. In most
cases, it makes a lot more sense to always save the original in the
database, and optimize the original whenever it's dropped in the page
automatically.
A second problem is that when using the optimization feature, optimized
images would be displayed along the originals by default, resulting in a
lot of duplicates while browsing the media dialog.
This commit changes both of these things:
- By default, when uploading an image, the original uploaded image is
used. The user can still optimize their image manually through the
media-dialog by using the cog icon. When choosing an image in the
media-dialog, if it's not already an optimized image, an optimized copy
is automatically created and used instead.
- Optimized images are now hidden by default, in the media dialog, and
can be shown by clicking a checkbox at the top of the modal when in
debug mode
task-2091417
closes odoo/odoo#45174
Diffstat (limited to 'addons/web_editor/controllers')
| -rw-r--r-- | addons/web_editor/controllers/main.py | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/addons/web_editor/controllers/main.py b/addons/web_editor/controllers/main.py index 603509480f0..907b86e57f0 100644 --- a/addons/web_editor/controllers/main.py +++ b/addons/web_editor/controllers/main.py @@ -173,7 +173,16 @@ class Web_Editor(http.Controller): if attachment.type == 'url': raise UserError(_("You cannot change the quality, the width or the name of an URL attachment.")) if copy: + original = attachment attachment = attachment.copy() + attachment.original_id = original + # Uniquify url by adding a path segment with the id before the name + if attachment.url: + url_fragments = attachment.url.split('/') + url_fragments.insert(-1, str(attachment.id)) + attachment.url = '/'.join(url_fragments) + elif attachment.original_id: + attachment.datas = attachment.original_id.datas data = {} if name: data['name'] = name |
