Commit Graph
127612 Commits
Author SHA1 Message Date
Aaron Bohy fdf615a551 [FIX] web: onchange in non inline one2many list
Let's assume a one2many list with two fields A and B, and an
onchange on A that sets B. Before this rev., on new records, the
onchange was only triggered if the one2many list was defined
inline.

Rev. 13c885195 was an attempt to fix the onchange issue in x2manys
with non inline views, but it only worked on existing records. This
rev. fixes the problem for both cases (existing and new records),
and thus reverts the fix of 13c885195.

The idea of this fix is to make both cases behave similarly, w.r.t.
fields and viewFields stuff in the fieldsView. In the inline case
(like in the main view case), fields and viewFields are the same.
In the non inline case, viewFields contained more information than
fields. As fields is used everywhere in BasicModel (and viewFields
is basically ignored), the fix is to set fields to viewFields.
2018-06-21 13:57:58 +02:00
Aaron Bohy 239d460ae5 [FIX] bus: correctly forwardport 10161f9d61 2018-06-21 13:57:57 +02:00
Aaron Bohy b188d1fc1f [ADD] im_support: test suite
This revs. add a new test suite for the im_support module. Defining
a new suite was necessary as the im_support JS feature needs
specific keys to be defined in the session, otherwise its files are
simply skipped.
2018-06-21 13:55:10 +02:00
Aaron Bohy ffe9bb501b [FIX] mail: test utils: mock is_odoo_focused
In the mocked version of the longpolling bus used in tests, the
is_odoo_focused function should be defined to prevent crashes when
we simulate incoming messages.
2018-06-21 13:55:10 +02:00
Aaron Bohy cf3cc98f1c [FIX] mail: set correct parent to ChatWindows
Since the ChatWindowManager is a service, this is no longer
necessary to set the webclient as parent of ChatWindow's instances.

This rev. sets the ChatWindowManager itself as parent, which makes
much more sense, and which allows to properly mock the whole
ChatManager-ChatWindowManager environment in tests.
2018-06-21 13:55:10 +02:00
Aaron Bohy 5d943c38c9 [FIX] mail: tests: move utils in correct bundle
Those test utils files should be in the test assets bundle such
that they are available for potential other test suites (e.g. the
new im_support suite).
2018-06-21 13:55:10 +02:00
Lucas Perais (lpe) f0efcbe592 [FIX] web: actions target=new should transmit their on_close
Have an action that opens a dialog, with a specific callback
to execute when the dialog closes
In the dialog, have a button linked to an action that opens
another dialog in target = new
Close this 2nd dialog

Before this commit, the callback was not executed

After this commit the callback is executed

OPW 1853136
closes #25180
2018-06-21 13:13:36 +02:00
qsm-odoo a473453b31 [FIX] web_editor: review crop attachment creation/discard
Previous implementation was wrong as it did not care about the ability
to discard a crop edition. Indeed, whenever a crop dialog was saved,
a crop attachment was created or updated at once. Discarding the editor
would then either:

- Seem to discard a first-time cropped image but would have created an
  attachment for nothing (just the image src was reset)

OR

- Fail to discard a second-time cropped image as the cropped attachment
  would have been directly updated and the image src would not have
  changed

This commit changes the way it works:

- On crop dialog save, the image is marked with required data for a
  potential future save of the cropped image (as a DB attachment) and
  the src is set to the base64 cropped image directly.

Note that the code ends up being clearer and efficient that way too.
2018-06-21 12:59:16 +02:00
qsm-odoo cd812bd6f4 [FIX] web_editor: fix saving and restoring of crop aspect ratio
When an image was cropped and saved with a specific aspect ratio,
it was not restored properly on further crop editions.
2018-06-21 12:58:33 +02:00
qsm-odoo a9366de8f9 [FIX] web_editor: do not show cropped images in media dialog
Cropped image attachment were not meant to appear in the media dialog,
only original ones.
2018-06-21 12:58:03 +02:00
qsm-odoo bf64efb5a0 [FIX] web_editor: do not 'reset' crop feature when changing ratio
Before this commit, when the user changed the ratio option in the crop
dialog, the image zoom/rotation were reset for no apparent reason.
2018-06-21 12:56:38 +02:00
qsm-odoo a04b79a205 [FIX] web_editor, *: properly remove DOM portions in a snippet
* website, website_mail_channel

Before this commit, when using the 'number of columns' option from a
column's snippet editor, the snippet overlay remained floating in the
void if the current column was removed by the option. This was because
the option did a simple "destroy" on the column without caring about
the snippet editors.

