Commit Graph
20 Commits
Author SHA1 Message Date
Aline Preillon 2950ffaa86 [IMP] mail: improve notification management, either email either inbox
Currently partners have a boolean field to choose whether to receive
notifications only in their Odoo inbox or to receive them in their inbox
and by email. This leads to several issues :

 * if a customer is configured to not receive emails he will not receive
   any notification on sales orders, leads, ... This is not clearly
   indicated to the salesman and it is not easy to know how to change
   that behavior
 * if an user chooses to receive emails and does not use its inbox a lot
   of notifications stay in Odoo. The user has to manually set them as
   done to make them disappear which is redundant.

This commit changes that behavior. From now on customers will always
receive all notifications by email. Indeed Odoo is not a customer oriented
mailbox. Moreover sales orders or discussions on leads send to customers
should always be sent by email as it is the standard communication
mechanism. Users will be able to choose to receive notifications in Odoo
or by email. The choice is no longer inbox or inbox + email, but inbox
or email. Choosing one option or the other one depends on the way the
user wants to work.

Technically the field is moved on the users model and selection keys
are renamed. Notification process is modified

 * notified_partner_ids contains as before specified recipients as well
   as followers matching the subtype
 * customers and users working with emails are notified. During that
   process customers notifications are marked as done to be able to
   track the email state without having needaction. Users notifications
   are currently deleted as we do not track their email state.

The removal of partner field implies changes in various addons that
define partner data with this field set in the values.
2017-02-21 16:42:11 +01:00
Raphael Collet 0783318f97 [FIX] adapt logger names 2016-09-02 17:28:13 +02:00
Thibault Delavallée c8a313d51e [IMP] various: use odoo for imports instead of openerp and update class names 2016-08-10 15:48:07 +02:00
Thibault Delavallée 912223e49d [REM] mail: remove dead code since new chatter
* mail_message.message_read() method is not used anymore since the chatter
  refactoring in v9. message_format() is used instead. Tests for this method
  are also removed, as they have no use anymore.
* mail_thread.message_set_read() is not used anymore. set_message_done is the
  only method used by the new chatter as there is no read state anymore.
* removed an unused parameter in set_message_done, by the way
2016-08-02 12:32:43 +02:00
Thibault Delavallée 88b8cd0587 [REF] mail: model update for NewChatter
Main changes :
- mail.notification model is removed. People do not receive notifications
anymore. Instead two ways of following documents exist
  - using a channel; messages will be displayed on the channel itself
  in a near future commit
  - following with its partner; messages will all be considered as
  needaction, using a new m2m table. People should receive less
  needaction messages by following less records by themselves.
There is no more read / unread state anymore. Instead only needaction
messages are considered. Todo (Favorites) messages still exist, and are
stores on a new m2m table instead of using decorated notifciations.
- the main filter for documents is not message_unread anymore, but
message_needaction. A lot of views and filters have been updated
accordingly.
- the vote feature has been removed
2015-08-21 12:11:56 +02:00
Thibault Delavallée d52bf613d6 [CLEAN] mail: tests: reduce a bit the boilerplate of tests to lessen
the testing time.
2015-07-09 11:13:03 +02:00
Thibault Delavallée 2c36354ca9 [RENAME] mail, website_mail, website_mail_group, various: mail.group
model has been renamed to mail.channel to prepare the slack modeling.

In future commits the mail.group model will be merged with the channel
model from im_chat. The first move is to rename mail.group into
mail.channel to have a model that will unite both features.
2015-07-09 11:12:50 +02:00
Christophe Simonis a304194936 [MERGE] forward port of branch saas-6 up to 81b5c60 2015-06-25 00:26:31 +02:00
Xavier Morel 11ba4689b1 [IMP] running speed of some tests & new testcase type
Some tests (e.g. mail) have expensive and significant DB setup for a
number of small and cheap tests. Using a TransactionCase, the DB setup
far dominates the tests themselves, by up to 10x (mail unit tests take
~130s on my machine, the tests themselves take ~15s).

The SavepointCase introduced here is an hybrid of SingleTransactionCase
and TransactionCase: it uses a single transaction for all tests in a
class, but each test case is isolated by a rollbacked savepoint. This
allows a common DB setup (via setUpClass) while keeping independent
tests.

TransactionCase should remain the primary test case superclass, but
SavepointCase can be a fair optimisation when setup costs far dominate.
2015-06-23 16:38:14 +02:00
Valerie Pirenne c24332e6da [IMP][ADD] mail, various: timeline view.
This commit introduces a new view type, the timeline view. This view is
intended to display messages like the previous chatter. This is now a view
like the form or list view. Like other views it will be possible to have
custom templates for some specific needs, allowing customization.

