[IMP] mail_follower: unique field widget, sub-types on click

bzr revid: chm@openerp.com-20120924095616-keuji387bvy6pmcs
This commit is contained in:
Christophe Matthieu 2012-09-24 11:56:16 +02:00
parent 267fdcff2f
commit f47111449c
33 changed files with 101 additions and 211 deletions

View File

@ -278,11 +278,7 @@
</notebook>
</sheet>
<div class="oe_chatter">
<field name="message_is_follower" invisible="1"/>
<field name="message_ids" widget="mail_thread"/>
<!-- Invisible fields used in chatter widgets -->
<field name="message_subtype_data" invisible="True"/>
<field name="message_is_follower" invisible="True"/>
<field name="message_follower_ids" widget="mail_followers"/>
</div>
</form>
@ -441,11 +437,7 @@
</notebook>
</sheet>
<div class="oe_chatter">
<field name="message_is_follower" invisible="1"/>
<field name="message_ids" colspan="4" widget="mail_thread" nolabel="1"/>
<!-- Invisible fields used in chatter widgets -->
<field name="message_subtype_data" invisible="True"/>
<field name="message_is_follower" invisible="True"/>
<field name="message_follower_ids" widget="mail_followers"/>
</div>
</form>

View File

@ -108,11 +108,7 @@
</notebook>
</sheet>
<div class="oe_chatter">
<field name="message_is_follower" invisible="1"/>
<field name="message_ids" widget="mail_thread"/>
<!-- Invisible fields used in chatter widgets -->
<field name="message_subtype_data" invisible="True"/>
<field name="message_is_follower" invisible="True"/>
<field name="message_follower_ids" widget="mail_followers"/>
</div>
</form>

View File

@ -239,11 +239,7 @@
</notebook>
</sheet>
<div class="oe_chatter">
<field name="message_is_follower" invisible="1"/>
<field name="message_ids" widget="mail_thread"/>
<!-- Invisible fields used in chatter widgets -->
<field name="message_subtype_data" invisible="True"/>
<field name="message_is_follower" invisible="True"/>
<field name="message_follower_ids" widget="mail_followers"/>
</div>
</form>
@ -412,11 +408,7 @@
</notebook>
</sheet>
<div class="oe_chatter">
<field name="message_is_follower" invisible="1"/>
<field name="message_ids" widget="mail_thread"/>
<!-- Invisible fields used in chatter widgets -->
<field name="message_subtype_data" invisible="True"/>
<field name="message_is_follower" invisible="True"/>
<field name="message_follower_ids" widget="mail_followers"/>
</div>
</form>

View File

@ -146,11 +146,7 @@
</notebook>
</sheet>
<div class="oe_chatter">
<field name="message_is_follower" invisible="1"/>
<field name="message_ids" widget="mail_thread"/>
<!-- Invisible fields used in chatter widgets -->
<field name="message_subtype_data" invisible="True"/>
<field name="message_is_follower" invisible="True"/>
<field name="message_follower_ids" widget="mail_followers"/>
</div>
</form>
@ -305,11 +301,7 @@
</notebook>
</sheet>
<div class="oe_chatter">
<field name="message_is_follower" invisible="1"/>
<field name="message_ids" widget="mail_thread"/>
<!-- Invisible fields used in chatter widgets -->
<field name="message_subtype_data" invisible="True"/>
<field name="message_is_follower" invisible="True"/>
<field name="message_follower_ids" widget="mail_followers"/>
</div>
</form>

View File

@ -53,11 +53,7 @@
</notebook>
</sheet>
<div class="oe_chatter">
<field name="message_is_follower" invisible="1"/>
<field name="message_ids" widget="mail_thread"/>
<!-- Invisible fields used in chatter widgets -->
<field name="message_subtype_data" invisible="True"/>
<field name="message_is_follower" invisible="True"/>
<field name="message_follower_ids" widget="mail_followers"/>
</div>
</form>

View File

@ -229,11 +229,7 @@
</notebook>
</sheet>
<div class="oe_chatter">
<field name="message_is_follower" invisible="1"/>
<field name="message_ids" widget="mail_thread"/>
<!-- Invisible fields used in chatter widgets -->
<field name="message_subtype_data" invisible="True"/>
<field name="message_is_follower" invisible="True"/>
<field name="message_follower_ids" widget="mail_followers"/>
</div>
</form>

