Gracefully shrug on database errors
| | |
| | | |
| | | 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); |
| | |
| | | |
| | | // we'll not delete last identity |
| | | if ($sql_arr['ident_count'] <= 1) |
| | | return false; |
| | | return -1; |
| | | |
| | | $this->db->query( |
| | | "UPDATE ".get_table_name('identities'). |
| | |
| | | $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.'; |
| | |
| | | |
| | | $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) |
| | |
| | | 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; |
| | |
| | | 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)); |