diff --git a/erpnext/patches.txt b/erpnext/patches.txt
index fcf0ea7..5db55c6 100644
--- a/erpnext/patches.txt
+++ b/erpnext/patches.txt
@@ -158,3 +158,4 @@
 erpnext.patches.v5_0.rename_pos_setting
 erpnext.patches.v5_0.update_operation_description
 erpnext.patches.v5_0.set_footer_address
+execute:frappe.db.set_value("Backup Manager", None, "send_backups_to_dropbox", 1 if frappe.db.get_value("Backup Manager", None, "upload_backups_to_dropbox") in ("Daily", "Weekly") else 0)
diff --git a/erpnext/setup/doctype/backup_manager/backup_dropbox.py b/erpnext/setup/doctype/backup_manager/backup_dropbox.py
index c6862d2..9e38833 100644
--- a/erpnext/setup/doctype/backup_manager/backup_dropbox.py
+++ b/erpnext/setup/doctype/backup_manager/backup_dropbox.py
@@ -48,6 +48,7 @@
 			frappe.db.set_value("Backup Manager", "Backup Manager", "dropbox_access_key", access_token.key)
 			frappe.db.set_value("Backup Manager", "Backup Manager", "dropbox_access_secret", access_token.secret)
 			frappe.db.set_value("Backup Manager", "Backup Manager", "dropbox_access_allowed", allowed)
+			frappe.db.set_value("Backup Manager", "Backup Manager", "send_backups_to_dropbox", 1)
 			dropbox_client = client.DropboxClient(sess)
 			try:
 				dropbox_client.file_create_folder("files")
