Commit Graph
5985 Commits
Author SHA1 Message Date
qsm-odoo 4f64fa3e78 [FIX] website: prevent saving multiple times in a row
While waiting for a better and more robust fix in the editor itself,
this prevents to hit the save button of the website editor while a save
is in progress.

closes odoo/odoo#52540

Signed-off-by: Quentin Smetz (qsm) <qsm@odoo.com>
2020-06-05 16:34:23 +00:00
fja-odoo d2efb09608 [IMP] website, *: deactivate unused views
* = website_blog, website_form

These views are part of the new snippet compatibility system and should
be deactivated. They only remain for compatibility.

active is a noupdate field so all deactivated views will remain active
when updating to this version. Only new install will have the views
deactivated.

task-2250388

closes odoo/odoo#52438

X-original-commit: 4c844697cd1aa3a461b576363d25af54a3b650cc
Related: odoo/design-themes#294
Signed-off-by: Quentin Smetz (qsm) <qsm@odoo.com>
2020-06-04 13:58:17 +00:00
Elisabeth DickinsonandThibault Delavallée 50b9798074 [IMP] website: make tips bioutifoul, and add moar tips
PURPOSE

Make digest email and tips more appealing. The goals of these tips are

  * to encourage the adoption of other apps (Did you know ?);
  * to make Odoo look more fun (Fun tips and tricks, young and dynamic style);
  * to show social proof and increase trust (emphasis on already existing
    projects / customers to);

SPECIFICATIONS

Add a tip about SEO.

LINKS

Task ID 2197417
PR odoo/odoo#51619

Co-Authored-By: Elisabeth Dickinson <edi@odoo.com>
Co-Authored-By: Thibault Delavallée <tde@odoo.com>
2020-06-04 15:20:14 +00:00
DramixDw 0f2cada323 [IMP] website_blog: use postlink for the tag cloud
Refactoring the tag cloud to make it work with post request.
Disallow multi-tag in get for bot indexation.

task-2250385
2020-05-29 15:09:42 +00:00
DramixDw 714f0aa07f [IMP] website: reintroduce a way to post from js
It was deleted in 11.0 as it was not used anymore. Now, it is
reintroduce as it is a nice utility function for some external app or
fixes. Here, it is use so that /website/add and /website/add/<path> work
as a controller POST with a CSRF token.

task-2241766
2020-05-29 13:59:15 +00:00
fja-odoo 7630ef3388 [IMP] website: add tests for website_visitor
website visitor testing had some flaws.

task-2079873

closes odoo/odoo#52281

X-original-commit: 4e5f049e48f06eb4be2a9972d06167e68bba1d61
Signed-off-by: Jérémy Kersten (jke) <jke@openerp.com>
2020-06-02 16:08:43 +00:00
stefanorigano (SRI) aa867ba702 [IMP] website, *: define 17 generic color palettes
*: web_editor

Those will be shared by all themes.

Part of https://github.com/odoo/odoo/pull/52224
task-2197038

closes odoo/odoo#52224

Related: odoo/design-themes#290
Signed-off-by: Quentin Smetz (qsm) <qsm@odoo.com>
2020-06-02 15:29:50 +00:00
qsm-odoo e505ed2833 [IMP] website, *: allow color palette selection
*: web_editor

Note: on color palette change, all the colors of the user are reset and
he is warned about it.

Part of https://github.com/odoo/odoo/pull/52224
task-2197038
2020-06-02 15:29:33 +00:00
stefanorigano (SRI) 257a21abd7 [IMP] website, *: refine default theme design
*: web_editor

Part of https://github.com/odoo/odoo/pull/52223
task-2197038
2020-06-02 12:17:23 +00:00
qsm-odoo 00f70f7936 [IMP] website, *: allow to use a color preset for menu and footer
*: web_editor, web

Also now allows to control the copyright section color.

