Commit Graph
117975 Commits
Author SHA1 Message Date
Nicolas Martinelli 69fa111e95 [FIX] stock_account: negative quant cost
- Set up a product with 'Real Price' costing method, in real time
  valuation
- Receive 1000 units at $0.10 each
- Create a landed cost of $456.70, validate => it creates a quants of
  999 units at cost $0.56 and 1 unit at cost $-2.74.
- Perform an inventory adjustment, and set the quantity to 0 instead of
  1000, post inventory.

An error arises due to the constrain debit + credit >= 0.

This is caused by the method `_prepare_account_move_line` from
`stock.move`, which cannot handle negative cost for quants.

opw-752063
Fixes #17707
2017-07-13 13:20:24 +02:00
Elkasitu 0c496136a9 [FIX] web: Discard from form view to form view
Clicking on the discard button in a form view whose previous view is
another form view wouldn't do anything.

This is fixed by making the view_manager trigger_up a history_back event
and then the history_back callback will handle cases in which there is
only one view and only one action, which used to be rejected
2017-07-13 13:10:30 +02:00
Géry Debongnie 60ee6bbda5 [FIX] mail: add test to proper module
Because of a rebase, I erroneously added the test in a new
FieldMany2ManyTagsEmail module.  It then failed, because the demo data
were not the same.
2017-07-13 12:37:07 +02:00
Richard Mathot 924ffc6bc3 [MERGE][IMP] delivery,website_sale_delivery: refactoring and cleaning
- [x] remove 'available' field:
    - [x] availability is computed only based on country/state/zip rules
    - [x] also in ecommerce
- [x] remove 'price' computed field
    - [x] remove context hack for computing price
    - [x] price is not computed on save anymore, but with a get/set price button
    - [x] errors/warnings are now displayed in a special message box
    - [x] carriers return values are now more versatile
- [x] delivery_grid is now a generic shipper
- [x] fixed price is not a particular case of a grid anymore but a simple product price
- [x] as a consequence of previous 2 points, a lot of duplicated code has been removed
- [x] we can now save SOs even when a webservice has failed to return a price
- [x] no more hacks on name_get/context
- [x] "free over" an amount is now a generic feature
2017-07-13 12:35:34 +02:00
Richard Mathot f963500a9f [IMP] delivery,website_sale_delivery: refactoring and cleaning 2017-07-13 12:32:22 +02:00
Richard Mathot f2c9b519a7 [REF] delivery: linting and cleaning of delivery.price.rule 2017-07-13 12:32:22 +02:00
Richard Mathot 121a94204d [IMP] delivery: the initial bad decision
Having price and availability as computed fields of a delivery.carrier
may sound handy.

Actually, it comes with is batch of lame hacks, poor performances and
terrifying heisenbugs.

We will try to make something better. It has to start with a breaking.
2017-07-13 12:32:22 +02:00
Richard Mathot 01196030a5 [REM] delivery: dead onchange
Since this field is not in any view from a long time
2017-07-13 12:32:22 +02:00
Richard Mathot c923b39f6b [REM] delivery: unused name_get hack 2017-07-13 12:32:22 +02:00
Richard Mathot 38fd46e068 [IMP] delivery: prevent creation of new carriers from stock.picking view 2017-07-13 12:32:21 +02:00
Richard Mathot d12815e1ad [REM] delivery: unused code 2017-07-13 12:32:21 +02:00
Richard Mathot c922746ebf [REM] delivery: unused blob 2017-07-13 12:32:21 +02:00
Richard Mathot 1f7035245d [REM] delivery: unused code 2017-07-13 12:32:21 +02:00
Laurent Smet 93be8cdc2d [ADD] account: allow filtering moves on account_ids throught context
The check register report is the same as the general ledger except it only displays
account in type cash. On report, a "totals" line appears when only one journal is selected
but it's value is computed based on the whole accounts without filtering. Then, we need a
way to compute this totals only based on specific accounts

