Commit Graph
127612 Commits
Author SHA1 Message Date
Lucas Perais (lpe) b6d4cd5deb [FIX] account: reconcile on move reversal
Make an invoice for partner X
Make a payment from partner X (not using the register payment button)
On the invoice, you'll see your payment proposal

Now, reverse the move of the payment

Before this commit:
On the invoice you *still have* the payment proposal
This is because nothing reconciled the reversed entries with the original ones when they were created

After this commit:
The reversed moves are reconciled one on one with their original counterparts
And the original payment doesn't show up anymore on the invoice's proposal

OPW 1816462
OPW 1816641
2018-02-28 09:08:38 +01:00
Florent de Labarre 6c044b3675 [FIX] base : prevent unallowed launch
Do not allow to trigger the cron manually (e.g. via RPC call)

Closes #23157
2018-02-27 18:02:58 +01:00
Olivier Sarrat f620e78301 [FIX] doc: remove readonly as button possible attrs
According to #13264, setting a button as readonly is not working
Remove from the documentation

Closes #23114
2018-02-27 17:54:56 +01:00
David Arnold 56eead8356 [IMP] purchase,sale: use full map_tax signature
Some call signatures have not been aligned with the taxes/product/partner
signature
introduced by the tax cloud module and necesary by some localization modules

Closes #23334
Fixes #23333
2018-02-27 17:35:26 +01:00
qsm-odoo a206cca404 [FIX] base: properly layout contact name + country flag
Commit https://github.com/odoo/odoo/commit/13ee5596c6dd32b3471ce705b62b54ea59c00431
broke the behavior by changing a <t> to a <div> for no apparent reason.

(opw-1819038)
2018-02-27 17:03:27 +01:00
Martin Trigaux 65be76829a [ADD] doc: add missing params and profiling
* Add some missing database parameters in documentation
* Explain how to profile code

Closes #22554
2018-02-27 16:51:05 +01:00
Florent de Labarre cc10778927 [IMP] stock: allow inherance to find a picking
Closes #23300
2018-02-27 16:44:36 +01:00
XavierDo 4f4fa90aea [Fix] project: enable tag listing from configuration
Enable tag listing from configuration to allow admin to remove or edit tags

Task #58927
PR #23200
2018-02-27 16:18:07 +01:00
XavierDo 51957c1171 [Fix] hr_timesheet: task for view
Improves some aspect of timesheet for a better usability:
Rename "Subtask Planned hours" into "Subtasks" AND put "hours planned" next to the hours as units
changes track visibility of Deadline Planned hours so that a message will be generated when those values are changed.
Progress : it was possible to to have a progress higher than 100% when more time have been spend that the planned hours, but it doesn't reely makes sence for a progress bar.
Remaining hours should be editable: it is now possible to edit the remaining hours if needed, the field planned hours is updated in this case to keep informations consistent.
Also remove the default values of description for the subtasks when it was taken from the parent task name in some cases.

Task #58927
PR #23200
2018-02-27 16:18:07 +01:00
XavierDo 0fe1021982 [Fix] sale: move re-invoice policy
Move the reinvoicing policy to the purchase tab to avoid some confusion in the product form

Task #58927
PR #23200
2018-02-27 16:18:07 +01:00
Swapnesh Shah bd0827ed23 [Fix] base_gengo: add target Inline
To open the setting in the full window

Closes #23209
Fixes second part of #23170
2018-02-27 16:07:11 +01:00
Christophe Matthieu 832b4721f3 [ref] account: proposition for reconciliation respect access rules is sql
Simplification of the search method of the lines lines (for the
propositions) of the two requests in one. The sql query returns the two
matching lines without filtering after the request because we inject the
rules of access rules directly into it.
This is an optimization in terms of clarity and speed. In addition to the
fix because the previous browse does not use access rules.
2018-02-27 15:35:23 +01:00
Christophe Matthieu 659ee94204 [IMP] account: remove comments useful for forward-port 2018-02-27 15:35:23 +01:00
Yannick Vaucher cf4020a3ce [IMP] account: Don't redefine builtin str 2018-02-27 15:35:23 +01:00
Christophe Matthieu bdfd1ebf0c [REF] account: create 'account.reconciliation.widget' model
Contains widget reconciliation methods. This refactoring does not modify
the feature, some errors have been notified in the code but not modified.
2018-02-27 15:35:23 +01:00
Jairo Llopis 77db32edf2 [FIX] base: do not force creating localhost SMTP server
Do no recreate the record if it was removed for any reason

