Friday, June 24, 2022
2 changes · master
Enhancements to existing features
Website management and editing now run inside the main Odoo backend through an embedded website preview. This gives users a more consistent experience across Odoo apps, improves mobile preview/editing, and reduces disruptions when navigating or reloading website pages.
Original PR description
*: auth_signup, knowledge, mass_mailing, portal, survey, test_website, test_website_modules, test_website_slides_full, web, web_editor, web_tour, web_unsplash, website_blog, website_crm,…
*: auth_signup, knowledge, mass_mailing, portal, survey, test_website, test_website_modules, test_website_slides_full, web, web_editor, web_tour, web_unsplash, website_blog, website_crm, website_crm_partner_assign, website_customer, website_event, website_event_exhibitor, website_event_meet, website_event_track, website_forum, website_hr_recruitment, website_knowledge, website_links, website_livechat, website_mail_group, website_mass_mailing, website_membership, website_sale, website_sale_autocomplete, website_sale_comparison, website_sale_loyalty, website_sale_slides, website_sale_wishlist, website_slides, website_slides_forum, website_twitter, base A new client action is introduced, to display the website in an iframe. This allows to remove the "frontend" Odoo UI entirely. Everything related to the website configuration (and especially the edit mode) will now be done on the backend side. The idea behind this mainly comes from the fact that we needed the website in an iframe during edition to be able to render a mobile preview properly. It was also required so that options which reloads the page... are able to only reload the page and not the entire editor with it. From there, it was decided that actually, since the website is in an iframe, it could be in the backend and every website UI could rely on this. In the end, this comes with many functional and technical advantages. Here are some of them (a few of them are not entirely done with this merge but will follow the merge in the upcoming weeks, see this as a non-exhaustive list of possibilities that are unlocked by this work): Technical: - No duplicated logic for website UI and backend (purple navbar is the backend one, slightly customized). - No conflicting logic for website UI and website content (like dialog opening, ...). - No forced CSS for our website / web_editor UI, no conflict with website themes. - Everything converted in OWL, in backend code (no special OWL for frontend). - "Legacy" code moved as frontend code or removed. - No website content CSS for the case "when there is the Odoo purple navbar at the top". - Backend views & features available (e.g. creating a new event -> form view instead of custom code with onchanges, validations, etc) Functional: - All website features available while editing your website (product configuration, settings, etc), no switch backend/frontend, no redirection, no reload (just the iframe). - All other app features available while editing your website (discuss, calendar, all other apps, ...). - Typing a website URL in your browser reaches your website (very small Odoo UI overlay at the top left as a connected user). - Mobile preview: directly resizing the website rendering, in edit mode too and with a better phone image. - Editor: mobile view edition (the editor is instanciated around the website content instead of inside of it (iframe)) - Can reload the website without reloading all the tools (editor, html editor, menu edition, etc) (customize_show options for instance -> moved as standard editor options which reloads the website only) - Website UI in your language instead of website language On the backend side, some customizations were done so that the UI feels like it works as before (note that it will be reworked in upcoming weeks): - A `website_systray` registry is defined to replace the systray items with the website's one when previewing the website. - The webclient's navbar is patched to display additional dropdown menus related to the website edition. - A website service that holds the global state of the website is introduced. Components from the systray and the dropdown menus can access and modify it. - A component adapter for the wysiwyg (that will display the snippets menu) is added, that allows for caching the wysiwyg libraries, thus improving editions responsiveness. See sub-commits for details. This work is known to not be bug-free and will be bug-fixed, improved and reworked in the upcoming weeks. task-2687506 Related: https://github.com/odoo/enterprise/pull/28448 Related: https://github.com/odoo/design-themes/pull/572 Related: https://github.com/odoo/upgrade/pull/3464 Thanks to the whole team for reviewing and testing ! (ARD, BVR, BSO, GDI, MOU, PDE, QSM, RDE, SOBO, YOL) Co-authored-by: Younn Olivier <yol@odoo.com> Co-authored-by: Arthur Detroux <ard@odoo.com> Co-authored-by: Mehdi Outagant <mou@odoo.com> Co-authored-by: Benjamin Vray <bvr@odoo.com>
Website editing tools and related menus are being moved from the public website interface into the Odoo backend. This makes content creation, appointment setup, media selection, and customization more consistent across apps while cleaning up older website editing assets.
Original PR description
*: planning, web_studio, website_appointment, website_helpdesk, website_sale_renting, website_sale_renting_comparison, website_sale_renting_wishlist, website_sale_stock_renting, website_twitter_wall See community counterpart for more details. task-2687506 Related: https://github.com/odoo/odoo/pull/89223 Related: https://github.com/odoo/design-themes/pull/572 Related: https://github.com/odoo/upgrade/pull/3464 Co-authored-by: Younn Olivier <yol@odoo.com> Co-authored-by: Arthur Detroux <ard@odoo.com> Co-authored-by: Mehdi Outagant <mou@odoo.com> Co-authored-by: Benjamin Vray <bvr@odoo.com>