thomascube
2011-04-19 bbb1427caabba60e4329d4b3653fbf29d5ddddcc
Gracefully shrug on database errors

6 files modified
13 ■■■■■ changed files
program/include/rcube_mdb2.php 4 ●●● patch | view | raw | blame | history
program/include/rcube_user.php 2 ●●● patch | view | raw | blame | history
program/localization/en_US/messages.inc 1 ●●●● patch | view | raw | blame | history
program/steps/settings/delete_identity.inc 4 ●●●● patch | view | raw | blame | history
program/steps/settings/edit_identity.inc 2 ●●● patch | view | raw | blame | history
program/steps/settings/folders.inc patch | view | raw | blame | history
program/include/rcube_mdb2.php
@@ -266,7 +266,9 @@
                raise_error(array('code' => 500, 'type' => 'db',
                    'line' => __LINE__, 'file' => __FILE__,
                    'message' => $this->db_error_msg), true, true);
                    'message' => $this->db_error_msg), true, false);
                $result = false;
            }
            else {
                $result = $q->execute($params);
program/include/rcube_user.php
@@ -288,7 +288,7 @@
        // we'll not delete last identity
        if ($sql_arr['ident_count'] <= 1)
            return false;
            return -1;
        $this->db->query(
            "UPDATE ".get_table_name('identities').
program/localization/en_US/messages.inc
@@ -24,6 +24,7 @@
$messages['imaperror'] = 'Connection to IMAP server failed';
$messages['servererror'] = 'Server Error!';
$messages['servererrormsg'] = 'Server Error: $msg';
$messages['databaserror'] = 'Database Error!';
$messages['errorreadonly'] = 'Unable to perform operation. Folder is read-only';
$messages['errornoperm'] = 'Unable to perform operation. Permission denied';
$messages['invalidrequest'] = 'Invalid request! No data was saved.';
program/steps/settings/delete_identity.inc
@@ -34,10 +34,10 @@
  
  $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)
program/steps/settings/edit_identity.inc
@@ -28,7 +28,7 @@
  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;
program/steps/settings/folders.inc