Closes #23285
2018-02-27 15:07:08 +01:00
Martin Trigaux 56c173af9f [IMP] misc: rephrase
Courtesy of e2f translators
2018-02-27 14:58:29 +01:00
apesquero 4b1ed44936 [CLA] signature for apesquero
Closes #23338
2018-02-27 14:54:35 +01:00
Aaron Bohy 462c3956d9 [FIX] web: NotificationManager: warnings style
Warnings are styled a bit differently than notifications, as their
background is red (thanks to classname 'o_error' on the warning
root element). This classname isn't correctly added since rev.
920df59, which changed the root element of the 'Notification'
template, which is extended by the 'Warning' template, making
qweb.js fail to add the 'o_error' classname.
2018-02-27 14:31:02 +01:00
Fabien Pinckaers 39780b5037 [IMP] crm: improved dema data, to show a beautiful pipe by default 2018-02-27 13:22:15 +01:00
Suraj Shukla ebe58d9267 [IMP] web: Calendar: mobile UX improvements
The following tweaks have been applied on mobile devices:

 - remove left and right arrow in control panel
 - enable swipe navigation (instead of left/right arrows)
 - replace 'Today' button by a calendar icon
 - remove static text 'Attendees:' in events
 - shorten header content in week mode to prevent them from
   overlapping
 - ensure that the calendar fits in the screen

Also introduce a mobile test suite for the calendar view.

Task #31449
2018-02-27 12:18:55 +01:00
Aaron Bohy d36695cbc7 [REF] web: Calendar: apply coding guidelines 2018-02-27 12:18:55 +01:00
Nicolas Lempereur 60974227cf [FIX] product: create_variant forward-port 5c2380e
In 5c2380e9f an issue when modifying variants values was solved when an
attribute on the product variant had "create_variant" unset.

This commit forward-port what was lost of it in 11.0, that part was
probably lost because the code was previously changed when adapting to
python3.

Without the change, the added test failed creating a new variant keeping
the existing one. With this change, 'nocreate' value are ignored when
computing new variants to create.

opw-1815226
closes #23332
2018-02-27 12:06:49 +01:00
Nicolas Martinelli aff954bd63 [FIX] account: link bank to partner
Changes to a bank account should not be happening without approval and
not in an in-transparent way. In some cases, a third party can pay an
invoice for another account

opw-1817138
2018-02-27 11:31:09 +01:00
Goffin Simon d3843d7ed0 [FIX]fleet: Error when clicking on the costs of a vehicule
Steps to reproduce the bug:

- Go to Fleet
- Group by status
- Click on a vehicule
- Click on Costs

Bug: A traceback was raised because a group_by was made on the model "fleet.vehicle.cost"
for the field "state_id" and this field doesn't exist on this model.

opw:1815454
2018-02-27 09:42:40 +01:00
Hiral Bhavsar 03645bc51f [FIX] account: filters on invoices and bills
- Removed 'Invoices' and 'Credit Notes' filters.
- Removed inherited view of filters to remove the 'Not Draft' filter.
- Renamed 'Not Paid' to 'Open' filter.
- Added new filter 'Paid'.
- When click on 'Invoices/Bills' or 'Credit Notes' link of 'View'
  column from 'Customer Invoices' and 'Vendor Bills' dashboard, it
  should be open invoices with a specific domain instead of default
  filters.

Co-authored-by: Nicolas Martinelli <nim@odoo.com>
opw-1817236
2018-02-27 09:03:57 +01:00
Christophe Monniez 02d826e1a7 FIX] web: increase timeout of test_01_js
The web test suite is increasing, so the test duration increases too.
6 minutes is not enough on some runbot instances.
2018-02-27 08:50:39 +01:00
qdp-odoo 9bc9c86470 [IMP] account, account_bank_statement_import: create res.partner.bank only when statement lines get processed
Previously, bank accounts were created at the line creation, even if the partner was unknown. That was a very weird behavior since
- that use case of a res.partner.bank belonging to no one is meaningless
- the default partner was actually set to the current'user company, which was even more wrong.

This has been already improved by https://github.com/odoo/odoo/commit/7b322d08de2b5343cdf6935a7ae4a12f1fd61958 but that first patch ignored the use case of res.partner.bank created thr$
2018-02-26 18:05:06 +01:00
Alexis de Lattre 1f8835568b l10n_fr: chart of accounts: use bank account type only for accounts linked to bank journals (fixes bug #23040) 2018-02-26 17:22:41 +01:00
Yannick Tivisse 6f614c3254 [FIX] payment: Be less resrictive for payment journals on acquires
Purpose
=======

It looks a little to restrictive to only allow bank journals on payment acquirers.

For example on could want to define a manual payment acquirer linked with a journal of type "cash".

Allow both journal types instead of only bank.
2018-02-26 17:17:33 +01:00
Yannick Tivisse dc6913e2e0 [FIX] payment: Avoid to reset journal_id on acquirer edition
Coming from https://github.com/odoo/odoo/pull/17067

Don't reset the journal but make it required on the form view instead.
2018-02-26 17:17:33 +01:00
Martin Trigaux a546b34f52 [FIX] mail: use correct emoji for shortcode
:) is not the shortcode for 😊
:-) is not the shotcode for 😂
source https://emojipedia.org
2018-02-26 17:14:02 +01:00
Thibault Delavallée f727e9d9b6 [REF] rating: avoid storing rating_value on mail.message
Currently the rating value coming from the rating application is stored
on the message it belongs to. However storing it is not necessary as
there is no direct search using it. Having a computed field is sufficient
for all use cases we currently have in Odoo.

