Before this commit, if a message thread was loaded 2 times, the first time
the date was well formatted, the second time that fail because momentjs cannot
parse the localized date from some locale.
Luckily, it was not bugged by default in english, because moment was able to
reparse a localized US date. But in some local as french, momentjs cannot parse
the localized date and return 'Invalid date'
Now, we move the code, to be processed only once by the chat manager, and not
in each process of the thread.
This commit closes issue #13258
Courtesy of @aab-odoo
When changing the contact details of a partner which is a company contact,
all the fields related to the address must be set on the commercial partner.
The address displayed for a company contact is the address of the commercial
partner.
opw:686335
When 'search_default_job_id' is in the context, the department set for
this job must be used to filter the right stages(_read_group_stage_ids).
opw:685896
When the user clicks on "Activate here a new currency...", it opens a
pop-up with the list of currencies. However, there is no pager for such
a list view, and not all currencies are accessible.
opw-686626
The product_manager field is existing since v6.0 and never displayed in any views. It is used in sale_timesheet module. A task created from a procurement_order (if it is a service and we track the service) is assigned to the product manager. It doesn't make a lot of sense as the value should be set directly in the database. We will remove the field and assign the current user to the task instead, which is the common behavior in Odoo.
This function attempted to deduplicate states with same code in order
to force the unique constraint creation. This is the job of a migration
script and should not be execute at each update.
Moreover, the current implementation is flawed and may lead to crash in
some situations.
Add a link in the general settings to access easily the default_user form view in order to modify the default access rights
The default_user manager rights declarations in all the applications have been move in a noupdate="1" definition to avoid the manual configuration overwrittings
It's ok to give the 'Manager' rights to new users for small companies or new saas instances so that newly created users can direcly use all the features.
For bigger companies, someone is creating the new users and give the rights specifically according to their access rights in the company departments.
But granting administrator access by default is definitely questionable. The main admin is bound to make mistakes and fail to notice or remember that they have given admin access to new users. Making the system insecure by default is not a good trade-off for "simplifying the system for small businesses". And this will not be expected by anyone.
better patch for rev e9b649b555
* also fixes website_event which present the same issue (depends
on a function that slugs)
* raise an exception when slug is called with wrong arguments
instead of returning None (which was unclear)
* before calling slug in a function where we got a depends, check
that the record is actually created
A typo probably introduced during the migration to the new api may have
caused duplicates to appear in the name search results since it added
the ids of the wrong recordset.
The previous fix, while effective, also removed a previous optimization
for databases with a lot of products. While the code may seem obscure
on first read, the comments should shed some light on the
implementation choice.
This commit therefore reintroduce the previous code with the exception
of the call to the wrong recordset (self instead of products).
Amends b02a85f
Courtesy of @rco-odoo
When posting POS entries with the "group entries" option set on that
pos config (which is the default), it is possible to have bad net
amounts in the tax report because taxes are not used as a grouping
parameter, allowing the system to potentially group pos order lines
which have different taxes together.
Also, take into account the fiscal position set on each order when
creating the move lines (the correct tax for a line is a compute field,
so this commit may actually cause some performance degradation for big
pos sessions).
Amends 150bf7d
opw-686168
The key 'tax_code_id' does not exist anymore, therefore the condition
line.get('tax_code_id') == values.get('tax_code_id')
was equivalent to
None == None
which is of course always True.
To make this code more readable and avoid misunderstandings, a clearer
loop implementation avoids checking for this key.
Since the commit odoo/odoo@36e875e which disable the second-guess from browser,
IE cannot display picture from Odoo where mimetype is wrong.
Before this commit, IE and probably other browser which one respect the header
'nosniff' don't display picture not_found and resized picutre via controller if
the original was not of type 'png'.
Eg: when we return the placholder 'not_found' if you don't have permission,
or when your resize the picture, ... we need to force the mime-type with the
new one and not keep the original mimetype.
This commit closes#13193
When you execute the slug method on a virtual record (not yet
saved, virtualid/newid) the slugs obviously fails as it needs
an id and a display_name.
This issue happens when there's a depends on a function field
using the slug method: just after the create and during the
onchanges, they'll raise.
This patch makes the slug method returns None in these case,
anyway the depends are re-triggered after the write and at
this time they have an id and everything is working fine.
Stock account is sufficient for Point of Sale. No need to set sale_stock as
dependency, as it installs Sales Management but is not required for running
the POS.
When an invoice is sent by email, the Paypal link is not included,
although it is in the template.
This is because the `paypal_url` field has gone missing after Accounting
refactoring.
opw-686216
This commits adds the check W0101 to test_pylint and fixes the errors.
The index in sequence.py was added in rev 1381ac139e and cancelled a day later in 83fdc271e6
so i guess it is safe to remove it.
A new field `create_variant` has been added on `product.attribute`.
If unchecked, the attribute will not create variant.
These attributes will be added on the sale order description if bought from the shop.
The lines of a product with these attributes will be splitted to keep the description.
Fp request: In the user preferences menu, remove "About Us" and put the version number in the Settings dashboard somewhere, as well as the link to switch to developer mode. Odoo is not a desktop application anymore.
For the need of the next commit, we have to know when making a request from an RPC call in which debug mode we are. Previously, the value was always 'true' if we were in debug mode. Now it will return 'true' if we are in simple debug mode and 'assets' if we are in the other one. (this is the current behavior for the simple WebRequest).
Why do we need to know that? When loading the settings dashboard, an rpc request to /web/dataset/call_kw to load the view is accessing the odoo.debug @property method. This value is used in the template to decide which buttons to display to activate or deactivate the debug mode.
==============
Specifications
==============
Add an option in the settings to use the surveys or not
By default : do not use interview forms.
If the option is false : on the job application, hide the Interview form field
A ticket whose seats_availability is unlimited, is not shown on saleorder line. Fixed it.
It should show all the ticket whose seats_availability is unlimited or seats_available is greater than 0.
========
Purpose
========
The graphs on the accounting dashboard give the impression that we had $0 in the bank because the graph is at the bottom of the kanban kard.
==========
Specification
==========
The bottom should be zero, the top should be the maximum of the visible period, and the rest of the graph should be proportionate.
Go to a URL such as `/blog/our-news-1?date_begin=2015-01-01`
Now click on page 2.
Without this patch you will go to `/blog/our-news-1?date_begin=2015-01-01/page/2`.
With this patch, you will go to `/blog/our-news-1/page/2?date_begin=2015-01-01`.
This commit closes#13206
When printing a BoM Structure report, the quantitites are not multiplied
down the line. For example, the BoM for Products 0 and 1:
Product 0
8 Units of Product 1
Product 1
1 Unit of Product 2a
2 Units of Product 2b
When printing the BoM Structure of Product 0, it shows:
Product 0
8 Units of Product 1
1 Unit of Product 2a
2 Units of Product 2b
It should be:
Product 0
8 Units of Product 1
8 Unit of Product 2a
16 Units of Product 2b
opw-686167
=======
PURPOSE
=======
In list view, when handling in mass the opportunities and mark it as lost, it
should be possible to set the lost reason.
The reason would be the same for all the selected opportunities.
=============
SPECIFICATION
=============
On clicking of 'Mark as Lost', ask user the lost reason through wizard. and then
set that lost reason to all the opportunities selected.
Commit ddbe0e1 introduces an error when the user tries to move a product
with a cost of zero. In extreme case, this is incompatible with commit
262d98b. For example, if one buys 10000 units for 17.60, and consumes one
unit at a time. The latter commit will split the quants in:
- 9999 quants at cost zero
- 1 quant at cost 17.60
This is the only solution to get a correct accounting.
However, that creates quants with a cost of zero, which therefore cannot
be moved anymore (consumed in MRP or sold).
We restrict the warning to products configured with "Standard Price".
Indeed, in this configuration, it is very lokely that the user made a
mistake / forgot to define the price of the product.
opw-686301