feat: term token page

parent 1fc59d44
......@@ -84,6 +84,9 @@ class SSHws(Namespace):
self.leave_room(room=self.clients[request.sid]["room"])
join_room(room)
def on_token(self, token):
print(token)
def on_disconnect(self):
print("disconnect")
for connection in self.clients[request.sid]["chan"]:
......
......@@ -15,7 +15,7 @@ export class ElementTermComponent implements OnInit, AfterViewInit {
@Input() host: any;
@Input() userid: any;
@Input() index: number;
// @Input() room: string;
@Input() token: string;
@ViewChild('term') el: ElementRef;
secret: string;
term: any;
......@@ -35,7 +35,7 @@ export class ElementTermComponent implements OnInit, AfterViewInit {
}
ngAfterViewInit() {
if (this.host) {
if (this.host || this.token) {
if (Cookie.get('cols')) {
term.col = parseInt(Cookie.get('cols'), 10);
}
......@@ -67,13 +67,13 @@ export class ElementTermComponent implements OnInit, AfterViewInit {
};
jQuery(window).resize();
if (this.host) {
NavList.List[this.index].Term = this.term;
// this.term.write('\x1b[31mWelcome to Jumpserver!\x1b[m\r\n');
if (this.host) {
TermWS.emit('host', {'uuid': this.host.id, 'userid': this.userid, 'secret': this.secret});
}
if (this.token) {
TermWS.emit('token', {'token': this.token, 'secrte': this.secret});
}
this.term.on('data', function (data) {
TermWS.emit('data', {'data': data, 'room': NavList.List[that.index].room});
});
......@@ -99,7 +99,6 @@ export class ElementTermComponent implements OnInit, AfterViewInit {
}
});
}
}
TerminalDisconnect() {
NavList.List[this.index].connected = false;
......
<app-term-page></app-term-page>
<app-element-term
[token]="token"
[index]="0">
</app-element-term>
import {Component, OnInit} from '@angular/core';
import {DataStore} from '../globals';
import {ActivatedRoute, Params} from '@angular/router';
import * as jQuery from 'jquery/dist/jquery.min.js';
@Component({
selector: 'app-term-page',
......@@ -7,12 +9,16 @@ import {DataStore} from '../globals';
styleUrls: ['./term-page.component.scss']
})
export class TermPageComponent implements OnInit {
token: string;
constructor() {
constructor(private activatedRoute: ActivatedRoute) {
DataStore.NavShow = false;
}
ngOnInit() {
this.activatedRoute.params.subscribe((params: Params) => {
this.token = params['token'];
});
jQuery('body').css('background-color', 'black');
}
}
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