Commit Graph
104325 Commits
Author SHA1 Message Date
Pierre Masereel 4ccc1f9bc8 [FIX] website_sale_digital: fix attachments stat button domain
Due to a syntax error in the domain of product attachement
a traceback was given.
2016-08-25 16:44:30 +02:00
Christophe Simonis c578fb792c [FIX] website_blog: read field from browserecord 2016-08-25 16:28:11 +02:00
Yannick Tivisse ce4d207741 [MERGE] hr_expense: Usability review + Mail gateway integration with alias_contacs + Fixes
Merge branch 'saas-12-expense-fixes-yti' into saas-12
2016-08-25 16:13:04 +02:00
Yannick Tivisse 3b5d6da5c1 [FIX] hr_expense: Solve several usability issues on the flow
Review the subtypes
===================

- Add a subtype for the paid expenses
- Correct subtypes wording

Prevent expense report for several employees
============================================

- Can add lines from every employee, leading to account issues (payable / receivable)
  Raise an error if you try to report several expenses for different employees

Don't track onchanges on journal_id
===================================

- Expense Sheet, click on Post Journal Entries: you have 2 produced messages, and
  one is strange (Journal Entry: * 1 ?)

Remove useless message on chatter
=================================

- Remove the message to say that the expense report has been validated by ...
  It's redundant as the visibility tracker already logs this change

Remove unused method
====================

- 'refuse_expense_sheets' is declared but never used

Log a link to the payment on chatter
====================================

Expense Sheet, click on Register Payment: you have a message containing the
payment name (SUPP.OUT/2016/0001). Add a link to the form view.

Expense duplication
===================

Do not copy 'sheet_id' on duplication. It's wrong and has as secondary effect
to duplicate the state too.

Expense Report tree view
========================

Display correctly the widget monetary
2016-08-25 16:06:44 +02:00
Yannick Tivisse 47728ccd40 [FIX] hr, hr_expense: Allow employees to send emails to aliases
New feature in mail module
==========================

Currently, an email can be sent to an alias from:
- Everyone
- Authenticated Partners
- Followers

This commit is intended to add another category: Employees
The main purpose of this new feature is to allow employees to send an email
to an 'expense' alias in order to create automatically their expenses with
their mobile phones.

Use this new mechanism in hr_expense
====================================

Currenlty, we're overriding message_new to make a security check and create
an expense if the sender is an employee or bounce otherwise, which is not the
correct way to achieve this. A better way is to use the alias mechanism now
that it has been extended to employees too.

Don't hardcode email_from
=========================

The email_from of the bounce email is hardcoded to "help@odoo.com". I am sure
they will be happy to receive all answers from any odoo instance

Review the bounce email content
===============================

content: Your expense has not been created because your email address is not set
on an employee or on a employee's user. Configure your employee's information correctly and try again.
-> this is a message for the admin, not an employee or anyone else

Now the content is generical for aliase defined for employees.
2016-08-25 14:55:08 +02:00
Yannick Tivisse 920b791ac5 [FIX] hr_employee: Don't create expenses from every email address
This is simply useless and the open door to spam. The inital goal for this
option was to be able to create an expense from any email in the onboarding.
It was even commented with 'Don't use this in production' which is another
point to remove it.

It is wrong because:
- In a saas instance, the employee email = the admin email = the email you
  entered while filling the form. So, if the user sends an email with his phone,
  the expense will be created. If the user sends an email with another email address
  then the expense won't be created but he'll receive an automated email explaining
  that he should register his email address either on it's user information or on it's
  employee information (professional on employee, private on user for example).
- With this modified behavior, if no email address is matching the sender email address
  the system will create an expense with the-first-employee-linked-to-an-user as employee,
  which is totally wrong. Furthermore, the guy that sent the email will not see the created
  expense because it hasn't been assigned to him.
- Everyone can create expenses, I don't even imagine how fast we can overload the database
  with a huge pile of crap
