| | |
| | | $this->filename = $basename; |
| | | } |
| | | |
| | | // load all configured plugins |
| | | $this->plugins->load_plugins((array)$this->config->get('plugins', array()), |
| | | array('filesystem_attachments', 'jqueryui')); |
| | | |
| | | // start session |
| | | $this->session_init(); |
| | | |
| | |
| | | $GLOBALS['OUTPUT'] = $this->load_gui(!empty($_REQUEST['_framed'])); |
| | | } |
| | | |
| | | // load plugins |
| | | // run init method on all the plugins |
| | | $this->plugins->init($this, $this->task); |
| | | $this->plugins->load_plugins((array)$this->config->get('plugins', array()), |
| | | array('filesystem_attachments', 'jqueryui')); |
| | | } |
| | | |
| | | /** |
| | |
| | | * @param string $fallback Fallback message label |
| | | * @param array $fallback_args Fallback message label arguments |
| | | * @param string $suffix Message label suffix |
| | | * @param array $params Additional parameters (type, prefix) |
| | | */ |
| | | public function display_server_error($fallback = null, $fallback_args = null, $suffix = '') |
| | | public function display_server_error($fallback = null, $fallback_args = null, $suffix = '', $params = array()) |
| | | { |
| | | $err_code = $this->storage->get_error_code(); |
| | | $res_code = $this->storage->get_response_code(); |
| | |
| | | $error = 'errornoperm'; |
| | | } |
| | | // try to detect full mailbox problem and display appropriate message |
| | | // there can be e.g. "Quota exceeded" or "quotum would exceed" |
| | | else if (stripos($err_str, 'quot') !== false && stripos($err_str, 'exceed') !== false) { |
| | | // there can be e.g. "Quota exceeded" / "quotum would exceed" / "Over quota" |
| | | else if (stripos($err_str, 'quot') !== false && preg_match('/exceed|over/i', $err_str)) { |
| | | $error = 'erroroverquota'; |
| | | } |
| | | else { |
| | |
| | | else if ($fallback) { |
| | | $error = $fallback; |
| | | $args = $fallback_args; |
| | | $params['prefix'] = false; |
| | | } |
| | | |
| | | if ($error) { |
| | | if ($suffix && $this->text_exists($error . $suffix)) { |
| | | $error .= $suffix; |
| | | } |
| | | $this->output->show_message($error, 'error', $args); |
| | | |
| | | $msg = $this->gettext(array('name' => $error, 'vars' => $args)); |
| | | |
| | | if ($params['prefix'] && $fallback) { |
| | | $msg = $this->gettext(array('name' => $fallback, 'vars' => $fallback_args)) . ' ' . $msg; |
| | | } |
| | | |
| | | $this->output->show_message($msg, $params['type'] ?: 'error'); |
| | | } |
| | | } |
| | | |
| | |
| | | if (!empty($_GET['_thumbnail'])) { |
| | | $temp_dir = $this->config->get('temp_dir'); |
| | | $thumbnail_size = 80; |
| | | list(,$ext) = explode('/', $file['mimetype']); |
| | | $mimetype = $file['mimetype']; |
| | | $file_ident = $file['id'] . ':' . $file['mimetype'] . ':' . $file['size']; |
| | | $cache_basename = $temp_dir . '/' . md5($file_ident . ':' . $this->user->ID . ':' . $thumbnail_size); |
| | | $cache_file = $cache_basename . '.' . $ext; |
| | | $cache_file = $cache_basename . '.thumb'; |
| | | |
| | | // render thumbnail image if not done yet |
| | | if (!is_file($cache_file)) { |
| | | if (!$file['path']) { |
| | | $orig_name = $filename = $cache_basename . '.orig.' . $ext; |
| | | $orig_name = $filename = $cache_basename . '.tmp'; |
| | | file_put_contents($orig_name, $file['data']); |
| | | } |
| | | else { |