Commit Graph
120953 Commits
Author SHA1 Message Date
Odoo Translation Bot fc5e61b63d [I18N] Update translation terms from Transifex 2018-06-03 07:04:06 +02:00
Odoo Translation Bot 395459d077 [I18N] Update translation terms from Transifex 2018-06-03 04:41:19 +02:00
Odoo Translation Bot d88dd23ae2 [I18N] Update translation terms from Transifex 2018-06-03 00:27:35 +02:00
Raphael Collet a058bf18d3 [FIX] resource: field tz defaults to UTC if no timezone found 2018-06-01 18:27:52 +02:00
Nicolas Lempereur f71b934ce6 [FIX] website_event: unblock button when no reserve
The website_event_questions override EventRegistrationForm's method
on_click and expects the returns is a deferred.

This commit provides a deferred in all instances avoiding an error.

Also what was done in e9454e79 and enables back the Register Now
button if no ticket was selected.

opw-1850527

In 11.0, this change e9454e79 solved the use case of:

- opening the registration of a ticket
- discard

=> the page must be reloaded to register a ticket

A new report is that since 9.0, if we try to register 0 ticket we would
also have to reload the page.

This commit backports e9454e79 and solves the 0 ticket registration.
Also if website_event_questions was installed there was an error
preventing an error message to be displayed.

saas-15 version of 9.0's #24966
opw-1851622
closes #24967
2018-06-01 15:55:56 +02:00
jem-odoo a0546578ee [MERGE] sale_timesheet: invoice from project overview
These commit allows users to create sales order, and invoice
from the project overview. To do, the overview is now refreshed
when naviguating throught the breadcrumb, and supports action
buttons on its control panel.
Also, some stat buttons are added on the overview (sales order
and invoices).

The process of invoice creation is the same wizard than the one
from the sale order.
Thoses actions are only available when there is no ambiguity
to determine the SO from the project, or for non billable project
(to create the SO).

Task #49213
Closes #24280
2018-06-01 15:47:16 +02:00
jem-odoo 72e3ebc4f9 [IMP] sale_timesheet: overview access
On sales order form view, we display a "project overview"
stat button. It redirects to the overview of the only
billable project of the SO.
To avoid access error, and because this dahsboard is usefull
only for project manager, only those ones will have access to
this overview. So, stat button (Sales order) and label on
project kanban are aonly visible for manager.
2018-06-01 15:14:23 +02:00
jem-odoo 6b1aec5bb7 [IMP] sale_timesheet: SO/INV stat button on project overview
Now that the overview is refreshed when it is displayed and that we
can create SO/INV from it, it is usefull for the users to have
a stat button displaying those new documents directly from
the overview.
This commit use the already existing mecanism to display
Sales Order and Invoices stata buttons.
Thoses 2 stat buttons are only visible for salesperson seeing
all document, to avoid access errors.

Task #49213
2018-06-01 15:14:23 +02:00
jem-odoo 55ca3dd2b1 [IMP] sale_timesheet: invoice from plan project
We want to invoice from the project overview. To do so,
a button can help people: it is only visible when an order
linked to task in that project has something to invoice
Any sale order line, even the ones with no service product
will be invoiced.

However, the user will have to choose which SO (involved in
the project) to invoice. Then the "invoice order" wizard
takes over.
2018-06-01 15:14:23 +02:00
jem-odoo 9f3040ee1f [IMP] sale_timesheet: control button on plan project
This commit makes the project overview handle action
button in its control panel. When calling server to get
overview HTML code, we also get a list of actions to display
in the control panel. Those are rendered client side.

Since when an action is done, we usually don't want the button
to be display anymore, reloading the overview is required.
The overview is now refreshed when navigating with the breadcrumb,
so each time the overview is displayed, an RPC call to the server
is done (`do_show` method override).

