Following the new selection feature in list view, we can remove
the custom handling in the resequence action, aiming to perform
the action on the active_domain when all records of the page were
selected.
Part of task 2185145
... when toggling an optional field.
This bug wasn't really important until now, but with the new
selection mechanism, it could lead to weird situations (e.g. the
selection box says that all records are selected, but the thead
checkbox isn't checked).
Part of task 2185145
We don't change the multi edit mechanism for now: it still only
applies to the selected records, limited to the current page.
However, we add the information in the confirm dialog to make it
clear for the user.
Part of task 2185145
PURPOSE
Make aliases usage more unique, prevent re-using bounce or catchall aliases
and remove auto-uniqueness of aliases.
SPECIFICATIONS
Before this commit, user could create an email alias having same name as
catchall/bounce email alias, which should not happen. Also, while creating
or duplicating alias, if the same name was already available, a new unique
name was generated by adding a sequence number to existing name.
This behavior is not considered as a good one as it magically creates aliases
different from what user expects. User could even not own the newly-created
alias, leading to a broken mail gateway.
In this commit we improve that behavior by ensuring that no duplicate alias
name should be entered while creation / updation for both catcall/bounce and
mail alias. Also, while duplicating an alias, name will now be blank by default
to force user to enter the name. Finally when creating an alias an error is
raised if the name is already taken.
Task ID 2160070
PURPOSE
Make aliases usage more unique, prevent re-using bounce or catchall aliases
and remove auto-uniqueness of aliases.
SPECIFICATION
Remove automatic aliases creation. Aliases should be created on demand with
real emails owned by users, not hidden in creation.
Task ID 2160070
The export feature already exported the whole domain when the
thead selector checkbox was checked (unlike all other actions
which were executed on the current page only).
Following the new selection feature, this commit uniformizes the
behavior of the export with other actions: if the page is selected,
only the records on that page are exported. To export all records
matching the current domain, the user has to click on the 'Select
all' link in the control panel.
Part of task 2185145
This commit allows the user to apply actions to all records
matching the current domain in list views. It also ensures that
the user is aware of the set of records actually selected.
The number of selected records is now displayed in the control
panel, and the user can, with an additional click, select all
records matching the current domain instead of the ones of the
current page.
Task 2185145
- Create an account in foreign currency;
- Create different currency rates for the foreign currency at different
dates;
- Create a journal entry at past date X with 2 lines, and use the
"foreign currency account" for one of the lines, but a domestic
currency account for the other;
- Now try to reverse the entry at a later date with a different exchange
rate (select an appropriate date in the wizard).
Before this commit, an error was raise because the move is not balanced.
This issue occurs because the 'amount_currency' value is used to
recompute the debit/credit value based on original currency rate. But
the _onchange_currency function is also called, and it recomputes the
credit/debit for the foreign currency line with the exchange rate of
the date of the reverse entry.
This commit is a fine-tuning of ae3d7aeb706dc1bc3216fd63c6a943e5d9cb56e7
to avoid recomputing credit/debit in a reverse entry.
opw-2227098
closesodoo/odoo#48609
X-original-commit: 748b2bcb3950840d815040684f72802c968240f2
Signed-off-by: Simon Goffin (sig) <sig@openerp.com>
Signed-off-by: Jorge Pinna Puissant (jpp) <jpp@odoo.com>
Steps to reproduce:
- install sales and barcodes
- go to sales > catalog > products > create
- give the product a random name and the following barcode: #1N4005-T+A
- save > print > product labels
Current behavior:
the barcode is not generated properly because it is not url encoded
everything after the # charachter is ignored
Current behavior:
barcodes are url encoded and generated properly
opw-2203716
closesodoo/odoo#48607
X-original-commit: 5aaacb825d0c408bc11c4fbb386e1d365a68594b
Signed-off-by: Nicolas Martinelli (nim) <nim@odoo.com>
SIPS date format can be somewhat variable, some sanitation is required
before using the data raw for the ORM.
opw-2224926
closesodoo/odoo#48604
X-original-commit: db998d39d7d692779a64522e168bba29b82f1d03
Signed-off-by: Damien Bouvy (dbo) <dbo@odoo.com>
*: website, web_unplash
The html alt attribute is supposed to contain a description of an
image's content (an alternative to the visual representation), a lot of
snippets contained alt attributes that were not descriptive of their
content, and would as such be counter-productive in terms of
accessibility. This commit removes those.
Previously, the alt attribute on img tags had to be set manually by the
user through the editor. This commit makes use of the description field
on ir.attachment to store image description, and sets the alt attribute
on images to that description when choosing an image from the media
dialog.
task-2091417
closesodoo/odoo#45174
Related: odoo/enterprise#9520
Signed-off-by: Quentin Smetz (qsm) <qsm@odoo.com>
Previously, image urls did not contain the unique parameter, this
resulted in all browser caching for images being dependent on etag
headers. This commit changes the url format used by images in the
web_editor to use the /id-checksum/ format instead of only the id, this
in turn makes it so that the 'Max-age' header is set to 1 year. This
also solves some browser caching issues when changing the optimization
level of an image in place in the media-dialog.
For binary attachments with an url (eg, unsplash images) the unique is
added as a search parameter (?unique=checksum) as a cachebuster
mechanism, but currently doesn't set the max-age header, which may or
may not be done at a later date.
task-2091417
Previously, when selecting an image, the user could optimize their
images by clicking a little cog icon in the media dialog. They would
also be prompted to optimize their images when uploading them. In most
cases, it makes a lot more sense to always save the original in the
database, and optimize the original whenever it's dropped in the page
automatically.
A second problem is that when using the optimization feature, optimized
images would be displayed along the originals by default, resulting in a
lot of duplicates while browsing the media dialog.
This commit changes both of these things:
- By default, when uploading an image, the original uploaded image is
used. The user can still optimize their image manually through the
media-dialog by using the cog icon. When choosing an image in the
media-dialog, if it's not already an optimized image, an optimized copy
is automatically created and used instead.
- Optimized images are now hidden by default, in the media dialog, and
can be shown by clicking a checkbox at the top of the modal when in
debug mode
task-2091417
closesodoo/odoo#45174
Previously, searching for images in the database and on unsplash was
mutually exclusive, and controlled by a dropdown menu next to the search
bar. Additionally, the display of db images and unsplash images was very
different, making using the search function inconsistent and awkward.
This commit merges the unsplash search into the db search. When
searching, the first few matches from the database are displayed, then
results from unsplash.
Additionally, the layout of images has been greatly improved,
eliminating almost all padding, using some flex-box magic to allow the
images to take up all the available space without being cropped or
deformed.
The input to add an attachment by URL is now collapsed by
default, and clicking on it will expand it to reduce visual clutter.
Finally, when not in multi-images mode, the clicked image is immediately
used, rather than the user having to click it and then click the add
button, or having to double click, which was not obvious.
task-2091417
closesodoo/odoo#45174
Before this commit, the template of the "Tip" widget was loaded on test runtime
and caused a concurrency issue.
Now, the template is loaded before the test suite is launched and is ready when
the test is executed.
closesodoo/odoo#48589
Signed-off-by: Aaron Bohy (aab) <aab@odoo.com>
The problem is described in https://github.com/odoo/odoo/issues/48550.
This is caused by reconciled receivable line in the invoice being
reconciled with another reconciled receivable line in pos_session's
move_id. The lines are already reconciled because their balance is zero.
So to avoid trying to reconcile those reconciled lines, we do not
include them in the list of lines to be reconciled.
closesodoo/odoo#48587
X-original-commit: f24677098bec9b96108a901dde08bf75dc7d4c5f
Signed-off-by: pimodoo <pimodoo@users.noreply.github.com>
PURPOSE
Before this commit when an administrator edit another user's profile it
was his own data that displayed for the changes.
This commit fixes this issue.
SPECIFICATION
Add a test in both controller route when displaying the edit view and
when submitting the changes that check if the edited user is the same
as the actual user.
LINKS
Task ID : 2222043
PR : #48262closesodoo/odoo#48575
X-original-commit: 4ab4de5b57a17002d8b14584c7d39a29e8bca357
Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
Whe a pos session is opened, it is impossible to install discount
anymore, because the module tries to set a default value for the product
discount.
To fi this error, we are setting the default value, only on config that
are closed.
closesodoo/odoo#48576
X-original-commit: 4c4adf472453de65e45e71f0cbd22a36ef2ed0db
Signed-off-by: pimodoo <pimodoo@users.noreply.github.com>
========
Purpose
========
Currently, purchase missing some billing functions that we have in sale
invoicing:
- Create credit note when necessary
- Create vendor bill in batch in list view
========
Spec
========
- In case of retures, when create a bill for a purchase order, we check
the total amount we want to bill to decide whether it's a vendor bill or
a credit note.
- In the list view, add a new action to create vendor bill/credit note
for all selected order.
========
Links
========
Task 2170715
PR #44210
Related: odoo/upgrade#919
Signed-off-by: Simon Lejeune (sle) <sle@openerp.com>
Usecase to reproduce:
- Create a MO as draft
- The stock move inside don't have a reference despite the MO name is
already set.
It happens because the reference and the group are set during the
action_confirm. However it's not great if the user takes time before
confirmation or if he cancels the MO. In those case the reference
on the moves remains 'new'.
opw-2201986
closesodoo/odoo#48568
X-original-commit: 1b7e304a907d8a43d5f561226028a4b353902fab
Signed-off-by: Arnold Moyaux <amoyaux@users.noreply.github.com>
Before this commit, method `postprocess_pdf_report` was public and can
be called over RPC while there is no usecase to allow it to be called
over RPC.
Clarify helper of field attachment_use
Remove helper of report_name as QWeb is the only supported type
Log wkhtmlerror
closesodoo/odoo#33770
Signed-off-by: Martin Trigaux (mat) <mat@odoo.com>
Change the decimal point and thousands separator for es_PE and es_CR
Set the currency symbol and position for Colon CRC
closesodoo/odoo#48535
X-original-commit: 88f420f37c305a7451be31ee36c479c2dffd4db8
Signed-off-by: Martin Trigaux (mat) <mat@odoo.com>
Steps to reproduce the bug:
- Let consider a user U from a single company C (Multi companies = False)
- Let's consider a BOM B for a finished product FP with product P1 as component and product P2 as byproduct
- Let's consider that P2 is tracked by lot
- Log as U and create a MO for FP
- Produce the MO
Bug:
A widard was opened but it was impossible to create a lot for P2
opw:2216028
closesodoo/odoo#48556
X-original-commit: 30ebdee091362b8c857bdcad2bdf44bd698572c4
Signed-off-by: Simon Goffin (sig) <sig@openerp.com>
Creation of production order from a bom with 0 quantity to produce will
fail. As there is already a constraint on the quantity to produce on MO,
this commit adds the same constraint on BoM.
closesodoo/odoo#48485
X-original-commit: 1330500885ae096372ab32fba4ffc9db252dd2d4
Signed-off-by: Simon Lejeune (sle) <sle@openerp.com>
- Create a new course;
- Add content line;
- save.
Before this commit, Odoo raises an invalid field error on 'Course' which
is empty. If you try to select the newly created course, it is missing
in the list.
Now, the course is removed from the view when creating a new content
from a course. But it stays if the content is created directly from the
content menu.
opw-2210360
closesodoo/odoo#48534
X-original-commit: f0b616348f11e00aae8c9b30df4c0ed922041b26
Signed-off-by: Jorge Pinna Puissant (jpp) <jpp@odoo.com>
added test case for text paste in autocomplete in the searchbar using mouse,
it should populate the autocomplete dropdown.
task-2204174
closesodoo/odoo#48251
X-original-commit: 010961ee3eac55a1e885ce918b597943078324f6
Signed-off-by: Aaron Bohy (aab) <aab@odoo.com>
Create a new contact with:
- Name [DEMO]
- VAT RORO790707I47
- Country Mexico
An error inform the user that the vat is not valid, this happens because
the vat number is recognized as romanian and compacted before passing
to actual vat checking. Skip the check if the country of the new
partner does not match what is detected on the vat, assuming the user
know what he/she is doing
opw-2218491
closesodoo/odoo#48273
Signed-off-by: Nicolas Martinelli (nim) <nim@odoo.com>
Now we have the mobile search_panel in enterprise,
this commit simply adapt the Odoo repos part with:
- Css Clean up
- Remove the no longer existing step inside the tour
the button 'o_enable_searchview' no longer exist
inside a M2X dialog
Task ID: 2200099
closesodoo/odoo#48376
Related: odoo/enterprise#9494
Signed-off-by: Adrien Dieudonné (adr) <adr@odoo.com>
Signed-off-by: Pierre Paridans <pparidans@users.noreply.github.com>
Bug
===
In ffe1d4047d "onchange" were replaced
by computed fields. But in 950296f661499f499b0a5776ce7fd91a66c2a63f,
they use manually this onchange method in the copy, which is not needed
with computed field (bug introduced certainly during a forward port).
Task-2226235
closesodoo/odoo#48531
X-original-commit: 63712e106dfae6ef99d93a0ba2ff4102ed430719
Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
journals that were not of type sales and journals.
We update the hence of the view to take into account the original
invisible domain plus the domain we need for journals that use documents
closesodoo/odoo#48526
X-original-commit: 085fd43fd0b8a13dd713fbb4e34126ebe63ea504
Signed-off-by: Josse Colpaert <jco@openerp.com>
During the recent refactoring, the order reversal of the post messages
was dropped by mistake;
closesodoo/odoo#48523
X-original-commit: cffe6c305a64abfcc7a10fd8ab837398915ed906
Signed-off-by: Rémi Rahir (rar) <rar@odoo.com>
PURPOSE
After the latest developments on survey, notable sessions and "free text
questions", a few minor bugs have been introduced.
SPECIFICATIONS
General specifications, see sub-commits for details:
- When showing correct/incorrect answers on bar charts, the correct answers
bars should not be faded out.
- When going from the Leaderboard to the "Final Leaderboard", it should not
duplicate the results.
- Correctly handle "free text sections" in survey sessions.
- Exclude pages that have no description in 'page_per_question' layout
- Correctly navigate through survey with conditional questions activated
- Fix minor issues with the "back" button on survey
- Skip section with no active questions (when conditional questions configured)
Task 2208574
closesodoo/odoo#48442
Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
This commit applies conditional questions management on the
"_get_next_page_or_question" method in "page_per_section" questions layout.
We choose the first section that has at least one active question when
searching the next section to display.
Indeed, a whole section could contain only disabled questions based on the
previously selected answers of the attendee.
(The logic is obviously reverted when "go_back" is True).
PR #48442
Task ID 2208574
This commit fixes 2 small problems when the user goes back on the survey form:
- The back button should not be shown on "page_per_question" layout if we are
on the first page of the survey.
Pages can be displayed on "page_per_question" layout if they have a
description since #44271
- Can't go back on "page_per_section" layout if you are on the second page of
the survey, introduced by 0675d68afb
LINKS
PR #48442
Task 2208574
This commit remove unecessary array around triggered_questions_by_answer values
that is used at the client side to find inactive questions.
Before this fix, when looping through every elements of
triggered_questions_by_answer, we got an array, instead of each question id
separately.
PR #48442
Task ID 2208574
We now have a way to display "free text sections" during the survey flow.
(Since 5b74f54396 )
However, the behavior during survey sessions was not optimal:
- Attendees could click on "submit" and it would raise an error
- The section description was not displayed on the host screen
- The section description was never the "current question" of the session of it
was the first item of the question_and_page_ids
This commit fixes all those points to have a nice session flow.
While the host is explaining the section description to the attendees, they get
a waiting message on their screen.
In addition, we fixed the display to avoid showing pages that lack a
description, and we reworked the '_get_pages_or_questions' method to have more
meaningful and readable cases for every layouts.
LINKS
PR #48442
Task 2208574
This commit fixes a problem where the "final leaderboard" would duplicate the
attendees ranking display if the last question of the survey is scored.
We now also directly close the session when the host hits "next" on the last
question and there is no leaderboard to display.
LINKS
PR #48442
Task 2208574
This commit fixes the faded out answers bars on choice questions during a
survey session.
The logic is currently inverted (correct answers are faded out instead of wrong
ones).
LINKS
PR #48442
Task 2208574
There is a discrepancy between what country is used to compute the
fees for a transaction depending on where we are in the payment flow.
At rendering, the country of the order's shipping partner is used (since
it is set as the main partner in the rendering values dict through
`render_sale_button`).
At creation, the country of the partner is used (since the
`payment.transaction` record is created with the order's main
`partner_id` in `_create_payment_transaction`).
This is unfortunate and can cause issues with payment flows if there is
a mismatch between countries of the shipping/invoice/main partner, as
the fees may be computed as 'international' in one case and 'domestic'
in another - this causes the values sent to Paypal to differ from those
saved on the transaction, which causes the transaction to be rejected
upon return from Paypal because of an amount mismatch.
Since the transaction is created using the main partner of the order,
I believe it is preferrable to use it for the rendering as well. Some
may dislike this choice, as it means that if you use these fees to
manage your delivery fees, a customer with a shipping address to is not
the same as the company's country will pay domestic fees, while they
should pay international ones. However, this is mitigated by the fact
that:
- this did not work before this commit (hell of an argument)
- the delivery module is there to handle those cases with much higher
configurability
- having a consistent computation is more important than managing this
case
opw-2225023
closesodoo/odoo#48519
X-original-commit: a8689769afa22fb633f2e911f1a4dea6caa193d3
Signed-off-by: Damien Bouvy (dbo) <dbo@odoo.com>
Change icon for documentation link to fa-question-circle in green.
Task ID 2226026
closesodoo/odoo#48469
Signed-off-by: Yannick Tivisse (yti) <yti@odoo.com>