Merge branch 'DEVELOP_FE' of ssh://git.eclipse.org:29418/elogbook/elogbookFE into DEVELOP_FE

# Conflicts:
#	src/app/app.component.ts
diff --git a/src/app/app.component.ts b/src/app/app.component.ts
index 691d136..b1ffff5 100644
--- a/src/app/app.component.ts
+++ b/src/app/app.component.ts
@@ -16,7 +16,6 @@
 import { ImportFileCallerService } from './services/jobs/import-file-caller.service';
 import { BannerMessage } from './common/banner-message';
 import { BannerMessageStatusEn } from './common/enums';
-
 @Component({
   selector: 'app-root',
   templateUrl: './app.component.html',
@@ -29,8 +28,8 @@
 
   constructor(private http: Http, public router: Router,
     public baseDataLoader: BaseDataLoaderService,
-    private activatedRoute: ActivatedRoute,
-    public httpInterceptor: HttpResponseInterceptorService,
+    private activatedRoute: ActivatedRoute,    
+    public httpInterceptor: HttpResponseInterceptorService,    
     private sessionContext: SessionContext,
     private messageService: MessageService,
     public reminderCallerJobService: ReminderCallerJobService,
diff --git a/src/app/dialogs/logout/logout.component.ts b/src/app/dialogs/logout/logout.component.ts
index e8162c4..46fc818 100644
--- a/src/app/dialogs/logout/logout.component.ts
+++ b/src/app/dialogs/logout/logout.component.ts
@@ -1,6 +1,7 @@
 import { Component, Optional } from '@angular/core';
 import { MdDialogRef } from '@angular/material';
 import { MessageService, MessageDefines } from '../../services/message.service';
+import { AuthenticationService } from '../../services/authentication.service';
 import { Router } from '@angular/router';
 
 @Component({
@@ -13,14 +14,19 @@
   constructor(
     @Optional() public dialogRef: MdDialogRef<LogoutComponent>,
     private msgService: MessageService,
-    private router: Router) {
-
-  }
+    private authService: AuthenticationService,
+    private router: Router) {}
 
   logout() {
-    this.dialogRef.config.data.logout();
-    this.msgService.loginLogoff$.emit(MessageDefines.MSG_LOG_OFF);
-    this.dialogRef.close();
-    this.router.navigate(['/logout']);
+    this.authService.logout().subscribe(res => {      
+      this.dialogRef.config.data.logout();
+      this.msgService.loginLogoff$.emit(MessageDefines.MSG_LOG_OFF);
+      this.dialogRef.close();
+      this.router.navigate(['/logout']);      
+    },
+      error => { 
+        console.log(error);
+      }
+    );    
   }
 }
diff --git a/src/app/services/authentication.service.spec.ts b/src/app/services/authentication.service.spec.ts
index c64ddc3..41860eb 100644
--- a/src/app/services/authentication.service.spec.ts
+++ b/src/app/services/authentication.service.spec.ts
@@ -70,35 +70,6 @@
       const options = new ResponseOptions({status: 200, body: fakeUser, headers: successHeaders} );
       response = new Response(options);
     }));
-    it('should have expected fake user (then)', async(inject([], () => {
-        backend.connections.subscribe((c: MockConnection) => c.mockRespond(response));
-
-        service.login( fakeCreds ).toPromise()
-          .then( user => {
-            expect(user.id).toBe(44);
-            expect(user.username).toBe('carlo');
-            expect(user.password).toBe('serverPwd');
-            expect(user.name).toBe('Carlo Cottura');
-            expect(user.specialUser).toBe(true);
-            expect(sessionContext.getCurrSessionId()).toBe('SuperVALID!');
-          });
-    })));
-
-    it('should treat 404 as an Observable error', async(inject([], () => {
-        const resp = new Response(new ResponseOptions({status: 404, body: {} }));
-        
-        backend.connections.subscribe((c: MockConnection) => c.mockRespond(resp));
-
-        service.login(fakeCreds)
-          .do(user => {
-            fail('should not respond with user');
-          })
-          .catch(err => {
-            const str = err;
-            expect(err).toMatch('Bad response status', 'should catch bad response status code');
-            return Observable.of(null); // failure is the expected test result
-          })
-          .toPromise();
-      })));
+ 
   });
  });
diff --git a/src/app/services/authentication.service.ts b/src/app/services/authentication.service.ts
index 15990f8..9ab8024 100644
--- a/src/app/services/authentication.service.ts
+++ b/src/app/services/authentication.service.ts
@@ -21,10 +21,10 @@
         super(messageService);
     }
 
-    public login(creds: LoginCredentials): Observable<any> {
+    public logout(): Observable<any> {
         const headers = new Headers();
         this.createCommonHeaders(headers, this._sessionContext);
-        return this._http.post(super.getBaseUrl() + '/login', creds, { headers: headers })
+        return this._http.get(super.getBaseUrl() + '/logout', { headers: headers })
             .map(res => {
                 super.extractSessionId(res.headers, this._sessionContext);
                 return super.extractData(res, this._sessionContext);