PURPOSE
Review the tips and digest layout design to make sure they have a WOW effect
and increase trial conversion/retention.
SPECIFICATIONS: LAYOUT
Besides changing the tips, a cleaning of digest layout was performed. Emails
were reported to look not neat in Outlook and somewhat random in mail.com or
gmail.com.
Most recent HTML CSS cannot be used to make HTML emails because each email
provider renders emails its own way. This means a given email may renders
differently in gmail.com and outlook.
The layout of the email was composed of several levels of embedded tables
which means huge maintenance effort. So it was totally rewritten with divs
and CSS, but some properties are not taken into account.
A lot of page component improvements were done. It consisted in replacing most
of the style attribute in tags with CSS classes and ids. This step is
especially useful for tip formatting because before, if a style modification
was needed, it had to be performed on each tip individually.
SPECIFICATIONS: TIPS
“Speed up your workflow with shortcuts”
“Click on an avatar to chat with a user”
“A calculator in Odoo”
“How to ping users in internal notes?”
“Knowledge is power”
LINKS
Task ID-2274264
COM PR: odoo/odoo#53580
ENT PR: odoo/enterprise#1139
X-original-commit: 04aa36da30c107e482935b1673374c9302e4cf6a
Before this commit, the field badge could overflow from its boundaries
and have part of its pill/text hidden.
Now, the "overflow" mixin has been applied and the badge is properly
contained.
closesodoo/odoo#55806
X-original-commit: f4b672bfcf21c7c7f0b6071a8dd18bd6e966266b
Signed-off-by: Aaron Bohy (aab) <aab@odoo.com>
Signed-off-by: Julien Mougenot (jum) <jum@odoo.com>
Before this commit, if you don't have the sale access right, when you arrive on
main website menu, the dashboard try to load some utms data and will fail with
a traceback.
Now we don't render utm graph it you don't have the sale access right
This commit closesodoo/odoo#54695closesodoo/odoo#55801
X-original-commit: 8123bbc622dc21100828b1ab0bbe3cb4367b24b1
Signed-off-by: Jérémy Kersten (jke) <jke@openerp.com>
The present commit allows to display sample data in the reporting views and effectively
enable them in several graph views. Moreover, many action helpers have been added
across all applications. With this, we hope to facilitate the onboarding of the new users.
Task IDs: 2282196, 2311486
closesodoo/odoo#54453
Related: odoo/enterprise#11835
Signed-off-by: Aaron Bohy (aab) <aab@odoo.com>
Co-authored-by: Mahendrasinh Barad <mba@odoo.com>
Co-authored-by: Aaron Bohy <aab@odoo.com>
Co-authored-by: Mathieu Duckerts-Antoine <dam@odoo.com>
The attribute 'sample' is now also available for the reporting views
(the cohort, dashboard, graph, and pivot views). Here, we simply extend
the existing doc on the attribute.
Task ID: 2282196
Before this commit we cehck first if user was publisher before to check if the
exception was a 404 NotFound.
What's means that we make this check (1 query sql) most of the time for no
reason, and worst case, when the exception crashes the cursor, this check will
reraise a new exception because isPublisher check is done with a closed cursor.
closesodoo/odoo#55789
X-original-commit: 8afa25a9ca3b165033ab664ce3185c453fb2dd85
Signed-off-by: Jérémy Kersten (jke) <jke@openerp.com>
The SampleServer picks a random value for selection fields. As a
consequence, field 'activity_exception_decoration' is always set,
either to 'warning' or 'danger'. When this field is set, widget
'ListActivity' (set on 'activity_ids') displays 'Warning', whatever
the value of 'activity_ids'. This means that with sample data, the
next activity field always displays "Warning", which is not great.
This special case has been handled in web, as it is the first (and
only) one. In the future, if we have to implement several special
cases like that, we'll setup a proper hook to allow external
modules to define them from the outside.
Task 2316726
closesodoo/odoo#55703
Signed-off-by: Mathieu Duckerts-Antoine <Polymorphe57@users.noreply.github.com>
PURPOSE
Archiving a course should also archive its content, and unpublish it as it
should not be accessible from outside. Improve archive / publish management
between a course and its slides.
SPECIFICATIONS
Show the content of an archived course having archived slides. When slides and
course are archived its content should still be displayed. This is done using
an active test in context of field.
Propagate channel archive to content. Also unpublish archived slides.
LINKS
Continuity/IMP of task-2170708
Task-2225598
closesodoo/odoo#52233
Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
Enable MTO route at the start of main flow tour since it's used
by it. Also fix a small bug when the form view is open from a
create edit where the route are hidden.
closesodoo/odoo#55790
Signed-off-by: Arnold Moyaux <amoyaux@users.noreply.github.com>
A previous commit has paved the way for displaying sample data in the
reporting views. The present commit brings the required changes in
community to have sample data in dashboard views.
Task ID: 2282196
Co-authored-by: Aaron Bohy <aab@odoo.com>
Co-authored-by: Mathieu Duckerts-Antoine <dam@odoo.com>
A previous commit has paved the way for displaying sample data in the
reporting views. The present commit brings the required changes to have
sample data in pivot views.
Task ID: 2282196
Co-authored-by: Aaron Bohy <aab@odoo.com>
Co-authored-by: Mathieu Duckerts-Antoine <dam@odoo.com>
A previous commit has paved the way for displaying sample data in the
reporting views. The present commit brings the required changes to have
sample data in graph views.
Task ID: 2282196
Co-authored-by: Aaron Bohy <aab@odoo.com>
Co-authored-by: Mathieu Duckerts-Antoine <dam@odoo.com>
The present commit brings the global changes necessary to have sample
data in the reporting views. This includes several modifications/
fixes of the sample server (many of them for better visual results).
Task ID: 2282196
Co-authored-by: Aaron Bohy <aab@odoo.com>
Co-authored-by: Mathieu Duckerts-Antoine <dam@odoo.com>
This commit changes the API of the SampleServer's mock
registry s.t. one can register a mocked version of a method,
whatever the model. The former API required a specific
model to be specified, and only applied on this model.
However, in order to enable the sample data feature on the
cohort view, the 'get_cohort_data' method needs to be
mocked, whatever the concerned model.
One can now register mocked methods for a specific
model only (with key 'model/method') or for every
models (with key 'method').
Task ID: 2282196
Having a non paid membership for last year and being associate with
someone having a non paid membership was dispalying an 'old' membership
state instead if a 'non' membership.
Assumption:
If an associate member is added, take the state of the associate member
(tooltip of associate member).
In case the associate member is a 'non member', it's stupid to associate
with someone that is paying or have paid as it won't consider the state of
the current paid member, the link has to be made on the other side:
the 'non' paying will be associate with the 'paid'.
Create membership for
a/ 2019 (1jan to 31dec)
> For the calculation of the 'old' state
b/ 2020 (1jan to 31dec)
> For the calculation of the 'paid' state
Create few res.partner:
AA: No associate.
2019 - Paid
2020 - Paid
>> Paid member
(= ok)
CC Case 1:
Associate with AA
2019 - Invoiced (but not paid)
2020 - None
>> Paid member due to association with AA
(= ok)
CC Case 2:
Not associate:
2019 - Invoiced (but not paid)
2020 - None
>> Before fix: Old member
(= nok)
>> After fix: Non member
(= ok) As he never paid and not linked to someone that paid.
DD: Associate with AA
2019 - Invoiced not paid
2020 - Paid
>> Paid member (with or without association with AA)
(= ok)
EE Case 1:
Not associate:
2019 - Paid
2020 - None
>> Old member
(= ok)
Case 2:
Associate with DD
2019 - Invoiced (not paid)
2020 - None
>> Paid member (due to association with DD)
(= ok)
Case 3:
Associate with CC
2019 - Invoiced (not paid)
2020 - None
>> Before fix: Old member (due to none having a current 2020 invoiced)
(= nok it should take the state of CC)
>> After fix: Non member (as CC is not a member)
opw-2287050
closesodoo/odoo#55773
X-original-commit: 5e7b7b0a645bcff175bf8d2483eae5ffd4aaf89b
Signed-off-by: agr-odoo <agr-odoo@users.noreply.github.com>
Before this Commit, Datetime on warning was not formatted based on User's lang.
With this commit, we use `format_datetime` to correctly format Datetime.
X-original-commit: b1bc2ba4a986bf7bce242496f822f9891937c9cf
Some interventions are done on a regular basis (e.g. maintenance of
fire alarms, safety inspections). Having tasks auto-generate would
facilitate the process and would ensure that the next intervention
isn't missed/forgotten.
closesodoo/odoo#55517
Taskid: 2172156
Related: odoo/enterprise#12246
Related: odoo/upgrade#1604
Signed-off-by: Yannick Tivisse (yti) <yti@odoo.com>
Before this commit, the search panel was subject to some inconsistencies
when dealing with a category having enabled counters and with a filter
defining a "domain" attribute. Indeed, the counters could be in an
incorrect state if the right filters/categories were not loaded first,
with no simple way in doing so.
The search panel being complex enough as it is, we decided to disable
all categories' counters in the presence of a filter having a "domain"
attribute regardless of said domain.
closesodoo/odoo#55734
X-original-commit: e78f777bd8ccb314b85451cbc8d1dd9109997d7a
Related: odoo/enterprise#12341
Signed-off-by: Aaron Bohy (aab) <aab@odoo.com>
Add a setting direction for the parallax. "Top to Bottom" or "Bottom to
top". The new one was actually a specific theme option that we lost
somewhere between Odoo 8.0 and Odoo 13.0. This is now standard.
Part of https://github.com/odoo/odoo/pull/47313
task-46147
*: web_editor, website_blog
Unfortunately, this feature revealed a new batch of flaws in the
editor widgets system so some hacks were made to make it work. We will
always have the time to improve the pure technical side later.
This commit also separates the notion of color filter from the notion
of parallax. A color filter can now be applied independantly, when
there is either a background image or a background video. Applying a
color filter on top of a background video is actually a new feature.
Applying a color filter on top of a background image is actually now
achievable by two different ways: this new color filter layer or by
applying the color transformation on the image itself via the related
option. Depending on the user case, both could make sense at the same
time, but more importantly: having a CSS color filter is useful for
using those for default Odoo content (e.g. like the current contact us
page where we use a cover banner with an image with a black filter on
top of it: doing that without CSS color filter would mean to alter the
image directly which would not be ok when the user changes the image).
Also, sometimes you want the unfiltered image on a page and the exact
same one but filtered on another (for example: forum images).
Note: this commit also "fixes" an issue: the optimization feature for
images when parallax was enabled was not available before.
Part of https://github.com/odoo/odoo/pull/47313
task-46147
In stock:
1. remove string of action_show_details button, only show icon
2. late filer have been megered with planning issues filer,
update the name. (also in mrp)
3. add width to json_lead_days_popover field to show it properly
4. change inventory adjustment empty screen image.
In purchase:
1. in reminder mail, show "undefined" when no date. This will
only be shown in preview. When no date, we won't send reminder mail to
the vendor.
2. remove old book icon for document in setting.
3. check if there is date_planned when craete a confirm date url
4. RFQs late filter now show all late RFQs with in state "draft",
"sent", and "to approve".
5. improve the the words in KIP and empty screen and list view
Task 2298950
PR #55155closesodoo/odoo#55740
Related: odoo/enterprise#12344
Signed-off-by: Arnold Moyaux <amoyaux@users.noreply.github.com>
Before this commit, when we doing the tour. If we move the mouse fast
enough. We may trigger the tip_consumed event before its
_transitionEndTimer call its callback to update the position, and a
bubble will be left there.
In this commit, we clear the _transitionEndTimer timeout before we
destory the widget to prevent the issue.
Task 2298950
PR #55155
Before this commit, when we manually create a PO line, the
propagate_date will always be false. So the change on scheduled date
will never pass to corresponding move.
After this commit, when create a PO line, if no propagate_date for it,
we find if the product has a route with a buy rule. If yes, use the
setting on its first buy rule, if no, set the default to be true.
Task 2298950
PR #55155
This commit adds smart date inputs for date and datetime fields.
The goal of smart date input is to provide the user some shortcuts
when setting dates.
The rule is [+-]\d+[dwmy]?
So we can enter inputs like:
+3 to have today + 3 days
-2w to have today - 2 weeks
+1y to have today + 1 year
+5m to have today + 5 months
-4d to have today - 4 days
closesodoo/odoo#55602
Task: 2270347
Signed-off-by: Aaron Bohy (aab) <aab@odoo.com>
Followup on 7416340e0ff96bdabb0578f9c1eccd79baf83e17
Before this commit, The warning on deleting Bank statement was referring to only Open Point of Sale session, while we are checking for any linked Session on Bank statement.
Now we show a warning of Linked Point of Sale session.
closesodoo/odoo#53360
Signed-off-by: pimodoo <pimodoo@users.noreply.github.com>
Before this commit, the browser didn't send cookies for manifest
and the server didn't have the session ID to get the db name for the
following request: "/event/manifest.webmanifest"
After this commit, we force the browser to send cookies for the manifest.
> The request for the manifest is made without credentials
> (even if it's on the same domain), thus if the manifest requires
> credentials, you must include crossorigin="use-credentials" in the
> manifest tag.
Ref: https://web.dev/add-manifest/
Steps to reproduce:
* Open Chrome Mobile
* Go to the Event (Front End)
* Inspect with DevTool (the manifest's request don't have cookies) -> BUG
closesodoo/odoo#55762
X-original-commit: 00039aa46f9bcd3998de1e31646b8d15927fda06
Signed-off-by: Adrien Dieudonné (adr) <adr@odoo.com>
This commit fixes the error when opening a session when large scroll
bars is activated in the config.
closesodoo/odoo#55751
X-original-commit: ab2301c032bc146410762efd0c7c2a5b10801b4b
Signed-off-by: pimodoo <pimodoo@users.noreply.github.com>
Currently, When some one start the timer and click on stop button at
that time it was first stop the timer by super method and then open
the time dialog so timer vanishes and the Start button is displayed again.
After this commit, when click on stop button do not stop the timer by
calling super method of mixin just open the dialog with minutes spent
and on click of SAVE in dialog stop the time and unlink
the related timer entry and on click of CANCEL of dialog
it will not stop the timer.
closesodoo/odoo#55744
Task-id: 2230217
X-original-commit: 96bc68be7f6eae7845c3c5c228b3af34a7f75864
Related: odoo/enterprise#12347
Signed-off-by: Yannick Tivisse (yti) <yti@odoo.com>
PURPOSE
Subject field on mailing has not the same use in email marketing (subject of
emails) and in SMS maketing (used internally as there is no subject in SMS).
Purpose of this commit is to improve mailing form view to better distinguish
email and SMS flows. Also improve use of emojis in subject and text content.
SPECIFICATIONS
This merge adds emojis to base SmsWidget in order to use a text field with
both sms and emoji widgets in "mass_mailing_sms" module for sms content.
The emoji feature is optional (depends on "enable_emojis" attribute). We
also adjust the css of emoji widget to make it suitable for a text field with
sms option.
This merge changes helper for mailing subject and update its label according
to mailing_type (mail or sms), as well as the sms content field to enable emoji
support in mailing subjects. This is done through a fake sms_subject field
that is a text without emojis while standard subject allows emojis. Helpers
depends on the displayed field.
Override CRUD to synchronize sms_subject on subject to have only one field
used to store data.
Also allow emojis in SMS content, suing the enable_emojis option.
LINKS
Task ID-2224393
PR #49096
Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
Form sheet with hidden overflow (added to improve ribbon widget css) prevents
emoji button from showing emoji list when clicked. This commit attempts to
show the complete emoji dropdown by removing overflow from the sheet container.
IMPORTANT : This override won't affect ribbon since the hidden overflow was
added on the widget itself.
Task ID-2224393
PR #49096
PURPOSE
Subject field on mailing has not the same use in email marketing (subject of
emails) and in SMS maketing (used internally as there is no subject in SMS).
Purpose of this commit is to improve mailing form view to better distinguish
email and SMS flows.
SPECIFICATIONS
This commit changes helper for mailing subject and update its label according
to mailing_type (mail or sms), as well as the sms content field to enable emoji
support in mailing subjects. This is done through a fake sms_subject field
that is a text without emojis while standard subject allows emojis. Helpers
depends on the displayed field.
Override CRUD to synchronize sms_subject on subject to have only one field
used to store data.
Also allow emojis in SMS content, suing the enable_emojis option.
LINKS
Task ID-2224393
PR #49096
This commit adds emojis to base SmsWidget in order to use a text field with
both sms and emoji widgets in "mass_mailing_sms" module for sms content.
The emoji feature is optional (depends on "enable_emojis" attribute). To add
the emoji support, the following changes have been made:
* override the method "on_attach_callback" from emoji widget base code to
hide emojis if not enabled;
We also adjust the css of emoji widget to make it suitable for a text field
with sms option.
Task ID-2224393
PR #49096
Purpose is to clearly distinguish
* common: holding common code for emojis-enabled fields;
* text emoji field: support of emojis in text fields;
* char emoji field: support of emojis in char fields;
Task ID-2224393
PR #49096
This commit attempts to improve emoji widget css and code to make it easily
overridable by other modules. This is done in preparation for extension by the
SmsWidget that will enable the emojis support.
To improve the emoji widget, the following changes have been made
* remove the spacing after emoji fields by setting widget dropdown height to
0 (emoji dropdown has relative position + (height > 0) which leaves an
empty space after widget fields);
* hide Emoji widget when field has "invisible modifier";
* move the code that adds the emoji dropdown to another method, allowing to
better understand code organization;
Task ID-2224393
PR #49096
Before this commit, calendar view's height was 89.5% of its container.
It was because of hr_holidays module which reduces the calendar's
height to add some elements on top of it.
This commit adds a class `o_timeoff_calendar` on calendar view's
controller to scope css rules only in the hr_holidays module and
set the height to a fixed value.
Task id: 2193921
closesodoo/odoo#54268
Related: odoo/enterprise#12183
Signed-off-by: Aaron Bohy (aab) <aab@odoo.com>
This commit adds the parameter `scales` in the calendar view's template.
This parameter can be used to choose which mode(s) is/are allowed.
This commit also refactors the way we manage calendar scales.
Before scales were defined in model and renderer, now it's defined
in the view and given to model, controller and renderer by params.
Task: 2193921