Steps to reproduce:
- Go to any contact
- Send message to this contact (in the chatter) with text "test"
- Open the email with Outlook desktop client on Windows
- Reply to the mail (or transfer it)
Issue:
The email preview is displayed in top of the mail;
`test` is displayed twice.
Cause:
Outlook desktop client does not handle well the `display:none`.
Solution:
Set font color to white and set a minimum font size and line height;
the text will still be present, but not noticeable.
opw-3167169
closesodoo/odoo#118440
X-original-commit: 8bcd8186ffb67c1abb57f9316dbbc616ba343e0a
Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
To reproduce
============
on a quotation's description write a description with two or more nested bulletlists
on web it looks good, but when printing the quotation thes nested bulletlists are not
correctly rendered.
Problem
=======
nested bulletlists on report level need style to correct their display
Solution
========
add the style
opw-3196888
closesodoo/odoo#118434
X-original-commit: f7220566fa649ade4ac1db30c81cf5aa6de3f8e4
Signed-off-by: Aaron Bohy (aab) <aab@odoo.com>
Signed-off-by: abla001 <abla@odoo.com>
Steps to reproduce the bug:
- Add an Image Gallery snippet on a the page.
- Stay in edit mode and click on one of the arrows (left or right).
- Bug -> The arrow disappears.
This bug comes from the fact that the "oe_edited_link" class is added
to the anchor of the arrow when clicking on it. Because of the scss
related to this class, the position of the arrow is modified. This bug
is fixed by adding the "o_not_editable" class to the anchor of the
arrow. By doing so, the "oe_edited_link" is not added to the anchor of
an arrow when clicking on it.
task-3147271
closesodoo/odoo#118383
X-original-commit: 92f2a50bbabaa387f557ef8e728796c3b3e6410c
Signed-off-by: Quentin Smetz (qsm) <qsm@odoo.com>
**Before this commit**
Almost all of the use cases of the `usePopover` hook are dealing
with an abnormal amount of complexity:
- they have to store the closing function of the popover, and sometimes
keep track to its opening state,
- you can find a duplication of a useUniquePopover hook, which is
anyway the behavior that is always wanted for popover users.
This is due to the fact that usePopover is just some kind of wrapper
to the lower level popover service.
**After the commit**
- The usePopover now has a new API, which simplifies its usage.
- The useUniquePopover hook implementations have been removed and
this "unique" behavior is now merged into usePopover
and has become the standard one (not configurable).
- All of the use cases have been adapted, even the cases where
components used directly the popover service (through `useService()`).
See the adapted jsDoc around the hook in popover_hook.js
closesodoo/odoo#118066
Related: odoo/enterprise#39654
Signed-off-by: Michaël Mattiello <mcm@odoo.com>
**Before this commit**
The popovers will close on click away.
This makes impossible to start selecting text within a popover
using the mouse and finishing the move outside of the popover
(as it will get closed).
**After this commit**
Popovers will close on mousedown away instead, which is a general
standard for user interfaces anyway.
Part-of: odoo/odoo#118066
**Before this commit**
Only four positions authorized for popovers:
- bottom,
- left,
- top,
- right.
These four positions are by default with the "middle" variant.
But the positioning hook could replace the variant with "start" or "end"
and furthermore the popover already handle those cases to properly
place its arrow.
So it does make sense to authorize all the possible variants as well.
**After this commit**
All the following position are available to popovers:
- {bottom|left|top|right}-{start|middle|end|fit},
- {bottom|left|top|right} (same as {bottom|left|top|right}-middle).
Part-of: odoo/odoo#118066
Since c959386 the calendar filter panel does not
make use of popovers.
So there is no need to call the usePopover hook
in this component's setup.
Part-of: odoo/odoo#118066
Before this commit, the `applyColor` command returned non-connected nodes
(nodes with no parent) in some not well-defined situations, leading to a Warning
when `selection.addRange()` was called by `_processAndApplyColor` with
such non-connected node as argument.
This commit properly removes such non-connected nodes from the array returned
by `applyColor`.
closesodoo/odoo#117166
Signed-off-by: David Monjoie (dmo) <dmo@odoo.com>
A mailing based on the "basic" theme is a particular case where there is
no SnippetsMenu and the floating toolbar is present instead. This commit
includes a tour for this previously untested case/flow.
Part-of: odoo/odoo#117166
Short read version:
This commit gives the Wysiwyg class the attribution of switching between
the two types of text editor toolbar (floating or part of the sidebar),
instead of the SnippetsMenu class, as Wysiwyg owns the Toolbar instance
and has the methods to configure it.
The switching between toolbars is now done by having one instance of each
type (and properly displaying/hiding them), rather than moving the toolbar
element of place in the DOM and reconfiguring it (button handlers, CSS
classes, displayed/hidded buttons, etc), so that the configuration steps
of each toolbar can be done only once.
The floating toolbar is needed for mailings based on the "basic" theme,
where no sidebar/SnippetsMenu is available. Note that it will be only
instantiated if needed.
Long read version:
The 'basic' theme in mass_mailing has no sidebar (SnippetsMenu), so the
floating toolbar should be available instead, in order to give users access
to the text editor's features.
Commit [1] added the `setFolded` method to the SnippetsMenu class, which folds
(hides) the snippets menu and recovers the floating toolbar from the
sidebar container and vice-versa. While the recovered toolbar works well when
`isMobile` is `true` (although with some minor issues described
below), the one for the non-mobile case does not (as it must be properly
reconfigured using the document's Jquery, and not the iframe's, among other
details).
This commit proposes a different approach to the toolbar recovery issue:
if the floating toolbar is needed (mobile or basic theme), a new Toolbar
instance is instantiated and properly configured. That way the Wysiwyg
instance will hold two instances of the toolbar: the one embedded in the
sidebar (snippets menu) and the floating one. This allows for easy
switching between the two types of toolbar, without the need to run the
configuration steps for the toolbar on every switch.
Such toolbar switching is needed in mass_mailing, where a single instance of
the wysiwyg is kept while the user can switch between different records of
mailings. Some of these records could be based on the 'basic' theme
(thus, no sidebar), and other ones based on other themes that do offer
the snippets menu.
After this commit, the toolbar switching is handled by the Wysiwyg class
instead of SnippetsMenu, as Wysiwyg owns the Toolbar instance(s) and has
the methods to configure it.
The `folded` property of SnippetsMenu and the `setFolded` method are
leveraged by this commit, keeping its original purpose and meaning (except
for the toolbar handling).
Before this commit the floating toolbar for the mobile case had the
following issues, that are fixed by this commit:
- The "table" button was (incorrectly) displayed;
- The default colors of the color picker (the top row) were undefined;
- The 'Link' powerbox command and the toolbar icon should open the Dialog,
and not the LinkTools (part of the sidebar).
Finally, this commit removes the SCSS rules that hide the SnippetsMenu
when the theme in "basic", as its display is already handled by
SnippetsMenu's `setFolded` method, introduced by [1].
[1] https://github.com/odoo/odoo/pull/105472/commits/c589939eeaff928997bf6f9735b19710036f9ad6
task-3133259
opw-3165111
Part-of: odoo/odoo#117166
Steps to reproduce bug:
Loop through the form view of mailing records having at least one of
them the 'basic' theme, and the other ones any other theme.
Once a mailing has the 'basic' theme, the sidebar is hidden (expected
behaviour). But the sidebar will remain hidden for all mailing records,
even the ones based on different themes (that would normally display the
sidebar).
The cause:
There's a CSS rule to make 'display: none' when the iframe's body
has the 'o_basic_theme' class.
(see addons/mass_mailing/static/src/scss/mass_mailing.ui.scss)
And the theme class is not properly cleared when switching between records
of different themes.
This commit fixes the issue by properly removing any theme classes
before adding the current theme's one.
Part-of: odoo/odoo#117166
Purpose of this commit have consistent list views between
project.task and the sub-tasks / blocked by o2m so that when
a change is done in one place it also impacts the other
places.
So, in this commit add/update sub-task and blocked by page list
views to make them identical.
task-3165202
closesodoo/odoo#112620
Related: odoo/enterprise#37055
Signed-off-by: Xavier Bol (xbo) <xbo@odoo.com>
Purpose of this commit help the user find the relevant SO for their
employee/SOL mapping among the thousands of SOLs there can be. It
is highly likely that the selected SOLs will be part of the same SO
as the one of the default SOL.
So, in this commit set a default filter on the project's SO when
clicking on 'search more'.
task-3165202
Part-of: odoo/odoo#112620
Purpose of this commit tags order would be more logical to
the user if they were sorted by alphabetical order instead
of id.
So, in this commit sort tags by alphabetical order instead of
id.
task-3165202
Part-of: odoo/odoo#112620
Purpose of this commit help the user identify which stage is linked
to what project, and what workflow each project has by grouping
them by project.
So, in this commit group the stage list and kanban view by project.
task-3165202
Part-of: odoo/odoo#112620
Purpose of this commit to make the example currently being selected
more obvious, as the current small green bar is very discrete.
So, in this commit highlight the whole cell currently being selected
instead of displaying a small green bar on the left.
task-3165202
Part-of: odoo/odoo#112620
Purpose of this commit to avoid having a default group by that
would impact all views without distinction by using the new
attribute that was recently introduced for the list view.
So this commit add group the kanban and list views by stage by
using an attribute on list and kanban view instead of a default
group by in action.
task-3165202
Part-of: odoo/odoo#112620
When using message_post, the body format must be explicitly specified.
If html is expected, a Markup object should be used.
If text is given, the content will be escaped.
Before this PR:
message_post was unaware if the content of a message was HTML or
text. This lead to multiple situation where the content was
incorrectly considered as HTML and led to display errors.
In
self.message_post(body="Hello %s!" % self.name)
if the name contained HTML, it would be evaluated.
In
self.message_post(body="Contact Raoul <raoul@caramail.be>")
the email would not be displayed as considered as unknown HTML and
discarded by the sanitizer
Now each call must explict the type of content.
Use the escape() helper to properly combine Markup and translations.
It would also be acceptable to use Markup() to wrap a static
translation but escape is better as one can not guarantee the content
of a translation.
closesodoo/odoo#111850
Related: odoo/documentation#3612
Related: odoo/enterprise#36728
Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
Before this commit `Measure` button in pivot and graph view
was small compare to other buttons in control panel because
flex class on left button control panel and pivot/graph view
has two button groups in their left button control panel and
flex class is only applied on first button group.
This commit add style for pivot & graph view to display then in
block to fix that issue in stable and we will move those two
button group in single div in master to apply flex class on
both button groups.
task-3187910
closesodoo/odoo#118379
X-original-commit: 6a185985867b9138378fb476ab93fd18f60357e8
Signed-off-by: Adrien Dieudonné (adr) <adr@odoo.com>
Before this commit:
When we create a nested list and change a tag of the one of
the list item in nested list and press backspace from start it removes the tag.
After this commit:
Now pressing backspace from the start tag, the tag is not removed.
task - 3147461
closesodoo/odoo#118353
X-original-commit: 7504dc1adc50916b9a408c3307832ab45ed5174b
Signed-off-by: David Monjoie (dmo) <dmo@odoo.com>
Currently, there is a download function exported that expects data and a url.
You would provide a controller url and some data to send, and the result would be downloaded.
However, it may be useful to sometimes trigger a download on the spot if there is no need to reach for a controller. Like having some json data and download it.
The code already existed, so this function is now exported as `downloadFile`.
closesodoo/odoo#118227
X-original-commit: cd9a5d491715247636d95c9f768ffc42616f4b47
Related: odoo/enterprise#39564
Signed-off-by: Lucas Lefèvre (lul) <lul@odoo.com>
2 issues
1. Activate cash control by making sure there is a cash payment method.
There is traceback when closing session.
- This is because the method call to post_closing_cash_details is not
properly sent.
2. Install pos_restaurant, keep the cash payment method.
Steps:
- Create a new order.
- Add item and go back to floor. (This will create a draft order in the backend.)
- Try closing the session.
- It should fail but it should not call `update_closing_control_state_session`.
- BUG: Because `update_closing_control_state_session` is called, the session
state changed and the user can't do "continue selling" because the button
in the pos.session kanban is now "close". It should be "continue selling".
Solution:
1. Make sure the orm.call is provided the correct params.
2. Access `cashControl` from the component which is equivalent to env.pos.config.cash_control.
This commit fixes the listed issues.
closesodoo/odoo#118226
X-original-commit: 6541633e4e79e2ef6c6099982bb21e5993f5d1df
Signed-off-by: Heinz Robin (rhe) <rhe@odoo.com>
When a reception picking was created to resupply a component (without
using a purchase order), the picking was correctly linked in the MO
Overview, but the date was set as "Not available" as the planned date of
the picking wasn't read.
Also adds the color scheme for pickings states for the Overview.
Part of task-3217757
closesodoo/odoo#118023
Signed-off-by: William Henrotin (whe) <whe@odoo.com>
Following odoo#116983, there's a new line indicating products still in
transit in the Forecast Report. So we can use it in the MO Overview to
better show when some products are in stock but not yet available.
Task-3217757
Part-of: odoo/odoo#118023
When opened from the MO Overview, the uom in the wizard is the one from
the product's form.
The problem is that the quantity given to it is in the overview's line
uom. So instead we add an already converted quantity to the `to_order`
lines.
Part of task-3217757
Part-of: odoo/odoo#118023
While the cost of a line related to an RFQ was saved, it was not used in
the displayed costs.
Also, it used the wrong cost (don't need to factor in taxes), not did it
factor the quantity used in the cost.
Fixes as well the MO Cost for partially in-stock products.
Part of task-3217757
Part-of: odoo/odoo#118023
Instead of always using the `date_planned` of the PO to compute the
estimated/expected receipt date of a purchase order in the MO Overview,
instead use the `scheduled_date` of the related picking when it's
possible (i.e. when the PO is confirmed).
Part of task-3217757
Part-of: odoo/odoo#118023
When a product was used more than once in a MO, then replenishment lines
were duplicated in the MO Overview, as it didn't check which forecast
line was already used, nor the total quantity it should have for this
replenishment.
Part of task-3217757
Part-of: odoo/odoo#118023
Instead of using the `date_start` of a MO to check if the MO will be in
time for the Final product in the MO Overview, use the `date_deadline`
if it is defined instead.
Part of task-3217757
Part-of: odoo/odoo#118023
The MO Overview would display the wrong uom in the replenishments lines
of the MO Overview. Since the data was pulled from the forecast report
(which displays it in the product's uom), it could not coincide with the
ones used in the MO.
Part-of: odoo/odoo#118023
Following 6825c44, the `produce_delay` is now defined on the bom rather
than on the product, thus raising a traceback when trying to access it
from the product.
Part-of: odoo/odoo#118023
Product availabilities and their related replenishments are no longer
relevant when displaying a completed MO. Therefore, those columns are
disabled in the Overview when the the MO is either done or cancelled.
Part of task-3217757
Part-of: odoo/odoo#118023
The free quantity was only checked to see if there was a reason to order
more quantity in the MO Overview, but wasn't counted in the missing
quantity to order, leading to having a `to order` line with bigger
quantity than required.
Part of task-3217757
Part-of: odoo/odoo#118023
The changes done to properly use the uom done in the `mrp` module were
not reflected in the `purchase_mrp` module, raising a traceback when the
purchase module was installed.
Part of task-3217757
Part-of: odoo/odoo#118023
This commit adds call icons to the channel member list and
sorts this list as well as the call participant cards of the call view
based on call state (in call, raising hand, invited).
task-3251025
closesodoo/odoo#117995
Signed-off-by: Alexandre Kühn (aku) <aku@odoo.com>
To avoid any misconfiguration, only the current companies' calendars are
shown and not all the resource.calendar.
task-3254874
closesodoo/odoo#117663
Related: odoo/enterprise#39311
Signed-off-by: Kevin Baptiste <kba@odoo.com>
This reverts commit 94bbffe46b introduced
in #109904.
This change was bringing more issues than it was trying to solve.
task-3254874
Part-of: odoo/odoo#117663
Prior to this commit, data in the customer list of the POS were
partially omitted or lost outside of the screen if the resolution was
under 768px and/or in portrait mode.
Now, when the screen is under 768px, each data/values in each column for
each row are stacked on top of each other.
Task-3223287
closesodoo/odoo#117479
Signed-off-by: Joseph Caburnay (jcb) <jcb@odoo.com>
Currently the width of float_toggle widget is 100% so it appears in full size. In this
commit we have reduced it to 15%.
task-3251667
closesodoo/odoo#117317
Related: odoo/enterprise#39644
Signed-off-by: Xavier Bol (xbo) <xbo@odoo.com>
We want the order button to display the product summary by category to give more feedback to the waiter while taking an order.
closesodoo/odoo#116846
Task-id: 3229596
Signed-off-by: Joseph Caburnay (jcb) <jcb@odoo.com>
task-1962182 introduce the field back in 12.5
but did not added any logic with it.
The tooltip suggested the need for it tho:
"Check this box if you send quotations to your customers
rather than confirming orders straight away."
related to 0d2be38333
opw-3198202
closesodoo/odoo#115031
Related: odoo/upgrade#4449
Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
Currently, the alias domain can only be set by selecting:
'Custom Email Server' in the settings.
This does not make sense for users of pre-configured databases who
just want to use the default server with their own domain.
We move the domain to its own setting to prevent confusion.
As people are not always aware they can just set a domain without
configuring a server.
task-3224434
closesodoo/odoo#116174
Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
When user tries to print sale details in POS while generating the Sale Details
if the `payment-type` is not `cash` it will add new payment in the list of
payments which does not contains `session` key-valye pair. If there were
multiple sessions in the report duration it will cause KeyError.
sentry - 4045460744
closesodoo/odoo#118408
X-original-commit: ae4e345b42279c87399037c0ecf72c8dd46e070d
Signed-off-by: Joseph Caburnay (jcb) <jcb@odoo.com>
This commit adds an information in the topbar (thus always visible) to
indicate the number of QUnit.todo tests that have been completed and the
number of QUnit.todo tests that are uncompleted.
closesodoo/odoo#118402
Signed-off-by: Nicolas Seinlet (nse) <nse@odoo.com>
IndexError list index out of range occurs when we archive the stock
picking type and try to access the point of sale session. This happens
because the archive record is not read by search_read so the list is empty.
This commit added an ORM constraint that throws a validation error when
we try to archive the operation type which is used by POS configuration.
sentry - 3967651255
closesodoo/odoo#118394
X-original-commit: 3e21dad7be482c7dbb9cd50619adf89c4b35cb8a
Signed-off-by: Joseph Caburnay (jcb) <jcb@odoo.com>