first git
This commit is contained in:
79
js/forms.js
Normal file
79
js/forms.js
Normal file
@@ -0,0 +1,79 @@
|
||||
function formhash(form, password) {
|
||||
// Create a new element input, this will be our hashed password field.
|
||||
var p = document.createElement("input");
|
||||
|
||||
// Add the new element to our form.
|
||||
form.appendChild(p);
|
||||
p.name = "p";
|
||||
p.type = "hidden";
|
||||
p.value = hex_sha512(password.value);
|
||||
|
||||
// Make sure the plaintext password doesn't get sent.
|
||||
password.value = "";
|
||||
|
||||
// Finally submit the form.
|
||||
form.submit();
|
||||
}
|
||||
|
||||
function regformhash(form, uid, email, password, conf) {
|
||||
// Check each field has a value
|
||||
if (uid.value == '' ||
|
||||
email.value == '' ||
|
||||
password.value == '' ||
|
||||
conf.value == '') {
|
||||
|
||||
alert('You must provide all the requested details. Please try again');
|
||||
return false;
|
||||
}
|
||||
|
||||
// Check the username
|
||||
|
||||
re = /^\w+$/;
|
||||
if(!re.test(form.username.value)) {
|
||||
alert("Username must contain only letters, numbers and underscores. Please try again");
|
||||
form.username.focus();
|
||||
return false;
|
||||
}
|
||||
|
||||
// Check that the password is sufficiently long (min 6 chars)
|
||||
// The check is duplicated below, but this is included to give more
|
||||
// specific guidance to the user
|
||||
if (password.value.length < 6) {
|
||||
alert('Passwords must be at least 6 characters long. Please try again');
|
||||
form.password.focus();
|
||||
return false;
|
||||
}
|
||||
|
||||
// At least one number, one lowercase and one uppercase letter
|
||||
// At least six characters
|
||||
|
||||
var re = /(?=.*\d)(?=.*[a-z])(?=.*[A-Z]).{6,}/;
|
||||
if (!re.test(password.value)) {
|
||||
alert('Passwords must contain at least one number, one lowercase and one uppercase letter. Please try again');
|
||||
return false;
|
||||
}
|
||||
|
||||
// Check password and confirmation are the same
|
||||
if (password.value != conf.value) {
|
||||
alert('Your password and confirmation do not match. Please try again');
|
||||
form.password.focus();
|
||||
return false;
|
||||
}
|
||||
|
||||
// Create a new element input, this will be our hashed password field.
|
||||
var p = document.createElement("input");
|
||||
|
||||
// Add the new element to our form.
|
||||
form.appendChild(p);
|
||||
p.name = "p";
|
||||
p.type = "hidden";
|
||||
p.value = hex_sha512(password.value);
|
||||
|
||||
// Make sure the plaintext password doesn't get sent.
|
||||
password.value = "";
|
||||
conf.value = "";
|
||||
|
||||
// Finally submit the form.
|
||||
form.submit();
|
||||
return true;
|
||||
}
|
||||
Reference in New Issue
Block a user