From b649c49e64a487ac8ad347aed42336dec2e74cd7 Mon Sep 17 00:00:00 2001
From: alecpl <alec@alec.pl>
Date: Fri, 25 Feb 2011 04:16:05 -0500
Subject: [PATCH] - Fix attachments uploading, broken with devel-addressbook branch merge

---
 program/js/app.js |   23 +++++++++++++----------
 1 files changed, 13 insertions(+), 10 deletions(-)

diff --git a/program/js/app.js b/program/js/app.js
index 712400a..92b7a67 100644
--- a/program/js/app.js
+++ b/program/js/app.js
@@ -3190,7 +3190,7 @@
 
     // create hidden iframe and post upload form
     if (send) {
-      this.async_upload_form(form, 'upload', function(e) {
+      var frame_name = this.async_upload_form(form, 'upload', function(e) {
         var d, content = '';
         try {
           if (this.contentDocument) {
@@ -3199,7 +3199,7 @@
             d = this.contentWindow.document;
           }
           content = d.childNodes[0].innerHTML;
-        } catch (e) {}
+        } catch (err) {}
 
         if (!content.match(/add2attachment/) && (!bw.opera || (rcmail.env.uploadframe && rcmail.env.uploadframe == e.data.ts))) {
           if (!content.match(/display_message/))
@@ -3212,7 +3212,9 @@
       });
 
       // display upload indicator and cancel button
-      var content = this.get_label('uploading');
+      var content = this.get_label('uploading'),
+        ts = frame_name.replace(/^rcmupload/, '');
+
       if (this.env.loadingicon)
         content = '<img src="'+this.env.loadingicon+'" alt="" />'+content;
       if (this.env.cancelicon)
@@ -3486,15 +3488,14 @@
     if (q == this.ksearch_value)
       return;
 
-    if (q.length < min) {
+    if (q.length && q.length < min) {
       if (!this.env.acinfo) {
-        var label = this.get_label('autocompletechars');
-        label = label.replace('$min', min);
-        this.env.acinfo = this.display_message(label);
+        this.env.acinfo = this.display_message(
+          this.get_label('autocompletechars').replace('$min', min));
       }
       return;
     }
-    else if (this.env.acinfo && q.length == min) {
+    else if (this.env.acinfo) {
       this.hide_message(this.env.acinfo);
     }
 
@@ -5374,8 +5375,8 @@
   // post the given form to a hidden iframe
   this.async_upload_form = function(form, action, onload)
   {
-    var ts = new Date().getTime();
-    var frame_name = 'rcmupload'+ts;
+    var ts = new Date().getTime(),
+      frame_name = 'rcmupload'+ts;
 
     // have to do it this way for IE
     // otherwise the form will be posted to a new window
@@ -5400,6 +5401,8 @@
     form.action = this.url(action, { _uploadid:ts });
     form.setAttribute('enctype', 'multipart/form-data');
     form.submit();
+
+    return frame_name;
   };
   
   // starts interval for keep-alive/check-recent signal

--
Gitblit v1.9.1