Fix "Non-static method PEAR::isError() should not be called statically" errors (#1490281)
| | |
| | | - Fix cursor position on reply below the quote in HTML mode (#1490263) |
| | | - Fix so "over quota" errors are displayed also in message compose page |
| | | - Fix duplicate entries supression in autocomplete result (#1490290) |
| | | - Fix "Non-static method PEAR::isError() should not be called statically" errors (#1490281) |
| | | |
| | | RELEASE 1.1.0 |
| | | ------------- |
| | |
| | | $this->sieve->setDebug(true, array($this, 'debug_handler')); |
| | | } |
| | | |
| | | if (PEAR::isError($this->sieve->connect($host, $port, $options, $usetls))) { |
| | | $result = $this->sieve->connect($host, $port, $options, $usetls); |
| | | |
| | | if (is_a($result, 'PEAR_Error')) { |
| | | return $this->_set_error(self::ERROR_CONNECTION); |
| | | } |
| | | |
| | |
| | | $password = $auth_pw; |
| | | } |
| | | |
| | | if (PEAR::isError($this->sieve->login($username, $password, |
| | | $auth_type ? strtoupper($auth_type) : null, $authz)) |
| | | ) { |
| | | $result = $this->sieve->login($username, $password, $auth_type ? strtoupper($auth_type) : null, $authz); |
| | | |
| | | if (is_a($result, 'PEAR_Error')) { |
| | | return $this->_set_error(self::ERROR_LOGIN); |
| | | } |
| | | |
| | |
| | | */ |
| | | public function save($name = null) |
| | | { |
| | | if (!$this->sieve) |
| | | if (!$this->sieve) { |
| | | return $this->_set_error(self::ERROR_INTERNAL); |
| | | } |
| | | |
| | | if (!$this->script) |
| | | if (!$this->script) { |
| | | return $this->_set_error(self::ERROR_INTERNAL); |
| | | } |
| | | |
| | | if (!$name) |
| | | if (!$name) { |
| | | $name = $this->current; |
| | | } |
| | | |
| | | $script = $this->script->as_text(); |
| | | |
| | | if (!$script) |
| | | if (!$script) { |
| | | $script = '/* empty script */'; |
| | | } |
| | | |
| | | if (PEAR::isError($this->sieve->installScript($name, $script))) |
| | | $result = $this->sieve->installScript($name, $script); |
| | | if (is_a($result, 'PEAR_Error')) { |
| | | return $this->_set_error(self::ERROR_INSTALL); |
| | | } |
| | | |
| | | return true; |
| | | } |
| | |
| | | */ |
| | | public function save_script($name, $content = null) |
| | | { |
| | | if (!$this->sieve) |
| | | if (!$this->sieve) { |
| | | return $this->_set_error(self::ERROR_INTERNAL); |
| | | } |
| | | |
| | | if (!$content) |
| | | if (!$content) { |
| | | $content = '/* empty script */'; |
| | | } |
| | | |
| | | if (PEAR::isError($this->sieve->installScript($name, $content))) |
| | | $result = $this->sieve->installScript($name, $content); |
| | | |
| | | if (is_a($result, 'PEAR_Error')) { |
| | | return $this->_set_error(self::ERROR_INSTALL); |
| | | } |
| | | |
| | | return true; |
| | | } |
| | |
| | | */ |
| | | public function activate($name = null) |
| | | { |
| | | if (!$this->sieve) |
| | | if (!$this->sieve) { |
| | | return $this->_set_error(self::ERROR_INTERNAL); |
| | | } |
| | | |
| | | if (!$name) |
| | | if (!$name) { |
| | | $name = $this->current; |
| | | } |
| | | |
| | | if (PEAR::isError($this->sieve->setActive($name))) |
| | | $result = $this->sieve->setActive($name); |
| | | |
| | | if (is_a($result, 'PEAR_Error')) { |
| | | return $this->_set_error(self::ERROR_ACTIVATE); |
| | | } |
| | | |
| | | return true; |
| | | } |
| | |
| | | */ |
| | | public function deactivate() |
| | | { |
| | | if (!$this->sieve) |
| | | if (!$this->sieve) { |
| | | return $this->_set_error(self::ERROR_INTERNAL); |
| | | } |
| | | |
| | | if (PEAR::isError($this->sieve->setActive(''))) |
| | | $result = $this->sieve->setActive(''); |
| | | |
| | | if (is_a($result, 'PEAR_Error')) { |
| | | return $this->_set_error(self::ERROR_DEACTIVATE); |
| | | } |
| | | |
| | | return true; |
| | | } |
| | |
| | | */ |
| | | public function remove($name = null) |
| | | { |
| | | if (!$this->sieve) |
| | | if (!$this->sieve) { |
| | | return $this->_set_error(self::ERROR_INTERNAL); |
| | | } |
| | | |
| | | if (!$name) |
| | | if (!$name) { |
| | | $name = $this->current; |
| | | } |
| | | |
| | | // script must be deactivated first |
| | | if ($name == $this->sieve->getActive()) |
| | | if (PEAR::isError($this->sieve->setActive(''))) |
| | | return $this->_set_error(self::ERROR_DELETE); |
| | | if ($name == $this->sieve->getActive()) { |
| | | $result = $this->sieve->setActive(''); |
| | | |
| | | if (PEAR::isError($this->sieve->removeScript($name))) |
| | | if (is_a($result, 'PEAR_Error')) { |
| | | return $this->_set_error(self::ERROR_DELETE); |
| | | } |
| | | } |
| | | |
| | | if ($name == $this->current) |
| | | $result = $this->sieve->removeScript($name); |
| | | |
| | | if (is_a($result, 'PEAR_Error')) { |
| | | return $this->_set_error(self::ERROR_DELETE); |
| | | } |
| | | |
| | | if ($name == $this->current) { |
| | | $this->current = null; |
| | | } |
| | | |
| | | return true; |
| | | } |
| | |
| | | |
| | | $ext = $this->sieve->getExtensions(); |
| | | |
| | | if (PEAR::isError($ext)) { |
| | | if (is_a($ext, 'PEAR_Error')) { |
| | | return array(); |
| | | } |
| | | |
| | |
| | | |
| | | $list = $this->sieve->listScripts(); |
| | | |
| | | if (PEAR::isError($list)) |
| | | if (is_a($list, 'PEAR_Error')) { |
| | | return $this->_set_error(self::ERROR_OTHER); |
| | | } |
| | | |
| | | $this->list = $list; |
| | | } |
| | |
| | | |
| | | $script = $this->sieve->getScript($name); |
| | | |
| | | if (PEAR::isError($script)) |
| | | if (is_a($script, 'PEAR_Error')) { |
| | | return $this->_set_error(self::ERROR_OTHER); |
| | | } |
| | | |
| | | // try to parse from Roundcube format |
| | | $this->script = $this->_parse($script); |
| | |
| | | |
| | | $content = $this->sieve->getScript($name); |
| | | |
| | | if (PEAR::isError($content)) |
| | | if (is_a($content, 'PEAR_Error')) { |
| | | return $this->_set_error(self::ERROR_OTHER); |
| | | } |
| | | |
| | | return $content; |
| | | } |
| | |
| | | if ($copy) { |
| | | $content = $this->sieve->getScript($copy); |
| | | |
| | | if (PEAR::isError($content)) |
| | | if (is_a($content, 'PEAR_Error')) { |
| | | return $this->_set_error(self::ERROR_OTHER); |
| | | } |
| | | } |
| | | |
| | | |
| | | return $this->save_script($name, $content); |
| | | } |
| | |
| | | $script_name = rcube_utils::get_input_value('_set', rcube_utils::INPUT_GPC, true); |
| | | $script = $this->sieve->get_script($script_name); |
| | | |
| | | if (PEAR::isError($script)) |
| | | if (is_a($script, 'PEAR_Error')) { |
| | | exit; |
| | | } |
| | | |
| | | $browser = new rcube_browser; |
| | | |
| | |
| | | $ldap = Net_LDAP2::connect($ldapConfig); |
| | | |
| | | // Checking for connection error |
| | | if (PEAR::isError($ldap)) { |
| | | if (is_a($ldap, 'PEAR_Error')) { |
| | | return PASSWORD_CONNECT_ERROR; |
| | | } |
| | | |
| | |
| | | |
| | | $ldap = Net_LDAP2::connect($ldapConfig); |
| | | |
| | | if (PEAR::isError($ldap)) { |
| | | if (is_a($ldap, 'PEAR_Error')) { |
| | | return ''; |
| | | } |
| | | |
| | |
| | | |
| | | $result = $ldap->search($base, $filter, $options); |
| | | $ldap->done(); |
| | | if (PEAR::isError($result) || ($result->count() != 1)) { |
| | | if (is_a($result, 'PEAR_Error') || ($result->count() != 1)) { |
| | | return ''; |
| | | } |
| | | |
| | |
| | | $poppassd = new Net_Socket(); |
| | | |
| | | $result = $poppassd->connect($rcmail->config->get('password_pop_host'), $rcmail->config->get('password_pop_port'), null); |
| | | if (PEAR::isError($result)) { |
| | | if (is_a($result, 'PEAR_Error')) { |
| | | return $this->format_error_result(PASSWORD_CONNECT_ERROR, $result->getMessage()); |
| | | } |
| | | else { |
| | |
| | | function save($curpass, $passwd) |
| | | { |
| | | $rcmail = rcmail::get_instance(); |
| | | // include('Net/Socket.php'); |
| | | $vpopmaild = new Net_Socket(); |
| | | $host = $rcmail->config->get('password_vpopmaild_host'); |
| | | $port = $rcmail->config->get('password_vpopmaild_port'); |
| | | |
| | | if (PEAR::isError($vpopmaild->connect($rcmail->config->get('password_vpopmaild_host'), |
| | | $rcmail->config->get('password_vpopmaild_port'), null))) { |
| | | $result = $vpopmaild->connect($hostname, $port, null); |
| | | if (is_a($result, 'PEAR_Error')) { |
| | | return PASSWORD_CONNECT_ERROR; |
| | | } |
| | | |
| | |
| | | // use common temp dir |
| | | $temp_dir = $this->config->get('temp_dir'); |
| | | $body_file = tempnam($temp_dir, 'rcmMsg'); |
| | | if (PEAR::isError($mime_result = $message->saveMessageBody($body_file))) { |
| | | $mime_result = $message->saveMessageBody($body_file); |
| | | |
| | | if (is_a($mime_result, 'PEAR_Error')) { |
| | | self::raise_error(array('code' => 650, 'type' => 'php', |
| | | 'file' => __FILE__, 'line' => __LINE__, |
| | | 'message' => "Could not create message: ".$mime_result->getMessage()), |
| | | TRUE, FALSE); |
| | | true, false); |
| | | return false; |
| | | } |
| | | |
| | | $msg_body = fopen($body_file, 'r'); |
| | | } |
| | | else { |
| | |
| | | |
| | | $msg_body = $message->get(); |
| | | |
| | | if (PEAR::isError($msg_body)) { |
| | | if (is_a($msg_body, 'PEAR_Error')) { |
| | | self::raise_error(array('code' => 650, 'type' => 'php', |
| | | 'file' => __FILE__, 'line' => __LINE__, |
| | | 'message' => "Could not create message: ".$msg_body->getMessage()), |
| | | TRUE, FALSE); |
| | | true, false); |
| | | } |
| | | else { |
| | | $delim = $this->config->header_delimiter(); |
| | |
| | | // try to connect to server and exit on failure |
| | | $result = $this->conn->connect($CONFIG['smtp_timeout']); |
| | | |
| | | if (PEAR::isError($result)) { |
| | | if (is_a($result, 'PEAR_Error')) { |
| | | $this->response[] = "Connection failed: ".$result->getMessage(); |
| | | $this->error = array('label' => 'smtpconnerror', 'vars' => array('code' => $this->conn->_code)); |
| | | $this->conn = null; |
| | |
| | | |
| | | $result = $this->conn->auth($smtp_user, $smtp_pass, $smtp_auth_type, $use_tls, $smtp_authz); |
| | | |
| | | if (PEAR::isError($result)) { |
| | | if (is_a($result, 'PEAR_Error')) { |
| | | $this->error = array('label' => 'smtpautherror', 'vars' => array('code' => $this->conn->_code)); |
| | | $this->response[] .= 'Authentication failure: ' . $result->getMessage() . ' (Code: ' . $result->getCode() . ')'; |
| | | $this->reset(); |
| | |
| | | } |
| | | |
| | | // set From: address |
| | | if (PEAR::isError($this->conn->mailFrom($from, $from_params))) { |
| | | $result = $this->conn->mailFrom($from, $from_params); |
| | | if (is_a($result, 'PEAR_Error')) { |
| | | $err = $this->conn->getResponse(); |
| | | $this->error = array('label' => 'smtpfromerror', 'vars' => array( |
| | | 'from' => $from, 'code' => $err[0], 'msg' => $err[1])); |
| | |
| | | |
| | | // prepare list of recipients |
| | | $recipients = $this->_parse_rfc822($recipients); |
| | | if (PEAR::isError($recipients)) { |
| | | if (is_a($recipients, 'PEAR_Error')) { |
| | | $this->error = array('label' => 'smtprecipientserror'); |
| | | $this->reset(); |
| | | return false; |
| | |
| | | |
| | | // set mail recipients |
| | | foreach ($recipients as $recipient) { |
| | | if (PEAR::isError($this->conn->rcptTo($recipient, $recipient_params))) { |
| | | $result = $this->conn->rcptTo($recipient, $recipient_params); |
| | | if (is_a($result, 'PEAR_Error')) { |
| | | $err = $this->conn->getResponse(); |
| | | $this->error = array('label' => 'smtptoerror', 'vars' => array( |
| | | 'to' => $recipient, 'code' => $err[0], 'msg' => $err[1])); |
| | |
| | | |
| | | // Send the message's headers and the body as SMTP data. |
| | | $result = $this->conn->data($data, $text_headers); |
| | | if (PEAR::isError($result)) { |
| | | if (is_a($result, 'PEAR_Error')) { |
| | | $err = $this->conn->getResponse(); |
| | | if (!in_array($err[0], array(354, 250, 221))) { |
| | | $msg = sprintf('[%d] %s', $err[0], $err[1]); |
| | |
| | | else { |
| | | $temp_dir = $RCMAIL->config->get('temp_dir'); |
| | | $mailbody_file = tempnam($temp_dir, 'rcmMsg'); |
| | | $msg = $MAIL_MIME->saveMessageBody($mailbody_file); |
| | | |
| | | if (!PEAR::isError($msg = $MAIL_MIME->saveMessageBody($mailbody_file))) { |
| | | if (!is_a($msg, 'PEAR_Error')) { |
| | | $msg = $mailbody_file; |
| | | } |
| | | } |
| | |
| | | $headers = ''; |
| | | } |
| | | |
| | | if (PEAR::isError($msg)) { |
| | | if (is_a($msg, 'PEAR_Error')) { |
| | | rcube::raise_error(array('code' => 650, 'type' => 'php', |
| | | 'file' => __FILE__, 'line' => __LINE__, |
| | | 'message' => "Could not create message: ".$msg->getMessage()), |
| | |
| | | if (!in_array($image_name, $included_images)) { |
| | | // add the image to the MIME message |
| | | $res = $mime_message->addHTMLImage($img_file, 'image/gif', '', true, $image_name); |
| | | if (PEAR::isError($res)) { |
| | | if (is_a($res, 'PEAR_Error')) { |
| | | $RCMAIL->output->show_message("emoticonerror", 'error'); |
| | | continue; |
| | | } |