From 72ed223d41e8fa8bb6751a213e852b0aec6c92de Mon Sep 17 00:00:00 2001 From: Rushabh Mehta Date: Mon, 19 Sep 2016 16:08:09 +0530 Subject: [PATCH] [minor] more options for frappe.set_query and set_indicator in dashboard --- frappe/public/css/form.css | 1 - frappe/public/js/frappe/form/control.js | 26 ++++++++++++++++++----- frappe/public/js/frappe/form/dashboard.js | 16 +++++++++++++- frappe/public/js/legacy/form.js | 2 +- frappe/public/less/form.less | 1 - 5 files changed, 37 insertions(+), 9 deletions(-) diff --git a/frappe/public/css/form.css b/frappe/public/css/form.css index 734303242f..9193e1ee3b 100644 --- a/frappe/public/css/form.css +++ b/frappe/public/css/form.css @@ -80,7 +80,6 @@ } .form-dashboard-section { padding: 15px 30px; - margin: 0px; border-bottom: 1px solid #EBEFF2; } .form-dashboard-section:last-child { diff --git a/frappe/public/js/frappe/form/control.js b/frappe/public/js/frappe/form/control.js index 53321a2de2..3cb79dc842 100644 --- a/frappe/public/js/frappe/form/control.js +++ b/frappe/public/js/frappe/form/control.js @@ -1361,13 +1361,29 @@ frappe.ui.form.ControlLink = frappe.ui.form.ControlData.extend({ if(this.get_query || this.df.get_query) { var get_query = this.get_query || this.df.get_query; if($.isPlainObject(get_query)) { - var filters = set_nulls(get_query); + var filters = null; + if(get_query.filters) { + // passed as {'filters': {'key':'value'}} + filters = get_query.filters; + } else if(get_query.query) { + + // passed as {'query': 'path.to.method'} + args.query = get_query; + } else { + + // dict is filters + filters = get_query; + } - // extend args for custom functions - $.extend(args, filters); + if (filters) { + var filters = set_nulls(filters); - // add "filters" for standard query (search.py) - args.filters = filters; + // extend args for custom functions + $.extend(args, filters); + + // add "filters" for standard query (search.py) + args.filters = filters; + } } else if(typeof(get_query)==="string") { args.query = get_query; } else { diff --git a/frappe/public/js/frappe/form/dashboard.js b/frappe/public/js/frappe/form/dashboard.js index d604c6a09d..b2fbe2e915 100644 --- a/frappe/public/js/frappe/form/dashboard.js +++ b/frappe/public/js/frappe/form/dashboard.js @@ -344,8 +344,22 @@ frappe.ui.form.Dashboard = Class.extend({ add_indicator: function(label, color) { this.show(); this.stats_area.removeClass('hidden'); - return $('
' + + // set colspan + var indicators = this.stats_area.find('.indicator-column'); + var n_indicators = indicators.length + 1; + if(n_indicators > 4) { colspan = 3 } + else { colspan = 12 / n_indicators; } + + // reset classes in existing indicators + if(indicators.length) { + indicators.removeClass().addClass('col-sm-'+colspan).addClass('indicator-column'); + } + + var indicator = $('
' +label+'
').appendTo(this.stats_area); + + return indicator; }, //graphs diff --git a/frappe/public/js/legacy/form.js b/frappe/public/js/legacy/form.js index 6c388624b4..5f2501a04d 100644 --- a/frappe/public/js/legacy/form.js +++ b/frappe/public/js/legacy/form.js @@ -114,7 +114,7 @@ _f.Frm.prototype.setup = function() { frm: this, parent: $('
').appendTo(this.page.main.parent()) }) - $("body").attr("data-sidebar", 1); + $("body").attr("data-sidebar", 1); } this.setup_drag_drop(); diff --git a/frappe/public/less/form.less b/frappe/public/less/form.less index 35b95d8c73..4c3cf82c5f 100644 --- a/frappe/public/less/form.less +++ b/frappe/public/less/form.less @@ -111,7 +111,6 @@ .form-dashboard-section { padding: 15px 30px; - margin: 0px; border-bottom: 1px solid @light-border-color; }