This commit proposes to simplify payment acquirers configuration in
backend and frontend. Includes mainly
* configuration boxes for website admins at checkout process;
* better and fixed display of transaction status at checkout;
* hide unnecessary fields for transfer provider;
This commit merges 'dev/master-payment-tde'.
Nothing prevents the deletion on invoice line at the Python level. Other
modules might give access directly to the invoice lines, and make their
deletion possible when the invoice is not draft.
opw-743154
Indeed as transfer transactions are always pending and independant of
any callback, it is not necessary to see credentials, auto confirmation
settings and error / cancel / done messages.
Currently displaying tx status after checkout is done using two templates
and two separate pieces of code, aka "order_state_message" and
"payment_confirmation_status". This leads to checkout information
being displayed twice in the page. It is displayed once before the
order details and once after payment information.
This commit simplifies the code to display only once the transaction
status after payment information. This one is the "polled" one aka
refreshed automatically several times to try to catch responses from
payment providers.
From the confirmation message it is also now possible to directly jump
in the backend for website administrators in order to edit the displayed
messages.
Currently /shop/payment controller perform some data processing. It calls
model methods _get_errors and _get_website_data that are defined on sale
order model only to be inherited in website_sale_delivery.
This commit proposes instead to have a data processing method in sale
controllers that is inherited in website_sale_delivery. There is no need
to have model methods only to format data.
The license entry in the manifest files for these modules were
leftovers from previous versions.
Once integrated in Odoo Community they share the same license as all
other modules, as mentioned in the LICENSE notice at the top of the
files.
opw-743686
- Sell a product in the POS
- Go back in the backend
- Return the product
- Click on "Payment"
The user is allowed to select any journal. It should be restricted to
the payment method available in the POS.
opw-743585
Before this commit, when a test in the qunit test suite failed, the
error displayed by the runbot was not really interesting. It just said
that test_01_js failed. With this commit, each assertion error is now
logged as an error, which means that they are displayed in the short
error log by the runbot.
With this commit, we introduce a benchmarking infrastructure: a new
controller, accessible at the route /web/benchmarks which will render a
new template (web.benchmark_suite).
This template uses benchmark.js and qunit.js to display a list of
benchmarking informations. For example, the number of op/s for
instantiating and destroying a list view.
I hope that this is the start of the beginning of taking the habit to
check our JS code performance sometimes, and making sure we do not have
large regression without a good reason.
The form renderer defines inline style on the groups it renders to
set the width of their children according to the col and colspan
attributes specified in the view.
However, before this rev., this impacted inner list views (for
x2many fields), as their columns get an harcoded width as well,
whereas they shouldn't.
This was for example the case in the stock.location.route form
view, for the push rules and procurement rules o2m fields.
The license info for these modules was a leftover from previous versions.
Once integrated in Odoo Community they share the same license as all
other modules, as mentioned in the LICENSE notice at the top of the
files.
opw-743686
- Create an expense, approve.
- Register the payment by check
- Print the check
The amount in words is not written.
The core of the issue is that the wizard
`hr.expense.register.payment.wizard` has been defined as a brand new
model instead of inheriting from `account.register.payments`. Hence the
Enterprise module "hr_expense_sepa" and now "hr_expense_check".
opw-742305
When PO and SO used the same sequence, a vendor bill with a source
document equal to the sequence of a SO could be displayed by this
SO(in the smart button "invcoies").
opw:693991
- Create a PO with a line scheduled 2017-07-01
- Validate the PO => the expected date of the related stock move is
2017-07-01.
- Modify the PO line date to 2017-07-15 => the expected date of the
related stock move is not updated.
Since we allow the modification of the scheduled date, we should make
sure that the related information is changed accordingly.
opw-741815
Before this commit, the tour tips were overlapping the chat windows.
This was due to the fact they always had a z-index of 1051 wherever
they were. If a tip was placed in a location where none of its
ancestors created a new stacking context, the closed tip was then
positioned above everything else, including the chat windows.
A simple solution would have been the one proposed by this commit:
https://github.com/odoo/odoo/commit/856e78b35a47a8732e5bd4da1cce247df70e5414
However, as it explained, this would not be entirely correct. In the
website, elements are using z-indexes and would thus hide closed
tooltips when it is not wanted if those have no z-index at all.
The solution this commit is making is to force the creation of a
stacking context for tooltips' parent. The z-index will still exist
on all tips (closed and not closed) to force them above every other
elements, but now only elements of the same parent. This is indeed
more correct (but maybe still not entirely): website tooltip are
often placed in the body (as it is the element which scrolls) and
are thus still placed above elements like the navbar as their
z-index is left high. However, when placed in the appswitcher, they
will now be placed above appswitcher elements only (and thus not
above outside elements which are themself above the appswitcher
(e.g. the chat windows)).
opw-743330
Caused by a stupid programming error.
Also refactor a bit the code that performs mention RPCs (that are
throttled) to allow to override the throttling value for the tests.
Editable grouped list views isn't a supported feature. Before this
rev., grouped lists weren't automatically set as non editable, so
it could cause crashes when the user clicked on rows of grouped
lists with editable="top" or "bottom".
This was for example the case in Timesheets > All timesheets ->
go to list view.
The 'data' attribute of exported datapoints (using 'get') must
contain a value for each field in the view, and the default value
is false when those fields are unset. The code manipulating those
datapoints supposes that this is the case and it makes it easier
and clean.
However, it wasn't the case for x2manys in new records for which
the default value contains CREATE commands with missing fields:
in that case, those missing fields weren't added in data.
This caused a crash in the Employee form view, in edit, if the user
clicked on 'Create and Edit' of the 'Working hours' field, because
some code in field_utils assumes that if the value of a date field
isn't false, it means that it is a moment instance (but in that
particular case it was undefined).
in res.company write(), create a sub method _validate_fiscalyear_lock()
so that it is easier to inherit to modify or extend its
functionality.
Was PR #16615
Introduced by 8f39ad2be6 which was
intended for 9.0. It does not work well in 10.0 because here users
have the possibility to specify their own tracking numbers directly in
the POS interface. This causes issues when eg. the user specifies the
same lot number as is already reserved by the system.
opw-742657
[IMP] point_of_sale: Improve `New Session` button label if already opened
When another user has a POS session open. Do not show the New Sesson button on the dashboard. Hide it and replace it by the string 'A session is already opened'
[IMP] pos_restaurant: Move some technical fields in debug mode
[IMP] point_of_sale: Remove tooltip for barcode
[IMP] point_of_sale: All to restict product price control to managers
Either:
- Everybody
- Only managers
should be able to modify the product price on orders for a given point of sale
[IMP] pos_restaurant: Exit table edit mode via 'ESC' button of keyboard
Creating a mail template which is complex and compatible with all mail
clients is a very difficult task as each mail client supports a
different subset of basic CSS rules.
This commit fixes 3 problems which were occuring in outlook and/or
thunderbird but not in gmail:
- Main layout horizontal overflow
-> change 24px horizontal padding of main layout to 3% and set the
width to 94% (so that the sum is 100%)
- Fixed 600px content was full width instead
-> Change the .o_mail_wrapper to be a <table> element instead of a
<div> element. The table is full-width and contains one row of 3
cells: an empty left one, a fixed 600px-width center one and an
empty right one. This allows to have the same layout as before but
without using the unsupported max-width css rule.
- Texts were not using the right color and font-size
-> <p> elements were not properly inheriting the color and font-size
properties, so force the style on <p> elements.
opw-743156
This was causing an error in the form rendering as a group does not
accept text as direct child (and displaying '/>' as text was probably
not the desired behaviour.
The buttons were not updated after column creation.
This was causing an issue in an empty kanban when you created a new column,
the 'Create' button was not highlighted.
After the record deletion, the parent should be updated to take the deletion
into account.
This was causing an issue in the Kanban view: after a column deletion, it appeared
again if you created a new one.