In v8, some fields were added for the product.pricelist formview by
template inheritance : after the active field. For v9, this active
field was moved in a button_box button (archive stat_button), so the
added fields (inheritance) landed in the stat_button too.
The journal_id used in a purchase.order created in auto procurement
(by the function make_po) must be the journal_id of the company_id
set on the procurement. The company_id set on the procurement is
the company_id set on the SO (function _prepare_order_line_procurement).
When creating the PO in function make_po, the company_id must be set in the
context to use the right journal_id with the function _get_journal in
"purchase.order" model.
opw:648600
* Group with 6 columns caused problem when inside a dialog because of
wrong use of labels.
* Use o_row to align input followed by a '%' sign.
* col=6 group should not be in a parent group (moreover: this group was
alone in this parent group).
- Change the widget behavior from asynchronous to asynchronous, by adding 3 related fields
on the project.task model, which are the custom labels defined for the stage
- Instead of making a rpc call, we are taking directly the labels on the parent for the kanban view,
or on the view datarecord for the form view
- There are now 2 templates for the kanban view or the form view
- The development has been backported in the community version
- The options attribute has been removed on the project_view.xml file for the kanban_state field
It was preventing pos managers from opening sessions for pos
users. Because pos users cannot open their own sessions, this means they
couldn't do anything anymore.
The reason for it is that the open frontend function checks whether or
not the opened session belongs to the current user. If it doesn't, it
throws a UserError, which prevents the session from being
created. That's all open_frontend_cb did when called from
wkf_action_open anyway, because the action it returns just gets ignored
in the workflow.
This also removes the validate & open session button because the only
reason not to use the new dashboard to create a session is when you want
to create a session for a different user. When doing that, validating
and opening the session yourself makes no sense. When people do want to
create a session for themselves without using the dashboard they can
still do so, they will just have to save the session form and then click
on the continue selling button.
The tax code of `Iva al 10% indetraibile (D)`
is `template_ivacode_pagata_10ind`, like its
sibbling `Iva al 10% indetraibile (I)`.
The fact it wasn't is due to a typo.
Something similar is done with the taxes
`Iva al 20% indetraibile (D)`
and
`Iva al 20% indetraibile (I)`
with the tax code `template_ivacode_pagata_20ind`
opw-649557
Closes#8047
The get_value method of field radio returned sometines an undefined
value (while it is expected to return false is there is no value).
This caused traceback for siblings fields trying to access the value
of an empty field radio (onchange, ...).
The pos search uses keypress instead of keydown event. The virtual keyboard has thus been fixed to trigger the same kind of event.
Using keypress instead of keyup also made the search behaviour erratic. This is fixed with the appropriate use of a timeout.
Finally a keydown listener is added to update the search after a backspace or delete.
The structure `filename*=UTF-8` works in Safari, from
release 6.2 (which is set as version 537 in the user_agent version).
This structure has the advantage to handle the UTF-8 encoding,
and therefore special characters, such as accents.
Therefore, from this Safari release, we use the same format
than other browser. For older releases, we use the format
`filename=`, without UTF-8, ASCII encoded, replacing
special characters by `?`.
opw-649863
It was allowed for all employees to read, create and edit
mail aliases. Only the deletion was prevented.
Nevertheless, giving the possibility to rename a mail alias
is allmost seen as a deletion, as you can rename it to something
that just won't be used anymore. Therefore, we can consider
to give any employees the rights to delete mail aliases.
Besides, not allowing the unlink leads to issues when the
mail alias is associated to a record the user wants to delete.
He was able to create the record, and its mail aliases, but
he could not remove the record, as he was not allowed to remove
the mail alias.
For instance, an HR officer was able to create a job position,
with its mail alias, but couldn't remove the job position he created.
Closes#8466
* Adapt LESS rules so that the tables are top aligned and respect
correct margins.
* Set td min height so that toggling between edit mode and readonly
mode does not modify the table cells dimensions.
* Before this commit, clicking on a target to edit while one was
already being edited closed the new editable target immediately.
Flex 0 0 x% layout is broken if content is larger than x% with nowrap
white-space property. Solution is to change in flex 0 0 auto and force
width to x% thanks to the width property.
Also: was always a problem on firefox windows.
Add "web_editor_inside_iframe" id in web_editor iframe template to apply css style only when the field is in html field.
Remove "content" css media query in iframe editor to remove scrollbar.
If the iframe is destroyed, detached, hide (eg: click on a record, return into the list view and click on an other record), the render_value method try to resize the iframe but jQery raise an exception because contentWindow doesn't exist.
Payment transactions referenceis have a unique constraint which was problematic when a payment was cancelled from the acquirer's page.
To stick the to DRY principle, I factorized a method that checks for existing references and happens a numerical suffix if necessary.
This was already implemented in website_payment but was moved to payment and used in website_sale.
The message used in 'valid_inheritance' was not very helpful when the
inheritance validity was not passed.
You only knew that some view was not OK without knowing which one.
We now use the 'raise_view_error' method, which can already display all
the meaningful info (view_id, parent_id, view name, ...)
When a SO is linked to the analytic account: ensure the SO is validated and warn user if not
When there is no SO: simply register the line on the AA; registering expense lines on analytic accounts must not require the use of a sale order
The amount displayed in this sales button
is the amount sold for this opporunity,
not for this specific partner, see
See `_get_sale_amount_total`
Therefore, forcing the `search_default_partner_id`
was wrong, as the sale orders could be on other partners
(for instance, the partner parent/`commercial_partner_id`)
The domain `"[('opportunity_id', 'in', [active_id])]"`
is already applied on the window action anyway.
See `sale_action_quotations`
opw-649712