Commit Graph
1782 Commits
Author SHA1 Message Date
dbh 22b91872ec [IMP] mail: add delay of 500ms to display the canned responses 2017-01-03 10:37:29 +01:00
Nicolas Lempereur 5d0b928544 [IMP] mail: don't clear undelivered chatter message
When a message is sent on the chatter and the call fails (for example
because of an internet connection failure), the message was still
cleared so the content was lost.

This change keep the same behavior for chat window and discuss, but
change the behavior in a chatter so the message is only cleared if the
rpc has passed.

closes #14759
opw-696971
2017-01-02 17:37:42 +01:00
qdp-odoo 4f29b77e3d [MERGE] foward port of 10.0 up to revision 84a650e33a 2016-12-30 17:21:25 +01:00
Thibault Delavallée 655c70319d [IMP] mail: hide Unsubscribe button in channels using group-based subscription
Group-based channels automatically add people belonging to user groups to the
channel. If a member leaves the channel he will be automatically added back
by the channel automatic subscription. This generates unnecessary changes and
messages in the channel.

We now prevent people from leaving group-based channels. All group members
have to be channel members. Unsubscribe buttons are therefore removed for
those channels.
2016-12-30 10:28:42 +01:00
Rohan Patel 4c04a723fb [FIX] mail: defined event other wise it will only works on chrome 2016-12-23 08:28:26 +01:00
Rohan Patel c9fa92a083 [IMP] mail: Add icon in chat windows to expand in discuss 2016-12-22 14:40:22 +01:00
Ravi Gadhia 87e457158e [IMP] crm, website_crm: replace support of activities
crm.lead model now supports activities. Filters have been added to ease
their management. Mail activities replace the old crm.activity model. All code
related to crm.activity is then removed, including views and custom widget.
Standard activities feature is now used widely in Odoo addons and replace
those custom activities.

A small update is required in website_crm_partner_assign. Now the portal user
can only update or create its own activities aka assigned to him. If he has
an activity assigned to him it is displayed in the opportunity website view.
If not editing the opportunity will create a new activity assigned to him.
2016-12-21 10:58:49 +01:00
Ravi Gadhia 60bacefd01 [IMP] mail: add activities allowing to define next actions on various models
This commit introduces generic activities to use in your addons. Activities are
actions user have to take on a document like making a phonecall or organizing
a meeting. Activities come with the mail module as they are integrated in the
Chatter but are not bundled with mail.thread.

New models are

 * mail.activity.type: used to categorize activities. Each type is a different
   kind of activity e.g. call, mail, meeting. An activity can be generic i.e.
   available for all models using activities; or specific to a model in which
   case res_model_id field should be used.
 * mail.activity: an actual activity to perform. Activities are linked to
   documents using res_id and res_model_id fields. Activities have a deadline
   that can be used in kanban view to display a status. Once done activities
   are unlinked and a message is posted. This message has a new activity_type_id
   field that indicates the activity linked to the message.

This commit introduces a mail.activity mixin to use in various addons that
enables the activities feature. It works like the mail.thread mixin. It defines
a activity_ids one2many field toward activities using res_id and res_model_id.
Various related / computed fields are also added to have a global status of
activities on documents.

Activities come with a new JS widget for the form view. It is integrated in the
Chatter widget although it is a separate widget. It displays activities linked
to the current record and allow to schedule, edit and mark done activities.
Use widget="mail_activity" on activity_ids field in form view to use it.

There is also a kanban widget defined. It defines a small widget to integrate
in kanban vignettes. It allow to manage activities directly from the kanban
view. Use widget="kanban_activity" on activitiy_ids field in kanban view to
use it.

Next commits will aim at integrating activities inside main Odoo addons.

Thanks to R&D India for their work and testing on this task. Thanks to belgian
Usabiliteam for reviewing and testing it. Thanks to @jem-odoo for the final
review. May his soul lie in peace with the trumpets of paradise.
2016-12-21 10:56:15 +01:00
fwi-odoo 34b7fd833c [IMP] web: allow mentioning people right after inviting them
Before this commit, the list of channel members is fetched once, and never reloaded.
So, when a new member is invited, he cannot be mentionned by the autocompletion.
With this commit, we remove the 'members_deferred' from the channel,
which will cause the member list to be refetched next time it is needed.
2016-12-15 11:15:04 +01:00
Christophe Simonis b33f919e3d [MERGE] forward port branch 10.0 up to aec8e25 2016-12-06 17:38:40 +01:00
Christophe Simonis aec8e2582f [MERGE] forward port branch saas-11 up to 345755e 2016-12-06 17:24:37 +01:00
Christophe Simonis 5301951931 [MERGE] forward port branch 9.0 up to 1f3f155 2016-12-06 15:18:45 +01:00
Martin Trigaux 1f3f155a05 [FIX] mail: pass the missing context
session.context no longer exists, it is session.user_context

