mirror of
https://github.com/the-djmaze/snappymail.git
synced 2026-07-13 03:27:39 +03:00
Added additional account edit form
This commit is contained in:
parent
c6ec3fb311
commit
ebb6a06c65
36 changed files with 149 additions and 59 deletions
|
|
@ -416,6 +416,7 @@
|
|||
'DemoSendMessageError': 750,
|
||||
|
||||
'AccountAlreadyExists': 801,
|
||||
'AccountDoesNotExist': 802,
|
||||
|
||||
'MailServerError': 901,
|
||||
'ClientViewError': 902,
|
||||
|
|
|
|||
|
|
@ -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');
|
||||
|
|
|
|||
|
|
@ -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);
|
||||
|
|
|
|||
|
|
@ -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;
|
||||
|
||||
}());
|
||||
|
|
@ -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'
|
||||
});
|
||||
};
|
||||
|
||||
|
|
|
|||
|
|
@ -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;
|
||||
|
|
|
|||
|
|
@ -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 ()
|
||||
|
|
|
|||
|
|
@ -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);
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -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();
|
||||
}
|
||||
|
||||
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__);
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -60,6 +60,7 @@ class Notifications
|
|||
const DemoSendMessageError = 750;
|
||||
|
||||
const AccountAlreadyExists = 801;
|
||||
const AccountDoesNotExist = 802;
|
||||
|
||||
const MailServerError = 901;
|
||||
const ClientViewError = 902;
|
||||
|
|
@ -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',
|
||||
|
|
|
|||
|
|
@ -4,7 +4,8 @@
|
|||
<div class="modal-header">
|
||||
<button type="button" class="close" data-bind="command: cancelCommand">×</button>
|
||||
<h3>
|
||||
<span class="i18n" data-i18n-text="POPUPS_ADD_ACCOUNT/TITLE_ADD_ACCOUNT"></span>
|
||||
<span data-bind="visible: isNew" class="i18n" data-i18n-text="POPUPS_ADD_ACCOUNT/TITLE_ADD_ACCOUNT"></span>
|
||||
<span data-bind="visible: !isNew()" class="i18n" data-i18n-text="POPUPS_ADD_ACCOUNT/TITLE_UPDATE_ACCOUNT"></span>
|
||||
</h3>
|
||||
</div>
|
||||
<div class="modal-body">
|
||||
|
|
@ -17,8 +18,9 @@
|
|||
<div class="control-group" data-bind="css: {'error': emailError}">
|
||||
<label class="i18n control-label" data-i18n-text="LOGIN/LABEL_EMAIL"></label>
|
||||
<div class="controls">
|
||||
<label style="margin-top: 5px;"><strong data-bind="visible: !isNew(), text: email"></strong></label>
|
||||
<input type="email" class="inputEmail input-large" autocomplete="off" autocorrect="off" autocapitalize="off" spellcheck="false"
|
||||
data-bind="textInput: email, onEnter: addAccountCommand, hasfocus: emailFocus" />
|
||||
data-bind="visible: isNew, textInput: email, onEnter: addAccountCommand, hasfocus: emailFocus" />
|
||||
</div>
|
||||
</div>
|
||||
<div class="control-group" data-bind="css: {'error': passwordError}">
|
||||
|
|
@ -32,9 +34,11 @@
|
|||
</div>
|
||||
<div class="modal-footer">
|
||||
<a class="btn buttonAddAccount" data-bind="command: addAccountCommand">
|
||||
<i data-bind="css: {'icon-user-add': !submitRequest(), 'icon-spinner animated': submitRequest()}"></i>
|
||||
<i data-bind="visible: isNew, css: {'icon-user-add': !submitRequest(), 'icon-spinner animated': submitRequest()}"></i>
|
||||
<i data-bind="visible: !isNew(), css: {'icon-ok': !submitRequest(), 'icon-spinner animated': submitRequest()}"></i>
|
||||
|
||||
<span class="i18n" data-i18n-text="POPUPS_ADD_ACCOUNT/BUTTON_ADD_ACCOUNT"></span>
|
||||
<span data-bind="visible: isNew" class="i18n" data-i18n-text="POPUPS_ADD_ACCOUNT/BUTTON_ADD_ACCOUNT"></span>
|
||||
<span data-bind="visible: !isNew()" class="i18n" data-i18n-text="POPUPS_ADD_ACCOUNT/BUTTON_UPDATE_ACCOUNT"></span>
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -4,7 +4,8 @@
|
|||
<div class="modal-header">
|
||||
<button type="button" class="close" data-bind="command: cancelCommand">×</button>
|
||||
<h3>
|
||||
<span data-bind="text: label"></span>
|
||||
<span data-bind="visible: !edit()" class="i18n" data-i18n-text="POPUPS_IDENTITIES/TITLE_ADD_IDENTITY"></span>
|
||||
<span data-bind="visible: edit" class="i18n" data-i18n-text="POPUPS_IDENTITIES/TITLE_UPDATE_IDENTITY"></span>
|
||||
</h3>
|
||||
</div>
|
||||
<div class="modal-body">
|
||||
|
|
@ -56,9 +57,11 @@
|
|||
</div>
|
||||
<div class="modal-footer">
|
||||
<a class="btn buttonAddAccount" data-bind="command: addOrEditIdentityCommand">
|
||||
<i data-bind="css: {'icon-user-add': !submitRequest(), 'icon-spinner animated': submitRequest()}"></i>
|
||||
<i data-bind="visible: !edit(), css: {'icon-user-add': !submitRequest(), 'icon-spinner animated': submitRequest()}"></i>
|
||||
<i data-bind="visible: edit, css: {'icon-ok': !submitRequest(), 'icon-spinner animated': submitRequest()}"></i>
|
||||
|
||||
<span data-bind="text: button"></span>
|
||||
<span data-bind="visible: !edit()" class="i18n" data-i18n-text="POPUPS_IDENTITIES/BUTTON_ADD_IDENTITY"></span>
|
||||
<span data-bind="visible: edit" class="i18n" data-i18n-text="POPUPS_IDENTITIES/BUTTON_UPDATE_IDENTITY"></span>
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -17,14 +17,18 @@
|
|||
<table class="table table-hover list-table" data-bind="i18nUpdate: accounts">
|
||||
<colgroup>
|
||||
<col />
|
||||
<col style="width: 150px" />
|
||||
<col style="width: 1%" />
|
||||
</colgroup>
|
||||
<tbody data-bind="foreach: accounts">
|
||||
<tr class="account-item">
|
||||
<td>
|
||||
<td class="e-action" data-bind="css: {'e-action': canBeEdit}">
|
||||
<span class="account-img icon-user"></span>
|
||||
<span class="account-name" data-bind="text: email"></span>
|
||||
<a class="btn btn-small btn-small-small btn-danger pull-right button-delete button-delete-transitions" data-bind="css: {'delete-access': deleteAccess()}, click: function(oAccount) { $root.deleteAccount(oAccount); }">
|
||||
</td>
|
||||
<td>
|
||||
<span data-bind="visible: !canBeDalete()"></span>
|
||||
<a class="btn btn-small btn-small-small btn-danger pull-right button-delete button-delete-transitions" data-bind="visible: canBeDalete, css: {'delete-access': deleteAccess}, click: function(oAccount) { $root.deleteAccount(oAccount); }">
|
||||
<span class="i18n" data-i18n-text="SETTINGS_ACCOUNTS/DELETING_ASK"></span>
|
||||
</a>
|
||||
</td>
|
||||
|
|
|
|||
|
|
@ -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?"
|
||||
|
|
|
|||
|
|
@ -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?"
|
||||
|
|
|
|||
|
|
@ -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?"
|
||||
|
|
|
|||
|
|
@ -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é ?"
|
||||
|
|
|
|||
|
|
@ -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?"
|
||||
|
|
|
|||
|
|
@ -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?"
|
||||
|
|
|
|||
|
|
@ -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à?"
|
||||
|
|
|
|||
|
|
@ -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 = "メールの表示名を追加しますか?"
|
||||
|
|
|
|||
|
|
@ -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 = "새 서명 추가?"
|
||||
|
|
|
|||
|
|
@ -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ę?"
|
||||
|
|
|
|||
|
|
@ -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?"
|
||||
|
|
|
|||
|
|
@ -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?"
|
||||
|
|
|
|||
|
|
@ -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?"
|
||||
|
|
|
|||
|
|
@ -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"
|
||||
|
|
|
|||
|
|
@ -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"
|
||||
|
|
|
|||
|
|
@ -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?"
|
||||
|
|
|
|||
|
|
@ -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"
|
||||
|
|
|
|||
|
|
@ -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 = "Добавить Профиль?"
|
||||
|
|
|
|||
|
|
@ -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?"
|
||||
|
|
|
|||
|
|
@ -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"
|
||||
|
|
|
|||
|
|
@ -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?"
|
||||
|
|
|
|||
|
|
@ -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 = "Додати Профіль?"
|
||||
|
|
|
|||
|
|
@ -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 = "添加签名?"
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue