Commit Graph
120953 Commits
Author SHA1 Message Date
Nicolas Martinelli 9353fa1ede [FIX] stock: trigger warning
Do not trigger warning if `qty_done` is not yet set, since it is
automatically set to 1.0 in `onchange_serial_number`.
2018-04-12 13:55:10 +02:00
Nicolas Martinelli dc5dfa0430 [FIX] stock: S/N in mobile view
In mobile view, it is impossible to add serial numbers on pickings,
because the button is not on the kanban view.

opw-1816837
2018-04-12 13:55:10 +02:00
Martin Trigaux 43e0518833 [FIX] mail: restore pre v11 note color
The gray-lighter was modified at 88881e9f to make it lighter (#F9F9 instead of
Restore the previous grey and increase contrast.

To quote "The Non-Designer's Design Book by Robin Williams":

> Contrast is created when two elements are different. If the two elements are
> sort of different, but not really, then you don't have contrast, you have
> conflict. That's the key–the principle of contrast states that if two items
> are not exactly the same, then make them different. Really different.

opw-1835722
2018-04-12 13:34:00 +02:00
Lucas Perais (lpe) 7b49f5836c [FIX] account: partner's fiscal position chosen within its company
Before this commit, a partner in a company could have a fiscal position belonging
to another company
Namely, the search view on the field property account position displayed every fiscal position

This could create problems afterwards, when managing an invoice from a restricted rights user
(with an access right error raising)

After this commit, we soflty constrain the choice of the fiscal position to the ones
belonging to the same company of the partner

OPW 1833848
OPW 1827831
closes #24056
2018-04-12 11:10:51 +02:00
Lucas Perais (lpe) 0b1b860d97 [FIX] stock_account: display to_refund on return picking as toggle
When clicking on a stock.picking form
a modal appeared,

Before this commit a checkbox on the lines was present to update the PO
Since one needed to click on span to put the line in edit mode and edit the boolean
It seemed that the boolean was not editable.

After this commit, we add the toggle_boolean widget to handle the field
It is interactive even if the line is not in edit mode.

OPW 1818700
closes #24138
2018-04-12 11:04:21 +02:00
Martin Geubelle 729ff2d35e [FIX] web: update column in grouped kanban
In a kanban grouped by many2one with a progressbar, after emptying a column
by moving all records, the column wasn't correctly updated. This was causing,
in the best case, a record duplication or, in the worst case, a traceback.

This issue comes from the fact that, with a progressbar, a read_group is
performed each time a record is moved. When the group (column) becomes empty,
the read_group won't return this group even though the group still appears in
the kankan. When moving back the record in this empty column, there is a
desynchronization between the kanban controller data and the model.

To fix this issue, an option `keepEmptyGroups` is passed when performing the
mentioned read_group ; this mimics the kanban display that keeps empty groups
displayed and there is no desync anymore.

Fixes #23982
2018-04-12 10:10:08 +02:00
Joren Van Onder eb84a30999 [FIX] pos_mercury: don't lose credit card info
Due to historical reasons the amount on a statement line is used to
find it again so the credit card information can be added to it.

Doing a search directly on 'amount' will fail in rare cases when
the currency rounding doesn't result in a float with the same amount
of decimals as the rounding specifies. E.g.:

>>> currency = env['res.currency'].browse(3)
>>> currency.rounding
0.01
>>> currency.round(74.85000000000001)
74.85000000000001

When that happens the credit card information is not saved in the
backend. To avoid this we do the float comparison properly with
float_compare afterwards.

PS. Ideally the logic in add_payment should be moved to an override of
_prepare_bank_statement_line_payment_values. This way we wouldn't have
to do these awkward things to find the statement line. But this
approach is not suited for a stable release.

opw-1832156
2018-04-11 14:30:08 -07:00
Jeremy Kersten 73425edfe9 [FIX] website_sale_wishlist: remove wait in tour
Don't wait 1 sec by step for pleasure, correct trigger/extra_trigger
make it useless.
2018-04-11 20:59:51 +02:00
Valentin Löfberg 80029cae36 [FIX] website_sale_wishlist: allow deletion of wishlist item when not connected
Add controller to remove (archive) an item from the wishlist.
Rpc cannot be used because user can be public

Adding tour test

task-1834888
This commit closes #24135
2018-04-11 20:54:55 +02:00
Martin Trigaux 8b8815f44c [FIX] http_routing: translate without website
web (tagged with `openerp-web`) translations are loaded in the backend, in
`odoo.addons.web.controllers.main.WebClient.translation(mods=None, lang=None)`
method (through `/web/webclient/translations` controller).

In website, the controller `/website/translations` is called used, fetching
the translations from modules with the (fragile) clause `name ilike 'website'`

This commit fixes two bugs:

1. Install `website_sale`, activate discussion on products
  -> the chatter is not translated as the portal translations not loaded in the
     `/website/translations` controller

2. Install `helpdesk` but not `website`, go to portal view of a ticket
   -> the heldesk chatter is not translated as the `/website/translations`
      controller is not called (only provided by the website module)

This patch implements a modular approach to translate the web resources of the
right modules only.

The controller /website/translation is moved to http_routing and each module
override the new _get_translation_frontend_modules_domain method to adds its
translatable module

Closes #23618
Fixes #23610
2018-04-11 16:55:14 +02:00
Christophe Monniez 6527b69ee0 [FIX] web: increase timeout of test suite
As the test suite increases, the timeout has to follow until a better
solution is found (like a fail fast in Qunit).
2018-04-11 16:51:43 +02:00
Martin Trigaux 7272abe0e3 [FIX] point_of_sale: create orders with the correct context
The timezone of the user was not passed and preventing the use of context_today
as showed at #22651
2018-04-11 16:31:34 +02:00
Martin Trigaux fcd81acaea [FIX] l10n_ch: remove hardcoded translations
These translations were for the first company only ('1_' part)
The process_translation part in l10n_multilang is enough to propagate the
translations of the templates to the accounts
2018-04-11 16:19:41 +02:00
Martin Trigaux ea747d23e4 [IMP] l10n_ch: translate CoA in de and de_CH
de_CH was not available before, people migrating will not get their CoA
translated.
Rename the translation file so it is loaded by any de_* language
Add multiple spoken_languages to be sure to load each one via the
process_translation mechanism.

Fixes #24037
2018-04-11 16:19:37 +02:00
jem-odoo c9098db40b [FIX] sale_timesheet: non billable task from plan project
We want to retrieve easily the non billable task from
project plan. This commit makes the "Non billable" label
clickable, in the "Hours" sections, and trigger the actions
to display non billable tasks of projects matching the search
of the overview.

Task #1834454
2018-04-11 16:19:13 +02:00
jem-odoo 99ce19c7f3 [FIX] sale_timesheet: multi UoM on plan project
You can sell services in days, and your timesheet will
be expressed in hours. But on project plan, UoM conversion
is not supported and in some calculation, we are mixing
appels and oranges.
This commit fixes this issue.
2018-04-11 16:19:06 +02:00
Martin Geubelle 0d46c0b91d [FIX] web: correctly position carret in list
In list view, the carret was not correctly positioned in empty cells (i.e.
handle widget in readonly).

This rev. ensures that the position rules are only applied if the cell is not
empty.

Fixes #23984
2018-04-11 15:54:06 +02:00
Jairo Llopis 30aa75329c [FIX] website_form: Disable form send on editable mode
Before this patch, when a user was editing a website page containing a form
and he clicked "Send", for some reason, the form tried to be sent.

Now, the button behavior is disabled when entering editable mode.

Closes #23852
2018-04-11 15:45:47 +02:00
stefanorigano b3ad32f45b [FIX] web: fixes some design alignements
- Use 'baseline' to ensure that the priority icon will align to the
  parent's baseline
- Align the favorite icon in dashboards
- Align the statusbar's caret in form views
2018-04-11 15:36:11 +02:00
Arnold Moyaux c04119fc4f [FIX] purchase : be able to use it with MPS
Since procurement group is passed by the optional values
in the procurement proccess it should be considered as optional

MPS do not use procurement group because they will add the
planification in an existing RFQ it will fail because purchase search
for the key 'group_id' in values

opw-1833060
2018-04-11 15:09:59 +02:00
qsm-odoo ad46adcfc7 [FIX] web: stop wrapping kanban counter over multiple lines
Note: this should normally not be the case by design as for most
values there is enough space for the numbers not to wrap. While
waiting for a better implementation, the white-space:nowrap CSS
rule will enforce the behavior.

Thank you to @Jerther for the original commit.

Closes https://github.com/odoo/odoo/pull/24100
2018-04-11 15:04:40 +02:00
Romain Derie c09b89596e [FIX] website: keep query strings when redirecting 'website.' page
Urls like `/page/website.XXX` are redirected to `/page/XXX`.

Before this commit, the redirection would not keep query strings:
`/page/website.XXX?rde=1` would redirect to `/page/XXX`.

Now, we keep the query strings:
`/page/website.XXX?rde=1` will redirect to `/page/XXX?rde=1`

Closes #24140

Courtesy of @MTantin
2018-04-11 15:04:24 +02:00
Romain Derie 474f6cfdd8 [FIX] web_editor: changes lost on forward port of 744af2db
Fix of 744af2db that got lost during forward port, this is just rewriting the
diff for the new widget syntax.
2018-04-11 15:02:11 +02:00
Alexandre Kühn ea25036c14 [FIX] web: graph rendering when in DOM
Backported fixes:

    1. [IMP] web: GraphView: remove hack to render in DOM

        - ref. 166319fa4a
        - fully backported.

This commit backports the fix that removes the hack for rendering graphs
(delay in a setTimeout), so that the graph is rendered when it is in the DOM.

    2. [IMP] web: restore scroll position

        - ref. 4e204ed223
        - partially backported: only keeps `on_attach_callback`
          and `on_detach_callback` in the abstract_controller
          and in the abstract_renderer.

This commit backports the use of the hooks methods `on_attach_callback` and
`on_detach_callback` in abstract controller and renderer, so that the
controller of any view warns the renderer when it has been attached in
(or detach from) the DOM.

Also, this commit adds `on_attach_callback` and `on_detach_callback` for the
dashboard app, so that the graph view is correctly rendered.

Fixes #24092
2018-04-11 14:52:56 +02:00
Goffin Simon c471ca22be [FIX] purchase: Procurement rule Buy missing when installing Purchase
When installing Purchase, the procurement rule Buy for My Company, Chicago
was missing.

opw:1835411
2018-04-11 14:28:09 +02:00
Mathieu Duckerts-Antoine 96867cb0e3 [DOC]: doc: amelioration of dashboard view documentation
No mention of the group_operator attribute was made in the dashboard view documentation.
This fixes remedies this situation and slightly ameliorates the previous documentation.
2018-04-11 13:53:29 +02:00
Richard Mathot 79447255f4 [FIX] google_calendar: broken link to docs 2018-04-11 13:51:17 +02:00
Thibault Delavallée 79daa2e262 [IMP] test_mail: follow activities in performance tests
Commit 07ae0ccc4e set activities as not followed by default on records.
However this has an impact on performance test that should not happen.
Indeed performance tests should be based on technical decisions, not business
decisions. We therefore set activities as followed by default in some advanced
performance tests to always have results that can be compared.
2018-04-11 13:33:38 +02:00
jem-odoo 3be7c23900 [FIX] hr_timesheet: analytic account generation
'allow_timesheet' is true by default, but when installing hr_timesheet for already
created project, populating the column does not use write method, and so, no
analytic account is generated for existing project.
It is required to use the same mecanism as in resource (calendar generation),
and to do so, rewrite part of create/write method of project.project.

This commit also add an onchange, to maintaint consistency about having
no analytic account does not allow timesheet on project.
2018-04-11 13:23:41 +02:00
Toufik Benjaa fc6d98df24 [FIX] account_asset: Allow accountant to validate invoices
- When validating an invoice, the create method of the model account.asset.asset is called.
  Accountant have the access rights to create account.asset.asset object, but they do not have the rights to write on them.
  The issue here is that the create of the account.asset.asset is done, but right after a right is done in the same object, which trigger an AccessError.
  To fix this issue, we make the write using the admin env. This doesn't cause security issues since the user needs the create accesses.

OPW-1832797
2018-04-11 12:39:48 +02:00
Toufik Benjaa 0c9eabb0a9 Revert "[FIX] account_payment: Restrain access to invoice's partner"
This reverts commit 55878df5ff.
2018-04-11 12:26:41 +02:00
Parth Patel 7516d9bb7f [FIX] website_sale: make shipping address group-option valid for all user groups
Indeed in website_sale this option is used in templates, meaning public and
portal users should be added or removed from that group accordingly.

This commit is related to task ID 1746668. Closes #22753.
2018-04-11 12:18:53 +02:00
Mathieu Duckerts-Antoine 49662242dd [FIX] web: fix bad types in parameters
This fix allows the documentation to be built again.
2018-04-11 12:00:36 +02:00
Toufik Benjaa 2a09289e32 [FIX] payment_stripe: Create stripe charge with email
- When creating a Stripe charge, we have the possibility to send the customer email.
  This is then used by Stripe to send a payment notification (receipt) to the customer.
  This was never done by Odoo, this commit introduce this feature.

OPW-1829945
2018-04-11 11:58:55 +02:00
Géry Debongnie 86897ca167 [REF] web: remove updateModifiersValue from widget
The keyboard shortcut branch recently added a method
updateModifiersValue on the widget class, which is used to make a widget
aware of its modifier status (in particular, if it is required).  This
is necessary for the proper navigation behaviour on field widgets, but
should not be on the widget class.

The proper fix is, in my opinion, to introduce a AbstractViewWidget
class which would be used for AbstractField and all custom widgets in
views.

Meanwhile, this commit simply protects the call to that method. This is a
refactoring, but can be merged in saas-11.3.
2018-04-11 11:51:49 +02:00
Nicolas Martinelli 33ba61bfdb [FIX] web: domain evaluation
To reproduce the error, go to Accounting > Import Statement, then
Cancel. An error occurs because `belongs_to_company` is not in the data.
Indeed, it is directly set on the action
`open_account_journal_dashboard_kanban`.

Commit 9961bbf4eb re-evaluates if a record should be displayed in the
Kanban view after applying an action (in particular, archive a record).
However, the domain evaluated might contain values which are not in the
data. This is for example the case if there is a domain on an action.

Fixes #24142
opw-1835216
opw-1835123
2018-04-11 11:24:02 +02:00
Hiral Bhavsar ac0ac23cdc [FIX] account: prevent tax recurrency
We now prevent users from defining group taxes using the current tax as
its children taxes.

Fixes #19997
task# 1819407
2018-04-11 10:02:57 +02:00
Luis González c62caf9b52 [FIX] web: Order tabbing precedence between top bar's button More&its items
Currently, when the button "More" is opened, the HTML elements of their
items are located before the button, instead of being after. That means,
when navigating using the keyboard, if the button is opened ant `<tab>`
is pressed, the focus will not go to the menu items.

This change causes the HTML elements of the menu items to be moved, from
before to after the button "More".

PR #23865
2018-04-11 09:58:59 +02:00
Goffin Simon 5bb6517072 [FIX] purchase: Wrong Fiscal position in multicompany
Steps to reproduce:

 -Create company A
 -Create company B
 -Admin user with both companies but currently in company B
 -Create Demo user only with company B
 -Create fiscal position A to company A
 -Create fiscal position B to company B
 -Create vendor with fiscal position A with company A and the same vendor with fiscal position B in company B
 -Create product and add the vendor created before
 -Set like Create a draft purchase order
 -Logging with Demo user
 -Create sale order with one sale order line with route make to order
 -Validate sale order

Bug:

 The purchase order created by sale order had the fiscal position company A.

Closes #23561
opw:1825098
2018-04-11 09:11:55 +02:00
Nicolas Lempereur b79d8b99ff [FIX] base: amount_to_text possible difference
In 79038055 amount_to_text was refactored and improved, but there is a
drawback.

ie. if we have .29 cents with two decimals, `Twenty-Eight` was displayed
because `int(0.29 * 100) == 28` due to floating-point representation.

This commit keeps the improvements and fix this issue by using string
formatting of float as was done before.

opw-1829924
closes #24161
2018-04-11 08:57:20 +02:00
Joren Van Onder 7805825941 [FIX] pos_mercury: allow test transactions again
It used to be possible to run test transactions against mercurypay.com
using a regular swiper device, test credentials and test cards
provided by Mercury.

Mercury has recently disabled this saying this feature did not adhere
to certain PCI regulations.

It means that currently on the regular mercurypay.com network only
real cards (and thus real money) can be used.

Because we require a way to test without spending money this commit
allows to switch to the test network (mercurycert.net). It uses a
system parameter because we cannot introduce a Boolean on
pos_mercury.configuration in a stable release. It also changes the
test credentials to some that work on mercurycert.net.

Note that the regular 'production' swiper devices can not be used on
this test environment. This results in:

Error 004118: Failed to decrypt

The swiper contains embedded cryptographic keys specific to
mercury*pay*.net. Instead a specific 'development' swiper device with
embedded keys for mercurycert.net is required.

opw-1832156 (this is necessary to test that issue)
2018-04-10 12:05:00 -07:00
stefanorigano f39b1bb446 [REF] website_sale: multi-image modal design 2018-04-10 18:05:52 +02:00
stefanorigano 8d2d774e67 [REF] website_sale: multi-image notebook design 2018-04-10 18:05:41 +02:00
Christophe Monniez b696fa1b72 [REL] saas-11.3 2018-04-10 17:58:06 +02:00
stefanorigano 472b2a57ff [REF] website_sale: multi-image modal design 2018-04-10 17:54:11 +02:00
stefanorigano 8bda69b02b [REF] website_sale: multi-image notebook design 2018-04-10 17:54:11 +02:00
Alexandre Kühn 4f6f562c97 [IMP] base: generic Edit View menu item text in debug mode
With this commit, the menu item for editing a view in debug mode has been
changed.

Instead of "Edit List View", it is now "Edit View: List".

That way, the code is shorter, generic, and translatable.

Exception to above changes: search view, which is unchanged
(it remains "Edit Searchview")
2018-04-10 17:41:12 +02:00
Géry Debongnie 270dd268bf [DOC] doc: add dashboard view documentation
This commit add the reference documentation for the new dashboard view.
In an ideal world, this should be done in the enterprise repository, but
our documentation system is not extensible that way.
2018-04-10 17:41:12 +02:00
Alexandre Kühn 8dbc1d95c3 [IMP] web: many2one as measure in graph & pivot only when desirable
With this commit, the fields many2one are not always measures in pivot
and graph views. By default, they are *not* measures.

In order to have them as measures, we should pass `additionalMeasures`
as a param to any of the views, which contains a list of fields to consider
as measures.

example:

    Suppose a model with the following fields:

        - `product_id` (many2one)
        - `categ_id` (many2one)
        - `sold` (float)

    By default, only the field `sold` is a measure
    in a graph or pivot view.

    In order to pass `product_id` as a measure of
    a graph view, you should instantiate this view
    as follow:

``
    var viewInfo = /* ... */;
    var params = {
        additionalMeasures = ['product_id'],
    };
    var graph = new GraphView(viewInfo, params);
``

An exception to the rule above is when the many2one field is of type `measure`
in the arch: this field is set as the default measure of the view, therefore
it is implicitly added as an additional measure.
2018-04-10 17:41:12 +02:00
Géry Debongnie 36b4468d15 [FIX] web: prevent crash in graph when grouping/aggregating on m2o
We recently added the possibility of aggregating the graph view on a
many2one field (with count distinct operator).  This is useful, but then
a rare situation could happen: the view could be grouped by the same
field.

In that case, there is a name clash in the read_group, and the result
will be that the [id, nameget] of a m2o field will be used as an
aggregate.

The readgroup method should be improved (its API is a mess), but
meanwhile, we have a solution for this issue: if we group by a m2o, then
it is guaranteed that each group has an aggregate value of 1 for the
same field.
2018-04-10 17:41:12 +02:00