Commit Graph
107816 Commits
Author SHA1 Message Date
Christophe Simonis 54e5bbdf35 [MERGE] forward port branch saas-10 up to 897b9b8 2016-09-02 16:28:28 +02:00
Martin Trigaux 11812b0b9e [FIX] all: remove external ids fakely from base
Several modules defines records with the external ID `base.foo_bar` while it is
created inside this module (typically menus and groups).
While there is no technical reasons to do so but this may introduce issues:

- these records will not be deleted during uninstall
- if a language is loaded before the installation of the module, it won't be
  translated

The uninstallation will only remove the records with an external id linked to
this module (these would only be removed when removing base).

Installing a language before the module will drop the translations not linked
to an existing external id (as it can not be resolved).

This commit correct all the external ids tagged as from base or other incorrect
modules.
2016-09-02 16:14:26 +02:00
Martin Trigaux e5f05074f8 [FIX] gamification: remove duplicated manager groups
hr_gamification should be adding hr groups to the security of gamification.
Creating the group base.group_hr_manager in gamification in case hr is not
installed is confusing and redundant with existing manager groups.
2016-09-02 16:13:29 +02:00
Martin Trigaux 7c885c9fe3 [ADD] base: warning for external id in the wrong module
Creating a external id in a different module than the one where the record is
declared is a bad practice.
Setting a correct module is both important for a correct uninstallation of the
module (which uses the module to decide which records to remove) and for the
translations (records tagged with 'base' module needs to be declared in the
base.pot file).
2016-09-02 16:13:25 +02:00
Martin Trigaux fb337383bc [IMP] models: improve the rendering of large fields
one2many, many2many, text and html fields should take all space in a form view
for a better rendering instead of taking only 2 col or not having the label in
front the field.
2016-09-02 15:40:56 +02:00
Martin Trigaux e8db098bac [FIX] models: display all fields of a model
When a model has no form defined, a default view is generated displaying all
fields of the model.
The one2many and many2many fields were not displayed on the form, probably for
aesthetic or historical (2008) reasons.
2016-09-02 15:40:51 +02:00
stefanorigano d6ec094aac [FIX] website: remove bg image support for columns in s_cover snippet
The snippet section can have a color or a background. Previous commit
added the functionnality for its innercolumn too... but having a bg
image on top of another one does not make sense, so only keep the
color option for columns.
2016-09-02 14:59:33 +01:00
stefanorigano 2f303acdd0 [IMP] website: change layout of s_references and s_big_message snippets
- s_references
    * Replace demo images (lighter ones)
    * Move title to left
    * Review responsiveness
- s_big_message
    * Add background
    * Use grid system
2016-09-02 14:58:01 +01:00
stefanorigano 1ec38c02c5 [IMP] website_blog: replace images and add xml ids
* Replace demo blog post covers
* Add xml ID to demo images so they can be easily replaced by themes
* Remove unused images
2016-09-02 14:57:40 +01:00
Martin Trigaux 9c8d8b90c0 [FIX] models: display all fields of a model
When a model has no form defined, a default view is generated displaying all
fields of the model.
The one2many and many2many fields were not displayed on the form, probably for
aesthetic or historical (2008) reasons.
2016-09-02 15:39:31 +02:00
Simon Lejeune a13c15fd44 [FIX] crm: merge partner wizard, traceback on close
In the merge partner wizard, there's a button in the footer which
trigger the method `action_close`. This method is decorated by
an api.multi and begins with an ensure_one() and if you click
on close directly after opening the wizard, self.ensure_one
fails.