diff --git a/erpnext/setup/doctype/backup_manager/backup_files_list.html b/erpnext/setup/doctype/backup_manager/backup_files_list.html
new file mode 100644
index 0000000..23b1e25
--- /dev/null
+++ b/erpnext/setup/doctype/backup_manager/backup_files_list.html
@@ -0,0 +1,30 @@
+<table class="table table-bordered" style="max-width: 600px;">
+    <thead>
+        <tr>
+            <th style="width: 30%;">
+                {{ __("Date") }}
+            </th>
+            <th style="width: 50%;">
+                {{ __("File") }}
+            </th>
+            <th>
+                {{ __("Size") }}
+            </th>
+        </tr>
+    </thead>
+    <tbody>
+        {% for (var i=0; i < files.length; i++) { %}
+        <tr>
+            <td>
+                {{ files[i][1] }}
+            </td>
+            <td>
+                <a href="{{ files[i][0] }}" target="_blank">{{ files[i][0] }}</a>
+            </td>
+            <td>
+                {{ files[i][2] }}
+            </td>
+        </tr>
+        {% } %}
+    </tbody>
+</table>
diff --git a/erpnext/setup/doctype/backup_manager/backup_manager.js b/erpnext/setup/doctype/backup_manager/backup_manager.js
index 6f4ec6b..cb4104a 100644
--- a/erpnext/setup/doctype/backup_manager/backup_manager.js
+++ b/erpnext/setup/doctype/backup_manager/backup_manager.js
@@ -2,35 +2,16 @@
 // License: GNU General Public License v3. See license.txt
 
 $.extend(cur_frm.cscript, {
+	onload_post_render: function() {
+		cur_frm.fields_dict.allow_dropbox_access.$input.addClass("btn-primary");
+
+		if(cur_frm.doc.__onload && cur_frm.doc.__onload.files) {
+			$(frappe.render_template("backup_files_list", {files:cur_frm.doc.__onload.files}))
+				.appendTo(cur_frm.fields_dict.current_backups.$wrapper.empty());
+		}
+	},
 	refresh: function() {
 		cur_frm.disable_save();
-
-		if(!(cint(cur_frm.doc.dropbox_access_allowed) ||
-			cint(cur_frm.doc.gdrive_access_allowed))) {
-				cur_frm.set_intro(__("You can start by selecting backup frequency and granting access for sync"));
-		} else {
-			var services = {
-				"dropbox": __("Dropbox")
-				// "gdrive": __("Google Drive")
-			}
-			var active_services = [];
-
-			$.each(services, function(service, label) {
-				var access_allowed = cint(cur_frm.doc[service + "_access_allowed"]);
-				var frequency = cur_frm.doc["upload_backups_to_" + service];
-				if(access_allowed && frequency && frequency !== "Never") {
-					active_services.push(label + " [" + frequency + "]");
-				}
-			});
-
-			if(active_services.length > 0) {
-				cur_frm.set_intro(__("Backups will be uploaded to") + ": " +
-					frappe.utils.comma_and(active_services));
-			} else {
-				cur_frm.set_intro("");
-			}
-		}
-
 	},
 
 	validate_send_notifications_to: function() {
diff --git a/erpnext/setup/doctype/backup_manager/backup_manager.json b/erpnext/setup/doctype/backup_manager/backup_manager.json
index e8840d5..7aa038e 100644
--- a/erpnext/setup/doctype/backup_manager/backup_manager.json
+++ b/erpnext/setup/doctype/backup_manager/backup_manager.json
@@ -8,16 +8,22 @@
   {
    "fieldname": "setup", 
    "fieldtype": "Section Break", 
-   "label": "Setup", 
+   "label": "Download Backups", 
    "permlevel": 0
   }, 
   {
-   "description": "Email ids separated by commas.", 
-   "fieldname": "send_notifications_to", 
-   "fieldtype": "Data", 
-   "label": "Send Notifications To", 
+   "fieldname": "current_backups", 
+   "fieldtype": "HTML", 
+   "label": "Current Backups", 
    "permlevel": 0, 
-   "reqd": 1
+   "precision": ""
+  }, 
+  {
+   "description": "", 
+   "fieldname": "sync_with_dropbox", 
+   "fieldtype": "Section Break", 
+   "label": "Sync with Dropbox", 
+   "permlevel": 0
   }, 
   {
    "fieldname": "backup_right_now", 
@@ -28,13 +34,15 @@
    "read_only": 1
   }, 
   {
-   "description": "Note: Backups and files are not deleted from Dropbox, you will have to delete them manually.", 
-   "fieldname": "sync_with_dropbox", 
-   "fieldtype": "Section Break", 
-   "label": "Sync with Dropbox", 
-   "permlevel": 0
+   "fieldname": "send_backups_to_dropbox", 
+   "fieldtype": "Check", 
+   "label": "Send Backups to Dropbox", 
+   "permlevel": 0, 
+   "precision": ""
   }, 
   {
+   "depends_on": "send_backups_to_dropbox", 
+   "description": "Note: Backups and files are not deleted from Dropbox, you will have to delete them manually.", 
    "fieldname": "upload_backups_to_dropbox", 
    "fieldtype": "Select", 
    "label": "Upload Backups to Dropbox", 
@@ -42,6 +50,15 @@
    "permlevel": 0
   }, 
   {
+   "depends_on": "send_backups_to_dropbox", 
+   "description": "Email ids separated by commas.", 
+   "fieldname": "send_notifications_to", 
+   "fieldtype": "Data", 
+   "label": "Send Notifications To", 
+   "permlevel": 0, 
+   "reqd": 0
+  }, 
+  {
    "fieldname": "dropbox_access_key", 
    "fieldtype": "Data", 
    "hidden": 1, 
@@ -66,6 +83,7 @@
    "read_only": 1
   }, 
   {
+   "depends_on": "send_backups_to_dropbox", 
    "fieldname": "allow_dropbox_access", 
    "fieldtype": "Button", 
    "label": "Allow Dropbox Access", 
@@ -140,7 +158,7 @@
  "icon": "icon-cloud-upload", 
  "idx": 1, 
  "issingle": 1, 
- "modified": "2015-02-05 05:11:34.700674", 
+ "modified": "2015-05-26 04:54:10.193573", 
  "modified_by": "Administrator", 
  "module": "Setup", 
  "name": "Backup Manager", 
diff --git a/erpnext/setup/doctype/backup_manager/backup_manager.py b/erpnext/setup/doctype/backup_manager/backup_manager.py
index 4a38a6a..8d9d48f 100644
--- a/erpnext/setup/doctype/backup_manager/backup_manager.py
+++ b/erpnext/setup/doctype/backup_manager/backup_manager.py
@@ -4,13 +4,36 @@
 # For license information, please see license.txt
 
 from __future__ import unicode_literals
+from frappe.utils import get_site_path
+from frappe.utils.data import convert_utc_to_user_timezone
+import os
+import datetime
 import frappe
-from frappe import _
 
 from frappe.model.document import Document
 
 class BackupManager(Document):
-	pass
+	def onload(self):
+		self.set_onload("files", get_files())
+
+def get_files():
+	def get_time(path):
+		dt = os.path.getmtime(path)
+		return convert_utc_to_user_timezone(datetime.datetime.utcfromtimestamp(dt)).strftime('%Y-%m-%d %H:%M')
+
+	def get_size(path):
+		size = os.path.getsize(path)
+		if size > 1048576:
+			return "{0:.1f}M".format(float(size) / 1048576)
+		else:
+			return "{0:.1f}K".format(float(size) / 1024)
+
+	path = get_site_path('private', 'backups')
+	files = [x for x in os.listdir(path) if os.path.isfile(os.path.join(path, x))]
+	files = [('/backups/' + _file,
+		get_time(os.path.join(path, _file)),
+		get_size(os.path.join(path, _file))) for _file in files]
+	return files
 
 def take_backups_daily():
 	take_backups_if("Daily")
@@ -19,11 +42,12 @@
 	take_backups_if("Weekly")
 
 def take_backups_if(freq):
-	if frappe.db.get_value("Backup Manager", None, "upload_backups_to_dropbox")==freq:
-		take_backups_dropbox()
+	if frappe.db.get_value("Backup Manager", None, "send_backups_to_dropbox"):
+		if frappe.db.get_value("Backup Manager", None, "upload_backups_to_dropbox")==freq:
+			take_backups_dropbox()
 
-	# if frappe.db.get_value("Backup Manager", None, "upload_backups_to_gdrive")==freq:
-	# 	take_backups_gdrive()
+		# if frappe.db.get_value("Backup Manager", None, "upload_backups_to_gdrive")==freq:
+		# 	take_backups_gdrive()
 
 @frappe.whitelist()
 def take_backups_dropbox():
