Commit Graph
110703 Commits
Author SHA1 Message Date
Christophe Simonis 0c13beb0cc [FIX] mail: check alias contact
Correctly verify method existance before calling it.
2017-08-09 12:44:13 +02:00
Adrien Dieudonne 99e38c04bf [FIX] test_main_flows: don't click behind modal
In the main_flow_tour, we edit a related record of a many2one in a
one2many. A modal is displayed and we make some changes. We
then click on 'Save' in the dialog. The next step is to add a new record
in the one2many, so we click on 'Add an item'. However, we didn't
wait for the modal to be closed before clicking, which is actually not
possible in practice (because of the modal backdrop).

This made the tour fail when run from the browser, since commit
c300e5e, which produces a redraw of the line containing the
many2one that has been edited.

This rev. ensures that we wait for the modal to be closed before
adding a second record.
2017-08-09 09:04:30 +02:00
Christophe Simonis 40a82cdfda [FIX] http: ensure registry is still bound to the request before using it
A user can be logged out during a request, loosing the database (and
thus registry) information.
2017-08-08 19:14:05 +02:00
Thibault Delavallée e1b954f066 [FIX] mail: do not put context as feedback when marking an activity as done
Backport of 9fb86d6fac
2017-08-08 17:58:10 +02:00
Christophe Simonis 8c00b3ef7e [FIX] mail: correct alias access verification
When a replying to an email, the matching alias should first verify access
via the parent record if exists (i.e. check on the project instead of
on the issue itself).
2017-08-08 17:37:17 +02:00
Olivier Dony 17634acb0e [FIX] crm: correct activities filter combination
The new "My Activites" filter introduced by rev. 87e457158e
should not be in the same group of the search view as other activity
filters (Overdue/Today/Upcoming), otherwise they are combined with OR
instead of AND.

This is particularly misleading when coming from the Sales dashboard, as
the "Overdue" button of "My Pipeline" will lead to a list of
opportunities with "My Activities OR Overdue Activities", showing *all*
opps with overdue activities, not just yours.
2017-08-08 16:17:34 +02:00
David Monjoie ed286c4562 [FIX] web: disable buttons in list view on virtual records
Such buttons are not going to work on records that actually do not
exist yet. The behavior is now the same as in saas-15.

Steps to reproduce the bug:
Steps to reproduce the bug:
- Enable lots in Iventory
- Choose a product which is a component of another (through mrp bom)
- Set this product as tracked by lot
- Set this product inventory quantity to 0
- Create a new manufacturing order for the product for which it is a
  component
- Click on "Check Availability"
- Click on Produce
- Click on the little square with a + in the m2m list view, the
  server will crash in the ensure_one of the function called by
  the button since there is no record to run it on.
2017-08-08 11:18:11 +02:00
David Monjoie e2252c35c1 [FIX] web: handle create in many2many default_get
Previously, we did not handle the case where the result of the m2m
default get was a new record. In this case, we can't just send a
replace all command giving the ids since the new record has no id.

We decided to keep the replace all command even when it is empty
to stay consistent with the o2m implementation, even though saas-15
did not behave like that.

Steps to reproduce the bug:
- Enable lots in Iventory
- Choose a product which is a component of another (through mrp bom)
- Set this product as tracked by lot
- Set this product inventory quantity to 0
- Create a new manufacturing order for the product for which it is a
  component
- Click on "Check Availability"
- Click on Produce
- You'll get an error as the id given to the onchange is a virtual one,
  rather than a create which would not include an id.
2017-08-08 11:18:10 +02:00
David Monjoie 587751aa0d [FIX] web: prevent virtual datapoint creation when no default value
Previously, it used to create a virtual datapoint even though there was
no change on this field. If the field was a many2one, this datapoint
triggered a name_get call afterwards, but giving the virtual id of
the datapoint since there is no real record. The solution is to avoid
creating a virtual datapoint when it is not needed at all, thus fixing
the wrong name_get call.

Steps to reproduce the bug:
- Enable lots in Iventory
- Choose a product which is a component of another (through mrp bom)
- Set this product as tracked by lot
- Set this product inventory quantity to 0
- Create a new manufacturing order for the product for which it is a
  component
- Click on "Check Availability"
- Click on Produce
- You'll get an error as the web client tries to fetch the name_get of
  this datapoint even though the record does not exist.
2017-08-08 10:38:16 +02:00
David Monjoie c294e7d46e [FIX] mrp: fix unbuild order creation
Unfortunately, ed60339 is incompatible with ebd1721 since
we once again do not send the values of readonly fields.

