From 152cb381ea2c915c762416092337ce1d8589d1c6 Mon Sep 17 00:00:00 2001 From: Aijana Schumann Date: Mon, 6 Dec 2021 15:09:15 +0100 Subject: Update ODLUX Update login view, add logout after user session ends, add user settings, several bugfixes Issue-ID: CCSDK-3540 Signed-off-by: Aijana Schumann Change-Id: I21137756b204287e25766a9646bf2faf7bad9d35 --- .../framework/src/handlers/applicationStateHandler.ts | 19 +++++++++++++++---- 1 file changed, 15 insertions(+), 4 deletions(-) (limited to 'sdnr/wt/odlux/framework/src/handlers/applicationStateHandler.ts') diff --git a/sdnr/wt/odlux/framework/src/handlers/applicationStateHandler.ts b/sdnr/wt/odlux/framework/src/handlers/applicationStateHandler.ts index 61e1334e7..16c6ed5d3 100644 --- a/sdnr/wt/odlux/framework/src/handlers/applicationStateHandler.ts +++ b/sdnr/wt/odlux/framework/src/handlers/applicationStateHandler.ts @@ -31,6 +31,9 @@ import { ExternalLoginProvider } from '../models/externalLoginProvider'; import { ApplicationConfig } from '../models/applicationConfig'; import { IConnectAppStoreState } from '../../../apps/connectApp/src/handlers/connectAppRootHandler'; import { IFaultAppStoreState } from '../../../apps/faultApp/src/handlers/faultAppRootHandler'; +import { GeneralSettings } from '../models/settings'; +import { SetGeneralSettingsAction } from '../actions/settingsAction'; +import { startWebsocketSession, suspendWebsocketSession } from '../services/notificationService'; declare module '../store/applicationStore' { @@ -47,11 +50,12 @@ export interface IApplicationState { isMenuClosedByUser: boolean; errors: ErrorInfo[]; snackBars: SnackbarItem[]; - isWebsocketAvailable: boolean | undefined; + isWebsocketAvailable: boolean | null; externalLoginProviders: ExternalLoginProvider[] | null; authentication: "basic"|"oauth", // basic enablePolicy: boolean, // false - transportpceUrl : string + transportpceUrl : string, + settings: GeneralSettings } const applicationStateInit: IApplicationState = { @@ -60,11 +64,12 @@ const applicationStateInit: IApplicationState = { snackBars: [], isMenuOpen: true, isMenuClosedByUser: false, - isWebsocketAvailable: undefined, + isWebsocketAvailable: null, externalLoginProviders: null, authentication: "basic", enablePolicy: false, - transportpceUrl: "" + transportpceUrl: "", + settings:{ general: { areNotificationsEnabled: null }} }; export const configureApplication = (config: ApplicationConfig) => { @@ -141,6 +146,12 @@ export const applicationStateHandler: IActionHandler = (state ...state, externalLoginProviders: action.externalLoginProvders, } + }else if(action instanceof SetGeneralSettingsAction){ + + state = { + ...state, + settings:{general:{areNotificationsEnabled: action.areNoticationsActive}} + } } return state; }; -- cgit 1.2.3-korg