diff --git a/snappymail/v/0.0.0/app/libraries/RainLoop/Actions/Accounts.php b/snappymail/v/0.0.0/app/libraries/RainLoop/Actions/Accounts.php index 73b88dfd8..582b61e93 100644 --- a/snappymail/v/0.0.0/app/libraries/RainLoop/Actions/Accounts.php +++ b/snappymail/v/0.0.0/app/libraries/RainLoop/Actions/Accounts.php @@ -17,7 +17,7 @@ trait Accounts protected function GetMainEmail(Account $oAccount) { - return $oAccount instanceof AdditionalAccount ? $oAccount->ParentEmail() : $oAccount->Email(); + return ($oAccount instanceof AdditionalAccount ? $this->getMainAccountFromToken() : $oAccount)->Email(); } public function GetAccounts(MainAccount $oAccount): array diff --git a/snappymail/v/0.0.0/app/libraries/RainLoop/Actions/Contacts.php b/snappymail/v/0.0.0/app/libraries/RainLoop/Actions/Contacts.php index 5b26125fc..d5f6fa645 100644 --- a/snappymail/v/0.0.0/app/libraries/RainLoop/Actions/Contacts.php +++ b/snappymail/v/0.0.0/app/libraries/RainLoop/Actions/Contacts.php @@ -5,11 +5,6 @@ namespace RainLoop\Actions; trait Contacts { - private function GetAccountParentEmail() - { -// $oAccount instanceof \RainLoop\Model\AdditionalAccount ? $oAccount->ParentEmail() : $oAccount->Email() - } - public function DoSaveContactsSyncData() : array { $oAccount = $this->getAccountFromToken(); diff --git a/snappymail/v/0.0.0/app/libraries/RainLoop/Actions/UserAuth.php b/snappymail/v/0.0.0/app/libraries/RainLoop/Actions/UserAuth.php index d6e90351b..03ee91b3f 100644 --- a/snappymail/v/0.0.0/app/libraries/RainLoop/Actions/UserAuth.php +++ b/snappymail/v/0.0.0/app/libraries/RainLoop/Actions/UserAuth.php @@ -116,9 +116,6 @@ trait UserAuth try { if ($oMainAccount) { $oAccount = AdditionalAccount::NewInstanceByLogin($this, $sEmail, $sLogin, $sPassword, $sClientCert, true); - if ($oAccount) { - $oAccount->SetParentEmail($oMainAccount->Email()); - } } else { $oAccount = MainAccount::NewInstanceByLogin($this, $sEmail, $sLogin, $sPassword, $sClientCert, true); } diff --git a/snappymail/v/0.0.0/app/libraries/RainLoop/Model/AdditionalAccount.php b/snappymail/v/0.0.0/app/libraries/RainLoop/Model/AdditionalAccount.php index 2befbb4af..78bae1a04 100644 --- a/snappymail/v/0.0.0/app/libraries/RainLoop/Model/AdditionalAccount.php +++ b/snappymail/v/0.0.0/app/libraries/RainLoop/Model/AdditionalAccount.php @@ -7,30 +7,20 @@ use RainLoop\Exceptions\ClientException; class AdditionalAccount extends Account { - /** - * @var string - */ - private $sParentEmail = ''; - public function ParentEmail() : string { - return $this->sParentEmail; - } - - public function SetParentEmail(string $sParentEmail) : void - { - $this->sParentEmail = \trim(\MailSo\Base\Utils::IdnToAscii($sParentEmail, true)); + return \trim(\MailSo\Base\Utils::IdnToAscii(\RainLoop\Api::Actions()->getMainAccountFromToken()->Email(), true)); } public function Hash() : string { - return \md5(parent::Hash() . $this->sParentEmail); + return \md5(parent::Hash() . $this->ParentEmail()); } public function jsonSerialize() { $aData = parent::jsonSerialize(); - $aData[] = $this->sParentEmail; + $aData[] = ''; // was ParentEmail return $aData; } @@ -53,16 +43,11 @@ class AdditionalAccount extends Account if (!empty($aAccountHash[0]) && 'account' === $aAccountHash[0] && 8 <= $iCount && 9 >= $iCount) { $sHash = $oActions->getMainAccountFromToken()->CryptKey(); $sPasswordHMAC = (8 < $iCount) ? \array_pop($aAccountHash) : null; - $sParentEmail = \array_pop($aAccountHash); if ($sPasswordHMAC && $sPasswordHMAC === \hash_hmac('sha1', $aAccountHash[3], $sHash)) { $aAccountHash[3] = \SnappyMail\Crypt::DecryptUrlSafe($aAccountHash[3], $sHash); $aAccountHash[6] = \SnappyMail\Crypt::DecryptUrlSafe($aAccountHash[6], $sHash); } - $oAccount = parent::NewInstanceFromTokenArray($oActions, $aAccountHash, $bThrowExceptionOnFalse); - if ($oAccount) { - $oAccount->SetParentEmail($sParentEmail); - return $oAccount; - } + return parent::NewInstanceFromTokenArray($oActions, $aAccountHash, $bThrowExceptionOnFalse); } return null; } diff --git a/snappymail/v/0.0.0/app/libraries/RainLoop/Providers/Files/FileStorage.php b/snappymail/v/0.0.0/app/libraries/RainLoop/Providers/Files/FileStorage.php index 0c4ff5e8c..c5d76baef 100644 --- a/snappymail/v/0.0.0/app/libraries/RainLoop/Providers/Files/FileStorage.php +++ b/snappymail/v/0.0.0/app/libraries/RainLoop/Providers/Files/FileStorage.php @@ -146,7 +146,7 @@ class FileStorage implements \RainLoop\Providers\Files\IFiles $sEmail = $oAccount->ParentEmail(); $sSubEmail = $oAccount->Email(); } else { - $sEmail = $oAccount->Email() ?: 'nobody@unknown.tld'; + $sEmail = $oAccount->Email(); $sSubEmail = ''; }