Browse Source

Kanban fixes (#3278)

- redirect back to list when board is not found
- fix no default columns when custom field is used
version-14
Faris Ansari 8 years ago
committed by Rushabh Mehta
parent
commit
355a494641
3 changed files with 18 additions and 6 deletions
  1. +8
    -5
      frappe/desk/doctype/kanban_board/kanban_board.py
  2. +1
    -1
      frappe/public/js/frappe/list/list_renderer.js
  3. +9
    -0
      frappe/public/js/frappe/views/kanban/kanban_board.js

+ 8
- 5
frappe/desk/doctype/kanban_board/kanban_board.py View File

@@ -118,10 +118,13 @@ def update_order(board_name, order):
def quick_kanban_board(doctype, board_name, field_name): def quick_kanban_board(doctype, board_name, field_name):
'''Create new KanbanBoard quickly with default options''' '''Create new KanbanBoard quickly with default options'''
doc = frappe.new_doc('Kanban Board') doc = frappe.new_doc('Kanban Board')
options = frappe.get_value('DocField', dict(
parent=doctype,
fieldname=field_name
), 'options')

meta = frappe.get_meta(doctype)

options = ''
for field in meta.fields:
if field.fieldname == field_name:
options = field.options


columns = [] columns = []
if options: if options:
@@ -198,4 +201,4 @@ def set_indicator(board_name, column_name, indicator):
def save_filters(board_name, filters): def save_filters(board_name, filters):
'''Save filters silently''' '''Save filters silently'''
frappe.db.set_value('Kanban Board', board_name, 'filters', frappe.db.set_value('Kanban Board', board_name, 'filters',
filters, update_modified=False)
filters, update_modified=False)

+ 1
- 1
frappe/public/js/frappe/list/list_renderer.js View File

@@ -144,7 +144,7 @@ frappe.views.ListRenderer = Class.extend({
} }
// kanban column fields // kanban column fields
if (me.meta.__kanban_column_fields) { if (me.meta.__kanban_column_fields) {
me.fields = me.fields.concat(me.meta.__kanban_column_fields);
me.meta.__kanban_column_fields.map(add_field);
} }
}, },
set_columns: function () { set_columns: function () {


+ 9
- 0
frappe/public/js/frappe/views/kanban/kanban_board.js View File

@@ -41,6 +41,12 @@ frappe.provide("frappe.views");
columns: columns, columns: columns,
cur_list: opts.cur_list cur_list: opts.cur_list
}); });
})
.fail(function() {
// redirect back to List
setTimeout(() => {
frappe.set_route('List', opts.doctype, 'List');
}, 2000);
}); });
}, },
update_cards: function (updater, cards) { update_cards: function (updater, cards) {
@@ -1038,6 +1044,9 @@ frappe.provide("frappe.views");
function is_filters_modified(board, cur_list) { function is_filters_modified(board, cur_list) {
return new Promise(function(resolve, reject) { return new Promise(function(resolve, reject) {
setTimeout(function() { setTimeout(function() {
// sometimes the filter_list is not initiated, so early return
if(!cur_list.filter_list) resolve(false);

var list_filters = JSON.stringify(cur_list.filter_list.get_filters()); var list_filters = JSON.stringify(cur_list.filter_list.get_filters());
resolve(list_filters !== board.filters); resolve(list_filters !== board.filters);
}, 2000); }, 2000);


Loading…
Cancel
Save