diff --git a/dev/Common/Enums.js b/dev/Common/Enums.js index 777e1136a..b3f196e15 100644 --- a/dev/Common/Enums.js +++ b/dev/Common/Enums.js @@ -416,6 +416,7 @@ 'DemoSendMessageError': 750, 'AccountAlreadyExists': 801, + 'AccountDoesNotExist': 802, 'MailServerError': 901, 'ClientViewError': 902, diff --git a/dev/Common/Utils.js b/dev/Common/Utils.js index 8a2d92dcc..400111ddc 100644 --- a/dev/Common/Utils.js +++ b/dev/Common/Utils.js @@ -710,6 +710,7 @@ oN[Enums.Notification.DemoSendMessageError] = Utils.i18n('NOTIFICATIONS/DEMO_SEND_MESSAGE_ERROR'); oN[Enums.Notification.AccountAlreadyExists] = Utils.i18n('NOTIFICATIONS/ACCOUNT_ALREADY_EXISTS'); + oN[Enums.Notification.AccountDoesNotExist] = Utils.i18n('NOTIFICATIONS/ACCOUNT_DOES_NOT_EXIST'); oN[Enums.Notification.MailServerError] = Utils.i18n('NOTIFICATIONS/MAIL_SERVER_ERROR'); oN[Enums.Notification.InvalidInputArgument] = Utils.i18n('NOTIFICATIONS/INVALID_INPUT_ARGUMENT'); diff --git a/dev/Model/Account.js b/dev/Model/Account.js index bbabfc546..51bb44643 100644 --- a/dev/Model/Account.js +++ b/dev/Model/Account.js @@ -26,6 +26,7 @@ this.deleteAccess = ko.observable(false); this.canBeDalete = ko.observable(Utils.isUnd(bCanBeDelete) ? true : !!bCanBeDelete); + this.canBeEdit = this.canBeDalete; } _.extend(AccountModel.prototype, AbstractModel.prototype); diff --git a/dev/Settings/User/Accounts.js b/dev/Settings/User/Accounts.js index 705a02ac1..cb05cfbe2 100644 --- a/dev/Settings/User/Accounts.js +++ b/dev/Settings/User/Accounts.js @@ -51,6 +51,14 @@ require('Knoin/Knoin').showScreenPopup(require('View/Popup/AddAccount')); }; + AccountsUserSetting.prototype.editAccount = function (oAccountItem) + { + if (oAccountItem && oAccountItem.canBeEdit()) + { + require('Knoin/Knoin').showScreenPopup(require('View/Popup/AddAccount'), [oAccountItem]); + } + }; + /** * @param {AccountModel} oAccountToRemove */ @@ -94,6 +102,21 @@ } }; + AccountsUserSetting.prototype.onBuild = function (oDom) + { + var self = this; + + oDom + .on('click', '.account-item .e-action', function () { + var oAccountItem = ko.dataFor(this); + if (oAccountItem) + { + self.editAccount(oAccountItem); + } + }) + ; + }; + module.exports = AccountsUserSetting; }()); \ No newline at end of file diff --git a/dev/Storage/User/Remote.js b/dev/Storage/User/Remote.js index 823f99a01..6ffbdaa42 100644 --- a/dev/Storage/User/Remote.js +++ b/dev/Storage/User/Remote.js @@ -158,15 +158,17 @@ /** * @param {?Function} fCallback * @param {string} sEmail - * @param {string} sLogin * @param {string} sPassword + * @param {boolean=} bNew */ - RemoteUserStorage.prototype.accountAdd = function (fCallback, sEmail, sLogin, sPassword) + RemoteUserStorage.prototype.accountSetup = function (fCallback, sEmail, sPassword, bNew) { - this.defaultRequest(fCallback, 'AccountAdd', { + bNew = Utils.isUnd(bNew) ? true : !!bNew; + + this.defaultRequest(fCallback, 'AccountSetup', { 'Email': sEmail, - 'Login': sLogin, - 'Password': sPassword + 'Password': sPassword, + 'New': bNew ? '1' : '0' }); }; diff --git a/dev/Styles/SettingsAccounts.less b/dev/Styles/SettingsAccounts.less index 806b646fe..ed6f38af6 100644 --- a/dev/Styles/SettingsAccounts.less +++ b/dev/Styles/SettingsAccounts.less @@ -26,12 +26,15 @@ word-break: break-all; box-sizing: border-box; line-height: 22px; - cursor: default; } } .account-item { + .e-action { + cursor: pointer; + } + .button-delete { margin-right: 15px; margin-top: 5px; diff --git a/dev/View/Popup/AddAccount.js b/dev/View/Popup/AddAccount.js index 980d6cb2c..f2f30cf88 100644 --- a/dev/View/Popup/AddAccount.js +++ b/dev/View/Popup/AddAccount.js @@ -24,6 +24,8 @@ { AbstractView.call(this, 'Popups', 'PopupsAddAccount'); + this.isNew = ko.observable(true); + this.email = ko.observable(''); this.password = ko.observable(''); @@ -55,10 +57,10 @@ this.submitRequest(true); - Remote.accountAdd(_.bind(function (sResult, oData) { + Remote.accountSetup(_.bind(function (sResult, oData) { this.submitRequest(false); - if (Enums.StorageResultType.Success === sResult && oData && 'AccountAdd' === oData.Action) + if (Enums.StorageResultType.Success === sResult && oData && 'AccountSetup' === oData.Action) { if (oData.Result) { @@ -75,7 +77,7 @@ this.submitError(Utils.getNotification(Enums.Notification.UnknownError)); } - }, this), this.email(), '', this.password()); + }, this), this.email(), this.password(), this.isNew()); return true; @@ -91,6 +93,8 @@ AddAccountPopupView.prototype.clearPopup = function () { + this.isNew(true); + this.email(''); this.password(''); @@ -101,9 +105,14 @@ this.submitError(''); }; - AddAccountPopupView.prototype.onShow = function () + AddAccountPopupView.prototype.onShow = function (oAccount) { this.clearPopup(); + if (oAccount && oAccount.canBeEdit()) + { + this.isNew(false); + this.email(oAccount.email); + } }; AddAccountPopupView.prototype.onFocus = function () diff --git a/dev/View/Popup/Identity.js b/dev/View/Popup/Identity.js index bc5ca1fd0..150d64d2c 100644 --- a/dev/View/Popup/Identity.js +++ b/dev/View/Popup/Identity.js @@ -104,14 +104,6 @@ return !this.submitRequest(); }); - this.label = ko.computed(function () { - return Utils.i18n('POPUPS_IDENTITIES/' + (this.edit() ? 'TITLE_UPDATE_IDENTITY': 'TITLE_ADD_IDENTITY')); - }, this); - - this.button = ko.computed(function () { - return Utils.i18n('POPUPS_IDENTITIES/' + (this.edit() ? 'BUTTON_UPDATE_IDENTITY': 'BUTTON_ADD_IDENTITY')); - }, this); - kn.constructorEnd(this); } diff --git a/rainloop/v/0.0.0/app/src/RainLoop/Actions.php b/rainloop/v/0.0.0/app/src/RainLoop/Actions.php index e8e88af77..e0ceb9d0e 100644 --- a/rainloop/v/0.0.0/app/src/RainLoop/Actions.php +++ b/rainloop/v/0.0.0/app/src/RainLoop/Actions.php @@ -398,7 +398,7 @@ class Actions */ public function SetAuthLogoutToken() { - \RainLoop\Utils::SetCookie(self::AUTH_SPEC_TOKEN_KEY, \md5(APP_START_TIME), 0, '/', null, null, true); + \RainLoop\Utils::SetCookie(self::AUTH_SPEC_LOGOUT_TOKEN_KEY, \md5(APP_START_TIME), 0, '/', null, null, true); } /** @@ -764,7 +764,7 @@ class Actions '[APC:'.(\MailSo\Base\Utils::FunctionExistsAndEnabled('apc_fetch') ? 'on' : 'off').']'. '[MB:'.(\MailSo\Base\Utils::FunctionExistsAndEnabled('mb_convert_encoding') ? 'on' : 'off').']'. '[PDO:'.(\class_exists('PDO') ? \implode(',', \PDO::getAvailableDrivers()) : 'off').']'. - '[Streams:'.\implode(',', \stream_get_transports()).']' + '['.\implode(',', \stream_get_transports()).']' ); $this->oLogger->Write( @@ -1941,7 +1941,7 @@ class Actions * * @throws \MailSo\Base\Exceptions\Exception */ - public function DoAccountAdd() + public function DoAccountSetup() { if (!$this->Config()->Get('webmail', 'allow_additional_accounts', true)) { @@ -1949,38 +1949,32 @@ class Actions } $oAccount = $this->getAccountFromToken(); + $sParentEmail = $oAccount->ParentEmailHelper(); + + $aAccounts = $this->GetAccounts($oAccount); + if (!\is_array($aAccounts)) + { + $aAccounts = array(); + } $sEmail = \trim($this->GetActionParam('Email', '')); $sPassword = $this->GetActionParam('Password', ''); - - $sParentEmail = $oAccount->ParentEmailHelper(); + $bNew = '1' === (string) $this->GetActionParam('New', '1'); $sEmail = \MailSo\Base\Utils::IdnToAscii($sEmail, true); - if ($oAccount->Email() === $sEmail || $sParentEmail === $sEmail) + if ($bNew && ($oAccount->Email() === $sEmail || $sParentEmail === $sEmail || isset($aAccounts[$sEmail]))) { throw new \RainLoop\Exceptions\ClientException(\RainLoop\Notifications::AccountAlreadyExists); } + else if (!$bNew && !isset($aAccounts[$sEmail])) + { + throw new \RainLoop\Exceptions\ClientException(\RainLoop\Notifications::AccountDoesNotExist); + } $oNewAccount = $this->LoginProcess($sEmail, $sPassword); $oNewAccount->SetParentEmail($sParentEmail); - $aAccounts = $this->GetAccounts($oAccount); - if (\is_array($aAccounts)) - { - if (isset($aAccounts[$oNewAccount->Email()])) - { - throw new \RainLoop\Exceptions\ClientException(\RainLoop\Notifications::AccountAlreadyExists); - } - else - { - $aAccounts[$oNewAccount->Email()] = $oNewAccount->GetAuthToken(); - } - } - else - { - $aAccounts = array(); - } - + $aAccounts[$oNewAccount->Email()] = $oNewAccount->GetAuthToken(); if (0 === \strlen($oAccount->ParentEmail())) { $aAccounts[$oAccount->Email()] = $oAccount->GetAuthToken(); @@ -2211,6 +2205,11 @@ class Actions $this->ClearSignMeData($oAccount); } + if ($oAccount && '' === $oAccount->ParentEmail()) + { + \RainLoop\Utils::ClearCookie(\RainLoop\Actions::AUTH_SPEC_TOKEN_KEY); + } + return $this->TrueResponse(__FUNCTION__); } diff --git a/rainloop/v/0.0.0/app/src/RainLoop/Notifications.php b/rainloop/v/0.0.0/app/src/RainLoop/Notifications.php index 92f249d74..1358f7cd7 100644 --- a/rainloop/v/0.0.0/app/src/RainLoop/Notifications.php +++ b/rainloop/v/0.0.0/app/src/RainLoop/Notifications.php @@ -14,7 +14,7 @@ class Notifications const SocialGoogleLoginAccessDisable = 108; const DomainNotAllowed = 109; const AccountNotAllowed = 110; - + const AccountTwoFactorAuthRequired = 120; const AccountTwoFactorAuthError = 121; @@ -47,20 +47,21 @@ class Notifications const CantSavePluginSettings = 502; const DomainAlreadyExists = 601; - + const CantInstallPackage = 701; const CantDeletePackage = 702; const InvalidPluginPackage = 703; const UnsupportedPluginPackage = 704; - + const LicensingServerIsUnavailable = 710; const LicensingExpired = 711; const LicensingBanned = 712; const DemoSendMessageError = 750; - + const AccountAlreadyExists = 801; - + const AccountDoesNotExist = 802; + const MailServerError = 901; const ClientViewError = 902; const InvalidInputArgument = 903; @@ -69,10 +70,10 @@ class Notifications /** * @staticvar array $aMap - * + * * @param int $iCode * @param \Exception|null $oPrevious - * + * * @return string */ static public function GetNotificationsMessage($iCode, $oPrevious = null) @@ -98,7 +99,7 @@ class Notifications self::NewPasswordForbidden => 'NewPasswordForbidden', self::ContactsSyncError => 'ContactsSyncError', - + self::CantGetMessageList => 'CantGetMessageList', self::CantGetMessage => 'CantGetMessage', self::CantDeleteMessage => 'CantDeleteMessage', @@ -124,6 +125,7 @@ class Notifications self::LicensingBanned => 'LicensingBanned', self::DemoSendMessageError => 'DemoSendMessageError', self::AccountAlreadyExists => 'AccountAlreadyExists', + self::AccountDoesNotExist => 'AccountDoesNotExist', self::MailServerError => 'MailServerError', self::ClientViewError => 'ClientViewError', self::InvalidInputArgument => 'InvalidInputArgument', diff --git a/rainloop/v/0.0.0/app/templates/Views/User/PopupsAddAccount.html b/rainloop/v/0.0.0/app/templates/Views/User/PopupsAddAccount.html index 6d5bb15bf..53e13af2c 100644 --- a/rainloop/v/0.0.0/app/templates/Views/User/PopupsAddAccount.html +++ b/rainloop/v/0.0.0/app/templates/Views/User/PopupsAddAccount.html @@ -4,7 +4,8 @@
| + | - + | ++ + | diff --git a/rainloop/v/0.0.0/langs/de.ini b/rainloop/v/0.0.0/langs/de.ini index d5afb6cbc..1f34a337e 100644 --- a/rainloop/v/0.0.0/langs/de.ini +++ b/rainloop/v/0.0.0/langs/de.ini @@ -234,6 +234,8 @@ TITLE_LANGUAGES = "Sprache auswählen" [POPUPS_ADD_ACCOUNT] TITLE_ADD_ACCOUNT = "Konto hinzufügen?" BUTTON_ADD_ACCOUNT = "Hinzufügen" +TITLE_UPDATE_ACCOUNT = "Update Account?" +BUTTON_UPDATE_ACCOUNT = "Update" [POPUPS_IDENTITIES] TITLE_ADD_IDENTITY = "Identität hinzufügen?" diff --git a/rainloop/v/0.0.0/langs/en.ini b/rainloop/v/0.0.0/langs/en.ini index 4c944bcff..06518acc0 100644 --- a/rainloop/v/0.0.0/langs/en.ini +++ b/rainloop/v/0.0.0/langs/en.ini @@ -234,6 +234,8 @@ TITLE_LANGUAGES = "Choose language" [POPUPS_ADD_ACCOUNT] TITLE_ADD_ACCOUNT = "Add Account?" BUTTON_ADD_ACCOUNT = "Add" +TITLE_UPDATE_ACCOUNT = "Update Account?" +BUTTON_UPDATE_ACCOUNT = "Update" [POPUPS_IDENTITIES] TITLE_ADD_IDENTITY = "Add Identity?" diff --git a/rainloop/v/0.0.0/langs/es.ini b/rainloop/v/0.0.0/langs/es.ini index ff47b53ac..09c5515f0 100644 --- a/rainloop/v/0.0.0/langs/es.ini +++ b/rainloop/v/0.0.0/langs/es.ini @@ -233,6 +233,8 @@ TITLE_LANGUAGES = "Seleccionar idioma" [POPUPS_ADD_ACCOUNT] TITLE_ADD_ACCOUNT = "Añadir cuenta" BUTTON_ADD_ACCOUNT = "Añadir" +TITLE_UPDATE_ACCOUNT = "Update Account?" +BUTTON_UPDATE_ACCOUNT = "Update" [POPUPS_IDENTITIES] TITLE_ADD_IDENTITY = "¿Añadir Identidad?" diff --git a/rainloop/v/0.0.0/langs/fr.ini b/rainloop/v/0.0.0/langs/fr.ini index 04af28039..d9d6054f3 100644 --- a/rainloop/v/0.0.0/langs/fr.ini +++ b/rainloop/v/0.0.0/langs/fr.ini @@ -233,6 +233,8 @@ TITLE_LANGUAGES = "Choisir la langue" [POPUPS_ADD_ACCOUNT] TITLE_ADD_ACCOUNT = "Ajouter un compte ?" BUTTON_ADD_ACCOUNT = "Ajouter" +TITLE_UPDATE_ACCOUNT = "Update Account?" +BUTTON_UPDATE_ACCOUNT = "Update" [POPUPS_IDENTITIES] TITLE_ADD_IDENTITY = "Ajouter une identité ?" diff --git a/rainloop/v/0.0.0/langs/hu.ini b/rainloop/v/0.0.0/langs/hu.ini index 7924ddf32..74b41e107 100644 --- a/rainloop/v/0.0.0/langs/hu.ini +++ b/rainloop/v/0.0.0/langs/hu.ini @@ -233,6 +233,8 @@ TITLE_LANGUAGES = "Nyelv kiválasztás" [POPUPS_ADD_ACCOUNT] TITLE_ADD_ACCOUNT = "Új fiók?" BUTTON_ADD_ACCOUNT = "Hozzáadás" +TITLE_UPDATE_ACCOUNT = "Update Account?" +BUTTON_UPDATE_ACCOUNT = "Update" [POPUPS_IDENTITIES] TITLE_ADD_IDENTITY = "Új identitás?" diff --git a/rainloop/v/0.0.0/langs/is.ini b/rainloop/v/0.0.0/langs/is.ini index e47b242c6..1898028d2 100644 --- a/rainloop/v/0.0.0/langs/is.ini +++ b/rainloop/v/0.0.0/langs/is.ini @@ -233,6 +233,8 @@ TITLE_LANGUAGES = "Choose language" [POPUPS_ADD_ACCOUNT] TITLE_ADD_ACCOUNT = "Bæta við aðgangi?" BUTTON_ADD_ACCOUNT = "Bæta við" +TITLE_UPDATE_ACCOUNT = "Update Account?" +BUTTON_UPDATE_ACCOUNT = "Update" [POPUPS_IDENTITIES] TITLE_ADD_IDENTITY = "Add Identity?" diff --git a/rainloop/v/0.0.0/langs/it.ini b/rainloop/v/0.0.0/langs/it.ini index 97af61d6d..062b0525a 100644 --- a/rainloop/v/0.0.0/langs/it.ini +++ b/rainloop/v/0.0.0/langs/it.ini @@ -234,6 +234,8 @@ TITLE_LANGUAGES = "Seleziona lingua" [POPUPS_ADD_ACCOUNT] TITLE_ADD_ACCOUNT = "Aggiungere un account?" BUTTON_ADD_ACCOUNT = "Aggiungi" +TITLE_UPDATE_ACCOUNT = "Update Account?" +BUTTON_UPDATE_ACCOUNT = "Update" [POPUPS_IDENTITIES] TITLE_ADD_IDENTITY = "Aggiungere un identità?" diff --git a/rainloop/v/0.0.0/langs/ja-jp.ini b/rainloop/v/0.0.0/langs/ja-jp.ini index 4b9d4beb9..21a255917 100644 --- a/rainloop/v/0.0.0/langs/ja-jp.ini +++ b/rainloop/v/0.0.0/langs/ja-jp.ini @@ -233,6 +233,8 @@ TITLE_LANGUAGES = "言語を選択" [POPUPS_ADD_ACCOUNT] TITLE_ADD_ACCOUNT = "アカウントを追加しますか?" BUTTON_ADD_ACCOUNT = "追加" +TITLE_UPDATE_ACCOUNT = "Update Account?" +BUTTON_UPDATE_ACCOUNT = "Update" [POPUPS_IDENTITIES] TITLE_ADD_IDENTITY = "メールの表示名を追加しますか?" diff --git a/rainloop/v/0.0.0/langs/ko-kr.ini b/rainloop/v/0.0.0/langs/ko-kr.ini index 2889758e8..9c829612c 100644 --- a/rainloop/v/0.0.0/langs/ko-kr.ini +++ b/rainloop/v/0.0.0/langs/ko-kr.ini @@ -233,6 +233,8 @@ TITLE_LANGUAGES = "사용할 언어를 선택하세요" [POPUPS_ADD_ACCOUNT] TITLE_ADD_ACCOUNT = "새 사용자 추가?" BUTTON_ADD_ACCOUNT = "추가" +TITLE_UPDATE_ACCOUNT = "Update Account?" +BUTTON_UPDATE_ACCOUNT = "Update" [POPUPS_IDENTITIES] TITLE_ADD_IDENTITY = "새 서명 추가?" diff --git a/rainloop/v/0.0.0/langs/lt.ini b/rainloop/v/0.0.0/langs/lt.ini index 26da4c526..7e08089b0 100644 --- a/rainloop/v/0.0.0/langs/lt.ini +++ b/rainloop/v/0.0.0/langs/lt.ini @@ -143,7 +143,7 @@ PGP_ENCRYPTED_MESSAGE_DESC = "OpenPGP šifruotas pranešimas (spustelkite išši SUBJECT = "Pristatymo patvirtinimas (laiškas parodytas) - %SUBJECT%" BODY = "Tai yra laiško pristatymo patvirtinimas, kurį Jūs siuntėte gavėjui %READ-RECEIPT%. -Pastaba: Šis pranešimas įrodo, kad laiškas buvo rodomas gavėjo kompiuteryje. +Pastaba: Šis pranešimas įrodo, kad laiškas buvo rodomas gavėjo kompiuteryje. Nėra jokios garantijos, kad gavėjas perskaitė ar suprato laiško turinį." [SUGGESTIONS] @@ -234,6 +234,8 @@ TITLE_LANGUAGES = "Pasirinkite kalbą" [POPUPS_ADD_ACCOUNT] TITLE_ADD_ACCOUNT = "Pridėti paskyrą?" BUTTON_ADD_ACCOUNT = "Pridėti" +TITLE_UPDATE_ACCOUNT = "Update Account?" +BUTTON_UPDATE_ACCOUNT = "Update" [POPUPS_IDENTITIES] TITLE_ADD_IDENTITY = "Pridėti tapatybę?" diff --git a/rainloop/v/0.0.0/langs/lv.ini b/rainloop/v/0.0.0/langs/lv.ini index ced230467..9ff4ec979 100644 --- a/rainloop/v/0.0.0/langs/lv.ini +++ b/rainloop/v/0.0.0/langs/lv.ini @@ -233,6 +233,8 @@ TITLE_LANGUAGES = "Choose language" [POPUPS_ADD_ACCOUNT] TITLE_ADD_ACCOUNT = "Pievienot kontu?" BUTTON_ADD_ACCOUNT = "Pievienot" +TITLE_UPDATE_ACCOUNT = "Update Account?" +BUTTON_UPDATE_ACCOUNT = "Update" [POPUPS_IDENTITIES] TITLE_ADD_IDENTITY = "Add Identity?" diff --git a/rainloop/v/0.0.0/langs/nl.ini b/rainloop/v/0.0.0/langs/nl.ini index 18c97476d..130e21e6e 100644 --- a/rainloop/v/0.0.0/langs/nl.ini +++ b/rainloop/v/0.0.0/langs/nl.ini @@ -233,6 +233,8 @@ TITLE_LANGUAGES = "Kies uw taal" [POPUPS_ADD_ACCOUNT] TITLE_ADD_ACCOUNT = "Account toevoegen?" BUTTON_ADD_ACCOUNT = "Toevoegen" +TITLE_UPDATE_ACCOUNT = "Update Account?" +BUTTON_UPDATE_ACCOUNT = "Update" [POPUPS_IDENTITIES] TITLE_ADD_IDENTITY = "Identiteit toevoegen?" diff --git a/rainloop/v/0.0.0/langs/no.ini b/rainloop/v/0.0.0/langs/no.ini index b2ca54f67..c76bdc48a 100644 --- a/rainloop/v/0.0.0/langs/no.ini +++ b/rainloop/v/0.0.0/langs/no.ini @@ -232,6 +232,8 @@ TITLE_LANGUAGES = "Velg språk" [POPUPS_ADD_ACCOUNT] TITLE_ADD_ACCOUNT = "Legg til konto?" BUTTON_ADD_ACCOUNT = "Legg til" +TITLE_UPDATE_ACCOUNT = "Update Account?" +BUTTON_UPDATE_ACCOUNT = "Update" [POPUPS_IDENTITIES] TITLE_ADD_IDENTITY = "Legg til identitet?" diff --git a/rainloop/v/0.0.0/langs/pl.ini b/rainloop/v/0.0.0/langs/pl.ini index 308cd3dc8..dd19fe6a0 100644 --- a/rainloop/v/0.0.0/langs/pl.ini +++ b/rainloop/v/0.0.0/langs/pl.ini @@ -233,6 +233,8 @@ TITLE_LANGUAGES = "Wybierz język" [POPUPS_ADD_ACCOUNT] TITLE_ADD_ACCOUNT = "Dodawanie konta" BUTTON_ADD_ACCOUNT = "Dodaj" +TITLE_UPDATE_ACCOUNT = "Update Account?" +BUTTON_UPDATE_ACCOUNT = "Update" [POPUPS_IDENTITIES] TITLE_ADD_IDENTITY = "Dodawanie tożsamości" diff --git a/rainloop/v/0.0.0/langs/pt-br.ini b/rainloop/v/0.0.0/langs/pt-br.ini index 71494e82b..4384197b8 100644 --- a/rainloop/v/0.0.0/langs/pt-br.ini +++ b/rainloop/v/0.0.0/langs/pt-br.ini @@ -234,6 +234,8 @@ TITLE_LANGUAGES = "Escolha o idioma" [POPUPS_ADD_ACCOUNT] TITLE_ADD_ACCOUNT = "Nova conta" BUTTON_ADD_ACCOUNT = "Adicionar" +TITLE_UPDATE_ACCOUNT = "Update Account?" +BUTTON_UPDATE_ACCOUNT = "Update" [POPUPS_IDENTITIES] TITLE_ADD_IDENTITY = "Adicionar identidade" diff --git a/rainloop/v/0.0.0/langs/pt-pt.ini b/rainloop/v/0.0.0/langs/pt-pt.ini index 0586ef7f7..601aaf56d 100644 --- a/rainloop/v/0.0.0/langs/pt-pt.ini +++ b/rainloop/v/0.0.0/langs/pt-pt.ini @@ -233,6 +233,8 @@ TITLE_LANGUAGES = "Escolha a linguagem" [POPUPS_ADD_ACCOUNT] TITLE_ADD_ACCOUNT = "Adicionar conta?" BUTTON_ADD_ACCOUNT = "Adicionar" +TITLE_UPDATE_ACCOUNT = "Update Account?" +BUTTON_UPDATE_ACCOUNT = "Update" [POPUPS_IDENTITIES] TITLE_ADD_IDENTITY = "Adicionar identidade?" diff --git a/rainloop/v/0.0.0/langs/ro.ini b/rainloop/v/0.0.0/langs/ro.ini index 7bab69f7a..7d18d08cd 100644 --- a/rainloop/v/0.0.0/langs/ro.ini +++ b/rainloop/v/0.0.0/langs/ro.ini @@ -232,6 +232,8 @@ TITLE_LANGUAGES = "Limbă" [POPUPS_ADD_ACCOUNT] TITLE_ADD_ACCOUNT = "Adăugați un cont" BUTTON_ADD_ACCOUNT = "Adaugă" +TITLE_UPDATE_ACCOUNT = "Update Account?" +BUTTON_UPDATE_ACCOUNT = "Update" [POPUPS_IDENTITIES] TITLE_ADD_IDENTITY = "Adăugați un profil" diff --git a/rainloop/v/0.0.0/langs/ru.ini b/rainloop/v/0.0.0/langs/ru.ini index 6f362ccae..bd9385568 100644 --- a/rainloop/v/0.0.0/langs/ru.ini +++ b/rainloop/v/0.0.0/langs/ru.ini @@ -233,6 +233,8 @@ TITLE_LANGUAGES = "Выберите язык" [POPUPS_ADD_ACCOUNT] TITLE_ADD_ACCOUNT = "Добавить ещё аккаунт?" BUTTON_ADD_ACCOUNT = "Добавить" +TITLE_UPDATE_ACCOUNT = "Update Account?" +BUTTON_UPDATE_ACCOUNT = "Update" [POPUPS_IDENTITIES] TITLE_ADD_IDENTITY = "Добавить Профиль?" diff --git a/rainloop/v/0.0.0/langs/sk.ini b/rainloop/v/0.0.0/langs/sk.ini index e8e91be77..cd3404ea6 100644 --- a/rainloop/v/0.0.0/langs/sk.ini +++ b/rainloop/v/0.0.0/langs/sk.ini @@ -233,6 +233,8 @@ TITLE_LANGUAGES = "Zvoľte jazyk" [POPUPS_ADD_ACCOUNT] TITLE_ADD_ACCOUNT = "Pridať účet?" BUTTON_ADD_ACCOUNT = "Pridať" +TITLE_UPDATE_ACCOUNT = "Update Account?" +BUTTON_UPDATE_ACCOUNT = "Update" [POPUPS_IDENTITIES] TITLE_ADD_IDENTITY = "Pridať Identitu?" diff --git a/rainloop/v/0.0.0/langs/sv.ini b/rainloop/v/0.0.0/langs/sv.ini index 433cf443a..bc965b3ae 100644 --- a/rainloop/v/0.0.0/langs/sv.ini +++ b/rainloop/v/0.0.0/langs/sv.ini @@ -234,6 +234,8 @@ TITLE_LANGUAGES = "Välj språk" [POPUPS_ADD_ACCOUNT] TITLE_ADD_ACCOUNT = "Lägg till konto?" BUTTON_ADD_ACCOUNT = "Lägg till" +TITLE_UPDATE_ACCOUNT = "Update Account?" +BUTTON_UPDATE_ACCOUNT = "Update" [POPUPS_IDENTITIES] TITLE_ADD_IDENTITY = "Lägg till identitet" diff --git a/rainloop/v/0.0.0/langs/tr.ini b/rainloop/v/0.0.0/langs/tr.ini index dada34cb1..d9df01907 100644 --- a/rainloop/v/0.0.0/langs/tr.ini +++ b/rainloop/v/0.0.0/langs/tr.ini @@ -234,6 +234,8 @@ TITLE_LANGUAGES = "Dil Seçimi" [POPUPS_ADD_ACCOUNT] TITLE_ADD_ACCOUNT = "Hesap Ekle?" BUTTON_ADD_ACCOUNT = "Ekle" +TITLE_UPDATE_ACCOUNT = "Update Account?" +BUTTON_UPDATE_ACCOUNT = "Update" [POPUPS_IDENTITIES] TITLE_ADD_IDENTITY = "Kimlik Ekle?" diff --git a/rainloop/v/0.0.0/langs/ua.ini b/rainloop/v/0.0.0/langs/ua.ini index 890a20cf1..1afcd92ca 100644 --- a/rainloop/v/0.0.0/langs/ua.ini +++ b/rainloop/v/0.0.0/langs/ua.ini @@ -233,6 +233,8 @@ TITLE_LANGUAGES = "Виберіть мову" [POPUPS_ADD_ACCOUNT] TITLE_ADD_ACCOUNT = "Додати ще акаунт?" BUTTON_ADD_ACCOUNT = "Додати" +TITLE_UPDATE_ACCOUNT = "Update Account?" +BUTTON_UPDATE_ACCOUNT = "Update" [POPUPS_IDENTITIES] TITLE_ADD_IDENTITY = "Додати Профіль?" diff --git a/rainloop/v/0.0.0/langs/zh-cn.ini b/rainloop/v/0.0.0/langs/zh-cn.ini index ee467f005..aea38afc9 100644 --- a/rainloop/v/0.0.0/langs/zh-cn.ini +++ b/rainloop/v/0.0.0/langs/zh-cn.ini @@ -233,6 +233,8 @@ TITLE_LANGUAGES = "选择语言" [POPUPS_ADD_ACCOUNT] TITLE_ADD_ACCOUNT = "添加账户?" BUTTON_ADD_ACCOUNT = "添加" +TITLE_UPDATE_ACCOUNT = "Update Account?" +BUTTON_UPDATE_ACCOUNT = "Update" [POPUPS_IDENTITIES] TITLE_ADD_IDENTITY = "添加签名?"