diff --git a/src/app/auth/login/login.page.ts b/src/app/auth/login/login.page.ts index 130a489100e569a90e2ee16c0068141cf9479c86..f40332ad9c9892c0f3154b4a420760303a29355f 100644 --- a/src/app/auth/login/login.page.ts +++ b/src/app/auth/login/login.page.ts @@ -12,8 +12,8 @@ import { RestService } from '../../rest.service'; styleUrls: ['./login.page.scss'], }) export class LoginPage implements OnInit { - username = ""; - password = ""; + username = "Bob@mail.com"; + password = "BobPassword"; correctCredentials = false; loginApi: Observable<any>; diff --git a/src/app/home/home.page.ts b/src/app/home/home.page.ts index d9111a77ceb1841fbf11abc4bac469749b3b5907..e577c54be2e5f16308830f2c3febc4fc3d623383 100644 --- a/src/app/home/home.page.ts +++ b/src/app/home/home.page.ts @@ -3,14 +3,17 @@ import { Geolocation } from '@ionic-native/geolocation/ngx'; import { RestService } from '../rest.service'; import { Observable } from 'rxjs'; import { HttpClient, HttpHeaders } from '@angular/common/http'; +import { Storage } from '@ionic/storage'; declare var H: any; + @Component({ selector: 'app-home', templateUrl: 'home.page.html', styleUrls: ['home.page.scss'], }) + export class HomePage { private platform: any; private map: any; @@ -39,7 +42,8 @@ export class HomePage { constructor(private geolocation: Geolocation, public restService: RestService, - public httpClient: HttpClient) { + public httpClient: HttpClient, + private storage: Storage) { this.platform = new H.service.Platform({ 'apikey': 'tiVTgBnPbgV1spie5U2MSy-obhD9r2sGiOCbBzFY2_k' @@ -59,22 +63,21 @@ export class HomePage { } getBikesList() { - this.geolocation.getCurrentPosition( - { - maximumAge: 1000, timeout: 5000, - enableHighAccuracy: true - } - ).then((resp) => { + this.geolocation.getCurrentPosition({ + maximumAge: 1000, timeout: 5000, + enableHighAccuracy: true + }).then((resp) => { this.currentLocation.lat = resp.coords.latitude; this.currentLocation.lng = resp.coords.longitude; - let url = 'http://193.196.52.237:8081/admin/bikes' + '?lat=' + this.currentLocation.lat + '&lng=' + this.currentLocation.lng; - const headers = new HttpHeaders().set("Authorization", "Bearer " + this.restService.getToken()); - this.bikeApi = this.httpClient.get(url, {headers}); - this.bikeApi - .subscribe((resp) => { + this.storage.get('token').then((token) => { + let url = 'http://193.196.52.237:8081/bikes' + '?lat=' + this.currentLocation.lat + '&lng=' + this.currentLocation.lng; + const headers = new HttpHeaders().set("Authorization", "Bearer " + token); + this.bikeApi = this.httpClient.get(url, { headers }); + this.bikeApi.subscribe((resp) => { console.log('my data: ', resp); - this.bikes = resp.data; + this.bikes = resp; }, (error) => console.log(error)); + }); }, er => { alert('Can not retrieve Location') }).catch((error) => { diff --git a/src/app/rest.service.ts b/src/app/rest.service.ts index 1110494c33fca62ae1da790eb6fa7390317e0124..d0156233b399fbc65a643732c5c365fcde495c5f 100644 --- a/src/app/rest.service.ts +++ b/src/app/rest.service.ts @@ -1,19 +1,22 @@ import { Injectable } from '@angular/core'; +import { Storage } from '@ionic/storage'; @Injectable({ providedIn: 'root' }) export class RestService { - token: String; - - constructor() { } + constructor(private storage: Storage) { } setToken(token) { - this.token = token; + // set a key/value + this.storage.set('token', token); } getToken() { - return this.token; + this.storage.get('token').then((val) => { + console.log('token', val); + return val; + }); } }