From 7c28d45c8e9a448002595d26ca5cf88726b47123 Mon Sep 17 00:00:00 2001
From: Thomas Bruederli <thomas@roundcube.net>
Date: Tue, 14 Jan 2014 12:19:16 -0500
Subject: [PATCH] Update class name in subscriptions folder list after saving folder properties
---
program/steps/settings/save_folder.inc | 3 +++
program/js/app.js | 12 +++++++++++-
2 files changed, 14 insertions(+), 1 deletions(-)
diff --git a/program/js/app.js b/program/js/app.js
index da10214..3c54756 100644
--- a/program/js/app.js
+++ b/program/js/app.js
@@ -5834,8 +5834,11 @@
// replace an existing table row with a new folder line (with subfolders)
this.replace_folder_row = function(oldfolder, newfolder, display_name, is_protected, class_name)
{
- if (!this.gui_objects.subscriptionlist)
+ if (!this.gui_objects.subscriptionlist) {
+ if (this.is_framed)
+ return parent.rcmail.replace_folder_row(oldfolder, newfolder, display_name, is_protected, class_name);
return false;
+ }
var i, n, len, name, dispname, oldrow, tmprow, row, level,
tbody = this.gui_objects.subscriptionlist.tBodies[0],
@@ -5846,6 +5849,13 @@
// find subfolders of renamed folder
list = this.get_subfolders(oldfolder);
+ // no renaming, only update class_name
+ if (oldfolder == newfolder) {
+ $('#'+id).attr('class', class_name || '');
+ this.subscription_list.focus();
+ return;
+ }
+
// replace an existing table row
this._remove_folder_row(id);
row = $(this.add_folder_row(newfolder, display_name, is_protected, subscribed, true, class_name));
diff --git a/program/steps/settings/save_folder.inc b/program/steps/settings/save_folder.inc
index f720735..d1449bb 100644
--- a/program/steps/settings/save_folder.inc
+++ b/program/steps/settings/save_folder.inc
@@ -189,6 +189,9 @@
rcmail_update_folder_row($folder['name'], $folder['oldname'], $folder['subscribe'], $folder['class']);
$OUTPUT->send('iframe');
}
+ else if (!empty($folder['class'])) {
+ rcmail_update_folder_row($folder['name'], $folder['oldname'], $folder['subscribe'], $folder['class']);
+ }
}
else {
// show error message
--
Gitblit v1.9.1