before this commit, to update the string for departure_date field the entire field has been replaced
after this commit, using attribute selector(string) updated the string for this field
closesodoo/odoo#110649
Signed-off-by: Kevin Baptiste <kba@odoo.com>
Before this commit, when scrolling down in chatter and then
toggling on the attachment box, it opened the attachment box
outside of visible part of scroll view.
This commit fixes the issue by automatically scroll to
attachment box when opening it.
Task-2817838
closesodoo/odoo#110640
X-original-commit: 2d835da6b734f0d9fef05c191e93757d2d2f3b1a
Signed-off-by: Alexandre Kühn (aku) <aku@odoo.com>
Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
When starting a trial instance, skipping the configurator and picking a
theme, it can happen that some lazy loaded `web_editor` CSS is not ready
yet - which causes a traceback popup to be displayed.
Note that this problem could not be reproduced.
This commit introduces a retry mechanism when a CSS cannot be loaded in
order to try to preserve the trial's "wow" effect.
For readability, the link is now added after defining the Promise that
registers the event handlers.
The test is adapted in order to make the retry mechanism retry faster.
task-2972330
closesodoo/odoo#110590
X-original-commit: 6a9212d52114ccda827ad2784d0369ffd9d6526e
Signed-off-by: Arthur Detroux (ard) <ard@odoo.com>
Signed-off-by: Benoit Socias (bso) <bso@odoo.com>
This commit fixes the traceback when the user push the start button
in the Work Order list View of a work order without a date_planned_start.
To recreate the traceback, the order must be based on a manufacturing order
with multiple work orders, with at least one with a scheduled start date and
one without a scheduled start date.
When creating the manufacturing order, it is important to make sure that
only the confirm button is pressed.
closesodoo/odoo#110587
X-original-commit: c4d16a57e03d2a9183b232344579978b839a9fb9
Signed-off-by: William Henrotin (whe) <whe@odoo.com>
Since the conversion of the list view to owl, the relative field size
has not been reimplemented. We have decided not to support it anymore.
So we will remove all its uses.
The relative width consists in adding a width attribute with a
value. This value corresponds to the weight of the field, the higher
it is, the more space the field will take. This size is only used when
the list is empty.
Example of this:
<tree>
<field ... width="2">
<field ... width="1">
</tree>
The first field will take 2x more space than the first one when the list
is empty.
closesodoo/odoo#110382
Related: odoo/documentation#3375
Related: odoo/enterprise#36020
Signed-off-by: Aaron Bohy (aab) <aab@odoo.com>
Purpose
=======
On our saas, when users configure a mail server, they can't use anymore
the "odoo.com" configuration (which is stored in the odoo-bin argument).
To allow them to continue using the SMTP CLI configuration, we add a
new "smtp_authentication". When this authentication method is chosen,
all the "connection" fields of the mail server are ignored, and the
connection information are taken from the odoo-bin arguments. So they
can choose the from filter of this SMTP configuration, the priority...
Task-3061882
closesodoo/odoo#106297
Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
Since the conversion of the form view to owl, the statusbar field
in mobile wasn't displayed as before: it used to be a btn-primary
button (dropdown), and it wasn't anymore. This commit re-introduces
the previous design. Moreover, we adapt the style of the statusbar
button (on the left) to make it more consistent with the field on
the right (no padding + caret as it is a dropdown).
closesodoo/odoo#110629
X-original-commit: 1ba4bc2d001667fc6c2e7f7a1482b5c79bb4c3a5
Signed-off-by: Pierre Paridans (app) <app@odoo.com>
Signed-off-by: Aaron Bohy (aab) <aab@odoo.com>
Before this commit, the error service crashed when it had to handle
a rejected promise error with a reason that was a truthy value but
not an error.
This happens for instance in the wysiwyg editor which may reject
promises with `Request took too long (more than 10 seconds).` as
reason. We sometimes get this error on odoo.com after migrating
to 16.0, typically on a tab running in the background.
closesodoo/odoo#110613
X-original-commit: 3021f7e64382e648d15671a2a1d16847b3d72cb0
Signed-off-by: Géry Debongnie <ged@odoo.com>
Signed-off-by: Aaron Bohy (aab) <aab@odoo.com>
Before this commit, there was a flicker when clicking inside a
translatable field in an editable list view: the font-size was
reduced to 12px. This rule looks unnecessary, we thus remove it.
Bug reported after the migration of odoo.com to 16.0.
closesodoo/odoo#110612
X-original-commit: ab76b1e93513bf06b78ca97b8fdce491f498726c
Signed-off-by: Géry Debongnie <ged@odoo.com>
Signed-off-by: Aaron Bohy (aab) <aab@odoo.com>
tax_id on sale.order.line is a many2many field.
Using ".id" means you cannot import sales orders/quotations because
it raises an expected singleton error.
However, the initial bug fixed by 54c828b does not exist anymore on
13.0. So it has been decided to remove this code instead.
opw-3091663
closesodoo/odoo#110639
X-original-commit: 58deebcfdf797f7dd3ab767e7c7db68b4c00b0f9
Signed-off-by: William André (wan) <wan@odoo.com>
Some formulas in the LU tax report are incorrect. This commit fixes them according to the official rules.
task-3142146
closesodoo/odoo#110630
X-original-commit: d3315570db2ca929d7fc31832a53e22799c1bed2
Signed-off-by: Olivier Colson (oco) <oco@odoo.com>
Signed-off-by: Aliya Tastemirova (alta) <alta@odoo.com>
The aim of this commit is to get rid of a traceback preventing the user
to switch tabs in Invoice and Bill
Context:
AccountMoveFormCompiler is a hack that allows to save the record
automatically when the user switch between tabs.
With commit 264f313012aa99449d1576ae1110252c13755142 the way to call the
compiler changed a bit but the hack wasn't.
Before the commit:
The `this` was leading nowhere in the compiler frame leading to a
traceback in OWL.
After the commit:
`this` is defined and the traceback is gone
closesodoo/odoo#110635
Community-pr: https://github.com/odoo/odoo/pull/110506
Task-id: no task
X-original-commit: a926071fc6944d5cd720a8849b2f31a5dd8ff4dc
Signed-off-by: William André (wan) <wan@odoo.com>
Signed-off-by: Brice Bartoletti (bib) <bib@odoo.com>
Steps to reproduce:
- Setup product (
cost 10$
Storeable Product
Standard Price Accounting
automated valuation
add account for price difference
)
- Purchase product in foreign currency (set a different price)
- Receive the product
- Create and validate Bill
Bug:
The reception JE is for the cost amount set on the product ($10)
debit and credit value are correct but the amount in currency
is wrong (purchase cost)
After creating the bill the Journal items are not correctly matched
since reconciliation is done on currency amount in the case fo foreign
currency transaction
Fix:
Set the correct amount (cost configured on product page)
in currency amount if costing method is standard
opw-2822366
closesodoo/odoo#110628
X-original-commit: 9f5025d99ec490eb2a45b9dbf1a8a43e8fc3162b
Signed-off-by: William Henrotin (whe) <whe@odoo.com>
Signed-off-by: Walid Hanniche (waha) <waha@odoo.com>
To reproduce the issue:
1. Ensure you have an orderpoint in automatic that will be processed by the scheduler
2. Allow a worker to run the scheduler with use_new_cursor=True
3. After orderpoints are searched in procurement.group._run_scheduler_tasks
and before the orderpoint is processed in stock.warehouse.orderpoint._procure_orderpoint_confirm,
delete the orderpoint through another worker
Error: A CacheMiss error will be raised due to the access to orderpoint.qty_to_order
in _procure_orderpoint_confirm, what will leave open the transaction from the new cursor
declared in the same function.
After a while HTTP workers will become unavailable as their own transactions will wait for the lock
of the open transaction to be lifted, what won't happen before said transaction is closed.
OPW-3121598
closesodoo/odoo#110627
X-original-commit: 38eade327b9f381d9abebd61d563a1caf634576d
Signed-off-by: Christophe Simonis <chs@odoo.com>
Bootstrap forces some input types ("tel", "url", "email", "number") to
be LTR even if in an RTL languages, before the last update of bootstrap
this was done in [1] and [2].
The issue of forcing some input types to LTR, is that the alignment was
wrong. Now, the for the same types when using an RTL language we force
the align to the end.
[1] : 90ab752c5f
[2] : 0d650c3b19c847181fa50c88eb945792528f01cc
closesodoo/odoo#110610
X-original-commit: 05b48129999978fbe8092e6007999aeae60a3699
Signed-off-by: Bruno Boi (boi) <boi@odoo.com>
Signed-off-by: Jorge Pinna Puissant (jpp) <jpp@odoo.com>
Before this commit, when using a rtl language, the position of the
popper elements using the 'usePosition' hook weren't inverted.
This issue was found, for instance, on autocomplete dropdowns. The
dropdown component inverted the position if it was a rtl language, this
behaviour was moved to the `usePosition` hook.
X-original-commit: a357009cbc6aacd3f1c87f3c6e632e83c235295d
Part-of: odoo/odoo#110610
In the current state of the code, pricelist are always recalculated according to the partner id of the user. In the case of a custom pricelist applying to anyone with a code, Odoo will bring back the default pricelist, forcing us to retype the code once or twice during the checkout process.
opw-3101158
closesodoo/odoo#110569
X-original-commit: 39797d3fe27b9f0545c34a538454d5f3ad5209d0
Signed-off-by: William Braeckman (wbr) <wbr@odoo.com>
To Reproduce
============
on POS go to customer, on the customers list we only display a short address.
which gives bad experience to the user.
Solution
========
The address information displayed was reduced in early 15 because it was often
too long and caused rendering issues, on both desktop and mobile.
On 16 we have more space, so we bring back the full address.
opw-3123832
closesodoo/odoo#110549
X-original-commit: 1d546031ac74241eb9d7eb090a5291aa70371d3f
Signed-off-by: Trinh Jacky (trj) <trj@odoo.com>
Signed-off-by: abla001 <abla@odoo.com>
Before this commit:
Text style and text size drop-up were not fully visible due to overflow.
After this commit:
Added a scroll property to give accessibility to the items.
Task- 3100123
closesodoo/odoo#110547
X-original-commit: dbe410fdc93b1eb89d70c9b2a51e81b0075147d4
Signed-off-by: David Monjoie (dmo) <dmo@odoo.com>
Here is a way to reproduce the problematic situation: with CRM
installed, go to Contacts, open one, clicks on its Opportunities
stat button, open one in form view, click on the "Customer" field
internal link to open again the contact in form view, delete the
record, and finally click on the first occurence of the contact
in the breadcrumbs.
Before this commit, it crashed because we ended up in an error
handler (formSaveErrorHandler) that doesn't deal with the fact
that originalError could be falsy. This is handled by the
legacyRejectPromiseHandler, but due to the low sequence of the
faulty handler, this one was executed after.
Same error would occur if you tried to open an url of a record
that doesn't exist.
This commit fixes the error handler sequences s.t. the crash no
longer occurs.
Issue reported in the feedback pad after migrating odoo.com to 16.0.
closesodoo/odoo#110545
X-original-commit: 8e78efa3dda2484b34422a66d3963c7b20915036
Signed-off-by: Samuel Degueldre <sad@odoo.com>
Signed-off-by: Aaron Bohy (aab) <aab@odoo.com>
This commit add the missing `o_action_delegate_scroll` on the activity
view controller on small screen device to scroll the activity view
content only instead of the whole controller (i.e. control panel
included).
Steps to reproduce:
1. Open Project on small screen device like a smartphone
2. Open a Project like 'Office Design'
3. Switch to the Activity view and try to scroll horizontally
=> The whole activity controller currently scroll => bug
closesodoo/odoo#110531
X-original-commit: e4d6a8ad14abee72d61fd01d8b601acc6bfa2c49
Signed-off-by: Pierre Paridans (app) <app@odoo.com>
Signed-off-by: Romain Estievenart (res) <res@odoo.com>
This commit is a follow-up of odoo/odoo@bb819f6a5c.
Even if the fix above worked around having the settinggs header's
content out of screen on smaller screen, the solution was ugly and was
meant to be improved later on.
This commit reworks the HeaderSetting's template and simplifies it to
properly fix this issue.
closesodoo/odoo#110530
X-original-commit: 0ab079664e380e5e77440e290ec604e3830108bb
Signed-off-by: Adrien Dieudonné (adr) <adr@odoo.com>
Have a char field with trim option set to True (this is the
default). Open a form view where the value of this field has
leading or trailing spaces. Press F5 (or close the tab/browser).
Before this commit, a write was done before leaving, with the
trimmed value of the char field.
This isn't the expected behavior: as the field hasn't been manually
edited, we don't want to write on it.
This could be reproduced on project.task form views, on tasks with
a name with leading/trailing spaces (e.g. tasks created by mails
sent to feedback@odoo.com).
The issue occurred when we saved a record "urgently" (before unload)
because we parsed the value of each input field, and we sent it if
it was different from the initial (or last set) value. In our case,
parsing the value trimmed it, and it was thus different from the
initial value.
Bug reported after the migration of odoo.com to 16.0.
closesodoo/odoo#110528
X-original-commit: 43b7ae39e633ced6008b067bb4e63ed9be7eda01
Signed-off-by: Michaël Mattiello <mcm@odoo.com>
Before this commit, clicking on a SendSMSButton in a FormViewDialog could
change the record of the main form view.
Problem:
When closing the dialog opened by the SendSMSButton, the model is reloaded
with the record id associated with the button. This has the effect of
replacing the root with this record. This will replace the record used
in the main form view by the one in the FormViewDialog.
How to reproduce:
- Go to a form view with an x2m field that has the same model as the form view
- Add a record in the x2m in order to open a FormViewDialog with at
least one field using the "phone" widget
- Complete the field with the "phone" widget
- Click on the "SMS" button
- Click on "Discard" button
Before this commit:
The dialog opened by SendSMSButton is closed and the main form view
record is replaced by the FormViewDialog record.
After this commit:
The dialog opened by SendSMSButton is closed and the record of the
main form view has not changed.
closesodoo/odoo#110527
Taskid: 3107429
X-original-commit: 9ceba129223a6368c720596ea17a3f7268487649
Signed-off-by: Joseph Caburnay (jcb) <jcb@odoo.com>
Signed-off-by: Georis François (fge) <fge@odoo.com>
Steps:
- Install project app.
- Active Sub-tasks feature in config settings
- Create task with parent task
- Green the kanban state
- Modify the parent task
Issue:
The kanban state changes when we change the parent task in the task.
Fix:
We avoid the recomputing kanban state.
Why issue occurred:
When we change the parent task _compute_project_id is called and sets the project.
the _compute_kanban_state method depends on the project. So reset the kanban state.
task-3141855
closesodoo/odoo#110492
X-original-commit: 0393cffa71821ba32af8e9ba54225275647c4e70
Signed-off-by: Xavier Bol (xbo) <xbo@odoo.com>
Before this commit, this flow was broken:
- Install website
- Create a new website of your own (not using the one created
automatically from XML data)
- Choose another color palette for that website
- Uninstall the website app
- Reinstall the website app
- Try to choose another color palette for any website
=> It does not work
Indeed, after the uninstallation, the DB is left in an invalid state:
the SCSS customizations attachments of the website that was created by
the user are not removed, they just have their website_id field emptied.
Some code made at [1] was already there to remove those attachments. The
problem is that it only worked for websites which were created by XML
data (at website installation), not by the user. Indeed, the `unlink`
method is not called during uninstallation to remove records that were
created by the user, thus the `unlink` override was not called either.
See [2] for some details.
This fixes the issues by moving this attachment cleaning code in a
dedicated method, called in `unlink` but also in the `uninstall_hook` of
the website app.
This also takes the opportunity to refactor the code involved, in
particular to not even consider customized attachments which do not have
a website_id.
[1]: https://github.com/odoo/odoo/commit/2f361bec36dff09181b96d140d62c477cdf013a1
[2]: https://github.com/odoo/odoo/pull/97852#pullrequestreview-1067851656
opw-3127531
closesodoo/odoo#110338
X-original-commit: 988eafa03b57be3b3a7f110650c61ce8fda88e31
Signed-off-by: Romain Derie (rde) <rde@odoo.com>
The `forecast_filter` facet (aka Upcoming Closings) would have been combined
with other filters from the same group with a logical 'AND' while displaying an
'OR' combination. Fortunately it is currently the only item of its group so it
does not cause a problem.
This commit fix the inconsistency so that `forecast_filter` using the
forecast_search_model won't have this issue in the future.
Task-2657578
closesodoo/odoo#109996
Signed-off-by: Warnon Aurélien (awa) <awa@odoo.com>
Replace moment calls by their equivalent with the luxon library in CRM, and make
use of date utils from the l10n module.
Task-3056665
closesodoo/odoo#109882
Related: odoo/enterprise#35777
Signed-off-by: Warnon Aurélien (awa) <awa@odoo.com>
Applies minor fixups to improve owl usage in CRM, following the JS team advice:
https://github.com/odoo/odoo/pull/104975
* remove unused export
* use orm service from model
* remove redundancy for component call
Task-3056665
Part-of: odoo/odoo#109882
Small refactor of the template preview form to use regular group and field tags
instead of custom layout using bootstrap.
Technical note: we weren't able to keep the model name in the label of
resource_ref so we have replaced the label with a static one: "Test Record:".
The reasons why we weren't able to keep the dynamic label are:
- a div instead a label tag is rendered with a style of width:50% which breaks
the layout (even when adding class="o_form_label"). Here we can keep the
dynamic part but we get a broken layout.
- when using a label tag for the label, the system forces us to use a "for"
attribute. But the "for" attribute replace the text content of the label by the
standard field label (here "Record"). Here we have a good layout but the label
is “Record”.
- we can override the standard field label with the attribute "string" but in
that case it is not possible to make it dynamic with the model name (field
model_id). Here it is the best we can get: a good layout and a decent label.
Unfortunately, we can't have the dynamic part of the label (the model name
here).
Task-3098782
closesodoo/odoo#109560
Signed-off-by: Warnon Aurélien (awa) <awa@odoo.com>
When the QWeb `<template>` loading test was introduced at [1], the
`test_website` module did not exist yet, see [2].
This commit moves that test and its related data file to `test_website`
to remove the `fake data` noise from the `website` module.
That's one of the two purpose of this `test_website` module:
- Avoid noising the website module with test only data & code
- Encapsulate in a lighter module the module operations tests, but it's
not really the case anymore as those tests are now standalone tests.
See manifest for more details.
[1]: https://github.com/odoo/odoo/commit/9cd982bcc811cacb42f5c08db139043d2734b891
[2]: https://github.com/odoo/odoo/commit/ef03db9edd9472201cb2c08a32d20ff0f33a5fdfclosesodoo/odoo#109349
Signed-off-by: Romain Derie (rde) <rde@odoo.com>
Up until now, the collaborative expected a field named `raw` containing
the serialized json data. This is historic and appeared because the field
containing the existing field `raw` on `document.document` contained this
data.
The name `raw` is meaningless. Now the collaborative expects a field
named `spreadsheet_data`.
I chose a field over a custom method because fields are more broadly
supported everywhere (web client services, web client mocks)
closesodoo/odoo#104167
Related: odoo/upgrade#4005
Related: odoo/enterprise#33246
Signed-off-by: Rémi Rahir (rar) <rar@odoo.com>
Purpose
=======
Give users a better experience when using the survey
result page.
Specifications
==============
Handle long chars display for single-line question
answers by showing them on multiple lines.
Prevent answer tables from flickering when having multiple
pages with different answers count by fixing their height.
Display a no answers helper instead of the empty table
and the alert message.
Task-2957775
closesodoo/odoo#100168
Signed-off-by: Warnon Aurélien (awa) <awa@odoo.com>
Purpose
=======
Prevent table with answers from flickering when
having multiple pages with different items count.
Specifications
==============
Adjust the table height to the question types to
keep the pagination buttons on the same level while
switching pages.
Each table line is expected to be, for the text_box
questions, 3 lines height and for the char_box,
numerical, date and datetime question types
(+ comments), only one line height.
Adding a scrollbar if the table height is greater
than expected.
For the text, char, number, date and datetime
question type (+ comments), set the input line id
cells width to a percentage to avoid horizontal
flicker while changing pages and to reduce first
column width.
Task-2957775
Part-of: odoo/odoo#100168
Display a no answers helper instead of the empty table
and the alert message when a question doesn't have
any answers.
Task-2957775
Part-of: odoo/odoo#100168
A customer start an order on website
A few days later the back office call the customer to finalize the order. And try to send the quotation.
--> Issue the button "Send Quotation" is remplaced by "Send a Recovery Email"
closesodoo/odoo#71333
Signed-off-by: William Braeckman (wbr) <wbr@odoo.com>
Co-authored-by: William Braeckman (wbr) <williambraeckman@yahoo.fr>
Google now requires an API key for the static maps API. As API calls cost money, and we cannot restrict the domain of the caller with the API key in emails, as the domain may vary vastly, the signing of static API URLs is implemented in the existing 'google_map_img' of partners.
This in turn can be used to get a url for an existing location. While preventing anyone from stealing the API key for their own purposes
task - 3079113
closesodoo/odoo#107200
Signed-off-by: Stéphane Debauche (std) <std@odoo.com>
Before this change URLs would get their url-safe encoding replaced
with regular characters when cleaning up
html content.
This caused signed URLs that use some of those characters to become
invalid if the target did not accept equivalent characters.
Concrete example:
/markers=size%3Alittle%7CAddress
is not the same as
/markers=size%3Alittle|Address
for google maps signed static urls
Do not add special handling for MAKO patterns
as they are not used in templates anymore
task - 3079113
Part-of: odoo/odoo#107200
Google now requires an API key for the static maps API.
As API calls cost money, and we cannot restrict the domain of the caller
with the API key in emails, as the domain may vary vastly,
the signing of static API URLs is implemented in the existing
'google_map_img' of partners.
This in turn can be used to get a url for an existing location.
While preventing anyone from stealing the API key for their own purposes
task - 3079113
Part-of: odoo/odoo#107200
Change the arch to use the new tags for the settings. If the new tags
are not used, the search cannot be performed on these settings.
closesodoo/odoo#110519
See: 02f7835aade005484ca49a8ba4c5c5feea249aae
X-original-commit: 4ab728c5ac0c28947901727f4986b3a6904f6ef7
Signed-off-by: Michaël Mattiello <mcm@odoo.com>
Signed-off-by: Jorge Pinna Puissant (jpp) <jpp@odoo.com>
When the only change in a form was made in the html editor, if the user
did not blur the editor, the content was not saved.
The reason is because the `urgentSave` in `basic_relational_model.js`
check if the record is dirty before the HtmlField had the time to update
the value to make it dirty since the commitChange in the HtmlField could
run promises before calling `update`.
To solve it, in case of urgent save, we update the value before any
asynchronous modification and re-update it after those modifications.
In order to have this strategy only on urgentSave and not on the
blur of the editor, the params `{urgent: true}` has been removed in
`_onWysiwygBlur` as it seems to not be useful. Another params will need
to be added if we want to keep that behavior on blur.
task-3140763
closesodoo/odoo#110517
X-original-commit: 3ff0d4b032e44719f52d09c7bfb701c47a79a5c3
Signed-off-by: David Monjoie (dmo) <dmo@odoo.com>
Before this commit, the form view in dark mode had some
coloring issue. This commit fixes that issue.
task-3138224
closesodoo/odoo#110516
X-original-commit: 11cb224a19f5ffdcda50ecf9274259d8ceea5730
Signed-off-by: Kevin Baptiste <kba@odoo.com>