View File

@ -223,11 +223,7 @@
</notebook>
</sheet>
<div class="oe_chatter">
<field name="message_is_follower" invisible="1"/>
<field name="message_ids" widget="mail_thread"/>
<!-- Invisible fields used in chatter widgets -->
<field name="message_subtype_data" invisible="True"/>
<field name="message_is_follower" invisible="True"/>
<field name="message_follower_ids" widget="mail_followers"/>
</div>
</form>
@ -529,11 +525,7 @@
</notebook>
</sheet>
<div class="oe_chatter">
<field name="message_is_follower" invisible="1"/>
<field name="message_ids" widget="mail_thread"/>
<!-- Invisible fields used in chatter widgets -->
<field name="message_subtype_data" invisible="True"/>
<field name="message_is_follower" invisible="True"/>
<field name="message_follower_ids" widget="mail_followers"/>
</div>
</form>

View File

@ -149,11 +149,7 @@
<field name="description" placeholder="Description..."/>
</sheet>
<div class="oe_chatter">
<field name="message_is_follower" invisible="1"/>
<field name="message_ids" widget="mail_thread"/>
<!-- Invisible fields used in chatter widgets -->
<field name="message_subtype_data" invisible="True"/>
<field name="message_is_follower" invisible="True"/>
<field name="message_follower_ids" widget="mail_followers"/>
</div>
</form>

View File

@ -181,11 +181,7 @@
</group>
</sheet>
<div class="oe_chatter">
<field name="message_is_follower" invisible="1"/>
<field name="message_ids" colspan="4" widget="mail_thread" nolabel="1"/>
<!-- Invisible fields used in chatter widgets -->
<field name="message_subtype_data" invisible="True"/>
<field name="message_is_follower" invisible="True"/>
<field name="message_follower_ids" widget="mail_followers"/>
</div>
</form>

View File

@ -99,11 +99,7 @@
</notebook>
</sheet>
<div class="oe_chatter">
<field name="message_is_follower" invisible="1"/>
<field name="message_ids" widget="mail_thread"/>
<!-- Invisible fields used in chatter widgets -->
<field name="message_subtype_data" invisible="True"/>
<field name="message_is_follower" invisible="True"/>
<field name="message_follower_ids" widget="mail_followers"/>
</div>
</form>

View File

@ -197,11 +197,7 @@
</notebook>
</sheet>
<div class="oe_chatter">
<field name="message_is_follower" invisible="1"/>
<field name="message_ids" colspan="4" widget="mail_thread" nolabel="1"/>
<!-- Invisible fields used in chatter widgets -->
<field name="message_subtype_data" invisible="True"/>
<field name="message_is_follower" invisible="True"/>
<field name="message_follower_ids" widget="mail_followers"/>
</div>
</form>
@ -483,11 +479,7 @@
</group>
</sheet>
<div class="oe_chatter">
<field name="message_is_follower" invisible="1"/>
<field name="message_ids" colspan="4" widget="mail_thread" nolabel="1"/>
<!-- Invisible fields used in chatter widgets -->
<field name="message_subtype_data" invisible="True"/>
<field name="message_is_follower" invisible="True"/>
<field name="message_follower_ids" widget="mail_followers"/>
</div>
</form>

View File

@ -139,11 +139,7 @@
</notebook>
</sheet>
<div class="oe_chatter">
<field name="message_is_follower" invisible="1"/>
<field name="message_ids" widget="mail_thread"/>
<!-- Invisible fields used in chatter widgets -->
<field name="message_subtype_data" invisible="True"/>
<field name="message_is_follower" invisible="True"/>
<field name="message_follower_ids" widget="mail_followers"/>
</div>
</form>

View File

@ -121,11 +121,7 @@
</group>
</sheet>
<div class="oe_chatter">
<field name="message_is_follower" invisible="1"/>
<field name="message_ids" colspan="4" widget="mail_thread" nolabel="1"/>
<!-- Invisible fields used in chatter widgets -->
<field name="message_subtype_data" invisible="True"/>
<field name="message_is_follower" invisible="True"/>
<field name="message_follower_ids" widget="mail_followers"/>
</div>
</form>
@ -162,11 +158,7 @@
<field name="notes" nolabel="1" colspan="4" placeholder="Add a reason..."/>
</sheet>
<div class="oe_chatter">
<field name="message_is_follower" invisible="1"/>
<field name="message_ids" colspan="4" widget="mail_thread" nolabel="1"/>
<!-- Invisible fields used in chatter widgets -->
<field name="message_subtype_data" invisible="True"/>
<field name="message_is_follower" invisible="True"/>
<field name="message_follower_ids" widget="mail_followers"/>
</div>
</form>

