Пример #1
0
 /**
  * Gets sub folders.
  *
  * @param Folder $parentFolder The parent folder.
  * @param bool   $recursive    Determines whether child folders should be returned as well
  *
  * @return Folder[]
  */
 protected function getSubFolders(Folder $parentFolder, $recursive = false)
 {
     $result = [];
     $parentFolder->guessFolderType();
     /** @var Folder $folder */
     foreach ($parentFolder as $folder) {
         $result[] = $folder;
         if ($recursive) {
             $folder->type = $parentFolder->type;
             $result = array_merge($result, $this->getSubFolders($folder, $recursive));
         }
     }
     return $result;
 }
Пример #2
0
 /**
  * @param Folder $srcFolder
  *
  * @return EmailFolderModel
  */
 protected function createEmailFolderModel(Folder $srcFolder, $uidValidity)
 {
     $folder = new EmailFolder();
     $folder->setFullName($srcFolder->getGlobalName())->setName($srcFolder->getLocalName())->setType($srcFolder->guessFolderType())->setOrigin($this->origin);
     $emailFolderModel = new EmailFolderModel();
     $emailFolderModel->setUidValidity($uidValidity);
     $emailFolderModel->setEmailFolder($folder);
     return $emailFolderModel;
 }