This commit also allows to use color name alias when the user choose
one of the 5 main colors or a gray color for one component (e.g. if the
user picks 'o-color-1' as the color for its text in preset 4, then it
will no longer be linked to the current css color of 'o-color-1' but to
'o-color-1' directly; meaning that if that color changes in the future,
so will the text of preset 4).

Part of https://github.com/odoo/odoo/pull/52223
task-2197038
2020-06-02 12:17:23 +00:00
stefanorigano (SRI) 549801c9c3 [IMP] website: add a demo page to test color combinations classes
Part of https://github.com/odoo/odoo/pull/45856
task-2197038

closes odoo/odoo#45856

Related: odoo/upgrade#1211
Related: odoo/enterprise#10200
Related: odoo/design-themes#218
Signed-off-by: Quentin Smetz (qsm) <qsm@odoo.com>
2020-06-02 09:42:19 +00:00
Cocographiqueandqsm-odoo 5953c4df6b [IMP] website: use color presets on default snippets
Part of https://github.com/odoo/odoo/pull/45856
task-2197038

Co-authored-by: qsm-odoo <qsm@odoo.com>
2020-06-02 09:42:19 +00:00
qsm-odoo 55c90cc9fa [IMP] website, *: allow presets user edition
*: web, web_editor

Now, the user can edit each individual component of each color preset
thanks to the third tab of the left panel. The edition of the first
preset is the same as the others for the users but it is actually
also used for "no-preset" areas, meaning that they impact the whole
website by default (*without impacting the other presets*). The website
thus appears as areas using presets, preset 1 being the default (in the
future all areas will be customizable with a different preset). The only
difference between "using preset 1 explicitely" and "not using a preset"
will be that background color is transparent in no-preset, leaving the
body background appear. If the body background has no image, then there
is no difference at all as the background color of the body is set to be
the background color of the preset 1. In boxed mode, that color is used
for the "box" and the website body uses a different customizable color.

Note: before this commit, the "text" color edition was used to set the
main text color and one of the constrasting color for the color-yiq
function (the darkest if a dark color or the lightest if a light color).
That last part has been removed and automatic colors will now always
use $gray-900 and $white as contrasting colors, unless changed by the
theme explicitely. This needed to be removed as now the "text color"
edition has been moved in the "preset 1" config and should thus only
impact the "no-preset / preset 1" areas instead of all the presets.

Part of https://github.com/odoo/odoo/pull/45856
task-2197038
2020-06-02 09:42:19 +00:00
qsm-odoo 7736cde22c [IMP] web_editor, website, *: use new color names
*: mass_mailing, website_blog, website_forum, website_hr_recruitment

Deprecate alpha, beta, gamma, delta and espilon color names and now use
a new color system: o-color-x, with x from 1 to 5.

This will allow to review the colors of all themes to have nice visuals
for the new color combinations classes, without breaking the current
uses of bg-alpha, alert-delta, etc in current websites of customers
(by keeping the old color and classes for compatibility).

This will also allow to uniformize all themes under the same conventions
to enforce BS color override:
- o-color-1 used as primary (as before, for alpha)
- o-color-2 used as secondary (as before, for beta)

Before, some themes were not following the 2 guidelines. The users
using those themes will simply have the possibility to choose o-color-1
and o-color-2 colors accordingly to restore their website without
breaking the new system features.

Another change is that those colors are defined through color palettes
and not theme color palettes. This will avoid them to generate automatic
bootstrap classes which we don't want (alert, btn) and generate the one
we want by ourself.

Note: for mass mailing, the colors and classes also have been renamed
but the system stays unchanged.

Part of https://github.com/odoo/odoo/pull/45856
task-2197038
2020-06-02 09:42:19 +00:00
qsm-odoo d9c4d928f7 [IMP] web_editor, *: integrate new o_cc${xxx} classes in the colorpicker
*: website