The thing is, `action_close` only return an ir.action.act_window_close
action and there's a special attribue you can set in the form
view button to make it return an ir.action.act_window_close directly.
If we use this technique, then there's no traceback anymore. So this
is the fix.
2016-09-02 15:31:40 +02:00
Christophe Simonis 897b9b8fc0 [MERGE] forward port branch 9.0 up to cb1ae53 2016-09-02 15:19:39 +02:00
Christophe Simonis cb1ae535f6 [MERGE] forward port branch saas-6 up to ddcd2e7
Empty merge as 7bdd4de805 has already
been forward-ported with 33167a1eb5.
2016-09-02 14:53:23 +02:00
qdp-odoo 33167a1eb5 [FIX] stock_dropshipping: fix dropship use case in anglo saxon with perpetual valuation.
OPW: 684742
When using dropship+anglo-saxon+perpetual valuation, there is no journal
move for the delivery to debit outgoing inventory (since the goods don't
transit by an internal stock) but the sale does credit it so there was a
build up in the holding account that has to be moved out manually.
This was also reported in #12687.

The solution implemented is to check if the invoice line is related to
sale order lines having one of its procurement_ids with a purchase_line_id
set. If yes, it means that it is a confirmed dropship and in that case we
don't call to super (we don't create the cost of sale line).

That means that:
* If the procurement is in exception at the customer invoice time, the
behavior will be as it is currently, but it's fine as you don't know how
the procurement will be solved, and it'll be only at the beginning (once
the config is done it shouldn't go in exception anymore). People will have
to manually fix those amounts with a miscellaneous operation.
* users in anglo saxon mode should not use the 'stock interim account
(received)' on supplier invoices for dropshipped goods, but rather use the
COGS directly (sounds to me logical, and that's actually why I wouldn't go
for the solution to create the stock move entries every time even for the
dropshipped goods. That, and the fact that it would pollute the accounting
with useless moves).

This is a forward-port/cherry-pick of 7bdd4de805
2016-09-02 14:47:33 +02:00
Christophe Simonis ddcd2e771b [MERGE] forward port branch 8.0 up to 7bdd4de 2016-09-02 14:29:48 +02:00
qdp-odoo 7bdd4de805 [FIX] anglo_saxon_dropshipping: fix dropship use case in anglo saxon with perpetual valuation.
OPW: 684742
When using dropship+anglo-saxon+perpetual valuation, there is no journal move for the delivery to debit outgoing inventory (since the goods don't transit by an internal stock) but the sale does credit it so there was a build up in the holding account that has to be moved out manually. This was also reported in #12687.

The solution implemented is to check if the invoice line is related to sale order lines having one of its procurement_ids with a purchase_line_id set. If yes, it means that it is a confirmed dropship and in that case we don't call to super (we don't create the cost of sale line).

That means that:
* If the procurement is in exception at the customer invoice time, the behavior will be as it is currently, but it's fine as you don't know how the procurement will be solved, and it'll be only at the beginning (once the config is done it shouldn't go in exception anymore). People will have to manually fix those amounts with a miscellaneous operation.
* users in anglo saxon mode should not use the 'stock interim account (received)' on supplier invoices for dropshipped goods, but rather use the COGS directly (sounds to me logical, and that's actually why I wouldn't go for the solution to create the stock move entries every time even for the dropshipped goods. That, and the fact that it would pollute the accounting with useless moves)
2016-09-02 14:13:17 +02:00
Christophe Simonis 1be64ca7db [MERGE] forward port branch saas-6 up to 490f9cf 2016-09-02 14:04:24 +02:00
Christophe Simonis 490f9cfe7e [MERGE] forward port branch 8.0 up to 2559b2c 2016-09-02 14:02:43 +02:00
Christophe Simonis 8a4635a4e2 [FIX] project{,_issue}: mark related fields as readonly 2016-09-02 13:58:27 +02:00
Yannick Tivisse 4ff49df02b [FIX] report: Fix due to report migration 2016-09-02 13:44:15 +02:00
Yannick Tivisse 665781d5a8 [IMP] various: Move all configuration fields from res_company form to the related modules
=======
Purpose
=======

