Commit Graph
124195 Commits
Author SHA1 Message Date
William Henrotin 285b045c64 [FIX] base: correct csv language file parsing
The commit f1e842bcd2 corrected the Khmer code language but the csv language file was left with a blank line inside. 
The csv parsing (to populate the list of available languages) failed into tools.misc.scan_languages() because of the blank line
2018-03-29 12:06:30 +02:00
Martin Trigaux 49364fced4 [FIX] stock: rephrase the error message
Was done with a translation in stable at 106d9a98bf

opw-1827181
2018-03-29 12:02:42 +02:00
Martin Trigaux 106d9a98bf [FIX] stock: rephrase the error message
Doing a translation for stable version, to rephrase in master
opw-1827181
2018-03-29 12:00:28 +02:00
Nicolas Martinelli 1dbc655676 [FIX] account: reverse pair
Commit b6d4cd5deb introduced the auto-reconciliation when reversing
an entry. However, we should make sure to only reconcile non-reconciled
entries. Such an entry can be generated from an exchange rate entry.

opw-1826024
2018-03-29 11:47:36 +02:00
Martin Trigaux a52a6b865c [FIX] calendar: set color on right partner
When doing a sudo on top, the fields are accessed with user 1 but the set is
also made with user 1.
meeting.user_id.partner_id.id is correctly computed but
meeting.partner_color_id is not set for the current user (return 0)

All events were in the same color

Introduced at b669c71aa3

opw-1829793
Closes #23923
2018-03-29 10:56:08 +02:00
Thibault Delavallée e76d492636 [MERGE][IMP] mail: use xmlid_to_res_id instead of ref when accessing subtype ids
Deleting comment / note / activity subtypes make the whole system quite
impossible to use. Indeed the whole communication mechanism is based on
those subtypes that are hardcoded.

There are some use of env.ref() about subtypes to try to avoid having those
removed. As there is some work to make some xml ids impossible to delete we
can already update some code to use xmlid_to_res_id instead of env.ref(). This
leads to some gain in query count as there is no exists() that is performed.

Globally this merge allows to save a few query on each message post and about
7K on community runbot.
2018-03-29 10:53:00 +02:00
Yannick Tivisse ef5301b964 [FIX] l10n_be_hr_payroll: Compute correctly the 'company_car_total_depreciated_cost'
The correct solution would be to store the total_depreciated_cost on the fleet vehicle.
But this solution is not acceptable on a stable release as it implies to update the module.
The only thing we can do here is to add the dependencies on the field 'total_depreciated_costs'
to the field 'company_car_total_depreciated_costs'.

As the field is not stored, then the field 'company_car_total_depreciated_cost'
(which is stored) is not recomputed correctly when modifying the log_contract.

This solve the following issue: Modify a recurring costs amount (depreciated)
on the fleet vehicle contract, then the final yearly cost on the related
hr.contracts are not recomputed correclty, as the field company_car_total_depreciated_cost
on the hr.contract is not recomputed on the total_depreciated_cost modification.
2018-03-29 10:24:15 +02:00
Yannick Tivisse 35d507bc6a [FIX] l10n_be_hr_payroll: Add missing dependant fields on compute methods
Task #60392
PR #23742
2018-03-29 10:24:15 +02:00
Yannick Tivisse ea5547aff4 [FIX] fleet: Display 'No Plate' in name when no place is defined 2018-03-29 10:24:15 +02:00
Yannick Tivisse a6833e1642 [IMP] hr_contract: Track some fields modifications
Purpose
=======

In contract, track fields (create a note, no need subtype. it is just for the history)
- wage
- fuel_card
- meal_voucher_amount
- representation_fees
- additional_net_amount
- retained_net_amount
- commission_on_target
- ip
- car_id
- internet
- mobile
- mobile_plus
- final_yearly_ cost
2018-03-29 10:24:15 +02:00
William Henrotin f1e842bcd2 [FIX] base: khmer language (Cambodia)
The code of khmer language was not the offical one. Installing it
produce an error in the Babel python library.

