Commit Graph
110910 Commits
Author SHA1 Message Date
Aaron Bohy 6df482eb99 [FIX] barcodes: barcode handlers should return a deferred
This was the case about 15minutes ago. But before pushing we
decided to change the Barcode override of FormController to
directly use handlers of the FormController when it could (e.g.
to handle 'Edit', 'Discard' actions). This wasn't a good idea as
those handlers don't return anything, and the barcode mechanism
requires its handlers to return a deferred. So basically, it
crashed when such a barcode was scanned. Having a test suite is
nice, but you should not forget to relaunch it before pushing...
2017-08-25 16:13:57 +02:00
Aaron Bohy 802dde31f3 [FIX] web,barcodes: pager: FIRST and LAST actions
The barcode mechanism is supposed to handle commands PAGER-FIRST
(go to first record referenced in the pager) and PAGER-LAST (go
to last record). Before this rev., it wasn't the case.

We needed to add an option 'notifyChange' to the updateState
function of the pager, to ensure that the form is correctly
reloaded when the pager cursor is manually set (by the barcode
handler) on the first or last element.
2017-08-25 15:54:56 +02:00
Aaron Bohy 8019eacb47 [FIX] barcodes: generate correct update command
The barcode mechanism is optimized to (in certain conditions),
directly increment the quantity of a numerical field inside an
x2many, without performing any RPC, and then re-rendering the
x2many to display the new value.

Before this rev., it seemed to work fine, but when the view was
saved, those changes of quantity were lost. This was because the
changes weren't correctly notified to the model (the quantity
field being inside an x2many, the correct update command for the
x2many should be generated).
2017-08-25 15:54:56 +02:00
Aaron Bohy 5f40f21adc [FIX] barcodes: barcode_handler widget should be generic
When a barcode field with widget="barcode_handler" is in a form
view, an onchange RPC should be done each time a barcode is
scanned.

Before this rev., it worked by chance because the views using it
don't define a 'pack_operation_product_ids' field.

Anyway, this widget is meant to be generic, so it shouldn't
hardcode a fieldname.
2017-08-25 15:54:56 +02:00
Aaron Bohy c73233d248 [FIX] barcodes: don't warn if action unavailable
Before this rev. a warning was displayed when a barcode mapping an
invisible button was scanned. It shouldn't, for the following
reason. In the stock.picking form view, two buttons with
barcode_trigger='validate' are in the page ('Start Inventory' and
'Validate'), and there is always at least one of them that is
invisible. So when scanning the 'validate' barcode, we don't want
a warning to be displayed, as there is potentially another button
that is able to handle the request.
2017-08-25 15:54:56 +02:00
Aaron Bohy dec1bdb44d [FIX] barcodes: don't redraw form twice
When scanning a command barcode, the view shouldn't be redrawn
after the operation corresponding to the command is executed,
for two reasons: first, it is useless as the view has already
been reloaded, and second, it may cause issues if it has been
destroyed meanwhile.

For example, when scanning barcode O-CMD.MAIN-MENU from a
picking form view: a do_action is performed to go back to the
main barcode client action (so the current form view is destroyed),
but an handler tried to redrawn the destroyed form view, which
produced a crash because the session was required by Date fields,
and it couldn't be provided (there were no more parent listening
to provide it).
2017-08-25 15:54:56 +02:00
Aaron Bohy 3d5b283675 [FIX] barcodes: don't trigger onchange at each keypress
When a keypress event is triggered in a 'field_float_scannable'
widget, the event is first catched by the barcodes mechanism, and
then manually re-triggered. However, the way it was done implied
that the environment was notified of each keypress event, so if
there was an onchange on that particular field, an onchange RPC
was done at each keypress.

Moreover, the focus was lost at each keypress as well.
2017-08-25 15:54:56 +02:00
Martin Geubelle b2e1b1356b [FIX] stock: correctly save the operation in picking
When creating a new picking and adding a new product operation, the operation was
disappearing. As the field `product_id` is readonly in some conditions, its value
wasn't sent by the client on the picking write rpc.

This behaviour of not sending readonly fields in x2many has been correctly
implemented with the new views but some views (like this one) was basing their
behaviour on this breach.

