summaryrefslogtreecommitdiff
path: root/Core
diff options
context:
space:
mode:
Diffstat (limited to 'Core')
-rw-r--r--Core/Functions/func_login.php32
-rw-r--r--Core/Functions/func_logout.php2
-rw-r--r--Core/Functions/func_register.php5
-rw-r--r--Core/Functions/func_search.php4
-rw-r--r--Core/wrapper.php14
5 files changed, 31 insertions, 26 deletions
diff --git a/Core/Functions/func_login.php b/Core/Functions/func_login.php
index cbe4d62..8cf01f7 100644
--- a/Core/Functions/func_login.php
+++ b/Core/Functions/func_login.php
@@ -8,27 +8,29 @@
// # #
// ############################################################################
-function login($cookie, $email = null, $pass = null, $remember = 0) {
+function login($autologin, $cookie, $email = null, $pass = null, $remember = false) {
// Instanciation de la gestion de la BDD utilisateur.
- $dbuser = new DbUser;
- $dbmission = new DbMission;
+ $dbuser = new DbUser;
// On vérifie si la connection se fait via le formulaire de connection ou par cookie
- if (!$cookie) {
+ if (!$autologin) {
$userId = $dbuser->check_user_credential($email, $pass);
// ou par cookie.
} else {
// On essaie une fois.
- $userId = $dbuser->check_token_autologin($cookie[0], $cookie[1]);
- // Et on le supprime.
- $dbuser->del_token_autologin($cookie[0]);
+ if (is_array($cookie) && count($cookie) == 2) {
+ $userId = $dbuser->check_token_autologin($cookie[0], $cookie[1]);
+ // Et on le supprime.
+ $dbuser->del_token_autologin($cookie[0]);
+ }
}
// Si on a un résultat valide.
if ($userId) {
- $dbsearch = new DbSearch;
+ $dbsearch = new DbSearch;
+ $dbmission = new DbMission;
// LoggedIn devien "true".
- $_SESSION["loggedIn"] = "1";
+ $_SESSION["loggedIn"] = true;
// et on remplie les variables de la session avec les infos de l'utilisateur.
$userInfo = $dbsearch->get_user_account_by_userid($userId);
foreach ($userInfo as $key => $value) {
@@ -37,7 +39,7 @@ function login($cookie, $email = null, $pass = null, $remember = 0) {
// Partie notification,
// Ajout à la session d'un élément "notification".
- $_SESSION["notification"] = 0;
+ $_SESSION["notification"] = false;
// Si c'est un pro
if ($_SESSION["userStatus"] == "1") {
// on récupère et loop dans ses missions
@@ -46,7 +48,7 @@ function login($cookie, $email = null, $pass = null, $remember = 0) {
// Si il y a une mission en attente
if (!$result[$i]["acceptedByPro"]) {
// l'élément de la liste notification devient vrai
- $_SESSION["notification"] = 1;
+ $_SESSION["notification"] = true;
// Et on stop le loop, inutile d'aller plus loin
break;
}
@@ -55,7 +57,7 @@ function login($cookie, $email = null, $pass = null, $remember = 0) {
// Si était coché remember me ou que la connection s'est faite via cookie,
// on en génère un nouveau.
- if ($remember || $cookie) {
+ if ($remember || $autologin) {
$name = "autoLogin";
// On génère une chaine de caractère aléatoire de 32 bytes en supprimant les caractères spéciaux de base64.
$token = substr(str_replace(["+", "/", "="], "",base64_encode(random_bytes(64))) ,0 , 32);
@@ -64,20 +66,20 @@ function login($cookie, $email = null, $pass = null, $remember = 0) {
// Enfin on place l'ensemble sur le navigateur du client codé en base64.
setcookie($name,
base64_encode(json_encode(array($_SESSION["email"], $token))),
- time() + (86400 * 7),
+ time() + (86400 * 7), // 7 jours
"/"
);
}
// On sélectionne le bon message en fonction du type de connection.
- if (!$cookie) {
+ if (!$autologin) {
$message = ["login", "success"];
} else {
$message = ["loginCookie", "success"];
}
} else {
// Si la connection a échoué.
- if (!$cookie) {
+ if (!$autologin) {
$message = ["login", "fail"];
// Si la connection à échoué par cookie.
} else {
diff --git a/Core/Functions/func_logout.php b/Core/Functions/func_logout.php
index e1c28bf..35410ca 100644
--- a/Core/Functions/func_logout.php
+++ b/Core/Functions/func_logout.php
@@ -27,7 +27,7 @@ function logout() {
// Et on en redémarre une nouvelle.
session_start();
- $_SESSION["loggedIn"] = "0";
+ $_SESSION["loggedIn"] = false;
$_SESSION["lang"] = $lang;
// Enfin on redirige avec le bon message.
diff --git a/Core/Functions/func_register.php b/Core/Functions/func_register.php
index 4c6b00a..4d11dfa 100644
--- a/Core/Functions/func_register.php
+++ b/Core/Functions/func_register.php
@@ -11,12 +11,15 @@ function register($email, $password, $userStatus) {
$regNumb = "/[0-9]/";
$regUpper = "/[A-Z]/";
$regSpecial = "/[`!@#$%^&*()_+\-=\[\]{};':\"\\|,.<>\/?~µ°€£]/";
- $regEmail = "/^[a-z0-9._-]+@[a-z0-9-]+\.[a-z]/";
+ $regEmail = "/^[a-z0-9._-]+@[a-z0-9-]+\.[a-z]+$/";
if ((strlen($password) >= 8)
+ && (strlen($password) <= 128)
&& preg_match($regNumb, $password)
&& preg_match($regUpper, $password)
&& preg_match($regSpecial, $password)
+ && (strlen($email) > 0)
+ && (strlen($email) <= 128)
&& preg_match($regEmail, $email)
) {
$dbuser = new DbUser;
diff --git a/Core/Functions/func_search.php b/Core/Functions/func_search.php
index 9575026..54a0cda 100644
--- a/Core/Functions/func_search.php
+++ b/Core/Functions/func_search.php
@@ -14,10 +14,10 @@ function search($request, $isResearch) {
// Si c'est une recherche.
if ($isResearch) {
switch ($isResearch) {
- case 1:
+ case "lastname":
$result = $dbsearch->get_pro_info_by_lastname($request);
break;
- case 2:
+ case "jobid":
$result = $dbsearch->get_all_pro_by_jobid($request);
break;
default:
diff --git a/Core/wrapper.php b/Core/wrapper.php
index 925402a..cc2c243 100644
--- a/Core/wrapper.php
+++ b/Core/wrapper.php
@@ -68,13 +68,13 @@ if (isset($_SESSION["src"])) {
) {
if ($_POST["moreInfoProId"]) {
- search($_POST["moreInfoProId"], 0);
+ search($_POST["moreInfoProId"], false);
} elseif ($_POST["searchByName"]) {
- search($_POST["searchByName"], 1);
+ search($_POST["searchByName"], "lastname");
} elseif ($_POST["searchByJob"]) {
- search($_POST["searchByJob"], 2);
+ search($_POST["searchByJob"], "jobid");
} else {
http_response_code(404);
@@ -109,17 +109,17 @@ if (isset($_SESSION["src"])) {
&& $_POST["password"] !== ""
) {
if (isset($_POST["rememberMe"]) && $_POST["rememberMe"] == "on") {
- $_POST["rememberMe"] = 1;
+ $_POST["rememberMe"] = true;
} else {
- $_POST["rememberMe"] = 0;
+ $_POST["rememberMe"] = false;
}
- login(0, $_POST["email"], $_POST["password"], $_POST["rememberMe"]);
+ login(false, false, $_POST["email"], $_POST["password"], $_POST["rememberMe"]);
} elseif ($_SESSION["src"] == "autoLogin"
&& isset($_COOKIE["autoLogin"])
) {
// Si connection par cookie, on le décode avant de le passer à la fonction.
- login(json_decode(base64_decode($_COOKIE["autoLogin"])));
+ login(1, json_decode(base64_decode($_COOKIE["autoLogin"])));
// ****************************************************************************