diff --git a/addons/mail/doc/changelog.rst b/addons/mail/doc/changelog.rst
deleted file mode 100644
index 5eee5f136a6..00000000000
--- a/addons/mail/doc/changelog.rst
+++ /dev/null
@@ -1,26 +0,0 @@
-.. _changelog:
-
-Changelog
-=========
-
-`trunk (saas-2)`
-----------------
-
- - ``mass_mailing_campaign`` update
-
- - ``mail_mail`: moved ``reply_to`` computation from ``mail_mail`` to ``mail_message``
- where it belongs, as the field is located onto the ``mail_message`` model.
- - ``mail_compose_message``: template rendering is now done in batch. Each template
- is rendered for all res_ids, instead of all templates one id at a time.
- - ``mail_thread``: to ease inheritance, processing of routes is now done in
- message_route_process, called in message_route
-
- - added support of ``active_domain`` form context, coming from the list view.
- When checking the header hook, the mass mailing will be done on all records
- matching the ``active_domain``.
- - added ``mail_server_id`` to mail_message, removing it from mail_mail. This allows
- to set the preferred mail server to use for notifications emails, when using
- templates.
- - added ``_mail_post_access`` attribute that specifies the access right that
- should have the user in order to post a new message on a given model. Values
- are ``read`` (portal documents), ``write`` (default value), ``unlink`` or ``create``.
diff --git a/addons/mail/doc/index.rst b/addons/mail/doc/index.rst
deleted file mode 100644
index 033b1241af6..00000000000
--- a/addons/mail/doc/index.rst
+++ /dev/null
@@ -1,12 +0,0 @@
-Mail module documentation
-=========================
-
-The Mail module holds all models and logic related to messages management. At low-level, it handles messages and offers an API to message queues for email sending. At an higher level, it provides the OpenChatter feature that is a thread management system inside OpenERP. A model that inherits from the mail module adds OpenChatter to its document. Its gives them the following capabilities :
-
- - messages management with a threaded design
- - subscription mechanism tha allow users to follow/unfollow documents
- - notifications mechanism; notifications are pushed to users to form a Wall page holding the latest pushed messages
-
-The mail module also comes with an email composition wizard, along with discussion groups.
-
-.. include:: index.rst.inc
diff --git a/addons/mail/doc/index.rst.inc b/addons/mail/doc/index.rst.inc
deleted file mode 100644
index 7f56666336b..00000000000
--- a/addons/mail/doc/index.rst.inc
+++ /dev/null
@@ -1,23 +0,0 @@
-
-Mail Module documentation topics
-'''''''''''''''''''''''''''''''''
-
-.. toctree::
- :maxdepth: 1
-
- mail_message
- mail_thread
- mail_openchatter_howto
- mail_needaction_howto
- mail_partner
- mail_state
- mail_subtype
-
-
-Changelog
-'''''''''
-
-.. toctree::
- :maxdepth: 1
-
- changelog.rst
diff --git a/addons/mail/doc/mail_message.rst b/addons/mail/doc/mail_message.rst
deleted file mode 100644
index de58b3bebf2..00000000000
--- a/addons/mail/doc/mail_message.rst
+++ /dev/null
@@ -1,111 +0,0 @@
-.. _mail_message:
-
-mail.message
-============
-
-Models
-++++++
-
-``mail.message`` is a class for holding the main attributes of a message object
-(notification for system message, reciving email message or sent messages). It
-could be reused as parent model for any database model, wall thread view, or
-wizard screen that needs to hold a kind of message.
-
-All internal logic should be in a database-based model while this model
-holds the basics of a message. For example, a wizard for writing emails
-should inherit from this class.
-
-
-.. versionchanged:: 7.0
-
-ClientAction (ir.actions.client)
-++++++++++++++++++++++++++++++++
-
-.. code-block:: xml
-
-
- Inbox
- mail.wall
- mail.message
-
-
-
-
-
- - ``tag`` : 'mail.wall', 'mail_thread' or 'mail.widget'
- 'mail.wall' to have a display like the mail wall with threads, title, search view
- (default value like a wall)
- 'mail_thread' widget for field on standard view. (default value like a thread for
- record, view on flat mode, no reply, no read/unread)
- 'mail.widget' it's the root thread, used by 'mail.wall' and 'mail_thread'
-
- - ``help`` : Text HTML to display if there are no message
- - ``context`` : insert 'default_model' and 'default_res_id'
- - ``params`` : options for the widget
- - ``domain`` : choose the domain of the messages
- - ``truncate_limit`` : {Number} number of character to display before having a "show more"
- link; note that the text will not be truncated if it does not have 110% of the parameter
- - ``show_record_name`` : {Boolean} display the name and link of the related record
- - ``show_reply_button`` : {Boolean} display the reply button
- - ``show_read_unread_button`` : {Boolean} display the read/unread button
- - ``display_indented_thread`` : {int [0,1]} number thread level to indented threads.
- - ``show_compose_message`` : display the composer on top thread
- - ``show_compact_message`` : display the compact message on the thread when the user clic
- on this compact mode, the composer is open
- - ``message_ids`` : {Array | False} List of ids to fetch by the root thread. If no value,
- the root search the message by the domain
- - ``compose_placeholder`` : Message to display on the textareaboxes.
- - ``show_link`` : Display partner (authors, followers...) on link or not
- - ``compose_as_todo`` : The root composer mark automatically the message as todo
- - ``readonly`` : Read only mode, hide all action buttons and composer
-
-Fields
-++++++
-
- - ``type`` : usually 'email', 'comment', 'notification'.
- Message type: email for external email message recieve, notification for system
- message, comment for other messages such as user replies.
- - ``subtype_id`` :
- Subtype of the notification for system message. The users can followe a document
- and choose the subtype of this document (eg: Create, Comment, Done).
- You can defined new subtypes and choose his name, by agreement the id begin by "mt\_" on the model
- "mail.message.subtype".
- - ``partner_ids`` :
- List of recipients, the recipients have this message in their personal mailboxe.
- - ``notified_partner_ids`` :
- Partners that have a notification pushing this message in their mailboxes. Usualy
- it's an automatic system message for a model followed by users.
- - ``notification_ids`` :
- Technical field holding the message notifications. Use notified_partner_ids to access
- notified partners.
- - ``attachment_ids`` :
- List of attachments
- - ``parent_id`` :
- It's the initial thread message. It's use for group message by thread in mailboxes.
- - ``child_ids`` :
- List of child message linked to the initial thread message.
- - ``model`` :
- Related Document Moded. It's use for group message by document.
- - ``res_id`` :
- Related Document ID. It's use for group message by document.
- - ``record_name`` :
- Functionnal field use to get the name of related document.
- - ``vote_user_ids`` :
- List of partner that vote/like this message.
- - ``to_read`` :
- Functional field to search for messages the current user has to read. The messages as
- treat like a need action. When the user recive a message (to_read = True) this message
- or action must be performed and mark done (to_read = False)
- - ``favorite_user_ids`` :
- Users that set this message in their favorites/todo list.
-
-Methods
-+++++++
-
- - ``message_read`` :
- Value: ids, domain, message_unload_ids, thread_level, context, parent_id, limit
- Return: List of dictinary of message. All message is sent with their parented messages and
- sort by id. The messages that the user can read but not in his search, are group in
- expandable messages. The expandable messages contain the domain to expand.
- - ``check_access_rule`` :
- Overwrite the initial message for this model.
diff --git a/addons/mail/doc/mail_needaction_howto.rst b/addons/mail/doc/mail_needaction_howto.rst
deleted file mode 100644
index 8cb41cee374..00000000000
--- a/addons/mail/doc/mail_needaction_howto.rst
+++ /dev/null
@@ -1,15 +0,0 @@
-
-How to use the need action mechanism in my addon
-=================================================
-
-Make your module inheriting from ir.needaction_mixin class
-
-Feature integration
-++++++++++++++++++++
-
-::
-
- class my_module(osv.osv):
- _name = "my.module"
- _description = "My Module"
- _inherit = ['ir.needaction_mixin']
diff --git a/addons/mail/doc/mail_openchatter_howto.rst b/addons/mail/doc/mail_openchatter_howto.rst
deleted file mode 100644
index f8b4fd98934..00000000000
--- a/addons/mail/doc/mail_openchatter_howto.rst
+++ /dev/null
@@ -1,112 +0,0 @@
-
-How to use OpenChatter in my addon
-===================================
-
-Running example
-++++++++++++++++
-
-A small my_task model will be used as example to explain how to use the
-OpenChatter feature. Being simple, it has only the following fields:
-
-- a name
-- a task responsible
-- a related project
-
-::
-
- class my_task(osv.osv):
- _name = "my.task"
- _description = "My Task"
- _columns = {
- 'name': fields.char('Name', required=True, size=64),
- 'user_id':fields.many2one('res.users', string='Responsible',
- ondelete='cascade', required=True, select=1),
- 'project_id':fields.many2one('project.project', string='Related project',
- ondelete='cascade', required=True, select=1),
- }
-
-
-Two-lines feature integration
-++++++++++++++++++++++++++++++
-
-Make your object inherit from :class:`mail.thread`::
-
- class my_task(osv.osv):
- _name = "my.task"
- _description = "My Task"
- # inherit from mail.thread allows the use of OpenChatter
- _inherit = ['mail.thread']
-
-Use the thread viewer widget inside your form view by using the mail_thread
-widget on the message_ids field inherited from :class:`mail.thread`::
-
-
- My Task
- my.task
- 1
-
-
-
-
-
-Send notifications
-+++++++++++++++++++
-
-When sending a notification is required in your workflow or business logic,
-use :meth:`mail.thread.message_post`. It will automatically take care of
-subscriptions and notifications.
-
-Here is a small example of sending a notification when the ``do_something``
-method is called::
-
- def do_something(self, cr, uid, ids, context=None):
- self.do_something_send_note(cr, uid, ids, context=context)
- return res
-
- def do_something_send_note(self, cr, uid, ids, context=None):
- self.message_post(
- cr, uid, ids, _('My subject'),
- _("has received a notification and is happy for it."),
- context=context)
-
-Notifications guidelines
-+++++++++++++++++++++++++
-
-- avoid unnecessary content, swamping users with irrelevant messages will lead
- to them ignoring all messages
-- use short sentences
-- do not include the document name, this is done by the thread widget
-- use a simple and clean style
-
- - html tags are supported: use or mainly
- - put key word(s) in bold
- - avoid fancy styles that will break the OpenERP look and feel
-- create a separate method for sending your notification, use clear method
- names allowing quickly spotting notification code e.g. name notification
- methods by using the original method name postfixed by ``_send_note``
- (``do_something`` -> ``do_something_send_note``)
-
-Subscription management
-++++++++++++++++++++++++
-
-The default subscription behavior is the following:
-
-* Subscriptions are set up by creating a :class:`mail.followers`` entry
-* If a user creates or updates a document, they automatically follow it. The
- corresponding :class:`mail.followers` entry is created
-* If a user explicitly cliks on the document's :guilabel:`Follow` button,
- they follow the document. The corresponding :class:`mail.followers` entry
- is created
-* If a user explicitly clicks on the document's :guilabel:`Unfollow` button,
- they stop following the document. The corresponding :class:`mail.followers`
- entry is deleted
-
-You should not directly manipulate :class:`mail.followers` entry, if you need
-to override the default subscription behavior you should override the relevant
-:class:`mail.thread` methods.
-
-.. TODO: wtf are the relevant mail.thread methds? message_get_subscribers
- has disappeared and nothing looks like a replacement
diff --git a/addons/mail/doc/mail_partner.rst b/addons/mail/doc/mail_partner.rst
deleted file mode 100644
index a99246395d7..00000000000
--- a/addons/mail/doc/mail_partner.rst
+++ /dev/null
@@ -1,10 +0,0 @@
-What is shown
-==============
- - for every module which are related to partner show apporopriate message in the partner view like opportunities, sale orders and invoices.
-
-
-How it is done
-===============
- - _inherit = 'mail.thread'
-
- - Override def message_load_ids(self, cr, uid, ids, limit=100, offset=0, domain=[], ascent=False, root_ids=[], context=None) search by the partner
diff --git a/addons/mail/doc/mail_state.rst b/addons/mail/doc/mail_state.rst
deleted file mode 100644
index cf1874ffca1..00000000000
--- a/addons/mail/doc/mail_state.rst
+++ /dev/null
@@ -1,28 +0,0 @@
-.. _mail_state:
-
-message_unread
-==============
-
-``message_unread`` is a boolean field that states whether the document
-has unread messages. In previous versions, some documents were going
-back to ``pending`` state when receiving an email through the mail
-gateway. Now the state related to messages differs from the state or
-stage of the document itself.
-
-message_unread and need action mechanism
-++++++++++++++++++++++++++++++++++++++++
-
-The ``mail`` module introduces a default behavior for the need_action
-mechanism [REF].
-
-::
-
- def get_needaction_user_ids(self, cr, uid, ids, context=None):
- """ Returns the user_ids that have to perform an action
- :return: dict { record_id: [user_ids], }
- """
- result = super(ir_needaction_mixin, self).get_needaction_user_ids(cr, uid, ids, context=context)
- for obj in self.browse(cr, uid, ids, context=context):
- if obj.message_unread == False and obj.user_id:
- result[obj.id].append(obj.user_id.id)
- return result
diff --git a/addons/mail/doc/mail_subtype.rst b/addons/mail/doc/mail_subtype.rst
deleted file mode 100644
index e63b67936cd..00000000000
--- a/addons/mail/doc/mail_subtype.rst
+++ /dev/null
@@ -1,70 +0,0 @@
-.. _mail_message_subtype:
-
-OpenChatter Pi (3.1415): Message Subtype
-========================================
-
- To overcome the problems of crowdy walls in system notification, We have added features of **Message Subtype** in mail.
-
-mail.message.subtype
-++++++++++++++++++++
-``mail.message.subtype`` has following fields:
-
- - ``Name``: fields.char(' Message Subtype ', size = 128,required = True,help = 'Subtype Of Message'),
- - ``model_ids``: fields.many2many('ir.model','mail_message_subtyp_message_rel','message_subtype_id', 'model_id', 'Model',help = "link some subtypes to several models, for projet/task"),
- - ``default``: fields.boolean('Default', help = "When subscribing to the document, users will receive by default messages related to this subtype unless they uncheck this subtype"),
-
-mail.followers
-++++++++++++++
-
-In ``mail.followers`` we have added additional many2many field subtype ids :
-
- - ``subtype_ids``: fields.many2many('mail.message.subtype','mail_message_subtyp_rel','subscription_id', 'subtype_id', 'Subtype',help = "linking some subscription to several subtype for projet/task")
-
-mail.message
-++++++++++++
-
-In mail_message we have added additional field subtype_id which Indicates the Type of Message
-
- - ``subtype_id``: fields.many2one('mail.message.subtype', 'Subtype')
-
-mail.thread
-+++++++++++
-
- - In **message_post** method add the *subtype_id* field as parameter and set as default subtype 'Other'.
-
- def message_post(self, cr, uid, thread_id, body='', subject=False, msg_type='notification', parent_id=False, attachments=None, subtype='other', context=None, ``**kwargs``):
-
- - In **message_subscribe** method add the *subtype_ids* field as parameter.In this method if subtype_ids is None, it fatch the default true subtypes in mail.message.subtypes otherwise pass selected subtypes.
- For update subtypes call **message_subscribe_udpate_subtypes** method
-
- def message_subscribe(self, cr, uid, ids, partner_ids,subtype_ids = None, context=None):
-
- - Add **message_subscribe_udpate_subtypes** method to update the subtype_ids in followers.
-
- def message_subscribe_udpate_subtypes(self, cr, uid, ids, user_id, subtype_ids,context=None):
- followers_obj = self.pool.get('mail.followers')
- followers_ids = followers_obj.search(cr, uid, [('res_model', '=', self._name), ('res_id', 'in', ids)])
- return followers_obj.write(cr, uid, followers_ids, {'subtype_ids': [(6, 0 , subtype_ids)]}, context = context)
-
-For Each Addons:
-++++++++++++++++
-
- - Add data of subtypes for each addons module.
- - Add subtype field as parameter in **message_post** Method for each addons module.
-
-How It Works:
-+++++++++++++
-
- - In addons module when we Follow a Perticular document It display under the followers button.
- - In sybtypes there are 3 default subtypes for each addons
- 1) Email
- 2) Comment
- 3) Other
- - In document display a default subtypes(which are true) related a perticular model_ids wise.
-
- Example:-
- If I have open crm.lead, It display only subtypes of crm.lead
-
- - When we select subtype it update subtype_ids(which are checked) in mail.follower where match res_model & res_id of the current documents.
- - when message created update subtype_id of that message in mail.message.
- - In Feeds display only those notifications of documents which subtypes are selected
diff --git a/addons/mail/doc/mail_thread.rst b/addons/mail/doc/mail_thread.rst
deleted file mode 100644
index 9a59b7c967c..00000000000
--- a/addons/mail/doc/mail_thread.rst
+++ /dev/null
@@ -1,53 +0,0 @@
-.. _mail_thread:
-
-===========================
-mail.thread and OpenChatter
-===========================
-
-API
-===
-
-Writing messages and notifications
-----------------------------------
-
-``message_append``
-
-Creates a new mail.message through message_create. The new message is attached
-to the current mail.thread, containing all the details passed as parameters.
-All attachments will be attached to the thread record as well as to the
-actual message.
-
-This method calls message_create that will handle management of subscription
-and notifications, and effectively create the message.
-
-If ``email_from`` is not set or ``type`` not set as 'email', a note message
-is created (comment or system notification), without the usual envelope
-attributes (sender, recipients, etc.).
-
-mail.group
-++++++++++
-
-A mail_group is a collection of users sharing messages in a discussion group. Group users are users that follow the mail group, using the subscription/follow mechanism of OpenSocial. A mail group has nothing in common wih res.users.group.
-Additional information on fields:
-
- - ``member_ids``: user member of the groups are calculated with ``message_get_subscribers`` method from mail.thread
- - ``member_count``: calculated with member_ids
- - ``is_subscriber``: calculated with member_ids
-
-res.users
-+++++++++
-
-OpenChatter updates the res.users class:
- - it adds a preference about sending emails when receiving a notification
- - make a new user follow itself automatically
- - create a welcome message when creating a new user, to make his arrival in OpenERP more friendly
-
-
-Misc magic context keys
-+++++++++++++++++++++++
-
- - mail_create_nosubscribe: when creating a new record that inherit from mail_thread,
- do not subscribe the creator to the document followers
- - mail_create_nolog: do not log creation message
- - mail_notify_noemail: do not send email notifications; partners to notify are
- notified, i.e. a mail_notification is created, but no email is actually send
diff --git a/addons/mail/doc/tracked_field.rst b/addons/mail/doc/tracked_field.rst
deleted file mode 100644
index 8d06ae1fa41..00000000000
--- a/addons/mail/doc/tracked_field.rst
+++ /dev/null
@@ -1,18 +0,0 @@
-Tracked fields
----------------
-Tracked fields is generic logging system for the changes applied to some fields in open chatter.
- - In the definition of a fields. you have to simply add tracked=True.
- - When changing one of the fields having tracked=True on saved automatically write a log in openchatter for the changes in fields.
-
-How it works:
-+++++++++++++
- - You have to add tracked=True in field defination as following.
- - ``'stage_id': fields.many2one('project.task.type', 'Stage',tracked=True),``
- - For developed this feature we override write method of mail_thread.
- - And make one mako template which shows old field and updated field.
-
-Open chatter log:
-+++++++++++++++++
- - After changing field follower can show log of tracked field in open chatter as followed.
- - Updated Fields:
- - Stage: Analysis -> Specification
\ No newline at end of file