updated provider to get sketch

development
Thiemann96 5 years ago
parent 457a3b7711
commit 1089bb0126

@ -17,6 +17,7 @@ import { SensorDetailPage } from '../pages/sensor-detail/sensor-detail';
import { MySenseBoxPage } from '../pages/my-sense-box/my-sense-box';
import { LoginProvider } from '../providers/LoginProvider/LoginProvider';
import { SensorsPage } from '../pages/sensors/sensors';
import { ConfigurationPage } from '../pages/configuration/configuration';
// For AoT compilation (production builds) we need to have a factory for the loader of translation files.
// @TODO: we possibly could optimize this by using a static loader in combination with webpack:
@ -31,7 +32,8 @@ export function createTranslateLoader(http: HttpClient) {
AddItemPage,
SensorDetailPage,
MySenseBoxPage,
SensorsPage
SensorsPage,
ConfigurationPage
],
imports: [
HttpClientModule,
@ -53,7 +55,9 @@ export function createTranslateLoader(http: HttpClient) {
AddItemPage,
SensorDetailPage,
MySenseBoxPage,
SensorsPage
SensorsPage,
ConfigurationPage
],
providers: [

@ -35,7 +35,7 @@ export class LoginPage {
catch(err){
console.log(err.message)
}
this.navCtrl.push(MySenseBoxPage,this.boxes);
this.navCtrl.push(MySenseBoxPage,[this.boxes,this.token]);
}
ionViewDidLoad() {

@ -31,13 +31,10 @@
ID: <code>{{box._id}}</code>
</ion-row>
<ion-row>
<ion-col col-4>
<ion-col col-6>
<button class="actionButton" ion-button color="light"(click)="forwardShow(box)">Show</button>
</ion-col>
<ion-col col-4>
<button class="actionButton" ion-button color="light" (click)="forwardEdit(box)">Edit</button>
</ion-col>
<ion-col col-4>
<ion-col col-6>
<button class="actionButton" ion-button color="light" (click)="forwardSketch(box)">Sketch</button>
</ion-col>
</ion-row>

@ -2,6 +2,7 @@ import { Component } from '@angular/core';
import { IonicPage, NavController, NavParams } from 'ionic-angular';
import {LoginProvider} from "../../providers/LoginProvider/LoginProvider";
import { SensorsPage } from '../sensors/sensors';
import { ConfigurationPage } from '../configuration/configuration';
/**
* Generated class for the MySenseBoxPage page.
*
@ -15,8 +16,8 @@ import { SensorsPage } from '../sensors/sensors';
templateUrl: 'my-sense-box.html',
})
export class MySenseBoxPage {
token:string;
public boxes:Array<any>;
public boxes:Array<Object> = this.navParams.data[0].data.boxes;
private token:string = this.navParams.data[1];
constructor(public navCtrl: NavController,
public navParams: NavParams,
private loginProvider: LoginProvider
@ -26,18 +27,14 @@ export class MySenseBoxPage {
forwardShow(box){
this.navCtrl.push(SensorsPage,box)
}
forwardEdit(box){
}
forwardSketch(box){
// Call sketch
// forward to config page
this.navCtrl.push(ConfigurationPage,box)
}
ionViewDidLoad() {
console.log('ionViewDidLoad MySenseBoxPage');
this.boxes = this.navParams.data.data.boxes
console.log(this.boxes);
}
}

@ -3,6 +3,7 @@ import { Injectable } from '@angular/core';
import { timeout } from 'rxjs/operators'
const URL_login = 'https://api.opensensemap.org/users/sign-in';
const URL_user = 'https://api.opensensemap.org/users/me/boxes';
const URL_sketch = 'https://api.opensensemap.org/boxes/';
// const URL = "http://compiler.snsbx.nroo.de"
@ -54,4 +55,21 @@ export class LoginProvider {
return response;
})
}
async getUserSketch(token:string,id:string):Promise<string>{
let URL_sketch_final = URL_sketch+id+"/script";
console.log(URL_sketch_final)
const headers = new HttpHeaders({'Authorization':"Bearer "+token,responseType:'text'})
return this.http.get(URL_sketch_final,{headers})
.pipe(timeout(30000))
.toPromise()
.catch(err=>{
let msg = err.message;
console.log(msg);
})
.then((response:any)=>{
console.log(response);
return response
})
}
}

Loading…
Cancel
Save