Commit Graph

92947 Commits

Author SHA1 Message Date
Commandant Custo 0fd51c2e6e [FIX] product: Set rounding of "Unit" to 0.001
This fix prevents unexpected rounding when the
"Multiple Unit of Measure" feature is not installed.
2015-03-30 17:19:17 +02:00
Levent Karakaş b2a23ee94a [CLA] Eska 2015-03-30 15:39:55 +02:00
David Monjoie cc9f2919be [FIX] web: fixed opacity of readonly checkboxes
Apparently, browsers decide how they want to style readonly inputs,
and it seems like Firefox is greying them out while Chrome doesn't.
We use an opacity: 0.5 rule to grey them out ourselves in Chrome,
but in Firefox they are not dark enough to read easily because of
the double greying. I checked with the designers but they don't
have any better fix for that.
2015-03-30 15:00:34 +02:00
Nicolas Lempereur c21480a3d1 [FIX] mail: auto_delete option on email notification
When writing a message via the chatter with a template being in auto_delete
False, the notifications emails are always in auto_delete True.

This fix propagate the auto_delete option of a mail.template to these
notifications emails.

opw-630010
2015-03-30 13:42:23 +02:00
Goffin Simon 497ce299e9 [FIX] crm: problem with planned revenues of the direct sales team opportunities
The action window "Opportunities Analysis" must use the "crm.opportunity.report" model.

opw:631427
2015-03-30 13:12:31 +02:00
nachosalvador 75f0c7df4d [FIX] account: fetch name from first line only
invoice_line is a one2many, causes expected singleton error if the invoice has
more than one line.
2015-03-30 10:45:27 +02:00
Goffin Simon 1f76ed0159 [FIX] stock: "Request procurement" wizard does not fill warehouse
The function "make_procurement" must take into account the warehouse_id
to create procurement.

