diff --git a/frappe/public/js/frappe/list/list_view.js b/frappe/public/js/frappe/list/list_view.js index 55abb4d65b..396cd983fb 100644 --- a/frappe/public/js/frappe/list/list_view.js +++ b/frappe/public/js/frappe/list/list_view.js @@ -957,6 +957,15 @@ frappe.views.ListView = class ListView extends frappe.views.BaseList { )}'>`; } + get_image_url(doc) { + let url = doc.image ? doc.image : doc[this.meta.image_field]; + // absolute url for mobile + if (window.cordova && !frappe.utils.is_url(url)) { + url = frappe.base_url + url; + } + return url || null; + } + setup_events() { this.setup_filterable(); this.setup_list_click(); diff --git a/frappe/public/js/frappe/views/image/image_view.js b/frappe/public/js/frappe/views/image/image_view.js index 742bcd969f..aec392e15a 100644 --- a/frappe/public/js/frappe/views/image/image_view.js +++ b/frappe/public/js/frappe/views/image/image_view.js @@ -142,20 +142,6 @@ frappe.views.ImageView = class ImageView extends frappe.views.ListView { `; } - get_image_url(data) { - var url; - url = data.image ? data.image : data[this.meta.image_field]; - - // absolute url for mobile - if (window.cordova && !frappe.utils.is_url(url)) { - url = frappe.base_url + url; - } - if (url) { - return url; - } - return null; - } - get_attached_images() { return frappe .call({ diff --git a/frappe/public/js/frappe/views/kanban/kanban_board.js b/frappe/public/js/frappe/views/kanban/kanban_board.js index 8711deb4b4..5cf4cb0236 100644 --- a/frappe/public/js/frappe/views/kanban/kanban_board.js +++ b/frappe/public/js/frappe/views/kanban/kanban_board.js @@ -301,7 +301,7 @@ frappe.provide("frappe.views"); function init() { fluxify.doAction('init', opts); - store.on('change:columns', make_columns); + store.off('change:columns').on('change:columns', make_columns); prepare(); store.on('change:cur_list', setup_restore_columns); store.on('change:columns', setup_restore_columns); @@ -608,6 +608,7 @@ frappe.provide("frappe.views"); title: remove_img_tags(card.title), disable_click: card._disable_click ? 'disable-click' : '', creation: card.creation, + image_url: cur_list.get_image_url(card), }; self.$card = $(frappe.render_template('kanban_card', opts)) .appendTo(wrapper); @@ -705,6 +706,7 @@ frappe.provide("frappe.views"); title: card[state.card_meta.title_field.fieldname], creation: moment(card.creation).format('MMM DD, YYYY'), _liked_by: card._liked_by, + image: card[cur_list.meta.image_field], tags: card._user_tags, column: card[state.board.field_name], assigned_list: card.assigned_list || assigned_list, diff --git a/frappe/public/js/frappe/views/kanban/kanban_card.html b/frappe/public/js/frappe/views/kanban/kanban_card.html index b67488f46f..b854b88d18 100644 --- a/frappe/public/js/frappe/views/kanban/kanban_card.html +++ b/frappe/public/js/frappe/views/kanban/kanban_card.html @@ -1,15 +1,22 @@
-
-
- {{ title }} -
-
- {{ creation }} -
+ {% if(image_url) { %} +
+ {{title}}
-
+ {% } %} +
+
+
+ {{ title }} +
+
+ {{ creation }} +
+
+
+
diff --git a/frappe/public/js/frappe/views/kanban/kanban_column.html b/frappe/public/js/frappe/views/kanban/kanban_column.html index 4b309710e4..f2b537aca4 100644 --- a/frappe/public/js/frappe/views/kanban/kanban_column.html +++ b/frappe/public/js/frappe/views/kanban/kanban_column.html @@ -2,7 +2,7 @@
- {{ __(title) }} + {{ __(title) }}