Before this commit, click on a button stat from the website dashboard, don't always respect the current filter.
Date filter was missing, website_id wrongly filtered, or domain not exactly the same.
Now, we try to align the dashboard data with the actions.
--
I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
closesodoo/odoo#61936
Forward-port-of: odoo/odoo#61883
Forward-port-of: odoo/odoo#61333
Signed-off-by: Jérémy Kersten (jke) <jke@openerp.com>
Signed-off-by: Romain Derie <rdeodoo@users.noreply.github.com>
Were missing the translations of the javascript code that was outside
of the static/src/js folders
closesodoo/odoo#61977
X-original-commit: 3fd53ad297ae84cddaafc6214f6de7060ebd48e9
Signed-off-by: Martin Trigaux (mat) <mat@odoo.com>
Signed-off-by: Xavier Morel (xmo) <xmo@odoo.com>
Since 14.0, the javascript code of snippets is moved inside a
/static/src/snippets directory.
With owl, the components are defined in static/src/components
Some other modules were using more exotic path and ended up with no
translations.
opw-2381030
X-original-commit: f1d403723d59b8e53b00cf2d26bd9d3d54437803
Steps to reproduce the bug:
- Let's consider a user U with access rights Inventory Amdinistrator
- Try to create an operation type with U
Bug:
An access error was raised because U has no rights to create an ir.sequence
record.
opw:2381272
closesodoo/odoo#61966
X-original-commit: 472fc28255ad29bcaaa7bd2f68a64018361b2665
Signed-off-by: Simon Goffin (sig) <sig@openerp.com>
Before this commit, the python domain on sale.report would not get today's data
as it would do `date >= 2020-03-03`, but it means `2020-03-03 00:00:00`,
actually excluding today.
Then the JS domains to retrieve those data once you click on the metric (it
loads an act window with his domain + additional domain though js) would have
a different date domain, including today.
Note that there is still some inconsistencies between python and JS such as
last month filter which is in python (in template filter) today - 30 days
while in JS it is moment.subtract 1 month which might be 31 days.
X-original-commit: 23e65d70baf2444b35c81a10cdc09fee9d625c75
Those were removed with f9874b2b04 and restored in 14.0 (master at that point) with cc6000abfa.
This commit restores the missing filters for the context filters to work on
the view used in stable.
X-original-commit: 0fd1a8ce30ff83030577b95b2ac10669425671e9
Act window domain are used to load tree view data when clicking on dashboard
metric.
That metric is retrieved through domain in backend.
This domain part wasn't adapted in act window domain (can't use ref).
As searching on website is enough to get ecommerce order, this line can be
safely removed, it is an old code that was needed before website_id was set on
order, as it can be noticed in f6fc7c2319.
X-original-commit: b31abe06583c06dfc8b0df047d2659e657785b89
The metrics displayed on the dashboard are retrieved through a domain used in
`fetch_dashboard_data()` route.
When clicking on one of those metrics, an action is called with a domain.
This commit fixes incoherences between those domains.
task-2369420
X-original-commit: 84a759af1e29aa5181a6ccf08b1dec5e79f63586
Without this commit, when clicking on a metric on the website dashboard, it
would not load the correct data.
Indeed, the dashboard is loaded for a specific website only, but clicking on a
metric opens the data for every website together.
Step to reproduce:
- Make some orders on 2 differents website ecommerce
- OPTIONAL: Get through the payment on some orders, then just leave some
products in the cart afterward to have some unpaid orders
- Go to the website dashboard, you see some metrics
- Change the selected website on top right, you see the metrics adapts
correctly
- Click on a metric, it doesn't fit the number you clicked on. For instance,
if you had 1 Unpaid Orders for website 1 and 3 Unpaid Orders for website 2,
you see 4 orders in the tree view once you have clicked the metric.
This commit ensures the correct website is appended to every dashboard action
domain.
opw-2369420
Fixes#44926, fixes#51125
X-original-commit: 06f954787cf60e657768e365a15ea4513d459c0b
The ControlPanel has been converted in Owl [1], and the code using
it has been adapted accordingly. However, in the FieldX2Many, we
didn't properly wait for the ControlPanel to be updated (an update
of the ControlPanel was synchronous before owl, and is now async,
like every Owl renderings, as it waits for the nextAnimationFrame).
As a consequence, we might have tricky issues because the mounted
hook of the control panel might be called multiple times for a
single call to willUnmount later on. In mobile, we bind a global
event handler (on scroll) in mounted, and unbind it in willUnmount,
so we had leftover event handlers, that crashed when called after
the ControlPanel was destroyed. Note that even if the issue popped
in mobile, calling mounted on already mounted Components isn't a
good idea, and this should be fixed anyway.
The issue could be reproduced for instance in FieldService (with
collaborative pads activated in Project), in mobile, by opening
a task in Edit mode. Then, you might get a traceback by scrolling
after having discarded the edition
Here is a description of what technically happened:
- when clicking on Edit, all widgets (including the FieldX2Many
are destroyed and re-instantiated in 'edit' mode).
- the pad widget directly triggers a field_changed event which
causes a reset of the FieldX2Many (i.e. 'render' is called
again)
- the FieldX2Many detects that it already has a renderer (and a
ControlPanel) so it updates them
- it first updates the renderer, and when it's done, it updates
the ControlPanel BUT doesn't wait for its promise, so the
promise returned by that call to 'render' in FieldX2Many is
resolved before the ControlPanel is actually updated
- note that at this point, all thoses new widgets are not in the
DOM yet
- when all widgets are ready, the renderer patches the view (i.e.
the former content is removed from the DOM, and the new one is
attached into the DOM). As soon as this is done, the renderer
calls 'on_attach_callback' on its children, including the
FieldX2Many, which leads to a call to 'mounted' on the CP.
- then, just before the nextAnimationFrame, Owl complete the
rendering of the CP, and detects that it is now in the DOM (it
wasn't at the beginning), so 'mounted' is called a second time,
will cause the issue described above.
This commit fixes the issue by properly waiting for the CP to be
rendered in the FieldX2Many. However, this required on cascade
changes:
- Form view renderings with a FieldX2Many are now *really* async
(+- 16ms), meaning that the user can easily trigger concurrent
renderings by, e.g. clicking quickly several times on 'Edit',
'Save' or 'Discard'. Concurrent renderings are properly handled
so to prevent this from happening, we disable the buttons and
re-enable them when the rendering is done (like already done in
[2])
- in the FieldX2Many, '_updateControlPanel' was called at several
placed, but we never waited for it. As this method was
originally sync, its calls have probably been naively adapted,
whereas their should have been deeply rethought (for instance,
as it is async, and we need to wait for it, we don't want it
to be called multiple times sequentially when something happens).
This commit does that work, i.e. we clean the places where this
function is called such that it is (hopefully) never called
sequentially twice. To do so, we changed a bit the spec of the
pager in multi page, and we also fixed a paging-related bug.
In a few words, here is what we did/do when adding a new row
in the bottom of a full page:
- before: tweak the count in the data to fool the pager and
make it think that no new record has been added (so
basically, let it display something wrong)
- now: temporarily increase the pager limit so that the new
record is displayed on the current pager, and the pager
values are correct w.r.t. the displayed records.
Some tests needed to be adapted accordingly.
- By waiting for the ControlPanel when updating the FieldX2Many,
a bunch of QUnit tests failed. Those tests have something in
common: they spawn an X2Many (list or kanban theoretically,
but always list in practice) containing a FieldBoolean (only
field widget of /web converted in owl). When the FieldX2Many
is updated, we update the renderer (i.e. re-renderer the
FieldBoolean, so we have to wait for the nextAnimationFrame),
and when this is done, we update the page (again, we have
to wait for the nextAnimationFrame). So basically, we have
to wait for two nextAnimationFrames to see the result in the
DOM. For this, we added a new test util which basically does
a nextTick ('owlCompatibilityNextTick'), and called it
everywhere it was necessary. When everything will be written
in Owl, we could get rid of this util and its calls.
[1] https://github.com/odoo/odoo/commit/fbf347498f1cc7b74ef373179b7bcae201715c24
[2] https://github.com/odoo/odoo/commit/39f08950d6e20460e3a20a5b9c33e4ddf66dce78closesodoo/odoo#61926
X-original-commit: e8e64f75606f1501a8be7b0bb418a296cfd8be61
Signed-off-by: Adrien Dieudonné (adr) <adr@odoo.com>
Signed-off-by: Aaron Bohy (aab) <aab@odoo.com>
In previous versions of Odoo, in the New message box, typing a few
letters of the name of your recipient and pressing Enter would
automatically select the conversation with this contact.
Since 14.0, one has to select the first result with the Down key.
This commit restores the previous behavior by using the
[`autofocus`](https://api.jqueryui.com/autocomplete/#option-autoFocus)
option.
closesodoo/odoo#61967
X-original-commit: addd392a1b5f7e569c65a4503152ba0bdfe49eb3
Signed-off-by: Alexandre Kühn (aku) <aku@odoo.com>
This change highlighted issues with the async behavior of `useUpdate`, which
was no longer necessary and therefore reverted.
This in turn highlighted issue with animation of chat window unfolding, making
restoring of scroll position not work as intended due to the message list not
having its whole height available during some time after render. This animation
being minor (and even annoying in some cases) it was decided to remove it.
task-2387729
closesodoo/odoo#61962
X-original-commit: f22c34e7f61f7f8ac5b9ab7f9579cc4e6dd0e334
Signed-off-by: Alexandre Kühn (aku) <aku@odoo.com>
Steps to reproduce the bug:
- Delete the current website
- Go to homepage
Bug:
An error 500 was displayrd
opw:2381929
closesodoo/odoo#61959
X-original-commit: ae6515a5fb849a4b561b87eaa5c78035771a17b8
Signed-off-by: Simon Goffin (sig) <sig@openerp.com>
When a session is created and no orders can be created because of
misconfiguration. We should be able to close the session.
When a chart of account is installed, we should not try to create
payment methods on config that have active session as it is forbidden.
Check that there is at least one payment method configured when
launching a session.
closesodoo/odoo#61954
X-original-commit: 17bc5d31722c1a90b03ada16f8e100b8713095ca
Signed-off-by: pimodoo <pimodoo@users.noreply.github.com>
Some projects may not need the tags, while others use the state heavily.
This makes both fields available and optional.
closesodoo/odoo#61932
X-original-commit: 26e26181c9680e89f8c8e1eb3b4c9dc2fc063d87
Signed-off-by: Nicolas Martinelli (nim) <nim@odoo.com>
Before this fix, the prefix was detected as `045-0` and the year as `1`
instead of no year with prefix `045-001`.
opw-2381351
closesodoo/odoo#61931
X-original-commit: e1b4521e82af1c865d69e9e0cf637713d0b94480
Signed-off-by: oco-odoo <oco-odoo@users.noreply.github.com>
Removed all the settings related to billable projects in the quick
create dialog. There were too many settings which slowed down the quick
creation of a project.
closesodoo/odoo#61925
Taskid: 2376401
X-original-commit: 64ec312778a2552ebb3db75394c558e51a0c3f63
Signed-off-by: Yannick Tivisse (yti) <yti@odoo.com>
Signed-off-by: Kevin Baptiste <kba@odoo.com>
Currently, Traceback occurs when we do timezone filters in every one
report of time off because the timezone is non-stored compute field in
hr leave model.
So in this commit, get the timzone value based on compute field from
resource or timezone of the current company's calendar OR user's tz
and at last 'UTC'.
closesodoo/odoo#61910
Taskid: 2334866
X-original-commit: 05c373a99a6064f08fc9eb0662ab2ccdb1978cd7
Signed-off-by: Yannick Tivisse (yti) <yti@odoo.com>
Currently, when go to calendar > list view > action > send sms
to attendees, it will generate the the traceback because default
composition_mode is comment while when you process through the
list then sms_composition mode should be 'mass'.
So in this commit, pass the sms_composition_mode as 'guess' so
it will automatically check the record and take the correct
composition mode and also pass the active_ids as res_ids.
closesodoo/odoo#61909
Taskid: 2344284
X-original-commit: 200ab9fdaeb9cf6f8afcf572c013e2b6cc1e70df
Signed-off-by: Yannick Tivisse (yti) <yti@odoo.com>
Currently, when attachment small icon was displayed on portal it
is broken and repeated on background more than once like: task
attachment icon.
So in this commit do not repeat the icon when icon is small on portal
attachment.
closesodoo/odoo#61907
Taskid: 2337684
X-original-commit: 24304608d2eee0ca136ac024b18e19d0d8d0e12f
Signed-off-by: Yannick Tivisse (yti) <yti@odoo.com>
From now on, it is possible to use the analytic account's code field in the "doesn't contain" filter.
Until now, only the name of the analytic account was processed when using this filter.
When using the "Contains" filter, both the name and the code of the analytic account were taken into account,
which was inconsistent with how the "Doesn't contain" filter worked.
Ticket #2368695closesodoo/odoo#61830
Signed-off-by: oco-odoo <oco-odoo@users.noreply.github.com>
The web editor offered in-content preview when hovering over a color to change text or background color.
This commit implements this behavior with Jabberwocky.
closesodoo/odoo#61588
Signed-off-by: David Monjoie (dmo) <dmo@odoo.com>
In this commit, creating SM from SML if trasfer is immediate. Due
to which following issues are getting resolve -
For immediate trasfer -
1) Unable to cancel the picking in draft state and SML is created
by view directly (No SM).
2) Unable to see button Put in pack.
3) Picking remains in state draft instead of ready.
task-2275833
closesodoo/odoo#61887
X-original-commit: f933c15794ec733be51d879de2410302d9804121
Signed-off-by: William Henrotin <Whenrow@users.noreply.github.com>
When a progressbar filter is activated, it will only show records
matching the filter and nothing else.
"Load more" link will update its counter accordingly.
closesodoo/odoo#55466
Taskid: 2196661
Signed-off-by: Aaron Bohy (aab) <aab@odoo.com>
The mock server was slicing the records before sorting.
Now mocking a search read would sort the records before slicing them.
This will ensure the records to be loaded with the correct sorting order
when e.g. a load more is applied on a subset.
Taskid: 2196661
_getUngroupedListDomain
can be used to extend the domain of a search_read for a list resource
_getGroupedListPropsToKeep
can be used to extend props to keep from a previously existing list resource when a read_group occurs
Taskid: 2196661
When displaying a QR-code on the account.payment form view, we now pass its communication as both structured and unstructured communication, letting the QR-code generator parse it needed. This allows supporting QR-IBANs and QRR communications for Swiss QR-codes.
closesodoo/odoo#61891
X-original-commit: de6e81337d168ef296f7b0aa46aedbea1ea7a82d
Signed-off-by: Laurent Smet <smetl@users.noreply.github.com>
*: im_livechat
Also, fix its unopened position so that it stays at the same horizontal
position when opened.
task-2369225
closesodoo/odoo#61898
X-original-commit: eb3aa203fa3033b6583a6ffddca7e80e6e1de0d2
Signed-off-by: Quentin Smetz (qsm) <qsm@odoo.com>
Co-authored-by: qsm-odoo <qsm@odoo.com>
Currently, in the user setting, hovering on the live chat input will
focus on the signature div due to long height of the empty svg.
So in this commit fixes the issue by adding the css property in the
svg element of signature widget due to that svg element contains the
proper width and height.
closesodoo/odoo#61897
Taskid: 2361880
X-original-commit: 6fe2a0b8b6f8dadb2eb7008019f2d7266dcf6fb1
Signed-off-by: Yannick Tivisse (yti) <yti@odoo.com>
This commit fixes the issue with dropdown of activity in kanban.
The activity dropdown was cut with document inspectorbar in document
kanban view due to data-boundry window on dropdown.
Note:
Dropdown of list activity was cut on the list view and to fix that
commit[1] was done but it has side effect on document kanban view.
another fix was done in commit[2] so now commit[1] is not useful so
here revert that commit.
[1] - https://github.com/odoo/odoo/commit/cef57b930b27cb487973f251797c93ea3967a5b3
[2] - https://github.com/odoo/odoo/commit/a98f0621169144f53f4ebc9361f3b7c6b60556c8closesodoo/odoo#61895
Taskid: 2336146
X-original-commit: 6b32689b00e96d9cfc165fe31a3a121d97874321
Signed-off-by: Yannick Tivisse (yti) <yti@odoo.com>
Prior to this commit:
A race condition could occur when dropping the dynamic product snippet
creating a traceback "Cannot read property 'limit' of undefined".
After this commit:
Potential race condition has been removed from the code.
closesodoo/odoo#61890
X-original-commit: de14be4986ef4a293b99523b7dc110be3b16b8ea
Signed-off-by: Quentin Smetz (qsm) <qsm@odoo.com>
Purpose of the task is to the ui of HR Settings tab, on the employee
form have to be reorganized to be more clear
So in this task, split the status details under the two new groups
'Payroll' and 'Application Settings'.
Related PR: https://github.com/odoo/enterprise/pull/14089closesodoo/odoo#59984
Taskid: 2351762
Related: odoo/enterprise#14089
Signed-off-by: Yannick Tivisse (yti) <yti@odoo.com>
PURPOSE
Currently, when changing the driver of a vehicle, we don't set the end date
of the last driver and we can't automatically set it because this end
date can be another date that the start of the new driver.
SPECIFICATIONS
When we change the driver of a vehicle, add an activity to specify
the end date of the last driver.
LINKS
Task-2328981
closesodoo/odoo#58170
Signed-off-by: Yannick Tivisse (yti) <yti@odoo.com>
Currently, when signing the document during the tour,
the droplet animation don't follow correctly the button.
So in this commit, due to timeout/Aniamation there is lag on scroll
so need to change 50 to 0.1, now droplet have correctly follow
the button, or appear after the button animation
closesodoo/odoo#56214
Taskid: 2296010
Signed-off-by: Yannick Tivisse (yti) <yti@odoo.com>
This commit fixes two bugs with payment_test:
First:
Before, payment test would create token without a name.
When you tried to pay your subscription on the portal with these, the following error would occurs:
```
Error to render compiling AST
AttributeError: 'bool' object has no attribute 'replace'
Template: sale_subscription.subscription
Path: /t/t[2]/div/t/t[2]/ul/li[1]/div[3]/t
Node: <t t-esc="account.payment_token_id.short_name"/>
The error occured while rendering the template sale_subscription.subscription and evaluating the following expression: <t t-esc="account.payment_token_id.short_name"/>
```
This commit add a distinct name for these token to avoid errors and confusion.
Secondly,
Before this commit when user tried to make a payment with the payment_test acquirer, the callback method was never called.
This had an impact on module where the callback method is used (mostly subscription).
closesodoo/odoo#61888
Taskid: 2367508
X-original-commit: a0e012f1578b6257816dfb1a508781d054b95198
Related: odoo/enterprise#14814
Signed-off-by: Yannick Tivisse (yti) <yti@odoo.com>
Steps to reproduce the bug:
- Let's consider a product P with price=100€, Timesheets on tasks and Create a task in sales order's project
- Create a SO with 1 P and confirm it
- A project PR and a task T have been created
- Assign an employee E to T and record 01:00 hour
- Create an invoice I from the SO and confirm I
- Go to the project overview of the SO
Bug:
100€ was counted twice in Non billable task and in Billed on Timesheets
PS:
When validating I, an analytic line L is created and L is not linked to PR.
That's why 100€ was counted twice because L was counted once in the 'Invoiced' part
and once in the 'Other revenue'
opw:2370418
closesodoo/odoo#61880
X-original-commit: 46d254e79900cbb76521d8e6b00f7c7597a914c9
Signed-off-by: Simon Goffin (sig) <sig@openerp.com>
With PostgreSQL version 9.6, it was impossible to install the module fleet
A traceback was raised saying:
could not determine which collation to use for view column "cost_type"
closesodoo/odoo#61850
X-original-commit: d652dbb9655d98b4121ac685e6444bbf7e303292
Signed-off-by: Simon Goffin (sig) <sig@openerp.com>
Problem
-------
For regular allocation that have an empty date_from
(Allocation existing before 14.0),
it's not possible to save any change since an invisible field is required
and cannot be set.
Solution
--------
The field date from should be only required for type accrual
closesodoo/odoo#61892
X-original-commit: 700e584dd22fb7bc845675b4a49a3e5a85a7253a
Signed-off-by: Yannick Tivisse (yti) <yti@odoo.com>
Prior to this commit:
* The contract_ids one2many widget in the hr_contract_history form was not sorted
desc.
After this commit:
* The contract_ids one2many widget in the hr_contract_history form is correctly sorted
desc.
related PR's: odoo/enterprise#14647, odoo/upgrade#1939closesodoo/odoo#61512
Signed-off-by: Yannick Tivisse (yti) <yti@odoo.com>
Purpose of the task is, to remove the behavior inconsistency with
"scheduled activities" on notes with other modules.
Currenlty, For all the other models, when clicking the line in the
"activities" top menu, you arrive in a kanban view which is filtered
to only list objects which actually have scheduled activities on them,
for notes it displayed all the user's notes regardless of any activity
scheduled or not.
So in this commit, Make the behaviour consistance with other modules and
remove the override of the method to open the all the notes.
closesodoo/odoo#60777
Taskid: 2312083
Signed-off-by: Yannick Tivisse (yti) <yti@odoo.com>
This commit fixes various types of language errors in strings visible to the
user, including
- singular/plural mix-ups
- missing or incorrect punctuation
- missing or incorrect articles
- inconsistent use of title case and sentence case and other capitalization
errors
- mixed-up words
- missing words
- incorrect prepositions
- missing or incorrect apostrophes
closesodoo/odoo#60189
Signed-off-by: Yannick Tivisse (yti) <yti@odoo.com>
Currently, when inline domain selector is inside the modal dialog
then the domain selector popover hide inside the modal body due to
auto scroll on modal body. domain selector in dialog is rare case and
here there is less content inside the coupon dialog due to that we can
use the overflow visible for this specific wizard(modal dialog).
So in this commit, fix the issues by adding overflow property in the
modal body due to that, it will always display on top of the modal.
closesodoo/odoo#59594
Taskid: 2225272
Signed-off-by: Yannick Tivisse (yti) <yti@odoo.com>
STEPS:
* activate Product Configurator
* create 3 attributes with custom values option
* create a quotation with a product having all 3 attributes and custom values
* select the custom values for attributes in different orders for each SO line
BEFORE: Product description get random order for the custom attributes list
AFTER: Order is fine
---
opw-2379778
closesodoo/odoo#61869
X-original-commit: 57eb05071a08251171dcfdb2308feb13c3281fa7
Signed-off-by: Ivan Yelizariev // IEL <yelizariev@users.noreply.github.com>
- Create a POS session
- Sell some items
- Close the session, go to the closing page
- Duplicate the browser tab
- Close the session in tab 1
- Close the session in tab 2
The journal entries are created twice.
There should be a server check before closing the session.
opw-2379278
closesodoo/odoo#61860
X-original-commit: 0ba535c5123fecb410fa7546b5bb39a52884ca40
Signed-off-by: Nicolas Martinelli (nim) <nim@odoo.com>
Purpose of the task is, user's get 'stuck' through onboarding because
of multi edit feature.
When records are selected user can't open that records just when they
leaves from multi edit/mass edition then that feature will works.
So in this commit, removing multi_edit="1" from some onborading
tree views.
closesodoo/odoo#61264
Taskid: 2373161
Related: odoo/enterprise#14578
Signed-off-by: Yannick Tivisse (yti) <yti@odoo.com>