fix: custom seen function for inbox view

This commit is contained in:
prssanna 2020-07-06 11:37:37 +05:30
parent 72c596a50e
commit 9ce9d39669
2 changed files with 14 additions and 3 deletions

View file

@ -795,8 +795,10 @@ frappe.views.ListView = class ListView extends frappe.views.BaseList {
let heart_class = liked_by.includes(user) ?
'liked-by' : 'text-extra-muted not-liked';
const seen = JSON.parse(doc._seen || '[]')
.includes(user) ? '' : 'bold';
const seen = this.get_seen
? this.get_seen(doc)
: JSON.parse(doc._seen || '[]')
.includes(user) ? '' : 'bold';
let subject_html = `
<input class="level-item list-row-checkbox hidden-xs" type="checkbox" data-name="${escape(doc.name)}">

View file

@ -48,6 +48,7 @@ frappe.views.InboxView = class InboxView extends frappe.views.ListView {
this.email_account = frappe.get_route()[3];
this.page_title = this.email_account;
this.filters = this.get_inbox_filters();
this.get_seen = (doc) => this.set_seen(doc);
}
setup_columns() {
@ -69,6 +70,14 @@ frappe.views.InboxView = class InboxView extends frappe.views.ListView {
});
}
set_seen(doc) {
const seen =
Boolean(doc.seen) || JSON.parse(doc._seen || '[]').includes(frappe.session.user)
? ''
: 'bold';
return seen;
}
get is_sent_emails() {
const f = this.filter_area.get()
.find(filter => filter[1] === 'sent_or_received');
@ -77,7 +86,7 @@ frappe.views.InboxView = class InboxView extends frappe.views.ListView {
render_header() {
this.$result.find('.list-row-head').remove();
this.$result.prepend(this.get_header_html());
this.$result.prepend(this.get_header_html());
}
render() {