Part of https://github.com/odoo/odoo/pull/45856
task-2197038
2020-06-02 09:42:19 +00:00
qsm-odoo 69190959ce [IMP] website, *: introduce new classes to color snippets
*: web, web_editor, website_blog, website_event

New o_cc${xxx} classes where ${xxx} is a number [1-5] to style snippets:
they come with a background color, a text color, headings colors, a
link color, primary button colors and secondary button colors which
will later be possible to customize by the user.

The classes are made so that they are working on two levels. So if a
column receives a color class and the snippet too, everything will work
fine. More than 2 levels are not supported and the editor is made so
those cases should not appear. See o_colored_level class.

Part of https://github.com/odoo/odoo/pull/45856
task-2197038
2020-06-02 09:42:19 +00:00
qsm-odoo 0281c951f2 [IMP] website: remove the old color palette *re*generation
Changing 'alpha' does not change the other colors which have been chosen
by the user. If only 'alpha' is chosen by the user, then the other
colors are still adapted accordinly (compatibility).

Part of https://github.com/odoo/odoo/pull/45856
task-2197038
2020-06-02 09:42:18 +00:00
Nasreddin (bon) 31b9c40124 [FIX] website : Wrong 308 redirect
Issue

	- Install "Website" app
	- Go to Website->Configuration->Redirect
	- Click on Create
	- Set "Action" to 308
	- Set "Url to" to nothing or any url
	  with no leading '/'

	The DB is broken.
	Error in 'werkzeug' python library.

Cause

	Missing leading slash in url or empty url.

Solution

	Add a counstraint to check if url is valid (not empty and
	with a leading slash).

opw-2266935

closes odoo/odoo#52189

X-original-commit: fe1e76638132197ef4804d1261fb5b9e23d44159
Signed-off-by: Nicolas Martinelli (nim) <nim@odoo.com>
2020-05-29 15:23:09 +00:00
qsm-odoo 78d5b744f5 [IMP] website, *: introduce a way to define outline buttons by default
*: web, web_editor

