/** * Read all IMAP folders and update them in the database. */ public function UpdateFolderList() { $folders = $this->mailbox->getMailboxFolders(); $path = $this->mailbox->getMailBoxPath(); $this->initDatabase(); $this->database->updateFolder(['deleted' => 1], '1=1'); foreach ($folders as $sorting => $folder) { $dbFolder = $this->database->getFolderByName($folder, true); if (is_array($dbFolder) && $dbFolder["uid"] > 0) { $updateArray = ['deleted' => 0, 'pid' => 46]; $updateArray["tstamp"] = time(); $this->database->updateFolder($updateArray, 'uid=' . $dbFolder["uid"]); continue; } $insertArray = ['full_name' => $folder, 'name' => str_replace($path, '', $folder), 'pid' => 46, 'tstamp' => time(), 'crdate' => time()]; if ($insertArray['name'] == '') { $insertArray['name'] == 'INBOX'; } $this->database->insertArray('tx_t3fxmailscanner_domain_model_imapfolder', $insertArray); } }