Skip to content

Commit

Permalink
Use of environment variables to set wait time for reading notificatio…
Browse files Browse the repository at this point in the history
…ns and catch-up apis
  • Loading branch information
Jose Alberto Hernandez committed Jan 4, 2024
1 parent 49879b4 commit 2d1a2dc
Show file tree
Hide file tree
Showing 8 changed files with 42 additions and 14 deletions.
12 changes: 12 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -180,6 +180,18 @@ Setting for exporting report table to CSV file using this field delimiter
MIFOS_DEFAULT_CHAR_DELIMITER=,
```


Setting for Wait time in seconds for reading the user notifications, Default 60 seconds
```
MIFOS_WAIT_TIME_FOR_NOTIFICATIONS=60
```

Setting for Wait time in seconds for reading the COB Catch-Up status, Default 30 seconds
```
MIFOS_WAIT_TIME_FOR_CATCHUP=30
```


For more information look the env.sample file in the root directory of the project

## Want to help? [![contributions welcome](https://img.shields.io/badge/contributions-welcome-brightgreen.svg?style=flat)](https://github.com/openMF/web-app/issues)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@ import { forkJoin } from 'rxjs';

/** Custom Services */
import { NotificationsService } from 'app/notifications/notifications.service';
import { environment } from 'environments/environment';

/**
* Notifications Tray Component
Expand All @@ -17,7 +18,8 @@ import { NotificationsService } from 'app/notifications/notifications.service';
encapsulation: ViewEncapsulation.None
})
export class NotificationsTrayComponent implements OnInit, OnDestroy {

/** Wait time between API status calls 60 seg */
waitTime = environment.waitTimeForNotifications || 60;
/** Read Notifications */
readNotifications: any[] = [];
/** Displayed Read Notifications */
Expand Down Expand Up @@ -57,7 +59,7 @@ export class NotificationsTrayComponent implements OnInit, OnDestroy {
}

ngOnInit() {
setTimeout(() => { this.fetchUnreadNotifications(); }, 60000);
this.fetchUnreadNotifications();
}

ngOnDestroy() {
Expand All @@ -81,7 +83,7 @@ export class NotificationsTrayComponent implements OnInit, OnDestroy {
this.setNotifications();
});
// this.mockNotifications(); // Uncomment for Testing.
this.timer = setTimeout(() => { this.fetchUnreadNotifications(); }, 60000);
this.timer = setTimeout(() => { this.fetchUnreadNotifications(); }, this.waitTime * 1000);
}

/**
Expand Down
5 changes: 2 additions & 3 deletions src/app/shared/tenant-selector/tenant-selector.component.ts
Original file line number Diff line number Diff line change
Expand Up @@ -16,11 +16,10 @@ export class TenantSelectorComponent implements OnInit {
* Sets the Tenant Identifier of the application in the selector on initial setup.
* @param {SettingsService} settingsService Settings Service.
*/
constructor(private settingsService: SettingsService) {
this.tenantSelector.setValue(this.settingsService.tenantIdentifier);
}
constructor(private settingsService: SettingsService) { }

ngOnInit(): void {
this.tenantSelector.setValue(this.settingsService.tenantIdentifier);
}

/**
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
import { Component, Input, OnDestroy, OnInit } from '@angular/core';
import { SystemService } from 'app/system/system.service';
import { environment } from 'environments/environment';

@Component({
selector: 'mifosx-cob-workflow',
Expand All @@ -8,7 +9,7 @@ import { SystemService } from 'app/system/system.service';
})
export class CobWorkflowComponent implements OnInit, OnDestroy {
/** Wait time between API status calls 30 seg */
waitTime = 30000;
waitTime = environment.waitTimeForCOBCatchUp || 30;
/** Process running flag */
@Input() isCatchUpRunning = true;
/** Timer to refetch COB Catch-Up status every 5 seconds */
Expand All @@ -17,7 +18,6 @@ export class CobWorkflowComponent implements OnInit, OnDestroy {
constructor(private systemService: SystemService) { }

ngOnInit(): void {
setTimeout(() => { this.getCOBCatchUpStatus(); }, this.waitTime);
this.getCOBCatchUpStatus();
}

Expand All @@ -28,11 +28,8 @@ export class CobWorkflowComponent implements OnInit, OnDestroy {
getCOBCatchUpStatus(): void {
this.systemService.getCOBCatchUpStatus().subscribe((response: any) => {
this.isCatchUpRunning = response.isCatchUpRunning;
if (!this.isCatchUpRunning) {
this.waitTime = 30000;
}
});
this.timer = setTimeout(() => { this.getCOBCatchUpStatus(); }, this.waitTime);
this.timer = setTimeout(() => { this.getCOBCatchUpStatus(); }, this.waitTime * 1000);
}

runCatchUp(): void {
Expand Down
5 changes: 5 additions & 0 deletions src/assets/env.js
Original file line number Diff line number Diff line change
Expand Up @@ -23,4 +23,9 @@
// Display or not the BackEnd Info
window['env']['displayBackEndInfo'] = '';

// Time in seconds for Notifications, default 60 seconds
window['env']['waitTimeForNotifications'] = '';

// Time in seconds for COB Catch-Up, default 30 seconds
window['env']['waitTimeForCOBCatchUp'] = '';
})(this);
5 changes: 5 additions & 0 deletions src/assets/env.template.js
Original file line number Diff line number Diff line change
Expand Up @@ -23,4 +23,9 @@
// Display or not the BackEnd Info
window['env']['displayBackEndInfo'] = '$MIFOS_DISPLAY_BACKEND_INFO';

// Time in seconds for Notifications, default 60 seconds
window['env']['waitTimeForNotifications'] = '$MIFOS_WAIT_TIME_FOR_NOTIFICATIONS';

// Time in seconds for COB Catch-Up, default 30 seconds
window['env']['waitTimeForCOBCatchUp'] = '$MIFOS_WAIT_TIME_FOR_CATCHUP';
})(this);
6 changes: 5 additions & 1 deletion src/environments/environment.prod.ts
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,11 @@ export const environment = {

defaultCharDelimiter: window['env']['defaultCharDelimiter'] || ',',

displayBackEndInfo: window['env']['displayBackEndInfo'] || 'true'
displayBackEndInfo: window['env']['displayBackEndInfo'] || 'true',
// Time in seconds, default 60 seconds
waitTimeForNotifications: window['env']['waitTimeForNotifications'] || 60,
// Time in seconds, default 30 seconds
waitTimeForCOBCatchUp: window['env']['waitTimeForCOBCatchUp'] || 30
};

// Server URL
Expand Down
6 changes: 5 additions & 1 deletion src/environments/environment.ts
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,11 @@ export const environment = {

defaultCharDelimiter: window['env']['defaultCharDelimiter'] || ',',

displayBackEndInfo: window['env']['displayBackEndInfo'] || 'true'
displayBackEndInfo: window['env']['displayBackEndInfo'] || 'true',
// Time in seconds, default 60 seconds
waitTimeForNotifications: window['env']['waitTimeForNotifications'] || 60,
// Time in seconds, default 30 seconds
waitTimeForCOBCatchUp: window['env']['waitTimeForCOBCatchUp'] || 30
};

// Server URL
Expand Down

0 comments on commit 2d1a2dc

Please sign in to comment.