Add the missing context in the message_fetch call. The dates in the chatter were
not formatted according the user locale.
2016-12-06 11:50:36 +01:00
Martin Trigaux 91139b483a [FIX] mail: untranslated message subtypes
The tacked messages in the chatter were parially translated.
e.g. "Lead created"
The call did not gave the user context and the subtype message was not
translated.

Closes #14589
2016-12-06 11:45:08 +01:00
Nicolas Lempereur 83956d4c49 [IMP] mail: keep multiple spaces in chatter and chat
In chat window, a chatter and discuss, the text zone appear as a pure
text zone but is transformed later on in HTML to add mentions links and
possibly other features.

Thus, when we wrote multiple spaces or a space at the next to html tag,
with how html worked they were collpased into one (or zero).

To keep them, we need to wrap the content with `<pre />` tag or replace
spaces with `&nbsp;`.

closes #14593
opw-695535
2016-12-05 16:53:04 +01:00
fwi-odoo 96b9d28351 [FIX] mail: add filter to see messages where user is mentioned
We add the filter during the instantiation of the search view by the "Discuss" client action
because we can't access the partner_id in the xml filter definition.
2016-11-23 16:08:16 +01:00
Christophe Simonis dece72d010 [MERGE] forward port branch saas-12 up to ca20038 2016-11-15 13:58:55 +01:00
Fabien Meghazi ff56304f58 [FIX] chat_manager: urls does not render as html link in front-end livechat (opw: 693457)
This fix is only intended for saas-12, do not forward port.
A better refactoring should be done on master to properly fix this issue
2016-11-10 13:58:25 +01:00
Fabien Meghazi 3f9d229cca [IMP] mail.utils: refactor url to link helper so it can be used on a str 2016-11-10 13:58:25 +01:00
Christophe Simonis 3d085f632d [MERGE] forward port branch saas-12 up to 6386037 2016-11-08 15:01:20 +01:00
Christophe Simonis 63860373ac [MERGE] forward port branch saas-11 up to c19f546 2016-11-08 14:43:28 +01:00
Christophe Simonis c19f546505 [MERGE] forward port branch 9.0 up to b795755 2016-11-08 14:20:07 +01:00
Christophe Matthieu a8e79e960a [FIX] bus,im_odoo_support, web*: fix various memory leaks
* Tip are never destroyed when change view mode
* unbind methods
* mail: memory leak with unbind methods
* web: memory leak because 'ui-autocomplete' is never destroyed
* web_editor: memory leak for wrong unbind on destroy
* web: memory leak: must remove fileupload handler
* bus: memory leak: correctly debind handlers on window in bus.Bus
* remove handlers on switch buttons and views $buttons
* remove handlers on breadcrumbs
* web: memory leak: correctly debind handlers
* im_odoo_support: memory leak: remove fileupload handler odoo_support

Note: part of this commit was actually authored by aab
2016-11-04 14:07:35 +01:00
qsm-odoo d632236c9c [FIX] mail: open follower menu to the right to prevent screen overflow 2016-11-03 09:54:29 +01:00
Christophe Simonis 3bb022d57c [MERGE] forward port branch saas-12 up to 6f8e40c 2016-10-27 18:17:59 +02:00
Christophe Simonis 6f8e40cdec [MERGE] forward port branch saas-11 up to 1304d13 2016-10-27 17:55:47 +02:00
Christophe Simonis 1304d13c7f [MERGE] forward port branch 9.0 up to 25616b9 2016-10-27 17:35:49 +02:00
Nicolas Lempereur b4d5246545 [IMP] mail: no jump for chatter show older messages
When clicking on "Show older messages" in the bottom of the chatter, the
page would jump to the top when the additional messages are loaded.

There is already a functionality in a discuss channel to stay at the
previous scrolling position (related to the content) :

 https://github.com/odoo/odoo/blob/ffe0db0d/addons/mail/static/src/js/client_action.js#L506-L521

This fix does the same steps for the chatter.

opw-692010
2016-10-27 10:31:48 +02:00
Denis Ledoux 60a59b607a [FIX] mail: handle undefined customer_email_data
`customer_email_data` can be undefined.
It must therefore be checked before testing
its length

e.g. use the /helpdesk command with an anonymous visitor
of the livechat