This is a partial revert of commit ed60339.
2017-08-07 11:32:06 +02:00
Aaron Bohy 8a386b9a08 [FIX] web: BasicModel: domain returned by onchanges
Onchange RPCs return an object that may contain a 'domain' key.
When it does, its value is an object whose keys are field names and
values are the new domain for the corresponding field.

Commit 8473bde8 added the support of the 'domain' key, but stored
it directly in the fieldsInfo (an object gathering information of
the fields in the view, and which is shared between all records).

This was wrong as the domain isn't necessarily the same for all
records. To reproduce, with the UOMs activated, go to Sales >
Quotation, in the form view, add an order line, set a product
(e.g. Graphic Card), the onchange sets the domain for the uom
field (matching uoms like 'unit', 'dozens'). Add a second line
with a service product, the onchange returns another domain for
the uom field (matching uoms like 'hours', days'). Click again on
the uom field of the first line, the domain is the one of the
second record, which is wrong.

This rev. directly stores the domains returned by the onchange on
the object representing the record, so that this information isn't
shared between records anymore.
2017-08-07 11:24:15 +02:00
fwi-odoo 144d8e42fc [FIX] web: load subviews in the correct function
Before this commit, it was impossible to load the x2many fields subviews when
they were not defined inline.
Now it is possible to call the method "_loadSubviews" to do so.
Used mainly in studio, to be able to display the x2many fields without inline
views.
2017-08-04 14:53:06 +02:00
Khoi Nguyen c300e5ede7 [FIX] web: reload right record when editing a many2one inside an x2many
Before this revision, editing a many2one inside an x2many field did not
cause an update of the x2many field upon saving. This is due to the fact
that a field on a screen was deemed affected by a record change only if
its value or a directly related record has been updated.

This present revision looks for changes recursively, thereby including
the case where an x2many field contains a many2one.

The bug appeared for example in Manufacturing, when editing the product
name of a BOM line.
2017-08-04 11:31:58 +02:00
Martin Geubelle d19671f0d0 [FIX] web: return a deferred in m2o quick create
The rev. https://github.com/odoo/odoo/commit/99ae418bf24171fbc6bb27584059c27efb857e77
accidentally modified the `quickCreate` return value type, which was previously a deferred.

This function is overriden in Studio to catch the deferred so the previous type has
been restored.
2017-08-03 11:11:45 +02:00
rar-odoo b724662401 [FIX] Gamification: email template (#18331)
* [FIX] Gamification: email template

- realized that the pictures of users were not public by default,
  which means src with an url won't work if not connected to the database.
  This is fixed by embedding the pictures directly in the mail.

* [FIX] Gamification: challenge template

- fixed layout problems with what works in the renderer.
2017-08-02 17:20:49 +02:00
Khoi Nguyen 2258c031ad [FIX] web: fix traceback when creating an event starting at 12am or 11.30pm
Since the switch to the new views, clicking on a 12am cell in a week
view of calendar triggers a traceback. A similar issue happens when
creating an event at 11.30pm. This is due to the fact that events
starting or ending at 12am are suspected to be incorrect and are thus
checked against the database.

This commit fixes both issues, by requiring that database checks be
carried out only if the records actually exist in the database.
2017-08-02 14:54:45 +02:00
Martin Geubelle 211961c374 [FIX] web: handle mutexify in standalone widgets
The rev. https://github.com/odoo/odoo/commit/99ae418bf24171fbc6bb27584059c27efb857e77
introduced a trigger_up `mutexify` when quick creating a record in a many2one ;
this broke the behaviour when the many2one was standalone (because it has no
BasicController and mutexify is handled in the latter).

An attempt to fix this issue has been made in the rev. https://github.com/odoo/odoo/commit/e83c3e2678500c9bf2c17b4d23ae9a294ebafaa7
by adding an option `standalone` in the field widget options. In this case,
the action was directly executed instead of the trigger_up. While this correctly
works, this implies that the option needs to be added in every standalone
many2one (and only many2one as the others won't use the option), which is not
very convenient.

An other attempt is made in this rev. by moving the mutexify handler from the
BasicController to the FieldManagerMixin ; as a widget that instantiates a field
widget needs to extend this mixin, both cases will work and we won't need to
specify the option anymore.

This commit thus partially reverts the rev. https://github.com/odoo/odoo/commit/e83c3e2678500c9bf2c17b4d23ae9a294ebafaa7
2017-08-02 08:49:12 +02:00
Christophe Simonis 8d89148d13 [MERGE] forward port branch saas-15 up to 5e19f28bfc 2017-08-01 23:11:27 +02:00
Christophe Simonis 5e19f28bfc [MERGE] forward port branch saas-14 up to d0ece6cd89 2017-08-01 23:07:22 +02:00
Christophe Simonis d0ece6cd89 [MERGE] forward port branch 10.0 up to afd4b68acc 2017-08-01 23:06:43 +02:00
Christophe Simonis afd4b68acc [FIX] website_crm_partner_assign: mock geolocalisation during tests 2017-08-01 22:39:29 +02:00
Christophe Simonis d1cf4f9672 [MERGE] forward port branch saas-11 up to ed36929265 2017-08-01 22:39:16 +02:00
Christophe Simonis ed36929265 [FIX] core: avoid tests to contact gravatar server 2017-08-01 22:03:39 +02:00
Khoi Nguyen 597d172ff0 [FIX] web: always call 'search_read' when loading calendar
This commit reverts
https://github.com/odoo/odoo/commit/2e2ab4e954cd5da8c0c06d393b334cefc7627315
(which ensures that if all filters are 'inactive' then nothing is shown)
for the following reasons:

- It is not necessary since _getFilterDomain was rewritten (see
  https://github.com/odoo/odoo/commit/4e12edc023dd20d435f5575b5517a3c11deb8421).
  If all filters are inactive, _getFilterDomain does now return an
  "in []" domain.
- It shows an empty calendar when filters yield an empty domain.
2017-08-01 18:03:15 +02:00
Christophe Simonis a42b056ca9 [MERGE] forward port branch saas-15 up to d3154e0ef4 2017-08-01 17:59:16 +02:00
Christophe Simonis d3154e0ef4 [MERGE] forward port branch saas-14 up to af9868bc28 2017-08-01 17:54:09 +02:00
Christophe Simonis af9868bc28 [MERGE] forward port branch 10.0 up to e6ad245634 2017-08-01 17:22:43 +02:00
Goffin Simon 39892cdaa1 [FIX] account: Only 64 characters for the name of an entry
When creating a customer invoice with description/reference with more than
64 characters, the description was cut to generate the name of the account move
lines. But it's possible to create an entry with more than 64 characters as name
by the interface. The limitation is deprecated.

opw:760316
2017-08-01 17:14:28 +02:00
Christophe Simonis e6ad245634 [MERGE] forward port branch saas-11 up to ab0e083ecb 2017-08-01 17:00:03 +02:00
Christophe Simonis ab0e083ecb [MERGE] forward port branch 9.0 up to 587668797e 2017-08-01 16:32:23 +02:00
Christophe Simonis 587668797e [MERGE] forward port branch saas-6 up to b3ddbbd4ba 2017-08-01 16:05:13 +02:00
Christophe Simonis b3ddbbd4ba [MERGE] forward port branch 8.0 up to 40197b38e5 2017-08-01 15:44:24 +02:00
Christophe Simonis e2826028ab [FIX] website_slides: only query google api if info is missing
With demo data, avoid doing requests on external service for
information we can provide.
2017-08-01 15:39:02 +02:00
Nicolas Martinelli 6c3bff8fd3 [FIX] stock: traceability button
- Archive a product
- Click on "Traceability" stat button => crash

opw-760717
2017-08-01 15:06:10 +02:00
Nicolas Lempereur 40197b38e5 [FIX] web: typo css class 69925ca6
opw-760956
closes #18601
2017-08-01 14:05:21 +02:00
Nicolas Lempereur 69925ca6f0 [FIX] web: display prev/next arrow after grouping
On a list view, if we group records the arrows and changing page
feature are disabled. But if then we removed the grouping, the arrows
never reappeared.

note: not necessary as of 9.0 it was already solved in 1280bf251

opw-760956
closes #18596
2017-08-01 13:56:26 +02:00
rar-odoo 435c2eae19 [FIX] Account: account_field field typo
the field data-max is supposed to be stored in the database.
Currently, the arg is 'stored=True' which is not recognised by the orm.
This fix ensures the field is correctly sotred and thus not computed at reading.
2017-08-01 12:46:29 +02:00
Jeremy Kersten 66a6b670e9 [FIX] stock: improve warning to help user to find blocking move.
Add into the warning message the list of stock.move that raise the constraints
error.

When you create an 'Inventory Ajustment' of 1000 lines and see this error,
it is not easy to find which product could cause the problem.

This solution is not perfect since the name is not uniq, but it decrease
drastically the number of record to check manually.

opw-760643
2017-08-01 10:43:36 +02:00
Jeremy Kersten 856f35eb21 [FIX] UserError: don't display None in Warning popup.
UserError uses a retrocompatibility function 'except_orm' which one can take a
second parameters. The default value of this second param is None, so if we
don't force an empty string, we will see a None on each raise UserError as last line.
2017-08-01 10:43:36 +02:00
Goffin Simon abbb937607 [FIX] sale_stock: return a delivered product with a non internal location
When returning a delivered product with a non internal location,
the delivered quantity on the SO was not updated.

Steps to return a delivered product:
- Click on button "Return" on stock.picking
- Check the refund box
- Click on return
PS: for the field return location, you can choose a child location from
WH/stock. So it can be a not internal one.

opw:749610
2017-08-01 09:33:06 +02:00
Goffin Simon 8452cc2e36 [FIX] purchase, sale: Warning message visibility on Product
When "No message" is set on field purchase_line_warn/sale_line_warn,
the message doesn't have to be displayed in the respective field
purchase_line_warn_msg/sale_line_warn_msg.

opw:760801
2017-08-01 09:27:36 +02:00
Odoo Translation Bot bbd4e7e292 [I18N] Update translation terms from Transifex 2017-08-01 02:40:08 +02:00
Christophe Simonis 3becbd764d [FIX] test_main_flows: wait buttons to be active before triggering them
Since a1f7aa3362, buttons are deactivated
during action.
2017-07-31 18:59:30 +02:00
Nicolas Martinelli 9bb2e4595d [FIX] l10n_in_hr_payroll: IFSC code
The IFSC code is not populated when the advice is created automatically
(no onchange triggered).

opw-746466
2017-07-31 15:53:44 +02:00
David Monjoie 28bf5f007f [FIX] web: fix action context with no explicit context
When I did efd15852, I accidentally undid d20074c5. That commit
wanted to filter out unwanted values from the action context, but
it was too violent, as it was discarding the action context. (See
bug described in efd15852)

My original commit aimed at avoiding the filtering of the action
context by having it devoid of unwanted values altogether. The
idea was "if this is an action button, we don't want the element
context". However, the default behavior of the _getContext function
was to add the element context. There were options to force to add
the element context despite being in a case where it should not be
added, but we needed the opposite: do not add the element context.
We used "additionalContext" in this fashion, the idea was: "if I
give you specific context values, don't polute it with the element
context". This was efd15852.

However, not all actions have context defined explicitely in their
definition. In this case, since additionalContext was undefined,
the element context was added again, despite our will not to add
it for actions. We solved this by simply always giving an
additionalContext to getContext, providing an empty one if needed.

To reproduce this bug (which is the same as efd15852):
- Go to Manufacturing
- Click on menu Master Data then Products
- Open a product
- Click on the "Bills of Materials" stat button
- Click on create
- The create crashes because of the "default_type" context key
  that is erroneously passed from the "Products" action to the
  "Bills of Materials" stat button action.
2017-07-31 15:53:12 +02:00
Martin Geubelle c66fbed5c6 [FIX] board: pass domain in view creation
In the dashboard, the domain wasn't passed to the view since the new views.
The action in the dashboard and the one saved were thus different (ex: when
saving 'Customer', you got all partners).
This was also causing a traceback when editing a value in the grid view.

This domain is now correctly passed.
2017-07-31 15:02:36 +02:00
Christophe Simonis 09d698d05f [MERGE] forward port branch saas-15 up to a6900c43b4 2017-07-31 14:09:34 +02:00
Khoi Nguyen a752e7d145 [FIX] web: make calendar adapt to screen size
This commit aims to reproduce saas-15 behaviour when rendering the
calendar. More explicitely, in favourable conditions, we would like the
calendar to be contained in a scroller adapted to the screen dimensions.

To do so, we require that the calendar only use the height given by its
parent container (in case of overflow, the calendar should have its own
scrollbars). We then trigger a 'resize' event to account for a bad
initial render of the calendar.
2017-07-31 13:52:53 +02:00
Adrien Dieudonne a1f7aa3362 [FIX] web: form_renderer: disable buttons on clicking status bar
This fix reproduces a behavior implemented in saas-15.
It avoids simultaneous actions when you quickly click
on status bar buttons.

For example, in a manufacturing order, the main_flow_tour clicks
on 'check availability' and 'produce'.
Clicking on 'check availability' triggers an act_window_close
action when it has done.
Clicking on produce opens a dialog. Both action are executed simultaneously.
It may happen that the act_window_close closes the dialog opened by action
'produce', which makes the test fail.

Now the following buttons are disabled if you click on a status bar button:
- action buttons in control panel
- action buttons in status bar
- stat buttons in button box
2017-07-31 13:49:42 +02:00
Christophe Simonis a6900c43b4 [MERGE] forward port branch saas-14 up to 9cae991345 2017-07-31 12:59:48 +02:00