Commit Graph
99796 Commits
Author SHA1 Message Date
Aaron Bohy 3f1ef1f11d [FIX] im_livechat: prevent starting multiple poll
bus.poll() should be a private function, as it initializes a new longpolling.
Only bus.start_polling() should be called as it prevents running multiple
polls concurrently.

On the website, bus.poll() was called each time the user clicked on the
livechat button, blocking the whole UI if the user clicked 6 times in a row on
that button, as only 6 RPCs can be done concurrently.

A consequence of this fix is that the poll isn't restarted if the user opens
a new livechat session just after closing one, so the messages sent through
that session are delayed (~50 seconds). To circumvent this situation, we simply
don't restore the livechat button after closing a livechat session (the button
re-appears anyway at the next click, or after a refresh).
2015-12-07 16:32:28 +01:00
Géry Debongnie ce65e897f9 [FIX] bus: prevent crosstab bus from longpolling on init
only need to longpoll after start_polling...
2015-12-07 16:32:28 +01:00
Aaron Bohy 169f819ab1 [FIX] mail: read more: prevent default
Long messages are not displayed entirely, but a 'read more' button is displayed
and allows to show the whole message. This button is an <a> inside a <span>,
both having classname 'oe_mail_expand'. Also note that messages are html, not
plain text.

Sometimes, the long message is truncated at some point that the 'read more' is
inserted inside an <a>, which is not html valid (nested links). In this case,
the browser automatically moves the inner <a> out of the outer one.

Unfortunately, when that happens, clicking on 'read more' redirects to the app
switcher because of missing prevent_default(), as the event handler was bound
on the <span> clicked, not the inner <a>.

This rev. simply binds the handler on 'oe_mail_expand', not specifically on
its <span>.
2015-12-07 16:32:27 +01:00
Aaron Bohy 88c5a90677 [FIX] mail: allow users to unsubscribe from private channels
Before this rev., only the root user was allowed to do so, because some
operations were performed on the channel just after the user had been
unsubscribed (to trigger the unsubscribe notification on the bus, and to post
the 'left channel' message).
2015-12-07 16:32:27 +01:00
Aaron Bohy 77acb57e55 [FIX] mail: correctly increment channels' unread counter
When several channels followed the same document, and a message was sent in
this document, the unread counter of each channel was incremented by the number
of following channels (because as many notifications were sent on the bus, and
for each notification, we incremented the unread_counter of the channels in
which the corresponding message is posted).