Disable the automatic generation of bootstrap color buttons and do it
ourself with a tweak: we introduce btn-fill-* (working as the normal
btn-* classes (in opposition to btn-outline-* classes). We then map
btn-* classes to either btn-fill-* or btn-outline-* classes depending
on the configuration (with a sass extend).

Part of https://github.com/odoo/odoo/pull/52220
task-2197038

closes odoo/odoo#52220

Related: odoo/design-themes#288
Signed-off-by: Quentin Smetz (qsm) <qsm@odoo.com>
2020-06-01 10:48:53 +00:00
qsm-odoo 18294864ab [IMP] website, web: add link decoration option
Also extend bootstrap to not use that style on specific elements like
btn, dropdown-items, etc.

Part of https://github.com/odoo/odoo/pull/52220
task-2197038
2020-06-01 10:48:22 +00:00
qsm-odoo be6a8cfde7 [IMP] website, web, *: allow to choose website font-size
*: web_editor

Note: this work also prepare the code to be able to support different
font configs per font family.

Part of https://github.com/odoo/odoo/pull/52220
task-2197038
2020-06-01 10:48:08 +00:00
qsm-odoo d345bc4df7 [IMP] website: reorganise secondary_variables.scss file
Future changes will require a different order of the code in that file.
This commit only reorganises the file to make future code review easier.

Part of https://github.com/odoo/odoo/pull/52211
Related to task-2197038

closes odoo/odoo#52211

Signed-off-by: Quentin Smetz (qsm) <qsm@odoo.com>
2020-05-31 13:37:25 +00:00
qsm-odoo 43557ecbc7 [IMP] web_editor, website: add loading effect in left panel editor
The goal is to reduce loadings as much as possible but there will
always be some. So that loadings do not appear as bugs and give users
some feedback that they are ongoing, this commit adds a loading effect
during the loading of some actions.

Part of https://github.com/odoo/odoo/pull/52211
Related to task-2197038
2020-05-31 13:36:25 +00:00
fja-odoo ad828f4042 [IMP] website: use groups_id for visibility
visibility_group was used for visibility, we now use the groups_id field.
groups_id is a M2M field while visibility_group was a M2O field resulting
in an issue to display the M2M field in the frontend. We decided to
allow editing the groups as a M2O in the frontend. If there is more
than one group the user will have to go through the backend to edit.

task-2264580

closes odoo/odoo#51846

Related: odoo/upgrade#1260
Signed-off-by: Jérémy Kersten (jke) <jke@openerp.com>
2020-05-29 08:22:34 +00:00
qsm-odoo b27a6f98ca [IMP] website: do not load ace editor library when opening theme tab
The ace editor library was loaded as soon as the theme tab was opened
while it is only useful for the related <head/> option in there -> we
now load it only if that option is used. This was introduced with the
feature at [1].

[1]: https://github.com/odoo/odoo/commit/560e3af48ab9327b49a8cf44a9b0416dfb5b95de

closes odoo/odoo#52124

X-original-commit: 989c256aabeaa55d7b5ecb26614cc2c2578f71e6
Signed-off-by: Quentin Smetz (qsm) <qsm@odoo.com>
2020-05-28 15:46:42 +00:00
qsm-odoo e2cf0a2358 [FIX] website, *: review theme tab creation + switching
*: web_editor

When clicking on the theme tab on an empty page, a scrollbar appeared
and stayed. This was because the fake `<theme/>` element was focused and
the overlay positioned randomly outside of the page.

This commit fixes that by simplifying the code and always hiding the
related overlay. This commit also makes sure the onFocus/onBlur method
of the theme options are called consistently, even though they are
probably not useful.

Part of https://github.com/odoo/odoo/pull/52081

closes odoo/odoo#52114

X-original-commit: 7760898de4e14fa30db1db87dfa05276bfcaa2bb
Signed-off-by: Quentin Smetz (qsm) <qsm@odoo.com>
2020-05-28 14:32:25 +00:00
Denis Ledoux 7b8d12e6dc "[REVERT] website_theme_install: do not mark theme views as arch_updated when loaded from data files"
This reverts commit fdd4a143f2148ec5f4aeea80fecd3138fea95dc6.

See discussion in #51969

closes odoo/odoo#52028

X-original-commit: 0e602cc0ac295621864b50509f78bd5de1e61718
Signed-off-by: Denis Ledoux (dle) <dle@odoo.com>
2020-05-27 19:59:30 +00:00
qsm-odoo b76af0758e [FIX] website: remove footer top border
The footer of Odoo is composed of 3 main elements: a <footer/> with a
.oe_structure and the footer copyright inside. The footer had a
transparent top border which was there for technical reason: making sure
the .oe_structure content was "1px" below the end-of-page content so
that dropping a snippet at the end of page but also in the footer was
possible (otherwise the dropzones would be at the exact same position).

This border which was invisible at the time may now become visible in
more cases so we have to remove it. Another hacky solution is made to
replace the old one, while remembering the footer usability is being
reviewed anyway.

Related to task-2197038

closes odoo/odoo#51997

Signed-off-by: Quentin Smetz (qsm) <qsm@odoo.com>
2020-05-27 14:07:06 +00:00
Denis Ledoux 4fc0f2c042 [FIX] website_theme_install: do not mark theme views as arch_updated when loaded from data files
A view is marked as `arch_updated` if `arch` is being written on it
and `install_filename` is not in the context:
https://github.com/odoo/odoo/blob/7b1a6c00663239fbbab3d8ea5028e0825f4eb0dd/odoo/addons/base/models/ir_ui_view.py#L460-L461

When a view is being updated from a `theme.ir.ui.view` through `_update_records`
https://github.com/odoo/odoo/blob/7b1a6c00663239fbbab3d8ea5028e0825f4eb0dd/addons/website_theme_install/models/ir_module_module.py#L29
https://github.com/odoo/odoo/blob/7b1a6c00663239fbbab3d8ea5028e0825f4eb0dd/addons/website_theme_install/models/ir_module_module.py#L92
https://github.com/odoo/odoo/blob/7b1a6c00663239fbbab3d8ea5028e0825f4eb0dd/addons/website_theme_install/models/ir_module_module.py#L208
https://github.com/odoo/odoo/blob/7b1a6c00663239fbbab3d8ea5028e0825f4eb0dd/addons/website_theme_install/models/ir_module_module.py#L168

we can basically consider it comes from a data file,
the template is updated, and its copies as well if the copies are "unchanged"
and therefore the `arch_updated` should not be set to `True` in such as case,
as the goal of this flag is to mark the view as `arch_updated` if it was updated by the user,
not from a data file loading.

Because the views are marked as `arch_updated`,
in 13.0, when updating the theme view "templates" (`theme.ir.ui.view`),
the copies are not being updated even if they have been left untouched:
https://github.com/odoo/odoo/blob/23511dffb9e3f597a7df9bb834d008f74abb07b8/addons/website_theme_install/models/ir_module_module.py#L165-L166

This is really problematic for upgrades, as the "copies" (the themes views) are not updated
according to the latest changes in the xml files, even if the views have been left untouched by the user.

For instance, this change in the common theme:
odoo/design-themes@29da153784
is never updated in databases, resulting in the below traceback
```
ValueError: Element '<xpath expr="//div[@data-js='content']">' cannot be located in parent view

Fout context:
Weergave`s_badge_options`
[view_id: 2103, xml_id: n/b, model: n/b, parent_id: 901]

load could not load template
ValueError: Element '<xpath expr="//div[@data-js='content']">' cannot be located in parent view
```

opw-2255753

closes odoo/odoo#51969

X-original-commit: 614214a08b7e19605228c96fbdef1a60752ba575
Signed-off-by: Denis Ledoux (dle) <dle@odoo.com>
2020-05-27 10:42:06 +00:00
Samuel Degueldre f5e0727ca5 [FIX] web, *: fix keyboard overlay staying active when alt-tab/clicking
*: website

The keyboard navigation mixin was initially only used in the web-client,
because of this, some of the logic for hiding the overlay was put inside
of the web-client. We recently made keyboard navigation available on
website [1]. The handlers that would hide the overlay when alt-tabbing
or clicking on the page were not registered. This commit fixes that by
making the keyboard navigation mixin register the overlay-hiding
handlers itself.

[1]: https://github.com/odoo/odoo/commit/0b0690a3934cedcab0d5e34373e8d40c2ab25660

closes odoo/odoo#50122

Signed-off-by: Quentin Smetz (qsm) <qsm@odoo.com>
2020-05-25 08:41:49 +00:00
qsm-odoo e3b4f3ddf4 [FIX] website: prevent infinite loop in header animation code
Bug introduced by [1]. When the header starts being animated, the main
padding-top of the page is adapted automatically with JS... but that
JS was actually starting a never-ending loop. This is fixed now.

[1]: https://github.com/odoo/odoo/commit/3defe35a0e4e2097115633797df6898ac2724c66

closes odoo/odoo#51726

X-original-commit: 07ed02608b8f4e3744c5e69c2651aa3df8bdd943
Signed-off-by: bvr-odoo <bvr-odoo@users.noreply.github.com>
2020-05-23 10:17:27 +00:00
Benjamin Vray d3af060ea9 [FIX] website: fix lightbox slideshow in gallery snippet
Before this commit there was a traceback when rendering the lightbox
in the gallery snippet. This bug was introduced by the new media dialog
system.

Related to task-2162952

closes odoo/odoo#51603

X-original-commit: 791ecf72af4a0928a02bf1bbdc269c67fcc3524c
Signed-off-by: Quentin Smetz (qsm) <qsm@odoo.com>
2020-05-20 10:32:59 +00:00
Denis Ledoux d8d54a8fb0 [FIX] website: ease upgrade of menu_dashboard
In revision
https://github.com/odoo/odoo/commit/d81e1b7341a515a9deceb5b20c350d5ecd5c3762#diff-f4faa075b03b31c962d50b453a3a0728L296

The server action `website.ir_actions_server_website_dashboard`
has been moved
from the menu `menu_dashboard`
to the menu `menu_website_dashboard`

To ease the upgrade of `menu_dashboard`
and automatically remove the server action from this menu
this revision forces to empty the action of `menu_dashboard`.

closes odoo/odoo#51576

X-original-commit: babbbc334815272f215d481e8a36b37077e7e668
Signed-off-by: Denis Ledoux (dle) <dle@odoo.com>
2020-05-19 17:26:30 +00:00
fja-odoo 1eb7c577ec [FIX] website_theme_install, base: fix theme update
When a theme module is updated the changes made on a view are considered
as user changes, prenventing the view from being updated in the future.

Fixed by comparing the arch being written with the arch of the original
view. If it is the same the record should not be noupdate.
Plus added a test to make sure the theme views receive theme updates
after being updated once.

Introduced by: https://github.com/odoo/odoo/commit/4acf177b4c55f3a16362cbeafea3d332ef4fe819

closes odoo/odoo#51557

X-original-commit: 221470ab9c9eda3f3a4e2da0fa1a7bb23d6288cc
Signed-off-by: Jérémy Kersten (jke) <jke@openerp.com>
2020-05-19 15:42:55 +00:00
Swapnesh Shah 32cd51f2af [IMP] website: correct filter names
closes odoo/odoo#50969

Signed-off-by: Jérémy Kersten (jke) <jke@openerp.com>
2020-05-18 13:53:46 +00:00
Raphael Collet ea3e39506a [IMP] models: use slots for BaseModel
This restricts the attributes of a BaseModel instance to `env`, `_ids`
and `_prefetch_ids`.  This way, one can only assign fields on a record;
other assignments are programming errors.

This also reduces the memory footprint of records from 168 to 64 bytes
(-62%), and makes their instanciation faster.

closes odoo/odoo#51075

Related: odoo/enterprise#10529
Signed-off-by: Raphael Collet (rco) <rco@openerp.com>
2020-05-18 09:51:43 +00:00
Nasreddin (bon) ba7e7002f8 [FIX] website: Handle multiple homepage with same url and no website
Issue

	- Install website
	- Go to Website->Configuration->Pages
	- Group By "View"
	- Open and edit "Home" view of "My Website 2"
	- Remove "Website" value and save
	- It should list 2 same views for same url and no website
	  under one of the "Home" views
	- Go to Configurations->Settings
	- Create a new website

	Traceback is thrown.

Cause

	When fetching default homepage,
	it retrieve more then one pages and then try
	to assign it as homepage to new website.

Solution

	Limit query to one to get only one homepage.

opw-2252208

closes odoo/odoo#51280

X-original-commit: 0698f3b0ccddf77a6c0c02812bb823da2d21b265
Signed-off-by: Jorge Pinna Puissant (jpp) <jpp@odoo.com>
2020-05-14 15:52:24 +00:00
fja-odoo a72c9adbe5 [IMP] web_editor, *: make Colorpicker a Widget
*: website, web

Move the colorpicker dialog logic into a colorpicker *widget*, which the
colorpicker dialog will now instantiate.

Part of https://github.com/odoo/odoo/pull/46088
task-2195313
2020-05-14 22:45:33 +00:00
Martin Trigaux 64d0dab0a6 [FIX] *: add group_ids where it is needed
Following the previous commit adding access via groups_id
These views are rendered publicly by specific user
2020-05-14 13:59:10 +02:00
Martin Trigaux d879300944 [REM] website: remove lazy template call
Was making a render_template on an arbitrary template
Does not seem to be used anymore
2020-05-14 13:59:10 +02:00
Martin Trigaux d9287caf94 [IMP] *: convert to private methods
render, render_template, load, activity_schedule_with_view,
get_website_pages should all be private:
It should not be possible to render an aribtrary template only with
its name or id

Still need to render some qweb views from js so the method
render_template is kept public.
This explains why the website editor still need read access on
ir.ui.view as we want to allow any snippet to be rendered.
2020-05-14 13:59:10 +02:00
Martin Trigaux 56a8c9e431 [FIX] *: add sudo when accessing views
The method fields_view_get should be the only way to retrieve the view
content. This method is executed in a super-user context.

To avoid retrieving views for a model a user does not have access to
(as it may reveal some informations like name of fields), add a
verification of 'read' rights before retrieving the view content.

Execute _postprocess_access_rights with sudo(False) as this method is
used to evaluate which buttons should be displayed.
Remove the su flag to avoid misleading the user and displaying a
button they won't be able to use.

Retrieving the database id from an view key is not considered as a
sensitive information and get_view_id and viewref can be left as a
public methods.

Add missing sudo when needed

Change _handle_visibility in website to avoid increasing the query
count: Checking the visibility (to fail most of the time) to retry in
sudo was making unecessary queries.
2020-05-14 13:59:10 +02:00
Martin Trigaux ccc98e0169 [IMP] base: remove read access to ir.ui.view
Only system users should be able to access directly ir.ui.view records
Other users should use helper methods like fields_view_get or render
to interact with view records (or use sudo)

Give read access to views to publisher
He needs to call read_template on some views like
'web_editor.colorpicker' in edition mode

Restrict ACL on website.page
Apply the same ACL than on ir.ui.view as the model inherits from it.
Give access to designer to modify views
2020-05-14 13:59:10 +02:00
qsm-odoo 64629a3b4f [FIX] website: allow using bold in blog posts with all fonts
Bootstrap uses `font-weight: bolder` for its `<b>` elements. This is
good... but only works if the "bolder" font is actually referencing
an available one.

Indeed, since we only load 400 and 700 font weights for fonts, see the
following table. CSS values on the left, actual fonts being used on the
right.

```
<p> | <b> | <p> | <b>
----------------------
100   400 | 400   400
200   400 | 400   400
300   400 | 400   400
400   700 | 400   700 -> ok
500   700 | 400   700 -> ok
600   900 | 700   700
700   900 | 700   700
800   900 | 700   700
900   900 | 700   700
```

See how bolder and fallbacks works: [1] and [2].

With most fonts, the rendering of `<b>` was thus only working for elements
using 400 or 500 font-weight. For font-weight > 500, we'll consider
this as a limitation for now: bold area cannot be made bolder.
Font-weights < 400 are however more important as used by some of Odoo
and bootstrap style (e.g. the entire blog posts).

The problem is even deeper as website visitors could have more or
different available font-weights on their computer.

This fix adds the loading of 300 weights for all fonts so that:
- The displayed weights are more consistent across different computers.
- Making a light text bolder through the editor works.

[1]: https://developer.mozilla.org/en-US/docs/Web/CSS/font-weight#Meaning_of_relative_weights
[2]: https://developer.mozilla.org/en-US/docs/Web/CSS/font-weight#Fallback_weights

opw-2226573

closes odoo/odoo#51061

X-original-commit: e7496b923b097f677bef09b890c52b5a680cf53c
Related: odoo/design-themes#277
Signed-off-by: Quentin Smetz (qsm) <qsm@odoo.com>
2020-05-11 15:59:16 +00:00
Jeremy Kersten 3e4b6f939d [FIX] website: use absolute url for theme image
Before this commit, url preview of a theme was theme_xx/static/yyy.png
Now we make this url absolue /theme_xx/static/yyy.png

It was the expected behavior, and since werkeug 15.0 utils.redirect() don't use
'/' anymore as root but the current path.

Without this fix, theme selector uses /web/image/<id>, and the location become
/web/image/theme_xx/static/yyy.png instead of /theme_xx/static/yyy.png

closes odoo/odoo#51018

Signed-off-by: Jérémy Kersten (jke) <jke@openerp.com>
2020-05-11 13:04:39 +00:00
Jeremy Kersten 2344198765 [FIX] website: compute_url should depend of the lang
With this fix, record.with_context(lang='fr').compute_url will have the url
with the slug in french.

Before, it was ignoring the lang since the field was not translatable.
The first compute was stored in cache, and next call just ignore the lang in
the context.

```py
for lang in ['en_US', 'fr_FR']:
    print(record.with_context(lang=lang).website_url)

> "/my-name-1"
> "/my-name-1"
```

now

```py
for lang in ['en_US', 'fr_FR']:
    print(record.with_context(lang=lang).website_url)

> "/my-name-1"
> "/mon-nom-1"
```

closes odoo/odoo#50951

X-original-commit: 43822adef4ee4c44d10786f28af46df4be260cf5
Signed-off-by: Jérémy Kersten (jke) <jke@openerp.com>
2020-05-08 15:55:08 +00:00
Nicolas Lempereur 7252713eac [FIX] website: changing menu sequence clear menu cache
As of 02e01dce51 the website menu is prefetched for the user and saved
in cache.

If the sequence of a menu is changed (eg. with the "Edit Menu" modal on
website), the cache was not cleared so it seemed like this did not work.

With this changeset, changing a menu sequence will clear ormcache.

opw-2244908
closes #50683

closes odoo/odoo#50703

X-original-commit: 8da3276e8b641e615e4c436b4f0f79139d158220
Signed-off-by: Nicolas Lempereur (nle) <nle@odoo.com>
2020-05-05 18:45:58 +00:00
fja-odoo c20423313c [FIX] website, *: fix colorpalette custom colors
*: web_editor

Previously the theme body, text, header, headings and footer colors were
not added to the customs colors of other colorpickers if they were
custom. Now it is the case.
Those colors can be set to a theme color but it will be the css color
of the theme color that will be set, not its name.
This can lead to the custom color being a theme color which was not
checked before as it was not possible. Now it is checked.

Also before the theme tab, if the selected color was custom, it would
always appear in the palette and be marked selected. This is no longer
the case with the like of status colors as their color are
not part of the custom colors available on the color palette. Now we add
the selected color as a custom color to always have the selected marked.

task-2198177

closes odoo/odoo#50766

X-original-commit: d631b27b0bf04e708c16262378ab5729252838fe
Signed-off-by: Quentin Smetz (qsm) <qsm@odoo.com>
2020-05-06 13:49:49 +00:00
Samuel Degueldre e4c3f778cc [FIX] website: don't interpolate null values for css properties
In 29f02a37f0 we bumped the verion of libsass that we use. One
breaking change introduced by the new version is that if a css variable
is interpolated to the empty string, it is still emited in the compiled
css [1]

This commit fixes that by explicitly omitting null values from the map
before looping over it.

[1]: https://sass-lang.com/documentation/breaking-changes/css-vars

task-2248360

closes odoo/odoo#50668

X-original-commit: 6faf327706169bbe31e188a42805085b95b78052
Signed-off-by: Quentin Smetz (qsm) <qsm@odoo.com>
2020-05-05 14:40:18 +00:00
Aaron Bohy 900d162809 [IMP] *: update list views
This commit adapts several views to make them use newly defined
widgets, the new decoration-xxx mechanism on fields, and to adapt
them to the new design of buttons.

Part of task 2195254
2020-05-05 10:05:12 +00:00