The company form should be heavily simplified. It's complex to have some settings on the company form, and others on the Settings menu of the related app. It would be much easier to have all settings in Settings menu (res.config) and nothing on the company, even if some of the Settings are multi company. (Stored on the company but set from the Settings menu).
2016-09-02 13:44:15 +02:00
Denis Vermylen (dve) fb0cb41912 [FIX] rating: comparing record to id 2016-09-02 13:31:15 +02:00
Moisés López dc18056fd0 [IMP] tools: support known "falsy" string values for XML boolean fields
Historically, developers had to use the `eval` attribute to set
a False value for boolean fields in XML data files:

    <field name="active" eval="False"/>

This is a source of errors for beginners, who tend to provide
a string value directly, as for char/text fields.
Unfortunately string values always evaluated to `True` booleans:

    <field name="active">False</field> <!-- active == true! -->

This patch adds detection of some well-known falsy strings
(case-insensitive): `0`, `false`, `off`, as similarly supported
for the `noupdate` and `forcecreate` attributes of XML data records.

Closes #13152
2016-09-02 13:25:27 +02:00
qsm-odoo d41ed40c70 [IMP] web, website: adapt tour launching to new system
* The debug manager contains a feature to launch tours, adapt it
to new web_tour.tour system
* The website help menu allowed to relaunch tutorial tour in debug
mode. This feature is not adapted to new tour system and was useless
in the first place (debug mode in frontend is barely used anyway).
-> remove the website help menu and the feature
2016-09-02 12:39:06 +01:00
Christophe Matthieu f7cfef83b4 [IMP] web, web_tour: move jquery selector feature addons from tour to web_tour 2016-09-02 12:20:41 +01:00
Christophe Matthieu dbec9f2506 [IMP] web: remove menu tour
(unlaunch, need to create an new test for menu)
2016-09-02 12:20:40 +01:00
Nicolas Martinelli 1bcbca4be3 [FIX] web: statusbar click
When the statusbar is clicked, a `debounce` function prevents a
doucle-click, and therefore making several `write` calls. In debug
mode, the click doesn't work anymore.

For some mysterious reason, the event is propagated to the parent. The
`currentTarget` is not the `li` element, but the parent `ul`. By
setting the `immediate` argument to `true` (execute the first function
instead of the last), this solves the issue.
2016-09-02 12:46:10 +02:00
David Monjoie fc53108c65 [FIX] base: fix tz onchange in user preferences view
Since res.users is an inherits of res.partner, the onchange that
should be triggered by tz to update tz_offset is not triggered.

Considering tz_offset is never used on res_partner and is only
used by the timezone_mistmatch widget which compares the offset
with the one of the browser timezone, which only makes sense if
you are a user, we could have completely moved this field on
res.users. That being said, it feels strange to have a tz field
defined on partner but having to be a user to compute the actual
timezon offset, which doesn't need any additional information.

For this reason, we chose to duplicate it until either we decide
to truly move it in the next version, or the orm is fixed to
correctly trigger the onchanges of the inherits models.

This patch could be applied in 9.0 if needed, but considering
nobody ever complained about this issue and the "workaround"
nature of this fix, we decided to apply it in master only.
2016-09-02 12:08:42 +02:00
Martin Trigaux 4b5398f53a [MERGE] avoid writing on related fields
and the bad computed & required & default combinaison
2016-09-02 12:04:02 +02:00
Martin Trigaux 80aa17aac7 [FIX] note: properly set the default method
stage_id is comptued and based on stage_ids
The default value should be put on stage_ids, not stage_id, it has the same
effect but avoids an unecessary chain update.
2016-09-02 12:03:41 +02:00
Martin Trigaux 583e92b18e [FIX] remove default attribute on computed field
Which is useless when there is no inverse method
2016-09-02 12:03:41 +02:00
Martin Trigaux d676f2a46f [FIX] account: avoid updating related field
The account.move has already self.date for the date field (cf the method
`_prepare_reconciliation_move`). As the field date on the account.move.line is
a related, it makes useless updates to write it here.

