Store in GIT
This commit is contained in:
@@ -0,0 +1,32 @@
|
||||
<!-- Trigger the modal with a button -->
|
||||
<button type="button" class="btn btn-info btn-lg" data-toggle="modal" data-target="#editModal"><i class="fa fa-pencil" aria-hidden="true"></i></button>
|
||||
|
||||
<!-- Modal -->
|
||||
<div id="editModal" class="modal fade" role="dialog">
|
||||
<div class="modal-dialog">
|
||||
|
||||
<!-- Modal content-->
|
||||
<div class="modal-content">
|
||||
<form id="myForm" #editForm="ngForm" (ngSubmit)="onSubmit()">
|
||||
<div class="modal-header">
|
||||
<button type="button" class="close" data-dismiss="modal">×</button>
|
||||
<h4 class="modal-title">Edit {{reader.reader_id}}</h4>
|
||||
</div>
|
||||
<div class="modal-body">
|
||||
|
||||
<div class="form-group">
|
||||
<label for="role">Plane</label>
|
||||
<select type="text" class="form-control" id="plane" [(ngModel)]="reader.plane" name="plane" #plane="ngModel" required ngModel>
|
||||
<option *ngFor="let plane of planes;trackBy:plane.id" [ngValue]="plane">{{plane.name}}</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
<div class="modal-footer">
|
||||
<button type="submit" class="btn btn-success" form="myForm" data-dismiss="modal" (click)="onSubmit()" [disabled]="!editForm.form.valid">Edit Reader</button>
|
||||
<button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
@@ -0,0 +1,59 @@
|
||||
"use strict";
|
||||
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
||||
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
||||
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
||||
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
||||
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
||||
};
|
||||
var __metadata = (this && this.__metadata) || function (k, v) {
|
||||
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
||||
};
|
||||
var core_1 = require("@angular/core");
|
||||
var reader_class_1 = require("../../../classes/reader.class");
|
||||
var plane_class_1 = require("../../../classes/plane.class");
|
||||
var data_service_1 = require("./../../../services/data.service");
|
||||
var EditReaderFormComponent = (function () {
|
||||
function EditReaderFormComponent(data) {
|
||||
this.data = data;
|
||||
this.submitted = false;
|
||||
this.planes = new Array();
|
||||
this.planes = new Array();
|
||||
}
|
||||
EditReaderFormComponent.prototype.ngOnInit = function () {
|
||||
var _this = this;
|
||||
this.reader = new reader_class_1.Reader(this.model.id, this.model.reader_id, this.model.plane);
|
||||
this.data.load().then(function () {
|
||||
_this.data
|
||||
.planes()
|
||||
.subscribe(function (response) {
|
||||
for (var i = 0; i < response.data.length; i++) {
|
||||
var temp = plane_class_1.Plane.toPlane(response.data[i]);
|
||||
_this.planes.push(temp);
|
||||
}
|
||||
});
|
||||
});
|
||||
};
|
||||
EditReaderFormComponent.prototype.onSubmit = function () {
|
||||
var _this = this;
|
||||
this.model.plane = this.reader.plane;
|
||||
this.submitted = true;
|
||||
this.data.load().then(function () {
|
||||
_this.data.editReader(_this.model).subscribe(function (b) { return _this.temp = JSON.stringify(b); });
|
||||
console.log(_this.temp);
|
||||
});
|
||||
};
|
||||
return EditReaderFormComponent;
|
||||
}());
|
||||
__decorate([
|
||||
core_1.Input(),
|
||||
__metadata("design:type", reader_class_1.Reader)
|
||||
], EditReaderFormComponent.prototype, "model", void 0);
|
||||
EditReaderFormComponent = __decorate([
|
||||
core_1.Component({
|
||||
selector: 'edit-reader-form',
|
||||
templateUrl: './edit-reader-form.component.html'
|
||||
}),
|
||||
__metadata("design:paramtypes", [data_service_1.DataService])
|
||||
], EditReaderFormComponent);
|
||||
exports.EditReaderFormComponent = EditReaderFormComponent;
|
||||
//# sourceMappingURL=edit-reader-form.component.js.map
|
||||
@@ -0,0 +1 @@
|
||||
{"version":3,"file":"edit-reader-form.component.js","sourceRoot":"","sources":["edit-reader-form.component.ts"],"names":[],"mappings":";;;;;;;;;;AAAA,sCAAuD;AACvD,8DAAqD;AACrD,4DAAmD;AACnD,iEAA6D;AAQ7D,IAAa,uBAAuB;IAMlC,iCAAoB,IAAiB;QAAjB,SAAI,GAAJ,IAAI,CAAa;QAOrC,cAAS,GAAG,KAAK,CAAC;QAElB,WAAM,GAAgB,IAAI,KAAK,EAAS,CAAC;QAPvC,IAAI,CAAC,MAAM,GAAG,IAAI,KAAK,EAAS,CAAC;IACnC,CAAC;IAQD,0CAAQ,GAAR;QAAA,iBAkBC;QAhBC,IAAI,CAAC,MAAM,GAAG,IAAI,qBAAM,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAEhF,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC;YACpB,KAAI,CAAC,IAAI;iBACJ,MAAM,EAAE;iBACR,SAAS,CAAC,UAAA,QAAQ;gBAEf,GAAG,CAAA,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAC5C,CAAC;oBACG,IAAI,IAAI,GAAS,mBAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;oBACjD,KAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAC3B,CAAC;YAEH,CAAC,CAAC,CAAC;QAEP,CAAC,CAAC,CAAC;IACT,CAAC;IAED,0CAAQ,GAAR;QAAA,iBASC;QAPC,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;QAErC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QACtB,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC;YACpB,KAAI,CAAC,IAAI,CAAC,UAAU,CAAC,KAAI,CAAC,KAAK,CAAC,CAAC,SAAS,CAAC,UAAA,CAAC,IAAI,OAAA,KAAI,CAAC,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAA7B,CAA6B,CAAC,CAAC;YAC/E,OAAO,CAAC,GAAG,CAAC,KAAI,CAAC,IAAI,CAAC,CAAC;QACzB,CAAC,CAAC,CAAA;IACJ,CAAC;IACH,8BAAC;AAAD,CAAC,AA/CD,IA+CC;AA7CS;IAAP,YAAK,EAAE;8BAAM,qBAAM;sDAAC;AAFV,uBAAuB;IALnC,gBAAS,CAAC;QACT,QAAQ,EAAE,kBAAkB;QAC5B,WAAW,EAAE,mCAAmC;KACjD,CAAC;qCAQ0B,0BAAW;GAN1B,uBAAuB,CA+CnC;AA/CY,0DAAuB"}
|
||||
@@ -0,0 +1,59 @@
|
||||
import {Component, Input, OnInit} from '@angular/core';
|
||||
import {Reader} from "../../../classes/reader.class";
|
||||
import {Plane} from "../../../classes/plane.class";
|
||||
import {DataService} from './../../../services/data.service';
|
||||
import {NgForm} from '@angular/forms';
|
||||
|
||||
@Component({
|
||||
selector: 'edit-reader-form',
|
||||
templateUrl: './edit-reader-form.component.html'
|
||||
})
|
||||
|
||||
export class EditReaderFormComponent implements OnInit {
|
||||
|
||||
@Input()model:Reader;
|
||||
|
||||
reader:Reader;
|
||||
|
||||
constructor(private data: DataService) {
|
||||
|
||||
this.planes = new Array<Plane>();
|
||||
}
|
||||
|
||||
temp: string;
|
||||
|
||||
submitted = false;
|
||||
|
||||
planes:Array<Plane> = new Array<Plane>();
|
||||
|
||||
ngOnInit(): void {
|
||||
|
||||
this.reader = new Reader(this.model.id, this.model.reader_id, this.model.plane);
|
||||
|
||||
this.data.load().then(()=> {
|
||||
this.data
|
||||
.planes()
|
||||
.subscribe(response => {
|
||||
|
||||
for(let i = 0; i < response.data.length; i++)
|
||||
{
|
||||
var temp:Plane = Plane.toPlane(response.data[i]);
|
||||
this.planes.push(temp);
|
||||
}
|
||||
|
||||
});
|
||||
|
||||
});
|
||||
}
|
||||
|
||||
onSubmit() {
|
||||
|
||||
this.model.plane = this.reader.plane;
|
||||
|
||||
this.submitted = true;
|
||||
this.data.load().then(() => {
|
||||
this.data.editReader(this.model).subscribe(b => this.temp = JSON.stringify(b));
|
||||
console.log(this.temp);
|
||||
})
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,3 @@
|
||||
.plane{
|
||||
cursor:pointer;
|
||||
}
|
||||
@@ -0,0 +1,36 @@
|
||||
<div class="row">
|
||||
|
||||
<div class="col-md-12">
|
||||
<div class="page-header">
|
||||
<h1>F.R.A.U.D.S. <small>{{name}}</small> <small><div *ngIf=!loading class="pull-right"><edit-reader-form [model]="reader"></edit-reader-form></div></small></h1>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div *ngIf=loading class="col-md-12">
|
||||
<span *ngIf=!error><i class="fa fa-circle-o-notch fa-spin fa-fw"></i> Loading....</span>
|
||||
<span *ngIf=error><i class="fa fa-cross fa-fw"></i> Error....</span>
|
||||
</div>
|
||||
|
||||
<div *ngIf=!loading class="col-md-12">
|
||||
<i class="fa fa-fw fa-barcode"></i> <b>Reader:</b> {{reader.reader_id}}<br>
|
||||
|
||||
|
||||
<div *ngIf="reader.plane">
|
||||
<h3><i class="fa fa-plane"></i> Plane</h3>
|
||||
|
||||
<div class="row">
|
||||
|
||||
<div class="col-md-4 col-sm-6 col-xs-12 plane">
|
||||
<div class="well well-sm" (click)="onClick(reader.plane)">
|
||||
<h4><i class="fa fa-fw fa-plane"></i> {{reader.plane.name}}</h4>
|
||||
<i class="fa fa-fw fa-file-text"></i> {{reader.plane.registration}}<br>
|
||||
<i class="fa fa-fw fa-tag"></i> {{reader.plane.model}}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
@@ -0,0 +1,72 @@
|
||||
"use strict";
|
||||
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
||||
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
||||
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
||||
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
||||
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
||||
};
|
||||
var __metadata = (this && this.__metadata) || function (k, v) {
|
||||
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
||||
};
|
||||
var core_1 = require("@angular/core");
|
||||
var data_service_1 = require("./../../services/data.service");
|
||||
var IntervalObservable_1 = require("rxjs/observable/IntervalObservable");
|
||||
var reader_class_1 = require("./../../classes/reader.class");
|
||||
var router_1 = require("@angular/router");
|
||||
var ReaderComponent = (function () {
|
||||
function ReaderComponent(route, router, data) {
|
||||
this.route = route;
|
||||
this.router = router;
|
||||
this.data = data;
|
||||
this.loading = true;
|
||||
this.error = false;
|
||||
this.name = "Loading";
|
||||
this.id = 0;
|
||||
this.reader = new reader_class_1.Reader(0, "", null);
|
||||
}
|
||||
ReaderComponent.prototype.getReader = function (id) {
|
||||
var _this = this;
|
||||
this.data.load().then(function () {
|
||||
_this.data
|
||||
.reader(id)
|
||||
.subscribe(function (b) {
|
||||
var status = b.status_code;
|
||||
if (status != 200 && b.data.length != 1) {
|
||||
_this.loading = false;
|
||||
_this.error = true;
|
||||
}
|
||||
else {
|
||||
_this.reader = reader_class_1.Reader.toReader(b.data[0]);
|
||||
_this.name = _this.reader.reader_id;
|
||||
_this.loading = false;
|
||||
}
|
||||
});
|
||||
});
|
||||
};
|
||||
ReaderComponent.prototype.ngOnInit = function () {
|
||||
var _this = this;
|
||||
this.id = this.route.snapshot.params['id'];
|
||||
this.getReader(this.id);
|
||||
this.subscription = IntervalObservable_1.IntervalObservable.create(5000).subscribe(function () {
|
||||
console.log("Reloading data...");
|
||||
_this.getReader(_this.id);
|
||||
});
|
||||
};
|
||||
ReaderComponent.prototype.ngOnDestroy = function () {
|
||||
this.subscription.unsubscribe();
|
||||
};
|
||||
ReaderComponent.prototype.onClick = function (plane) {
|
||||
this.router.navigate(['/plane', plane.id]);
|
||||
};
|
||||
return ReaderComponent;
|
||||
}());
|
||||
ReaderComponent = __decorate([
|
||||
core_1.Component({
|
||||
selector: 'app-reader',
|
||||
templateUrl: './reader.component.html',
|
||||
styleUrls: ['./reader.component.css']
|
||||
}),
|
||||
__metadata("design:paramtypes", [router_1.ActivatedRoute, router_1.Router, data_service_1.DataService])
|
||||
], ReaderComponent);
|
||||
exports.ReaderComponent = ReaderComponent;
|
||||
//# sourceMappingURL=reader.component.js.map
|
||||
@@ -0,0 +1 @@
|
||||
{"version":3,"file":"reader.component.js","sourceRoot":"","sources":["reader.component.ts"],"names":[],"mappings":";;;;;;;;;;AAAA,sCAA6D;AAC7D,8DAA4D;AAC5D,yEAAwE;AAGxE,6DAAsD;AAEtD,0CAAiE;AASjE,IAAa,eAAe;IAW3B,yBAAoB,KAAqB,EAAU,MAAc,EAAU,IAAgB;QAAvE,UAAK,GAAL,KAAK,CAAgB;QAAU,WAAM,GAAN,MAAM,CAAQ;QAAU,SAAI,GAAJ,IAAI,CAAY;QAT3F,YAAO,GAAW,IAAI,CAAC;QACvB,UAAK,GAAW,KAAK,CAAC;QACtB,SAAI,GAAU,SAAS,CAAC;QACxB,OAAE,GAAU,CAAC,CAAC;QAEP,WAAM,GAAU,IAAI,qBAAM,CAAC,CAAC,EAAE,EAAE,EAAE,IAAI,CAAC,CAAC;IAI8C,CAAC;IAG9F,mCAAS,GAAT,UAAU,EAAS;QAAnB,iBAsBC;QArBA,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC;YACrB,KAAI,CAAC,IAAI;iBACH,MAAM,CAAC,EAAE,CAAC;iBACV,SAAS,CAAC,UAAA,CAAC;gBAEX,IAAI,MAAM,GAAG,CAAC,CAAC,WAAW,CAAC;gBAE3B,EAAE,CAAA,CAAC,MAAM,IAAI,GAAG,IAAI,CAAC,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,CAAC,CACvC,CAAC;oBACA,KAAI,CAAC,OAAO,GAAG,KAAK,CAAC;oBACrB,KAAI,CAAC,KAAK,GAAG,IAAI,CAAC;gBACnB,CAAC;gBACD,IAAI,CAAA,CAAC;oBAEJ,KAAI,CAAC,MAAM,GAAG,qBAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;oBACzC,KAAI,CAAC,IAAI,GAAG,KAAI,CAAC,MAAM,CAAC,SAAS,CAAC;oBAClC,KAAI,CAAC,OAAO,GAAG,KAAK,CAAC;gBACtB,CAAC;YAEF,CAAC,CAAC,CAAC;QACT,CAAC,CAAC,CAAC;IACJ,CAAC;IAED,kCAAQ,GAAR;QAAA,iBASC;QARA,IAAI,CAAC,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAExC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAErB,IAAI,CAAC,YAAY,GAAG,uCAAkB,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC;YAC7D,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC;YAC9B,KAAI,CAAC,SAAS,CAAC,KAAI,CAAC,EAAE,CAAC,CAAC;QAC5B,CAAC,CAAC,CAAC;IACV,CAAC;IAED,qCAAW,GAAX;QACI,IAAI,CAAC,YAAY,CAAC,WAAW,EAAE,CAAC;IACpC,CAAC;IAED,iCAAO,GAAP,UAAQ,KAAY;QACf,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC;IAC7C,CAAC;IAEL,sBAAC;AAAD,CAAC,AAzDD,IAyDC;AAzDY,eAAe;IAN3B,gBAAS,CAAC;QACT,QAAQ,EAAE,YAAY;QACtB,WAAW,EAAE,yBAAyB;QACtC,SAAS,EAAE,CAAC,wBAAwB,CAAC;KACtC,CAAC;qCAa0B,uBAAc,EAAkB,eAAM,EAAe,0BAAW;GAX/E,eAAe,CAyD3B;AAzDY,0CAAe"}
|
||||
@@ -0,0 +1,74 @@
|
||||
import { Component, OnInit, OnDestroy } from '@angular/core';
|
||||
import { DataService } from './../../services/data.service';
|
||||
import { IntervalObservable } from 'rxjs/observable/IntervalObservable';
|
||||
import { Subscription } from 'rxjs/Subscription';
|
||||
|
||||
import { Reader } from "./../../classes/reader.class";
|
||||
import { Plane } from "./../../classes/plane.class";
|
||||
import { Params, ActivatedRoute, Router } from '@angular/router';
|
||||
|
||||
|
||||
@Component({
|
||||
selector: 'app-reader',
|
||||
templateUrl: './reader.component.html',
|
||||
styleUrls: ['./reader.component.css']
|
||||
})
|
||||
|
||||
export class ReaderComponent implements OnInit, OnDestroy {
|
||||
|
||||
loading:boolean = true;
|
||||
error:boolean = false;
|
||||
name:string = "Loading";
|
||||
id:number = 0;
|
||||
|
||||
public reader:Reader = new Reader(0, "", null);
|
||||
|
||||
public subscription:Subscription;
|
||||
|
||||
constructor(private route: ActivatedRoute, private router: Router, private data:DataService){}
|
||||
|
||||
|
||||
getReader(id:number): void {
|
||||
this.data.load().then(()=> {
|
||||
this.data
|
||||
.reader(id)
|
||||
.subscribe(b => {
|
||||
|
||||
var status = b.status_code;
|
||||
|
||||
if(status != 200 && b.data.length != 1)
|
||||
{
|
||||
this.loading = false;
|
||||
this.error = true;
|
||||
}
|
||||
else{
|
||||
|
||||
this.reader = Reader.toReader(b.data[0]);
|
||||
this.name = this.reader.reader_id;
|
||||
this.loading = false;
|
||||
}
|
||||
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
ngOnInit(): void {
|
||||
this.id = this.route.snapshot.params['id'];
|
||||
|
||||
this.getReader(this.id);
|
||||
|
||||
this.subscription = IntervalObservable.create(5000).subscribe(() => {
|
||||
console.log("Reloading data...");
|
||||
this.getReader(this.id);
|
||||
});
|
||||
}
|
||||
|
||||
ngOnDestroy(): void {
|
||||
this.subscription.unsubscribe();
|
||||
}
|
||||
|
||||
onClick(plane: Plane): void {
|
||||
this.router.navigate(['/plane', plane.id]);
|
||||
}
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user