Removing the store allow to gain queries. Indeed the field is not
computed anymore after each message creation meaning we save queries
by not having to check existing ratings. It allows to gain a lot of
computation as mail.message is a critical model.

On the whole community runbot when installing all modules this leads to
a gain of more than 14K queries on 585K which means 2.4% of performances
increase. Considering the code size of this optimization this is quite an
interesting result.

Looking at test_mail performance tests we gain several queries (2/3) for
each new message which is coherent with the model change.

Finally it allows to lessen the performance difference between tests done
with test mail only and tests done with other modules already installed.
This is especially simple mail thread-enable records.

Related to task ID 51523. #Closes #23294. Done with blessing of @jem-odoo .
2018-02-26 16:58:35 +01:00
Ayman Adam Dawood e7c81ce536 [CLA] aymanadam5 signs Odoo CLA
Closes #23295
2018-02-26 16:38:10 +01:00
Patrick Tombez f435bc4fe9 [CLA] adds p-tombez to camptocamp's CLA
Closes #23329
2018-02-26 16:36:29 +01:00
Christophe Monniez 82e9cc7f97 [IMP] test_pylint: test the presence of python debuggers
From time to time, it happens that a developper forget to remove debuggers.
This commit adds a test to find such imports (pdb and pudb). The test
will fail if that kind of import is found. The Odoo runbot should run
this test and prevent developper from those small mistakes.
2018-02-26 16:12:54 +01:00
Adrian Torres d33ce2b4d1 [FIX] base_import_module: don't assume data/ exists
Before this commit, while performing a check on whether a customization
being imported was done using studio or not, we would assume that the
.zip would, at the very least, contain a data folder.

This is not the case as loose files can be imported and the data folder
is only generated by studio customizations.

To solve this, we walk over the whole zip instead of walking over the
data/ folder only (which may be non-existant), so loose files, files
inside the data folder and potentially files in other folders can be
parsed without raising unexpected errors.
2018-02-26 15:33:37 +01:00
qdp-odoo 25b49fe624 [FIX] account: don't _post_validate() an account.move after a reconciliation
Previously, trying to register a payment on today towards an invoice posted with a date prior to the FY lock date, was raising an error... which was completely wrong.
2018-02-26 15:30:16 +01:00
XavierDo 5bb0318ab4 [Imp] product: move uom in a new addon
Adapt enterprise branch to match changes applied in commit 1b64b193f9a6cfd26dee3d723eac968fa4c5000e
2018-02-26 15:14:36 +01:00
Adrian Torres 30db4cdd75 [FIX] stock: remove existing demo data on reinstall
Previous to this rev.:
    *Install stock w/ demo data
    *Uninstall stock
    *Reinstall stock

Result: Boom! Installation crashes.

Reason: The demo data installed with stock is not properly deleted after
the module is uninstalled, which causes issues/conflicts upon
reinstallation of the same demo data.

Solution: Remove any demo data of stock models upon installation if any
exist through a pre_init_hook, ideally this would be done by overriding
the unlink() of the affected models / setting some ondelete='cascade',
or even a uninstall_hook, however these solutions prove insufficient for
databases that are currently affected by the problem.

Fixes #22243
2018-02-26 15:12:25 +01:00
XavierDo 2966d4faed [IMP] product: rename product.uom into uom.uom
Also rename product.uom.categ into uom.category to
 give it a decent name.
2018-02-26 14:27:26 +01:00
XavierDo 6a378e3839 [IMP] product: move uom in a new addon
Moves UoM models, test and data to a new addon in
order to be able to use uom without product.
A simple example is be to be able to use UoM for
timesheets.

This commit only move code, and adapt xml ids
without chaging any feature or functionnal
behavior.
Note: 'product' module now depends on new
'uom' module.
2018-02-26 14:27:26 +01:00
Thibault Delavallée 9de5d41754 [MERGE][REF] mail, various: remove dead code and perform some small code renaming and optimization
Purpose of this merge is to clean a bit various methods and remove some
dead code. All those commits come from other work-in-progress branches
in mail aiming at improving performances and reducing code size. We can
already merge some light cleaning in order to lessen diff and ease
understanding of real feature-based branches.

