Commit Graph
103727 Commits
Author SHA1 Message Date
qsm-odoo ea0fcd52d9 [FIX] web_editor: properly save a t-field in a t-ignore environment
When a t-field element was in an editable t-ignore environement,
modifying it was leaving the edit mode style attached to it. This
was because of:
1) When the t-field element was changed, it was marked dirty but
   also its parent editable container. Fixing this, only solves
   the case where only the t-field (and not one of its neighbors)
   is changed but it was worth fixing anyway.
2) Before saving an element, the potential 'o_editable' and
   summernote classes were not removed of its descendant and were
   thus saved.

Bug found with task-38069, merged in stable as it might occur there
too.
2018-05-28 12:20:07 +02:00
Christophe Simonis 34f567dd39 Revert "[FIX] mass_mailing: unsubscribe not working in multi lang"
commit a3ab33f212 introduced invalid code
2018-05-24 16:50:09 +02:00
jem-odoo 919a1af936 [FIX] purchase: correct product cost in reporting
product.product inheritS from product.template, and they both
define the 'standard_price' field, but implement it differently;
 - product: the field is a company dependent one (so non stored)
 - template: the field is a computed one based on tis variants

For the first case, since the field is not stored in database, when
doing SQL query, we have to get the value from the table ir_property.
That is what purchase report does, but instead of searching on resource
'product.product', it does it on 'product.template'. There are
obviously no entries in ir_property table for 'standard_price' field
on product template. As consequence, the "product value" (cost)
is always null in purchase reporting.
This commit fixes that by modifying SQL query to get the good
value from ir_property table.
2018-05-24 16:21:06 +02:00
Yannick Tivisse 28179bc8cb [IMP] base: Add support for private addresses
This is a backport of commit https://github.com/odoo/odoo/commit/2f15a5fa647d55df36c9019df467802a3aa9b4e3

Purpose
=======

Add the possibility to create private addresses, only accessible for a subset
of users.

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

- Add a new 'Private' partner type
- Add a res.groups in base 'Access to Private Addresses'
- Add ir.rules for the following behavior:
    - Every employees/internal users can read non-private addresses
    - Only users in group_private_addresses can access private addresses
- Add in base a simplified form view for private addresses

The following points won't be backported:
- A HR Officer is automatically granted in group_private_addresses
- Use the simplified form view to open the address_home_id form on employees
That's because it requires to update 'base' to make it work. If a user only
update 'hr', this will break his instance while 'base' isn't updated.

But these modifications can be applied manually quite easily.
2018-05-24 13:53:46 +02:00
Goffin Simon a3ab33f212 [FIX] mass_mailing: unsubscribe not working in multi lang
When installing the website with a lang  different than the one set
on the user, the button unsubscribe in the mass mailing snippets
didn't work because the unsubscribe link contains the code of the
language. The function send_get_email_dict in model mail.mail didn't
expect this behavior and so couldn't set the right unsubscribe link
in the mail.

opw:1850696
2018-05-24 09:46:36 +02:00
Joren Van Onder 0fd06e5948 [FIX] pos_mercury: set the paid amount to what is authorized by Mercury
Mercury can partially approve transactions in case a card does not
have enough credit available to cover the full amount.

Before this the payment amount was kept as the full purchase amount
leading to a difference between what Mercury charged and what Odoo
registered as charged.

opw-1840946
2018-05-18 13:23:08 -07:00
Christophe Simonis 612fd33fb1 [FIX] http: correct protocol parsing 2018-05-18 16:15:55 +02:00
Fabien Meghazi 866d1e7190 [FIX] server: fix support for systemd socket activation in threaded server
This patches fixes the untested and broken draft of inetd and systemd
activation support in the threaded server.

This patch also fixes the loss of the process environment in the
`_reexec()` function when Odoo is respawning during the following events:

    - SIGHUP signal is received
    - one click install has been triggered
    - code reload needed when using `--dev=reload`
