summaryrefslogtreecommitdiff
path: root/program/steps
diff options
context:
space:
mode:
authorthomascube <thomas@roundcube.net>2011-04-19 20:41:24 +0000
committerthomascube <thomas@roundcube.net>2011-04-19 20:41:24 +0000
commitbbb1427caabba60e4329d4b3653fbf29d5ddddcc (patch)
tree0bc16083f5731593ed6a35a374a34a2e9b6a745d /program/steps
parent968754b09ebc1b501d0840e8c4eb3d0f617a5080 (diff)
Gracefully shrug on database errors
Diffstat (limited to 'program/steps')
-rw-r--r--program/steps/settings/delete_identity.inc4
-rw-r--r--program/steps/settings/edit_identity.inc2
-rw-r--r--program/steps/settings/folders.inc4
3 files changed, 5 insertions, 5 deletions
diff --git a/program/steps/settings/delete_identity.inc b/program/steps/settings/delete_identity.inc
index 9f76046b7..275bcb684 100644
--- a/program/steps/settings/delete_identity.inc
+++ b/program/steps/settings/delete_identity.inc
@@ -34,10 +34,10 @@ if ($iid && preg_match('/^[0-9]+(,[0-9]+)*$/', $iid))
$deleted = !$plugin['abort'] ? $USER->delete_identity($iid) : $plugin['result'];
- if ($deleted)
+ if ($deleted > 0 && $deleted !== false)
$OUTPUT->show_message('deletedsuccessfully', 'confirmation', null, false);
else
- $OUTPUT->show_message($plugin['message'] ? $plugin['message'] : 'nodeletelastidentity', 'error', null, false);
+ $OUTPUT->show_message($plugin['message'] ? $plugin['message'] : ($deleted < 0 ? 'nodeletelastidentity' : 'errorsaving'), 'error', null, false);
// send response
if ($OUTPUT->ajax_call)
diff --git a/program/steps/settings/edit_identity.inc b/program/steps/settings/edit_identity.inc
index 71bd349a3..426c18ed0 100644
--- a/program/steps/settings/edit_identity.inc
+++ b/program/steps/settings/edit_identity.inc
@@ -28,7 +28,7 @@ if (($_GET['_iid'] || $_POST['_iid']) && $RCMAIL->action=='edit-identity') {
if (is_array($IDENTITY_RECORD))
$OUTPUT->set_env('iid', $IDENTITY_RECORD['identity_id']);
else {
- $OUTPUT->show_message('opnotpermitted', 'error');
+ $OUTPUT->show_message('databaserror', 'error');
// go to identities page
rcmail_overwrite_action('identities');
return;
diff --git a/program/steps/settings/folders.inc b/program/steps/settings/folders.inc
index dcc3ce64b..a215d008b 100644
--- a/program/steps/settings/folders.inc
+++ b/program/steps/settings/folders.inc
@@ -354,11 +354,11 @@ function rcmail_rename_folder($oldname, $newname)
foreach ($a_threaded as $key => $val) {
if ($key == $oldname) {
unset($a_threaded[$key]);
- $a_threaded[$newname] = true;
+ $a_threaded[$newname] = true;
}
else if (preg_match($oldprefix, $key)) {
unset($a_threaded[$key]);
- $a_threaded[preg_replace($oldprefix, $newname.$delimiter, $key)] = true;
+ $a_threaded[preg_replace($oldprefix, $newname.$delimiter, $key)] = true;
}
}
$RCMAIL->user->save_prefs(array('message_threading' => $a_threaded));