opw-690301
2016-10-05 16:46:55 +02:00
Christophe Simonis c813dbf068 [MERGE] forward port branch saas-12 up to 84429ab 2016-09-30 17:21:34 +02:00
Christophe Simonis 84429ab984 [MERGE] forward port branch saas-11 up to 9048865 2016-09-30 16:07:07 +02:00
Thibault Delavallée 8acd298a56 [FIX][IMP] mail: make tracking great again
When changing tracking mecanism in v9 'always' tracked fields lost their meaning.
They were managed like 'onchange' fields. This commit sets the old behavior back.

 * 'onchange' fields are displayed in tracking every time they change
 * 'always' fields are displayed in tracking every time they change or whenever
   other tracking exist; those are used to display some contextual
   information
2016-09-30 14:39:31 +02:00
Aaron Bohy 66cb0d7aa3 [IMP] mail,web,web_planner: order of systray items
Sort systray items by sequence to allow, e.g. to force the planner item to
be the left-most item of the systray as it is not displayed in all apps, and
thus produces a flickering of the other items.

Also invert the push order of the two mail items to keep the previous order
as they are now prepended instead of appended.
2016-09-28 16:55:51 +02:00
Laurent Smet 7d3c8437af [FIX] discuss: supress the star button on '/help' bot. (#13626)
A traceback was generated when starring the '/help' bot.

opw-681626
2016-09-28 16:22:58 +02:00
Thibault Delavallée 0da908db83 [FIX] mail: fix error when calling channel_invite when inviting someone on a channel 2016-09-13 11:04:14 +02:00
Christophe Simonis 298e2032ea [MERGE] forward port branch saas-12 up to 9f28139 2016-09-09 18:13:31 +02:00
Christophe Simonis 7a02b90e17 [MERGE] forward port branch saas-11 up to dc4d6b6 2016-09-09 15:43:06 +02:00
Christophe Simonis dc4d6b6a7a [MERGE] forward port branch saas-10 up to e1bd405 2016-09-09 15:14:39 +02:00
Christophe Simonis e1bd405d8c [MERGE] forward port branch 9.0 up to af87c57 2016-09-09 11:49:48 +02:00
Nicolas Martinelli 502f22e2ba [FIX] mail: link in chat messages
Commit f30ec302 defines the messages sent thanks to the channels as
plain text. This is true for all cases but one: the notification
(e.g. @user). Therefore, the notifications links are broken.

opw-687781
2016-09-06 10:52:53 +02:00
Damien Bouvy 29d8576b0a [FIX] mail: remove duplicate code
There already is a redirect implementation in the chat_manager
which closely matches the on_redirect implementation in chatter.js,
however the former has the advantage of calling get_formview_id
to ensure that the view is correct.

This fixes a faulty behaviour when some models are referenced from
chatter message using data attribute data-oe-model and data-oe-id.
For example, linking invoices in the chatter would always open them
with the 'vendor invoice' view; from this revision on the correct
view will be used (assuming get_formview_id is implemented on the
model).

The default behaviour of the chat_manager when a user clicks on a
partner record is to open a channel if the partner has a user then
return a callback passed as a parameter (usually to open the channel
as a popup or in the discuss app). To keep the old behaviour
of the chatter followers list widget (i.e. open the partner form
when clicking on a follower), a small change has to be made on the
redirect implementation: when no callback is provided, do not create
the channel (instead a returning an empty callback).
2016-09-06 08:52:57 +02:00
Thibault Delavallée 72dfcae2a4 [IMP] mail: improve notification management for customers
Currently it is impossible in Discuss to know whether an email has been sent
to a customer and whether it failed or bounced. A notified partner has an
entry in the needaction m2m table. In this commit we decorate this table to
add fields about the email notification: is an email sent, did it failed, did
it bounce.

This information is kept only for customers. Internal users does not use this
information. Moreover their notification is deleted once the message is read
in the Chatter. This avoids having a notification table that grows quickly.

Chatter now holds a new icon for email details. It allows to know on a thread
status of emails sent to customers.
2016-09-01 12:57:56 +02:00
Christophe Simonis f4738e7bb5 [MERGE] forward port branch saas-12 up to 78e9c7f 2016-08-26 18:06:17 +02:00
Christophe Simonis de0d503421 [MERGE] forward port branch saas-11 up to f0c8224 2016-08-26 16:59:45 +02:00
Christophe Simonis 717a4a51a5 [MERGE] forward port branch saas-10 up to 7a4116c 2016-08-26 14:57:43 +02:00
Christophe Simonis 5c2025a3af [MERGE] forward port branch 9.0 up to c578fb7 2016-08-25 18:23:47 +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
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
Yannick Tivisse 78c215a923 [IMP] mail: Don't display '(no email address)' for suggested partners
remove the '(no email address)' when no address email. Because when you send
the message, a popup appears with the email field required.
2016-08-23 10:34:43 +02:00
Yannick Tivisse 8c91d690f0 [FIX] mail: Don't display follower settings (fa-cog) if not follower on the record
Y
2016-08-18 17:53:22 +02:00