Same issue for journal_id field
2016-09-02 12:03:41 +02:00
Martin Trigaux 2293c2fe1a [FIX] hr_expense: do not write on related field
ref is a related set on the account.move. Writting on the line set the same
reference for all the lines and the parent move (the one of the last line).
Instead put it on the move if there is only one reference or do not put a wrong
one if we can't determine one.
2016-09-02 12:03:41 +02:00
Martin Trigaux c368f7dd21 [FIX] base,hr_expense: unrequire computed field
Which does not make sense. it's the computation that should set the value.
Also the default is no longer needed.
2016-09-02 12:03:41 +02:00
Martin Trigaux caeff5711b [FIX] hr_expense: do not not update related field
journal_id is a related field that was set just before
2016-09-02 12:03:40 +02:00
Martin Trigaux fe2c11f397 [IMP] account: clean create method from mandatory variable
Avoid setting a value for a related field as it will trigger onchange update.
This code was relevant when the date was different on the move and the line but
is no longer needed.

Remove all the `if vals.get(mandatory_field)` to simplify this method and remove
dead code or condition always true.
2016-09-02 12:03:40 +02:00
Martin Trigaux 7ad9487a83 [IMP] account: remove required attribute on stored and related field
The field journal_id and date are both required on account.move and are stored
related on account.move.line.
Setting the required on the account.move.line allows to make it required in the
views or for the ORM but in practice it will be same as it's required on the
parent.

Making it required is a performance killer as it forces to specify a value for
the create which will retrigger an update on the parent move.
This means that adding a line with a date value on an account.move with already
10 lines will trigger 11 updates (date of the new line -> date of the move ->
date on the 10 existing lines), even if the value has not changed.
2016-09-02 12:03:40 +02:00
Nicolas Martinelli cf4cda2bca [FIX] payment_paypal: set Paypal if not website installed
Since commit 2ab68047, the Paypal link can be sent in an invoice as it
was the case before. However, in order to be able to save the Paypal
account in the accounting settings, the Paypal account must be
website-published. If the module `website_payments` is not installed,
this is not possible.

We remove this condition, since it should be possible tu use the Paypal
payment method without installing the whole website.

opw-686216
2016-09-02 11:56:00 +02:00
Mansi Gandhi 14f07cb96f [IMP] website_quote: Notification 'viewed by customer' should be received by the responsible only
Currently some customers receive the automatic notification 'Quotation
viewed by customer'. This should not be the case as this notifciation
is purely internal and should only be sent to the quote responsible.

Notification is now a note with the responsible being directly in the
recipients.
2016-09-02 11:45:23 +02:00
Christophe Matthieu cdaee93f7f [FIX] web_editor: odoo.define can be undefined if not in edit mode
Commit 933949085d added the odoo variable
definition in the iframe template so the condition which checked if
odoo.define is available had to be adapted.
2016-09-02 11:27:29 +01:00
qdp-odoo 97da3b99b7 Revert "[FIX] purchase: fix dropship use case in anglo saxon with perpetual valuation."
This reverts commit a57b10dbd5. This has to be fixed in 8.0, and moreover it uses fields defined in sale only so the fix must be done in stock_dropshipping module
2016-09-02 11:36:44 +02:00
Fabrice Henrion 743743db28 [IMP] payment: wording for auto_confirm selections 2016-09-02 11:11:29 +02:00
Pierre Masereel 6b4ca99881 [FIX] product: move purchase_ok field in product module
The 'purchase_ok' field has been moved into the 'purchase' module in
rev https://github.com/odoo/odoo/commit/e945b86d5a61e53a9104ab6cc4ed4a1c060587e4 and removed from 'product'
module in rev https://github.com/odoo/odoo/commit/fee03009cfcc41d108a79a2380912f21bc825d77 to fix a duplicated field.
But it should actually stay only in 'product' module because the field
is needed in the 'account' module which doesn't depend of 'purchase'.

