Commit 8886309e authored by i317280's avatar i317280

Merge remote-tracking branch 'github/bootstrap4'

parents 7167213c 529d41f9
......@@ -45,6 +45,12 @@ server.run = function (options) {
// let term.js handle req/res
// app.use(terminal.middleware());
apis.route('/browser')
.post(function (req, res) {
console.log(req);
res.string('');
// res.json({verified: true, csrf: "liuzheng"})
});
apis.route('/checklogin')
.post(function (req, res) {
res.json({logined: true, id: 1, username: "liuzheng", name: "liuzheng"})
......@@ -53,7 +59,6 @@ server.run = function (options) {
res.json({logined: true})
});
app.use("/api", apis);
// let server listen on the port
options = options || {};
......
......@@ -8512,6 +8512,14 @@
"integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=",
"dev": true
},
"ssh-keygen": {
"version": "0.4.1",
"resolved": "https://registry.npmjs.org/ssh-keygen/-/ssh-keygen-0.4.1.tgz",
"integrity": "sha1-yCsloYtEV+AUUyhFaMSszOAEqas=",
"requires": {
"underscore": "1.4.4"
}
},
"sshpk": {
"version": "1.13.1",
"resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.13.1.tgz",
......@@ -9205,6 +9213,11 @@
"integrity": "sha1-rOEWq1V80Zc4ak6I9GhTeMiy5Po=",
"dev": true
},
"underscore": {
"version": "1.4.4",
"resolved": "https://registry.npmjs.org/underscore/-/underscore-1.4.4.tgz",
"integrity": "sha1-YaajIBBiKvoHljvzJSA88SI51gQ="
},
"uniq": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/uniq/-/uniq-1.0.1.tgz",
......
......@@ -33,6 +33,7 @@
"socket.io": "^2.0.3",
"tether": "^1.4.0",
"xterm": "^2.9.2",
"ssh-keygen": "^0.4.1",
"zone.js": "^0.8.14"
},
"devDependencies": {
......
......@@ -3,12 +3,8 @@
*/
import {Component} from '@angular/core';
import {NgClass} from '@angular/common';
// import {ROUTER_DIRECTIVES} from '@angular/router-deprecated';
import {Logger} from 'angular2-logger/core';
// import 'rxjs/Rx';
// declare var jQuery: any;
// declare var Clipboard: any;
// declare var layer: any;
......
<nav class="navbar navbar-toggleable-md fixed-top navbar-inverse bg-inverse" *ngIf="User.logined">
<button class="navbar-toggler navbar-toggler-right" type="button" data-toggle="collapse"
data-target="#navbarsExampleDefault" aria-controls="navbarsExampleDefault" aria-expanded="false"
aria-label="Toggle navigation">
<span class="navbar-toggler-icon"></span>
</button>
<a class="navbar-brand" routerLink="">Navbar</a>
<button class="navbar-toggler navbar-toggler-right" type="button" data-toggle="collapse" data-target="#navbarsExampleDefault" aria-controls="navbarsExampleDefault" aria-expanded="false" aria-label="Toggle navigation">
<span class="navbar-toggler-icon"></span>
</button>
<a class="navbar-brand" href="#">Navbar</a>
<div class="collapse navbar-collapse" id="navbarsExampleDefault">
<ul class="navbar-nav mr-auto">
<li class="nav-item active">
<a class="nav-link" routerLink="">Home <span class="sr-only">(current)</span></a>
</li>
<li class="nav-item">
<a class="nav-link" routerLink="term">Term</a>
</li>
<li class="nav-item">
<a class="nav-link disabled" href="#">Disabled</a>
</li>
<li class="nav-item dropdown">
<a class="nav-link dropdown-toggle" href="http://example.com" id="dropdown01" data-toggle="dropdown"
aria-haspopup="true" aria-expanded="false">Dropdown</a>
<div class="dropdown-menu" aria-labelledby="dropdown01">
<a class="dropdown-item" href="#">Action</a>
<a class="dropdown-item" href="#">Another action</a>
<a class="dropdown-item" href="#">Something else here</a>
</div>
</li>
</ul>
<form class="form-inline my-2 my-lg-0">
<input class="form-control mr-sm-2" type="text" placeholder="Search">
<button class="btn btn-outline-success my-2 my-sm-0" type="submit">Search</button>
</form>
</div>
</nav>
<div class="collapse navbar-collapse" id="navbarsExampleDefault">
<ul class="navbar-nav mr-auto">
<li class="nav-item active">
<a class="nav-link" href="#">Home <span class="sr-only">(current)</span></a>
</li>
<li class="nav-item">
<a class="nav-link" href="#">Link</a>
</li>
<li class="nav-item">
<a class="nav-link disabled" href="#">Disabled</a>
</li>
<li class="nav-item dropdown">
<a class="nav-link dropdown-toggle" href="http://example.com" id="dropdown01" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">Dropdown</a>
<div class="dropdown-menu" aria-labelledby="dropdown01">
<a class="dropdown-item" href="#">Action</a>
<a class="dropdown-item" href="#">Another action</a>
<a class="dropdown-item" href="#">Something else here</a>
</div>
</li>
</ul>
<form class="form-inline my-2 my-lg-0">
<input class="form-control mr-sm-2" type="text" placeholder="Search">
<button class="btn btn-outline-success my-2 my-sm-0" type="submit">Search</button>
</form>
</div>
</nav>
/**
* Created by liuzheng on 2017/8/31.
*/
import {Component, OnInit} from '@angular/core';
import {AppService, DataStore, User} from '../app.service';
import {Component} from '@angular/core';
import {AppService, User} from '../app.service';
@Component({
templateUrl: './welcome.html',
......
......@@ -2,10 +2,11 @@
* Created by liuzheng on 2017/8/30.
*/
import {Injectable, NgModule} from '@angular/core';
import {Http} from '@angular/http';
import {Http, Request, RequestOptionsArgs, Headers} from '@angular/http';
import {Cookie} from 'ng2-cookies/ng2-cookies';
import {Logger} from 'angular2-logger/core';
import 'rxjs/add/operator/map';
import 'rxjs/add/operator/catch';
declare let jQuery: any;
// declare var Clipboard: any;
......@@ -68,14 +69,84 @@ export let DataStore: {
leftbarhide: false,
windowsize: [],
};
export let CSRF: string = '';
export let Browser: {
userAgent: string;
appCodeName: string;
appName: string;
appVersion: string;
language: string;
platform: string;
product: string;
productSub: string;
vendor: string;
} = {
userAgent: navigator.userAgent,
appCodeName: navigator.appCodeName,
appName: navigator.appName,
appVersion: navigator.appVersion,
language: navigator.language,
platform: navigator.platform,
product: navigator.product,
productSub: navigator.productSub,
vendor: navigator.vendor,
};
export class HttpService {
headers = new Headers();
constructor(private _http: Http) {
}
request(url: string | Request, options?: RequestOptionsArgs) {
options.headers = this.headers;
return this._http.request(url, options)
}
get(url: string, options?: RequestOptionsArgs) {
options.headers = this.headers;
return this._http.get(url, options)
}
post(url: string, body: any, options?: RequestOptionsArgs) {
options.headers = this.headers;
return this._http.post(url, body, options)
}
put(url: string, body: any, options?: RequestOptionsArgs) {
options.headers = this.headers;
return this._http.put(url, body, options)
}
delete(url: string, options?: RequestOptionsArgs) {
options.headers = this.headers;
return this._http.delete(url, options)
}
patch(url: string, body: any, options?: RequestOptionsArgs) {
options.headers = this.headers;
return this._http.patch(url, body, options)
}
head(url: string, options?: RequestOptionsArgs) {
options.headers = this.headers;
return this._http.head(url, options)
}
options(url: string, options?: RequestOptionsArgs) {
options.headers = this.headers;
return this._http.options(url, options)
}
}
@Injectable()
export class AppService {
// user:User = user ;
// searchrequest: any;
constructor(private http: Http,
constructor(private _http: HttpService,
private _router: Router,
private _logger: Logger) {
if (Cookie.get('loglevel')) {
......@@ -110,6 +181,7 @@ export class AppService {
// DataStore.socket.emit('api', 'all');
});
this.checklogin();
this.browser()
}
......@@ -126,7 +198,7 @@ export class AppService {
}
// jQuery('angular2').show();
} else {
this.http.get('/api/checklogin')
this._http.get('/api/checklogin')
.map(res => res.json())
.subscribe(
data => {
......@@ -166,7 +238,7 @@ export class AppService {
DataStore.error['login'] = '';
this._logger.log(User);
if (User.username.length > 0 && User.password.length > 6 && User.password.length < 100) {
this.http.post('/api/checklogin', JSON.stringify(User)).map(res => res.json())
this._http.post('/api/checklogin', JSON.stringify(User)).map(res => res.json())
.subscribe(
data => {
User.logined = data.logined;
......@@ -202,6 +274,10 @@ export class AppService {
}
}
browser() {
this._http.post('/api/browser', JSON.stringify(Browser)).map(res => res.json())
}
//
//
// HideLeft() {
......@@ -239,7 +315,6 @@ export class AppService {
//
// }
//
// setMyinfo(user:User) {
// // Update data store
// this._dataStore.user = user;
......@@ -320,65 +395,4 @@ export class AppService {
// });
//
// }
//
// // getMachineList() {
// // this._logger.log('service.ts:AppService,getMachineList');
// // return this.http.get('/api/leftbar')
// // .map(res => res.json())
// // .subscribe(response => {
// // DataStore.leftbar = response;
// // this._logger.debug("DataStore.leftbar:", DataStore.leftbar)
// //
// // // this._logger.warn(this._dataStore.user);
// // // this._logger.warn(DataStore.user)
// // });
// // }
// //
// // getLeftbarRightclick() {
// // this._logger.log('service.ts:AppService,getLeftbarRightclick');
// // return this.http.get('/api/leftbarrightclick')
// // .map(res => res.json())
// // .subscribe(response => {
// // DataStore.leftbarrightclick = response;
// // this._logger.debug("DataStore.leftbarrightclick:", DataStore.leftbarrightclick)
// // // this._logger.warn(this._dataStore.user);
// // // this._logger.warn(DataStore.user)
// // });
// //
// // }
//
// Search(q) {
// if (this.searchrequest) {
// this.searchrequest.unsubscribe();
// }
// this.searchrequest = this.http.get('/api/search?q=' + q)
// .map(res => res.json())
// .subscribe(
// data => {
// this._logger.log(data);
// },
// err => {
// this._logger.error(err);
// },
// () => {
// }
// );
// this._logger.log(q);
// }
}
// }
//
// @Pipe({
// name: 'join'
// })
//
// export class Join {
// transform(value, args?) {
// if (typeof value === 'undefined')
// return 'undefined';
// return value.join(args)
// }
// }
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment