fix: show alerts while uploading

This commit is contained in:
Himanshu Warekar 2019-08-12 09:05:34 +05:30
parent 184ee4ed5a
commit 097a366f28
2 changed files with 15 additions and 4 deletions

View file

@ -197,11 +197,12 @@ def upload_document_to_google_drive(doctype, docname, g_drive, format, letterhea
media = MediaFileUpload(get_absolute_path(fileurl), mimetype="application/pdf", resumable=True)
try:
display_upload_status("orange", _("Uploading file to Google Drive."))
google_drive_object.files().create(body=file_metadata, media_body=media, fields="id").execute()
except HttpError as e:
frappe.msgprint(_("Google Drive - Could not upload file - Error Code {0}").format(e))
return _("{0} {1} uploaded to Google Drive successfully.").format(doctype, docname)
display_upload_status("green", _("File Uploaded to Google Drive."))
@frappe.whitelist()
def upload_system_backup_to_google_drive(g_drive):
@ -233,6 +234,9 @@ def upload_system_backup_to_google_drive(g_drive):
return _("Google Drive Backup Successful.")
def display_upload_status(indicator, message):
frappe.publish_realtime("upload_google_drive", dict(indicator=indicator, message=message), user=frappe.session.user)
def daily_backup():
g_drive = frappe.db.exists("Google Drive", {"enable": 1, "enable_system_backup": 1, "frequency": "Daily"})
if g_drive:

View file

@ -457,6 +457,14 @@ frappe.ui.form.PrintPreview = Class.extend({
},
google_drive_upload: function() {
var me = this;
frappe.realtime.on("upload_google_drive", (data) => {
frappe.show_alert({
indicator: data.indicator,
message: data.message
});
});
this.wrapper.find(".btn-upload-drive").click(function () {
let uploader = new frappe.ui.Dialog({
title: __("Upload File to Google Drive"),
@ -485,8 +493,8 @@ frappe.ui.form.PrintPreview = Class.extend({
frappe.show_alert({
indicator: "red",
message: __("Uploading to Google Drive.")
})
message: __("Preparing file to upload.")
});
frappe.call({
method: "frappe.integrations.doctype.google_drive.google_drive.upload_document_to_google_drive",
@ -498,7 +506,6 @@ frappe.ui.form.PrintPreview = Class.extend({
letterhead: me.with_letterhead() ? "0" : "1"
},
callback: function(r) {
frappe.msgprint(r.message);
uploader.enable_primary_action();
}
})