task: https://www.odoo.com/web#id=28656&view_type=form&model=project.task&action=333&active_id=967&menu_id=4720
2017-07-13 12:04:51 +02:00
fwi-odoo bb908979e9 [FIX] web: avoid interactions between drag and drop tests
The commit 5854bb7d12 introduces a new option
to drag element without dropping them.

But it's not allowed to start a new drag and drop until the first one is
completely done.

So when the element is removed from the dom (the test is finished), we complete
the drag and drop in order to let next tests perform drag and drop.
2017-07-13 11:38:53 +02:00
Goffin Simon 37ff69d45e [FIX] mrp: Post inventory button without finished product"
This fix 2332df6bc7  has been done in stable and some customers
wants to keep the button "Post Inventory" available all the time.
Now the button is just visible in developper mode.

opw:748347
2017-07-13 11:23:42 +02:00
Goffin Simon ec6459d42a [FIX] resource: Wrong default value for Time Efficiency
The time efficiency cannot be set to 0 otherwise it raised an error
when creating a workorder.

opw:752251
2017-07-13 11:12:33 +02:00
Nicolas Martinelli 3e8ba4905c [FIX] crm: expected closing
The "exp. closing" dashboard button takes into account the won
opportunities. It shouldn't.

Backport of 9d2f48dc7f

opw-751165
opw-744940
2017-07-13 08:35:40 +02:00
Nicolas Martinelli b1b8392591 [FIX] sales_team, crm: expected closing
On the CRM dashboard, the shortcut 'exp. closing' is the same than the
'overdue' shortcut. However, the number of opportunities in these
categories is computed differently (see method
`retrieve_sales_dashboard`).

We introduce a new filter "Overdue Opportunities" which reflects this
difference.

Backport of 9d2f48dc7f

opw-704173
opw-751165
2017-07-13 08:34:20 +02:00
qdp-odoo 8bea502f33 [REM] *: removal of fax field on res.partner object
Deprecated technologuy that doesn't deserve its dedicated field anymore. RIP faxes
2017-07-12 17:48:43 +02:00
qdp-odoo 9d1df81af5 [IMP] account: onboarding of the invoicing app
-added tour for invoicing
-allow to set easily the number of the first invoice/bill/refund of a journal, from the invoice screen
-small usability fixes and refactoring
2017-07-12 17:48:43 +02:00
qdp-odoo 99385d660d [ADD] base_vat_autocomplete: module to fill partner's data from the VIES when encoding its VAT number 2017-07-12 17:48:43 +02:00
qdp-odoo dcf71c0148 [IMP] base: usability improvement of the res.partner form view
Addition of a shorter and cleaner form view, to be used in quick creates
2017-07-12 17:48:43 +02:00
fwi-odoo ce36cbdcb9 [FIX] web: load subviews in the correct function
Before this commit, it was impossible to load the x2many fields subviews when
they were not defined inline.
Now it is possible to call the method "_loadSubviews" to do so.
Used mainly in studio, to be able to display the x2many fields without inline
views.
2017-07-12 16:40:42 +02:00
Goffin Simon 2d54dec940 [FIX] website: Impossibe to open website admin with some languages
When clicking on the app website admin with the arabic language,
it raised an error because this.date_from.format('YYYY-MM-DD') in
function fetch_data returned an arabic date "٢٠١٧-٠٧-٠٥".

opw:751960
2017-07-12 16:12:43 +02:00
Nicolas Martinelli 68934c6b87 [FIX] mass_mailing: access error when 'Retry'
A user without 'Administration/Settings' access rights cannot use the
'Retry' button on a mass-mailing.

This is because only this level of power is allowed to unlink
`mail.mail` records. However, this button is supposed to be used by
regular mass mailing users.

opw-744616
2017-07-12 15:33:38 +02:00
Géry Debongnie 737033d987 [FIX] crm: use correct effect type
The rainbow_man effect has 'rainbow_man' type, not 'rainbow'.  This is
what happens when someone decides to change the spec after testing has
occurred...
2017-07-12 14:51:13 +02:00
Thibault Delavallée b9a9922b62 [FIX] web: execute action with null active_id instead of undefined
Indeed pyeval that evaluates the context explicitly handles null value
differently from undefined values. Let us therefore avoid crashes when
it manipulates the context.

