Firefox doesn't allow to access sheets cssRules
In such a case, we just pass, these css rules will simply
not be available for the edition of some inputs.
Probably, when a real use case needing these external css rules
will come, we will probably need to fetch these style sheets
another way.
opw-642752
In order to avoid the barcode system to work differently when migrating
from v8 to saas-6, we allow not to put a barcode nomenclature on the
picking type. When it does not have a barcode nomenclature, it uses the
same way to handle barcodes as in v8.
Until now, you could only sign and confirm a sale order from the frontend.
From now on, you can also pay sale orders if the 'Immediate Payment'
option is checked on the sale order.
- manage your sale documents from the frontend in the 'My Account' page
- move 'My Orders' page from website_sale to website_portal to manage your orders and quotations
- update website_sale_digital and website_sale_stock controllers and view
Feature: adding a recurring_invoice field on product_template; when a SO is linked to a contract, these products are added automatically
Moved to: sale_contract (internal module, will be shipped with v9/saas7)
This commit adds a new model, Payment Method, which stores
a reference to the payment acquirer's database and a reference to
a partner. Each payment module must have its own implementation.
The implementation is completely abstract but may not suit every
provider's way of implementing recurring payments.
It was removed at 2df9060d97 and broke
tests in community modules that relied on it.
Tests using it should switch to the new get_db_name() method.
Closes#7054
The commit 3269ad8f get back the behaviour of 7.0 (which changed in
october 2014) that when a field is overrided via the old api, attributes
of a previous definition of the field are lost.
This fix corrects the case when this behaviour might have had an effect
so specified attributes overrided don't get lost.
related to opw-639712
In 7.0, a field overriding an inherited model would overwrite all the
previously set field attributes. In v8 the new API allow us to keep
previous attribute, and only overwrite attributes of our wish.
Following the commit 7b1ef708 (october 2014) an old api field overriding
could conserve previous attributes values in some cases (if the new value
is falsy (None, "", 0, False, (), {}, [], ...) when it should not. It
was partly an optimization to diminish the size of orm registries
dictionaries to save memory (this patch has been tested with all odoo
modules and added +/- 3M).
This commit (proposed by rco) should overwrite falsy value (so the
behavior of v7 for old api fields overwritting is re-introduced) and
get back the behavior of old api in V7.
closes#7035
opw-639712
When the uom(Unit) set by default is not in the same category than the uom category of the product,
the uom of the product is set.
When the uom is changed, the theoretical quantity and the real quantity are recomputed.
opw:641027
When a product is scrapped, we set the reservation_id of the scrapped move on
the quant corresponding to the original move (e.g., the move which brought a
manufactured product from production to stock). By doing so, we will subtract
the quantity to scrap from the appropriate quant.
opw-641852
When filling the form (for invoice or delivery details), once a field has been
filled, it's no longer possible to remove the value of this field.
e.g. set a company, not possible to remove it when modifies the address
This is due to the `get(key)` call that is considered as False with empty
strings. Instead, check the existance of the key.
Still not accepting mandatory in the form (not checked in this method).
Fixes#7017
The stat button count included only reserved seats,
while, when clicking on the button, all attendees
were displayed: draft, confirmed, canceled, done.
Usability speaking, this isn't right.
Besides, once the attendee actually attended the event,
it wasn't anymore included in the count, which is not logical
either: by "Confirmed", you expect the reserved attendees
and the attendees already there.
In addition, on the kanban view, the link said "confirmed" attendees
as well, but redirected to the list with all attendees.
The "expected attendees" value on the kanban was along a "report"
link, bringing to the report where only confirmed seats are displayed.
Kind of non-sense.
Finally, the decision made:
- For an event, the more natural count that you want to see first
is the "expected" attendees, including draft, reserved and attended
attendees.
- Both buttons, on the form view and the kanban view now includes
draft, open and done attendees, and redirect to the list view
displaying only these attendees (canceled excluded).
- On the kanban view, you have a count more including the confirmed
attendees, including the open and the done attendees.
opw-642134
If an event exists on Google but was not synced yet in Odoo, the synchronisation
would fail.
When self.OE.found is False, self.OE.event is not defined and trying to access
it would fail (it's a python object, not a recordset)
Check the ownership after making sure the event is present in Odoo.
Fixes#7034
!! THIS SHOULD NOT BE FORWARDPORTED TO MASTER !!
When loading an action with a specific url (e.g. when refreshing the
browser), the view displayed before refreshing should be loaded
directly (except for form views, for which we need the default
view to be loaded first to keep the breadcrumbs intact).
Before this rev, it automatically first loaded the default
view for the model (i.e. the first view in the views' list), and
then switched to the previously displayed view. This sometimes
produced an error when using a filter needing a field not available
in the default view (e.g. Reporting > Project > Issues Analysis,
switch to the second view 'Graph', and then refresh -> Error).
This revision introduces a new key in the View widget: multi_record.
This key distinguishes views that aim to display several records
(e.g. List, Kanban ...) and those that display a single record (i.e.
Form and Diagram). We use this key to decide whether or not the
view stored in the url should be directly loaded (yes for
multi-record, no otherwise).
This reverts commit 291eb111b3.
By putting into the flags object the default_view stored into the
context (i.e. the one written in the url), it happens that a View
Manager tries to open a view which is not available. For instance,
Sales > Sales Teams. Then refresh the page. As we are in a Kanban
view, the view_type = Kanban is stored in the context. Then click
on Quotations in a Kanban card. It doesn't work because the
ViewManager tries to open the Kanban View of the Quotations which
doesn't exist.
When a logged call is created from the tree view, the mobile phone of the
partner is not filled in automatically, while it is in the form view.
opw-640549
When a user tries to log into a postgresql database with no view web.login (this
happens if the database is not an odoo database or using a previous version of
odoo), the rendering failed, producing a 500 error (with no detail for the user)
Instead, redirect to the database selector with an informative message.
Fixes#3443
The database selector page is a jinja template with no access to database
required so should be able to be displayed on any database.
Future improvement could verify the version of base module for even more precise
verification before login (but need to make sure it's always accurate).
When a sale order has in state != draft, we raise a error message since commit
f6c65a3d9e.
But if we don't reset the sale order id from the session, the user cannot
continue to navigate on website because the user will have the error each time.