General refactor
This commit is contained in:
@@ -14,6 +14,7 @@ function errorPageRenderer(res, emoji, message) {
|
|||||||
res.render("error", {
|
res.render("error", {
|
||||||
page_title: app_conf.name,
|
page_title: app_conf.name,
|
||||||
program: app_conf.program,
|
program: app_conf.program,
|
||||||
|
app_url: app_conf.app_url,
|
||||||
css_path: path.join(app_conf.paths.css.web, "stylesheet.css"),
|
css_path: path.join(app_conf.paths.css.web, "stylesheet.css"),
|
||||||
js_path: path.join(app_conf.paths.js.web, "error.js"),
|
js_path: path.join(app_conf.paths.js.web, "error.js"),
|
||||||
error_emoji: emoji,
|
error_emoji: emoji,
|
||||||
@@ -182,6 +183,7 @@ router.get("/add", async (req, res) => {
|
|||||||
res.render("add", {
|
res.render("add", {
|
||||||
page_title: app_conf.name,
|
page_title: app_conf.name,
|
||||||
program: app_conf.program,
|
program: app_conf.program,
|
||||||
|
app_url: app_conf.app_url,
|
||||||
css_path: path.join(app_conf.paths.css.web, "stylesheet.css"),
|
css_path: path.join(app_conf.paths.css.web, "stylesheet.css"),
|
||||||
js_path: path.join(app_conf.paths.js.web, "add.js"),
|
js_path: path.join(app_conf.paths.js.web, "add.js"),
|
||||||
column_options: JSON.stringify(column_options),
|
column_options: JSON.stringify(column_options),
|
||||||
@@ -249,6 +251,7 @@ router.get("/edit", async (req, res) => {
|
|||||||
res.render("edit", {
|
res.render("edit", {
|
||||||
page_title: app_conf.name,
|
page_title: app_conf.name,
|
||||||
program: app_conf.program,
|
program: app_conf.program,
|
||||||
|
app_url: app_conf.app_url,
|
||||||
css_path: path.join(app_conf.paths.css.web, "stylesheet.css"),
|
css_path: path.join(app_conf.paths.css.web, "stylesheet.css"),
|
||||||
js_path: path.join(app_conf.paths.js.web, "edit.js"),
|
js_path: path.join(app_conf.paths.js.web, "edit.js"),
|
||||||
column_options: JSON.stringify(column_options),
|
column_options: JSON.stringify(column_options),
|
||||||
@@ -297,6 +300,7 @@ router.get("/", async (req, res) => {
|
|||||||
res.render("index", {
|
res.render("index", {
|
||||||
page_title: app_conf.name,
|
page_title: app_conf.name,
|
||||||
program: app_conf.program,
|
program: app_conf.program,
|
||||||
|
app_url: app_conf.app_url,
|
||||||
css_path: path.join(app_conf.paths.css.web, "stylesheet.css"),
|
css_path: path.join(app_conf.paths.css.web, "stylesheet.css"),
|
||||||
js_path: path.join(app_conf.paths.js.web, "index.js"),
|
js_path: path.join(app_conf.paths.js.web, "index.js"),
|
||||||
table_header: table_header,
|
table_header: table_header,
|
||||||
@@ -315,6 +319,7 @@ router.get("/about", (req, res) => {
|
|||||||
res.render("about", {
|
res.render("about", {
|
||||||
page_title: app_conf.name,
|
page_title: app_conf.name,
|
||||||
program: app_conf.program,
|
program: app_conf.program,
|
||||||
|
app_url: app_conf.app_url,
|
||||||
css_path: path.join(app_conf.paths.css.web, "stylesheet.css"),
|
css_path: path.join(app_conf.paths.css.web, "stylesheet.css"),
|
||||||
version: app_conf.version
|
version: app_conf.version
|
||||||
});
|
});
|
||||||
|
|||||||
@@ -11,13 +11,7 @@ router.use(app_conf.paths.js.web, express.static(path.join(path.dirname(require.
|
|||||||
* Main endpoint - might implement authentication step here...
|
* Main endpoint - might implement authentication step here...
|
||||||
*/
|
*/
|
||||||
router.get("/", (req, res) => {
|
router.get("/", (req, res) => {
|
||||||
res.render("auth", {
|
res.redirect(`${app_conf.protocol}://${app_conf.host}:${app_conf.port}${app_conf.app_url}`);
|
||||||
page_title: app_conf.name,
|
|
||||||
css_path: path.join(app_conf.paths.css.web, "stylesheet.css"),
|
|
||||||
protocol: app_conf.protocol,
|
|
||||||
host: app_conf.host,
|
|
||||||
port: app_conf.port
|
|
||||||
});
|
|
||||||
});
|
});
|
||||||
|
|
||||||
module.exports = router;
|
module.exports = router;
|
||||||
+1
-1
@@ -30,7 +30,7 @@
|
|||||||
style="font-size: 150%;">GitHub</a>
|
style="font-size: 150%;">GitHub</a>
|
||||||
</center>
|
</center>
|
||||||
<br>
|
<br>
|
||||||
<a href="/app"><span>🢀 </span>Return</a>
|
<a href="<%= app_url %>"><span>🢀 </span>Return</a>
|
||||||
</div>
|
</div>
|
||||||
</body>
|
</body>
|
||||||
|
|
||||||
|
|||||||
+3
-2
@@ -16,6 +16,7 @@
|
|||||||
<script src="<%= js_path %>" defer></script>
|
<script src="<%= js_path %>" defer></script>
|
||||||
<script defer>
|
<script defer>
|
||||||
var column_options = '<%- column_options %>';
|
var column_options = '<%- column_options %>';
|
||||||
|
var app_url = '<%= app_url %>';
|
||||||
</script>
|
</script>
|
||||||
</head>
|
</head>
|
||||||
|
|
||||||
@@ -35,12 +36,12 @@
|
|||||||
<%- table_data %>
|
<%- table_data %>
|
||||||
</table>
|
</table>
|
||||||
<div style="display: flex; flex-direction: row; justify-content: space-between;">
|
<div style="display: flex; flex-direction: row; justify-content: space-between;">
|
||||||
<a href="/app"><span>🢀 </span>Return</a>
|
<a href="<%= app_url %>"><span>🢀 </span>Return</a>
|
||||||
<label id="commit" style="cursor: pointer;"><span>✅ </span>Commit</label>
|
<label id="commit" style="cursor: pointer;"><span>✅ </span>Commit</label>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="about_div">
|
<div class="about_div">
|
||||||
<center><a href="/app/about">About</label></center>
|
<center><a href="<%= app_url %>/about">About</label></center>
|
||||||
</div>
|
</div>
|
||||||
</body>
|
</body>
|
||||||
|
|
||||||
|
|||||||
@@ -1,33 +0,0 @@
|
|||||||
<!DOCTYPE html>
|
|
||||||
<html>
|
|
||||||
|
|
||||||
<head>
|
|
||||||
<title>
|
|
||||||
<%= page_title %>
|
|
||||||
</title>
|
|
||||||
|
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0" />
|
|
||||||
<link rel="preconnect" href="https://fonts.googleapis.com">
|
|
||||||
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
|
|
||||||
<link
|
|
||||||
href="https://fonts.googleapis.com/css2?family=Ubuntu:ital,wght@0,300;0,400;0,500;0,700;1,300;1,400;1,500;1,700&display=swap"
|
|
||||||
rel="stylesheet">
|
|
||||||
<link rel="stylesheet" href="<%= css_path %>">
|
|
||||||
</head>
|
|
||||||
|
|
||||||
<body>
|
|
||||||
<div class="control_div">
|
|
||||||
<label
|
|
||||||
style='font-family: "Ubuntu", sans-serif; font-weight: 500; font-style: normal; font-size: 200%;'>Centaurus
|
|
||||||
Racing Team</label>
|
|
||||||
</div>
|
|
||||||
<div class="main_div"
|
|
||||||
style="display: flex; flex-direction: column; justify-content: space-between; font-size: 150%; margin-top: 15px; margin-bottom: 15px;">
|
|
||||||
<div style="display: flex; flex-direction: row; justify-content: space-evenly;">
|
|
||||||
<label>CRTelemetry SQLite3</label>
|
|
||||||
<a href="<%= protocol %>://<%= host %>:<%= port %>/app">Enter</a>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</body>
|
|
||||||
|
|
||||||
</html>
|
|
||||||
+3
-2
@@ -16,6 +16,7 @@
|
|||||||
<script src="<%= js_path %>" defer></script>
|
<script src="<%= js_path %>" defer></script>
|
||||||
<script defer>
|
<script defer>
|
||||||
var column_options = '<%- column_options %>';
|
var column_options = '<%- column_options %>';
|
||||||
|
var app_url = '<%= app_url %>';
|
||||||
</script>
|
</script>
|
||||||
</head>
|
</head>
|
||||||
|
|
||||||
@@ -38,12 +39,12 @@
|
|||||||
<%- table_data %>
|
<%- table_data %>
|
||||||
</table>
|
</table>
|
||||||
<div style="display: flex; flex-direction: row; justify-content: space-between;">
|
<div style="display: flex; flex-direction: row; justify-content: space-between;">
|
||||||
<a href="/app"><span>🢀 </span>Return</a>
|
<a href="<%= app_url %>"><span>🢀 </span>Return</a>
|
||||||
<label id="commit" style="cursor: pointer;"><span>✅ </span>Commit</label>
|
<label id="commit" style="cursor: pointer;"><span>✅ </span>Commit</label>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="about_div">
|
<div class="about_div">
|
||||||
<center><a href="/app/about">About</label></center>
|
<center><a href="<%= app_url %>/about">About</label></center>
|
||||||
</div>
|
</div>
|
||||||
</body>
|
</body>
|
||||||
|
|
||||||
|
|||||||
+4
-1
@@ -14,6 +14,9 @@
|
|||||||
rel="stylesheet">
|
rel="stylesheet">
|
||||||
<link rel="stylesheet" href="<%= css_path %>">
|
<link rel="stylesheet" href="<%= css_path %>">
|
||||||
<script src="<%= js_path %>" defer></script>
|
<script src="<%= js_path %>" defer></script>
|
||||||
|
<script defer>
|
||||||
|
var app_url = '<%= app_url %>';
|
||||||
|
</script>
|
||||||
</head>
|
</head>
|
||||||
|
|
||||||
<body>
|
<body>
|
||||||
@@ -39,7 +42,7 @@
|
|||||||
<%= error_message %>
|
<%= error_message %>
|
||||||
</label>
|
</label>
|
||||||
<br>
|
<br>
|
||||||
<a href="/app"><span>🢀 </span>Return</a>
|
<a href="<%= app_url %>"><span>🢀 </span>Return</a>
|
||||||
</div>
|
</div>
|
||||||
</body>
|
</body>
|
||||||
|
|
||||||
|
|||||||
+4
-1
@@ -14,6 +14,9 @@
|
|||||||
rel="stylesheet">
|
rel="stylesheet">
|
||||||
<link rel="stylesheet" href="<%= css_path %>">
|
<link rel="stylesheet" href="<%= css_path %>">
|
||||||
<script src="<%= js_path %>" defer></script>
|
<script src="<%= js_path %>" defer></script>
|
||||||
|
<script defer>
|
||||||
|
var app_url = '<%= app_url %>';
|
||||||
|
</script>
|
||||||
</head>
|
</head>
|
||||||
|
|
||||||
<body>
|
<body>
|
||||||
@@ -42,7 +45,7 @@
|
|||||||
</table>
|
</table>
|
||||||
</div>
|
</div>
|
||||||
<div class="about_div">
|
<div class="about_div">
|
||||||
<center><a href="/app/about">About</label></center>
|
<center><a href="<%= app_url %>/about">About</label></center>
|
||||||
</div>
|
</div>
|
||||||
</body>
|
</body>
|
||||||
|
|
||||||
|
|||||||
@@ -4,7 +4,8 @@ module.exports = {
|
|||||||
program: "SQLite3",
|
program: "SQLite3",
|
||||||
host: "localhost",
|
host: "localhost",
|
||||||
protocol: "http",
|
protocol: "http",
|
||||||
port: 80,
|
port: 8080,
|
||||||
|
app_url: "/app",
|
||||||
username: "admin",
|
username: "admin",
|
||||||
password: "password",
|
password: "password",
|
||||||
logger: {
|
logger: {
|
||||||
|
|||||||
@@ -24,9 +24,8 @@ app.use(fileUpload({
|
|||||||
tempFileDir: path.join(__dirname, app_conf.temp_directory)
|
tempFileDir: path.join(__dirname, app_conf.temp_directory)
|
||||||
}));
|
}));
|
||||||
|
|
||||||
app.use("/", public_routes);
|
app.use(`/`, public_routes);
|
||||||
|
app.use(`${app_conf.app_url}`, basicAuth({
|
||||||
app.use("/app", basicAuth({
|
|
||||||
users: {
|
users: {
|
||||||
[app_conf.username]: app_conf.password
|
[app_conf.username]: app_conf.password
|
||||||
},
|
},
|
||||||
@@ -40,7 +39,7 @@ app.use("/app", basicAuth({
|
|||||||
app.set("view engine", "ejs");
|
app.set("view engine", "ejs");
|
||||||
app.set("views", path.join(__dirname, app_conf.views_directory));
|
app.set("views", path.join(__dirname, app_conf.views_directory));
|
||||||
const server = app.listen(app_conf.port, (error) => {
|
const server = app.listen(app_conf.port, (error) => {
|
||||||
logger.info("Starting Database Editor.");
|
logger.info(`Starting ${app_conf.name} ${app_conf.program}.`);
|
||||||
db.connect();
|
db.connect();
|
||||||
fs.rm(path.join(__dirname, app_conf.temp_directory, "/."), { recursive: true }, (error) => {
|
fs.rm(path.join(__dirname, app_conf.temp_directory, "/."), { recursive: true }, (error) => {
|
||||||
if (error == null) {
|
if (error == null) {
|
||||||
|
|||||||
@@ -20,7 +20,7 @@ commit.ondblclick = async function () {
|
|||||||
}
|
}
|
||||||
|
|
||||||
try {
|
try {
|
||||||
const response = await fetch(`/app/add?element=${sql_row[1].cells[0].firstChild.value}`, {
|
const response = await fetch(`${app_url}/add?element=${sql_row[1].cells[0].firstChild.value}`, {
|
||||||
method: "POST",
|
method: "POST",
|
||||||
body: JSON.stringify(req_body),
|
body: JSON.stringify(req_body),
|
||||||
headers: {
|
headers: {
|
||||||
@@ -31,7 +31,7 @@ commit.ondblclick = async function () {
|
|||||||
throw new Error(`Response status: ${response.status}`);
|
throw new Error(`Response status: ${response.status}`);
|
||||||
} else {
|
} else {
|
||||||
this.style.backgroundColor = "blue";
|
this.style.backgroundColor = "blue";
|
||||||
window.location.href = "/app";
|
window.location.href = app_url;
|
||||||
}
|
}
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
alert(`Add unsuccessful. ${error.message}`);
|
alert(`Add unsuccessful. ${error.message}`);
|
||||||
|
|||||||
@@ -22,13 +22,13 @@ function setEventListeners(element, cb) {
|
|||||||
|
|
||||||
setEventListeners(remove, async () => {
|
setEventListeners(remove, async () => {
|
||||||
try {
|
try {
|
||||||
const response = await fetch(`/app/remove?element=${sql_row[1].cells[0].firstChild.textContent}`, {
|
const response = await fetch(`${app_url}/remove?element=${sql_row[1].cells[0].firstChild.textContent}`, {
|
||||||
method: "DELETE"
|
method: "DELETE"
|
||||||
});
|
});
|
||||||
if (!response.ok) {
|
if (!response.ok) {
|
||||||
throw new Error(`Response status: ${response.status}`);
|
throw new Error(`Response status: ${response.status}`);
|
||||||
} else {
|
} else {
|
||||||
window.location.href = "/app";
|
window.location.href = app_url;
|
||||||
}
|
}
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
alert(`Remove unsuccessful. ${error.message}`);
|
alert(`Remove unsuccessful. ${error.message}`);
|
||||||
@@ -46,7 +46,7 @@ setEventListeners(commit, async () => {
|
|||||||
}
|
}
|
||||||
|
|
||||||
try {
|
try {
|
||||||
const response = await fetch(`/app/edit?element=${sql_row[1].cells[0].firstChild.textContent}`, {
|
const response = await fetch(`${app_url}/edit?element=${sql_row[1].cells[0].firstChild.textContent}`, {
|
||||||
method: "POST",
|
method: "POST",
|
||||||
body: JSON.stringify(req_body),
|
body: JSON.stringify(req_body),
|
||||||
headers: {
|
headers: {
|
||||||
@@ -56,7 +56,7 @@ setEventListeners(commit, async () => {
|
|||||||
if (!response.ok) {
|
if (!response.ok) {
|
||||||
throw new Error(`Response status: ${response.status}`);
|
throw new Error(`Response status: ${response.status}`);
|
||||||
} else {
|
} else {
|
||||||
window.location.href = "/app";
|
window.location.href = app_url;
|
||||||
}
|
}
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
alert(`Edit unsuccessful. ${error.message}`);
|
alert(`Edit unsuccessful. ${error.message}`);
|
||||||
|
|||||||
@@ -24,7 +24,7 @@ setEventListeners(upload, async () => {
|
|||||||
const formData = new FormData();
|
const formData = new FormData();
|
||||||
formData.append('file', file);
|
formData.append('file', file);
|
||||||
|
|
||||||
fetch('/app/upload', {
|
fetch(`${app_url}/upload`, {
|
||||||
method: 'POST',
|
method: 'POST',
|
||||||
body: formData
|
body: formData
|
||||||
}).then((response) => {
|
}).then((response) => {
|
||||||
@@ -41,7 +41,7 @@ setEventListeners(upload, async () => {
|
|||||||
});
|
});
|
||||||
|
|
||||||
setEventListeners(download, () => {
|
setEventListeners(download, () => {
|
||||||
window.location.href = "/app/download";
|
window.location.href = `${app_url}/download`;
|
||||||
});
|
});
|
||||||
|
|
||||||
setEventListeners(logout, () => {
|
setEventListeners(logout, () => {
|
||||||
|
|||||||
@@ -26,7 +26,7 @@ setEventListeners(upload, async () => {
|
|||||||
const formData = new FormData();
|
const formData = new FormData();
|
||||||
formData.append('file', file);
|
formData.append('file', file);
|
||||||
|
|
||||||
fetch('/app/upload', {
|
fetch(`${app_url}/upload`, {
|
||||||
method: 'POST',
|
method: 'POST',
|
||||||
body: formData
|
body: formData
|
||||||
}).then((response) => {
|
}).then((response) => {
|
||||||
@@ -43,11 +43,11 @@ setEventListeners(upload, async () => {
|
|||||||
});
|
});
|
||||||
|
|
||||||
setEventListeners(add, () => {
|
setEventListeners(add, () => {
|
||||||
window.location.href = "/app/add";
|
window.location.href = `${app_url}/add`;
|
||||||
});
|
});
|
||||||
|
|
||||||
setEventListeners(download, () => {
|
setEventListeners(download, () => {
|
||||||
window.location.href = "/app/download";
|
window.location.href = `${app_url}/download`;
|
||||||
});
|
});
|
||||||
|
|
||||||
setEventListeners(logout, () => {
|
setEventListeners(logout, () => {
|
||||||
@@ -58,6 +58,6 @@ const sql_rows = sql_table.rows;
|
|||||||
|
|
||||||
for (let i = 1; i < sql_rows.length; i++) {
|
for (let i = 1; i < sql_rows.length; i++) {
|
||||||
setEventListeners(sql_rows[i], () => {
|
setEventListeners(sql_rows[i], () => {
|
||||||
window.location.href = `/app/edit?element=${sql_rows[i].cells[0].innerText}`;
|
window.location.href = `${app_url}/edit?element=${sql_rows[i].cells[0].innerText}`;
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
Reference in New Issue
Block a user