Commit Graph
94651 Commits
Author SHA1 Message Date
Nicolas Martinelli b438522c42 [FIX] account: exchange rate uses invoice date instead of server date
When an invoice is created, the exchange rate used takes into account the invoice date instead
of the server date.

opw: 631749
2015-04-13 19:25:59 +02:00
Christophe Simonis 3206a35aed [MERGE] forward port of branch 8.0 up to 8ac8281 2015-04-13 12:07:58 +02:00
Christophe Simonis 8ac8281a7f [MERGE] forward port of branch saas-3 up to d3e7a8e 2015-04-10 18:35:34 +02:00
Christophe Simonis d3e7a8ef5e [MERGE] forward port of branch 7.0 up to 856bc6f 2015-04-10 18:24:46 +02:00
Raphael Collet 6d239190ba [IMP] ir_values: ormcache method get_actions
On the Customer list, the request on `fields_view_get` takes 12 queries instead
of 62.  Overall, it saves queries on every call to `fields_view_get`.

The cache is invalidated upon any creation/modification/deletion on models
'ir.values', 'ir.actions' and 'res.groups'.
2015-04-10 18:23:32 +02:00
Xavier Morel 20b6003dce [IMP] safe_eval: speed up evaluation
* creating the huge builtins dict inline represents ~40% of safe_eval's
  total cost according to line_profiler
* for the specific situation of opcodes, using a set difference is
  apparently much faster than for+if. all(gencomp) is also faster than
  for+if but not as much as letting Python do (almost) all of it

  might be that returning a set from _get_opcodes would be even faster,
  but didn't test it
2015-04-10 18:23:32 +02:00
Raphael Collet 60ad1fec4d [IMP] fields_view_get: make it issue less queries in tree views
When method `fields_view_get` retrieves the toolbar actions, let it `browse`
the actions to check instead of `read`ing them.  This enables prefetching and
reuse of cached values.

On the list of Customers, `fields_view_get` takes 62 queries instead of 73.
2015-04-10 18:23:32 +02:00
Olivier Dony 1ffa4d26d5 [FIX] forum: restore superuser bypass in per-post karma check
During conversion to new API[1] the superuser bypass
was dropped in the computation of karma-based
permissions on forum posts.
The check still needs to be bypassed to avoid
blocking sudo() mode when the admin account
has a low karma.
sudo() mode is used for various actions done
by the system on behalf of the forum users,
and should not fail because the admin has less
karma than the user herself.

[1] See rev. 893d7fa864
2015-04-10 18:23:32 +02:00
Xavier Morel aa25670c69 [FIX] forum: optimize vote metadata queries
Saves 2 requests per post, aka 20 requests on a full page (89 -> 68):

* don't create a new sudoed env and recordset for each post, create a
  single one so prefetch can work
* don't do unnecessary sudoed access (.parent_id.create_uid without
  reading any field)
* temp variables in template seems to save a few queries, not sure why

There's still a linear growth of requests wrt posts in the
page (single-post page has 56 queries), but it's a bit less terrible.
2015-04-10 18:23:32 +02:00
Arthur Maniet bc33b8dd04 [IMP] account_bank_statement_import: ask for confirmation before creating a journal
In previous versions the system would simply refuse to import
a bank statement if the corresponding journal/account did
not exist.
As of 9.0 the system can create them automatically, but
should not do that without asking for confirmation first,
to avoid user mistakes with dangerous consequences.

Closes #6023
2015-04-10 18:23:32 +02:00
Xavier Morel 8c65573885 [IMP] res.lang: ormcache the lookup of a lang based on a lang code
_lang_data_get returns only numerical data, the website tends to need
date formatting stuff instead with one lang lookup for each date or
datetime formatting (via t-field).

Caching the id matching a lang code means one less query for each
date/datetime formatting on the website, that's 10 queries saved for the
default forum front page.
2015-04-10 18:23:32 +02:00
Jeremy Kersten 7fecbc91eb [IMP] website_crm_score: optimize computation of static rules
Added new field `event_based` for marking dynamic rules that need
to be re-evaluated even for leads that were checked previously
and did not match.  (default: False)

If this field is not set to true, check only newer leads that
were never checked before, significantly speeding up the
check when there are hundreds of thousands of leads.

Closes #6019
2015-04-10 18:23:32 +02:00
Olivier Dony fd73263c51 [FIX] tests: clear ormcache at teardown, to avoid side-effects between tests 2015-04-10 18:23:32 +02:00
Xavier Morel aa6224117f [IMP] ir.config.parameter: cache ir.config_parameter values
Reduces the number of SQL queries needed to render a typical page.

Considering the low number of config parameters, we could probably cache
all the parameters for a user the first time one is requested (and not
in cache), really.

