Commit Graph
104550 Commits
Author SHA1 Message Date
Alexis de Lattre 297bbff6f5 [FIX] stock: use float_compare to avoid an error in the transfer (The roundings of your Unit of Measures kg on the move vs. kg on the product don't allow to do these operations or you are not transferring the picking at once.) 2016-06-22 15:05:07 +02:00
Christophe Matthieu f38f8930f0 [FIX] web_editor: test jinja content to load editor in codeview
The preview change the content because the browser try to fix the dom.
If a user use jinja and activate the preview, the jinja code is (re)moved by the browser and broke the template.
2016-06-22 14:26:42 +02:00
Raphael Collet ff93777099 [FIX] models: inverse several computed fields based on a common computed field
Consider fields G1 and G2 being computed fields with inverse methods that
require the value of a common dependency F, which is also a computed field.
For inversing G1 and G2, their values are put in cache, then their inverse
method is called.  If the inverse method of G1 requires the computation of F,
setting F's value will invalidate both G1 and G2 in cache.  Hence the value of
G2 is lost when invoking its inverse method!

The fix consists in marking G1 and G2 as being computed before invoking their
inverse method, which prevents them from being invalidated by field F.
2016-06-22 14:01:59 +02:00
qsm-odoo 6227abe355 [FIX] web_tour: anchor events
* Correctly bind "input" (instead of "change") or "mousedown" event
according to the anchor type. Also, only valids left clicks.
* Correctly unbind these events.
2016-06-22 11:52:42 +02:00
qsm-odoo ec6083c0c3 [FIX] web_tour: observe when dom is ready
Start observing the DOM (MutationObserver) only when it's ready.
2016-06-22 11:52:42 +02:00
Nicolas Martinelli ab94b1fa54 [FIX] purchase: pricelist based on supplier price
DO NOT FORWARDPORT!

If a purchase pricelist depends on the supplier price, the purchase
price in a PO automatically from procurements will be zero.

It was (partially) working before 7613cb3 by luck since the price of the
first supplier was chosen by default if no supplier was found. In fact,
the condition `seller_id.name.id != partner` requires the `partner` to
be an ID, not a browse record.

opw-681105
2016-06-22 10:45:33 +02:00
Martin Trigaux cecc12ffc6 [FIX] doc: adapt the xpath for snippet
To reflect the changes made at 28ed28f9

Fixes #12523
2016-06-22 10:29:41 +02:00
Aaron Bohy db99c65f7b [IMP] im_livechat,mail: sort livechat channels in Discuss
by date of last message in channel, desc.
2016-06-22 10:10:46 +02:00
Martin Trigaux 06fd45241f [IMP] hw_blackbox_be: better description
Some users using community version of Odoo may understand that this module turns
the POS into a certified module (which is what pos_blackbox_be does).

Update base.pot to reflect the changes (and add other missing translations)
2016-06-22 09:43:44 +02:00
Goffin Simon 9a36a9b760 [FIX] purchase: Vendor without Vendor Location set
When creating a stock picking from a partner without Vendor Location,
a validation error was raised due to a user error.
2016-06-22 09:29:38 +02:00
Christophe Matthieu 8d09a11cea [FIX] web: FieldX2Many must use AbstractManyField is_false method
If the method return false, when a user write require="1" on a x2many field, the content is valid that there have none or a value.

The method was overwrited for a visual change (display the field x2m in readonly mode when they are not value) but is_false is priority use to ensure datas.
2016-06-22 09:25:25 +02:00
Christophe Matthieu a9fac2ea2d [FIX] web: required attribute on one2many field
Require One2many field without any line must show an error like many2many fields.

issue 11782
2016-06-22 09:16:07 +02:00
qdp-odoo b8a58caad1 [FIX] account: in the bank statement reconciliation widget, don't convert amounts using the amount_currency to the target currency if the target currency is the compmany currency. OPW 680854 2016-06-22 08:25:17 +02:00
Odoo Translation Bot 108eee76c5 [I18N] Update translation terms from Transifex 2016-06-22 07:45:52 +02:00
Odoo Translation Bot 41ec7eec56 [I18N] Update translation terms from Transifex 2016-06-22 07:12:57 +02:00
Fabien Pinckaers 5fd1f50577 [FIX] expense: when paid by company: marked as paid directly 2016-06-21 17:26:37 -07:00
Fabien Pinckaers b0c9ee669b [FIX] Product view opens as a list view
[IMP] improved planner content
[IMP] Misc usability improvement:
	cost instead of sale price on product form
	improved views and terminologies
	journal entry is RO
2016-06-21 17:23:49 -07:00
Raphael Collet 8be3781501 [REM] ir_actions: remove no-longer-supported field auto_refresh from act_window 2016-06-21 17:56:56 +02:00
Christophe Simonis da53a27a5d [MERGE] forward port of branch saas-11 up to c88c70e 2016-06-21 16:24:38 +02:00
Aaron Bohy 90f9c09eec [FIX] mail: remove wrong line introduced by forwardport d73f0d806 2016-06-21 15:25:17 +02:00
Sebastien LANGE 58e3ac5cd8 [FIX]mrp: order view in mrp bom tree view
The order of BOMs is based on the sequence which is
not present in the view. When you open all
BOMs, any order is defined. This patch will display the
list of BOM by product.

opw:681189
2016-06-21 15:07:09 +02:00
Olivier Dony 949c9ffc3a [IMP] mail: remove useless menu cache invalidation
Rev. 15174e9a70 explicitly
cached ir.ui.menu entries, and required an explicit
cache invalidation when users changed their mail.group
subscriptions (mail.group used to override the ir.ui.menu
search(), cfr e.g. 89e404301b)

The menu search() override is gone as of 9.0, so it's time we get
rid of the unnecessary cache invalidation.
2016-06-21 14:34:39 +02:00
Goffin Simon e049506b70 [FIX] account: _prepare_reconciliation_move_line
float_is_zero(value1-value2) is not equivalent to
float_compare(value1,value2) == 0, as the former will round after
computing the difference, while the latter will round before

opw:678588
2016-06-21 14:14:39 +02:00
Yannick Tivisse f066b1ec4f [IMP] hr_expense: Onboarding improvement + mail gateway
1/ Modify the no content help message for hr_expense with a dynamic part
   which describe how to create a new expense by mail
2/ Mail gateway mechanism. New customizable email alias expense@domain
   that creates a new expense by sending an email to it. Check several things
   - Check that the email_from is the same than one of the employees or than
     on of the related users to employees. If not, send back an email to say that
     the expense will not be created.
   - If the email address is valid, check if something is between brackets '[]'
     If it is the case, check if it is linked to a product internal reference
     and set it accordingly. If nothing is found, use a default product
     'Fixed Cost'
   - If one/several float(s) are found in the mail subject, take the last
     occurence and set it as the expense total amount.
3/ If a product template is created, to not add taxes on it. We don't expect it
   to have additional taxes
4/ Under Expenses -> Configuration -> Expense Product, use a simplified product
   view with only the needed fields.
5/ When generating the account move lines, use the account defined on the expense
   line, not the sheet
6/ When creating a payment, make a reconciliation on the payable account move lines
   That way, if the total amount on the expense is paid, the expense will be set to
   paid automatically when registering a payment
7/ Add a one-page planner to explain how to use the email alias
8/ The field account_id on the expense sheet was informative. After some tests, it
   seems that it's more confusing than helping. So we removed it
9/ Add a domain on the field 'bank_journal_id' to select journals of
   type 'cash' or 'bank'
10/ If the number of expense lines is equal to 1, the expense summary on the expense
    sheet should be the same name the line. So the process can be done in one click
2016-06-21 14:09:48 +02:00
Christophe Simonis c88c70e900 [MERGE] forward port of branch saas-10 up to d73f0d8 2016-06-21 13:58:24 +02:00
Nicolas Martinelli ffe0db0dd1 [FIX] mail: mail template in Discuss
When the mail composer is opened thanks to the "Send Mail" button in
Discuss, it's possible to save a mail template, but the user can't
access it anymore later on.

This is because the field `model` is by default empty in this specific
case since this is a client action. However, when saving the template,
the default value 'mail.template' is used for the `model` field.
Therefore the domain on the `template_id` field prevents the user to
find back the model he just saved.

The fix sends the `active_model` in the context with the value
'mail.message', so that the `default_get` method of
`mail.compose.message` will set the appropriate default value.

opw-677936
2016-06-21 13:02:16 +02:00
Christophe Simonis d73f0d8063 [MERGE] forward port of branch saas-9 up to 68f5163 2016-06-21 12:42:34 +02:00
Christophe Simonis 68f51630b9 [MERGE] forward port of branch 9.0 up to e8827d0 2016-06-21 12:16:53 +02:00
Christophe Simonis e8827d013f [MERGE] forward port of branch saas-6 up to be94653 2016-06-21 11:59:15 +02:00
Christophe Simonis be94653462 [MERGE] forward port of branch 8.0 up to fe15829 2016-06-21 11:55:55 +02:00
Christophe Simonis 0a2317d303 [FIX] test_new_api,web: tests 9.0 adjustments
Rev e37ba61 forward-ported 8.0 revision f02b230 from PR #12379.
This patch introduces extra tests and views for o2m onchange behavior,
including new fields in the test models.

In 9.0 a new convert_to_onchange() mechanism had been
introduced at 9f81c6d

The combination of both requires some adaptation to the
expected results of the new tests and adaptation of existing tests.

The test models in `test_new_api` have an implicit depencies between
models which cannot be express on ORM:
    messages depends on participants of their discussion.

So, when editing a discussion, the field `participants` should be
processed before field `messages`. This is not always done because
field processing order depends of the iteration order of a `dict` (which
is undefined in python).
The testing tour `widget_x2many` worked by chance until now.
Adapt the tour to save the participants before the messages.
2016-06-21 11:23:18 +02:00
Josse Colpaert fe15829c16 [IMP] stock: when applying a push rule the new move should not be linked to the same procurement anymore 2016-06-21 10:16:07 +02:00
Jérome Maes bd61e9f651 [FIX] google_calendar : rename 'class' field into 'privacy'
Complete the commit dae0157d7b. Thanks to jke ;)
2016-06-21 09:08:16 +02:00
Jérome Maes dae0157d7b [REF] calendar: rename 'class' field on calendar.event
'class' is a reserved name in python. This will cause problem during new API migration.
2016-06-20 16:19:32 +02:00
Jérome Maes cfb8e8700a [FIX] calendar: view meeting detail when not logged
Since the new QWeb engine, `groups` directives on template
rendered in a route with auth=none is simply ignored, since
all is done as SUPERUSER_ID, it was impossible to instanciate
the webclient to check if the session is valid and to display
meeting info or redirect to event form view.