opw:631318
2015-03-30 09:06:05 +02:00
Robert Rübner ff902f62e2 [FIX] base: update of source value in translation
Make sure pass a list of ids instead of a single id to write calls.
Some models (e.g. blog.post, fixed at 12fc5ea) are assuming that it got a list
of ids and is not checking the type.
Always pass a list of ids as it's the expected format for the orm.
2015-03-27 16:39:26 +01:00
Martin Trigaux 12fc5ea840 [FIX] website_blog: safer check of variables in write call
Some code may call write with only one id instead of a list (e.g. translations,
see #5941) and the call to _postproces_content would fail
2015-03-27 16:39:09 +01:00
Jos De Graeve 7e7ecf36f1 [FIX] service: error database in use on duplicate database
When trying to duplicate a database, while
having opened connections to it, postgresql throws

```
OperationalError: source database "duplicate_test"
is being accessed by other users
DETAIL:  There is 1 other session using the database.
```

Connections must be dropped before trying duplication
using TEMPLATE to avoid this.
2015-03-27 16:16:02 +01:00
Martin Trigaux 534d5b8fe7 [FIX] stock_landed_costs: avoid rounding issues for comparaison
amount_total may return an unrounded amount, force the comparison with
float_comapre to avoid errors
opw 631157
2015-03-27 14:52:11 +01:00
Nicolas Martinelli 7ecb78adfa [FIX] mrp: cancel remaining products to consume if no more products to produce
opw: 630222
2015-03-27 13:35:18 +01:00
Nicolas Martinelli 34c891a426 [FIX] purchase: set the unit price to zero if requested in the purchase order
If a purchase order is created with free goods (e.g. 5 units offered if 100 are purchased),
the price_unit of stock.move and the cost of stock.quant were set to the product cost price
instead of zero. This would lead to inconsistencies in the 'Current Inventory Valuation'.

opw: 630593
2015-03-27 13:31:03 +01:00
Denis Ledoux 020caa17e4 [FIX] project_timesheet: undefined employee journal error message
There is no more any "timesheet" tab in the employee form.
This is actually the "HR Settings" tab, nowadays.

opw-631599
2015-03-27 10:59:46 +01:00
Jeremy Kersten 42aa9096d9 [FIX] product: fix search view to search on attribute name.
Searching 'memory' doesn't work before...
2015-03-26 23:25:28 +01:00
Christophe Simonis d780014248 [MERGE] forward port of branch saas-3 up to ce69064 2015-03-26 18:00:06 +01:00
Christophe Simonis ce690649e9 [MERGE] forward port of branch 7.0 up to 2a0c018 2015-03-26 17:56:05 +01:00
Christophe Simonis 12416eb35f [FIX] google_*: set a timeout when contacting google servers 2015-03-26 17:48:25 +01:00
FalcoBolger 95b921d0f7 [FIX] website: move support for ir.attachment resources to web module
Commit 540b753bf8 introduced
support for resources stored as ir.attachment records in
asset bundles too.
This is specifically useful for customizations.

However the HTTP route for reaching those resources
when they are *not* in a bundle was originally created
in the `website` module (as a special handling for
404 requests)

This means that these dynamic resources would only
be partially supported when `website` is not installed,
causing various problems:
 - missing resources in debug mode where bundles are skipped
 - errors when trying to define new client-side Qweb templates
   via XML resources - which are loaded with a direct request
 - ...

This commit moves back the supporting code to the web module.

The `mimetype` column is not present in ir.attachment without
the `website` module, but sniffing it based on the attachment
name works fine at serving time too.

Closes #6002
2015-03-26 17:33:19 +01:00
Nicolas Lempereur 2a0c018043 [FIX] kanban: search more when DataSetStatic
When showing a kanban, there is differences between dataset of types:

* DataSetStatic: self.view.dataset===self.dataset, their ids attributes are the entire ids list,
* DataSet and DataSetSearch: self.view.dataset.ids are the already in the view ids, self.dataset.ids are the last gotten ids.

Hence with DataSetStatic dataset, when self.view.dataset.ids.splice(0) is done
self.dataset.ids is also emptied. And in the read_slice function, the slice is
done on that (now empty) array.

This fix removes the splicing of this ids array (which doesn't change a thing
since the array is overwritten latter), a _.difference is used to remove
eventual duplicates since in the DataSetStatic case, the same array is being
concatenated to itself

opw-630654 opw-617090 opw-619563
2015-03-26 17:28:02 +01:00
Raphael Collet c58121e8f1 [FIX] method `ir_model.check` now decorated with `ormcache_context`
The method needs the `context` parameter to translate the error message in case
the access is denied and an exception is raised.
2015-03-26 17:14:42 +01:00
han-odoo cec7a02fdd [FIX] POS: invoices taxes according to fiscal position
Fix the issue of taxes not being mapped
according to fiscal postion

opw-615167
2015-03-26 17:08:33 +01:00
Raphael Collet 0beb14f0d2 [FIX] ormcache: fix calls to `ormcache` with unexpected context parameter
The implementation of `ormcache` does not work on methods that take a `context`
parameter.  Because of the decorator `decorator`, the arguments of the call are
passed positionally to the method `ormcache.lookup`, and positional arguments
are used in the cache key.

The fix consists in removing the `context` parameter from the faulty methods,
either directly, or by caching a private method called by the public method.
2015-03-26 16:42:10 +01:00
Goffin Simon 3eda25119f [FIX] account: Invoiced doesn't take into account cancelled invoices
"Invoiced" stat button on the res.partner form view must not include cancelled and draft invoices.
The button triggered an action which shows a tree view with invoices where:
type in ['out_invoice'] and all states.
Now the button triggers a tree view with invoices where: type in ['out_invoice' , 'out_refund']
and state not in ['draft', 'cancel'].

opw:472318
2015-03-26 16:27:27 +01:00
Jérome Maes f89c4cd78d [FIX] document : keep order during the search of ir.attachment
Backport of 16fa24d52258245af4ee9100666bae6ebe664046
2015-03-26 14:48:18 +01:00
Adrien Peiffer (ACSONE) 8b2c8dc0d1 [IMP] account_payment: display amount of transaction on payment line
Was changed on the form view at ab640d2, applying the same to tre view
2015-03-26 14:28:36 +01:00
Goffin Simon d79a1622bb [FIX] base: ir_filters: filters not in the language of the user
the context of the user must be used in get_filters to take into account
the language of the user.

opw:630057
2015-03-26 13:18:19 +01:00
Jeremy Kersten b9adcc7598 [IMP] base_import: match column names withtout check the case
If you try to import a file with a header 'Parent_id/id'
_match_header will not match Parent_id with parent_id
because it was comparing with case sensitive.

It's not a bug, but in most cases this new behaviour (non
sensitive case search) is what the end user was expected.

