js/shell : improve config of pages

Signed-off-by: Ari Archer <ari.web.xyz@gmail.com>
This commit is contained in:
Ari Archer 2023-01-29 06:44:05 +02:00
parent deebc5a226
commit 41622031af
2 changed files with 31 additions and 32 deletions

View file

@ -12,115 +12,115 @@ const boot_message = {
}, },
}; };
const do_sleep = true; const do_sleep = true;
const locations = { const locations = [
0: { {
url: "/git", url: "/git",
desc: "The source code of this website", desc: "The source code of this website",
aliases: ["src", "source", "git", "github"], aliases: ["src", "source", "git", "github"],
}, },
1: { {
url: "/", url: "/",
desc: "The home page", desc: "The home page",
aliases: ["home", "root", "index"], aliases: ["home", "root", "index"],
}, },
2: { {
url: "/page/reset", url: "/page/reset",
desc: "Reset your account", desc: "Reset your account",
aliases: ["reset", "erase", "del", "delete"], aliases: ["reset", "erase", "del", "delete"],
}, },
3: { {
url: "/page/minimal.txt", url: "/page/minimal.txt",
desc: "The minimal page", desc: "The minimal page",
aliases: ["mini", "minimal", "txt", "min"], aliases: ["mini", "minimal", "txt", "min"],
}, },
4: { {
url: "/page/blog", url: "/page/blog",
desc: "Blog page", desc: "Blog page",
aliases: ["blog", "news", "blogs", "articles"], aliases: ["blog", "news", "blogs", "articles"],
}, },
5: { {
url: "/dotfiles", url: "/dotfiles",
desc: "My dotfiles-cleaned github repository", desc: "My dotfiles-cleaned github repository",
aliases: ["rice", "dotfiles", "dots", "dwm"], aliases: ["rice", "dotfiles", "dots", "dwm"],
}, },
6: { {
url: "/page/novpn", url: "/page/novpn",
desc: "A page about how you shouldn't use VPNs", desc: "A page about how you shouldn't use VPNs",
aliases: ["vpn", "novpn"], aliases: ["vpn", "novpn"],
}, },
7: { {
url: "/mp", url: "/mp",
desc: "My music playlist", desc: "My music playlist",
aliases: ["music", "playlist"], aliases: ["music", "playlist"],
}, },
8: { {
url: "/tdotfiles", url: "/tdotfiles",
desc: "My dotfiles-termux github repository", desc: "My dotfiles-termux github repository",
aliases: ["trice", "tdotfiles", "tdots", "termux"], aliases: ["trice", "tdotfiles", "tdots", "termux"],
}, },
9: { {
url: "/page/ttytheme", url: "/page/ttytheme",
desc: "TTY theme generator", desc: "TTY theme generator",
aliases: ["tty", "ttytheme", "ttheme", "tty-theme"], aliases: ["tty", "ttytheme", "ttheme", "tty-theme"],
}, },
10: { {
url: "/user", url: "/user",
desc: "Ari-web comments", desc: "Ari-web comments",
aliases: ["comment", "user", "usr", "chat"], aliases: ["comment", "user", "usr", "chat"],
}, },
11: { {
url: "/api", url: "/api",
desc: "Ari-web api(s)", desc: "Ari-web api(s)",
aliases: ["api", "API"], aliases: ["api", "API"],
}, },
12: { {
url: "/page/amiunique", url: "/page/amiunique",
desc: "'Am I unique?' test", desc: "'Am I unique?' test",
aliases: ["uniqueness", "unqtest", "unique", "unqquiz"], aliases: ["uniqueness", "unqtest", "unique", "unqquiz"],
}, },
13: { {
url: "/page/90s", url: "/page/90s",
desc: "90s page", desc: "90s page",
aliases: ["90s", "90", "vintage", "old"], aliases: ["90s", "90", "vintage", "old"],
}, },
14: { {
url: "/page/export", url: "/page/export",
desc: "Export and/or import your ari-web data", desc: "Export and/or import your ari-web data",
aliases: ["export", "import", "data"], aliases: ["export", "import", "data"],
}, },
15: { {
url: "/m", url: "/m",
desc: "Favourite song", desc: "Favourite song",
aliases: ["song", "favsong"], aliases: ["song", "favsong"],
}, },
16: { {
url: "/page/info", url: "/page/info",
desc: "Important ari-web info", desc: "Important ari-web info",
aliases: ["info", "important"], aliases: ["info", "important"],
}, },
17: { {
url: "/etc", url: "/etc",
desc: "Random ari-web pages, projects, etc.", desc: "Random ari-web pages, projects, etc.",
aliases: ["etc", "projects", "urandom"], aliases: ["etc", "projects", "urandom"],
}, },
}; ];
const escape_HTML = (str) => const escape_HTML = (str) =>
str.replace( str.replace(
/[&<>'"]/g, /[&<>'"]/g,

View file

@ -53,9 +53,9 @@ function show(dest) {
if (!dst) return help(["show"]); if (!dst) return help(["show"]);
else else
for (const l in locations) { for (const l of locations) {
if (locations[l]["aliases"].includes(dst)) { if (l["aliases"].includes(dst)) {
iframe.setAttribute("src", locations[l]["url"]); iframe.setAttribute("src", l["url"]);
break; break;
} }
} }
@ -71,10 +71,10 @@ function cd(dest) {
window.location = "/"; window.location = "/";
return "Returning to the home page"; return "Returning to the home page";
} else { } else {
for (const l in locations) { for (const l of locations) {
if (locations[l]["aliases"].includes(dst)) { if (l["aliases"].includes(dst)) {
window.location = locations[l]["url"]; window.location = l["url"];
return `Going to ${locations[l]["url"]}`; return `Going to ${l["url"]}`;
} }
} }
} }
@ -85,11 +85,10 @@ function cd(dest) {
function list() { function list() {
let locs = ""; let locs = "";
for (const l in locations) { for (const l of locations) {
let loc = locations[l]; locs += `<b>URL</b>: ${l["url"]}<br/>`;
locs += `<b>URL</b>: ${loc["url"]}<br/>`; locs += `<b>DESCRIPTION</b>: ${l["desc"]}<br/>`;
locs += `<b>DESCRIPTION</b>: ${loc["desc"]}<br/>`; locs += `<b>ALIASES</b>: ${l["aliases"].join(", ")}<br/>`;
locs += `<b>ALIASES</b>: ${loc["aliases"].join(", ")}<br/>`;
locs += `<br/>`; locs += `<br/>`;
} }