Merge pull request #3102 from NoelDeMartin/MOBILE-3316

MOBILE-3316 core: Fix nologin & suspended strings
main
Dani Palou 2022-02-09 11:17:44 +01:00 committed by GitHub
commit 6e976570f7
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
5 changed files with 20 additions and 1 deletions

View File

@ -2340,6 +2340,7 @@
"core.userdeleted": "moodle",
"core.userdetails": "moodle",
"core.usernotfullysetup": "error",
"core.usernologin": "local_moodlemobileapp",
"core.users": "moodle",
"core.usersuspended": "tool_reportbuilder",
"core.view": "moodle",

View File

@ -631,6 +631,12 @@ export class CoreSite {
CoreEvents.trigger(CoreEvents.USER_SUSPENDED, { params: data }, this.id);
error.message = Translate.instant('core.usersuspended');
throw new CoreWSError(error);
} else if (error.errorcode === 'wsaccessusernologin') {
// User suspended, trigger event.
CoreEvents.trigger(CoreEvents.USER_NO_LOGIN, { params: data }, this.id);
error.message = Translate.instant('core.usernologin');
throw new CoreWSError(error);
} else if (error.errorcode === 'forcepasswordchangenotice') {
// Password Change Forced, trigger event. Try to get data from cache, the event will handle the error.

View File

@ -63,6 +63,7 @@ export class CoreUserProvider {
CoreEvents.on(CoreEvents.USER_DELETED, data => this.handleUserKickedOutEvent(data));
CoreEvents.on(CoreEvents.USER_SUSPENDED, data => this.handleUserKickedOutEvent(data));
CoreEvents.on(CoreEvents.USER_NO_LOGIN, data => this.handleUserKickedOutEvent(data));
}
/**

View File

@ -327,7 +327,8 @@
"userdeleted": "This user account has been deleted",
"userdetails": "User details",
"usernotfullysetup": "User not fully set-up",
"usersuspended": "This user account has been suspended",
"usernologin": "Authentication has been revoked for this account",
"usersuspended": "Registration suspended",
"users": "Users",
"view": "View",
"viewcode": "View code",

View File

@ -45,6 +45,7 @@ export interface CoreEventsData {
[CoreEvents.PACKAGE_STATUS_CHANGED]: CoreEventPackageStatusChanged;
[CoreEvents.USER_DELETED]: CoreEventUserDeletedData;
[CoreEvents.USER_SUSPENDED]: CoreEventUserSuspendedData;
[CoreEvents.USER_NO_LOGIN]: CoreEventUserNoLoginData;
[CoreEvents.FORM_ACTION]: CoreEventFormActionData;
[CoreEvents.NOTIFICATION_SOUND_CHANGED]: CoreEventNotificationSoundChangedData;
[CoreEvents.SELECT_COURSE_TAB]: CoreEventSelectCourseTabData;
@ -87,6 +88,7 @@ export class CoreEvents {
static readonly COMPLETION_CHANGED = 'completion_changed';
static readonly USER_DELETED = 'user_deleted';
static readonly USER_SUSPENDED = 'user_suspended';
static readonly USER_NO_LOGIN = 'user_no_login';
static readonly PACKAGE_STATUS_CHANGED = 'package_status_changed';
static readonly COURSE_STATUS_CHANGED = 'course_status_changed';
static readonly SECTION_STATUS_CHANGED = 'section_status_changed';
@ -315,6 +317,14 @@ export type CoreEventUserSuspendedData = {
params: any; // Params sent to the WS that failed.
};
/**
* Data passed to USER_NO_LOGIN event.
*/
export type CoreEventUserNoLoginData = {
// eslint-disable-next-line @typescript-eslint/no-explicit-any
params: any; // Params sent to the WS that failed.
};
export enum CoreEventFormAction {
CANCEL = 'cancel',
SUBMIT = 'submit',