2022-06-12 09:38:38 +02:00
|
|
|
var fs = require('fs');
|
|
|
|
const SerAny = require('serialize-anything');
|
|
|
|
import { Socket } from 'socket.io';
|
2022-06-12 13:47:29 +02:00
|
|
|
function sendbuffer(socket:Socket, bufferx: string, forcefulload:boolean) {
|
|
|
|
var bufx = bufferx[socket.id];
|
|
|
|
//add placeholder character(reserved unicode) for blinking cursor in client;
|
|
|
|
bufx += "\u2588";
|
|
|
|
if(forcefulload) {
|
|
|
|
socket.emit('buffer', bufx);
|
|
|
|
}
|
|
|
|
else {
|
|
|
|
socket.emit('bufferx', bufx);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
function loadsess(args:Array<string>, sessions:any, filesystem:any, curdir:any, buffer:string, socket:Socket ):string {
|
2022-06-12 09:38:38 +02:00
|
|
|
var buf = "";
|
|
|
|
if (args.length == 1) {
|
|
|
|
sessions = SerAny.deserialize(fs.readFileSync("./sessions.json"));
|
|
|
|
if(sessions[args[0]] != undefined) {
|
|
|
|
filesystem = sessions[args[0]]["filesystem"];
|
|
|
|
curdir = sessions[args[0]]["curdir"];
|
|
|
|
buffer = sessions[args[0]]["buffer"];
|
|
|
|
buf += "Session loaded.\n";
|
2022-06-12 13:47:29 +02:00
|
|
|
sendbuffer(socket, buffer, true);
|
2022-06-12 09:38:38 +02:00
|
|
|
}
|
|
|
|
}
|
|
|
|
else {
|
|
|
|
buf += "Wrong number of arguments.";
|
|
|
|
}
|
|
|
|
return buf;
|
|
|
|
}
|
|
|
|
export { loadsess };
|