From ebf4058d29317ea28a61709cc65b71e01a07603e Mon Sep 17 00:00:00 2001 From: amy Date: Tue, 7 Feb 2023 13:51:14 -0600 Subject: cmd and other stuff --- src/badge-gen.lua | 2 +- src/img/wallpaper.jpg | Bin 0 -> 1395169 bytes src/img/wallpaper.webp | Bin 45798 -> 0 bytes src/jssh.js | 50 +++++++++++++++++++++++++++---------------------- 4 files changed, 29 insertions(+), 23 deletions(-) create mode 100644 src/img/wallpaper.jpg delete mode 100644 src/img/wallpaper.webp (limited to 'src') diff --git a/src/badge-gen.lua b/src/badge-gen.lua index e2be96d..3cda339 100644 --- a/src/badge-gen.lua +++ b/src/badge-gen.lua @@ -1,5 +1,5 @@ local path = "./badges/" -local badges = io.popen("ls "..path) +local badges = io.popen("dir "..path) if badges then for i in string.gmatch(badges:read("*a"), "(.-)\n") do io.write("\""..path..i.."\""); diff --git a/src/img/wallpaper.jpg b/src/img/wallpaper.jpg new file mode 100644 index 0000000..dbbee16 Binary files /dev/null and b/src/img/wallpaper.jpg differ diff --git a/src/img/wallpaper.webp b/src/img/wallpaper.webp deleted file mode 100644 index fe0a2c5..0000000 Binary files a/src/img/wallpaper.webp and /dev/null differ diff --git a/src/jssh.js b/src/jssh.js index 374abb7..a0b4d6c 100644 --- a/src/jssh.js +++ b/src/jssh.js @@ -1,7 +1,9 @@ class jssh { - constructor(fs, working_dir, uid) { + constructor(fs, working_dir, uid, input, h) { this.fs = fs; this.working_dir = working_dir; + this.input = input; + this.history = h; this.uid = uid; } set_wd(dir) { @@ -54,27 +56,28 @@ class jssh { path.splice(i - 1, 2); } } + if (path.includes("..")) path = []; return "/" + path.join("/"); } main() { for (let d of fs) { if (d.name == ".bashrc") { for (let line of d.content.split("\n")) { - document.getElementById("line").value = line; + document.getElementById(this.input).value = line; this.ex(); } break; } } setInterval(() => { - document.getElementById("line").focus(); + document.getElementById(this.input).focus(); }, 10); } ex() { let temp_working_dir = this.working_dir; - document.getElementById("history").innerHTML += - "λ " + document.getElementById("line").value + "
"; - let com = document.getElementById("line").value; + document.getElementById(this.history).innerHTML += + "λ " + document.getElementById(this.input).value + "
"; + let com = document.getElementById(this.input).value; let stripped = com.split(" "); switch (stripped[0]) { case "jssh": @@ -114,16 +117,17 @@ class jssh { } add += "

"; - document.getElementById("history").innerHTML += add; + document.getElementById(this.history).innerHTML += add; break; case "clear": - document.getElementById("history").innerHTML = ""; + document.getElementById(this.history).innerHTML = ""; break; case "echo": - document.getElementById("history").innerHTML += com.substr(4) + "
"; + document.getElementById(this.history).innerHTML += + com.substr(4) + "
"; break; case "help": - document.getElementById("history").innerHTML += + document.getElementById(this.history).innerHTML += "jssh -- version 1.0.0 (dev)

commands: neofetch, help,
cat [path],pwd,
ls [path] [-a], cd [path],
clear, echo [str],jssh
"; break; case "cat": @@ -146,18 +150,19 @@ class jssh { ] && !a.dir ) { - document.getElementById("history").innerHTML += a.content + "
"; - document.getElementById("line").value = ""; + document.getElementById(this.history).innerHTML += + a.content + "
"; + document.getElementById(this.input).value = ""; return; } } - document.getElementById("history").innerHTML += + document.getElementById(this.history).innerHTML += "jssh: " + this.clean_path(temp_working_dir) + " file or dir not found
"; break; case "pwd": - document.getElementById("history").innerHTML += + document.getElementById(this.history).innerHTML += this.clean_path(temp_working_dir) + "
"; break; case "cd": @@ -171,7 +176,7 @@ class jssh { } let ww = this.set_wd(temp_working_dir); if (ww == 1) { - document.getElementById("history").innerHTML += + document.getElementById(this.history).innerHTML += "jssh: `" + temp_working_dir + "` directory not found
"; return; } @@ -189,14 +194,14 @@ class jssh { } let wd = this.set_wd(this.clean_path(temp_working_dir)); if (wd == 1) { - document.getElementById("history").innerHTML += + document.getElementById(this.history).innerHTML += "jssh: `" + temp_working_dir + "` directory not found
"; return; } if (stripped.includes("-a")) { - document.getElementById("history").innerHTML += + document.getElementById(this.history).innerHTML += "[.]
"; - document.getElementById("history").innerHTML += + document.getElementById(this.history).innerHTML += "[..]
"; } @@ -206,23 +211,24 @@ class jssh { i.name[0] != "." ) { if (i.dir) - document.getElementById("history").innerHTML += + document.getElementById(this.history).innerHTML += "[" + i.name + "]
"; else - document.getElementById("history").innerHTML += i.name + "
"; + document.getElementById(this.history).innerHTML += + i.name + "
"; } } break; default: - document.getElementById("history").innerHTML += + document.getElementById(this.history).innerHTML += "jssh: " + stripped[0] + ": command not found or not implemented
"; break; } - document.getElementById("line").value = ""; + document.getElementById(this.input).value = ""; } } -- cgit v1.2.3