It's not possible to easily fix it by correcting the code km_KM to km_KH
because Odoo
prohibit changing language code. The solution to this is to remove the
Khmer language from the res_lang.csv file and add it to an xml data
file with the correct code. There, we can put on this record the
"noupdate" tag. This tag
will block any modification on the ir_model_data corresponding to the
xml_id=lang_km
and so avoid the error if we update the base module. Old database still
wont be able
to use khmer language (so we'll need to manually change it in database)
but new one created
after this commit will be able to use it without issue.
2018-03-29 08:47:21 +02:00
Christophe Simonis 0b330bf04c [MERGE] forward port branch 9.0 up to 97fc813a1a 2018-03-28 18:58:10 +02:00
Jeremy Kersten b747c3010a [FIX] website: website.redirect keep params during redirect
Before this commit if /foo redirect to /bar?a=1

/foo?debug=1 was redirectd to /bar?a=1

After this commit,

/foo?debug=1 is redirected to /bar?a=1&debug=1
2018-03-28 17:59:31 +02:00
Jeremy Kersten c78de22a09 [FIX] utm: set utm for website page
Before this commit, UTM was no more set for website.page.

Website.page mechanism uses the _handle_exception to check if an url match a
record in database, instead of use the method _dispatch that uses controllers.

Consequently, module UTM never set the utm into the cookies for website.page.
Now we override method '_handle_exception' that will anyway ignore to set utm
if it is a real exception and not a fallback (redirect, page, attachment, ...)
2018-03-28 17:59:30 +02:00
Jeremy Kersten 888e2c3d37 [FIX] website: fix controller / to avoid loop
Don't redirect to '' to avoid infinite redirect loop.
2018-03-28 17:59:19 +02:00
Thibault Delavallée 4451e505cd [IMP] mail: use xmlid_to_res_id instead of ref in remaining places of mail
As explained in previous commit we can use xmlid_to_res_id instead of ref()
which leads to some query gain. This commit update some other less important
places: when setting activities as done and in the composer. This lead to
a gain in tests involving activities and composer, including tracking
triggering a template. On community runbot this leads to a gain of about 1K
queries.
2018-03-28 16:57:05 +02:00
Thibault Delavallée a2511f3a5a [IMP] mail: use xmlid_to_res_id instead of ref to find subtype in various post methods
As explained in previous commit we can use xmlid_to_res_id instead of ref()
which leads to some query gain. We gain 1 query on most post due notably to
notify and logging is still improved. This leads to a gain of about 4K queries
on community runbot.
2018-03-28 16:56:16 +02:00
Thibault Delavallée 1e4ee402a3 [IMP] mail: use xmlid_to_res_id instead of ref to find subtype in message_format
Deleting comment / note / activity subtypes make the whole system quite
impossible to use. Indeed the whole communication mechanism is based on
those subtypes that are hardcoded.

There are some use of env.ref() about subtypes to try to avoid having those
removed. As there is some work to make some xml ids impossible to delete we
can already update some code to use xmlid_to_res_id instead of env.ref(). This
leads to some gain in query count as there is no exists() that is performed.

Gain: 1 query on most tests implying post, because message_format is called
by bus notification. About 1.5K queries on community runbot
2018-03-28 16:55:08 +02:00
Thibault Delavallée d4dcfb6c6a [FIX] test_mail: increase activity-related counters to avoid sometimes-red runbot
Still this "sometimes one query more" in activity-related tests. Let us avoid
false red occurrences of runbot by adding one query on sometimes-failing tests.
Purpose of performance test is to have an idea of query count. Adding one query
is not harmful.
2018-03-28 16:17:36 +02:00
Tejas Shahu e069da80fd [IMP] account: improve usability in the bank reconciliation widget.
- Removed 'OK' button to save title. Now, title will be saved on focusout or enter key pressed.
    - If more than one statements to be reconciled, then title should not be editable.
    - If no title for statement display text 'No Title'.
    - Improve UI for title to better understand clickable area and fix issue if title is too long.

Was task 34890. Was PR #19971
2018-03-28 15:45:52 +02:00
Yenthe V.G 97fc813a1a [FIX] account: fix performance issue with check_lock_date 2018-03-28 15:02:47 +02:00
Martin Trigaux ee228e087c [IMP] base: always show overwrite box
It is not a technical feature
2018-03-28 14:20:55 +02:00
Raphael Collet d92b1d7818 [FIX] auth_crypt: do not invalidate the whole cache when setting password 2018-03-28 14:17:43 +02:00
Martin Geubelle 6676c3b189 [IMP] web: override size attributes in image widget
Size attributes (e.g. `max-width`) are sometimes set in css (i.e. with classes,
see `oe_avatar`).

They must however be overriden if they are specified on the widget.

Example:
  <field name="image" widget="image" class="oe_avatar" options="{'size': [180, 180]}"/>

The `max-width: 90px` set on oe_avatar must be overriden in this case.

Note that the attribute `img_width` and `img_height` have been depreciated as
`width` and `height` are fulfilling the exact same purpose.
2018-03-28 14:02:00 +02:00
Olivier Colson 98ee15977a [IMP] stock_account, anglo-saxon accounting: help to clear out interim accounts
Accounting entries made for invoices and stock valuation on the interim accounts (stock input/output accounts) are now reconciled together for both sales and purchases. This will definitively help to have those accounts zero-outed when all operations are processed.

The reconciliation is made as long as the stock valuation is set in real-time, whatever the costing method.

Note that change change also allow a particular use case to be solved: when a purchase is made in a foreign currency whose rate change between the incoming shipment reception and the bill validation (there will be an automated exchange rate entry created).

Was task 32331. Was PR #22483
2018-03-28 13:45:47 +02:00
ougc27 8327b67cf5 [FIX] account: fix wrong domain/default journal on account payment view.
Fixed use case:
When creating a new payment (not from invoice), the payment amount is zero and this value triggers an onchange method that set the first miscellanous journal_id as the payment journal_id and force the domain with only miscellanous journals.

This behavior was added in commit 3267e76 to be able to clear invoices by registering a 0 amount payment on it, but this has obviously only interest when registered from the invoices form view... To keep this functionality we only add a "AND" sentence to validate that the payment has invoices, if the payment has not any invoices the journal and the domain of this field will be for bank and cash.

Was task ID 1823023. Was PR #23609. Nice courtesy of Oscar Ulises Garza Córdova
2018-03-28 11:15:41 +02:00
qdp-odoo f7971a95c9 [FIX] account: yet another multicurrency fix
function create_exchange_rate_entry() has been build to potentially receive several aml_to_balance (all sharing the same currency_id), hence aml_to_balance.currency_id would be failing in that case since the ORM is expecting a singleton there.
2018-03-28 10:37:41 +02:00
Lucas Perais (lpe) bed33e1ca2 [FIX] web_editor: block only the form's buttons
Commit cae188514f was largely incomplete
and inaccurate in fixing the issue at hand

The aim of this commit is to deactivate the form buttons when the Html field is not completely loaded
thus preventing the temporary value of the iframe to be saved

OPW 1824545
closes #23905
2018-03-28 09:36:33 +02:00
Goffin Simon 2e3b249723 [FIX] stock_account: Wrong decorator
The function _get_anglo_saxon_price_unit using a record set and a model.
2018-03-28 09:26:55 +02:00
Nicolas Martinelli 3a318e7c40 [FIX] account: initial balance
- Create manually an account move
- Add a line with a credit != 0
- Click on "Add a line" => crash

`line_ids` does not contain the credit since it was not filled in.

opw-782980
2018-03-28 09:25:10 +02:00
Lucas Perais (lpe) 07435b1104 [FIX] web: correctly display reference field in subview
Have a form view with a O2M.
The model at the 'many' end has a reference field

Have a record of the second model display in a modal
(by clicking on a record in the o2m list)

Before this commit:
The field reference was not filled up
This was because the fields to fetch on the modal creation weren't correctly set.
Obvisouly, it also created problem when trying to change the record on the modal:
spawning tracebacks because the reference field was not present in the local datas

After this commit:
The display of the reference field is as expected both in the original form and in the modal

OPW 1829822
closes #22468
closes #23896
2018-03-28 09:18:07 +02:00
Christophe Simonis 3a537c789a [MERGE] forward port branch saas-11.2 up to 55a14f9ce8 2018-03-27 19:41:30 +02:00
Christophe Simonis 55a14f9ce8 [FIX] sale_timesheet: use existing field
Oversight of previous forward-port
2018-03-27 19:02:06 +02:00
Christophe Simonis 87a0f4dc4c [MERGE] forward port branch 11.0 up to b33d5af4a7 2018-03-27 18:22:18 +02:00
Arnold Moyaux b33d5af4a7 [FIX] stock: allow to validate a picking with 2 extra moves
Use case to reproduce:
- Create a picking containing 2 moves that have a quantity_done greater than reserved quantity
- Validate the picking with or without backorder

Traceback due to a record that do not exist anymore.

It happens due to 2 functionality that have a wrong behavior when used together:
- merge_move function that will try to merge moves with same characteristics inside a same picking.
- action_done functionality that will create an extra move if the quantity done for a move is greater
than reserved quantity. (the extra move is used in order to propagate changes)

With our usecase:
- MOVE A, reserved_qty: 10, qty_done: 20
- MOVE B, reserved_qty: 10, qty_done: 15
action_done on move A will create a new move thus we will have
- MOVE A, reserved_qty: 10, qty_done: 20
-  A bis, reserved_qty: 10, qty_done: 0
- MOVE B, reserved_qty: 10, qty_done: 15
then merge move will not only merge move A and A bis but will also merge B
which result with inconsenstencies and traceback since system will try to
process move B after A
- MOVE A,A',B reserved_qty:30, qty_done:35 (the 5 extra qty is not propagated)

This commit adds a kwarg in action_confirm that is propagated to merge_move
this kwargs is a record set taht will limit the moves that can be used for the merge
in order to merge extra move in original move

opw-1825264
2018-03-27 17:36:44 +02:00
Jeremy Kersten d24675f76a [IMP] website_sale: confirmation page fix margin
Move right column after the title to keep same logic than previous
steps where wizard in not into the left column but has his own row.
2018-03-27 17:31:45 +02:00
Christophe Simonis f22c5794c4 [MERGE] forward port branch saas-15 up to a9542240fc 2018-03-27 17:17:38 +02:00
Goffin Simon 32421c4daa [FIX] account: Name of an account.payment
Steps to reproduce the bug:

- Create a bank statement with a blank name
- Reconcile any line statement with an invoice
- Review the payment that was made for this statement

Bug:

The payment had no name.

opw:182754
2018-03-27 17:14:14 +02:00
Christophe Simonis a9542240fc [MERGE] forward port branch saas-14 up to ce5b4b6512 2018-03-27 16:41:47 +02:00
Thibault Delavallée 5cbd9ae0ab [MERGE][IMP] mail, various: add automatic activities generation to ease business flows
This merge make several application automatically generate activities based
on business requirements in order to ease the daily job of people using it.

In this merge

 * methods allowing to create, reschedule, mark as done or unlink activites
   are added in mail.activity.mixin;
 * automated activities are flagged using the newly-added automated field
   to distinguish them from other activities;
 * mail.activity.mixin is added to some models to ensure activities are
   activated;
 * several main applications use this API to integrate activities automation
   in their flow: hr_holidays (leave and allocation), hr_expense (expense
   report), fleet (vehicle contract), maintenance (maintenance request),
   sale (sale order);

Please see sub-commits for more details about the mixin update as well as
the integration in the various applications.

This merge is linked to task ID 39578. Closes #20799 .
2018-03-27 16:39:14 +02:00
Thibault Delavallée d0e2caee4e [IMP] maintenance: improve activity management on maintenance request model
This commit improves maintenance requests management through a better
integration of activities and addition of automated activities. Several
things are done in this commit :

 * automatic activities generation is added for maintenance requests.
   Activities are generated to remind assigned users about maintenance to
   perform. They are also automatically removed or updated if the scheduled
   date is changed or if the request is done to avoid bloating users with
   unnecessary activities;
 * a menu to configure activity types is added. Indeed equipment managers
   should be able to see and configure activity types related to their job;
2018-03-27 16:31:05 +02:00
Thibault Delavallée 77c7b68a9b [IMP] fleet: improve activity management on fleet contract model
This commit improves fleet contracts management through a better integration
of activities and addition of automated activities. Several things are done
in this commit :

 * fleet vehicle log contract does not inherit from mail.activity.mixin.
   This commit adds the inherit so that fleet users and managers can now
   schedule and manage activities on vehicle contracts. This will help them
   in their daily job;
 * automatic activities generation is added when contracts are nearly expired
   and renewal is required;
 * a menu to configure activity types is added. Indeed fleet managers should
   be able to see and configure activity types related to their job;
 * filters are added to be able to use the systray and to filter the kanban
   view based on activities

Having automated activities allow to replace some messages posted on the
contract. Indeed currently there are messages posted on vehicles about
contracts to renew. As we now have automated activities on contracts to
remind assigned people to renew it the log can be safely removed. It will
lessen noise generated on chatter.
2018-03-27 16:31:01 +02:00
Thibault Delavallée fce33767af [IMP] fleet: add responsible on fleet vehicle log contract model
Currently there is no place to indicate who is responsible of managing
fleet contracts. As we plan to integrate activities to fleet app having
responsible to push notifications is necessary.

This commit adds a responsible field following Odoo convention, aka a
user_id field linking res.users records. It is also added on the view.
2018-03-27 16:31:00 +02:00
Thibault Delavallée 17c9b7afee [IMP] sale: improve activity management on sale order model
This commit improves sale management through a better integration of
activities and addition of automated activities. Several things are done
in this commit :

 * automatic activities generation is added for sale order upselling.
   They are also automatically removed or updated when the sale order state
   changes from or to upselling to avoid bloating users with unnecessary
   activities;
 * a menu to configure activity types is added. Indeed HR managers should be
   able to see and configure activity types related to their job;

Technically we choose to override _write in order to catch the invoice_status
computed field update and try to have a lightweight implementation. Indeed
sale.order is a complex model and we tried to have a low-level override
that do not mess with business overrides.
2018-03-27 16:31:00 +02:00
Christophe Simonis ce5b4b6512 [MERGE] forward port branch 10.0 up to fc659d3f78 2018-03-27 16:10:35 +02:00
Thibault Delavallée 133fd0a21e [IMP] hr_expense: improve activity management on expense sheet model
This commit improves expense flow management through a better integration
of activities and addition of automated activities. Several things are done
in this commit :

 * expense sheet (report) model do not inherit from mail.activity.mixin.
   This commit adds the inherit so that expense users and managers can now
   schedule and manage activities on expense reports. This will help them
   in their daily job;
 * automatic activities generation is added for expense reports. Activities
   are generated for approval. They are also automatically set as done when
   validating or unlinked when refusing or resetting to avoid bloating users
   with unnecessary activities;
 * a menu to configure activity types is added. Indeed HR managers should be
   able to see and configure activity types related to their job;
 * filters are added to be able to use the systray and to filter the kanban
   view based on activities

Having automated activities allow to replace some messages and tracking
that were implemented to warn people of expense reports to approve.
This commit therefore

 * simplifies the tracking as tracking to confirm reports is not necessary
   anymore;
 * removes to approve subtype on report model as well as its parent subtype
   on the department. This allows to simplify chatter in hr_expense app;
2018-03-27 15:19:34 +02:00
Thibault Delavallée 238c20ffff [IMP] hr_holidays: correctly set description of allocation to leaves allocation
Seeing allocation word notably in the activity widget is not easy to
understand. Leaves allocation is a better naming.
2018-03-27 15:19:26 +02:00
Thibault Delavallée 1d71c06233 [IMP] hr_holidays: improve activity management on leave model
This commit improves leave request and allocation management through a
better integration of activities and addition of automated activities.
Several things are done in this commit :

 * leave and allocation models do not inherit from mail.activity.mixin.
   This commit adds the inherit so that HR users and managers can now
   schedule and manage activities on leave and allocation requests. This
   will help them in their daily job;
 * automatic activities generation is added for leave and allocation.
   Activities are generated for approval and second approval. They are also
   automatically set as done when validating or unlinked when refusing or
   resetting to avoid bloating users with unnecessary activities;
 * a menu to configure activity types is added. Indeed HR managers should be
   able to see and configure activity types related to their job;
 * filters are added to be able to use the systray and to filter the kanban
   view based on activities

Having automated activities allow to replace some messages and tracking
that were implemented to warn people of leave and allocation to approve
or validate. This commit therefore

 * simplifies the tracking as only approved or refused state now trigger
   a subtype;
 * removes to approve and to validate subtypes on leave and allocation
   model as well as their parent subtypes on the department. This allows
   to simplify chatter a lot in hr_holidays app;
2018-03-27 15:19:10 +02:00
Thibault Delavallée 78c4d936e5 [MOV] hr_holidays: reorder a bit views and menus to avoid circular issues
Commit a0f4f6548b splitted hr_holidays models and moved them
to different files according to guidelines. However some bits of code related
to views were not correctly put in separate files. This commit finishes to
order views and moves some of them in the right file. Other views or actions
are moved because of dependency between them.
2018-03-27 15:19:08 +02:00
Nicolas Martinelli 905cd6d903 [FIX] account_bank_statement_import: default partner
When importing a bank statement containing an unknown bank account
number, the newly created account is automatically linked to the partner
of the current company.

This is due to the default value for `partner_id`.

Introduced in 6db235385a

opw-1816832
2018-03-27 15:06:12 +02:00