This commit introduces a new event which can be trigger_up'ed to ask
the editor to properly remove a DOM portion (destroy related editors,
call the 'onRemove' callbacks, ...).
2018-06-21 12:54:17 +02:00
qsm-odoo f6bbc40fbe [FIX] web_editor: reset snippet editors on snippet move
As indicated in a code comment, destroying and rebuilding all snippet
editors when a snippet is moved is more accurate as the snippet options
may depend on the new locations in a way the 'onMove' callback cannot
handle. That operation seemed however too costly for no visual benefit
at the time. Now, not implementing it is a source of bugs and redundant
code (as with the new "number of columns" option which is not properly
updated once a column is moved in another row), so this commit
implements the feature.

This also allows for some improvement: the 'cleanForSave' part of
snippet editors is always performed when they are destroyed.

If this proves to be ok and safe, we might want to backport this in
previous versions.
2018-06-21 12:54:17 +02:00
Christophe Simonis 226230952a [FIX] base: use relative import when it makes sense
Oversight of previous forward-port
2018-06-21 12:33:45 +02:00
Christophe Simonis 68326b15f9 [MERGE] forward port branch 11.0 up to c5ed372970 2018-06-21 12:18:40 +02:00
nla-odoo fd5062eb63 [FIX] payment_stripe: fix usage of removed 'refunding' state on payment.transaction
Since 0121634#diff-dc63c46ab28cd7b4ad9c17f2ccc3fbc7L491, the 'refunding' state no longer exists.
2018-06-21 12:13:40 +02:00
Christophe Simonis c5ed372970 [MERGE] forward port branch saas-15 up to 152d42041e 2018-06-21 10:57:42 +02:00
Nicolas Martinelli 22084bc52e [FIX] website_quote: token assignation
Speed up assignation of initial access tokens for large databases.

opw-1856946
2018-06-21 10:45:14 +02:00
Nicolas Martinelli 1fe119da3b [FIX] barcodes: nomenclature
Loads the barcode nomenclature only if one has been is defined. Indeed,
from commit 80e89c7a11, the POS config unset the
`barcode_nomenclature_id` field if the barcode support is not activated.

opw-1859928
2018-06-21 10:40:59 +02:00
Nicolas Martinelli c70db5d5df [FIX] stock_account: product on AML
When changing the standard price of of a product set in perpetual
valuation, the AML does not contain the corresponding product_id.

opw-1859777
2018-06-21 10:37:32 +02:00
Nicolas Martinelli 25b6dd6e88 [FIX] sale_mrp, sale_stock: sort moves
`sorted` returns a new sorted recordset, but doesn't modify the actual
one. Therefore, the current code doesn't work as expected.

opw-1824734
2018-06-21 10:34:49 +02:00
Nicolas Martinelli f8fc006e1e [FIX] sale_mrp, sale_stock: sort moves
`sorted` returns a new sorted recordset, but doesn't modify the actual
one. Therefore, the current code doesn't work as expected.

opw-1824734
2018-06-21 10:32:39 +02:00
Nicolas Martinelli 0aa2bc0acf [FIX] point_of_sale, sale_mrp, sale_stock: sort moves
`sorted` returns a new sorted recordset, but doesn't modify the actual
one. Therefore, the current code doesn't work as expected.

opw-1824734
2018-06-21 10:31:06 +02:00
Laurent Smet 66f5367c39 [FIX] account: fix warning on domain
A warning occurs on runbot build since f9d00055da.
2018-06-21 10:21:26 +02:00
Agathe Mollé 76df986fd3 [FIX] l10n_multilang: translate country states name
Backport of bc84eb2035 to 10.0

Countries with several official languages often have multiple names for their
states. Allow to translate the state name for such countries.

Some monolingual countries but, yet, with a need of translation of the addresses
such as China or Germany can add the same flag in their respective l10n_* module

Closes #25340
2018-06-21 09:56:18 +02:00
Lucas Perais (lpe) 5f105d144d [FIX] account: aged balance shouldn't display fully reconciled on a period
Commit 45c5a07d89 deals with displaying on the aged balance reports
the lines that zero out each other: an invoice and a payment of the same amount for the same partner
However, that commit overlooked that when there is a chain of reconciliation
that puts the report line to zero, it was displayed as well.

This present commit corrects this by making sure there are amls that detail the report lines

OPW 1858963

closes #25359
2018-06-21 09:36:58 +02:00
Nicolas Martinelli dd2354a1ab [FIX] sale_timesheet: SO line on subtask
- Activate sub-stasks on projects
- Create a product A:
  Product Type: Service
  Invoice based on: Timesheets on tasks
  Service Tracking: Create a task in an existing project
- Create a SO with A, validate
- In the project view, open the created task
- Click on the stat button 'Sub-tasks'
- Create a task from the kanban view