[IMP] mail: the value tracking is modified. Previously messages were created
containing the modified values. Those values are now stored, using a new
model mail.tracking.value. The message body is dynamically build based on
the values. Tests have been updated.

This version is temporary. Indeed two main modifications will come in a short
future :

 - the new design will improve the display
 - the slack mode will change the way the Inbox and notifications are managed

All glory to the Hypnotoad.

Special thanks to Valerie Pirenne (vpi), Jerome Maes (jem) and Richat Mathot
(rim) that did not code but said a lot of things. Martin Trigaux (mat) did
nothing, a bit like for the slides modules, but he is busy sending emails.
2015-05-21 12:10:25 +02:00
Thibault Delavallée 9d3a5ec72a [IMP][FIX] mail: tests: updated mute loggers (moved files) + added loggers were necessary. 2015-05-19 16:05:32 +02:00
Thibault Delavallée 4b122ad41d [MIGR] mail: migration to the new API 2015-04-27 10:36:15 +02:00
Jignesh Rathod b55969a577 [REF] mail: migrated tests to the new API and refactored them.
Tests have been migrated to the new api to prepare the migration of the
mail module itself. Moreover tests have been cleaned: redundant tests
and unnecessary tests have been removed.

As the base test class in mail is used in other addons, other addons
have been updated :
- portal
- project
- portal_project
- website_project_issue
- sale
- purchase

Future commits will come with somes fixes for issues detected when cleaning
the tests.
2015-03-24 10:18:16 +01:00
Raphael Collet cbe2dbb672 [MERGE] new v8 api by rco
A squashed merge is required as the conversion of the apiculture branch from
bzr to git was not correctly done. The git history contains irrelevant blobs
and commits. This branch brings a lot of changes and fixes, too many to list
exhaustively.

- New orm api, objects are now used instead of ids
- Environements to encapsulates cr uid context while maintaining backward compatibility
- Field compute attribute is a new object oriented way to define function fields
- Shared browse record cache
- New onchange protocol
- Optional copy flag on fields
- Documentation update
- Dead code cleanup
- Lots of fixes
2014-07-06 17:05:41 +02:00
Thibault Delavallée b35a44f66d [IMP] mail_mail, mail_message: various improvements to try to improve message creation time
Replaced some read by browse
Moved get_reply_to from mail_mail to mail_message
Hint: specifying email_from, reply_to help to enhance computation time

[REF] mail: cleaned some tests, renamed a file, moved mail_group tests into a dedicated file

bzr revid: tde@openerp.com-20130827133058-ko0g0ib0f0jihmdk
2013-08-27 15:30:58 +02:00
Thibault Delavallée da4dc767c4 [MERGE] Various fixes and improvements in mail.
IMP:
- mail.compose.message: added a context key 'mail_post_autofollow' that automatically subscribe the message recipients to the document followers, if any
- sale, purchase, invoice: recipients of 'Send by email' action are now automatically added as followers, using the above key
- mail: the Chatter widget on documents now sets the displayed messages as read
- mail: for incoming emails going through message_process that have an author, the author is added in the related document followers, if any
FIX:
- mail: attachments added in Chatter/Mailboxes were not added to the notifications emails send to followers/recipients
- portal: fixed various mail_mail created without specifying the type field, that could crash if a conflicting 'default_type' key was present in context (i.e. in opportunities)

bzr revid: tde@openerp.com-20121221131108-jx9jkeukjamnd3yh
2012-12-21 14:11:08 +01:00
Thibault Delavallée de64985e8c [IMP] mail_message: set_message_read and set_message_starred now have an argument to control the automatic notification creation. Chatter now calls set_message_read on received messages (on documents), to set them as read. This is therefore done independently of the message_read, to avoid writing in a read-based method. Added a mutex on the call on set_message_read, because of a recurrent concurrent accesses issue.
bzr revid: tde@openerp.com-20121220205328-gws2j32dsitofu89
2012-12-20 21:53:28 +01:00
Thibault Delavallée a8540c5b7e [REF] [FIX] mail: refactored auto-set read when viewing chatter widget. Added some tests. Also fixed a bug about message order with anybody else than admin.
bzr revid: tde@openerp.com-20121220142852-6sjk03791x829ys3
2012-12-20 15:28:52 +01:00
Thibault Delavallée 8dbf13a1e4 [MERGE] Merged branch holding the automatic set of notifications as read when viewing chatter.
bzr revid: tde@openerp.com-20121220133839-je1jt9ff4a0mfpxh
2012-12-20 14:38:39 +01:00
Thibault Delavallée db32d98b7a [REF] [TESTS] mail, portal: refactored a bit the various mail and invite tests: moved some tests into dedicated files, added some new tests, removed duplicates.
bzr revid: tde@openerp.com-20121211144650-kpy7noe082e3xvoo
2012-12-11 15:46:50 +01:00