2018-05-17 18:38:13 +02:00
Lucas Perais (lpe) cd26eb8e7c [FIX] l10n_fr_fec: EcritureLib should not be empty
Make an account move with two move lines.
In those lines' label, just hit the space bar, and post your entry.

Now, get the FEC report.

Before this commit, the EcritureLib field was empty

After, it has the value '/'

closes #24734
2018-05-17 09:24:31 +02:00
Christophe Simonis 9db6dfa25d [FIX] event_sale: update registrations as sudo.
Consequence of 19878d011f

Backport of fb17edd0b0
2018-05-16 11:05:16 +02:00
RomainLibert 19878d011f [FIX] event: fix bug with users
We need to fix a problem with the users where someone might get
informations on registrations.
2018-05-15 09:41:25 +02:00
Nicolas Lempereur c39d40f98d [FIX] hr_recruitment: job stages choosen manually
In 9.0, stages of a job position in recruitment are not share by
default, there is a "New" stage and existing stages can be added in the
form view (since 780f46ae).

When creating a job position, the "New" is not working with the given
widget type.

This commit doesn't show stages in the form view until the record is
created.

opw-1839217
closes #24706
2018-05-15 09:20:59 +02:00
Christophe Simonis 0450868391 [FIX] website: correct GeoIP Legacy compatibility
Attribute is different for country and continent objects.
2018-05-14 19:54:50 +02:00
Denis Ledoux e48767fe65 [FIX] mass_mailing: force to not use a template for the rendering
If the user configures a default `template_id` for
the `mail.compose.message`,
this template was used by the mass mailing to render the email,
and, among others,
it therefore used the `email_to` of this email template,
to render the recipients,
and it was configured empty or something else than `object.id`,
it did not used the `active_ids` passed in the context to the
`mail.compose.message` `create` call to compute the correct
recipients

To reproduce:
 - In developer mode (?debug)
 - Open the full mail compose message
   e.g. in app sales, open a so, hit new message,
   and hit the button to open the full message composer
 - Set the template to the quotation template is not there already
 - In the debug menu of the dialog, View > Set defaults,
 - Click the radio button to all users, and the default to Use template = ...
 - Then, try to send a mass mailing. It will fail because it cannot
   compute the `email_to` values correctly because the `email_to`
   of the quotation template is empty.

opw-1840287
2018-05-14 16:48:20 +02:00
Nicolas Lempereur 1dae7ea1d6 [FIX] web_editor: inline space in source code
Backport of 57f7c68106
2018-05-11 11:06:05 +02:00
Christophe Simonis 4431c8c843 [FIX] website: GeoIP Legacy compatibility
Some IPs (like google-proxy ones) are not bound to a specific country.
Legacy Database used to set country_code to 'EU' for these one. geoip2,
on contrary, does not set the country. Read information from `continent`
attribute in this case.

opw-1844888
2018-05-09 11:40:56 +02:00
Josse Colpaert 468e2e454e [FIX] sale: creating invoice name from SO ref
Steps to reproduce the bug:

- Create a SO with 2 lines and confirm it
- Set a Customer reference on the SO with "This is, a ref"
- Deliver it
- Create an invoice from it with all the invoicable lines

Bug: The name of the invoice was: "This is, a ref, This is, a ref"

Expected behavior: The name of the invoice is: "This is, a ref"

opw:1840738
2018-05-07 15:19:32 +02:00
xmo-odoo 4e5119c6e5 [IMP] warn when using logrotate in multiprocess
The built-in log rotation is *very* unreliable in a multiprocess
context, which can lead to significant data loss (up to hours of log
missing) right after rotation[0][1].

Technically, according to the cookbook even filehandler does not
support multiprocess logging[2].

Either way, we should at the very least warn that logrotate is a Bad
Idea in multi-workers scenario. Ideally we'd just fall back on regular
file/stream logging but that likely could & would break existing
deployments, so maybe implement that for master instead?

Alternatively: implement it properly in multi-worker scenario with
only the "root" process actually logging to whatever output was set
up, and all workers sending stuff to log to it via a queue or network
socket or w/e.