On the contact form with (almost) all website_* modules installed,
brings the number of queries from 21 back to the original 15 once caches
are warm.
2015-04-10 18:23:31 +02:00
Xavier Morel 64a72d3780 [FIX] ir.http: avoid re-authing when not needed
The extra auth blows an environment and causes an extra query
of ``website`` before calling the controller.

The preceding two SQL queries likely can't be avoided: one uses uid1 to fetch
the current website's public user in order to set it, the other one
fetches the current website using the user set beforehand
2015-04-10 18:23:31 +02:00
Xavier Morel 298ef06b98 [IMP] website: use env.ref to ensure main_menu is fetched w/ correct environment
By using get_object and not passing in the request's context, creates a
divergent environment from the one used in the rest of the request,
resulting to the cached menu items not being reused when displaying the
menu in the page (during qweb rendering), saves ~4 requests on the index
page (though probably nothing elsewhere)
2015-04-10 18:23:31 +02:00
Jeremy Kersten b03b7280b3 [IMP] base: allow to load bundle js in async mode
+ Import live support and editor en async

m
2015-04-10 18:04:37 +02:00
Jeremy Kersten 1971b987ad [FIX] website_forum: fix template to support html minifier 2015-04-10 18:02:54 +02:00
Jeremy Kersten 99ab640499 [FIX] website: no left strip at minimize html
<b>2</b><p> comments</p>  ==> need to keep the space
2015-04-10 18:02:54 +02:00
Frédéric van der Essen 9fe4457c43 [FIX] point_of_sale: fixing various issues with the list selection and password popup 2015-04-10 17:53:53 +02:00
Frédéric van der Essen 9041d6e0ff [FIX] point_of_sale: make sure user security PIN only contains digits 2015-04-10 17:53:52 +02:00
Frédéric van der Essen 3b33e5c36a [FIX] point_of_sale: there is no need to restrict customer barcode to ean13 anymore 2015-04-10 17:53:52 +02:00
Denis Ledoux 54eff11470 [FIX] event: send event mails for registration without date_open
date_open is not a required field of event.registration.
There is therefore very likely that this field could
not be defined. We should therefore not rely on the fact
it is always defined.

When trying to sent an event mail for an event registration
with a date_open not set (false), the email wasn't sent,
and it prevented the rest of the event mail queue to be
sent as well.

opw-632549
2015-04-10 17:31:47 +02:00
Olivier Dony 856bc6f2b1 [FIX] apply same visibility rules as base 2015-04-10 17:15:50 +02:00
Olivier Dony 8d750ecdc8 [FIX] apply same visibility rules as base 2015-04-10 17:14:59 +02:00
Somesh Khare 39010d3856 [FIX] account: wrong amount for tax included
Backport of 8.0 code, rev f61339b
Create a new journal item with an tax included, the automatically created tax
line had the amount computed as tax excluded.
Fixes #3731, opw 618305
2015-04-10 12:17:52 +02:00
Martin Trigaux d0493ee847 [FIX] sale: recompute tax amount after fiscal position change
When changing the fiscal position of a sale.order, the taxes are recomputed
which means that total amounts may no longer be correct (need to press 'update'
button).
Reset the amount_* fields to force the recomputation at write.
Fixes lp:712772, opw 618419
2015-04-10 11:56:25 +02:00
Jeremy Kersten efbe6ae880 [IMP] website: Split loading of asset to load css before js
"An external CSS files were included after an external JavaScript file in the document head.
To ensure CSS files are downloaded in parallel, always include external CSS before external JavaScript."
-- Chrome analyzer --
2015-04-10 11:43:46 +02:00
Leonardo Pistone 01f1d91006 [FIX] stock: use owner for virtual stock and in/out
Fixes odoo/odoo#5814.

It will also calculate virtual stock when lot/owner/pack is specified, but will
not filter the future stock on lot/pack.
2015-04-10 11:14:30 +02:00
Goffin Simon 0687a5e67d [FIX] website_sale_options: Total in shopping cart
The unit price of each option of a product must be recompute when
the quantity of the product changes.
2015-04-10 11:02:51 +02:00
Goffin Simon 08d69774b0 [FIX] website_sale: Pricelist witn min qty
Each time a product is added in the cart, the qty of this product must be checked to
adjust the price if there is a rule (with min qty) in the partner's pricelist.

opw:630049
2015-04-10 10:57:37 +02:00
Jeremy Kersten 67c40a50fa [FIX] assets : clean typo and useless script 2015-04-10 10:55:58 +02:00
Martin Trigaux d281e7aebd [FIX] stock_account: avoid timezone periode mismatch
The `find` method will get the current accounting periode according to the
user's timezone while time do not. This means that it is possible that users
get a move with a date belongign to a different period that the one returned by
`find`.
Fixing b101808, linked to #4147, courtesy of Graeme Gellatly
2015-04-10 10:12:15 +02:00
Yannick Vaucher aa26c5a81c [FIX] stock: missing context on call of stock.move copy
Closes #4993
2015-04-09 19:09:26 +02:00
Denis Ledoux 972d966554 [FIX] account: ACLs contracts button in partner form
contracts_count function field
&
journal_item_count function field

