|
@@ -410,10 +410,17 @@ function sqimap_mailbox_exists ($imap_stream, $mailbox, $mailboxlist=null) {
|
|
|
* Before 1.3.0 used more arguments and returned data depended on those arguments.
|
|
|
* @param stream $imap_stream imap connection resource
|
|
|
* @param string $mailbox mailbox name
|
|
|
+ * @param boolean $handle_errors When TRUE, IMAP errors
|
|
|
+ * are handled herein, causing
|
|
|
+ * an error to be displayed on
|
|
|
+ * screen and execution to stop
|
|
|
+ * and when FALSE, error status
|
|
|
+ * is returned to the caller
|
|
|
+ * (OPTIONAL; default is TRUE)
|
|
|
* @return array results of select command (on success - permanentflags, flags and rights)
|
|
|
* @since 1.0 or older
|
|
|
*/
|
|
|
-function sqimap_mailbox_select ($imap_stream, $mailbox) {
|
|
|
+function sqimap_mailbox_select ($imap_stream, $mailbox, $handle_errors=true) {
|
|
|
if (empty($mailbox)) {
|
|
|
return;
|
|
|
}
|
|
@@ -439,7 +446,7 @@ function sqimap_mailbox_select ($imap_stream, $mailbox) {
|
|
|
}
|
|
|
|
|
|
$read = sqimap_run_command($imap_stream, 'SELECT ' . sqimap_encode_mailbox_name($mailbox),
|
|
|
- true, $response, $message);
|
|
|
+ $handle_errors, $response, $message);
|
|
|
$result = array();
|
|
|
for ($i = 0, $cnt = count($read); $i < $cnt; $i++) {
|
|
|
if (preg_match('/^\*\s+OK\s\[(\w+)\s(\w+)\]/',$read[$i], $regs)) {
|