[0]
https://stackoverflow.com/questions/34186774/why-doesnt-timedrotatingfilehandler-work-properly-and-how-to-solve-this-issuer
[1] https://github.com/odoo/odoo/issues/16566
[2] https://docs.python.org/3/howto/logging-cookbook.html#logging-to-a-single-file-from-multiple-processes
2018-05-07 11:24:06 +02:00
Olivier Colson d13ce05c96 [FIX] account: use company currency in _compute_matched_percentage in case no currency is set on account.move
When a move or move line is supposed to use the company currency, its currency_id field is empty. _compute_matched_percentage did not take this into account, causing the rounding method to sometimes be called with a precision equal to False, resulting in erronous and weird behavior (0 was considered different from 0, causing a division by zero in the following condition).
2018-05-04 16:43:41 +02:00
Nicolas Lempereur f12daec1a1 [FIX] web: don't change page before saving
When we edit a list view and change page before the change has been
savec, the saving and page changing will be done concurrently thus
possibly causing an error if the page is changed before the saved is
finished: the save will try to modify the page that is no more
displayed.

In this change, the list view editable wait for the saving to be
finished before reloading its content.

note: for 9.0 up to saas-15

opw-1839149
closes #24471
2018-05-03 09:11:44 +02:00
Odoo Translation Bot 532b11ce41 [I18N] Update translation terms from Transifex 2018-05-01 02:39:26 +02:00
qsm-odoo ce6f8632cc [FIX] web_editor: update summernote copy-paste feature
The copy-paste feature of summernote was messy and led most of the time
to breaking the template you were trying to edit. While it is difficult
to solve as it mostly comes from the lib itself and that the lib is in
a complicated state as Odoo had to overridde part of its internal code
for its own purposes, this commit hopes to solve the problem by updating
only the copy-paste feature to the latest summernote version.

Of course, as summernote changed a lot meanwhile, it was not possible to
just take the up-to-date summernote file. This commit refactores the
up-to-date summernote clipboard code so that it fits the old summernote
version Odoo is using.

Note: the main problems occurred while using Windows/Mac and not Linux.

opw-1837818
2018-04-27 12:28:57 +02:00
Goffin Simon 409970c188 [FIX] payment: Error to get the default country for a partner
When there was no company_id in the context and the company with id=1
didn't exist it generated an error.

opw:1838932
2018-04-26 15:14:26 +02:00
qsm-odoo c9e7433c23 [FIX] web_editor: prevent crash on outside-iframe click
The editor is performing text selection check when clicking on the
window. However, when clicking outside the iframe an editor is running
in, a crash may occur as the editor was trying to check a range outside
of its environment (the iframe).

Related to opw-1837818
2018-04-23 12:56:34 +02:00
Stefan Rijnhart 04b0d761e4 [FIX] core: Validate custom views without an XML ID
Regression of fc91feda30

Closes #23646
Closes #23626
2018-04-23 10:27:40 +02:00
Christophe Simonis 3bee6ebb0a [FIX] core: effectively warn on invalid custom views
Since new-api migration of `ir.ui.view`, the method that check views
raises exceptions instead of returning a boolean. Show them as warning.

Related to #14521
2018-04-23 10:12:16 +02:00
Lucas Perais (lpe) cd6150fe9e [FIX] web: NFD UTF-8 for safari in upload file
Before this commit, when uploading a file as attachment in Safari,
The file icon kept on showing 'downloading' whereas the request was successful

This was because the return from the server had a different UTF-8 norm than Safari

After this commit, it works well

OPW 1836545
closes #24307
2018-04-23 09:00:11 +02:00
Olivier Dony b61aad2f6b [FIX] hr*: restrict personal employee fields at model level
Fixes #12077
Closes #12160
2018-04-19 18:51:01 +02:00
Alexandre Kühn cf163d19ee [FIX] board,web: edit custom views in place
Before this commit, whenever we do an operation on any of these custom views,
such as folding it, the custom view was saved by creating a new one.

This behaviour comes from a lost feature to undo operations on custom views.
Since we do not have this feature anymore, it makes no sense to create new
custom views on save, instead of applying the changes in place.