View File

@ -183,11 +183,7 @@
<field name="description" placeholder="Feedback of interviews..."/>
</sheet>
<div class="oe_chatter">
<field name="message_is_follower" invisible="1"/>
<field name="message_ids" widget="mail_thread"/>
<!-- Invisible fields used in chatter widgets -->
<field name="message_subtype_data" invisible="True"/>
<field name="message_is_follower" invisible="True"/>
<field name="message_follower_ids" widget="mail_followers"/>
</div>
</form>

View File

@ -77,11 +77,7 @@
<field name="description"/>
</sheet>
<div class="oe_chatter">
<field name="message_is_follower" invisible="1"/>
<field name="message_ids" widget="mail_thread"/>
<!-- Invisible fields used in chatter widgets -->
<field name="message_subtype_data" invisible="True"/>
<field name="message_is_follower" invisible="True"/>
<field name="message_follower_ids" widget="mail_followers"/>
</div>
</form>

View File

@ -15,12 +15,10 @@
<field name="priority" eval="10"/>
<field name="arch" type="xml">
<kanban>
<field name="message_is_follower"/>
<!-- Invisible fields used in chatter widgets -->
<field name="message_subtype_data" invisible="True"/>
<field name="message_is_follower" invisible="True"/>
<field name="message_follower_ids"/>
<field name="message_is_follower"/>
<field name="message_summary"/>
<field name="description"/>
<templates>
<t t-name="kanban-description">
<div class="oe_group_description" t-if="record.description.raw_value">
@ -84,12 +82,8 @@
</group>
</sheet>
<div class="oe_chatter">
<field name="message_is_follower" invisible="1"/>
<field name="message_ids" widget="mail_thread"
options='{"thread_level": 1}'/>
<!-- Invisible fields used in chatter widgets -->
<field name="message_subtype_data" invisible="True"/>
<field name="message_is_follower" invisible="True"/>
<field name="message_follower_ids" widget="mail_followers"/>
</div>
</form>

View File

@ -169,6 +169,7 @@ class mail_thread(osv.AbstractModel):
for subtype in fol.subtype_ids:
thread_subtype_dict[subtype.name]['followed'] = True
res[fol.res_id]['message_subtype_data'] = thread_subtype_dict
return res
def _search_unread(self, cr, uid, obj=None, name=None, domain=None, context=None):
@ -679,6 +680,11 @@ class mail_thread(osv.AbstractModel):
partner_ids = [user.partner_id.id for user in self.pool.get('res.users').browse(cr, uid, user_ids, context=context)]
return self.message_subscribe(cr, uid, ids, partner_ids, subtype_ids=subtype_ids, context=context)
def get_message_subtypes(self, cr, uid, ids, context=None):
""" message_subtype_data: data about document subtypes: which are
available, which are followed if any """
return self._get_subscription_data(cr, uid, ids, None, None, context=context)
def message_subscribe(self, cr, uid, ids, partner_ids, subtype_ids=None, context=None):
""" Add partners to the records followers. """
self.write(cr, uid, ids, {'message_follower_ids': [(4, pid) for pid in partner_ids]}, context=context)

View File

@ -9,12 +9,8 @@
<field name="arch" type="xml">
<xpath expr="//sheet" position="after">
<div class="oe_chatter">
<field name="message_is_follower" invisible="1"/>
<field name="message_ids" widget="mail_thread"
options='{"thread_level": 1}'/>
<!-- Invisible fields used in chatter widgets -->
<field name="message_subtype_data" invisible="True"/>
<field name="message_is_follower" invisible="True"/>
<field name="message_follower_ids" widget="mail_followers"/>
</div>
</xpath>

View File

