27 #require_once 'Zend/Mail/Storage/Abstract.php'; 32 #require_once 'Zend/Mail/Protocol/Imap.php'; 37 #require_once 'Zend/Mail/Storage/Writable/Interface.php'; 42 #require_once 'Zend/Mail/Storage/Folder/Interface.php'; 47 #require_once 'Zend/Mail/Storage/Folder.php'; 52 #require_once 'Zend/Mail/Message.php'; 57 #require_once 'Zend/Mail/Storage.php'; 101 '\Answered' =>
'ANSWERED',
103 '\Unseen' =>
'UNSEEN',
104 '\Deleted' =>
'DELETED',
106 '\Flagged' =>
'FLAGGED');
117 if (!$this->_currentFolder) {
121 #require_once 'Zend/Mail/Storage/Exception.php'; 125 if ($flags ===
null) {
126 return count($this->_protocol->search(array(
'ALL')));
130 foreach ((array)$flags as $flag) {
131 if (isset(self::$_searchFlags[$flag])) {
132 $params[] = self::$_searchFlags[$flag];
135 $params[] = $this->_protocol->escapeString($flag);
151 return $this->_protocol->fetch(
'RFC822.SIZE',
$id);
153 return $this->_protocol->fetch(
'RFC822.SIZE', 1, INF);
165 $data = $this->_protocol->fetch(array(
'FLAGS',
'RFC822.HEADER'),
$id);
166 $header =
$data[
'RFC822.HEADER'];
169 foreach (
$data[
'FLAGS'] as $flag) {
170 $flags[] = isset(self::$_knownFlags[$flag]) ? self::$_knownFlags[$flag] : $flag;
173 return new $this->_messageClass(array(
'handler' => $this,
'id' =>
$id,
'headers' => $header,
'flags' => $flags));
189 if ($part !==
null) {
194 #require_once 'Zend/Mail/Storage/Exception.php'; 199 return $this->_protocol->fetch(
'RFC822.HEADER',
$id);
213 if ($part !==
null) {
218 #require_once 'Zend/Mail/Storage/Exception.php'; 222 return $this->_protocol->fetch(
'RFC822.TEXT',
$id);
245 $this->_has[
'flags'] =
true;
255 #require_once 'Zend/Mail/Storage/Exception.php'; 265 #require_once 'Zend/Mail/Storage/Exception.php'; 275 $this->_protocol->connect($host, $port, $ssl);
276 if (!$this->_protocol->login(
$params->user, $password)) {
280 #require_once 'Zend/Mail/Storage/Exception.php'; 294 $this->_currentFolder =
'';
295 $this->_protocol->logout();
306 if (!$this->_protocol->noop()) {
310 #require_once 'Zend/Mail/Storage/Exception.php'; 330 #require_once 'Zend/Mail/Storage/Exception.php'; 334 if (!$this->_protocol->expunge()) {
338 #require_once 'Zend/Mail/Storage/Exception.php'; 355 return $this->_protocol->fetch(
'UID',
$id);
358 return $this->_protocol->fetch(
'UID', 1, INF);
375 foreach ($ids as $k => $v) {
384 #require_once 'Zend/Mail/Storage/Exception.php'; 399 $folders = $this->_protocol->listMailbox((
string)$rootFolder);
404 #require_once 'Zend/Mail/Storage/Exception.php'; 408 ksort($folders, SORT_STRING);
410 $stack = array(
null);
411 $folderStack = array(
null);
412 $parentFolder = $root;
415 foreach ($folders as $globalName =>
$data) {
417 if (!$parent || strpos($globalName, $parent) === 0) {
418 $pos = strrpos($globalName,
$data[
'delim']);
419 if (
$pos ===
false) {
420 $localName = $globalName;
422 $localName = substr($globalName,
$pos + 1);
424 $selectable = !
$data[
'flags'] || !in_array(
'\\Noselect',
$data[
'flags']);
426 array_push($stack, $parent);
427 $parent = $globalName .
$data[
'delim'];
429 $parentFolder->$localName = $folder;
430 array_push($folderStack, $parentFolder);
431 $parentFolder = $folder;
434 $parent = array_pop($stack);
435 $parentFolder = array_pop($folderStack);
442 #require_once 'Zend/Mail/Storage/Exception.php'; 462 $this->_currentFolder = $globalName;
463 if (!$this->_protocol->select($this->_currentFolder)) {
464 $this->_currentFolder =
'';
468 #require_once 'Zend/Mail/Storage/Exception.php'; 500 $folder = $parentFolder->getGlobalName() .
'/' .
$name;
501 }
else if ($parentFolder !=
null) {
502 $folder = $parentFolder .
'/' .
$name;
507 if (!$this->_protocol->create($folder)) {
511 #require_once 'Zend/Mail/Storage/Exception.php'; 529 if (!$this->_protocol->delete(
$name)) {
533 #require_once 'Zend/Mail/Storage/Exception.php'; 551 $oldName = $oldName->getGlobalName();
554 if (!$this->_protocol->rename($oldName, $newName)) {
558 #require_once 'Zend/Mail/Storage/Exception.php'; 574 if ($folder ===
null) {
578 if ($flags ===
null) {
583 if (!$this->_protocol->append($folder,
$message, $flags)) {
587 #require_once 'Zend/Mail/Storage/Exception.php'; 602 if (!$this->_protocol->copy($folder,
$id)) {
606 #require_once 'Zend/Mail/Storage/Exception.php'; 637 if (!$this->_protocol->store($flags,
$id)) {
641 #require_once 'Zend/Mail/Storage/Exception.php';
copyMessage($id, $folder)
selectFolder($globalName)
moveMessage($id, $folder)
getFolders($rootFolder=null)
appendMessage($message, $folder=null, $flags=null)
countMessages($flags=null)
getRawHeader($id, $part=null, $topLines=0)
getRawContent($id, $part=null)
$params[\Magento\Store\Model\StoreManager::PARAM_RUN_CODE]
createFolder($name, $parentFolder=null)
renameFolder($oldName, $newName)
if(!isset($_GET['name'])) $name