add js stuff
This commit is contained in:
parent
a9e802f44a
commit
9580e41c59
3 changed files with 78 additions and 3 deletions
10
index.html
10
index.html
|
@ -59,10 +59,13 @@
|
|||
<div class="form-group">
|
||||
<label for="password" class="required">Password</label>
|
||||
<input type="password" class="form-control" id="password" placeholder="*******"
|
||||
required="required">
|
||||
required="required" oninput="HandlePasswordInput();">
|
||||
<label for="password-repeat" class="required">Repeat Password</label>
|
||||
<input type="password" class="form-control" id="password-repeat" placeholder="*******"
|
||||
required="required">
|
||||
required="required" oninput="HandlePasswordInput();">
|
||||
</div>
|
||||
<div id="password-info" class="alert alert-danger" role="alert" style="margin-bottom: 15px; display: none;">
|
||||
|
||||
</div>
|
||||
|
||||
<!-- Shared Secret -->
|
||||
|
@ -72,7 +75,7 @@
|
|||
required="required">
|
||||
</div>
|
||||
<!-- Submit button -->
|
||||
<input class="btn btn-primary" type="submit" value="Register">
|
||||
<input id="submit-button" class="btn btn-primary" type="submit" value="Register">
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
|
@ -91,6 +94,7 @@
|
|||
<!-- Halfmoon JS -->
|
||||
<script src="/static/halfmoon.min.js" defer></script>
|
||||
<script src="/static/script.js" defer></script>
|
||||
<script src="/static/sha1.js" defer></script>
|
||||
</body>
|
||||
|
||||
</html>
|
|
@ -0,0 +1,50 @@
|
|||
async function handleSubmit() {
|
||||
var nonce_request = await fetch("https://matrix-reg.test.lauka.dev/_synapse/admin/v1/register", {
|
||||
method: 'GET',
|
||||
redirect: 'follow',
|
||||
mode: "cors"
|
||||
})
|
||||
var nonce = await nonce_request.json()
|
||||
|
||||
var username = document.getElementById("username").value
|
||||
var password = document.getElementById("password").value
|
||||
var sharedsecret = document.getElementById("sharedsecret").value
|
||||
var admin = "notadmin"
|
||||
|
||||
var string = `${nonce.nonce}\0${username}\0${password}\0${admin}`
|
||||
|
||||
|
||||
const hash = new jsSHA("SHA-1", "TEXT", { hmacKey : { value : sharedsecret, format: "TEXT" }})
|
||||
}
|
||||
|
||||
function HandlePasswordInput() {
|
||||
var info = document.getElementById("password-info")
|
||||
var button = document.getElementById("submit-button")
|
||||
|
||||
var messages = []
|
||||
|
||||
var password = document.getElementById("password").value
|
||||
var passwordrepeat = document.getElementById("password-repeat").value
|
||||
|
||||
if (password.length < 20) {
|
||||
messages.push("Password must be 20 letters or more.")
|
||||
}
|
||||
|
||||
if (!(password === passwordrepeat)) {
|
||||
messages.push("Passwords must match.")
|
||||
}
|
||||
|
||||
if (messages.length == 0) {
|
||||
info.style.display = 'none'
|
||||
button.removeAttribute('disabled')
|
||||
} else if (messages.length == 1) {
|
||||
info.style.display = 'block'
|
||||
info.innerHTML = messages[0]
|
||||
button.setAttribute('disabled','disabled');
|
||||
} else {
|
||||
info.style.display = 'block'
|
||||
string = messages.join(" <br/> ")
|
||||
info.innerHTML = string
|
||||
button.setAttribute('disabled','disabled');
|
||||
}
|
||||
}
|
21
static/sha1.js
Normal file
21
static/sha1.js
Normal file
File diff suppressed because one or more lines are too long
Loading…
Reference in a new issue