2016-08-25 14:55:08 +02:00
Yannick Tivisse 1bf327d985 [IMP] hr_expense: Reorganize menuitems usability wise 2016-08-25 14:55:08 +02:00
xmo-odoo 0a02325cd7 [FIX] web_kanban: value not in selection states
Non-required selection fields and incorrectly updated fields (e.g.
changed options but didn't fix existing values) trips KanbanSelection
badly leading to the entire kanban view failing to appear: the rendering
phase does not find the state in its states list and blows up when
trying to access the state's class.

Fix by adding a fallback default state with an empty class.
2016-08-25 14:54:46 +02:00
Martin Trigaux cb0484d562 [FIX] Update Arabic translation terms from Transifex
To correct wrong %s translations.
Fixes #13281
2016-08-25 14:50:29 +02:00
Christophe Simonis 942f288273 [MERGE] forward port branch saas-6 up to f1cb517 2016-08-25 12:45:04 +02:00
Christophe Simonis f1cb5179fc [MERGE] forward port branch 8.0 up to c7d9695 2016-08-25 11:07:14 +02:00
Christophe Simonis c7d9695f52 [MERGE] forward port branch 7.0 up to b431e6c 2016-08-25 11:02:01 +02:00
Wolfgang Taferner a2fa7ec75f [FIX] Remove useless nested class as it breaks compilation 2016-08-25 10:46:48 +02:00
Martin Trigaux 4cb2dc6d71 [FIX] web_graph: no label for ungrouped pie chart
When a pie chart has no grouping selected, the label was "undefined" (the
javascript variable). Replace by the already translated string "Undefined".

Fixes #13288
2016-08-25 10:39:39 +02:00
Denis Ledoux e123d16e52 [FIX] sale: fix sales team Invoiced this month field
Exclude purchases invoices from the `invoiced` field
of `crm.team`, as this count is meant to sum
the invoiced - sales - order of a sales team.

opw-686732
2016-08-24 18:21:22 +02:00
Nicolas Martinelli 438a3742e2 [FIX] account: traceback
There are 6 parameters but only 5 '%s'

opw-686787
2016-08-24 15:14:29 +02:00
Christophe Simonis 7ca170b511 [FIX] ir_qweb: handle inline css in assets 2016-08-24 12:49:11 +02:00
qsm-odoo 5578d6c79c [FIX] web_tour: prevent crash when checking if trigger "html" is visible
The previous implementation took the parent of the element to begin
the check, which was wrong when the initial element was the html root.

This commit changes the method to a recursive implementation, which is
clearer.
2016-08-24 12:31:52 +02:00
Jeremy Kersten e310d9e1b3 [TYPO] rating: typo in end user view 2016-08-24 12:22:26 +02:00
Jeremy Kersten abf17354f8 [FIX] account: remove domain that depend of purchase when not installed
This commit avoid a traceback when you open the form account_invoice_line
for a supllier invoice without having installed purchase.

The fields_view_get method add domain with purchase_ok field, but this
field can be missing on the model product.template because purchase is not
a dependence of account.

Invalid field 'purchase_ok' in leaf "<osv.ExtendedLeaf:
('purchase_ok', '=', True) on product_product

In stable version, the best fix found, is to remove the domain.
But we need to fix it in master, moving this field from purchase module to
product module. (odoo/odoo##13271)

This commit closes #13268 and closes #315 for stable version.
Todo: merge odoo/odoo#13271 in master (@qdp-odoo agreement)
2016-08-24 12:21:48 +02:00
Yannick Tivisse 0460299549 [FIX] base: Always call '_update_user_groups_view' when updating a res_group
Since abdca55ea2, the call to '_update_user_groups_view' if made only if the category_id is modified on a res_group. This method is re-computing the xml for the group_ids on res_user form view. This modification is wrong because:

- If the name or the share fields are modified too, the view should be recomputed too.
- It introduce a bug which is the following. When creating a new instance with no demo data, the method is not called and the group_ids field is still displayed as a one2many of the res_groups instead of the prettier way to display the information we're used to.
2016-08-24 11:51:15 +02:00
Nicolas Martinelli f30ec3022e [FIX] mail: link in livechat
When a user sends a link thanks to the livechat, the link is not
clickable is the recipient is on the frontend (e.g. visitor of the
website). On the other hand, a link sent from the frontend to the
backend works.

This is because the message is sent as "html" from the backend,
therefore no link conversion is done during the post-process of the
massege (method `message_post`).

Note that a link sent and received in the backend works because
additional formatting is done (convert emojis, add links...).

opw-686063
2016-08-24 11:25:34 +02:00
Joren Van Onder cae2c74985 [FIX] website_{payment,portal_sale}: move code depending on sale
From website_payment to website_portal_sale.
2016-08-24 11:19:15 +02:00
Goffin Simon ce5b802df6 [FIX] hr_holidays: undisplay refuse leaves on dashboard
The refuse leaves don't have display in the dashbord.

opw:685604
2016-08-24 09:36:40 +02:00
Nicolas Martinelli 9c67a0d1b7 [FIX] account_asset: partner must be a vendor
When creating an asset, there is no restriction on the partner. However,
there is a domain to explicitly restict the categories to the 'Purchase'
asset types. Therefre, the partner is always a vendor.

opw-686636
2016-08-24 08:51:33 +02:00
Nicolas Martinelli c4adc4a566 [FIX] website_event: ticket price
When a ticket is ordered, the price is always with format amount +
currency. However, it should match the standard format of the currency.

opw-682984
2016-08-24 08:49:54 +02:00
Nicolas Martinelli b81ed2fd01 [FIX] stock: package domain
When choosing a package for a pack operation, we should restrict the
packages to the ones which are actually available in the given
locations.

opw-684007
2016-08-24 08:48:23 +02:00
Jeremy Kersten 498b266f5c [ADD] base: add tests for mimetype detection 2016-08-23 22:30:18 +02:00
Jeremy Kersten 5a9e1af64a [FIX] base: improve last chance for detection of mimetype
Since we return nosniff header, we need to avoid the magic mimetype.

In case of picture in compute field (eg. image_small on product),there are
no mimetype saved in column, and impossible to detect it from name/extention
because url are like: /web/image/product.product/47/image_small.

So before to arbitrary return default_mimetype, we try to detect it from the
content itself.

This commit continue to fix odoo/odoo@13193
2016-08-23 21:09:20 +02:00
Jeremy Kersten 1b2dab3f50 [FIX] mail: preprocess tracking fields of type date/datetime only once
Before this commit, if a message thread was loaded 2 times, the first time
the date was well formatted, the second time that fail because momentjs cannot
parse the localized date from some locale.

Luckily, it was not bugged by default in english, because moment was able to
reparse a localized US date. But in some local as french, momentjs cannot parse
the localized date and return 'Invalid date'

Now, we move the code, to be processed only once by the chat manager, and not
in each process of the thread.

This commit closes issue #13258

Courtesy of @aab-odoo
2016-08-23 15:23:20 +02:00
Goffin Simon 6d4bb4f18c [FIX] website_portal: details of a contact
When changing the contact details of a partner which is a company contact,
all the fields related to the address must be set on the commercial partner.

The address displayed for a company contact is the address of the commercial
partner.

opw:686335
2016-08-23 14:49:57 +02:00
Goffin Simon 0b80da48b5 [FIX] hr_recruitment: Missing stage with department
When 'search_default_job_id' is in the context, the department set for
this job must be used to filter the right stages(_read_group_stage_ids).

opw:685896
2016-08-23 14:10:08 +02:00
Nicolas Martinelli d90f363253 [FIX] base: activate new currency
When the user clicks on "Activate here a new currency...", it opens a
pop-up with the list of currencies. However, there is no pager for such
a list view, and not all currencies are accessible.

opw-686626
2016-08-23 13:29:21 +02:00
Yannick Tivisse 2ab7d92c82 [FIX] website_quote: Set correct access right on 'Edit' and 'Update' buttons
The frontend buttons to edit and update an online quotation in backend should be accessible for sale officers, not website publishers.
2016-08-23 12:03:13 +02:00
Christophe Simonis 0175d5b9d7 [IMP] base: remove merge_states method on res.partner.state model
This function attempted to deduplicate states with same code in order
to force the unique constraint creation. This is the job of a migration
script and should not be execute at each update.
Moreover, the current implementation is flawed and may lead to crash in
some situations.
2016-08-23 11:24:41 +02:00
Martin Trigaux fceba5df8c [FIX] account: remove duplicated term in .pot£ 2016-08-23 10:58:36 +02:00
Freeman Helmuth 6715df7b94 [CLA] corporate signature for Pine View Buildings
Closes #13144
2016-08-23 10:48:31 +02:00
Damien Bouvy dc975f3b0b [FIX] pos: group pos entries by tax
When posting POS entries with the "group entries" option set on that
pos config (which is the default), it is possible to have bad net
amounts in the tax report because taxes are not used as a grouping
parameter, allowing the system to potentially group pos order lines
which have different taxes together.

Also, take into account the fiscal position set on each order when
creating the move lines (the correct tax for a line is a compute field,
so this commit may actually cause some performance degradation for big
pos sessions).

Amends 150bf7d

opw-686168
2016-08-22 17:21:07 +02:00
Jeremy Kersten 97b702a7b0 [FIX] web: fix mimetype for content_image
Since the commit odoo/odoo@36e875e which disable the second-guess from browser,
IE cannot display picture from Odoo where mimetype is wrong.
Before this commit, IE and probably other browser which one respect the header
'nosniff' don't display picture not_found and resized picutre via controller if
the original was not of type 'png'.

Eg: when we return the placholder 'not_found' if you don't have permission,
or when your resize the picture, ... we need to force the mime-type with the
new one and not keep the original mimetype.

This commit closes #13193
2016-08-22 16:25:52 +02:00
Nicolas Martinelli 2ab68047c1 [FIX] payment_paypal: missing Paypal link
When an invoice is sent by email, the Paypal link is not included,
although it is in the template.

This is because the `paypal_url` field has gone missing after Accounting
refactoring.

opw-686216
2016-08-22 14:28:10 +02:00
Martin Trigaux 133da17faa [I18N] update saas-12 translations by merging 9.0 and master
1. export saas-12 sources terms into .pot files
2. msgcat odoo-9 .po & odoo-master .po into saas-12 .po files
3. msgmerge saas-12 .po with saas-12 .pot files to keep relevant terms
2016-08-22 14:16:52 +02:00
Jairo Llopis 4faed0b792 [FIX] website_blog: fix pager when existing filters in url
Go to a URL such as `/blog/our-news-1?date_begin=2015-01-01`
Now click on page 2.

Without this patch you will go to `/blog/our-news-1?date_begin=2015-01-01/page/2`.
With this patch, you will go to `/blog/our-news-1/page/2?date_begin=2015-01-01`.

This commit closes #13206
2016-08-22 10:30:56 +02:00
Nicolas Martinelli b4b04c9eb7 [FIX] mrp: BoM Structure report
When printing a BoM Structure report, the quantitites are not multiplied
down the line. For example, the BoM for Products 0 and 1:

Product 0
   8 Units of Product 1

Product 1
   1 Unit of Product 2a
   2 Units of Product 2b

When printing the BoM Structure of Product 0, it shows:
Product 0
   8 Units of Product 1
       1 Unit of Product 2a
       2 Units of Product 2b

It should be:
Product 0
   8 Units of Product 1
       8 Unit of Product 2a
       16 Units of Product 2b

opw-686167
2016-08-22 10:13:22 +02:00
Nicolas Martinelli 2c0cae221a [FIX] stock_account: raise error when valuation is zero
Commit ddbe0e1 introduces an error when the user tries to move a product
with a cost of zero. In extreme case, this is incompatible with commit
262d98b. For example, if one buys 10000 units for 17.60, and consumes one
unit at a time. The latter commit will split the quants in:
- 9999 quants at cost zero
- 1 quant at cost 17.60
This is the only solution to get a correct accounting.

However, that creates quants with a cost of zero, which therefore cannot
be moved anymore (consumed in MRP or sold).

We restrict the warning to products configured with "Standard Price".
Indeed, in this configuration, it is very lokely that the user made a
mistake / forgot to define the price of the product.

opw-686301
2016-08-22 08:22:08 +02:00
Odoo Translation Bot 29f5719254 [I18N] Update translation terms from Transifex 2016-08-21 03:05:30 +02:00
Odoo Translation Bot 43aee6db75 [I18N] Update translation terms from Transifex 2016-08-21 00:40:51 +02:00
Christophe Simonis 9ad5f26b3f [MERGE] forward port branch saas-11 up to 3a2147d 2016-08-20 17:18:31 +02:00
Christophe Simonis 3a2147d95c [MERGE] forward port branch saas-10 up to bc1a0a3 2016-08-20 16:57:36 +02:00
Jeremy Kersten 54e4f3f96b [FIX] web: allow to use content_disposable without registry
When a user connect to /web/database/manager directly without the
login page before, the request don't have registry.
When the user click to backup a db, a traceback was raised:
    return request.registry['ir.http'].content_disposition(filename)
    TypeError: 'NoneType' object has no attribute 'getitem'
Because it was impossible to call content_diposable from ir_http
without registry.

Now content disposable has been moved in http.py and is callable from
anywhere.

This commit closes #13192
This commit closes #11583
2016-08-19 18:31:01 +02:00
Josse Colpaert c3665fb5c9 [FIX] mrp_mps, product: we need to be able to calculate stock in the past for the MPS
When calculating the stock quantity fields, we can put a
from/to_date in the context.  This should work in the past too.
We see the to_date as the date in the past to calculate and calculate
backwards from the stock now to the date in the past.
This is done by doing an extra read_group on the stock moves,
with a similar domain except that it takes the moves done from
date_to.
2016-08-19 17:16:18 +02:00