used for the "contracts" and "journal items" buttons
in the partner view are computed by the same
method.

But, this is possible that you have access to
one without having access to the other.
e.g., Project users not being salesman nor accountant
must have access to the contract counts,
but not to the journal items.

Besides, these buttons are added to the partner form
by two separated views, applied to analytic accounting group
& accountant group, respectively.

We therefore avoid to compute the journal items count when
not needed, when not loaded in the partner view.
We therefore prevent the access right issue, and provide
a performance improvment at the same time. Yay.

opw-632454
2015-04-09 17:23:42 +02:00
JosDeGraeve 6f35b0b3fa [FIX] point_of_sale: set analytic account on pos invoice
The analytic account is set on entry generated from pos.order but it was not for
the invoices generated from the pos orders.
2015-04-09 16:55:37 +02:00
Martin Trigaux a3c0742b77 [IMP] account: display currency in import invoice wizard
Fixes #3830 (really)
2015-04-09 16:32:31 +02:00
Denis Ledoux 0a9e8898b7 [FIX] l10n_be_invoice_bba: group restricted fields in partner form
This module brands a view adding fields on the partner
form, after the field 'last_reconciliation_date'.

This field is added by the view
account.view_partner_property_form,
not by the view
base.view_partner_form

So, if the user do not have access to the view
account.view_partner_property_form, then
the field last_reconciliation_date wasn't in the view
and the inheriting view could be applied.

This inheritance worked only because
account.view_partner_property_form,
had no group applied, and the sequence
was lower.

opw-632454
2015-04-09 16:12:35 +02:00
Christophe Matthieu 368ea9d614 [FIX] website: summernote: don't need to add a white space when delete a selection if the string is not fully erase 2015-04-09 16:09:07 +02:00
Christophe Matthieu c35f8a7b48 [FIX] summernote: when the editor create a link, we need to use deleteContents with the flag to_write as true to insert the link at the same place. 2015-04-09 16:07:12 +02:00
Christophe Matthieu 3d8ac2e3df [FIX] website: snippet editor: if a snippet is dropped near a text node with a previous click, need to get the parent node to trigger the history 2015-04-09 15:14:20 +02:00
Rucha Dave 2a3ce719bc [FIX] delivery: do not use canceled lines in weight computation
Canceling a line on a delivery order was not updating the weight of the package.
opw 618532
2015-04-09 14:45:38 +02:00
J Bradshaw ee57fbb022 [FIX] README: Fix URL and spelling
Closes #6049
opw-632480
2015-04-09 14:26:37 +02:00
Akash Balar 4ba72fbacb [FIX] stock: reset date_done field at duplication
As the state is reset to draft, makes no sense to keep date of completion.
2015-04-09 14:12:51 +02:00
Denis Ledoux aa15c1ffe6 [FIX] account: missing translations in bank statements reconciliation
opw-632158
2015-04-09 14:10:40 +02:00
Olivier Dony 15d00bd957 [FIX] stock_landed_cost: allow reversing valuation via negative quantity + safer cancel/unlink
- Support negative costs by creating reverse valuation move,
  and undoing the quant computation.
  This may or may not produce the exact reverse effect on
  the quant, as it depends on the rounding of the unit
  cost, which uses decimal precision 'Account'
- Hide 'compute' button when cost is not draft
- Forbid cancel of posted cost
- Forbid deletion of cost if not draft
2015-04-09 13:04:24 +02:00
rmu-odoo 8b95a8424b [FIX] account: import invoice in multicurrency
Missing values for fields amount_curreny and currency_id when importing
an invoice from a bank statement.
Fixes #3830, opw 618764
2015-04-09 12:17:39 +02:00
Denis Ledoux 138cc11a5f [FIX] website_sale_options: option modal within foreign languages
If the default language of the visitor is not the default
language of the website
(If the default website lang is en_US, and the visitor
browser is configured in nl_NL, the default language
visitor will be nl_NL),
the go to cart button in the option modal was no
longer working.

This is related to revision a696913364

opw-632490
2015-04-09 11:42:44 +02:00
rmu-odoo 223c92f3c0 [FIX] account: prioritize supplier number over reference on invoice
When generating the accounting entries, to compute the name, the invoice
reference (e.g. origin purchase order name) was first used before the supplier
invoice number. To facilate reconciliation of bank statements, the supplier
invoice number makes more sense.
Fixes #3839, opw 618765
2015-04-09 11:33:44 +02:00
Xavier Morel a6493f77af [IMP] fix links to business mementoes
* rename functional -> business
* fix navbarification of main toctree: would stop processing after it
  hit the first toc item without children, and the business links (with
  children) follow the web service toc item (without children)
2015-04-09 10:29:38 +02:00