It seems that we don't want to fix this because routes auth=none
are rare, and special. So it is not considered as a bug.

The fix for calendar is, however, to do redirection or template
rendering server side.
2016-06-20 16:19:32 +02:00
Daniel Dico 3cb64f517a [IMP] payment_stripe: better content
show logo, merchant name, description, currency and amount on the stripe
checkout page.

Add the field stripe_image_url to display the logo that was configured according
to https://stripe.com/docs/checkout
Do not use company logo as there is no guarantee on the image ratio.

Closes #12378
2016-06-20 15:59:18 +02:00
Goffin Simon c77745b9c5 [FIX] sale, slae_stock, website_quote: get sale_delay in onchange_template_id
Inspired from a706ada

opw:681245, 681289, 681285
2016-06-20 15:13:01 +02:00
Christophe Simonis 91e04da933 [MERGE] forward port of branch 9.0 up to e37ba61 2016-06-20 14:28:20 +02:00
Goffin Simon 6101b856f0 [FIX] Wrong amount currency in account move line
When computing the amount currency, the date must be set in the context
to use the right currency rate.

opw:680693
2016-06-20 14:20:53 +02:00
Christophe Simonis e37ba61832 [MERGE] forward port of branch saas-6 up to b87a93a 2016-06-20 14:20:03 +02:00
Jeremy Kersten 757a917088 [FIX] base: add disabled users at write on 'users' or 'implied_ids' of res_group
If a user is disabled but in a implied_ids group, it was ignored and
so not added.