See rev. https://github.com/odoo/odoo/commit/3b3f6f04af79d7dcc4461262e14e05096d76180b for more details.
2017-08-25 15:54:56 +02:00
Martin Geubelle ebcf35b66c [FIX] web: restore form_view_initial_mode support
The key `form_view_initial_mode` can be set in the action context, to
open the action in edit mode, mainly.

This key wasn't supported since the new view refactoring so this commit
restores its support.
2017-08-25 15:54:56 +02:00
Martin Geubelle 5b968ad371 [FIX] web, barcodes: restore disableAutofocus option
This option has been removed with the new views but was used in barcode.

The form renderer was also dealing with some part of the autofocus
but this should only be handled by the controller.

The logic is now only in the controller and a test case has been added.
2017-08-25 15:54:56 +02:00
Akash Bhavsar b131e9b0ef [FIX] barcodes: fix several issues when scanning barcodes
Since the new views, most of the barcodes feature was
broken. This commit re-enables the support of commands like
'edit', 'save', 'cancel', 'previous' and 'next'.

Also changed javascript event handler to jquery event handler to
make barcodes testable in phantomjs.
2017-08-25 15:54:56 +02:00
Aaron Bohy 7095c32f1c [FIX] web: tests: correctly destroy view 2017-08-25 15:54:56 +02:00
Jeremy Kersten 71bb9a09ff [FIX] sale_timesheet: don't block th edition of timesheet if prepaid.
In case where the product is of invoice_type 'order' and not 'delivery',
we allow the user to edit the anlaytics lines / timesheet.

Previously, an employee was unable to edit an timesheet line once saved.
When you work on prepaid pack / long task, it is frequent to edit
existing timesheet line.
2017-08-25 15:51:41 +02:00
Jeremy Kersten 193707632d [FIX] sale_timesheet: apply correct discount in revenue computation
Related to https://github.com/odoo/odoo/commit/aec6248bb379c1ece02f5d4f718566c770fc2c6f
2017-08-25 15:51:19 +02:00
qsm-odoo 6e22e8b027 [FIX] web: use 'o_input' class on kanban progressbar <input/>
Since the new views, the 'o_input' class has to be set explicitely on
<input/>, <select/> and <textarea/> elements to have the proper styling.
2017-08-25 10:37:37 +02:00
Christophe Matthieu ea60ec029d [FIX] account: traceback in reconciliation widget
If a user reconcile an active line, when he active an other line, the
widget can't close the removed line because it no longer exists.

bug introduce by https://github.com/odoo/odoo/commit/1de418aa7afb986eeb2b98f12dee0c5661902737
2017-08-24 16:20:29 +02:00
Géry Debongnie c0247e6a8d [FIX] web: correct evaluation for x2many fields in onchanges
Before this commit, it could happen that a x2many field was considered
invalid, which prevent triggering onchanges, even though each of its
required fields are properly set.  Here is such a scenario:

We have a one2many field something_ids in a form view, with an inline
tree view, which contains a field X.  The field X is required on the
model, but marked required="0" in the inline view.

In that case, we incorrectly evaluated the required modifiers: since the
attrs did not contain the required attribute, we fell back on the
field_get value, which is true in this case.  But this is not correct,
the fieldviewget already computed the actual modifiers and took into
account the fact that it was overridden.  We need to only look at the
modifiers.
2017-08-24 10:58:28 +02:00
Géry Debongnie 04470b8112 [FIX] web: increase timeout for JS unit tests
Some runbot servers are quite slow in the midday, and they fail the unit
tests because the 3min timeout is reached.
2017-08-24 10:58:27 +02:00
Raphael Collet 32aa7dc9a0 [FIX] models: implement change_default behavior for fields
The behavior is no longer implemented by the web client.  Implement it
server-side as part of the onchange mechanism, simply by defining onchange
methods for the fields that have the flag.
2017-08-24 09:37:55 +02:00
Jérome Maes d8c897de64 [FIX] sale_timesheet: uncomment forgotten code when testing previous fix 2017-08-24 08:37:30 +02:00
Aaron Bohy 6e4b59cc9c [FIX] web: Form: display button box in create mode
Before this rev., the button box wasn't displayed on new (not saved
yet) records. This wasn't the case before the new views.

