Commit Graph
102197 Commits
Author SHA1 Message Date
Damien Bouvy ed6a52a517 [FIX] sale: no more refund invoices overload
When fetching the invoices linked to a sales order,
the system looked for all refunds which had an 'origin'
field that was the number of an invoice of this SO.

That's nice, except that invoices that are not yet
validated do not have a number, which caused sales
order with an uncofirmed invoices to be 'linked' to
all 'out_invoices' that had no origin (which could
be 1000+ for a substantial db) (basically all out
invoices which had the origin field set to false)

This commit simply extends the domain to exclude
refunds that did not originate explicitly from one
of the SO's invoices.
2015-12-23 11:51:48 +01:00
Christophe Matthieu c7337bf3b3 [FIX] web: Can't save a x2m in list editable if contains a m2m_tags with a color field
m2m_tags inlist editable view try to get color on validation, the field is invalid because the mutex is pending.
Fix: don't re-render the fields

Issue: steps to reproduce:
- Create a new instance, install "sale"
- Create a product "prepayment", service, invoice on ordered qties
- Create aproduct "project phase", service, invoice on delivered qties, manually track delivered qties
- Create a SO with once prepayment, and twice a line with "project phase". ( the name (description) of the lines should be "phase 1" and "phase 2" )
- Create invoice => The prepayment is invoiced
- Go back to the SO, try to change the delivered qties of the first phase to 1
- Save => error, odoo doesn't let you save.
2015-12-23 10:58:37 +01:00
Martin Trigaux edfa2c4732 [FIX] web_planner: untranslated planner
Missing context in call to render the planner leading to untranslated planner.
Use the session to get the user context as outside of the view manager.

opw 660627
2015-12-23 10:51:21 +01:00
Richard Mathot 6191e3f6d0 [FIX] mail: format_tz crash if server locale returns non-ascii month name
When there is no lang set, format_tz uses server locale to format a
date. If my server is in French, date is formatted using '%B' (full
localized month name). This can lead non-ascii strings like
"décembre"...
2015-12-23 10:44:51 +01:00
Denis Ledoux f3ef7001cf [FIX] account: prevent recomputation of related field internal_type
When creating a new `account.account`,
or writing on an existing one, changing the
`type`, the source of the related field
`internal_type`, `user_type_id.type`, was
re-written (re-stored) because the field
was not read-only.

In addition, the re-store of the value
of this field triggered the re-store of the related
field `internal_type` on all other `account.account`
records using this `internal_type`, which leaded to:
 - Performance issues
 - Potential access rights issues, if this leaded
   to write operations on records to which the user
   does not have the access (multi-company rules, among others)

Forcing the field as read-only allow to not pass the value of this
`internal_type` from the web client to the server when
creating or editing an `account.account`.

Besides, the field is required in the view, to correctly trigger
the according onchange method:
```
@api.onchange('internal_type')
def onchange_internal_type(self):
```

opw-660292
Closes #10143
2015-12-22 16:22:13 +01:00
Damien Bouvy 1057542f9f [IMP] project: add link from analytic account form view
Analytic accounts are inherited by project.project, and in some cases it is useful to have a link from the account to the project.

This is a usability-fix, not a code-fix
2015-12-22 15:19:05 +01:00
Nicolas Martinelli fd8e9da7e3 [FIX] hr_timesheet_sheet: link account line and sheet
When an expense is recorded and linked to an analytic account, the
associated line will appear in the timesheet.

This fix links prevents linking an account analytic line to a timesheet
sheet if the line is not a timesheet.

Somehow related to a4b6e3a8

opw-657917
2015-12-22 14:57:47 +01:00
Nicolas Lempereur 3e2369fbb6 [FIX] web_kanban: reference for loaded more records
If the kanban view is loading grouped records, the dataset of the view
itself is the concatenation of the dataset of each groups.

But when using "Load  more..." on a column, these records are not added
in the view dataset which is thus desynchronised. This could lead to an
error down the road.

closes #10156
opw-659016
2015-12-22 14:49:59 +01:00
Sylvain GARANCHER 11cd22711c [FIX] Fix check_xml when inheriting from views created in the same module
When inheriting from a view in extension mode created in the same module, this
view was not loaded during check_xml of the last view.
This caused an error when the last view wants to modify elements added
by its direct parent view.

Example :
- View1, created in module "account"
- View2, mode extension, created in module "customer", inherits View1
- View3, created in module "customer", inherits View2

During update of module "customer", when loading View3, the check_xml
call didn't load View2, because it's defined in the same module (and,
obviously, this module has not be totally loaded at this point)

This is fixed by adding direct parent of each loaded view in the
check_view_ids list in context, to force them to be loaded.

Closes #9135
2015-12-22 14:14:59 +01:00
Martin Trigaux edf276c27f [FIX] typo with en->en translations 2015-12-22 11:59:28 +01:00
Denis Ledoux 7dc2565878 [FIX] website_quote:
This revision is related to 7be2403cf5

The payment acquirers must be fetched if the quote
needs a payment.