Hate Excel and the auto correct capitalization !
2015-03-26 11:34:22 +01:00
Richard Mathot 6ef068a811 [FIX] doc: exception for date/datetime in kanban views 2015-03-26 11:13:05 +01:00
Laurent Mignon 2faf4b7747 [IMP] Display the line note in the details
When reconciling, it's sometimes useful to have access to the note since the note can be filled with some information by the parser.
2015-03-26 09:57:56 +01:00
Denis Ledoux 8e48eb625d [FIX] mrp: ability to search BOM on BOM lines containing ...
In BOM, when performing an advanced search
on "BOM Lines" contains "a name"
all lines were returned, whatever the lines content.

This was due to the simple fact no field 'name'
was set on the mrp.bom.line model.

We set "product_id" as _rec_name, it seems the more
logical choice.

opw-631335
2015-03-26 09:55:24 +01:00
Nicolas Lempereur aaf9badbce [FIX] account: context/domain in move line tree
On a line write in a account.move.line tree view, the on_write return all the
sibling move lines of the written move line. The lines are then displayed even
if they do not match the current search domain.

This fix adds the context on the given on_write callback request, and in
on_create_write use a on_write_domain in this context to filter the returned ids.

fixes #3161, closes #5727

opw-630093
2015-03-26 08:59:23 +01:00
Goffin Simon e3ae3650de [FIX] website_quote: Accept button displayed in an expired quotation
The accept button must be hidden if the quotation is expired.

opw:630342
2015-03-26 08:50:23 +01:00
Christophe Simonis c54d83ebd5 [FIX] mail: column `read` -> `is_read`
This is the reverse patch of 132afa981b
2015-03-25 18:36:52 +01:00
Christophe Simonis 3540ec53e4 [MERGE] forward port of branch saas-3 up to 6b70b80 2015-03-25 18:00:08 +01:00
Christophe Simonis 6b70b80a0e [MERGE] forward port of branch 7.0 up to 881c10b 2015-03-25 17:41:53 +01:00
Loïc BELLIER 881c10b8ec [FIX] mrp: group attribute position
group_mrp_properties is intended for the property_ids field only, not the other
parts in the "Properties" page (probably wrongly named)
2015-03-25 15:25:22 +01:00
Denis Ledoux 0cf87d1671 [FIX] website_sale_options: keep website language on cart addition
In the ecommerce, when adding a product to the cart
while having website_sale_options installed
the product was added in the cart within the
website default language, not in the current
language of the visitor. The description of the product
was in the default website language (for instance, English)
instead of being in the visitor language (for instance, French).

