diff --git a/src/app/components/shared/footer/footer.component.ts b/src/app/components/shared/footer/footer.component.ts
index 9b1dd21d72f2c83ae44e61291c98f02e283a8fd0..46dc88e79e92eef203b01ce3b782c7c65d17717d 100644
--- a/src/app/components/shared/footer/footer.component.ts
+++ b/src/app/components/shared/footer/footer.component.ts
@@ -67,11 +67,6 @@ export class FooterComponent implements OnInit {
         dialogRef.componentInstance.motdsList = e;
       });
     });
-    this.motdService.getList().subscribe(e => {
-      if (e.containsUnreadMessage()) {
-        this.motdService.requestDialog();
-      }
-    });
     this.deviceType = localStorage.getItem('deviceType');
     if (!this.themeService.getThemeByKey(this.themeClass) || !this.themeService.getTheme()['source']['_value']) {
       if (this.deviceType === 'mobile') {
diff --git a/src/app/components/shared/header/header.component.ts b/src/app/components/shared/header/header.component.ts
index f402566f9b4e67e1f35be72bc1c062b78a56628b..48b9abe735ad3e6ca2090d9de68415ce9ff0b8b7 100644
--- a/src/app/components/shared/header/header.component.ts
+++ b/src/app/components/shared/header/header.component.ts
@@ -52,8 +52,9 @@ export class HeaderComponent implements OnInit {
 
   ngOnInit() {
     this.eventService.on('userLogin').subscribe(e => {
-      this.motdService.checkNewMessage();
-      this.motdService.requestDialog();
+      this.motdService.checkNewMessage(() => {
+        this.motdService.requestDialog();
+      });
     });
     if (localStorage.getItem('loggedin') !== null && localStorage.getItem('loggedin') === 'true') {
       this.authenticationService.refreshLogin();
diff --git a/src/app/services/http/motd.service.ts b/src/app/services/http/motd.service.ts
index 6da611470f9cfe61b2720eae8fe8ebc1d2cc29da..ac412b2560ded97645fc6a0090f9e6b7f1139a64 100644
--- a/src/app/services/http/motd.service.ts
+++ b/src/app/services/http/motd.service.ts
@@ -29,9 +29,12 @@ export class MotdService extends BaseHttpService {
     }, 30000);
   }
 
-  public checkNewMessage(): void {
+  public checkNewMessage(runnable?: () => void): void {
     this.getList().subscribe(e => {
       this.validateNewMessage(e);
+      if (runnable && this.hasNewMessages) {
+        runnable();
+      }
     });
   }
 
@@ -57,11 +60,14 @@ export class MotdService extends BaseHttpService {
     });
   }
 
-  public onNewMessage(): Observable<boolean> {
+  public onNewMessage(run?: boolean): Observable<boolean> {
     return new Observable<boolean>(e => {
       this.newMessageTrigger.subscribe(b => {
         e.next(b);
       });
+      if (run) {
+        e.next(this.hasNewMessages);
+      }
       this.checkNewMessage();
     });
   }