Task #49213
2018-06-01 15:14:07 +02:00
jem-odoo d8f2b1b87e [IMP] sale_timesheet: wizard to create SO from project
This commit provides a wizard to create a SO from
a non billable project. It sets sale_line_id on the
project, and the project on the SO line to simulate
the project was created by the SOL.
The created SO contains one line with a selected
service product, with ordered qty set as the total
of planned hours of all task in projects.
The wizard also links all non billable active
tasks of the project to the SO line (and its
timesheet entries).
2018-06-01 15:14:07 +02:00
Raphael Collet 627292f7f3 [IMP] convert: simplify context when creating records
The context was containing a dictionary under the key `install_mode_data`,
which was informing about the model, xml_id, module, filename.  Actually only
the module and filename were necessary, and the others were slowing down the
import because of generating artificially different environments.

The context now has two entries `install_module` and `install_filename`.
2018-06-01 13:30:28 +02:00
Raphael Collet 655ec91807 [IMP] models: simplify API of _parent_store_create and _parent_store_update
The parameter `vals` is no longer given, and the first method has been adapted
to work on several records.
2018-06-01 13:30:28 +02:00
Raphael Collet 23a3ee1254 [IMP] models: no need to mark non-stored fields as modified
Those will be handled by the transitive closure made over non-stored
dependencies.
2018-06-01 13:30:28 +02:00
len-odoo 42aff92a4e [FIX] account, purchase, sale: properly quote the name of the email sender
formataddr (from the email python library) writes email_from as '"name" <email>'
in the email_from field of the mail.compose.message record.
When the mail is rendered, onchange_template_id is triggered.
This then overwrites the values of email_from among other fields.
What happens is that it uses the email_from field from the template to render
the email_from, bypassing what was put by formataddr before.
What happens in some cases is that it is rendered as 'name <email>'
(note the quotes have been stripped away).
If name contains arbitrary symbols, e.g. name = 'pépé [company] <pdg>, ohlala',
then getaddresses which is supposed to parse the (name, email) pairs gets thrown
off (in particular, <pdg> will be interpreted as an email address, and many
other problems with the various special symbols).
It then gives these wrong elements as email addresses, which will usually crash
when getting non-ascii symbols (i.e. these strings don't respect the relevant
RFC for email addresses).

Closes:
https://github.com/odoo/odoo/issues/23502
https://github.com/odoo/odoo/pull/2311823118

opw 815202
opw 1824243
2018-06-01 13:06:09 +02:00
Jeremy Kersten 400b52d98c [IMP] website_crm_partner_assign: track onchange on grade related fields
After this comit, when grade_id, activation or partner_weight is updated, we
keep a log in the chatter.
2018-06-01 11:13:14 +02:00
Adrian Torres a5ccc1b6b5 [FIX] orm: re-create constraints of extended fields
Before this commit:

* Module A defines a field X of model M
* Module B inherits from model M without touching field X
* Module C inherits from model M and extends field X by giving an INDEX
/ NOT NULL constraint.
* Module B and C depend from Module A, but not each other

If all three modules are installed and Module B is updated, the INDEX /
NOT NULL constraint could be dropped.

This happens because Module B can be loaded before Module C is loaded,
if that's the case, then after the upgrade of Module B, during the
schema checking, we verify that the field object we have and the field
on the DB are the same, since Module B doesn't introduce the index then
this check is false and we drop the index. When we get to loading Module
C, we do not do any schema checking because the module is not marked as
`to upgrade`, therefore the index is lost forever.

To solve this, we re-init the models that belong to the set of the intersection
between upgraded and modified models and loaded and modified models.

Fixes #24958
2018-06-01 10:55:35 +02:00
Nicolas Lempereur 66a60c70f3 [FIX] website_event: unblock button when no reserve
In 11.0, this change e9454e79 solved the use case of:

- opening the registration of a ticket
- discard

=> the page must be reloaded to register a ticket

A new report is that since 9.0, if we try to register 0 ticket we would
also have to reload the page.

This commit backports e9454e79 and solves the 0 ticket registration.

opw-1851622
closes #24966
2018-06-01 10:53:30 +02:00
Martin Geubelle eee245cee8 [IMP] base: allow to move an element in inherited view
The `position='move'` has been introduced to move an element in an inherited
view.

It's used as
<xpath expr="//@target" position="after">
    <xpath expr="//@node" position="move"/>
