summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authoralecpl <alec@alec.pl>2011-04-22 08:18:10 +0000
committeralecpl <alec@alec.pl>2011-04-22 08:18:10 +0000
commit3a24a1e41fdd783caa799ce0dbc9c32aaea1f379 (patch)
tree391e0da829fa347c1b4c95ad5b4b55bc8b2cfcfb
parent99fc468d40ec342c05be2aec3a0adb6b2d2820fb (diff)
- Fix update_contact_row() was setting wrong ID when newcid=null
-rw-r--r--program/js/app.js19
1 files changed, 8 insertions, 11 deletions
diff --git a/program/js/app.js b/program/js/app.js
index e529fa671..d0e408da2 100644
--- a/program/js/app.js
+++ b/program/js/app.js
@@ -3789,28 +3789,25 @@ function rcube_webmail()
// update a contact record in the list
this.update_contact_row = function(cid, cols_arr, newcid)
{
+ var c, row, list = this.contact_list;
+
cid = String(cid).replace(this.identifier_expr, '_');
- newcid = String(newcid).replace(this.identifier_expr, '_');
- var row;
- if (this.contact_list.rows[cid] && (row = this.contact_list.rows[cid].obj)) {
- for (var c=0; c<cols_arr.length; c++)
+ if (list.rows[cid] && (row = list.rows[cid].obj)) {
+ for (c=0; c<cols_arr.length; c++)
if (row.cells[c])
$(row.cells[c]).html(cols_arr[c]);
// cid change
if (newcid) {
+ newcid = String(newcid).replace(this.identifier_expr, '_');
row.id = 'rcmrow' + newcid;
- this.contact_list.remove_row(cid);
- this.contact_list.init_row(row);
- this.contact_list.selection[0] = newcid;
+ list.remove_row(cid);
+ list.init_row(row);
+ list.selection[0] = newcid;
row.style.display = '';
}
-
- return true;
}
-
- return false;
};
// add row to contacts list