public function testToAPI() { $a = new MailAccount(); $a->setId(3); $a->setName('Peter Parker'); $a->setInboundHost('mail.marvel.com'); $a->setInboundPort(159); $a->setInboundUser('spiderman'); $a->setInboundPassword('xxxxxxxx'); $a->setInboundSslMode('tls'); $a->setEmail('*****@*****.**'); $a->setId(12345); $a->setOutboundHost('smtp.marvel.com'); $a->setOutboundPort(458); $a->setOutboundUser('spiderman'); $a->setOutboundPassword('xxxx'); $a->setOutboundSslMode('ssl'); $this->assertEquals(array('accountId' => 12345, 'name' => 'Peter Parker', 'emailAddress' => '*****@*****.**', 'imapHost' => 'mail.marvel.com', 'imapPort' => 159, 'imapUser' => 'spiderman', 'imapSslMode' => 'tls', 'smtpHost' => 'smtp.marvel.com', 'smtpPort' => 458, 'smtpUser' => 'spiderman', 'smtpSslMode' => 'ssl'), $a->toJson()); }
function fetch_imap_folders() { $server = array_var($_GET, 'server'); $ssl = array_var($_GET, 'ssl') == "checked"; $port = array_var($_GET, 'port'); $email = array_var($_GET, 'email'); $pass = array_var($_GET, 'pass'); $genid = array_var($_GET, 'genid'); tpl_assign('genid', $genid); $account = new MailAccount(); $account->setIncomingSsl($ssl); $account->setIncomingSslPort($port); $account->setEmail($email); $account->setPassword(MailUtilities::ENCRYPT_DECRYPT($pass)); $account->setServer($server); try { $real_folders = MailUtilities::getImapFolders($account); $imap_folders = array(); foreach ($real_folders as $folder_name) { $acc_folder = new MailAccountImapFolder(); $acc_folder->setAccountId(0); $acc_folder->setFolderName($folder_name); $acc_folder->setCheckFolder($folder_name == 'INBOX'); // By default only INBOX is checked $imap_folders[] = $acc_folder; } tpl_assign('imap_folders', $imap_folders); } catch (Exception $e) { //Logger::log($e->getTraceAsString()); } }