With this commit, custom views are edited in place.

Fixes #23712
2018-04-17 17:32:27 +02:00
Aaron Bohy 74e208eabf [FIX] base: export translations for added terms
in commit f27e86b
2018-04-17 15:36:05 +02:00
tgroutars f27e86bdde [FIX] base: no crash when setting wrong relation to m2m
Before this rev., in the ir.model.fields form view, it crashed
when the user specified an invalid model name as a relation for
fields of type many2many (the onchange crashed). This rev. displays
a warning instead.

opw 1837401
2018-04-17 14:46:54 +02:00
chirag 941ddaee74 [FIX] purchase: pickings stat button visibility
When you create a purchase order for a product of service type, the
picking stat button is displayed but there's no linked pickings. When
clicking on the stat button, all pickings were displayed, which is
wrong.

Issue:#9181
Task:#1817421
2018-04-16 14:23:49 +02:00
Christophe Simonis 752dcc761c [IMP] core: load geoip2 database by default 2018-04-16 11:20:39 +02:00
Christophe Simonis 264398de3e [IMP] website: handle geoip2 databases
Since April 1, 2018, free versions of GeoLite Legac y databases are no
longer updated and free downloads not available [1].

[1] https://support.maxmind.com/geolite-legacy-discontinuation-notice/
2018-04-16 11:20:39 +02:00
Adrien Dieudonne 8c0b23c239 [FIX] mrp: quick create bom on new mo
Before this commit, an error was raised when you tried to create a
new bill of material on a new manufacturing order.
In fact, the name_create RPC returned 'false' and slow_create()
wasn't executed.

By adding _rec_name (as in 10.0) on the corresponding model, the RPC
call will raise an error that will be caught by quick_create and
forces slow_create().

Closes #9761
2018-04-12 11:24:54 +02:00
Romain Derie c09b89596e [FIX] website: keep query strings when redirecting 'website.' page
Urls like `/page/website.XXX` are redirected to `/page/XXX`.

Before this commit, the redirection would not keep query strings:
`/page/website.XXX?rde=1` would redirect to `/page/XXX`.

Now, we keep the query strings:
`/page/website.XXX?rde=1` will redirect to `/page/XXX?rde=1`

Closes #24140

Courtesy of @MTantin
2018-04-11 15:04:24 +02:00
Joren Van Onder 7805825941 [FIX] pos_mercury: allow test transactions again
It used to be possible to run test transactions against mercurypay.com
using a regular swiper device, test credentials and test cards
provided by Mercury.

Mercury has recently disabled this saying this feature did not adhere
to certain PCI regulations.

It means that currently on the regular mercurypay.com network only
real cards (and thus real money) can be used.

Because we require a way to test without spending money this commit
allows to switch to the test network (mercurycert.net). It uses a
system parameter because we cannot introduce a Boolean on
pos_mercury.configuration in a stable release. It also changes the
test credentials to some that work on mercurycert.net.

Note that the regular 'production' swiper devices can not be used on
this test environment. This results in:

Error 004118: Failed to decrypt

The swiper contains embedded cryptographic keys specific to
mercury*pay*.net. Instead a specific 'development' swiper device with
embedded keys for mercurycert.net is required.

opw-1832156 (this is necessary to test that issue)
2018-04-10 12:05:00 -07:00
Goffin Simon ec7f88c334 [FIX] account_asset: Access error with shared product with deferred revenue
Steps to reproduce the bug:
-Let's consider a multicompany environment with company A and B
-Let's consider a shared product P for A and B
-P has a deferred revenue type D set on it
-D is defined in A
-Let's consider a user U in company B
-U creates a SO with P and try to generate the invoice

Bug:

A access error was raised because U is not allowed to see D and
D is needed to genrate the invoice.

opw:1825944
2018-04-09 14:47:31 +02:00
Goffin Simon 026781ec3e [FIX] account: Validating a statement with old posted moves
When validating a statement with old posted moves, the lock date
was checked by function, _check_lock_date and then it was impossible
to validate the statement even if all the moves were already posted.