The reason is quite simple: With website_sale_options, routes
are called in javascript, and these calls do not include the
website language within the url to the route
(e.g., call to '/shop/modal' instead of '/fr_FR/shop/modal)
and the language in the request context is therefore
the website default language.

The solution proposed here is probably not the cleanest possible,
a cleaner solution would be to define a new utility
JS function within website javascript to perform
Ajax calls, automatically adding the language to the url path
according to the current visitor language.

Another solution would be to set the lang of the session context
to the visitor language, and to use this lang instead of the
lang within request.context.

Nevertheless, none of the two above solutions can be performed in
stable releases, such as 8.0, to avoid any risks.

opw-631400
2015-03-25 14:33:33 +01:00
Olivier Dony 287b293283 [FIX] stock_account: valuation entry for reconciled neg quant not always possible
Skip the creation of the corrective valuation entry
when a negative quant is reconciled with an incoming
shipment, when:
 - the cost has not changed, so the journal entry would
   be useless (credit/debit = 0)
 - or, when the accounting period for the move causing
   the negative quant is already closed, and must not be
   updated (presumably the valuation was manually
   set before closing that period)
2015-03-25 12:38:17 +01:00
Antony Lesuisse f090652c99 [FIX] product: allow active pricelist version copy
Always set active false when copy is used to prevent the overlapping
version constraint.

Closes #5822
2015-03-24 23:11:25 +01:00
Denis Ledoux a93ef48a70 [FIX] base: access to preferences menu for portal users
Since revs 53582c2ea6 & f65c913027,
this was no more possible for portal users to read groups
on purpose, for privacy reasons.

fields_get of res.users model is overriden, for
the access rights form view features
(The groups selections and checkboxes).
At each call to fields_get, which happens at each call
to fields_view_get on the res.users model, operations are
done on the model res.groups (basically, to
build the selection groups and checkboxes). So,
each time a view of model res.users is displayed,
whatever the view, operations on res.group model were performed.

The thing is, these operations on res.groups
are actually needed only for the user access rights
view, or at least only for users having the group
Administration > Access rights. These group operations
aren't needed for the preferences view, nor for portal users.

We therefore avoid to do these if the user is not part of the
Administration > Access rights group, which lead to
performances improvment, and solves the fact
portal users couldn't access their user preferences view.

opw-627391
2015-03-24 18:25:13 +01:00
Olivier Dony d544bb9b46 [FIX] base_partner_merge: cleaner test for function fields
After commit 0ed63d73a6,
the hack used to detect fields.function is not supported
anymore. Using `isinstance` is safer and cleaner anyway
(performance is not a concern here).
2015-03-24 15:43:37 +01:00
Denis Ledoux ccfdca99fb [FIX] hr_recruitment: missing attachments in email template
When switching an applicant to another stage,
there is the possibility to send an email template,
according to the given stage.

The attachments defined in the email templates should
be sent as well.

opw-630768
2015-03-24 15:10:55 +01:00
Goffin Simon 940a0e45d4 [FIX] account: choosing the right fiscal position
for a partner who has vat number, fiscal positions with vat_required
are prefered.

opw:630849
2015-03-24 13:00:39 +01:00
Anton Chepurov a70ea6d03b [FIX][#5182] speed up product form loading
removes obsolete (and faulty) check
2015-03-24 12:58:25 +02:00
Goffin Simon a36396b192 [FIX] sale: based amount to compute advanced invoices
The based amount to compute advanced invoices must be the amount_untaxed.

opw:630975
2015-03-24 10:00:45 +01:00
Denis Ledoux 132afa981b [FIX] mail: is_read is the column name in 8.0.
The column 'read' has been renamed 'is_read' in Odoo 8.0.
2015-03-23 15:46:32 +01:00
Denis Ledoux 3235eda781 [FIX] mail: notify parent message on message auto subscribe.
When auto subscribing to a message
(For instance, change the ```user_id``` field on a record,
like an invoice)
The new user is notified of the last message of the thread.
He must be notified of the parent message as well,
to have access to the first message of the thread,
to prevent access rights issues to the thread.

This mechanism is applied in the _notify method
of model ```mail.message``` as well, for the same reasons.

opw-630286
2015-03-23 15:26:41 +01:00
Denis Ledoux 0c16c20c68 [FIX] hr_timesheet: timezone of anayltic sheets in sheet summary
The timezone of hr_analytic_sheet should be the timezone
of the employee as well, so sheet analytic lines and attendances
lines are grouped within the same timezone, the timezone
of the employees, so the time difference between the analytic
lines and the attendances lines can be properly computed.

Fixes #5809
Fixes #5379
Related to rev. 3bf1615ad4
2015-03-23 15:26:41 +01:00
Raphael Collet 0ed63d73a6 Merge pull request #5676 from odoo-dev/8.0-memory_optimization-rco
Reduce memory footprint of server

The tricks used are:
- use a global LRU for `ormcache` (auto-balancing between registries);
- remove unnecessary data structures (binary class hierarchy of models);
- compute some data structures on demand (`_all_columns`);
- optimize field attributes (empty collections may be shared);
- optimize memory size of fields and columns by using slots.

On a database with modules sale, purchase and stock installed, the memory footprint of the registry went from 20.3Mb to 7.4Mb (as measured with heapy). In other words, the memory footprint was reduced to 1/3 !
2015-03-23 14:39:21 +01:00