Use the mention mechanism of the composer to autocomplete on canned responses
(keyword :) with fuzzy search.
Directly perform the string replacement in the composer, instead of
server-side as before.
Add a menu item to access an editable list view to create and edit canned
responses.
Add two canned responses as demo data.
to prevent crashes if the user types, e.g. a \, in the partner's autocompletes
in Discuss ('Add a DM' in sidebar and 'Invite people to channel' dialog).
A 200ms delay is set on lookups for mention suggestions to prevent triggering
RPCs when the user is still typing. However, there shouldn't be a delay when
the suggestions are looked up in the prefetched suggestions.
Also fixes a bug that might occur when the user starts typing a mention which
triggers an RPC, but erase it before the RPC returns.
The BasicComposer widget is now used in chat windows, which enables the mention
feature. This is only for the backend, as for the livechat windows in the
frontend, the composer is still a simple input.
Classname 'o_chat_input' has been renamed into 'o_chat_composer' (the root
classname of the basic composer) for uniformity in the JS and LESS code of
chat windows.
It's needed by the onchange on product_id. Without this the price will
be correctly computed by `onchange_product_id` but upon saving the
record tax_ids will be lost.
Closes#11875Closes#11705Closes#10378
* removed hr.timesheet.report as it's mostly redundant with regular
views on analytic lines
* moved "detailed activities" to reporting, renamed it, added a pivot
view
* redirected timesheet link from HR dashboard to the detailed activities
action
- added department_id to analytic lines as that link is filtered by
department
- fixed bug in kanban view: button context wasn't evaluated in the
correct context
The followers of the departments subscribed to the
`Leaves/Allocations Confirmed` are supposed to
receive a mail notification when an employee
confirms a leave request.
It was no longer the case since the below revision:
2be1dfc1ed
This revision subscribes the followers of the department
following the `confirmed` subtype manually
,on the leave request confirmation, because
`message_auto_subscribe` only works on fields for which
the value is passed to the `create` or `write` methods,
it doesn't work for related/computed fields
This can be removed as soon as `department_id` on `hr.holidays` becomes a regular
fields or as soon as `message_auto_subscribe` works with related/computed fields.
opw-676521
It's about 'Receipt Reference code' which gets generated when Order is
created from POS .
After this, click on 'RETURN PRODUCTS' button, the return Order doesn't
fetch the "Receipt Ref" of the origin Order, so there is no way to find
the origin order from where the return of the products done.
- Y axis : according to 12 hour or 24 hour format
- Event title : following time format in preferenced language
NB: The conversion from 'A' to 'TT' to match fullcalendar v1 should be
removed when fullcalendar is updated to v2, as the syntax will change.
See : http://fullcalendar.io/wiki/Upgrading-to-v2/
Since 3d8f7c2f, res.config support selection fields to set groups and install
modules using a selection field instead of boolean.
While the `module_*` fields are correctly casted from boolean to integers, it
was not the case with `group_*` fields.
This commit forces the conversion to get the expected field format value.
Closes#10373
When the user has several addresses, the call to the onchange method
`onchange_partner_id` will overwrite the actual invoice address chosen.
opw-675935
Without the proper decorator, the method is matched as `cr_ui_context`.
This is because the `guess` mechanism expects a name `res_id` instead of
`record_id`.
For stability reason it is better to add the decorator than modify the signature
of the method.
Closes#11735
When a kit is set with a valuation = "real_time" and invoice_policy = "delivery",
the price unit of the kit computed for the Expense Account in the the journal of
entries must be the sum of the average price of each component of this kit.
Used case:
Create a kit001 with:
*General information:
-Product Type=Stockable Product
-Invoicing Policy=Delivered Quantities
-Sale Price=100$
-Cost Price=80$
*Inventory:
-Route=Manufacture
-Internal Category=All/Sealable
*its product category set with
-Expense Account=210000 Cost of Goods Sold
-Costing Method=Standard Price
-Inventory Valuation=Perpetual(automated)
*a bom of two components child001 and child002
Create child001 with:
*General information:
-Product Type=Stockable Product
-Invoicing Policy=Delivered Quantities
-Sale Price=100$
-Cost Price=70$
*Inventory:
-Route=Buy
-Internal Category=All
*its product category set with
-Expense Account=210000 Cost of Goods Sold
-Costing Method=Real Price
-Inventory Valuation=Perpetual(automated)
Create child002 with:
*General information:
-Product Type=Stockable Product
-Invoicing Policy=Delivered Quantities
-Sale Price=100$
-Cost Price=10$
*Inventory:
-Route=Buy
-Internal Category=All
*its product category set with
-Expense Account=210000 Cost of Goods Sold
-Costing Method=Real Price
-Inventory Valuation=Perpetual(automated)
Create a SO with:
-one line with the kit001
Confirm the SO
Validate the Delivery
Create and view the invoices
-per invoicable lines(deduct down payments)
Validate the invoice
Result:
Before the fix: in the entry created for this invoice, the debit for the kit001 in Cost of Goods Sold
was equal to 70 instead of 80.
After the fix: the debit for the kit001 in Cost of Goods Sold
was equal to 80(the sum of the average price of each component of the kit001).
opw:674608
An OFX file can contain more than one account. Therefore, we need to
loop over all the included accounts, otherwise statements will be
missed.
opw-673814
The web_editor.colorpicker defines a series of color buttons which
toggle the bg-* and text-* classes. The problem is that themes can
define new buttons whose bg-* and text-* classes only exist in the
frontend. So these buttons should not be displayed in the backend.
Only solution for the current implementation is to add this ugly rule
(in this backend file) which hides every button and redisplayed the
default ones.
This fix is temporary and has to be improved in next versions.
The editor had been restyled thinking its DOM structure was the same
in every context. The problem is that the message composer editor
DOM structure is different. So, some important style like button
icons were missing in this context.
When migrating stock, some dummies methods have been removed. Indeed those
calls make more problems than they solve by adding unnecessary complexity
around simple methods. However it seems some calls have been left in the
process :
- _get_act_window_dict which is basically an env.ref or act_window.for_xml_id
- _get_products which is basically having all product_ids from template by
iterating on product_variant_ids.
This case corresponds to searches like `[(field, 'ilike', name)]` where `field`
is a many2many field. The domain processing performs a `name_search` on the
field's comodel, then makes the relation match the returned record ids.
Problem: the call to `name_search` uses the default limit (100), and this makes
the search return less results than expected. Make the search complete by
forcing `limit=None`.
This case corresponds to searches like `[(field, 'ilike', name)]` where `field`
is a many2many field. The domain processing performs a `name_search` on the
field's comodel, then makes the relation match the returned record ids.
Problem: the call to `name_search` uses the default limit (100), and this makes
the search return less results than expected. Make the search complete by
forcing `limit=None`.
Wizard models are migrated to new API. No change is performed to code
structure or functional structure. Some code cleaning may be performed when
migrating to simplify the code. Other files may be updated due to the move
towards the new API.
Incoterms model is migrated to new API. No change is performed to code
structure or functional structure. Some code cleaning may be performed when
migrating to simplify the code. Other files may be updated due to the move
towards the new API.
Incoterms models and views are moved in their own file. Impacted:
- stock.incoterms
This commit only moves files. No change is done.
This last commit is done by renaming the remaining code in stock.py file. We
hope this helps keeping a bit of history by being able to retrieve the original
stock.py file.
Procurement model is migrated to new API. No change is performed to code
structure or functional structure. Some code cleaning may be performed when
migrating to simplify the code. Other files may be updated due to the move
towards the new API.
Product models are migrated to new API. No change is performed to code
structure or functional structure. Some code cleaning may be performed when
migrating to simplify the code. Other files may be updated due to the move
towards the new API.
Impacted models
- product.product
- product.template
- product.removal
- product.putaway
- stock.fixed.putaway.strat
Production lot model is migrated to new API. No change is performed to code
structure or functional structure. Some code cleaning may be performed when
migrating to simplify the code. Other files may be updated due to the move
towards the new API.
Location models are migrated to new API. No change is performed to code
structure or functional structure. Some code cleaning may be performed when
migrating to simplify the code. Other files may be updated due to the move
towards the new API.