summaryrefslogtreecommitdiff
path: root/program/js/app.js
diff options
context:
space:
mode:
Diffstat (limited to 'program/js/app.js')
-rw-r--r--program/js/app.js16
1 files changed, 10 insertions, 6 deletions
diff --git a/program/js/app.js b/program/js/app.js
index fc24a77d8..747a69f4e 100644
--- a/program/js/app.js
+++ b/program/js/app.js
@@ -3368,10 +3368,13 @@ function rcube_webmail()
if (!this.gui_objects.subscriptionlist)
return false;
- // find not protected folder
- for (var refid in this.env.subscriptionrows)
- if (this.env.subscriptionrows[refid]!=null && !this.env.subscriptionrows[refid][2])
+ // find not protected folder
+ var refid;
+ for (var rid in this.env.subscriptionrows)
+ if (this.env.subscriptionrows[rid]!=null && !this.env.subscriptionrows[rid][2]) {
+ refid = rid;
break;
+ }
var refrow, form;
var tbody = this.gui_objects.subscriptionlist.tBodies[0];
@@ -3384,10 +3387,11 @@ function rcube_webmail()
refid = replace.id;
}
- if (!id || !(refrow = document.getElementById(refid)))
+ if (!id || !refid || !(refrow = document.getElementById(refid)))
{
// Refresh page if we don't have a table row to clone
this.goto_url('folders');
+ return false;
}
else
{
@@ -3413,7 +3417,7 @@ function rcube_webmail()
// set messages count to zero
if (!replace)
row.cells[1].innerHTML = '*';
-
+
if (!replace && row.cells[2] && row.cells[2].firstChild.tagName.toLowerCase()=='input')
{
row.cells[2].firstChild.value = name;
@@ -4175,7 +4179,7 @@ function rcube_webmail()
if (this.env.framed && window.parent)
parent.location.href = url;
- else
+ else
location.href = url;
};