When processing an incoming email, we try to find a parent for the email based on references. Before this merge, it was done using openerp-<model-<res_id> pattern. However it is buggy. Indeed having two OpenERP sending emails to each other leads to messages being inserted in a wrong thread (model and res_id of the first OpenERP for both instances).
Now we search for an exact match between the references and the stored message_ids. As each message_id can be considered as unique the number of collisions is lessened. This won't cause any issues with OpenERP >= 7.0.
A compatibility mode is implemented for <= 6.1: as in those versions the message_id is not stored, we fall back on the previous behavior for records having messages without message_id. This indicates that the record was created before 7.0.
Tests have been updated accordingly, and a test added for the compatibility mode.
bzr revid: tde@openerp.com-20131205100534-2rlyun8wqng3qa6f
- removed a debug print statement
- now searching all references once instead of each reference one at a time
to lessen the number of queries; as the newest message will be the first
in the search result, it's ok.
bzr revid: tde@openerp.com-20131205093921-h7sits57vqc51c8p
case: web_kanban_gauge has been added in the dependance of sale_crm. This module used to auto install when module sale and crm were installed. With this new dependance, the module sale_crm auto install when sale, crm and web_kanban_gauge are installed. We auto install kanban gauge so sale_crm auto install on installation of crm and sales, as web_kanban_gauge will be already installed
bzr revid: dle@openerp.com-20131205093615-1c9z0g5439xokdbt
Force readonly="0" on field image in preferences view, otherwise the readonly can be set by access rights.
Preferences are written with the UID 1, if the fields are in the WRITEABLE FIELDS list of the object res_users.
This is why any users can edit their preferences even if they do not have the rights to write on res.users.
Forcing readonly="0" to make fields editable in the form.
bzr revid: dle@openerp.com-20131204145923-f7jwoah722q188d7
Because defaults get function of partner_id of wizard read the partner_id of the opp and return the first item of the tuple, but if there isnt a partner on the opp, the read return a false for this field, not a tuple.
No return the first item of the tuple if the partner_id is set, else False
bzr revid: dle@openerp.com-20131204133633-t7wfbnipv3jtss82
In im_session model, field channel_id was a many2one to im_user, or, obviously, this should be a many2one to im_livechat.channel
Well, obviously, this is a copy/paste error (or distraction, your choice!). This fix should normally not be pushed on a stable branch (like the current one, saas-2), but considering the severity of the problem, and the few changes in database (alter foreign key only), this is acceptable. Why such a big mistake has not been seen earlier ? Do you even test or read back what you write ?
bzr revid: dle@openerp.com-20131204122727-q0ch5j2v8rrli41e
This allows to field a purchase.order without showing the units of measure if not product is selected
Revision 7677 was integrated to fix lp:958897 (no change of uom when selecting a product whose uom is in the category 'Units'). This fix did not solve it properly (only for initial value) and introduced another problem. A better fix will be done on the onchange product.
bzr revid: mat@openerp.com-20131129143522-i85e4hvf0p4h3ynn
When choosing to link to an existing customer, then changing the action to create
a new customer or to avoid linking, the newly created opportunity was linked
to the previously chosen customer, due to the partner_id field not being
reset and used in the conversion process.
This field is not reset when changing the conversion action, leading to the action
being correctly taken into account.
lp bug: https://launchpad.net/bugs/1208436 fixed
bzr revid: tde@openerp.com-20131129101706-ccsn5u60sw8isroy