Comparing an id and a browse record will always fail so the exception would have always been raised when changing a model (e.g. updating a module with custom fields).
The widget AddToDashboard used to make an ajax call every time the
search view is loaded. This is often useless and can be annoying when
that request is long. With this patch, the request is only done when
the user click on the widget AddToDashboard
Starting from v8.0, there's only "My Dashboard". We can assume that we
have access rights to all the actions we pin to our proper dashboard, so
we can remove this filtering. Furthermore, this was a large performance
pitfall.
product_id column of pos_order_line is a product_product
the left join of l.product_id was done on product_template, instead of product_product
It worked as long as the ids product_product were the same as product_template. Meaning that, if you used variants, this report view was screwed.
* [FIX] rename wrong mailing_type field and add missing fields when creating a mass mailing from the composer
* [FIX] coerce tooltip to an unicode string to avoid a json crash when locale produces a non unicode string for strftime(%B)
* [FIX] repair wrong sql statement computing statistics
through a server action, try to correctly set the value to write on a given
fields according to its type. For example many2one fields should receive an
int, not a unique containing the id of the new value.
It turns out TTFontFile can throw not only TTFError (generic) and KeyError, but also ValueError (unknown cmap) and maybe others.
Just catch Exception, warn that the font couldn't be loaded and report why.
Sometimes a node can't be translated using the website Translate
mode. The translation is added to the Application term list but
the id of the view is not correct.
This happen when a translatable node is a children of a inherited
node whose branding could not be kept. data-oe-source-id was left
over because it was not registered in MOVABLE_BRANDING
If a portal user has engouh karma, this is possible for him, at least graphically, to delete forum posts, even if is not the author of it.
So, he should be allowed to delete forum posts in the ACL
the pos session now keeps track of the session logins, and that number is
included in in the order reference. This prevents orders generated in parallely
created sessions from having the same reference, and also helps reduce fraud.
When this situation happens. the 'cost' is None and the web interface cannot handle this value, provoking a JS error. Thus, prefer to fallback on the standard way to get the cost: based on the current standard price of the product.
Fixes#1032
one2many and many2many fields depends on the security rules.
For instance, on products, with the taxes_id many2many fields, you only see the taxes of your own company, thanks to the multi company security rule
With related *2many fields, if you browse it with superuser, you will have all records of the one2many fields, even those you are not allowed to see, as superuser ignores security rules.
For instance, taxes_id of product.product is a related of taxes_id of product_template (through the inherits on product.template), and you should see the same taxes on the product template and on the product product (variant). This is not the case if the fields is read using the superuser
The domain was using '=', which is correct when selecting a specific
element in autocompletion, but not when searching for all elements
matching a string.