diff --git a/src/app/components/app-scaffold/app-scaffold.component.ts b/src/app/components/app-scaffold/app-scaffold.component.ts
index e173656..b2b9801 100644
--- a/src/app/components/app-scaffold/app-scaffold.component.ts
+++ b/src/app/components/app-scaffold/app-scaffold.component.ts
@@ -1,5 +1,6 @@
import { Component, OnInit } from '@angular/core';
import { LoginComponent } from '../login/login.component';
+import { DatasharingService } from '../../services/datasharing.service';
@Component({
selector: 'app-scaffold',
@@ -8,10 +9,14 @@ import { LoginComponent } from '../login/login.component';
})
export class AppScaffoldComponent implements OnInit {
-
- constructor() { }
+ loggedIn: boolean = false;
+ constructor(private data: DatasharingService) { }
ngOnInit() {
+ this.data.currentUserInfo.subscribe(user => {
+ this.loggedIn = user.loggedIn;
+ console.log('he´s comming through!');
+ })
}
}
diff --git a/src/app/components/login/login.component.html b/src/app/components/login/login.component.html
index 00341e7..b7a3663 100644
--- a/src/app/components/login/login.component.html
+++ b/src/app/components/login/login.component.html
@@ -12,6 +12,7 @@
+
{{errorMessage}}
You aren´t part of greenvironment yet? - join us here
diff --git a/src/app/components/login/login.component.ts b/src/app/components/login/login.component.ts
index 40d6725..40e0a7a 100644
--- a/src/app/components/login/login.component.ts
+++ b/src/app/components/login/login.component.ts
@@ -1,6 +1,8 @@
import { Component, OnInit } from '@angular/core';
import { Login } from 'src/app/models/login';
import { LoginService } from 'src/app/services/login/login.service';
+import { RouterLink } from '@angular/router';
+import {Router} from '@angular/router';
@Component({
selector: 'app-login',
@@ -9,17 +11,27 @@ import { LoginService } from 'src/app/services/login/login.service';
})
export class LoginComponent implements OnInit {
login: Login
+ errorOccurred: boolean = false;
+ errorMessage: string;
- constructor(private loginService: LoginService) {
+ constructor(private loginService: LoginService,private router: Router) {
this.login = {passwordHash: null, email: null};
}
+ public loginError(error : any){
+ console.log(error.errors[0].message);
+ this.errorOccurred = true;
+ this.errorMessage = error.errors[0].message;
+ }
+
onClickSubmit(pEmail: string, pPasswordHash: string) {
- console.log('email: ' + pEmail);
+ console.log('try to login with mail adress:' + pEmail);
+ this.errorOccurred = false;
+ this.errorMessage = " ";
this.login.email = pEmail
this.login.passwordHash = pPasswordHash
- this.loginService.login(this.login)
+ this.loginService.login(this.login, error => this.loginError(error.json()));
}
ngOnInit() {}
diff --git a/src/app/services/login/login.service.ts b/src/app/services/login/login.service.ts
index 8276696..8924676 100644
--- a/src/app/services/login/login.service.ts
+++ b/src/app/services/login/login.service.ts
@@ -4,15 +4,16 @@ import { Login } from '../../models/login';
import { User } from 'src/app/models/user';
import { DatasharingService } from '../datasharing.service';
import { userInfo } from 'os';
+import {Router} from '@angular/router';
@Injectable({
providedIn: 'root'
})
export class LoginService {
- constructor(private http: Http, private data: DatasharingService) { }
+ constructor(private http: Http, private data: DatasharingService,private router: Router) { }
- public login(login : Login) {
+ public login(login : Login, errorCb: any) {
//let url = './graphql'
let url = 'https://greenvironment.net/graphql'
@@ -23,8 +24,15 @@ export class LoginService {
return this.http.post(url, this.buildJson(login))
.subscribe(response => {
console.log(response.text());
+ this.loginSuccess();
this.updateUserInfo(response.json())
- });
+ }, errorCb
+ );
+ }
+ public loginSuccess(){
+ console.log('alles supi dupi');
+ //do routing
+ this.router.navigateByUrl('');
}
public updateUserInfo(response : any){