It contains

 * some renaming in notification methods to match the _notify prefix used
   in most of them;
 * removal of  some dead code coming from old implementations of chatter;
 * removal of unnecessary context switch in email sending process;
 * small cleaning of notification group methods in various addons;

It allows to gain some queries in various test_mail performance test as
stated in the test_performance file update. When notification emails are
sent 4 queries are gained with this merge. On the whole community runbot
the impact is small (about 1K queries) probably because most of email
sending part is skipped on runbot.

This merge is related to the task Id 59039. #Closes #23089.
2018-02-26 14:24:47 +01:00
Thibault Delavallée 86350c56ff [REF] various: clean override of _notify_get_groups
Overrides of _notify_get_groups are used to add some buttons in notification
emails and control the display of "Access document" button. This commit
cleans some overrides :

 * accounting: portal users that are not the customer have no access to the
   invoice and should not have the access button;
 * project: remove unnecessary override on project model and consider portal
   users have access to the document through customer portal;
 * sale: portal users that are not the customer have no access to the sale
   order and should not have the access button;
 * website_blog: display access button to everyone only if the post is
   published; otherwise keep standard behavior;
 * website_forum: display access button to everyone only if the post
   has not been closed or deactivated; otherwise keep standard behavior;
 * website_slides: display access button to everyone only if the slides
   has been published; otherwise keep standard behavior;
2018-02-26 14:15:12 +01:00
Thibault Delavallée 6eda1dcb7a [REF] mail: simplify email send code and remove unnecessary methods
Send methods of mail.mail model are set private and simplified. Those
methods have been written when a lot of overrides were necessary to
generate notification emails. Since then the flow has changed but
methods have not been updated completely. This commit therefore simplified
a bit the call chain and parameters.

This commit is purely technical and does not hold any functional change.
Purpose is to clean code in order to prepare future changes in mail
application.
2018-02-26 14:15:08 +01:00
Thibault Delavallée d46e358d3e [REF] mail: rename notification methods related to recipients
This commit renames some internal mail.thread methods linked to the
notification process. This is the next commit of a series aiming at
improving code readability and method finding through prefixes. See
notably cae1c3977f, cdfe479e2e and fc1348dd3d.

This commit does not change any functional feature. It does only
rename notification-related methods, using the _notify prefix to
ensure they are private and to mark they are part of the notification
process.
2018-02-26 14:14:12 +01:00
Thibault Delavallée 2238408d51 [REM] mail: remove unnecessary context switch in mail send method
Commit 0d3d0e9563 added a key in context when sending emails to know
the target model name. It was used at that time to forge for footer of
notification emails.

Since that time notification emails have evolved a lot. The code based on
that context key has been removed. Context key has been transformed into a
context switch. However it is not used anymore and can be removed. It allows
to clean a bit the code and save a context switch.

This commit is purely technical and does not hold any functional change.
Purpose is to clean code in order to prepare future changes in mail
application.

This commit allows to gain some queries in mail sending process, meaning
removing context switch is interesting. One query is gained when using
the send process. Complex performance test involving several message post
gain 3 queries each.
2018-02-26 14:14:10 +01:00
Thibault Delavallée 97ee12e9c7 [REF] mail: simplify parent fetch when posting a message
1d57a09112 added a two-steps parent fetch when posting a message
on a discussion thread. At the time this commit was done responsible were
notified of the first thread message. It was helpful to notify them of the
original email that created the thread instead of the "document created"
generic message. Indeed for documents like leads or issues having the
original email containing the customer question is interesting when being
notified. This is why this commit was done.

However since quite a long time responsible notifications have changed.
They now receive an email notification telling they have been assigned on
a document. This commit is not necessary anymore and we therefore remove
it in order to clean a bit the message_post process.

This commit globally reverts 1d57a09112. Please note that @beledouxdenis
agreed after a long thinking.

This commit has a slight impact on mail performance tests, allowing to save
one query in some more complex test case.
2018-02-26 14:11:32 +01:00
oco-odoo 60aa7596e5 [FIX] account, purchase: Recurrent vendor bills (#23320)
- set due date based on payment terms at generation for recurring bills
- do not generate "This vendor bill has been created form POXXX" for bills that have been generated by cron
2018-02-26 14:04:30 +01:00
qsm-odoo c254c4c684 [FIX] web_editor: stop crashing on applying fonts with standalone summernote
Commit https://github.com/odoo/odoo/commit/137c4f5d76b55c3dd3c4f593de484aadfcf5e6da?w=1#diff-6a334b274d95fb88a4fbc29b910fbb59R2120
introduced a bug as it is using a function which is defined in another
asset. This is fine for connected users but not for summernote-only
users like public users on the forum.

The reason the line was introduced is unsure so it is simply removed for
now. The bug it was supposed to fix will be fixed later if it ever needs
to be.
2018-02-26 12:58:28 +01:00