Added: Password change plugin API improvements (#910)

This commit is contained in:
RainLoop Team 2015-12-15 07:02:30 +03:00
parent b97bd4edf0
commit cfad4bb005
11 changed files with 107 additions and 18 deletions

View file

@ -271,7 +271,7 @@ class AbstractApp extends AbstractBoot
ko.components.register('TextArea', require('Component/TextArea'));
ko.components.register('x-script', require('Component/Script'));
ko.components.register('svg-icon', require('Component/SvgIcon'));
// ko.components.register('svg-icon', require('Component/SvgIcon'));
if (/**false && /**/Settings.settingsGet('MaterialDesign') && Globals.bAnimationSupported)
{

View file

@ -15,7 +15,6 @@ import Translator from 'Common/Translator';
import Momentor from 'Common/Momentor';
import Cache from 'Common/Cache';
import SocialStore from 'Stores/Social';
import SettingsStore from 'Stores/User/Settings';
import AccountStore from 'Stores/User/Account';
@ -514,7 +513,7 @@ class AppUser extends AbstractApp
Utils.delegateRunOnDestroy(AccountStore.accounts());
AccountStore.accounts(_.map(oData.Result['Accounts'],
AccountStore.accounts(_.map(oData.Result['Accounts'],
(sValue) => new AccountModel(sValue, sValue !== sParentEmail, aCounts[sValue] || 0)));
}
@ -914,7 +913,7 @@ class AppUser extends AbstractApp
Remote.suggestions((result, data) => {
if (Enums.StorageResultType.Success === result && data && Utils.isArray(data.Result))
{
callback(_.compact(_.map(data.Result,
callback(_.compact(_.map(data.Result,
(item) => item && item[0] ? new EmailModel(item[0], item[1]) : null)));
}
else if (Enums.StorageResultType.Abort !== result)
@ -1401,7 +1400,7 @@ class AppUser extends AbstractApp
fallback: false
});
Events.sub('mailbox.inbox-unread-count',
Events.sub('mailbox.inbox-unread-count',
(iCount) => Tinycon.setBubble(0 < iCount ? (99 < iCount ? 99 : iCount) : 0));
}
}

View file

@ -233,11 +233,23 @@ class Translator
return message;
}
defCode = defCode ? (window.parseInt(defCode, 10)) || 0 : 0;
return _.isUndefined(this.notificationI18N[code]) ? (
defCode && _.isUndefined(this.notificationI18N[defCode]) ? this.notificationI18N[defCode] : ''
) : this.notificationI18N[code];
}
/**
* @param {object} response
* @param {number} defCode = Notification.UnknownNotification
* @return {string}
*/
getNotificationFromResponse(response, defCode = Notification.UnknownNotification) {
return response && response.ErrorCode ?
this.getNotification(Utils.pInt(response.ErrorCode), response.ErrorMessage || '') :
this.getNotification(defCode);
}
/**
* @param {*} code
* @return {string}

View file

@ -6,7 +6,7 @@ let
getUtl = () => {
if (!cachedUrl)
{
const version = $('#rlAppVersion').attr('content') || '0.0.0';
const version = $('#rlAppVersion').attr('content') || '0.0.0'; // TODO
cachedUrl = `rainloop/v/${version}/static/css/svg/icons.svg`;
}

View file

@ -114,8 +114,8 @@
}
this.passwordUpdateError(true);
this.errorDescription(oData && oData.ErrorCode ? Translator.getNotification(oData.ErrorCode) :
Translator.getNotification(Enums.Notification.CouldNotSaveNewPassword));
this.errorDescription(
Translator.getNotificationFromResponse(oData, Enums.Notification.CouldNotSaveNewPassword));
}
};

View file

@ -230,7 +230,7 @@
oData.ErrorCode = Enums.Notification.AuthError;
}
this.submitError(Translator.getNotification(oData.ErrorCode));
this.submitError(Translator.getNotificationFromResponse(oData));
if ('' === this.submitError())
{
@ -344,6 +344,11 @@
return bF || bG || bT;
}, this);
if (Settings.settingsGet('AdditionalLoginError') && !this.submitError())
{
this.submitError(Settings.settingsGet('AdditionalLoginError'));
}
kn.constructorEnd(this);
}