@ -14,7 +14,6 @@
margin: 0;
}
/* ------------------------------------------------------------ */
/* Wall
/* ------------------------------------------------------------ */
@ -37,6 +36,29 @@
list-style-type: none;
}
/* ------------------------------------------------------------ */
/* Followers
/* ------------------------------------------------------------ */
.openerp div.oe_mail_recthread_aside h4 {
display: inline-block;
}
.openerp div.oe_mail_recthread_aside button {
position: relative;
}
.openerp div.oe_mail_recthread_aside label,
.openerp div.oe_mail_recthread_aside input {
cursor:pointer;
}
.openerp div.oe_mail_recthread_subtypes {
display:none;
}
.openerp div.oe_mail_recthread_aside button span {
position: absolute;
top:-7px;
right:5px;
}
/* Specific display of threads in the wall */
/* ------------------------------------------------------------ */
@ -113,15 +135,6 @@
margin-bottom: 8px;
}
/* ------------------------------------------------------------ */
/* Followers
/* ------------------------------------------------------------ */
.openerp div.oe_mail_recthread_aside h4 {
display: inline-block;
}
/* ------------------------------------------------------------ */
/* Thread
/* ------------------------------------------------------------ */

View File

@ -27,9 +27,9 @@ openerp_mail_followers = function(session, mail) {
this.options.image = this.node.attrs.image || 'image_small';
this.options.title = this.node.attrs.title || 'Followers';
this.ds_model = new session.web.DataSetSearch(this, this.view.model);
this.sub_model = new session.web.DataSetSearch(this,'mail.message.subtype')
this.sub_model = new session.web.DataSetSearch(this,'mail.message.subtype');
this.ds_follow = new session.web.DataSetSearch(this, this.field.relation);
this.follower_model = new session.web.DataSetSearch(this,'mail.followers')
this.follower_model = new session.web.DataSetSearch(this,'mail.followers');
},
start: function() {
@ -51,11 +51,12 @@ openerp_mail_followers = function(session, mail) {
bind_events: function() {
var self = this;
this.$el.find('button.oe_mail_button_unfollow').on('click', function () { self.do_unfollow(); })
.mouseover(function () { $(this).html('Unfollow').removeClass('oe_mail_button_mouseout').addClass('oe_mail_button_mouseover'); })
.mouseleave(function () { $(this).html('Following').removeClass('oe_mail_button_mouseover').addClass('oe_mail_button_mouseout'); });
this.$el.on('click', 'button.oe_mail_button_follow', function () { self.do_follow(); });
this.$el.on('click', 'ul.oe_mail_subtypes', function () {self.do_update_subscription(); })
this.$el.find('button.oe_mail_button_unfollow').on('click', function () { self.do_unfollow(); self.clear_subtypes(); })
.mouseover(function () { $(this).removeClass('oe_mail_button_mouseout').addClass('oe_mail_button_mouseover').find('p').html('Unfollow');})
.mouseleave(function () { $(this).removeClass('oe_mail_button_mouseover').addClass('oe_mail_button_mouseout').find('p').html('Following'); });
this.$el.on('click', 'button.oe_mail_button_follow', function () { self.do_follow(); self.clear_subtypes(); });
this.$el.on('click', 'ul.oe_mail_subtypes input', function () {self.do_update_subscription(); })
this.$el.on('click', 'button.oe_mail_button_invite', function(event) {
action = {
type: 'ir.actions.act_window',
@ -71,37 +72,34 @@ openerp_mail_followers = function(session, mail) {
}
self.do_action(action, function() { self.read_value(); });
});
this.$el.find('button span')
.click(function (e) { self.display_subtypes(); e.stopPropagation(); })
},
read_value: function() {
var self = this;
return this.ds_model.read_ids([this.view.datarecord.id], ['message_follower_ids', 'message_is_follower', 'message_subtype_data']).pipe(function (results) {
self.set_value(results[0].message_follower_ids, results[0].message_is_follower, results[0].message_subtype_data);
return this.ds_model.read_ids([this.view.datarecord.id], ['message_follower_ids']).pipe(function (results) {
self.set_value(results[0].message_follower_ids);
});
},
get_or_set: function(field_name, value) {
if (this.view.fields[field_name]) {
if (value !== undefined) {
this.view.fields[field_name].set_value(value);
}
return this.view.fields[field_name].get_value();
}
else {
return value;
}
set_value: function(value_) {
console.log("set_value", value_);
this.reinit();
return this.fetch_followers(value_ || this.get_value());
},
set_value: function(value_, message_is_follower_value_, message_subtype_data_value_) {
this.reinit();
if (! this.view.datarecord.id ||
session.web.BufferedDataSet.virtual_id_regex.test(this.view.datarecord.id)) {
this.$el.find('div.oe_mail_recthread_aside').hide();
return;
set_is_follower: function(value_) {
for(var i in value_){
if(value_[i]['user_ids'][0]==this.session.uid)
this.message_is_follower=true;
this.display_buttons();
return true;
}
this.message_is_follower_value_ = this.get_or_set('message_is_follower', message_is_follower_value_) || false;
this.message_subtype_data_value_ = this.get_or_set('message_subtype_data', message_subtype_data_value_) || {};
return this.fetch_followers(value_ || this.get_value());
this.message_is_follower=false;
this.display_buttons();
return false;
},
fetch_followers: function (value_, message_is_follower) {
@ -136,12 +134,11 @@ openerp_mail_followers = function(session, mail) {
record.avatar_url = mail.ChatterUtils.get_image(self.session, 'res.partner', 'image_small', record.id);
$(session.web.qweb.render('mail.followers.partner', {'record': record})).appendTo(node_user_list);
});
this.display_buttons();
return this.display_subtypes(this.message_subtype_data_value_);
self.set_is_follower(records);
},
display_buttons: function () {
if (this.message_is_follower_value_) {
if (this.message_is_follower) {
this.$el.find('button.oe_mail_button_follow').hide();
this.$el.find('button.oe_mail_button_unfollow').show();
}
@ -156,24 +153,48 @@ openerp_mail_followers = function(session, mail) {
this.$el.find('span.oe_mail_invite_wrapper').show();
},
/** Display subtypes: {'name': default, followed} */
display_subtypes: function (records) {
var subtype_list = this.$el.find('ul.oe_mail_subtypes').empty();
if (! this.message_is_follower_value_) {
return;
}
set_subtypes:function(data){
var self = this;
var records = data[this.view.datarecord.id].message_subtype_data;
_(records).each(function (record, record_name) {
record.name = record_name;
record.followed = record.followed || undefined;
$(session.web.qweb.render('mail.followers.subtype', {'record': record})).appendTo(subtype_list);
$(session.web.qweb.render('mail.followers.subtype', {'record': record})).appendTo( self.$el.find('ul.oe_mail_subtypes') );
});
},
/** Display subtypes: {'name': default, followed} */
display_subtypes: function () {
var self = this;
var recthread_subtypes = self.$el.find('.oe_mail_recthread_subtypes');
subtype_list_ul = self.$el.find('ul.oe_mail_subtypes');
if(recthread_subtypes.is(":visible")) {
self.hidden_subtypes();
} else {
if(subtype_list_ul.is(":empty")) {
var context = new session.web.CompoundContext(this.build_context(), {});
this.ds_model.call('get_message_subtypes',[[self.view.datarecord.id], context]).pipe(this.proxy('set_subtypes'));
}
recthread_subtypes.show();
}
},
clear_subtypes: function(){
this.$el.find('ul.oe_mail_subtypes').empty();
this.hidden_subtypes();
},
hidden_subtypes: function (){
this.$el.find('.oe_mail_recthread_subtypes').hide();
},
do_follow: function () {
var context = new session.web.CompoundContext(this.build_context(), {});
return this.ds_model.call('message_subscribe_users', [[this.view.datarecord.id], undefined, undefined, context]).pipe(this.proxy('read_value'));
},
do_unfollow: function () {
var context = new session.web.CompoundContext(this.build_context(), {});
return this.ds_model.call('message_unsubscribe_users', [[this.view.datarecord.id], undefined, context]).pipe(this.proxy('read_value'));
@ -182,13 +203,15 @@ openerp_mail_followers = function(session, mail) {
do_update_subscription: function () {
var context = new session.web.CompoundContext(this.build_context(), {});
var self = this;
var checklist = new Array();
_(this.$el.find('.oe_msg_subtype_check')).each(function(record){
if($(record).is(':checked')) {
checklist.push(parseInt($(record).attr('id')))}
checklist.push(parseInt($(record).data('id')))}
});
return this.ds_model.call('message_subscribe_users',[[self.view.datarecord.id], undefined, checklist, context]).pipe(this.proxy('read_value'));
},
});
};
};

View File

@ -7,9 +7,9 @@
-->
<div t-name="mail.followers" class="oe_mail_recthread_aside oe_semantic_html_override">
<div class="oe_mail_recthread_actions">
<button type="button" class="oe_mail_button_follow">Follow</button>
<button type="button" class="oe_mail_button_unfollow oe_mail_button_mouseout">Following</button>
<button type="button" class="oe_mail_button_invite">Invite</button>
<button type="button" class="oe_mail_button_follow"><p>Follow</p><span class="oe_e">S</span></button>
<button type="button" class="oe_mail_button_unfollow oe_mail_button_mouseout"><p>Following</p><span class="oe_e">S</span></button>
<button type="button" class="oe_mail_button_invite"><p>Invite</p></button>
<div class="oe_mail_recthread_subtypes">
<h4>Message types to follow</h4>
<ul class="oe_mail_subtypes"></ul>
@ -39,8 +39,8 @@
<li t-name="mail.followers.subtype">
<table width="50%">
<tr>
<td><t t-raw="record.name"/></td>
<td width="10%"><input type="checkbox" t-att-checked="record.followed" t-att-id="record.id" t-att-name="record.name" class="oe_msg_subtype_check"/></td>
<td><label t-att-for="'input_mail_followers_subtype_'+record.id"><t t-raw="record.name"/></label></td>
<td width="10%"><input type="checkbox" t-att-checked="record.followed" t-att-id="'input_mail_followers_subtype_'+record.id" t-att-data-id="record.id" t-att-name="record.name" class="oe_msg_subtype_check"/></td>
</tr>
</table>
</li>

View File

@ -410,9 +410,6 @@
</notebook>
<div class="oe_chatter">
<field name="message_ids" colspan="4" widget="mail_thread" nolabel="1"/>
<!-- Invisible fields used in chatter widgets -->
<field name="message_subtype_data" invisible="True"/>
<field name="message_is_follower" invisible="True"/>
<field name="message_follower_ids" widget="mail_followers"/>
</div>
</form>
@ -790,11 +787,7 @@
</notebook>
</sheet>
<div class="oe_chatter">
<field name="message_is_follower" invisible="1"/>
<field name="message_ids" widget="mail_thread"/>
<!-- Invisible fields used in chatter widgets -->
<field name="message_subtype_data" invisible="True"/>
<field name="message_is_follower" invisible="True"/>
<field name="message_follower_ids" widget="mail_followers"/>
</div>
</form>

View File

@ -107,11 +107,7 @@
</notebook>
</sheet>
<div class="oe_chatter">
<field name="message_is_follower" invisible="1"/>
<field name="message_ids" widget="mail_thread"/>
<!-- Invisible fields used in chatter widgets -->
<field name="message_subtype_data" invisible="True"/>
<field name="message_is_follower" invisible="True"/>
<field name="message_follower_ids" widget="mail_followers"/>
</div>
</form>

View File

@ -189,11 +189,7 @@
</notebook>
</sheet>
<div class="oe_chatter">
<field name="message_is_follower" invisible="1"/>
<field name="message_ids" widget="mail_thread"/>
<!-- Invisible fields used in chatter widgets -->
<field name="message_subtype_data" invisible="True"/>
<field name="message_is_follower" invisible="True"/>
<field name="message_follower_ids" widget="mail_followers"/>
</div>
</form>

View File

@ -50,7 +50,6 @@
<field name="memo"/>
<field name="date_done"/>
<field name="current_partner_id"/>
<field name="message_is_follower"/>
<field name="message_follower_ids"/>
<field name="tag_ids"/>
<templates>
@ -119,9 +118,6 @@
</header>
<field name="memo" widget="html"/><!-- editor_width="100%%" editor_height="60%%" -->
<div class="oe_chatter">
<!-- Invisible fields used in chatter widgets -->
<field name="message_subtype_data" invisible="True"/>
<field name="message_is_follower" invisible="True"/>
<field name="message_follower_ids" widget="mail_followers"/>
<field class="oe_chatter" name="message_ids" widget="mail_thread"/>
</div>

View File

@ -103,11 +103,7 @@
</notebook>
</sheet>
<div class="oe_chatter">
<field name="message_is_follower" invisible="1"/>
<field name="message_ids" widget="mail_thread"/>
<!-- Invisible fields used in chatter widgets -->
<field name="message_subtype_data" invisible="True"/>
<field name="message_is_follower" invisible="True"/>
<field name="message_follower_ids" widget="mail_followers"/>
</div>
</form>

View File

@ -203,11 +203,7 @@
</notebook>
</sheet>
<div class="oe_chatter">
<field name="message_is_follower" invisible="1"/>
<field name="message_ids" widget="mail_thread"/>
<!-- Invisible fields used in chatter widgets -->
<field name="message_subtype_data" invisible="True"/>
<field name="message_is_follower" invisible="True"/>
<field name="message_follower_ids" widget="mail_followers"/>
</div>
</form>

View File

@ -152,11 +152,7 @@
</notebook>
</sheet>
<div class="oe_chatter">
<field name="message_is_follower" invisible="1"/>
<field name="message_ids" widget="mail_thread"/>
<!-- Invisible fields used in chatter widgets -->
<field name="message_subtype_data" invisible="True"/>
<field name="message_is_follower" invisible="True"/>
<field name="message_follower_ids" widget="mail_followers"/>
</div>
</form>
@ -482,11 +478,7 @@
</notebook>
</sheet>
<div class="oe_chatter">
<field name="message_is_follower" invisible="1"/>
<field name="message_ids" widget="mail_thread"/>
<!-- Invisible fields used in chatter widgets -->
<field name="message_subtype_data" invisible="True"/>
<field name="message_is_follower" invisible="True"/>
<field name="message_follower_ids" widget="mail_followers"/>
</div>
</form>

View File

@ -161,11 +161,7 @@
</notebook>
</sheet>
<div class="oe_chatter">
<field name="message_is_follower" invisible="1"/>
<field name="message_ids" widget="mail_thread"/>
<!-- Invisible fields used in chatter widgets -->
<field name="message_subtype_data" invisible="True"/>
<field name="message_is_follower" invisible="True"/>
<field name="message_follower_ids" widget="mail_followers"/>
</div>
</form>

View File

@ -285,11 +285,7 @@
</notebook>
</sheet>
<div class="oe_chatter">
<field name="message_is_follower" invisible="1"/>
<field name="message_ids" widget="mail_thread"/>
<!-- Invisible fields used in chatter widgets -->
<field name="message_subtype_data" invisible="True"/>
<field name="message_is_follower" invisible="True"/>
<field name="message_follower_ids" widget="mail_followers"/>
</div>
</form>

View File

@ -103,9 +103,6 @@
</sheet>
<div class="oe_chatter">
<field name="message_ids" widget="mail_thread"/>
<!-- Invisible fields used in chatter widgets -->
<field name="message_subtype_data" invisible="True"/>
<field name="message_is_follower" invisible="True"/>
<field name="message_follower_ids" widget="mail_followers"/>
</div>
</form>

View File

@ -351,11 +351,7 @@
</notebook>
</sheet>
<div class="oe_chatter">
<field name="message_is_follower" invisible="1"/>
<field name="message_ids" widget="mail_thread"/>
<!-- Invisible fields used in chatter widgets -->
<field name="message_subtype_data" invisible="True"/>
<field name="message_is_follower" invisible="True"/>
<field name="message_follower_ids" widget="mail_followers"/>
</div>
</form>

View File

@ -917,11 +917,7 @@
</xpath>
<xpath expr="/form/sheet" position="after">
<div class="oe_chatter">
<field name="message_is_follower" invisible="1"/>
<field name="message_ids" colspan="4" widget="mail_thread" nolabel="1"/>
<!-- Invisible fields used in chatter widgets -->
<field name="message_subtype_data" invisible="True"/>
<field name="message_is_follower" invisible="True"/>
<field name="message_follower_ids" widget="mail_followers"/>
</div>
</xpath>
@ -1047,11 +1043,7 @@
</xpath>
<xpath expr="/form/sheet" position="after">
<div class="oe_chatter">
<field name="message_is_follower" invisible="1"/>
<field name="message_ids" colspan="4" widget="mail_thread" nolabel="1"/>
<!-- Invisible fields used in chatter widgets -->
<field name="message_subtype_data" invisible="True"/>
<field name="message_is_follower" invisible="True"/>
<field name="message_follower_ids" widget="mail_followers"/>
</div>
</xpath>