Commit Graph
111138 Commits
Author SHA1 Message Date
Luis Torres 8bb9869812 [FIX] l10n_mx: set cash basis configuration in taxes.
Courtesy of Vauxoo. Was PR #17055
2017-05-23 11:35:50 +02:00
Nicolas Martinelli 385de39110 [FIX] membership: invoice tree view
When a membership is created, a redirection is done to the tree view of
the vendor bills. It should be the tree view of the customer invoices.

opw-743241
2017-05-23 11:05:13 +02:00
Darshan Kalola 118c7d0413 [IMP] website: added options to create a new page from the menu editor 2017-05-23 11:01:32 +02:00
Jeremy Kersten 15e1a65fb7 [IMP] website_blog: usability about confusing create date / publish date.
This commit closes #16742
2017-05-23 11:01:32 +02:00
Jeremy Kersten 8a99c7b143 [IMP] ir_http: remove _geoip_resolver on ir_http
It is no more used, it was just there for retrocompatibility.
No we share the resolver between thread
2017-05-23 11:01:32 +02:00
Jesús Alan Ramos Rodríguez c99b48d11a [FIX] l10n_mx: wrong cash_basis_account for purchase taxes
Was PR #15893
2017-05-23 10:53:45 +02:00
Gabriela Mogollón 395c08fd26 [CLA] update Vauxoo's CLA
add gavymg

Done at #17148
2017-05-23 10:38:59 +02:00
Harshad Modi 109b319d64 [FIX] web: send date string in server compatible format
Languages like Arabic (ar_SY), Hindi(hi_IN) do not use english digits to describe dates, and moment.js format function will keep these characters.  So, the server will get date strings, and will be unable to use them.

To see the problem, just type moment().locale('ar_SY').format('YYYY-MM-DD') into a browser console.

In this commit, we simply force the locale to 'en' before sending data to the server.

PR #17156
2017-05-23 10:34:08 +02:00
Akash Bhavsar 049cf42639 [IMP] base_import: improve import action
- Rename "Validate" button to "Test Import"
- unmatched columns are marked in red
- better column matching (show suggestions of the char field even if the imported values are of int type)

PR  #16881, close task 32894
2017-05-23 10:00:48 +02:00
Joren Van Onder f1767d5c88 [FIX] point_of_sale: is_unit has been removed
Removed and replaced with is_pos_groupable by
fe631a36a5.
2017-05-22 16:40:12 -07:00
Joren Van Onder f5f60599bf [IMP] point_of_sale: rewrite price access control logic
Introduced at 4e715dae94. Instead of
doing hacky things like self.pos.gui.screen_instances... in the
cashier widget to force the numpad UI to rerender itself it's better
to use Backbone.js because:

1. we're already using it everywhere else to handle UI updates
2. easier to extend for eg. adding more cashier related access rights

To do so cashier is turned into a Backbone attribute on PosModel. All
references to the cashier property are replaced with get_cashier to
ensure the Backbone attribute is used.

Note that this is not necessary for the user property on
PosModel. This contains the actual user logged into Odoo and thus
never changes.

This also removes the check in set_unit_price because:

