})
/** Exporting a class @exports AppComponent */
export class AppComponent {
+ /** Handle idle time out @public */
+ public idleTime: number;
/** To inject services @public */
public injector: Injector;
/** Instance for modal service @public */
/** To handle handleIdle @public */
public handleIdle(): void {
- const idleTime: number = 1200;
+ if (!isNullOrUndefined((sessionStorage.getItem('timeout')))) {
+ this.idleTime = Number(sessionStorage.getItem('timeout'));
+ } else {
+ this.idleTime = 1200;
+ }
const idleTimeOutWarning: number = 5;
// sets an idle timeout in seconds.
- this.idle.setIdle(idleTime);
+ this.idle.setIdle(this.idleTime);
//sets a timeout period in seconds. after idleTime seconds of inactivity, the user will be considered timed out.
this.idle.setTimeout(idleTimeOutWarning);
// sets the default interrupts, in this case, things like clicks, scrolls, touches to the document
/** set local storage on auth process @public */
public setLocalStorage(data: ProjectModel): void {
+ if (!isNullOrUndefined(data.timeout)) {
+ sessionStorage.setItem('timeout', data.timeout);
+ }
sessionStorage.setItem('id_token', data.id);
sessionStorage.setItem('expires', data.expires.toString());
sessionStorage.setItem('username', data.username);
this.changePassword.next(false);
const langCode: string = sessionStorage.getItem('languageCode');
const redirecturl: string = isNullOrUndefined(sessionStorage.getItem('returnUrl')) ? '/' : sessionStorage.getItem('returnUrl');
- const osmVersion: string = isNullOrUndefined(sessionStorage.getItem('version')) ? '' : sessionStorage.getItem('version');
+ const osmVersion: string = isNullOrUndefined(sessionStorage.getItem('osmVersion')) ? '' : sessionStorage.getItem('osmVersion');
+ const timeOut: string = isNullOrUndefined(sessionStorage.getItem('timeout')) ? '1200' : sessionStorage.getItem('timeout');
sessionStorage.clear();
sessionStorage.setItem('languageCode', langCode);
sessionStorage.setItem('returnUrl', redirecturl);
sessionStorage.setItem('token_state', null);
sessionStorage.setItem('osmVersion', osmVersion);
+ sessionStorage.setItem('timeout', timeOut);
this.idle.stop();
this.router.navigate(['login']).catch((): void => {
// Catch Navigation Error