Backport of this commit: 86a0d31251

opw:1830804
2018-04-09 14:33:29 +02:00
Romain Derie 27162b0e73 [FIX] website_blog: optimize crawler prevention
Commit d39856db prevents crawler to crawl and index blog tag URL which could
lead to possibly millions of URLs combinaison.

Still, it would crawl (but not index) second level of tags combinaison.

This commit ensure that crawling is prevented when already one tag on the URL.
2018-04-05 17:40:30 +02:00
Romain Derie d39856dbe8 [FIX] website_blog: prevent crawler on multiple blog tags page
Before this commit:
If a blog had multiple tags on the page, the crawler would click on every one
of them one after another until every tags combination got crawled.
With a lot of tags, this could result in million of URLs.

Now, we prevent URLs with more than one tag to be crawled.

Eg: With tags 'A', 'B', C':
/A
/A/B
/A/C
/A/B/C
/A/C/B

/B
/B/A
/B/C
/B/A/C
/B/C/A

/C
/C/A
/C/B
/C/A/B
/C/B/A
2018-04-05 16:55:58 +02:00
thomas-tankengine eaf54656fc [FIX] l10n_fr_pos_cert: set decorator on unlink
As unlink from models is still written in old API, needs to set the decorator to
avoid an error when trying to delete a bank statement

Closes #23999
2018-04-04 16:31:49 +02:00
tlemaire 7d2f082d80 [CLA] signature for Thomas Lemaire
Done at #23999
2018-04-04 16:31:48 +02:00
Denis Vermylen (dve) 9d95abd35c [FIX] theme_*: restore category to theme
category was changed to "Website" so it'd appear under the website
category in the store, but it needs to be "Theme" otherwise it doesn't
appear in the "Choose your theme" menu after installing website.

This is a backport of 10.0 https://github.com/odoo/odoo/commit/3d53a740

Without extra themes, the "Choose your theme" would be empty.

fixes #21898
opw-1802936
closes #24042
2018-04-04 16:18:29 +02:00
Bogdan Lisnenko df3192ef87 [FIX] l10n_ca: fixed account type in template
Canadian chart of account template contained incorrect account types for Tax receivable and Tax to pay.
This was fixed. Related issue #8934
2018-04-04 15:46:51 +02:00
mreficent bcad465c93 [FIX] purchase & stock_dropshipping: fix some tests
Related to commit https://github.com/odoo/odoo/commit/0e881fcd3a5671c4fe84b2a47c9d3611e4b823a1
2018-04-04 15:45:52 +02:00
Nicolas Lempereur cbff414cea [FIX] marketing_campaign: traceback on install 9.0
When installed, marketing_campaign shows the root "Marketing" menu by
default but this menu is not an action and just contain a
"Configuration" submenu without action as well.

Thus in community we got on a page without content, and on enterprise we
got a JS error.

note: only happen in 9.0

fixes #21898
opw-1802936
closes #24026
2018-04-04 09:59:37 +02:00
Priyanka Kakadiya d768964a37 [FIX] account_voucher: journal entry creation in multi-currency
When creating sales/purchase receipt for a journal having a secondary currency, an error was raised as the amount_currency had the wrong sign (compared to the debit/credit).

Was Issue #1819396. Was PR #23768
2018-04-03 09:32:43 +02:00
Odoo Translation Bot 89c46e7da6 [I18N] Update translation terms from Transifex 2018-04-01 02:39:07 +02:00
Laurent Smet 1631889e91 [ADD] account_cash_basis_base_account: add module to change the base amount account in tax cash basis entries
To be able to retrieve the base amount of cash basis taxes lines, additional journal items are created for the base as well in the journal entry generated by the payment.
However, these additional journal items debitting and creditting the same account are considered as pollution in reports.

This module and hook allow to move these additional lines to an another account, if needed.

    -task: https://www.odoo.com/web#id=35605&view_type=form&model=project.task&action=333&active_id=967&menu_id=4720
    Was PR #23349
2018-03-29 18:03:32 +02:00