Merge branch 'joey-testing' into 'master'
Redesigned register functions See merge request !107
This commit was merged in pull request #111.
This commit is contained in:
@@ -1,97 +1,138 @@
|
||||
<?php
|
||||
/**
|
||||
* Function for checking inputfields
|
||||
* @param variable $variable Give name of the inputfield.
|
||||
* @param string $option Give the name of the option.
|
||||
* @param String $variable Give name of the inputfield.
|
||||
* @param String $option Give the name of the option.
|
||||
* @return sets correct to false and gives value to error message if it doesn't pass the checks.
|
||||
*/
|
||||
function checkInputChoice($variable, $option){
|
||||
if (empty($_POST[$variable])) {
|
||||
$GLOBALS[$variable . "Err"] = "Verplicht!";
|
||||
$GLOBALS["correct"] = false;
|
||||
switch ($option) {
|
||||
case "lettersAndSpaces";
|
||||
checkName($variable);
|
||||
break;
|
||||
|
||||
} else {
|
||||
$GLOBALS[$variable] = test_input($_POST[$variable]);
|
||||
switch ($option) {
|
||||
case "lettersAndSpace":
|
||||
checkonly($variable);
|
||||
break;
|
||||
case "bday";
|
||||
validateBday($variable);
|
||||
break;
|
||||
|
||||
case "username";
|
||||
username($variable);
|
||||
break;
|
||||
case "username";
|
||||
username($variable);
|
||||
break;
|
||||
|
||||
case "longerEight";
|
||||
longerEight($variable);
|
||||
break;
|
||||
case "longerEight";
|
||||
longerEight($variable);
|
||||
break;
|
||||
|
||||
case "email";
|
||||
validateEmail($variable);
|
||||
break;
|
||||
case "email";
|
||||
validateEmail($variable);
|
||||
break;
|
||||
|
||||
default:
|
||||
break;
|
||||
|
||||
default:
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/* Checks for only letters and spaces. */
|
||||
function checkOnly($variable){
|
||||
if (!preg_match("/^[a-zA-Z ]*$/",$GLOBALS[$variable])) {
|
||||
$GLOBALS[$variable . "Err"] = "Alleen letters en spaties zijn toegestaan!";
|
||||
$correct = false;
|
||||
function checkName($variable){
|
||||
if (empty($variable)) {
|
||||
throw new lettersAndSpacesException("Verplicht!");
|
||||
} else if (!preg_match("/^[a-zA-Z ]*$/", $variable)) {
|
||||
throw new lettersAndSpacesException("Alleen letters en spaties zijn toegestaan!");
|
||||
}
|
||||
}
|
||||
|
||||
/* Checks for bday */
|
||||
function validateBday($variable){
|
||||
if (empty($variable)) {
|
||||
throw new bdayException("Verplicht!");
|
||||
} else {
|
||||
if (!(validateDate($variable, "Y/m/d"))) {
|
||||
throw new bdayException("Geen geldige datum");
|
||||
} else {
|
||||
$dateNow = date("Y/m/d");
|
||||
if ($dateNow < $variable) {
|
||||
throw new bdayException("Geen geldige datum");
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Checks for date
|
||||
function validateDate($date, $format)
|
||||
{
|
||||
$d = DateTime::createFromFormat($format, $date);
|
||||
return $d && $d->format($format) == $date;
|
||||
}
|
||||
|
||||
/* checks if username exist and if its longer than 6 characters. */
|
||||
function username($variable){
|
||||
if (strlen($GLOBALS[$variable]) < 6) {
|
||||
$GLOBALS[$variable . "Err"] = "Gebruikersnaam moet minstens 6 karakters bevatten";
|
||||
$correct = false;
|
||||
if (empty($variable)) {
|
||||
throw new usernameException("Verplicht!");
|
||||
} else if (strlen($variable) < 6) {
|
||||
throw new usernameException("Moet minstens 6 karakters bevatten");
|
||||
} else if (getExistingUsername() == 1) {
|
||||
$GLOBALS[$variable . "Err"] = "Gebruikersnaam bestaat al";
|
||||
$correct = false;
|
||||
throw new usernameException("Gebruikersnaam bestaal al");
|
||||
}
|
||||
}
|
||||
|
||||
/* checks if an input is longer that 8 characters. */
|
||||
function longerEight($variable){
|
||||
if (strlen($GLOBALS[$variable]) < 8) {
|
||||
$GLOBALS[$variable . "Err"] = "Moet minstens 8 karakters bevatten";
|
||||
$correct = false;
|
||||
if (empty($variable)) {
|
||||
throw new passwordException("Verplicht!");
|
||||
} else if (strlen($variable) < 8) {
|
||||
throw new passwordException("Moet minstens 8 karakters bevatten");
|
||||
}
|
||||
}
|
||||
|
||||
/* checks if an input is a valid email. */
|
||||
function validateEmail($variable){
|
||||
if (!filter_var($GLOBALS[$variable], FILTER_VALIDATE_EMAIL)) {
|
||||
$GLOBALS[$variable . "Err"] = "Geldige email invullen!";
|
||||
$correct = false;
|
||||
|
||||
if (empty($variable)) {
|
||||
throw new emailException("Verplicht!");
|
||||
} else if (!filter_var($variable, FILTER_VALIDATE_EMAIL)) {
|
||||
throw new emailException("Geldige email invullen");
|
||||
} else if (getExistingEmail() == 1){
|
||||
$GLOBALS[$variable . "Err"] = "Email bestaat al";
|
||||
$correct = false;
|
||||
|
||||
throw new emailException("Email bestaal al!");
|
||||
}
|
||||
}
|
||||
|
||||
/* checks if two passwords matches. */
|
||||
function matchPassword(){
|
||||
if ($_POST["password"] != $_POST["confirmpassword"]) {
|
||||
$GLOBALS["confirmpasswordErr"] = "Wachtwoorden matchen niet";
|
||||
$GLOBALS["correct"] = false;
|
||||
|
||||
throw new confirmPasswordException("Wachtwoorden matchen niet!");
|
||||
}
|
||||
}
|
||||
|
||||
// Checks if everything is filled in correctly
|
||||
function registerCheck(){
|
||||
if ($GLOBALS["correct"] == false){
|
||||
$GLOBALS["genericErr"] = "Bepaalde velden zijn verkeerd of niet ingevuld!";
|
||||
/* Checks if captcha is correctly filled in */
|
||||
function checkCaptcha($captcha){
|
||||
if(!$captcha){
|
||||
throw new captchaException("Captcha needs to be filled in!");
|
||||
} else {
|
||||
$response=json_decode(file_get_contents("https://www.google.com/recaptcha/api/siteverify?secret=6Lc72xIUAAAAAPizuF3nUbklCPljVCVzgYespz8o&response=".$captcha."&remoteip=".$_SERVER['REMOTE_ADDR']));
|
||||
if($response->success==false) {
|
||||
throw new captchaException("You are a spammer!");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/* Get ip adres */
|
||||
function getIp(){
|
||||
if (!empty($_SERVER['HTTP_CLIENT_IP'])) {
|
||||
$GLOBALS["ip"] = $_SERVER['HTTP_CLIENT_IP'];
|
||||
} elseif (!empty($_SERVER['HTTP_X_FORWARDED_FOR'])) {
|
||||
$GLOBALS["ip"] = $_SERVER['HTTP_X_FORWARDED_FOR'];
|
||||
} else {
|
||||
$GLOBALS["ip"] = $_SERVER['REMOTE_ADDR'];
|
||||
}
|
||||
}
|
||||
|
||||
/* Checks if everything is filled in correctly */
|
||||
function registerCheck($status){
|
||||
if ($status == false){
|
||||
throw new registerException("Bepaalde velden zijn verkeerd of niet ingevuld");
|
||||
} else {
|
||||
registerAccount();
|
||||
header("location: login.php");
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@@ -102,4 +143,69 @@ function test_input($data) {
|
||||
$data = htmlspecialchars($data);
|
||||
return $data;
|
||||
}
|
||||
|
||||
class lettersAndSpacesException extends Exception
|
||||
{
|
||||
public function __construct($message = "", $code = 0, Exception $previous = null)
|
||||
{
|
||||
parent::__construct($message, $code, $previous);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
class bdayException extends Exception
|
||||
{
|
||||
public function __construct($message = "", $code = 0, Exception $previous = null)
|
||||
{
|
||||
parent::__construct($message, $code, $previous);
|
||||
}
|
||||
}
|
||||
|
||||
class usernameException extends Exception
|
||||
{
|
||||
public function __construct($message = "", $code = 0, Exception $previous = null)
|
||||
{
|
||||
parent::__construct($message, $code, $previous);
|
||||
}
|
||||
}
|
||||
|
||||
class passwordException extends Exception
|
||||
{
|
||||
public function __construct($message = "", $code = 0, Exception $previous = null)
|
||||
{
|
||||
parent::__construct($message, $code, $previous);
|
||||
}
|
||||
}
|
||||
|
||||
class confirmPasswordException extends Exception
|
||||
{
|
||||
public function __construct($message = "", $code = 0, Exception $previous = null)
|
||||
{
|
||||
parent::__construct($message, $code, $previous);
|
||||
}
|
||||
}
|
||||
|
||||
class emailException extends Exception
|
||||
{
|
||||
public function __construct($message = "", $code = 0, Exception $previous = null)
|
||||
{
|
||||
parent::__construct($message, $code, $previous);
|
||||
}
|
||||
}
|
||||
|
||||
class captchaException extends Exception
|
||||
{
|
||||
public function __construct($message = "", $code = 0, Exception $previous = null)
|
||||
{
|
||||
parent::__construct($message, $code, $previous);
|
||||
}
|
||||
}
|
||||
|
||||
class registerException extends Exception
|
||||
{
|
||||
public function __construct($message = "", $code = 0, Exception $previous = null)
|
||||
{
|
||||
parent::__construct($message, $code, $previous);
|
||||
}
|
||||
}
|
||||
?>
|
||||
|
||||
Reference in New Issue
Block a user