diff options
author | curly <curly@infernal.garden> | 2024-07-17 14:27:04 -0600 |
---|---|---|
committer | curly <curly@infernal.garden> | 2024-07-17 14:27:04 -0600 |
commit | cc46857b4361c356e079b48d23a16b0fccaa7a61 (patch) | |
tree | 3c2d2f08d6decd6d7f4a369e84ae195c5b33651f /src | |
parent | 339ed00eb7496fc44ec5113b0520838305062039 (diff) | |
download | poko_web-cc46857b4361c356e079b48d23a16b0fccaa7a61.tar.gz poko_web-cc46857b4361c356e079b48d23a16b0fccaa7a61.tar.bz2 poko_web-cc46857b4361c356e079b48d23a16b0fccaa7a61.zip |
separate user update forms. require password for deletion
Diffstat (limited to 'src')
-rw-r--r-- | src/favicon.ico | bin | 0 -> 9662 bytes | |||
-rw-r--r-- | src/favicon.svg | 46 | ||||
-rw-r--r-- | src/index.html | 4 | ||||
-rw-r--r-- | src/login/index.html | 4 | ||||
-rw-r--r-- | src/main.css | 10 | ||||
-rw-r--r-- | src/main.js | 26 | ||||
-rw-r--r-- | src/register/index.html | 4 | ||||
-rw-r--r-- | src/user/delete/index.html | 6 | ||||
-rw-r--r-- | src/user/index.html | 4 | ||||
-rw-r--r-- | src/user/transfer/index.html | 4 | ||||
-rw-r--r-- | src/user/update/index.html | 19 |
11 files changed, 101 insertions, 26 deletions
diff --git a/src/favicon.ico b/src/favicon.ico Binary files differindex e69de29..9efc4f9 100644 --- a/src/favicon.ico +++ b/src/favicon.ico diff --git a/src/favicon.svg b/src/favicon.svg new file mode 100644 index 0000000..2c131bd --- /dev/null +++ b/src/favicon.svg @@ -0,0 +1,46 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!-- Created with Inkscape (http://www.inkscape.org/) --> + +<svg + width="48" + height="48" + viewBox="0 0 12.7 12.7" + version="1.1" + id="svg1" + xmlns="http://www.w3.org/2000/svg" + xmlns:svg="http://www.w3.org/2000/svg"> + <defs + id="defs1" /> + <g + id="layer2"> + <path + style="fill:#f2f2ec;fill-opacity:1;stroke:none;stroke-width:0.3;stroke-dasharray:none" + id="path4" + d="M 12.699999,6.2915255e-7 C 13.826135,1.1261365 11.548211,2.4730161 12.157672,3.9443835 c 0.60946,1.4713675 3.172583,0.8130198 3.172583,2.4056164 0,1.5925967 -2.563123,0.934249 -3.172583,2.4056164 -0.609461,1.4713677 1.668463,2.8182467 0.542327,3.9443827 -1.126136,1.126136 -2.473015,-1.151788 -3.9443827,-0.542327 -1.4713675,0.60946 -0.8130198,3.172583 -2.4056164,3.172583 -1.5925967,0 -0.934249,-2.563123 -2.4056164,-3.172583 C 2.473016,11.548211 1.1261365,13.826135 5.8600496e-7,12.699999 -1.1261353,11.573863 1.1517885,10.226984 0.54232816,8.7556163 -0.06713219,7.2842488 -2.6302552,7.9425965 -2.6302552,6.3499999 c 0,-1.5925967 2.56312302,-0.934249 3.17258337,-2.4056164 C 1.1517885,2.473016 -1.1261353,1.1261365 6.2915255e-7,5.8600496e-7 1.1261365,-1.1261353 2.4730161,1.1517885 3.9443835,0.54232816 5.415751,-0.06713219 4.7574033,-2.6302552 6.3499999,-2.6302552 c 1.5925967,0 0.934249,2.56312302 2.4056164,3.17258337 C 10.226984,1.1517885 11.573863,-1.1261353 12.699999,6.2915255e-7 Z" /> + </g> + <g + id="layer1"> + <g + id="g4" + transform="translate(0.45189774,0.13285223)"> + <text + xml:space="preserve" + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:7.76111px;font-family:'Liberation Mono';-inkscape-font-specification:'Liberation Mono, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:proportional-nums;font-variant-east-asian:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.3;stroke-dasharray:none" + x="1.128885" + y="6.0398397" + id="text1"><tspan + id="tspan3" + x="1.128885" + y="6.0398397">PO</tspan></text> + <text + xml:space="preserve" + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:7.76111px;font-family:'Liberation Mono';-inkscape-font-specification:'Liberation Mono, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:proportional-nums;font-variant-east-asian:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.3;stroke-dasharray:none" + x="1.128885" + y="11.510422" + id="text1-0"><tspan + id="tspan4" + x="1.128885" + y="11.510422">KO</tspan></text> + </g> + </g> +</svg> diff --git a/src/index.html b/src/index.html index 5beafaf..9a38dca 100644 --- a/src/index.html +++ b/src/index.html @@ -17,12 +17,12 @@ <center class="button navbutton">REGISTER</center> </a> </header> - <div id="page"> + <div class="page"> <center> <h2>POKO</h2> </center> <hr> - <div id="content"> + <div class="content"> <div class="halfbox"> <p> Welcome to POKO! Just a little server and web interface to exchange POKO tokens. diff --git a/src/login/index.html b/src/login/index.html index ac01fd3..461b040 100644 --- a/src/login/index.html +++ b/src/login/index.html @@ -17,12 +17,12 @@ <center class="button navbutton">REGISTER</center> </a> </header> - <div id="page"> + <div class="page"> <center> <h2>LOGIN</h2> </center> <hr> - <div id="content"> + <div class="content"> <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> diff --git a/src/main.css b/src/main.css index a5c93bd..20b8531 100644 --- a/src/main.css +++ b/src/main.css @@ -21,7 +21,7 @@ body { height: 100vh; width: 100vw; } -#page { +.page { flex-grow: 1; max-width: 65vw; min-width: 45vw; @@ -37,7 +37,7 @@ hr { color: var(--text-primary); width: 100%; } -#content { +.content { flex-grow: 1; display: flex; flex-direction: row; @@ -122,7 +122,7 @@ form > select.button { align-self: start; } -#page > center > h2 { +.page > center > h2 { margin-top: 12px; margin-bottom: 12px; } @@ -153,11 +153,11 @@ header > a, header > a:visited, header > a:link { } @media screen and (max-width: 800px) { - #page { + .page { max-width: 100vw; min-width: 90vw; } - #content > div { + .content > div { width: 100%; max-width: unset; } diff --git a/src/main.js b/src/main.js index 28013cd..f970abc 100644 --- a/src/main.js +++ b/src/main.js @@ -276,15 +276,29 @@ async function update_form_onload() { } } -async function update_form() { +async function update_password_form() { const id = get_id(); const session = get_session(); - const name = document.getElementById("name").value; const old_password = document.getElementById("old_password").value; const new_password = document.getElementById("new_password").value; - const url = server + "/user/update/info" - const body = {"id": id, "session": session, "name": name, "old_password": old_password, "new_password": new_password}; + const url = server + "/user/update/password" + const body = {"id": id, "session": session, "old_password": old_password, "new_password": new_password}; + const req = await xhttp_post(url, body); + + if (req.status == 200) { + window.location.href = host + "/user/" + } else { + alert(req.status + ": " + req.body) + } +} +async function update_name_form() { + const id = get_id(); + const session = get_session(); + const name = document.getElementById("name").value; + + const url = server + "/user/update/name" + const body = {"id": id, "session": session, "name": name}; const req = await xhttp_post(url, body); if (req.status == 200) { @@ -292,16 +306,18 @@ async function update_form() { } else { alert(req.status + ": " + req.body) } + } async function delete_form() { const id = get_id(); const session = get_session(); const is_sure = document.getElementById("is_sure").value; + const password = document.getElementById("password").value; if (is_sure == "YES") { const url = server + "/user/delete" - const body = {"id": id, "session": session} + const body = {"id": id, "session": session, "password": password} const req = await xhttp_post(url, body); if (req.status == 200) { diff --git a/src/register/index.html b/src/register/index.html index d4e29c7..38bcef7 100644 --- a/src/register/index.html +++ b/src/register/index.html @@ -17,12 +17,12 @@ <center class="button navbutton">REGISTER</center> </a> </header> - <div id="page"> + <div class="page"> <center> <h2>REGISTER</h2> </center> <hr> - <div id="content"> + <div class="content"> <form action="javascript:register()" class="formbox" accept-charset=utf-8> <label for="username">USERNAME</label> <input type="text" id="username" minlength="1" required> diff --git a/src/user/delete/index.html b/src/user/delete/index.html index 7d202f3..1b083c3 100644 --- a/src/user/delete/index.html +++ b/src/user/delete/index.html @@ -23,18 +23,20 @@ <center class="button navbutton">LOGOUT</center> </a> </header> - <div id="page"> + <div class="page"> <center> <h2>DELETE</h2> </center> <hr> - <div id="content"> + <div class="content"> <form action="javascript:delete_form()" class="formbox", id="form" accept-charset=utf-8> <label for="is_sure">ARE YOU SURE?</label> <select id="is_sure" class="button" required form="form"> <option selected>NO</option> <option>YES</option> </select> + <label for="password">PASSWORD</label> + <input id="password" type="password" required> <input type="submit" class="button formbutton" value="PERMANENTELY DELETE USER"> </form> </div> diff --git a/src/user/index.html b/src/user/index.html index 72cee0d..12fd680 100644 --- a/src/user/index.html +++ b/src/user/index.html @@ -23,12 +23,12 @@ <center class="button navbutton">LOGOUT</center> </a> </header> - <div id="page"> + <div class="page"> <center> <h2>USER</h2> </center> <hr> - <div id="content"> + <div class="content"> <div id="userinfo" class="halfbox"> <h3>User Info</h3> <p id="user.name"></p> diff --git a/src/user/transfer/index.html b/src/user/transfer/index.html index 80dfa3b..479ff13 100644 --- a/src/user/transfer/index.html +++ b/src/user/transfer/index.html @@ -23,12 +23,12 @@ <center class="button navbutton">LOGOUT</center> </a> </header> - <div id="page"> + <div class="page"> <center> <h2>TRANSFER</h2> </center> <hr> - <div id="content"> + <div class="content"> <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> diff --git a/src/user/update/index.html b/src/user/update/index.html index 30d938b..0ec244b 100644 --- a/src/user/update/index.html +++ b/src/user/update/index.html @@ -23,15 +23,26 @@ <center class="button navbutton">LOGOUT</center> </a> </header> - <div id="page"> + <div class="page"> <center> - <h2>UPDATE INFO</h2> + <h2>UPDATE NAME</h2> </center> <hr> - <div id="content"> - <form action="javascript:update_form()" class="formbox", id="transferform" accept-charset=utf-8> + <div class="content"> + <form action="javascript:update_name_form()" class="formbox", id="nameform" accept-charset=utf-8> <label for="name">USERNAME</label> <input type="text" id="name"> + <input type="submit" class="button formbutton" value="UPDATE"> + </form> + </div> + </div> + <div class="page"> + <center> + <h2>UPDATE PASSWORD</h2> + </center> + <hr> + <div class="content"> + <form action="javascript:update_password_form()" class="formbox", id="password_form" accept-charset="utf-8"> <label for="old_password">OLD PASSWORD</label> <input type="password" id="old_password" minlength="4" maxlength="8" required> <label for="new_password">NEW PASSWORD</label> |