1. it was wrong to begin with (no price change when
   restrict_price_control is enabled or you're a manager?)
2. even if fixed it would break the following for non-managers:
   1. tipping
   2. fix_tax_included_price
2017-05-22 13:47:21 -07:00
Prakash Prajapati 4308e692c5 [IMP] (website_)sale: Prevent users to create sales orders from invoicing menuitems
Purpose
=======

The menu "Sales -> Invoicing -> Orders to invoice , shows the orders which are confirmed and where the invoice needs to be created for those.
User should not be able to create SO from this menu.

===========
Specification
===========

Remove create Button in (Order to invoice and Order to upsell) menu  and in website -> order to invoice
2017-05-22 15:15:38 +02:00
Adrien Dieudonne 12bf5bb926 [FIX] web: FieldMany2ManyCheckBoxes: label not clickable
Before this commit, it was only possible to click on input to
change the value of the many2many_checkboxes widget.
For better consistency, we must allow to click on labels.
2017-05-22 14:55:47 +02:00
Géry Debongnie 4b8c34be15 [FIX] web: properly evaluate context with x2m
The motivation for this commit was to fix a wrong evaluation context for
x2m fields: it was using a list of res_id, which may contain virtual
ids.

For example, it could be seen in the form view for journal entries:
adding the first line (field line_ids) was fine, but clicking on 'Add an
item' a second time caused a crash.  The reason was that the line_ids
was explicitely added to the context in the view, and the second time we
add a line, the web client sent a list looking like this [35,
'virtual_43'] to the server, in the nameget context.

The proper behaviour is to send a list of commands for those fields.
This means that we had to do some non trivial changes in the
getEvalContext method: we stop using the get method with raw: true.  It
was nice to use the same method, but the eval context is actually
different that the values returned by the get method.  That was the
motivation to introduce the 'noUnsetNumeric' flag, but now, we simply
create another method and let each method do its own work.

TLDR: eval contexts are hard...
2017-05-22 14:25:30 +02:00
Adrien Peiffer (ACSONE) 3f07567533 [IMP] hr: set name on attributes of filter
To make it easier to extend

Closes  #16912
2017-05-22 14:16:42 +02:00
fka-odoo 792b3a8737 [IMP] kanban: Hide Configuration->Stage menuitems in debug mode
Purpose
=======

As you can easily edit your stages via your kanban view, this menu item is not necessary

Specification
=============

Following configuration/stages menu Move to debug mode

List of menu:

Quality/Configuration/Quality Alert Stages
PLM/Configuration/ECO Stages
Events/Configuration/Track Stages
Project/Configuration/Stages
Maintenance/Configuration/Maintenance Stages
Recruitment/Configuration/Stages
Email Marketing/Configuration/Campaign Stages
2017-05-22 14:11:49 +02:00
stefanorigano 955a0e30ca [IMP] website: move divider on top of 'carousel' option 2017-05-22 14:05:35 +02:00
stefanorigano c3c98e937e [FIX] website: 'parallax', prevent parallax disappear
The inner ’.s_parallax_bg’ element has a negative z-index value to be
rendered behind any other inner content.
This may cause the element disappear, because z-index is evaluated on
the entire page.

This commit will restrict the ’s_parallax_bg’ behaviour at snippet
level, assigning a z-order to the container too.
2017-05-22 13:57:18 +02:00
Xavier Morel 8411e227f2 [MERGE] P3: various things which break in Python 3
Not exactly clear why they don't work at all in Python 3, but they're
odd or mistakes so easy enough to fix.
2017-05-22 13:31:01 +02:00
Xavier Morel b897dcde15 [FIX] P3: import pattern which doesn't seem to work right
``import odoo.addons.foo as bar`` doesn't seem to properly trigger the
import hook in Python 3 (it blows up on decimal_precision and
base). Thus convert *all* examples of that pattern to the more
sensible ``from odoo.addons import foo as bar``.
2017-05-22 13:30:50 +02:00
Xavier Morel 13eb0bb1e3 [FIX] P3: incorrect format_exc call now blows up 2017-05-22 13:30:50 +02:00
Xavier Morel e5ef1c5917 [FIX] P3: don't resize the value False
Yields really strange errors in P3.
2017-05-22 13:30:50 +02:00
Aaron Bohy 967978c96e [FIX] web: Kanban: correctly mute 'Create' button
In Kanban views, the 'Create' button must be muted (btn-default)
in grouped mode, if there is no column and if the column quick
create feature is enabled (as in this case, the first action
should be to create a column).

Before this rev, it was actually muted if there were no record, no
matter if there were columns or not.

This was because the 'count' attribute of dataPoints was used to
determine the number of columns, but this attribute represents
the number of records in the dataPoint (i.e. the sum of the number
of records in each groups).

This particular case was tested, but the test passed thanks to
another bug (we incremented the 'count' attribute in the kanban
model when creating a new group, whereas we shouldn't).
2017-05-22 13:06:47 +02:00
Aaron Bohy 95b853ad2d [FIX] web: List: right align aggregate values
... in group headers, and in footers.
2017-05-22 13:06:10 +02:00
Aaron Bohy 3bb2b69d4a [FIX] web: Form: right align subtotals
The subtotals displayed in the oe_subtotal_footer (e.g. sale.order
form view) should be right aligned. Before this rev. this wasn't
the case for monetary fields, they are now displayed 'inline-flex',
whatever the form mode (before the new views, they were
'inline-flex' only in edit mode).

Credit goes to @qsm-odoo.
2017-05-22 13:06:10 +02:00
Christophe Matthieu 174d7e8e49 [FIX] website: The default language does not use the configuration
The request language must be a fallback if the current website does not
have a default language
2017-05-22 11:57:41 +02:00
Yannick Tivisse 3a9d3a735d [IMP] website_customer: Add Sector of Activity on customer references
- Add a "Filter by Industry" filter on top of the "Filter by Country" on the main /customers page. It should work similarly to the filter by "Level" in the /partners page of crm_partner_assign, but would filter on the customer's industry (With "All Industries") etc.
	- (Cfr www.odoo.com/customers vs www.odoo.com/partners for live examples)
- The search input field on the main /customer page should search on the Industry field as well
- Add the "Industry" info to the /customers index, e.g. like a badge: http://i.imgur.com/Nzjeck9.png
- Add the "Industry" info to the website_customer.details template, e.g. like a badge or in the address block on the left
2017-05-22 11:30:11 +02:00
Yannick Tivisse 9a572f8eec [IMP] base: Add a new model 'Sector of Activity' used on partners
purpose
=======

We need to store and produce reports about customer activity sectors to improve references mechanism.

Specification
=============

- add a new model res.partner.industry "Sector of Activity"
    - fields:
        - name (translatable)
        - full_name (translatable)
        - active
    - add minimalist form and list views (à la Contact Tags)
    - menu: Sales/Settings/Contacts/Contact Industries  (Technical Settings only)
    - ACL: R for group_user, CRUD for group_system
- add a default XML data file to preload res.partner.industry with the ISIC 2008 aka NACE rev.2 level 1: https://docs.google.com/a/odoo.com/spreadsheets/d/1IrGbHIaaDDkBAS2uGABeNRPndtYbyVBVoYYpQNXnhnY/edit?usp=sharing
    - Note: we leave it as an option for end-users to import their own industries, because there are many competing standards: ISIC, NACE, NAICS, OKVED, etc.
    - Each standard also has different hierarchical levels, and we only use the top level one by default.
- add a m2o industry_id ("Sector of Activity") on res.partner towards res.partner.industry
    - add industry_id in partner form view, in Sales & Purchase > Misc, only visible when contact type is Company
    - No quick create for this field
2017-05-22 11:30:11 +02:00
Géry Debongnie ed603399f9 [FIX] mrp: always use sequence on 'unbuild' creation
The mrp.unbuild model creates a name based on a sequence if no name is
given in the value dictionary.  This was fine before the new views,
because the field name (in the form view) was marked readonly, so the
value 'New' was not actually sent to the server.

However, this was changed with the new views: readonly fields are always
sent on create/write operations, if they have been modified.  This is a
problem for the mrp.unbuild model, because this means that each new
record as effectively the same name: 'New'.

So, we simply always use the sequence-based names in the create
operation, when the name is 'New', instead of the value given as parameter.
2017-05-22 11:29:35 +02:00
Nicolas Lempereur 57f7c68106 [FIX] web_editor: inline space in source code
The prettifying of html when editing sources (user need to be in debug
mode to see the button) was removing too much spaces in some instances.

For example if someone got in a case such as:

  <span>hello<b> cruel </b>world!</span>

The spaces between text and tag would be removed (this would work fine
with the space outside of the tag).

This code add a special case so this doesn't happen anymore.

opw-743565
closes #17142
2017-05-22 11:06:50 +02:00
Martin Trigaux ea4d29351e [I18N] payment: correctly format pot
Introduced at c80a32f9d
2017-05-22 10:32:20 +02:00
Jeremy Kersten 87d12bb27c [FIX] website_sale: add support for decimal_precision = 0
Before this commit data-precision='0' was ignored by qweb rendering.
Now we force the data-precision to be set even if 0. (cast in str)
And add a temporary fallback JS side to catch this case while people don't
update the qweb template.

This commit closes #17050 and closes #17046
2017-05-22 10:27:01 +02:00
Yenthe V.G c80a32f9df [FIX] payment: untranslated message
Without this the error message will always be in English, no matter the language
of the end-user.

Closes #17141
2017-05-22 10:16:30 +02:00
Géry Debongnie 8b94bf8b28 [FIX] web: form: remove o_field_invalid class when not necessary
Before this commit, the o_field_invalid class was not removed once an
invalid field becomes valid, until the user saves the form view (which
will rerender the full view anyway)
2017-05-22 10:07:33 +02:00
Géry Debongnie 3aad756d32 [FIX] web: properly handles ESC in editable lists
It is not really easy to handle discard operations.  We need to handle
the discard in editable lists, and in x2manys. This is not exactly the
same code, but most of this was done by moving the discard method from
the formcontroller to the basic controller.

With this commit, the user can now discard the changes for the current
record by pressing ESC.  If the record is new, it will remove it, if
not, it will ask for confirmation before.
2017-05-22 10:07:33 +02:00
Géry Debongnie a60ae43835 [FIX] web: prevent navigation when line is invalid in o2m
The issue that we fix in this commit is the following: open a form view
with a o2m with one required field, and the o2m is editable.  When
adding a new line, it is invalid (since the field with required), but
when pressing ENTER, the editable list tries to navigate away, which
will discard the current line (in the unselectRow method), before
completing the move_to_next_line.  So, at this point, the list editable
create a new (empty) record, and we are back to square one, but with a
visible flicker and no information on what happened.

To fix this issue, we simply check that the renderer can be saved when
moving to next line.  If it is not (the line is invalid), then we simply
abort the move.

Notes:
* this behaviour worked fine in list view, because the canBeSaved check
  is made by the saveRecord method in listController
* it looks like the protection should be put into unselectRow, but this is
  not true (at least, in the current state): in some cases, calling
  unselectRow with invalid state should result in discarding the current row
  (in a new line in a o2m, when the record is not dirty, for example), and
  the list editable renderer does not know if this is the case or not.
  However, if the unselect action comes from a navigation event, then we want
  to avoid discarding the current row.
2017-05-22 10:07:32 +02:00
Géry Debongnie 8436150ae5 [FIX] web: bad interaction between m2o, onchange and editable list
When a many2one (in an editable list) with an onchange was edited, it
could happen that a modal window asking for confirmation of the creation
of a record was opened when it should not.  Here is what actually could
happen:

* user focus a many2one
* user type something
* user press ENTER (keydown + keyup)
* user press ENTER again
* the onchange comes back
* modal window is open

Because of the onchange, the _reset method was called after the
_onInputKeyup method.  So, the m2o_value was not equal to the
$input.val() and the 'floating' flag was set to true (after the first ENTER).
The second ENTER caused a unselectRow in the editable list, so the input
was focusouted, and the modal is set.  This is basically caused by the
asynchronous behaviour of the onchange.

We simply fix the problem by setting the floating flag back to false in
the keydown method.
2017-05-22 10:07:32 +02:00
Géry Debongnie 3adfa84cd6 [FIX] web: improve many2one edition with onchanges
When a many2one (in an editable list) with an onchange was edited, it
could happen that a modal window asking for confirmation of the creation
of a record was opened when it should not.  Here is what actually could
happen:

* user focus a many2one
* user type something
* user press ENTER (keydown + keyup)
* the onchange comes back
* user press ENTER again
* modal window is open

Because of the onchange, the _reset method was called after the
_onInputKeyup method.  So, the m2o_value was not equal to the $input.val() and
the 'floating' flag was set to true, which means that the _onInputFocusout
method (called indirectly by the listeditablerenderer when unselecting the row)
was forced to open a confirm dialog.

We simply fix the problem by setting the floating flag back to false in the
reset method.
2017-05-22 10:07:32 +02:00
Géry Debongnie 28eadb3d6e [FIX] web: improve navigation in field many2one
Before this commit, when the user write some text in a many2one, then
press ENTER, the key event will trigger a navigation move, which will
validate the field, and move the focus to the next line.  The same issue
happens when pressing TAB.

With this commit, we simply stop the propagation, and preventdefault the
event that cause the selection.
2017-05-22 10:07:31 +02:00
Géry Debongnie 5e913677a5 [FIX] web: prevent crash when downloading pivot view
The download feature in the pivot view was broken since we introduced
the new views.  Simply clicking on the download button caused a
traceback.
2017-05-22 09:34:49 +02:00
Géry Debongnie af021f223b [FIX] web: apply onchange when m2o or m2m is edited
Before this commit, when editing a many2one (with an onchange) by
clicking on the small form button on the right, then changing something,
then saving the modal dialog, no onchange was triggered, because,
technically, the value of the many2one was not changed, only the values
from the record pointed by the many2one were.

The same remarks applies to many2manys.

To see this issue in odoo, you can open a product (technically, a
product.template) from the 'Catalog' menu in sales, then edit it, then
click on the small form view icon next to Internal Category.  This is a
many2one (categ_id) with an onchange.  In the form view dialog, change
something, for example costing method, then save.  The res_id of the
internal category was not changed, but an onchange should still be
triggered.
2017-05-22 09:31:15 +02:00
Laurent Smet 915aa9e4db [IMP] account: improve usability on journals.
This commit add computed fields that allow to easily change the next number that will be given by the journal's sequence.
Was PR #15163
2017-05-22 09:29:17 +02:00
Jerther e1cd0dc821 [FIX] project: view_mode of open_view_project_all_config
"list,form" should be "tree,form"

Closes #17118
2017-05-22 09:23:55 +02:00
Lucas Perais (lpe) 02ce25ba01 [FIX] purchase: prevent rounding during currency conversion
With the settings:
- Anglo saxon accounting
- real price on product, perpetual accounting,
- multicurrency
- a product with a very small uom (like gram or kilograms and you want to sell many of them, like 500kg)

Flow: purchasing something in another currency

Before this commit, the rounding of the unit price took place right at the conversion level
which led the rounding errors to be amplified by the quantities when the total price was computed

After this commit, the conversion is done on the unit price but is not rounded yet
Only the prices are rounded, as late as possible

OPW 742293

Closes #17015
2017-05-22 09:01:39 +02:00
Odoo Translation Bot c0d9ddb4d4 [I18N] Update translation terms from Transifex 2017-05-21 07:11:01 +02:00
Odoo Translation Bot 7eda91ce58 [I18N] Update translation terms from Transifex 2017-05-21 04:33:07 +02:00
Odoo Translation Bot 3d904cf694 [I18N] Update translation terms from Transifex 2017-05-21 00:28:50 +02:00
Jerther 3d59d3d613 [DOC] doc: remove kanban_text_ellipsis description
views.rst: replace the description of js function kanban_text_ellipsis() with a warning telling it's gone and what to use instead.
2017-05-19 17:18:34 +02:00
Xavier Morel ee894b1384 [FIX] provide items method on lru so shim works 2017-05-19 16:46:42 +02:00
xmo-odoo 05abc1faed [FIX] test_pylint: pylint error output to failure
Sometimes PyLint itself blows up which fails the test but does not
provide any indication as to why, which is inconvenient.
2017-05-19 16:46:42 +02:00