This is a problem in lunch, as the lunch.order form view is opened
in create mode, and the balance is displayed in the button box.
2017-08-24 07:20:22 +02:00
Aaron Bohy 42f22a2161 [FIX] web: read context when reloading Graph or Pivot views
Before this rev., keys like pivot_measures, graph_mode..., were
correctly took into account at first load of Pivot or Graph view,
but not at reload.

Those keys are particularily useful when a user saves a research
to its favorites. When such a favorite is selected, the view is
reloaded and the interesting information is in the context.
2017-08-24 07:20:22 +02:00
Aaron Bohy acb9d60d94 [FIX] web: Pivot: handle __count__ measure
The former implementation of the Pivot view used __count__ as
magic field to display the number of records in groups. However,
in filters defined in xml, __count is used instead of __count__,
so it crashed when such filters were activated.

With the new views, we made those filters work by using __count.
However, if a user saved filters using __count__ at that time as
favorite, activating them in the new views produces a crash as
well.

This rev. adds a compatibility layer to ensure that the pivot
view handles both __count__ and __count measures uniformly.
2017-08-24 07:20:22 +02:00
Christophe Simonis db0810dc6e [MERGE] forward port branch saas-15 up to 0cfbc7581f 2017-08-23 18:15:56 +02:00
Christophe Simonis 0cfbc7581f [MERGE] forward port branch saas-14 up to f8bf335aea 2017-08-23 18:14:18 +02:00
Christophe Simonis f8bf335aea [MERGE] forward port branch 10.0 up to 420e433fa3 2017-08-23 18:12:24 +02:00
Christophe Simonis 420e433fa3 Revert "[FIX] website_sale: Avoid compute tax for every company"
This reverts commit 04cddc447b.

Public user can't read taxes (map_tax() only play with ids)
2017-08-23 18:07:38 +02:00
Jérome Maes aec6248bb3 [FIX] sale_timesheet: apply correct discount in revenue computation
The discount is saved as a percentage, not in a decimal value
between 0 and 1.
2017-08-23 15:21:38 +02:00
Jérome Maes a8bb544628 [FIX] sale_timesheet: take care of the UoM for revenue computation 2017-08-23 15:21:37 +02:00
Jérome Maes 3bcea6389a [FIX] sale_timesheet: color invoiced timesheet on task
When the invoice is validated, the related timesheet are
set as invoice, and are not updateable anymore.

In order quantity, create and confirm SO, log 2 timesheet
lines and validate invoice. Your 2 timesheet lines will be
mark as invoiced. The other hour to deliver will not be linked
to the invoice (and their revenue=0), so the futur lines will
be updateable. But for the 2 first, the user will have to create
a new timesheet line, intead of updating an existing one. The
color will tell him which line is invoiced.
2017-08-23 15:21:37 +02:00
Jeremy Kersten a5d05ae783 [FIX] mass_mailing_event_track: remove duplicated string
Text was displayed 2 times
2017-08-23 15:18:11 +02:00
qsm-odoo e0d5a875f0 [FIX] web: make "slow" create of m2o fields work
There were some coding mistakes since some changes introduced by
https://github.com/odoo/odoo/commit/d19671f0d0ff7189055cbe0794afed32f8a387e6
2017-08-23 15:14:37 +02:00
Christophe Matthieu 11af3b7339 [FIX] account: unless query when remove partner in reconciliation widget
When the user remove the partner, the reconciliation widget try to read
information on 'res.users' without any partner id.
Open the match view when change the partner.
Remove max-height which can hide the last proposal.
2017-08-23 14:47:49 +02:00
Christophe Matthieu 0b4f3542b2 [ADD] account: reconciliation widget, add load more button in widget to load more statements 2017-08-23 14:46:07 +02:00
Christophe Matthieu cf03a74c32 [IMP] account: reconciliation widget: add a test for load more button 2017-08-23 14:45:46 +02:00
Cedric Snauwaert 1de418aa7a [ADD] account: reconciliation widget, add load more button in widget to load more statements 2017-08-23 14:45:46 +02:00
amoyaux 857778fa94 [FIX] stock: move entire pack with multiple quants
There was an error message when trying to move an entire
pack that contains multiple quants saying that every component
in the pack should be in the same location. (it the case with the
bug)

