On databases with a large number of res.partner entries,
the extended name_search of analytic accounts was prohibitively
slow, due to the expensive name_search on res.partner.
Restricting the search to the partner name is extremely
similar business-wise, but makes a huge difference in
terms of speed. E.g. sub-second results vs 10+ minutes
for a database with 30k analytic accounts and 600k partners.
IE11 and IE Edge presented issue in the project kanban view with content
overflowing its container.
On IE Edge it could be solved by "min-width:0" on the left part of a
kanban card, so it was an issue in the computation of widths order.
But on IE11 that wasn't enough so a less elegant fix has been used.
opw-653477
(solution found mainly by qsm)
The error message on the journal entry for currency was wrong.
The multi-currency view does not exists anymore in 9.0 so is no longer relevant.
To avoid breaking existing translations, create a en translation.
Rename the en_US.po to en.po to be used by _GB and _AU
Will be fixed in saas-7 by the mighty @csnauwaert 📯
In v8.0, a procurement is not created by default. Only sale_stock and
sale_service will create procurements, since they are only used for
physical products or task-related services.
In v9.0, the behavior was changed and a procurement was always created.
This is not necessary, since the procurements are still only used for
physical products and task-related services. This behavior will just
lead to the creation of procurements which will fall into exception
(method `_assign` will return False).
This fix switches back to the previous behavior. The other solution was
to prevent the exception, but it will imply that useless procurements
will pile up.
opw-654363
When a PO is created from a procurement, the field product_id of the
supplierinfo is not taken into account when the possible vendors are
chosen. For example, let's take the following situation:
- A product with 2 variants (color White and Black), route MTO
- Two vendors are created, one for color white, the other for color
black
- When a SO containing the 2 variants is created, only one PO for the
same vendor is created for both products.
With this fix, 2 POs will be created, linking the appropriate vendor and
variant.
opw-657362
The mentioned available currencies are a leftover from the old
account.bank.statement.cashbox which would show a pre-defined list of
'currencies' (eg. .05, .10, .50, 1, 2, 5, 20, 50, ... for Euro). Since
accounting v9 this is no longer how it works, the wizard now just
consists of value, amount pairs that the user has to fill out.
opw-653111
The Website Live Chat is supposed to appear following 3 ways outside of
the backend:
- in a singleton page with path /im_livechat/support/{id}
- in a page in which a code code snippet (with two script and a css
bundle) has been inserted in the head section
- by installing the module "Website Live Support"
In the first both instances, including some less files and bootstrap
default variables is required which this commit do.
In the last instance these file should already be included in the
website and the additional assets required are inserted in the
website.assets_frontend bundle.
opw-654898
Emails are now send once by recipient. If there is a partner_id, use it as
recipient using the correct recipient_ids field, not partner_ids (not the
same meaning, recipients for emails use recipient_ids). Use the email_to
if there is no partner_id. Indeed this method is called with partner_id
and email being the same recipient.
Also added auto delete to generated emails. As partner_ids is not used anymore
the mails are not considered as notifications and stay in the mail_mail table.
There is no need to stock those emails.
A simple browse with `uom=` as parameter does not convert
virtual_available in the requested UoM. Therefore, we need to convert
manually in the standard UoM of the product.
Bonus: is_available depends on self.route_id
For some unknown reason, the salepocalypse project completely screwed up
the availability check of the product. This commit adds back the check
as it used to be.
opw-653991
`mass_mailing.unsubscribe` depends on
1. `web.ajax`, as it uses `ajax.jsonRpc`
2. `web_editor.base`, to explicitely wait
for all dependencies to be loaded,
so the DOM can contain `o_unsubscribe_form`
opw-654396
`fields.Date.context_today` can be used as default value
for Date fields,
but, for Datetime fields, it shouldn't be used, as
this doesn't contain the time, only the date.
`fields.Datetime.now` should be used, as this includes
the date (in UTC, as expected).
opw-657294
Synchronize the unread counter between chat windows, client action and the
actual value stored in DB. This adds robustness to the counter displayed in
chat window, and allows to synchronize the client action with the chat windows
when marking messages as read.
- emoji are no more clickable in threads (they are only in the popover)
- correctly update channel needaction counter
- don't display 'New message' notification when the channel in detached
- display in the ui channels that send emails and other channels
- prevent notifications in mass mailing channels
- increase bottom padding in client action thread
Buying a ticket is limited either the number of available seats on the ticket
and on the event. So compute the minimum between those two values to display
the selection.
The method `process_reconciliations` is written in api.v7.
Therefore, any calls done on ORM models must be done
in the 7.0 API in this method.
To reproduce the issue:
- Open a pos session, and sell something, select a partner
and choose to create an invoice.
- Come back to the back-end, and in the accounting dashboard,
in Customer Invoices > More > Matching payment,
hit ctrl-enter to reconcile all the balanced items in the sheet.
opw-654410
Fixes regression introduced at 4d9e36a459
that caused all custom (manual) models to be reset to "base" models.
This prevented the creation and proper use of custom models.
opw-657017
Closes#9670
Partial version of #9663
On website_quote, according to the translation, the label may become much larger than
the button width. By default the bootstrap btn class has the property 'white-space: nowrap'
Here the goal is to add a class which will be used for these kind of cases.
This commit concerns DM and livechat channels. Those channels are now
automatically detached on the receiver side. This allows users to directly
reply to DM's or livechats without coming back to the client action.
Note that they aren't detached if the user previously manually closed the
channel's chat window.
The livechat channels returned by the chat_manager's initial RPC were ignored.
Livechat channels thus weren't persistent in the client action.
This rev. cleans the returned object 'channel_slots' so that it only contains
arrays of channels. The additional mapping and partners array were useless as
the information they contained was directly stored in the DM channels.
We now simply iterate on each array returned and add each channel it contains,
including livechat channels.
DM channels are supposed to be pinned on each partner's side when a message
is post in the DM. This didn't work because we checked if the channel is a DM
by comparing its type to 'direct_message', which is not a valid channel type.
Also stop marking the DM as pinned in channel_join_and_get_info() as it is now
useless.
This commit splits the changes which affect the product_id and the
changes which affect the product quantity. The main reason is that a
product change should trigger the recalculation of the price unit,
while a change in the quantity should not trigger product-specific data
recalculation (such as the name or the taxes).
The original issue was the following:
- set a supplier for a product with a minimum quantity larger than 1.0
- create a PO for this supplier and this product: since the minimum
quantity is not met, no tax is set on the line.
- change the quantity to the minimum quantity of the supplier
- the tax is set on the line, but a warning pop up confuses the user by
asking if it is necessary to discard the line since Odoo and the user
changed the same line.
This commit prevents this warning, and moreover it will set the taxes on
the product right away.
Bonus: if you change the product of an existing line, it will not keep
the privious quantity/price values, which was the case before.
opw-656729
This commit introduces the suggestion of a minimum quantity for the
chosen vendor. The minimum quantity is suggested only if the quantity on
the line is zero. It still allows the user to set a quantity smaller
than the minimum quantity for the given vendor.
opw-654300
When inputting a payment, you can toggle between positive and negative
amounts by pressing the minus key. We use a string representation of
what the user inputs and then parse it to a float to do calculations. So
what can happen is that you can type in an amount of "-" or you can have
a payment of "-2" and do one backspace. Both of these would trigger the
problem because "-" is not a number.
Better message management, linked to the validation feature added in v9
- post a "new post to see" message only when the post is validated
- post a "new post to validate" message when the post has to be validated.
This message is sent only to followers having sufficient karma.