</xpath>

or also

<field name="target_field" position="after">
    <field name="my_field" position="move"/>
</field>

The xpath with a position `after`, `before`, `inside` or `replace` can thus now
have another xpath as *direct* child with position `move`.
2018-06-01 10:19:09 +02:00
Nicolas Martinelli 195c2fc05f [FIX] website_sale: performance with carousel
When the carousel is activated, the following will load all variant ids
in the cache (cf. `_in_cache_without`):
```
<t t-set="variant_img" t-value="any(product.mapped('product_variant_ids.image_variant'))"/>
```

When accessing the `image` field at:
```
<div t-if="variant_img" class="..." itemprop="image" t-field="product.product_variant_id.image" t-options="..."/>
```
All variants in cache will have their image resized by the method
`_compute_images` on `product.product`. In case of a product with
hundreds of variants with images, this will take a major amount of time.

If we replace by `product[:1]`, the system uses another cache, and
doesn't fetch the image of all variants.

opw-1844783
2018-06-01 09:00:26 +02:00
Odoo Translation Bot ea3b895589 [I18N] Update translation terms from Transifex 2018-06-01 02:39:45 +02:00
Raphael Collet 975c6c8639 [REF] resource calendar (#24717)
Refactor resource calendar and resource mixin:
 - add a required timezone field on models 'resource.calendar' and 'resource.resource';
 - resource calendar attendances are now computed in the timezone of the resource
   or the calendar;
 - improve API of 'resource.calendar' and 'resource.mixin';
 - avoid other modules from using the implementation methods of 'resource.calendar';
 - refactor implementation of 'resource.calendar' to make it more efficient.
2018-05-31 20:28:12 +02:00
Thibault Delavallée f5af0714e2 [REM] calnedar: remove commented leftover of 4a59f93d15
It way to hot here. Forgot to remove commented views.
2018-05-31 16:54:06 +02:00
Barad Mahendra 4a59f93d15 [IMP] mail, calendar: add today meetings in systray
Purpose of this commit is to display today meetings in the systray. This will
help people in their daily job to have quickly access to their meetings.
It is displayed along with activities and reminders to have all current work
to do in the same place.

Displayed meetings are ongoing or not yet started ones of the current day.
All-day meetings of the current day are also shown. Done meetings are not
displayed to lessen noise.

Clicking on the systray will open the calendar view of meetings in a day
mode. This is done by a small modification in the calendar view allowing
to choose the display mode from context in addition to the mode attribute
of the action definition.

This commit is linked to task ID 60593. Closes #24438. Thanks to @ged-odoo
for quick reviewing.
2018-05-31 16:49:56 +02:00
Mahendra Barad 642970494e [REF] mail, note: rename systray method giving data for web client
As it becomes used to display more things than just counting activities let
us rename the method. Future commits will add new features in the systray
like meetings.

This commit is linked to task ID 60593.
2018-05-31 16:45:51 +02:00
Thibault Delavallée 3239c91766 [MERGE][REF] various: remove several settings allowing to (un)install modules
Unticking options linked to modules lead to applications being removed
without clear notification for the user doing it. Impact of installing
and uninstalling modules is too heavy to be hidden in simple checkboxes
in some settings. This merge therefore removes some of options linked to
modules installation.

This merge is linked to task ID 1841221. Closes #24649.
2018-05-31 15:05:36 +02:00
Hiral Bhavsar 0a5a3c5d72 [REF] hr_timesheet, sale_timesheet: remove settings to (un)install sale_timesheet module
Purpose is to limit the uninstallation of modules without being clearly
notified of it. We therefore decided to remove those options from settings
to prevent users from uninstalling it.

Description of sale_timesheet features and options are now all moved to
sale_timesheet. A Billing section should only be visible if sales installed.
We therefore move Billing section from hr_timesheet to sale_timesheet. A
priority is used to ensure sequence of various settings related to billing
and timesheet.

This commit is related to task ID 1841221.
2018-05-31 14:58:48 +02:00
Hiral Bhavsar 49c3f91e04 [REF] website_sale: hide settings to install account_invoicing
Purpose is to limit the uninstallation of modules without being clearly
notified of it. In website_sale we choose to hide the field allowing to
(un)install invoicing. Options linked to invoicing are now hidden if the
module is not installed.

This commit is related to task ID 1841221.
2018-05-31 14:58:45 +02:00
Hiral Bhavsar 7215064c33 [REF] hr_expense: remove settings to (un)install sale_expense module
Purpose is to limit the uninstallation of modules without being clearly
notified of it. In expense ticking sale_expense repair / maintenance install
and uninstall sale modules and its dependencies.

We therefore decided to remove those options from settings to prevent
users from uninstalling it.

This commit is related to task ID 1841221.
2018-05-31 14:58:43 +02:00
Hiral Bhavsar 9cabc3170e [REF] project: remove settings to (un)install timesheet
Purpose is to limit the uninstallation of modules without being clearly
notified of it. In project ticking timesheet may have a great impact
depending on modules already installed: sale_timesheet, timesheet_grid,
...

We therefore decided to remove those options from settings to prevent
users from uninstalling it.

This commit is related to task ID 1841221.
2018-05-31 14:58:40 +02:00
Hiral Bhavsar 000ecb046c [REF] mrp: remove settings to (un)install repair and maintenance modules
Purpose is to limit the uninstallation of modules without being clearly
notified of it. In MRP ticking repair / maintenance install and uninstall
modules like stock, sale_management, mrp_workorder, ...

We therefore decided to remove those options from settings to prevent
users from uninstalling it.

This commit is related to task ID 1841221.
2018-05-31 14:58:38 +02:00
qdp-odoo 579b233d38 [FIX] l10n_fr_certification: can't change module dependancies on stable version
Commit https://github.com/odoo/odoo/commit/2eb344f23b3a9daa8e7c7ddaead145a8b05b39bf changed the dependancies of l10n_fr_certification which is not acceptable on stable. Instead, the method to check is now moved in account module (to avoid duplicated) and it is called by l10n_fr_certification and account_lock module.
2018-05-31 14:37:24 +02:00
Laurent Smet fb59b56014 [FIX] account: fix test on closed period since account_lock module
Module account_lock has been introduced by:
https://github.com/odoo/odoo/commit/2eb344f23b3a9daa8e7c7ddaead145a8b05b39bf

A new constrains appears on the lock dates: their must not be set
after the last day of the previous month.
Then, it breaks the test on closed period that set the lock date 'yesterday'.
2018-05-31 13:13:14 +02:00
Yannick Tivisse 6b35b8b498 [FIX] survey: Remove wrong dirty hack when rendering survey's mail template
This dirty hack keeps only the path without the first '/' character.
2018-05-31 12:55:51 +02:00
Géry Debongnie 5b19d05a9a [DOC] add documentation for the new cohort view 2018-05-31 10:36:58 +02:00
Christophe Matthieu 241e67b788 [FIX] qweb: Field type monetary use the record context
Before this fix, the _convert method use the context of the qweb rendering
instead of use the record context.

'date' and 'company' are automatically set as option for the field. The
template who use t-esc with the widget monetary must define the options.

The bug is introduce by https://github.com/odoo/odoo/commit/7a282c99655d4f154ac1808fcb8a70339dc70930
2018-05-31 10:26:52 +02:00
Laurent Smet 2eb344f23b [ADD] account_lock: new module making the lock date irreversible
Was task: https://www.odoo.com/web#id=38178&view_type=form&model=project.task&action=333&active_id=967&menu_id=4720
Was PR #22094
2018-05-31 10:06:19 +02:00
Nicolas Martinelli 074ec1aeae [FIX] account: manual payment method
Commit 5439e72a4e introduces the automatic creation of a journal
for a payment provider. However, the journal created doesn't have a
default payment method, to avoid showing it in the backend.

In the case of the eCommerce with automatic invoice creation, this
set-up returns a 500 error after an online payment. Solving the problem
is not obvious for the end-user.

The error comes from the fact that the 'Manual' payment method is not
available on the journal. We can remove this check.

opw-1853011
2018-05-31 08:23:39 +02:00
Nicolas Martinelli 21e233cba5 [FIX] analytic: read_group
Oversight of forward-port 9001a75f23

opw-1853068
2018-05-31 08:20:46 +02:00
Fabien Pinckaers 361070a45e [IMP] web, crm: minor copywriting in Kanban and CRM flow 2018-05-30 20:42:17 +02:00
Fabien Pinckaers 8169134715 [IMP] project: list and pivot are not grouped by default in tasks 2018-05-30 20:25:36 +02:00
Fabien Pinckaers 84c1ed4c26 [IMP] web: better copy for adding a column in kanban views 2018-05-30 20:16:14 +02:00
Laurent Smet dfde326e75 [IMP] account: add account.fiscalyear model
In order to improve the fiscal year management, we allow the user to define custom fiscal years
    using the account.fiscalyear model.

Was task: https://www.odoo.com/web#id=39878&view_type=form&model=project.task&menu_id=
Was PR #20936
2018-05-30 18:28:13 +02:00
jem-odoo 7f736f8db6 [FIX] hr_timesheet: avoid rounding error
When adding a timesheet with a number of minute that has many
decimal (once converted into float), the planned_hours field
might be recomputed. So, it might be a rounding error during
this recomputation, making the field value change. Since this
field is tracked, a message is post in chatter (like Planned
Hours: 50 -> 50.0033333"), which is not useful ...

opw-1849693
2018-05-30 16:22:45 +02:00
jem-odoo 075cafa828 [IMP] purchase: move settings for purchase requisition
purchase_requisition install stock, but when doing services you might
still want the option. This option was only display when stock
is installed. This commit changes this to make it visible when
purchase is installed.
The option is better visible and installing a new apps, then
hidden (or difficult to find).
2018-05-30 16:17:38 +02:00
Thibault Delavallée 7657150135 [MERGE][IMP] web, mail: add and use a badge based widget for selection fields
Purpose of this merge is to improve usability of activities by using a
new widget for selection field used to propose next activities. It
displays valid choices using badges instead of radio buttons (radio) or
a classic list (selection).

This merge is linked to task ID 1844575. Closes #24791.
2018-05-30 15:40:10 +02:00
Siddarth GajjarandMohammed Shekha 517f6d7246 [IMP] mail: improve recommended activities usability
When scheduling an activity after closing one, do not force a default
activity. Having the proposed activities is sufficient.

This commit also uses the newly-introduced selection badge widget to display
proposed activities as badges.

Co-authored-by: Siddarth Gajjar <sga@odoo.com>
Co-authored-by: Mohammed Shekha <msh@openerp.com>
2018-05-30 15:39:20 +02:00
Siddarth GajjarandMohammed Shekha c75c2fa9e3 [IMP] web: add a badge based widget for selection fields
This commit introduces a new widget to be used for selection-based fields.
Valid choices are displayed using rectangular badges and not like the
standard list. This widget is valid for selection and many2one fields
like selection or radio widgets.

Co-authored-by: Siddarth Gajjar <sga@odoo.com>
Co-authored-by: Mohammed Shekha <msh@openerp.com>
2018-05-30 15:39:15 +02:00
Olivier Colson cda8bdc8b3 [FIX] base: res.currency: use company_id context value as an integer id (not as a model reference) as it used to be before refactoring.
The use of id and model reference was inconsistent for this variable, depending on the content of the context. Doing this caused a failure when trying to load some financial reports (> Balance Sheet, Spanish reports, ...) of accounting in multi company, if both companies had not the same currency.
2018-05-30 15:01:01 +02:00
Thibault Delavallée fbec51f476 [IMP] mail: improve default channel picture
Purpose is to avoid having void image in systray when there are notifications
linked to channels that have no picture. Two small improvements are done on
channel model
 * change default picture for channel to be more inline with Odoo design
   guidelines;
 * override create to ensure there is a default image when creating the
   channel through the discuss interface;

This commit is linked to task ID 48228.
2018-05-30 15:00:01 +02:00