Initial commit of the Labchain OS software
This commit is contained in:
97
js/forms.js
Normal file
97
js/forms.js
Normal file
@@ -0,0 +1,97 @@
|
||||
/*
|
||||
* Copyright (C) 2013 peredur.net
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation, either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
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('U moet alles invullen, svp opnieuw proberen');
|
||||
return false;
|
||||
}
|
||||
|
||||
// Check the username
|
||||
re = /^\w+$/;
|
||||
|
||||
if(!re.test(form.username.value)) {
|
||||
alert("Gebruikersnaam kan alleen letters, nummers en underscores bevatten. Svp opnieuw proberen");
|
||||
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('Wachtwoord moet minimaal 6 karakters lang zijn');
|
||||
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('Wachtwoord moet minimaal 1 nummer, een kleine en een hoofdletter bevatten.');
|
||||
return false;
|
||||
}
|
||||
|
||||
// Check password and confirmation are the same
|
||||
if (password.value != conf.value) {
|
||||
alert('Wachtwoord en bevestiging moeten hetzelfde zijn');
|
||||
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