Besides, as explained in the above revision, the state
`manual` no longer exists sales orders, and therefore
this must no longer be used to determine if a quote
needs a payment or not.

opw-660575
2015-12-22 11:43:03 +01:00
Goffin Simon 0a7ee85c18 [FIX] hr_payroll: cleaning and writing in new API
Cleaning and writing in new API "onchange_employee" and "onchange_contract".

opw:659338
2015-12-22 11:36:50 +01:00
Denis Ledoux e04ddeaa22 [FIX] web: client action change password
1. To change the page title, you now have to call
`set_title` from `require('web.web_client')`

2. Without the `type="button"`, the `Change Password`
button is regarded as a `type="submit"`, therefore
submitting the form, on `web` on click,
and `web` doesn't expect this POST request.
The POST request must be done on
`/web/session/change_password` only.

opw-660567
2015-12-22 11:23:31 +01:00
Goffin Simon f7dab86a06 [FIX] tools: colon in a URL
When writing an URL in the chatter with a colon inside, the function
"html_keep_url" must detect all the URL.

opw:660116
2015-12-22 10:34:18 +01:00
Goffin Simon a617fd29ae [FIX] website_sale: discount display in e-commerce
Each time the quantity of a product is changed, the price must
be updated according to the pricelist of the user.
When the price given by the pricelist is less then the unit price
of the product, the reduction of the price must be displayed.

A not stored computed field is added in model "sale.order.line"
to compute the discounted price because when the module
product_visible_discount is installed the price unit of a SO line
is the full price of the product and the discount related to the pricelist
is written in percent in the field discount(function "product_id_change"
in addons/product_visible_discount/product_visible_discount.py).

opw:660178
2015-12-22 10:21:07 +01:00
Denis Ledoux aef8a4d618 [MERGE] forward port of branch 8.0 up to f9f7669 2015-12-21 18:24:22 +01:00
Jeremy Kersten 9f795ef295 [FIX] wesite_slides: use embed for document and presentation
For performance, we could use iframe with embed document.
But it's more styled to use our own slide design that an iframe
with a long scrollbar.
2015-12-21 17:21:33 +01:00
Denis Ledoux df745c25fb [FIX] point_of_sale: POS user access rights
- A simple POS user doesn't have the rights to write
   on pos.config, not even to write the `current_session_id`,
   so it must be done as sudo.
 - If no fields is specified to `search_read`, it reads all fields.
   The simple POS User cannot access all fields on `account.journal`,
   (e.g., the computed fields implying `account.payment` records)

opw-659079
2015-12-21 17:13:32 +01:00
Denis Ledoux 7427972f2e [FIX] project_timesheet: timesheets order in task form
This revision is related to 432f199.

Since the above revision make sure to change the
editable list to `bottom`,
the order of the list should be done on the `date` (asc),
on this view, as this is more likely that, when adding a new line,
that the date set on this new line is
more recent than the dates on the other lines.

The new added line should therefore appear directly at the bottom
of the list, to avoid consufing the user.

Besides, the default order of the model `account.analytic.line`
is set to `date desc, id desc`