Example of crash

 * click on forecast in project kanban view without having already created
   forecasts;
 * click on 'Assign' to create a new forecast;
 * selecting a task crashes because of the domain on task field that is
   evaluated using pyeval with an undefined active_id in context that
   pyeval cannot handle;
2017-07-12 14:47:09 +02:00
Cedric Snauwaert 999dc80e7c [FIX] base_import: when parsing date field, strip extra spaces 2017-07-12 13:48:22 +02:00
Dharmraj Jhala 4330ea0267 [ADD] web, *: add rainbowification
This commit introduces the 'rainbowification' feature to the web client
(and to some affected addons).  This feature is essentially a way to
display a nice friendly message when some business event happens.  For
example, a encouraging message is displayed when the user clear her/his
inbox, or when a salesman closes a deal.

The mechanism currently only displays a 'rainbowman', but could be
extended later to add other kind of animation.

There are a few different ways to display a 'rainbowman':
- any JS code can simply trigger_up an event ('show_effect') with some
  options: for example
    this.trigger_up('show_effect', {
        type: 'rainbow_man',
        fadeout: 'no',
        message: $done,
        click_close: false,
    });
- an action returned by the server can have an 'effect' key, with some
  options
- the do_execute_action method accepts a 'effect' option.  This is
  useful when one wants to specify a rainbow on an action button in a
  form view

Joint work with: dbh <dbh@odoo.com>, ged <ged@odoo.com>
2017-07-12 13:43:08 +02:00
Géry Debongnie 9ee00dd265 [FIX] mail: prevent crash when chat system is not ready
When a chatter is created, appended, and destroyed before being ready,
bad things could happen.  This is because the code in start/other
deferred was executed regardless if the widget was still alive.  And,
some mechanisms, such as _getBus, depends on the event system.  If the
widget is destroyed, it will be remove from the component tree and such
functions will then return undefined.

To protect agains those issues, we simply make sure that the deferred
are only resolved when the widget is still alive.
2017-07-12 13:41:51 +02:00
Christophe Matthieu e6e17cc5d6 [FIX] product: Error message when adding an item to a quote
When a user tries to add a product on an opportunity, the date_order of the
order is added into the context. This value can be False.

When "_compute_price_rule" is called without "date" arguments
(some onchange, compute...) the method method use the context date (in this
case the value is False) or the today date.
The date value is used in an sql request and raise a value exception.

opw-751700
2017-07-12 13:39:29 +02:00
Goffin Simon 45e7389a1e [FIX] mrp, resource: Wrong default value for Time Efficiency
The time efficiency cannot be set to 0 otherwise it raised an error
when creating a workorder.

opw:751638, 752035
2017-07-12 13:32:51 +02:00
Nicolas Martinelli 058cc22d2c [FIX] website_form: send email with subject
- Use the form builder to send an email
- Customize the snippet to include the subject and the body
- Send a mail

=> The subject is not included in the email

This is because the subject is filtered out and considered as a
blacklisted field.

It happens because `mail.mail` inherits from `mail.message`. The field
property `website_form_blacklisted` is set to:
- `True` for `mail.mail`
- `False` for `mail.message`

Since we go through all inherited models, the property on `mail.mail` is
overriden by the property on `mail.message`.

It is actually not necessary to go through all inherited models, since
in the case of `inherits`, we copy the fields of the inherited model to
the target model. The check is simplified by only checking the fields of
the current model.

Based on work of @nla-odoo

opw-748926
2017-07-12 11:56:23 +02:00
Moisés López 566968bf99 [FIX] doc: use new URI wkhtmltopdf releases
The old release of wkhtmltopdf are no longer published on the download page.
The developer explicitely asks to use the github link

cf: wkhtmltopdf/wkhtmltopdf#3524
    wkhtmltopdf/wkhtmltopdf#3521
    wkhtmltopdf/wkhtmltopdf#3518
    wkhtmltopdf/wkhtmltopdf#3508