Eg: public_user is by default disabled,
So:
    <record model="res.groups" id="base.group_public">
        <field name="implied_ids" eval="[(4, ref('foo'))]"/>
    </record>

will not add the public_user in group foo.

It is coherent with the method execute of resConfig which already use the
active_test=False.

Courtesy of @odony for review
2016-06-20 13:38:26 +02:00
Christophe Simonis b87a93a091 [MERGE] forward port of branch 8.0 up to 5b1beec 2016-06-20 13:34:46 +02:00
Jeremy Kersten 6ad47aeb68 [FIX] web: fix migration to new api
Context in new API is not more a parameter.
Before this fix, context was interpreted has attribute parameter
and so the fields_get return empty dict.

This commit fix tracback when we try to export data in list view from
any model. The wizard try to know the fields from current model and a
traceback is raised (key error for  field['string'])
2016-06-20 13:05:20 +02:00
Nicolas Martinelli eea15ac92e [FIX] point_of_sale: taxes after fiscal position
Commit 358e285 introduces fiscal positions on the PoS. The new taxes
applied should be used in the form view of the pos order lines and in
the detailed sales report.

opw-680796
2016-06-20 12:46:03 +02:00
Martin Trigaux da82a6b705 [FIX] payment_stripe: correctly compute reference number
As explained in 15f27b26, the transaction information should be computed when
hitting the "pay now" button, not at page rendering (e.g. in case of users going
back to previous page).