opw-659892
2015-12-21 17:13:31 +01:00
Xavier Morel 8595bc2ff7 [IMP] csrf: better warning and documentation
After initial implementation CSRF protection had been left poorly
documented tripping up users and developers (#9538, #10139).

Add a warning in the logs for developers, and a more extensive
explanation of the whole thing in the @route docstring (and the official
documentation).

Fixes #10158
2015-12-21 13:10:45 +01:00
Xavier Morel f839c9358a [FIX] sudo() docstring
rST uses double-backticks for literal text, not single
2015-12-21 12:34:53 +01:00
xmo-odoo 7c0e734785 [FIX] strip group name before calling has_group
user_has_groups is used to check for groups in e.g. view attributes (`@groups`).
When trying to format lists of groups in views, it would break down as it would 
pass e.g. `\n        some.group` to `res.users.has_group`, which would look for 
an xid with the module `\n        some` and (oddly enough) not find it.

Theoretically could also handle that inside res.users.has_group but it seems
ever-so-slightly more risky, and has_group is only used programmatically and 
should thus already be called correctly.

fixes #9797
2015-12-21 10:30:37 +01:00
Odoo Translation Bot 0093372184 [I18N] Update translation terms from Transifex 2015-12-20 02:54:53 +01:00
Odoo Translation Bot 9e211ef127 [I18N] Update translation terms from Transifex 2015-12-20 01:26:02 +01:00
Jeremy Kersten 73c4c727d2 [FIX] website_crm: allow to prefill data from get params
Allow to arrive on the form with fields prefilled with params in url
2015-12-18 17:38:02 +01:00
Raphael Collet 34e3c66c7c [MERGE] yaml_import: fix calls to onchange() and sanitize returned values
Merge branch '9.0-opw-657357-rco' into 9.0
2015-12-18 16:53:13 +01:00
Raphael Collet 151118daf8 [FIX] resource: add missing field in resource.calendar.attendance form view 2015-12-18 16:51:52 +01:00
Raphael Collet ab4de2a453 [FIX] stock, stock_calendar: fix duplicate names of pickings in test files 2015-12-18 16:51:52 +01:00
Raphael Collet 8325014b63 [FIX] models: when evaluating old-API onchanges, ensure all fields are available 2015-12-18 16:51:52 +01:00
Raphael Collet 882bbf46e2 [FIX] models: in onchange, add missing fields when comparing values 2015-12-18 16:51:52 +01:00
Raphael Collet 36ee1ad813 [FIX] yaml_import: add field_parent in context for evaluating onchange on one2many lines 2015-12-18 16:51:52 +01:00
Raphael Collet f4a6f1bfde [FIX] yaml_import: use form views instead of tree views for cleaning up 2many field values 2015-12-18 16:51:52 +01:00
Raphael Collet 0b6058c585 [IMP] yaml_import: evaluate onchange on defaults first 2015-12-18 16:51:52 +01:00
Raphael Collet b96759ca07 [FIX] yaml_import: make post_process filter out readonly fields recursively 2015-12-18 16:51:51 +01:00
Raphael Collet d412203f4a [FIX] yaml_import: make process_vals sanitize field values recursively 2015-12-18 16:51:51 +01:00
Raphael Collet 3cd85bdeef [IMP] yaml_import: introduce and clean up helper functions 2015-12-18 16:51:51 +01:00
Raphael Collet 44240c0c4a [IMP] yaml_import: simplify algorithm for iterating over field elements 2015-12-18 16:51:51 +01:00
Raphael Collet 7056b5cb2a [IMP] yaml_import: small code improvements 2015-12-18 16:51:51 +01:00
Raphael Collet a751377760 [IMP] yaml_import: use method onchange() only to execute onchanges 2015-12-18 16:51:51 +01:00
Nicolas Lempereur 9bdaf45de6 [FIX] website_version: typo write return value
Models' write function has a return value which was not propagated when
overriding it for ir.ui.view in website_version module.

opw-658965

note: fix was already present in enterprise f0975cb
2015-12-18 16:33:36 +01:00
Denis Ledoux c9acaa428c [FIX] web: view pivot, start must wait load_fields
in `view_pivot.js`,
the method `view_loading` must wait the `self.fields` variable
to be defined before working properly.

This `self.fields` variable is filled in the `prepare_fields` method,
which is called in the `start` method, through a deferred named
`load_fields`.

`view_loading` is called in `start`, in `views.js`.

Therefore, in the overriden method `start` of `view_pivot.js`,
the call to `_super`, calling the `start` of `views.js`, must wait for
the `load_fields` deferred to be resolved.

Otherwise, the `self.fields` variable, mentioned above, won't be
filled in time.

opw-660153
2015-12-18 15:49:38 +01:00
Martin Trigaux 7892d99f3a [FIX] all: references to Odoo 8.0 version
In installation script or documentation

Fixes #10052
2015-12-18 15:06:46 +01:00
Xavier Morel d1dea6119f [IMP] base_import: add FAQ entry about CSV date formats
task 21446
2015-12-18 14:42:54 +01:00
Denis Ledoux 644bb3d674 [FIX] google_calendar: default timezone
If no timezone was defined for the user,
the timezone sent to Google for the events
syncrhonization was set as `False` instead
of the right default value `UTC`

opw-660171
2015-12-18 14:31:10 +01:00
Goffin Simon 513497dc03 [FIX] account: Invoice Date group_by
The default group_by for 'Date Invoice' in 'account.invoice.select'
view must group the 'account.invoice' with the field 'date_invoice'.

opw:660033
2015-12-18 13:48:57 +01:00
Thibault Delavallée 52e18acbc8 [FIX] mail: res_users: context update in create
Context was a new one instead of updating the existing one. This was
preventing a correct context propagation.
2015-12-18 13:30:13 +01:00
Martin Geubelle dc25eac8d4 [FIX] sale_stock: replace except_orm exception by UserError
As the raise of this `except_orm` exception
has been replaced by a `UserError`
from revision 0fd773a

opw-658566
2015-12-18 13:15:05 +01:00
Nicolas Lempereur df2d0c4f10 [IMP] crm: add margin next activity 2015-12-18 12:38:42 +01:00
Joren Van Onder 6d43387f58 [FIX] point_of_sale: print amount of guests correctly on ESC/POS receipt
Before this the only thing that would ever be printed was 'Guests: ',
because it was only added when receipt.customer_count evaluated to
false. Another issue is that receipt.customer_count doesn't exist in the
point_of_sale module. It is created by pos_restaurant, so there's where
it should be added to the receipt.
2015-12-18 12:21:30 +01:00
Denis Ledoux 7bae4098b2 [FIX] website_sale: stronger inheritage and handle not published products
- The revision 950d66c086 brokes
   the current inheritage. We replace it with a stronger inheritage.
 - If the product is not published, the portal user cannot access
   it on its product page `/shop/product/`, there is therefore
   no need to set the link to this page.

opw-660191
2015-12-18 12:09:02 +01:00