The SO line is not copied on the sub-task.

The `name_create` method doesn't send the `parent_id` key in the values.
Therefore, the SO line is not retrieved.

We fallback on the context key `default_parent_id`.

opw-1857560
2018-06-21 09:33:15 +02:00
Nicolas Martinelli f90434b96c [FIX] resource: 24h shift
Create a resource working 24 hours / day.
If we record it as:
- From 00:00 ; To 24:00 => crash
- From 00:00 ; To 23:59 => 1 minute lost

The `float_time` widget doesn't allow to be more accurate than 1 minute,
therefore it is not possible to record an end time of 23:59:59.999999.
We allow a value of 24:00 which is automatically interpreted as
23:59:59.999999. Only 1 microsecond is lost for such use case, which
should be acceptable for our level of accuracy.

opw-1856943
2018-06-21 09:20:33 +02:00
Joren Van Onder 72c445045d [IMP] account: show total of tax base amounts when auditing taxes 2018-06-21 09:13:40 +02:00
Christophe Simonis 152d42041e [MERGE] forward port branch saas-14 up to e4663523b9 2018-06-20 18:48:06 +02:00
Christophe Simonis e4663523b9 [MERGE] forward port branch 10.0 up to 081259ef25 2018-06-20 17:44:58 +02:00
Pieter Paulussen 50ee1c964b [FIX] account: fix account_move_line's default_get()
When creating a journal entry manually, the value proposed as next line was not taken into consideration all existing lines.