So to fix it we set back the 'purchase_ok' field in the product module
as it was originally in the rev https://github.com/odoo/odoo/commit/e23e018285b17450af97cf93165704926f8248db
2016-09-02 11:03:16 +02:00
qsm-odoo 58153ea0ec [FIX] web_kanban: correctly handle nocontent grouped kanban
The nocontent message was never there when the kanban had no content
in grouped mode and the create button was muted even if no column can
be added. Also it was wrongly displayed in ungrouped mode.
2016-09-02 10:57:29 +01:00
qsm-odoo 2f8d1ec5e8 [FIX] web_kanban: t-att(f)-class for kanban buttons
The pre-processing of kanban qweb templates dropped the t-att(f)-class
of button and tags with a valid type attr (object, action, ...).
2016-09-02 10:57:29 +01:00
qdp-odoo a57b10dbd5 [FIX] purchase: fix dropship use case in anglo saxon with perpetual valuation.
OPW: 684742
When using dropship+anglo-saxon+perpetual valuation, there is no journal move for the delivery to debit outgoing inventory (since the goods don't transit by an internal stock) but the sale does credit it so there was a build up in the holding account that has to be moved out manually. This was also reported in #12687.

The solution implemented is to check if the invoice line is related to sale order lines having one of its procurement_ids with a purchase_line_id set. If yes, it means that it is a confirmed dropship and in that case we don't call to super (we don't create the cost of sale line).

That means that:
* If the procurement is in exception at the customer invoice time, the behavior will be as it is currently, but it's fine as you don't know how the procurement will be solved, and it'll be only at the beginning (once the config is done it shouldn't go in exception anymore). People will have to manually fix those amounts with a miscellaneous operation.
* users in anglo saxon mode should not use the 'stock interim account (received)' on supplier invoices for dropshipped goods, but rather use the COGS directly (sounds to me logical, and that's actually why I wouldn't go for the solution to create the stock move entries every time even for the dropshipped goods. That, and the fact that it would pollute the accounting with useless moves)
2016-09-02 10:48:43 +02:00
Thibault Delavallée 168b1e87c0 [MERGE] various: replace workflows by integrating them in models
Workflows are removed and replaced by python code directly embeded in model
files. There are several reasons to do this

 * most of workflows are simple state machines. They simple go from state to
   state under simple conditions. Short circuits exist allowing to bypass
   part of the flow, like cancelling a record. However it is easier to
   understand a flow composed of several simple methods than having to
   understand the workflow in a separate xml file
 * workflows are hard to debug and modify. Each modification require a small
   migration. Moreover ensuring records are not blocked or that there does
   not exist unreachable states is hard to do.
 * having all business code in models helps understanding the business code.
 * most of our flows are quite simple and does not require a complex machinery
   to reflect it

Workflow engine itself is kept. Lot of people use it and it can be very
useful in some cases, notably in modeling more complex flows. Removing it
is therefore not planned in this task.
2016-09-02 10:46:11 +02:00
qsm-odoo 30117517fa [FIX] website: correct snippet structure of .s_title
Commit 744cd64b53 re-added the removed
col system in the title snippet but did not respect the odoo structure
which is section > .container [> .row > .col-*] and put the container
class directly on the section. With this method, when changing the
background of the snippet, only the container part is filled
with background.
2016-09-02 10:35:24 +01:00
qsm-odoo c227b8fd88 [FIX] web_editor: remove some defaults in text edition
* On firefox, you had to click twice on a link to be able to start
typing text
* When selecting text which contained a <br/>, you were not able to
replacing it correctly (you had to click again before starting typing)
* When replacing a whole paragraph content which was below a title,
the text was not replaced and you had to click again and the title
transformed into a paragraph.
* ...
2016-09-02 10:04:58 +01:00
qsm-odoo 8c0c308eca [FIX] web_editor: correct return value of saveElement 2016-09-02 10:04:58 +01:00