From 90673954c72c7f2775775a631736242dca01ea9c Mon Sep 17 00:00:00 2001 From: Rushabh Mehta Date: Wed, 6 Jul 2016 15:12:25 +0530 Subject: [PATCH] [cleanup] dashboard automation --- frappe/desk/form/load.py | 1 - frappe/desk/form/meta.py | 6 +- frappe/desk/notifications.py | 2 +- .../doctype/email_account/email_account.js | 1 - frappe/email/doctype/newsletter/newsletter.js | 1 - frappe/model/meta.py | 15 ++-- frappe/public/js/frappe/form/dashboard.js | 80 +++++++++++++------ frappe/public/js/legacy/form.js | 23 ++++-- frappe/public/js/legacy/print_format.js | 4 + 9 files changed, 92 insertions(+), 41 deletions(-) diff --git a/frappe/desk/form/load.py b/frappe/desk/form/load.py index e0a64cfce4..77a190ee01 100644 --- a/frappe/desk/form/load.py +++ b/frappe/desk/form/load.py @@ -195,5 +195,4 @@ def get_badge_info(doctypes, filters): def run_onload(doc): doc.set("__onload", frappe._dict()) - doc.set_onload('links', doc.meta.get_links_setup()) doc.run_method("onload") diff --git a/frappe/desk/form/meta.py b/frappe/desk/form/meta.py index 673287f614..92ed84fac7 100644 --- a/frappe/desk/form/meta.py +++ b/frappe/desk/form/meta.py @@ -40,12 +40,13 @@ class FormMeta(Meta): self.load_print_formats() self.load_workflows() self.load_templates() + self.load_dashboard() def as_dict(self, no_nulls=False): d = super(FormMeta, self).as_dict(no_nulls=no_nulls) for k in ("__js", "__css", "__list_js", "__calendar_js", "__map_js", "__linked_with", "__messages", "__print_formats", "__workflow_docs", - "__form_grid_templates", "__listview_template", "__tree_js"): + "__form_grid_templates", "__listview_template", "__tree_js", '__dashboard'): d[k] = self.get(k) for i, df in enumerate(d.get("fields")): @@ -164,6 +165,9 @@ class FormMeta(Meta): messages = make_dict_from_messages(messages) self.get("__messages").update(messages, as_value=True) + def load_dashboard(self): + self.set('__dashboard', self.get_dashboard_data()) + def get_code_files_via_hooks(hook, name): code_files = [] for app_name in frappe.get_installed_apps(): diff --git a/frappe/desk/notifications.py b/frappe/desk/notifications.py index 99a16b755b..1218ff7a98 100644 --- a/frappe/desk/notifications.py +++ b/frappe/desk/notifications.py @@ -180,7 +180,7 @@ def get_open_count(doctype, name): frappe.has_permission(doc=frappe.get_doc(doctype, name), throw=True) meta = frappe.get_meta(doctype) - links = meta.get_links_setup() + links = meta.get_dashboard_data() # compile all items in a list items = [] diff --git a/frappe/email/doctype/email_account/email_account.js b/frappe/email/doctype/email_account/email_account.js index a4bbbd72b7..681830632a 100644 --- a/frappe/email/doctype/email_account/email_account.js +++ b/frappe/email/doctype/email_account/email_account.js @@ -96,7 +96,6 @@ frappe.ui.form.on("Email Account", { frm.events.show_gmail_message_for_less_secure_apps(frm); }, show_gmail_message_for_less_secure_apps: function(frm) { - frm.dashboard.reset(); if(frm.doc.service==="Gmail") { frm.dashboard.set_headline_alert('Gmail will only work if you allow access for less secure \ apps in Gmail settings.