It happens because after action_done only one quant of the package is moved
to the new location and other quant still in the old location. Thus the
check fail. Also the extra move for remaining was not created.

This commit changes the get_remaining_prod_quantities on pack operation
that had a migration error between old/new api. This change returns the
correct remaining quantities and thus the extra move is created and all
quants for the pack are moved to the new location.
2017-08-23 14:24:11 +02:00
Martin Geubelle 65ecd109a5 [FIX] web: reimplement conditions in the "Set Default" dialog
The rev. https://github.com/odoo/odoo/commit/49f0413290821cb123e75b4546873cf98edf1d25 reintroduced
the "Set Default" dialog but forgot the conditions part.

This rev. reintroduces the missing part.
2017-08-23 13:53:18 +02:00
Christophe Simonis 59f8b849fb [MERGE] forward port branch saas-15 up to d5f2a38b50 2017-08-23 11:23:08 +02:00
Nicolas Martinelli 3b232b9eff [FIX] link_tracker: do not track 'tel:' or 'sms:' links
- Create a mass mailing including a 'tel' or 'sms' link, e.g.
  `<a href="tel:555-000-0000">555-000-0000</a>`
- When sent, the link is converted to a tracked linked (`http://...`)

We do not want to convert these links, they should be handled by the
browser directly.

opw-765885
2017-08-23 11:08:19 +02:00
Nicolas Martinelli b3590bc58e [FIX] mrp: change lots in produce
- Create Products A and B, tracked by unique serial number.
- Receive some quantity of B.
- Create a BOM for A which uses 1 unit of B.
- Create a MO for 2 units of A, save and check availability.
- Click on the 'Produce' button.
- Change the suggested lot (choose a new one or create), then click on
  the '+' button.

When the wizard is reloaded, the lot chosen is lost.

We reach an exception in the framework: when clicking on the '+' button,
no `create` is performed on the transient model `mrp.product.produce`,
therefore the values are not saved.

Since this use case is an exception and is likely to lead to errors, we
remove the button.

opw-761044
2017-08-23 10:17:49 +02:00
Nicolas Martinelli fa36e98368 [FIX] website_sale: default "Product Prices" value
The default value should be 'subtotal' in the website settings, since it
is already the case in the sales settings.

opw-766024
2017-08-23 09:56:41 +02:00
Benjamin Willig 00125215f7 [FIX] Allow inheritance to change writeoff lines values
Allow inheritance to change writeoff lines values in function _create_writeoff

opw:766422
2017-08-23 09:45:48 +02:00
Olivier Dony dbdf994df8 [FIX] account: do not show payment data to non-billing users
Users will generally not have the right to read Journal Items unless
they are members of one of the Accounting/Invoicing groups.

Removing the payment-related fields & widgets from the view should let
those users view relevant customer invoices (e.g. for Salesmen) without
getting an AccessError, due to the underlying access to Journal Items.
2017-08-23 03:03:49 +02:00
Nicolas Martinelli cda1bc55af [FIX] product_extended: traceback on bom_count
Complement of commit 543f75f46e

opw-766678
2017-08-22 18:25:45 +02:00
Jeremy Kersten 2850612d37 [FIX] sale_timesheet: update test comparaison
Use float_repr to get the comparison value into the log

Add this log to debug why this test make runbot red randomly.
2017-08-22 17:38:20 +02:00
Jeremy Kersten f2cc28268c [FIX] website_crm_partner_assign: fix signature escaping
| safe was applied on '' and not user.signature
So the mail was send with the signature in text plain
2017-08-22 17:38:20 +02:00
Borni DHIFI c02f9e433d [CLA] signature for Borni DHIFI
Closes #18989
2017-08-22 17:27:58 +02:00
Christophe Simonis d5f2a38b50 [MERGE] forward port branch saas-14 up to 6956ad54de 2017-08-22 17:20:15 +02:00
Christophe Simonis 6956ad54de [MERGE] forward port branch 10.0 up to 6dc0f31415 2017-08-22 16:45:43 +02:00