From d976ea5e6553d2b14bda47534499c94947a12b04 Mon Sep 17 00:00:00 2001
From: Saurabh
Date: Fri, 16 Dec 2016 12:41:23 +0530
Subject: [PATCH 1/3] [fix] clear custom buttons on service change #7229
(#2468)
---
.../doctype/integration_service/integration_service.js | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/frappe/integration_broker/doctype/integration_service/integration_service.js b/frappe/integration_broker/doctype/integration_service/integration_service.js
index 34e1220d26..6e5200d2ac 100644
--- a/frappe/integration_broker/doctype/integration_service/integration_service.js
+++ b/frappe/integration_broker/doctype/integration_service/integration_service.js
@@ -31,10 +31,12 @@ frappe.ui.form.on('Integration Service', {
},
setup_custom_buttons: function(frm) {
+ frm.clear_custom_buttons();
+
frm.add_custom_button(__("{0} Settings", [frm.doc.service]), function(){
frappe.set_route("List", frm.doc.service + " Settings");
});
-
+
frm.add_custom_button(__("Show Log"), function(){
frappe.route_options = {"integration_request_service": frm.doc.service};
frappe.set_route("List", "Integration Request");
From a74a9d1afe72ad46bffe3decea8543c89d736372 Mon Sep 17 00:00:00 2001
From: Rushabh Mehta
Date: Mon, 19 Dec 2016 12:59:27 +0530
Subject: [PATCH 2/3] [fix] dropbox access for site_config
---
.../dropbox_settings/dropbox_settings.js | 10 ++--
.../dropbox_settings/dropbox_settings.json | 51 +++++++++++++++++--
.../dropbox_settings/dropbox_settings.py | 23 ++++++---
3 files changed, 70 insertions(+), 14 deletions(-)
diff --git a/frappe/integrations/doctype/dropbox_settings/dropbox_settings.js b/frappe/integrations/doctype/dropbox_settings/dropbox_settings.js
index 56eda76c66..303cd48962 100644
--- a/frappe/integrations/doctype/dropbox_settings/dropbox_settings.js
+++ b/frappe/integrations/doctype/dropbox_settings/dropbox_settings.js
@@ -8,9 +8,9 @@ frappe.ui.form.on('Dropbox Settings', {
frm.clear_custom_buttons();
frm.events.take_backup(frm);
},
-
+
allow_dropbox_access: function(frm) {
- if (frm.doc.app_access_key && frm.doc.app_secret_key) {
+ if ((frm.doc.app_access_key && frm.doc.app_secret_key) || frm.doc.dropbox_setup_via_site_config) {
frappe.call({
method: "frappe.integrations.doctype.dropbox_settings.dropbox_settings.get_dropbox_authorize_url",
freeze: true,
@@ -41,16 +41,16 @@ frappe.ui.form.on('Dropbox Settings', {
frappe.integration_service.dropbox_settings = Class.extend({
init: function(frm) {
-
+
},
-
+
get_scheduler_job_info: function() {
return {
"Daily": "Take backup of database and files to dropbox on daily basis",
"Weekly": "Take backup of database and files to dropbox on weekly basis"
}
},
-
+
get_service_info: function(frm) {
frappe.call({
method: "frappe.integrations.doctype.dropbox_settings.dropbox_settings.get_service_details",
diff --git a/frappe/integrations/doctype/dropbox_settings/dropbox_settings.json b/frappe/integrations/doctype/dropbox_settings/dropbox_settings.json
index e597410033..4c5edca1c6 100644
--- a/frappe/integrations/doctype/dropbox_settings/dropbox_settings.json
+++ b/frappe/integrations/doctype/dropbox_settings/dropbox_settings.json
@@ -22,6 +22,7 @@
"ignore_xss_filter": 0,
"in_filter": 0,
"in_list_view": 0,
+ "in_standard_filter": 0,
"label": "Send Notifications To",
"length": 0,
"no_copy": 0,
@@ -30,6 +31,7 @@
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
+ "remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 1,
"search_index": 0,
@@ -48,6 +50,7 @@
"ignore_xss_filter": 0,
"in_filter": 0,
"in_list_view": 0,
+ "in_standard_filter": 0,
"label": "Backup Frequency",
"length": 0,
"no_copy": 0,
@@ -57,6 +60,7 @@
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
+ "remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 1,
"search_index": 0,
@@ -68,6 +72,7 @@
"bold": 0,
"collapsible": 0,
"columns": 0,
+ "depends_on": "eval:!doc.dropbox_setup_via_site_config",
"fieldname": "app_access_key",
"fieldtype": "Data",
"hidden": 0,
@@ -75,6 +80,7 @@
"ignore_xss_filter": 0,
"in_filter": 0,
"in_list_view": 0,
+ "in_standard_filter": 0,
"label": "App Access Key",
"length": 0,
"no_copy": 0,
@@ -83,8 +89,9 @@
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
+ "remember_last_selected_value": 0,
"report_hide": 0,
- "reqd": 1,
+ "reqd": 0,
"search_index": 0,
"set_only_once": 0,
"unique": 0
@@ -94,6 +101,7 @@
"bold": 0,
"collapsible": 0,
"columns": 0,
+ "depends_on": "eval:!doc.dropbox_setup_via_site_config",
"fieldname": "app_secret_key",
"fieldtype": "Password",
"hidden": 0,
@@ -101,6 +109,7 @@
"ignore_xss_filter": 0,
"in_filter": 0,
"in_list_view": 0,
+ "in_standard_filter": 0,
"label": "App Secret Key",
"length": 0,
"no_copy": 0,
@@ -109,8 +118,9 @@
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
+ "remember_last_selected_value": 0,
"report_hide": 0,
- "reqd": 1,
+ "reqd": 0,
"search_index": 0,
"set_only_once": 0,
"unique": 0
@@ -127,6 +137,7 @@
"ignore_xss_filter": 0,
"in_filter": 0,
"in_list_view": 0,
+ "in_standard_filter": 0,
"label": "Allow Dropbox Access",
"length": 0,
"no_copy": 0,
@@ -135,6 +146,7 @@
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
+ "remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
@@ -153,6 +165,7 @@
"ignore_xss_filter": 0,
"in_filter": 0,
"in_list_view": 0,
+ "in_standard_filter": 0,
"label": "Dropbox Access Key",
"length": 0,
"no_copy": 0,
@@ -161,6 +174,7 @@
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 1,
+ "remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
@@ -179,6 +193,7 @@
"ignore_xss_filter": 0,
"in_filter": 0,
"in_list_view": 0,
+ "in_standard_filter": 0,
"label": "Dropbox Access Secret",
"length": 0,
"no_copy": 0,
@@ -187,6 +202,35 @@
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 1,
+ "remember_last_selected_value": 0,
+ "report_hide": 0,
+ "reqd": 0,
+ "search_index": 0,
+ "set_only_once": 0,
+ "unique": 0
+ },
+ {
+ "allow_on_submit": 0,
+ "bold": 0,
+ "collapsible": 0,
+ "columns": 0,
+ "fieldname": "dropbox_setup_via_site_config",
+ "fieldtype": "Check",
+ "hidden": 1,
+ "ignore_user_permissions": 0,
+ "ignore_xss_filter": 0,
+ "in_filter": 0,
+ "in_list_view": 0,
+ "in_standard_filter": 0,
+ "label": "Dropbox Setup via Site Config",
+ "length": 0,
+ "no_copy": 0,
+ "permlevel": 0,
+ "precision": "",
+ "print_hide": 0,
+ "print_hide_if_no_value": 0,
+ "read_only": 0,
+ "remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
@@ -204,7 +248,7 @@
"issingle": 1,
"istable": 0,
"max_attachments": 0,
- "modified": "2016-09-22 03:55:40.716643",
+ "modified": "2016-12-19 02:10:05.231510",
"modified_by": "Administrator",
"module": "Integrations",
"name": "Dropbox Settings",
@@ -221,6 +265,7 @@
"export": 1,
"if_owner": 0,
"import": 0,
+ "is_custom": 0,
"permlevel": 0,
"print": 1,
"read": 1,
diff --git a/frappe/integrations/doctype/dropbox_settings/dropbox_settings.py b/frappe/integrations/doctype/dropbox_settings/dropbox_settings.py
index 1def02b826..e6ca9f04bb 100644
--- a/frappe/integrations/doctype/dropbox_settings/dropbox_settings.py
+++ b/frappe/integrations/doctype/dropbox_settings/dropbox_settings.py
@@ -24,6 +24,10 @@ class DropboxSettings(IntegrationService):
]
}
+ def onload(self):
+ if not self.app_access_key and frappe.conf.dropbox_access_key:
+ self.dropbox_setup_via_site_config = 1
+
def validate(self):
if not self.flags.ignore_mandatory:
self.validate_dropbox_credentails()
@@ -48,11 +52,14 @@ class DropboxSettings(IntegrationService):
except:
raise Exception(_("Please install dropbox python module"))
- if not (self.app_access_key or self.app_secret_key):
+ app_access_key = self.app_access_key or frappe.conf.dropbox_access_key
+ app_secret_key = self.get_password(fieldname="app_secret_key",
+ raise_exception=False) if self.app_secret_key else frappe.conf.dropbox_secret_key
+
+ if not (app_access_key or app_secret_key):
raise Exception(_("Please set Dropbox access keys in your site config"))
- sess = session.DropboxSession(self.app_access_key,
- self.get_password(fieldname="app_secret_key", raise_exception=False), "app_folder")
+ sess = session.DropboxSession(app_access_key, app_secret_key, "app_folder")
return sess
@@ -138,13 +145,17 @@ def dropbox_callback(oauth_token=None, not_approved=False):
frappe.db.commit()
else:
- frappe.respond_as_web_page(_("Dropbox Approval"), _("Illegal Access Token Please try again. Please close this window.
' + _('Please close this window') + '
'
+ frappe.respond_as_web_page(_("Dropbox Setup"),
+ _("Illegal Access Token. Please try again") + close,
success=False, http_status_code=frappe.AuthenticationError.http_status_code)
else:
- frappe.respond_as_web_page(_("Dropbox Approval"), _("Dropbox Access not approved. Please close this window.
Please close this window.
Date: Tue, 20 Dec 2016 12:04:42 +0600
Subject: [PATCH 3/3] bumped to version 7.1.27
---
frappe/__init__.py | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/frappe/__init__.py b/frappe/__init__.py
index 691a99c4ad..b5b8cc6707 100644
--- a/frappe/__init__.py
+++ b/frappe/__init__.py
@@ -13,7 +13,7 @@ import os, sys, importlib, inspect, json
from .exceptions import *
from .utils.jinja import get_jenv, get_template, render_template
-__version__ = '7.1.26'
+__version__ = '7.1.27'
__title__ = "Frappe Framework"
local = Local()