This rev. makes sure to only increment the unread counter once, if the message
is not yet in the JS cache, i.e. if this is the first notification we receive
for this message.
2015-12-07 16:32:27 +01:00
Richard Mathot 030ba411a2 [REV 2394d267fe.
Merged too fast. Sorry for the disturbance.
2015-12-07 16:31:41 +01:00
Martin Geubelle 2394d267fe [FIX] delivery: add delivery cost on SO on transfer
The delivery cost was only added if the delivery type was not fixed or base_on_rule. This distinction has not place in the code.
2015-12-07 16:29:08 +01:00
Martin Geubelle a2b94b0b6d [FIX] delivery: add carrier_price on picking
Carrier price is now copied to the picking from the sales order in all
cases. Before this commit, delivery grids were ignored.
2015-12-07 16:26:52 +01:00
Géry Debongnie 27a455fc92 [IMP] mail: various improvement
- don't display subject for messages coming from chatter
- better tooltip on the leave channel button in client action sidebar
- don't squash nearby messages in chatter
- reduce margin of date separator in chat windows
2015-12-07 16:14:46 +01:00
Géry Debongnie 60c1b51c44 [FIX] web_kanban: correctly sets dataset ids in grouped view
When the kanban view is grouped, it did not correctly set the ids of the
dataset.  Consequently, the user could find himself in some weird
situation, such as having X issues visible in a kanban view (typically
grouped with a custom filter), then clicking on it, and arriving in a
form view with Y issues, and X != Y.
2015-12-07 16:11:55 +01:00
Christophe Simonis 520243b3cb [FIX] base: force update of groups
Groups *need* to be updated when upgrading from previous versions to
reflect the new group inheritance.
2015-12-07 15:53:08 +01:00
Olivier Dony b25800403e [FIX] crm: saleperson m2o should not be a selection widget
There could be thousands of users so a fixed selection widget
is unusable (no search, fixed length, etc.)
2015-12-07 13:19:10 +01:00
Olivier Dony a8c253e337 [FIX] hr_expense: display latest expenses on top (was the case pre-9.0) 2015-12-06 23:49:47 +01:00
Odoo Translation Bot 8e7417ffa6 [I18N] Update translation terms from Transifex 2015-12-06 01:28:23 +01:00
Thibault Delavallée c711f3d897 [FIX] hr_holidays: display latest leaves first 2015-12-04 17:56:08 +01:00
Nicolas Lempereur 09411a4a50 [FIX] website_forum: add summernote for non designer
In saas-6 the editor assets were always included, in 9.0 only for
designer but if website_forum is installed it should also be included.

fixes #9402
closes #9852

note: should not be forward ported after saas-8
2015-12-04 11:47:26 +01:00
pvy 81467d5600 [FIX] reports: add utf-8 encoding to the minimal layout 2015-12-04 10:30:16 +01:00
Martin Trigaux 463044a8db [I18N] Update translation terms from Transifex
Manual sync to fix errors due to bad translation of &lt;!DOCTYPE html&gt;
making it impossible to use Odoo
2015-12-04 09:08:30 +01:00
Christophe Simonis 3d1f1d6c28 [FIX] hr: Only show Employee's tags to HR Users
Keep the same behavior as 8.0
2015-12-03 20:08:54 +01:00
Olivier Dony 049c1c4e7a [FIX] hr_recruitment: no crash when default stage not found 2015-12-03 19:14:05 +01:00
Christophe Simonis 5fb29dedd1 [FIX] hr_recruitement: correct search of default stage on applicants 2015-12-03 19:00:19 +01:00
Denis Ledoux a6ad7b9b25 [FIX] point_of_sale: units decimals
The decimal precision displayed for the quantities
should be the same in the point of sale interface
and in the back-end.

Besides, the decimal precision of the pos order lines
quantity should be the same than the decimal
precision of the sale order lines quantity.

opw-657591
2015-12-03 18:16:12 +01:00
qdp-odoo e69affec98 [FIX] account: removed readonly=1 on fields tax_ids and tax_line_id of account.move.line object (moved to the views, so that men can import the accounting items and provide those fields) 2015-12-03 17:46:19 +01:00
qdp-odoo debb541148 [FIX] account, customer statement report: filter out the lines with debit=credit=0 (were valid in previous versions) and the lines belonging to another company than the one of the current user 2015-12-03 17:46:18 +01:00
Aaron Bohy f09ca9c777 [FIX] mail: followers: display followers and fetch subtypes
This commit fixes two bugs on followers:
- when landing on a form view, the followers' dropdown is now correctly filled
- when editing the subtypes of a follower while not being ourself a follower,
  the subtypes are now correctly displayed in the modal.
2015-12-03 16:13:40 +01:00
Géry Debongnie b6a4e43c02 [FIX] mail: fix full composer messages
Full composer messages were not loaded in the chatter when sent.  We
lost that functionality sometimes in the previous months.  This commit
makes it work properly again.

Some refactoring were required, we needed a way to load messages with a
given res_id and model.
2015-12-03 15:50:02 +01:00
Nicolas Martinelli 0644cfc543 [FIX] mail: message not found
message_ids contains the ids of all the messages. However, a maximum of
100 messages are fetched when a page is open, and therefore some
messages might not be found in the JS cache. This leads to
message.is_needaction throwing an exception.

This fix returns True if the message is not found. It means that the
message will be set as 'read' even if it is not displayed.

opw-657896
2015-12-03 15:31:18 +01:00
Olivier Dony 02766b3fba [FIX] ir.translation: no crash when reading translations of obsolete fields
As of 2ba2cbca5f, accessing
the translation of a field that does not exist anymore would
crash if the model still exists.
2015-12-03 15:26:28 +01:00
qsm-odoo 8c0b755841 [IMP] web: return file content for url attachments
URL attachments are now returned as data and not redirection.
If the url does not match with a module file, the 301 status
(redirection) is still returned.

This allows to use the /web/image/<xmlid>/<dimension> route
and get an image attachment with correct dimensions.
2015-12-03 13:26:36 +01:00
Christophe Matthieu d1af67bf28 [FIX] web_editor: img classname is removed when change the url 2015-12-03 13:26:36 +01:00
eLBati 44ad6f37b1 [FIX] website_forum: Use sudo to send new question notification
Otherwise portal users can not access to some partners subscribed to the forum.
Closes #9855
2015-12-03 11:58:54 +01:00
Martin Trigaux 1441f0f25d [FIX] mrp: cost of produced quant as total cost of production
At the end of the production, the cost of produced product should be the total
cost of production (cost of components + worklogs) for real time product.
The previous behaviour was to take the standard price from the product which,
in real time product, is the last purchased price, which is 0 for manufactured
product.
opw 657419
2015-12-03 11:45:53 +01:00
Aaron Bohy 5fdfd38b7e [FIX] im_livechat: don't remove empty sessions created recently
The 'cron_remove_empty_session' is performed every day and removes livechat
channels that contain no message.

The problem was that the cron might have been executed between the moment a
public user clicked on the livechat button, creating a new empty channel, and
the moment this user sent the first message through that channel. If that
happenned, the message was sent in an unexisting channel, and obviously never
received by the operator.

This fix makes sure that removed empty channels haven't been created or
modified within the last hour.
2015-12-03 11:21:47 +01:00
Aaron Bohy 8017a9569c [FIX] mail: ondelete cascade on mail_channel_partner relation
The problem occurred when the im_livechat cron 'cron_remove_empty_session'
removed empty livechat channels (a public user clicked on the livechat button,
creating a new channel, but never sent any message in it). The empty channel
was deleted by the cron, but the two records in the mail_channel_partner
relation table (linking the channel with the public user and the livechat
operator) wasn't removed, and the value of their field 'channel_id' was None.

When this happenned, it broke the SQL query of 'channel_search_to_join()', the
RPC call performed when clicking on '+' new to public channels in the client
action, resulting in no result displayed in the dropdown.

With this fix, records in the relation table are automatically deleted when
their corresponding channel or partner is deleted.
2015-12-03 11:21:47 +01:00
Aaron Bohy 7bea8412c5 [FIX] mail: href of mention links in sent messages
Those messages can be read from the client action interface, where the onclick
redirection is properly handled, but they are also sent by email. The
generated links should thus have a correct href.
2015-12-03 11:21:47 +01:00
Aaron Bohy e7cb3dcaa8 [FIX] mail: don't redirect to user's own partner form view
Clicking on the author of a message opens a DM with the corresponding user if
there is one, and opens the corresponding partner's form view otherwise.

When the author is the current user, obviously we don't want to open a DM with
ourself, but we probably don't want to open our partner form view either, which
was exactly the behavior before this rev.
2015-12-03 11:21:47 +01:00
Aaron Bohy 33ac65c805 [FIX] mail: redirection handling in chat windows
- clicking on a channel mention (or a user) from a chat window opens a new chat
  window for that channel
- clicking on any other link in a chat window correctly opens the corresponding
  document

2 minor changes were required:
- use do_show() instead of on_reverse_breadcrumb() to update control panel and
  url in client action, as other actions can be stacked over the client action,
  e.g. by clicking on a document link in a chat window. In that case, the
  on_reverse_breadcrumb callback wouldn't be set, and thus the control panel and
  url wouldn't be updated by coming back to client action using the breadcrumbs.
- channel_join() now checks whether or not the channel has already been joined
  (i.e. if it is in the JS cache) before performing the RPC. This check was
  performed by each caller, so this simplifies the code.
2015-12-03 11:21:47 +01:00
Nicolas Martinelli 6e96da6255 [FIX] mrp_operations: product serial numbers
When raw materials of finished products are tracking with lot or serial
number, using the "Play" button on the work orders will never trigger
the pop-up asking for the numbers.

This fix prevents the MO to be set on "Done" if any product with
tracking activated is found. This will force the user to click on
"Produce" to finish the process, and therefore enter the serial numbers.

opw-657586
2015-12-03 10:57:33 +01:00
Denis Ledoux f07e0c1af2 [FIX] account: force amount_residual recomputation on post
The `amount_residual` computation depends on the fact
the `acccount_id` of the move line does allow reconciliation
or not. If it doesn't, the amount residual will always be 0.0.

So, if you check the "allow reconciliation" on the account
after creating the journal items or after changing the
debit/credit amount, the amount residual is not recomputed.

We do not set the `depends` directly on `account_id.reconcile`,
as, if we do, and a user checks/unchecks this box on an account
having a lot of records, this will recompute this residual
amount on all lines, and this is something we do not want
to happen.

The work-around when this case happens,
that the amount residual is not correct due to the fact
the `allow reconciliation` on the account
was checked after having posted the entry,
is to cancel the entry and repost it. This
will recompute the residual amount.

opw-656972
2015-12-03 10:54:24 +01:00
Cedric Snauwaert 120f6a7ea5 [FIX] account: fix incorrect value for company_residual_signed on invoice + set invoice in the journal currency and not in euro 2015-12-02 17:24:50 +01:00
qdp-odoo 7909a4409a [FIX] analytic: fixed name_search() on analytic account. The partner_id field is not mandatory, but the previous domain was making an inner join with the partner table, which resulted in not finding the accounts matching the search criteria on name/code if they hadn't a partner set. 2015-12-02 14:35:27 +01:00
Raphael Collet 5db0db924a [FIX] tools: make frozendict hashable on all kinds of write values
Specifically, fix the case of values like `[(0, 0, {...}), ...]`.
2015-12-02 14:10:33 +01:00
Nicolas Martinelli 26d3275b2d [FIX] crm: customer information visible
When an email is sent through the "Contact us" page, it triggers the
creation of a lead or an opportunity depending on group_use_lead. The
issue is that if group_use_lead is set to 0 ("Each mail sent to the
alias creates a new opportunity"), the user will never see the customer
information entered in the contact form such as the name.

It was therefore decided to make this tab visible even if the leads are
not used.

opw-657154
2015-12-02 13:40:17 +01:00
Yannick Tivisse f6713b420b [FIX] mail: Remove field 'chatter_needaction_auto' from the view as it's not used
anymwhere since the chatter refactor refactoring

It has been removed entirely in master at
https://github.com/odoo/odoo/commit/b278b2c431a1bb06627bbdc285263644049bb3b0
2015-12-02 13:17:04 +01:00
Géry Debongnie 2d2daccfba [FIX] mail: hide chatter when printing in browser
The chatter is not supposed to be visible when printing a form view.
2015-12-02 12:24:55 +01:00
Thibault Delavallée 21756eb55c [FIX] crm: sales team form view
Email alias is now visible in the form view. Indeed it is displayed in the
kanban view. However in order to edit it the user had to go into technical
group in the form view. This is confusing. Advanced alias configuration
is kept in technical group.
2015-12-02 11:36:01 +01:00
Thibault Delavallée 85ea9b48e8 [FIX] project: demo data
In project, stages are shared between projects. However demo projects do not
have any stage by default but stages are assigned to some random stages. This
leads to columns disappearing from the kanban view when there are no more
tasks or issues in it.

Also fixed the addition of followers in a demo project. Instead of hardcoding
the followers use a message_subscribe instead. It was impossible to reload
the project module before that fix.
2015-12-02 11:35:02 +01:00
Thibault Delavallée 2210a684e3 [FIX] project: project and stage views
project.project: alias should be visible without being in technical group.
Indeed the alias is displayed in the kanban view. However in order to edit
it the user has to go into technical mode, which is confusing. The alias
is now displayed in the form view, but advanced alias configuration is still
in technical group.

project.stage: show projects using the stage. Without that field it is quite
impossible to configure the use of stages in the project application.
2015-12-02 11:34:03 +01:00
Fabien Pinckaers 5b60e05ce4 [IMP] im_livechat: rating on a week
Percentage of happy customers should be computed over the last week.
2015-12-02 11:33:59 +01:00
Géry Debongnie f58450dbe9 [FIX] web_kanban: properly removes nvd3 tooltips
with the recent update of nvd3 to the last version, we fixed a lot of
tooltip issues, but we introduced at least a new problem:  when a view
is detached from the dom with a visible tooltip, it no longer is cleaned
up.

In this commit, we simply remove all nvtooltips when we detach a kanban
view (necessary because dashboards inherits from kanban).  This is not
really an elegant way to solve the issue, but at least it works.  any
improvement is welcome.
2015-12-02 11:13:22 +01:00