public function testImapPortGetterAndSetter() { $origin = new UserEmailOrigin(); $this->assertEquals(null, $origin->getImapPort()); $origin->setImapPort(123); $this->assertEquals(123, $origin->getImapPort()); }
/** * @param string $type * @param string|null $accessToken * @param string $formParentName * * @return FormInterface */ public function getImapConnectionForm($type, $accessToken, $formParentName) { $oauthEmailOrigin = new UserEmailOrigin(); $oauthEmailOrigin->setAccessToken($accessToken); if ($type === AccountTypeModel::ACCOUNT_TYPE_GMAIL) { $oauthEmailOrigin->setImapHost(GmailImap::DEFAULT_GMAIL_HOST); $oauthEmailOrigin->setImapPort(GmailImap::DEFAULT_GMAIL_PORT); } $accountTypeModel = $this->createAccountModel($type, $oauthEmailOrigin); return $this->prepareForm($formParentName, $accountTypeModel); }
/** * Create object of AccountTypeModel using data of form * * @param array $data * * @return AccountTypeModel|null */ protected function createAccountTypeModelFromData($data) { $imapGmailConfiguration = isset($data['userEmailOrigin']) ? $data['userEmailOrigin'] : []; if (empty($imapGmailConfiguration['user'])) { return null; } $accountTypeModel = new AccountTypeModel(); $accountTypeModel->setAccountType($data['accountType']); $userEmailOrigin = new UserEmailOrigin(); $userEmailOrigin->setImapHost($imapGmailConfiguration['imapHost']); $userEmailOrigin->setImapPort($imapGmailConfiguration['imapPort']); $userEmailOrigin->setImapEncryption($imapGmailConfiguration['imapEncryption']); $userEmailOrigin->setUser($imapGmailConfiguration['user']); if (!empty($imapGmailConfiguration['accessTokenExpiresAt'])) { $newExpireDate = $imapGmailConfiguration['accessTokenExpiresAt']; if (!$newExpireDate instanceof \Datetime) { $utcTimeZone = new \DateTimeZone('UTC'); $accessTokenExpiresAt = $imapGmailConfiguration['accessTokenExpiresAt']; $newExpireDate = new \DateTime('+' . $accessTokenExpiresAt . ' seconds', $utcTimeZone); } $userEmailOrigin->setAccessTokenExpiresAt($newExpireDate); } $accountTypeModel->setUserEmailOrigin($userEmailOrigin); return $accountTypeModel; }