[FIX] account: do not duplicate analytic lines on analytic journal duplicate
[FIX] point_of_sale: fix point of sale sequence declaration, github issue #3218
[FIX] mrp: perform location chaining for kit exploded moves

This rev. 7307227 ensured to not (re-)set the state 'confirmed' to exploded moves with a more advanced state (for instance, 'assigned')
Nevertheless, the location chaining is performed on the move confirmation, through the action_confirm method of the stock.move model. Besides, the resulting moves of the _action_explode method had the state 'confirmed' on creation, the 'confirmed' state wasn't set by the method 'action_confirm', meaning that the moves were confirmed without having the location chaining done. Allowing moves to go through the action_confirm method even if the state was 'confirmed' or further triggered the location chaining.

Preventing already confirmed moves to go through the action_confirm method prevented the location chaining, thus.

We now create the resulting moves with the 'draft' state, and then confirm them through the procurement workflow signal 'button_confirm'. Thus, the resulting moves are confirmed by going through the action_confirm method, writing the confirmed state and triggering the location chaining at the same time. We then write the 'assigned' state if necessary.

opw-617235
[MERGE] forward port of branch 7.0 up to 529e920
[MERGE] forward port of branch saas-3 up to 6c13c8d
[FIX] fix wrong filter in opportunity view (crm)

There was two problems:
* it was filtering on the probability of the opportunity, not on the
probability of the stage
* the filters were not prefixed with '&', which means that they gave
weird results when combined in the searchview (in a filter group, filters
are combined with '|', but it breaks when the filters are defined by
an implicit '&')
[FIX] http.py: invalid request must return a status code 400
[FIX] mass_mailing: attachments were not send.
[FIX] calendar: support non-ascii chars in date/time format

The calendar module generates string values with
a date/time formatted according to the user
language. Those formats may contain non-ascii
characters and are read as unicode strings,
but fed to str{p,t}time, which only accepts
byte strings (in Python 2).

This would cause an exception when loading calendar
notifications for a user using e.g. Chinese with
some CJK unicode chars in the date/time format.
[FIX] fix autocompletion problems with quick presses

Problem was that when the user types quickly in the search bar and press
enter, the keydown event of the enter key happens before the keypress
event of the last key entered.  This means that the autocompletion has
a wrong string.  The fix is to move the enter selection detection from
keydown to keyup.
[FIX] calendar: allow to sort in tree view the starting date (start, start_date, start_datetime) (hack for V8)
[FIX] web_calendar: improve the commit 787147d. This commit was fixing bug in other module that calendar which was open an event in popup view. Because browse/read by default was unable to read string id. The fix was too restrictif, because calendar need to read/browse string; we cannot cast this id in Int else we loose the virtual part. parseInt('12-20140512') -> 12.
[FIX] crm: set the oldname of field crm.lead.medium_id
[FIX] website_crm: contactus: do not polute lead creation values
[FIX] http.py: log 400 errors
[IMP] website_blog: Add menu, form view and tree view to manage tags.
[FIX] website_sale: apply reduction code

The line being deleted in this revision looks to have been useful when it was introduced in this commit:
36fc910

As the sale order was updated right away through the update_pricelist method
But since this rev. 22f4c31, the sale order is updated later, and reset the sale_order_code_pricelist_id value in the session right after setting it prevent to apply the pricelist of the promotional code...
[FIX] google_calendar: update tuto to create credential for google Calendar API. Google changes suddenly the process. Before that was optional, now without it, customers have an error 400 redirect_uri_mismatch
[FIX] payment_transfer: correctly display transfer information

When moving fields name -> provider on payment.acquire, the condition in payment_transfer was not updated.
This lead to no post_msg value in the Wired Transfert acquire.
Fixes #2423, opw 613934
[ADD] packaging: windows: bundle wkhtmltopdf and lessc