summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorcurly <curly@infernal.garden>2024-07-15 17:37:39 -0600
committercurly <curly@infernal.garden>2024-07-15 17:37:39 -0600
commitf495c613241f95ee4bf10a54b3dc8d4ffb960b4b (patch)
tree8bd465cebb9a67353220188d76213997be68ffab
parent30b53f64f3bba30d259f04dcb6669a56203f94c6 (diff)
downloadpoko_web-f495c613241f95ee4bf10a54b3dc8d4ffb960b4b.tar.gz
poko_web-f495c613241f95ee4bf10a54b3dc8d4ffb960b4b.tar.bz2
poko_web-f495c613241f95ee4bf10a54b3dc8d4ffb960b4b.zip
transfers
-rw-r--r--TODO3
-rw-r--r--src/index.html7
-rw-r--r--src/login.html2
-rw-r--r--src/main.css1
-rw-r--r--src/main.js28
-rw-r--r--src/register.html2
-rw-r--r--src/transfer.html6
7 files changed, 39 insertions, 10 deletions
diff --git a/TODO b/TODO
new file mode 100644
index 0000000..c088ae4
--- /dev/null
+++ b/TODO
@@ -0,0 +1,3 @@
+User Info editable name and password with save button
+Token values and history graph on home
+User home for token values \ No newline at end of file
diff --git a/src/index.html b/src/index.html
index 48f5123..330c493 100644
--- a/src/index.html
+++ b/src/index.html
@@ -4,7 +4,7 @@
<link rel="stylesheet" href="main.css">
<script src="main.js" defer></script>
</head>
- <body onload="has_session()">
+ <body>
<header>
<a href="/">
<center class="button navbutton">HOME</center>
@@ -22,6 +22,11 @@
</center>
<hr>
<div id="content">
+ <div class="halfbox">
+ <p>
+ Welcome to POKO! Just a little server and web interface to exchange POKO tokens.
+ </p>
+ </div>
</div>
</div>
<footer>
diff --git a/src/login.html b/src/login.html
index 30119c1..1b629cc 100644
--- a/src/login.html
+++ b/src/login.html
@@ -22,7 +22,7 @@
</center>
<hr>
<div id="content">
- <form action="javascript:login_form()" class="formbox">
+ <form action="javascript:login_form()" class="formbox" accept-charset=utf-8>
<label for="id">ID</label>
<input type="text" id="id" minlength="4" maxlength="4" pattern="[0123456789abcedfABCDEF]{4}" required>
<label for="password">PASSWORD</label>
diff --git a/src/main.css b/src/main.css
index 45911ed..a5c93bd 100644
--- a/src/main.css
+++ b/src/main.css
@@ -110,6 +110,7 @@ form > select.button {
.halfbox {
width: 50%;
+ max-width: 50%;
display: grid;
flex-grow: 1;
align-content: start;
diff --git a/src/main.js b/src/main.js
index 3060767..21a2f8f 100644
--- a/src/main.js
+++ b/src/main.js
@@ -117,8 +117,8 @@ function get_id() {
return getCookie("id")
}
function set_session(session, id) {
- document.cookie = "session=" + session + "; path=/;";
- document.cookie = "id=" + id + "; path=/;";
+ document.cookie = "session=" + session + "; SameSite=Strict; path=/;";
+ document.cookie = "id=" + id + "; SameSite=Strict; path=/;";
}
function del_session() {
document.cookie = "session=; expires=Thu, 01 Jan 1970 00:00:00 UTC; path=/;";
@@ -235,10 +235,30 @@ async function userlist() {
return out
}
-function transfer() {}
+async function transfer(to_id, color, amount) {
+ const id = get_id();
+ const session = get_session();
+
+ if (is_logged_in()) {
+ const url = server + "/transfer/out";
+ const body = {"id": id, "session": session, "to": to_id, "color": color, "amount": Number(amount)};
+ const req = await xhttp_post(url, body);
+
+ if (req.status != 200) {
+ alert(req.status + ":" + req.body)
+ } else if (req.status == 200) {
+ window.location.href = host + "/user.html"
+ }
+ }
+}
function transfer_form() {
const to_id = document.getElementById("to_id").value;
- const color = document.getElementById("color").value;
+ const color_raw = document.getElementById("color").value.toLowerCase();
+ const color = color_raw.substr(0, 1).toUpperCase() + color_raw.slice(1)
const amount = document.getElementById("amount").value;
+
+ console.log(to_id, color, amount)
+
+ transfer(to_id, color, amount)
} \ No newline at end of file
diff --git a/src/register.html b/src/register.html
index b80bab6..77902f9 100644
--- a/src/register.html
+++ b/src/register.html
@@ -22,7 +22,7 @@
</center>
<hr>
<div id="content">
- <form action="javascript:register()" class="formbox">
+ <form action="javascript:register()" class="formbox" accept-charset=utf-8>
<label for="username">USERNAME</label>
<input type="text" id="username" minlength="1" required>
<label for="password">PASSWORD<br><bold>DO NOT REUSE A PASSWORD! THIS APPLICATION IS NOT SECURE!</bold></label>
diff --git a/src/transfer.html b/src/transfer.html
index 920c779..0802711 100644
--- a/src/transfer.html
+++ b/src/transfer.html
@@ -22,11 +22,11 @@
</center>
<hr>
<div id="content">
- <form action="javascript:transfer_form()" class="formbox">
+ <form action="javascript:transfer_form()" class="formbox", id="transferform" accept-charset=utf-8>
<label for="to_id">RECIPIENT ID</label>
<input type="text" id="to_id" minlength="4" maxlength="4" pattern="[0123456789abcedfABCDEF]{4}" required>
<label for="color">COLOR</label>
- <select class="button" required>
+ <select id="color" class="button" required form="transferform">
<option>WHITE</option>
<option>RED</option>
<option>GREEN</option>
@@ -34,7 +34,7 @@
<option>YELLOW</option>
</select>
<label for="amount">AMOUNT</label>
- <input type="number" id="amount" required>
+ <input type="number" id="amount" min="1" required>
<input type="submit" class="button formbutton" value="SEND">
</form>
</div>