Closes #18146
2017-07-12 10:13:32 +02:00
Sylvain LE GAL 4001aaf2c4 [FIX] l10n_fr_certification : fix string_to_hash computation
- use datas of all lines, and not only the last lines.
- removed useless 'move_id' field from account.move.line

Was PR #18175. Courtesy of Sylvain Legal
2017-07-12 09:58:34 +02:00
Thibault Delavallée 578edf73b9 [FIX] point_of_sale, website_sale: correctly handle tuple return value of render_qweb_pdf
Fix related to e80238042c .
2017-07-12 09:54:00 +02:00
Thibault Delavallée 9fb86d6fac [FIX] mail: do not put context as feedback when marking an activity as done 2017-07-12 09:54:00 +02:00
Darshan Kalola cfbbc236ae [FIX] auth_signup: access right issues
When another user than administrator opens the mail sending wizard there
is an access right issue. Indeed as sale mail links now contain auth_signup
parameter an access to allow_uninvited config parameter is done. However
this has to be done using sudo because classic users have no access to
config parameters. Fix related to e79eb01a67 .
2017-07-12 09:54:00 +02:00
Thibault Delavallée 1b12e6bbd6 [FIX] website_quote: fix template variable name
JS waits for callUrl, not url. Fix related to 6e3392b341 .
2017-07-12 09:54:00 +02:00
Thibault Delavallée 69793fac0e [FIX] payment: remove duplicate website_published button on acquirer form view
Fix related to cbca7e1313 .
2017-07-12 09:54:00 +02:00
Christophe Matthieu a6f2dc07e5 [FIX] sale: traceback when choosing a product with warning as order.line
If a user chooses a product that has a blocking error message, the product
is set to False. This is good, but we do not want the following to happen:

The other onchange triggers are called and "product_uom_change"
generates an error because there is no product. (In fact it is
"_compute_price_rule" on "product.pricelist" who raise)
The onchange update the values of the other fields related to the
product (eg for the "name" field where the name of the product that
is canceled by the warning is assigned).
2017-07-12 09:50:45 +02:00
qdp-odoo a0868987e9 [REM] l10n_fr_certification: result of the recent volte-face made by the french government.
This module does not seem needed anymore currently for accounting. We will probably reuse part of it for the incomming POS-certification module, though.
2017-07-12 09:50:26 +02:00
Adrian Torres ed2a77e50e [FIX] web: Fix FieldRadio's o_horizontal/vertical (#18163) 2017-07-12 09:45:46 +02:00
Goffin Simon f5753886b2 [FIX] point_of_sale: Printing Sales Details without logo or layout
Fine tuning of this commit 848e95a34c

opw:751697
2017-07-12 09:45:21 +02:00
Goffin Simon 848e95a34c [FIX] point_of_sale: Printing Sales Details without logo or layout
When printing a report, if the company logo or report layout
is not set, it will return an action (ir.actions.act_window)
to set the layout or the logo.
But this change of actions does not forward the data parameters
to print the price list. So it raised an error.

PS: the problem comes from function "set_report_template" which doesn't
take the data parameters into account when it is called from "res.company.report.form".

opw:751697
2017-07-12 09:39:28 +02:00
Martin Trigaux ce11312dba [FIX] doc: remove nonexistant reference
business removed at 411f8208
2017-07-12 09:37:49 +02:00
Martin Geubelle 8881e61ec8 [FIX] mail: make many2many_tags_email widget work
This widget hasn't been rewritten with the new views.

The purpose of this widget is to open a popup for each invalid partners
(without email) in a many2many to fill the email. If the email is not set, the
partner will not appear in the tags and its id will not be sent (which should
not be the role of a widget but that's the way it is).
2017-07-11 17:22:43 +02:00
Jérome Maes 83e3254519 [FIX] sale_timesheet: reactive tests
Disabled by mistake. I'm a looser sometimes ...
2017-07-11 17:16:00 +02:00
Dhawal Limbuwala 8837735f3c [FIX] stock: Avoid compute method for newID records 2017-07-11 17:10:57 +02:00