From 3f97120cb1f546f9c7973f11949e37ac1fb23412 Mon Sep 17 00:00:00 2001
From: vbenincasa <vbenincasa@gmail.com>
Date: Sun, 04 Oct 2009 04:16:20 -0400
Subject: [PATCH] - Added an alert message when uploading still in progress and the user tries to send the message - Added the functionality to abort the upload process - Changed the loading icon background to transparent, so it can be used in other templates easily

---
 program/js/app.js |   19 +++++++++++++++++--
 1 files changed, 17 insertions(+), 2 deletions(-)

diff --git a/program/js/app.js b/program/js/app.js
index 016162f..879c9aa 100644
--- a/program/js/app.js
+++ b/program/js/app.js
@@ -1631,7 +1631,7 @@
       add_url += '&_search='+this.env.search_request;
 
     // set page=1 if changeing to another mailbox
-    if (!page  && this.env.mailbox != mbox)
+    if (!page && this.env.mailbox != mbox)
       {
       page = 1;
       this.env.current_page = page;
@@ -2176,7 +2176,10 @@
       var list = this.gui_objects.attachmentlist.getElementsByTagName("li");
       for (i=0;i<list.length;i++)
         if (!String(list[i].id).match(/^rcmfile/))
+          {
+          alert(this.get_label('notuploadedwarning'));
           return false;
+          }
     }
     
     // display localized warning for missing subject
@@ -2484,10 +2487,12 @@
       
       // hide upload form
       this.show_attachment_form(false);
-      // display upload indicator
+      // display upload indicator and cancel button
       var content = this.get_label('uploading');
       if (this.env.loadingicon)
         content = '<img src="'+this.env.loadingicon+'" alt="" />'+content;
+      if (this.env.cancelicon)
+        content = '<a title="'+this.get_label('cancel')+'" onclick="return rcmail.cancel_attachment_upload(\''+ts+'\', \''+frame_name+'\');" href="#cancelupload"><img src="'+this.env.cancelicon+'" alt="" /></a>'+content;
       this.add2attachment_list(ts, content);
       }
     
@@ -2535,6 +2540,16 @@
     return true;
     };
 
+  this.cancel_attachment_upload = function(name, frame_name)
+    {
+    if (!name || !frame_name)
+      return false;
+
+    this.remove_from_attachment_list(name);
+    $("iframe[name='"+frame_name+"']").remove();
+    return false;
+    };
+
   // send remote request to add a new contact
   this.add_contact = function(value)
     {

--
Gitblit v1.9.1