Stripe do not work as typical providers as it does not redirect to the provider
page but opens a popup.
The route /shop/payment/transaction/<id> needs to be called manually.
2016-06-20 12:31:06 +02:00
Christophe Simonis 5b1beec1f2 [FIX] models: commit *before* trying to set NOT NULL constraint
Setting NOT NULL constraints on required fields may fail if there are
any row with unset value for this column.
The ORM handle this case by catching the exception raised and warning
user.

However, not commiting the current transaction before, will rollback
changes made before like setting default values or renaming a column.
2016-06-20 11:53:59 +02:00
Denis Ledoux 1061cb5696 [FIX] expression: search on *2many fields with domain
Some one2many fields have a domain specified
in their definition
e.g.
`mail.thread`.`message_follower_ids`
`hr.applicant`.`attachment_ids`
`project.task`.`attachment_ids`

which is required for the one2many field to make
sense. For the mail thread, it does not make sense
to include the followers of other models with the same
`res_id`.

This domain must be took into account when doing a
'like' search on the one2many field
e.g. Followers contains demo
Otherwise it will include threads from other model

opw-680825
2016-06-20 10:53:37 +02:00
Nicolas Martinelli 8a1d7dfe7b [FIX] sale_stock: do not count discount twice
When a product is a kit and a discount is applied thanks to a pricelist,
the discount is counted twice if the invoice is created from the stock
picking.

This is because the pricelist will modify the price unit, but moreover
the discount will be applied a second time by the method
`_compute_price` of the account move line.

opw-676838
2016-06-20 08:36:19 +02:00
Odoo Translation Bot cd369396d9 [I18N] Update translation terms from Transifex 2016-06-19 02:59:13 +02:00
Jeremy Kersten fc22b549b1 [FIX] website_quote: fix report Price
l is not defined, it is line.

Bug introduced with commit odoo/odoo@5f5f8d8.

But it was never detected before because there was
no value for b2b/b2C before commit odoo/odoo@e6184aeb37
so total/subtotal in report was never print.
2016-06-18 01:56:04 +02:00