gommand/static/help-command.js

36 lines
1.8 KiB
JavaScript
Raw Permalink Normal View History

2025-02-13 16:45:00 +01:00
const helpMsg = `
This is a non interactive Webshell including some additional features to ease
communications between server and client.
Available Commands:
upload Upload files to the server through the file selector of the browser.
download <file> Download files from the server to your local download directory.
theme <theme> Change the colorscheme of the shell. Type theme to get an overview of all colorschemes.
start-interactive Opens a bash shell in an interactive terminal. Type ctrl+d to exit the interactive shell.
`
// const helpMsg = 'This is a non interactive Webshell including some additional features to ease communications between server and client.\n Available Commands:\n upload\t\t\t\tUpload files to the server through the file selector of the browser.\n download <file>\t\t\tDownload files from the server to your local download directory.\n theme <theme>\t\t\tChange the colorscheme of the shell. Type theme to get an overview of all colorschemes.\n start-interactive\t\t\tOpens a bash shell in an interactive terminal. Type ctrl+d to exi the interactive shell.'
document.addEventListener("DOMContentLoaded", function() {
const input = document.getElementById("command-input");
const terminal = document.getElementById("terminal");
input.addEventListener("keydown", function(event) {
if (event.key === "Enter") {
const command = input.value.trim();
if (command.startsWith("help")) {
event.preventDefault();
addLogEntry(helpMsg, 'info');
input.value = '';
}
}
});
function addLogEntry(message, type) {
const logEntry = document.createElement("div");
logEntry.classList.add(type === 'error' ? 'error' : 'info');
logEntry.textContent = message;
terminal.appendChild(logEntry);
terminal.scrollTop = terminal.scrollHeight;
}
});