Was PR #25298. Courtesy of Pieter Paulussen (Dynapps)
2018-06-20 17:37:09 +02:00
qdp-odoo 6424111f7a [FIX] account: cash based taxes mixed with regular ones
Previously, the use case where a cash basis tax and a regular one were combined on the same invoice line (for example) was not supported (technically, there's a single boolean for the tax exigibility of the sale/purchase line). Since it appears this is a real need, this have been improved in the generic tax report (in enterprise repo) in revision https://github.com/odoo/enterprise/commit/f7e33b8114d4d649551a155d0ca8cc4f43f1fc01 and this commit fixes the community side, to copy only the base line of the tax exigibile on payments in the cash basis move
2018-06-20 17:18:21 +02:00
Christophe Monniez 081259ef25 [FIX] payment_stripe: fix broken test
The direct rendering test assertions were not reached at all because the
conditions were never True.
2018-06-20 16:57:55 +02:00
Christophe Simonis 7dbc995bef [MERGE] forward port branch 9.0 up to 9cb37398f2 2018-06-20 16:48:15 +02:00
Romain Derie 27825cbf13 [FIX] sale: unify both pricelist & sale option to show discount
Sale module has an option to show or hide discounts on order lines.
Pricelist also have a field to include the discount in the price or display the
full price strikethroughed.

Before this commit:
If the sale option was disabled, the pricelist option would be hidden, possibly
left enabled.
This will cause a strange behavior in frontend where user would still see the
strikethroughed price even if the sale module option was disabled.

Now:
If the sale option got disabled, we also disable the pricelist option

Closes #14741
2018-06-20 16:43:08 +02:00
qdp-odoo 2bcff00065 [REF] account: dead code removal
since revision b30fed7a7b the model account.opening does not exist anymore, that function was deadcode leftover.
2018-06-20 16:42:00 +02:00
Simon Lejeune 5dc9230c6e [FIX] barcodes: barcode input
If the barcode input is hidden, it isn't possible to focus it and thus
it isn't possible to actually use it.

related to rev b4a8338959
2018-06-20 14:46:30 +02:00
Christophe Matthieu ab85e95946 [FIX] ir_qweb: remove browse records from context
The context is send to qweb as option, the options are converted into a
frozen dict, the browse records can have a closer cursor, takes the place
in the cache, and raise and exception in qweb (because contact try to
json.dumps options for multi-edition feature in web_editor.

opw-1859848
2018-06-20 14:14:36 +02:00
Arnold Moyaux 91714d4c46 [FIX] stock: inventory security with translation
Usecase to reproduce:
- Enable multiple languages and companies
- Set one language on the admin and another on the demo user.
- Create a product and a translation for its name (both languages)
- Create an inventory adjustement in a company A for this product
- Switch on demo user (inventory manager rights but in company B only)
- Create another inventory adjustement for company B
- Add the invenory line with the product and save

The Inventory Line multi-company rule raise an access error
because the system set product_name on the inventory_line that is
a related field. Since it changes the product name with its translation
it will update it on other inventory line that have this product. The
other inventory line is in company A and the user don't have access to
it thus the access error is raise.

This adds readonly on the product_name since it should not be update
with an inventory line.

opw-1855137
2018-06-20 14:06:25 +02:00
qsm-odoo f01a0bc04c [FIX] web_editor: allow to empty a style file with the editor
Before this commit, if the user opened the LESS editor and emptied a
file, he may get a compilation error (as intended if the file contained
necessary variables and stuff) but this error also prevented to open
the editor again because some code tried to decode an empty content.

Now, when a file is emptied it is set to an unique line feed.
2018-06-20 13:18:16 +02:00
Martin Trigaux 8439202915 [FIX] account: initial balance has a 0 amount_currency
amount_currency is a field that is expected in multi-currency
The general ledger report has a line
    <span t-esc="line['amount_currency'] if line['amount_currency'] > 0.00 else ''"/>
which crashes if amount_currency is None

opw-1859122

Replaces and closes #25240
2018-06-20 13:18:16 +02:00
Wolfgang Taferner 46b8c07249 [FIX] product: bring back description in product views
Somehow the internal description got lost in the product views in
https://github.com/odoo/odoo/commit/af9d21b379f1dd42e83dcfa164af489c9261542d.
As the field is still used for demo data and is highly needed to
describe the product without exposing in one of the other new fields, it
is brought back.

Closes #24164
2018-06-20 13:05:34 +02:00
Olivier Colson b81b9f9ca1 [FIX] account: use today's date as due date for invoices if there is no payment term and no due date was given manually
The code was actually alreadt made in this spirit, there was just as wrong call to the date_invoice field of the model instead of the local variable with the same name, which contained the right value.
2018-06-20 12:32:33 +02:00
Denis Ledoux e75c0bd2b9 [FIX] calendar: ensure the recurring dates is inside the limit defined
by datetime

The library `datetime` defines a MINYEAR and MAXYEAR limit.
If you try to play with dates outside of these years limits,
it crashes.

In the case of the opw, the date within its timezone was
within the limit (year 9999), but in the UTC timezone
it was no longer the case (year 10000).

Actually the condition should use `<=` instead of strict `<`,
and check the year *in utc*
is not outside the limit, but as soon as you try
to compute the date within UTC, datetime crashes :).

However we can assume nobody will need a event in the year 9999
any time soon, or by that time if Odoo still exists,
we should have refactored this module about 3333 times and somebody
would probably have removed this limitation by oversight anyway.

opw-1850024
2018-06-20 12:32:29 +02:00
Laurent Smet f9d00055da [FIX] l10n_es: fix chart_template installation
Since d5359cfcf4, it's no longer possible to install the
l10n_es chart templates. Indeed, the transfer account template is generated twice with
the same code due to the addition of a domain in the previous commit:

('chart_template_id', '=', self.id)

...that doesn't take care about the hierarchy of chart template (through the parent_id field).
2018-06-20 10:20:15 +02:00
Joren Van Onder 512dab4500 [FIX] account_check_printing: don't crash when printing stub lines
odoo/enterprise@6c853253bf removed some
code from enterprise that was moved to community in
32db86e3a0. The make_stub_line function
was part of this, but in the process it was renamed to
_check_make_stub_line. Some calls to the non-existing make_stub_line
still existed.
2018-06-19 13:40:17 -07:00
Adrien Dieudonne fc5d030ef2 [FIX] web: checks rpc responses in web.ajax
Before this commit, load_action and load_views were never resolved
in case of internet connection loss.
It's because the call is triggered by web.rpc direcly who uses
ajax.rpc without any response check.

Now the rpc response is checked in web.ajax.
Thereby all responses are handled whether they come from session.rpc
or rpc.query.
Plus, it was not the responsibility of the session to check the
rpc responses.

Steps to reproduce the issue:
(1) load_action:
- Go to the app switcher for the first time
- Force disconnected from the network
-> No notification appears and the user aren't notify
(2) load_views (mobile only):
- Go to Sales -> Quotation
(In this case, the first call is 'load_views' because we need to force
to load some views like kanban view)
- Force disconnected from the network
-> No notification appears and the user aren't notify

Note: It's now important to notify the user about connection loss
because a recent improvement in mobile app replaces the 'retry screen'
and lets the webclient handle connection issues by itself.
The single odoo mobile app is supposed to work with all databases
from 10.0.
2018-06-19 20:11:22 +02:00
Olivier Colson 9cc4c453d6 [FIX] account: creation of account.payment
Allow to give the value of the payment method by the key 'default_payment_method_id' of the context, as the regular usage wants.
2018-06-19 17:55:54 +02:00
Olivier Colson 440a6fe26c [IMP] account: batch payments aren't only for inbound payments
Enterprise module has been renamed and code adapted accordingly
2018-06-19 17:53:17 +02:00