@@ -51,11 +51,23 @@ frappe.ui.form.LinkedWith = class LinkedWith { | |||||
html = __("Not Linked to any record"); | html = __("Not Linked to any record"); | ||||
} else { | } else { | ||||
html = Object.keys(linked_docs).map(dt => { | html = Object.keys(linked_docs).map(dt => { | ||||
const list_renderer = new frappe.views.ListRenderer({ | |||||
doctype: dt, | |||||
list_view: this | |||||
}); | |||||
return `<div class="list-item-table" style="margin-bottom: 15px"> | return `<div class="list-item-table" style="margin-bottom: 15px"> | ||||
${this.make_doc_head(dt)} | ${this.make_doc_head(dt)} | ||||
${linked_docs[dt] | ${linked_docs[dt] | ||||
.map(doc => this.make_doc_row(doc, dt)) | |||||
.join("")} | |||||
.map(value => { | |||||
// prepare data | |||||
value = list_renderer.prepare_data(value); | |||||
value._checkbox = 0; | |||||
value._hide_activity = 1; | |||||
const $item = $(list_renderer.get_item_html(value)); | |||||
const $item_container = $('<div class="list-item-container">').append($item); | |||||
return $item_container[0].outerHTML; | |||||
}).join("")} | |||||
</div>`; | </div>`; | ||||
}); | }); | ||||
} | } | ||||
@@ -14,6 +14,7 @@ | |||||
{% } %} | {% } %} | ||||
<!-- comment --> | <!-- comment --> | ||||
{% if (!data._hide_activity) { %} | |||||
<div class="list-item__content list-item__content--activity hidden-xs"> | <div class="list-item__content list-item__content--activity hidden-xs"> | ||||
<!-- comments count and assigned to section --> | <!-- comments count and assigned to section --> | ||||
{%= frappe.render_template("item_assigned_to_comment_count", { data: data }) %} | {%= frappe.render_template("item_assigned_to_comment_count", { data: data }) %} | ||||
@@ -21,4 +22,5 @@ | |||||
<div class="list-item__content list-item__content--indicator visible-xs text-right"> | <div class="list-item__content list-item__content--indicator visible-xs text-right"> | ||||
{%= indicator_dot %} | {%= indicator_dot %} | ||||
</div> | </div> | ||||
{% } %} | |||||
</div> | </div> |
@@ -1,6 +1,7 @@ | |||||
{% if (_checkbox) { %} | {% if (_checkbox) { %} | ||||
<input class="list-row-checkbox hidden-xs" type="checkbox" data-name="{{name}}"> | <input class="list-row-checkbox hidden-xs" type="checkbox" data-name="{{name}}"> | ||||
{% } %} | {% } %} | ||||
{% if (!_hide_activity) { %} | |||||
<span class="liked-by" data-liked-by=\'{{ JSON.stringify(_liked_by) }}\'> | <span class="liked-by" data-liked-by=\'{{ JSON.stringify(_liked_by) }}\'> | ||||
<i class="octicon octicon-heart | <i class="octicon octicon-heart | ||||
{% if (_liked_by.indexOf(_user)===-1) { %} | {% if (_liked_by.indexOf(_user)===-1) { %} | ||||
@@ -11,6 +12,7 @@ | |||||
</i> | </i> | ||||
<span class="likes-count">{{ (_liked_by.length > 99 ? "99+" : _liked_by.length) || "" }}</span> | <span class="likes-count">{{ (_liked_by.length > 99 ? "99+" : _liked_by.length) || "" }}</span> | ||||
</span> | </span> | ||||
{% } %} | |||||
<a class="grey list-id {{ css_seen }} ellipsis" | <a class="grey list-id {{ css_seen }} ellipsis" | ||||
data-name="{{ _name }}" | data-name="{{ _name }}" | ||||
href="#Form/{{ _doctype_encoded }}/{{ _name_encoded }}" | href="#Form/{{ _doctype_encoded }}/{{ _name_encoded }}" | ||||
@@ -71,7 +71,7 @@ frappe.views.ListRenderer = Class.extend({ | |||||
return this.list_view.current_view !== this.list_view.last_view; | return this.list_view.current_view !== this.list_view.last_view; | ||||
}, | }, | ||||
set_wrapper: function () { | set_wrapper: function () { | ||||
this.wrapper = this.list_view.wrapper.find('.result-list'); | |||||
this.wrapper = this.list_view.wrapper && this.list_view.wrapper.find('.result-list'); | |||||
}, | }, | ||||
set_fields: function () { | set_fields: function () { | ||||
var me = this; | var me = this; | ||||
@@ -439,7 +439,7 @@ frappe.views.ListRenderer = Class.extend({ | |||||
data._name_encoded = encodeURIComponent(data.name); | data._name_encoded = encodeURIComponent(data.name); | ||||
data._submittable = frappe.model.is_submittable(this.doctype); | data._submittable = frappe.model.is_submittable(this.doctype); | ||||
var title_field = frappe.get_meta(this.doctype).title_field || 'name'; | |||||
var title_field = this.meta.title_field || 'name'; | |||||
data._title = strip_html(data[title_field] || data.name); | data._title = strip_html(data[title_field] || data.name); | ||||
data._full_title = data._title; | data._full_title = data._title; | ||||
@@ -455,6 +455,8 @@ frappe.views.ListRenderer = Class.extend({ | |||||
data._user = frappe.session.user; | data._user = frappe.session.user; | ||||
if(!data._user_tags) data._user_tags = ""; | |||||
data._tags = data._user_tags.split(',').filter(function (v) { | data._tags = data._user_tags.split(',').filter(function (v) { | ||||
// filter falsy values | // filter falsy values | ||||
return v; | return v; | ||||
@@ -468,6 +470,9 @@ frappe.views.ListRenderer = Class.extend({ | |||||
} | } | ||||
} | } | ||||
// whether to hide likes/comments/assignees | |||||
data._hide_activity = 0; | |||||
data._assign_list = JSON.parse(data._assign || '[]'); | data._assign_list = JSON.parse(data._assign || '[]'); | ||||
// prepare data in settings | // prepare data in settings | ||||