summaryrefslogtreecommitdiff
path: root/Core
diff options
context:
space:
mode:
authorDebulois <quentin@debulois.fr>2022-04-10 21:25:00 +0200
committerDebulois <quentin@debulois.fr>2022-04-10 21:25:00 +0200
commit2923e6fca634231533cca11e43a9091344ff4ba5 (patch)
tree7181e1b0e26ddb072530adec7d55f77e9e389783 /Core
parent9939f74c0b274ee916f742a45a32d3c843e0960b (diff)
Ajout d'un système de notification pour alerter les pro et finition
Diffstat (limited to 'Core')
-rw-r--r--Core/Functions/func_login.php21
-rw-r--r--Core/Functions/func_myMission.php5
-rw-r--r--Core/Functions/func_register.php14
3 files changed, 33 insertions, 7 deletions
diff --git a/Core/Functions/func_login.php b/Core/Functions/func_login.php
index f0c72c7..bf593a3 100644
--- a/Core/Functions/func_login.php
+++ b/Core/Functions/func_login.php
@@ -10,7 +10,8 @@
function login($cookie, $email = null, $pass = null, $remember = 0) {
// Instanciation de la gestion de la BDD utilisateur.
- $dbuser = new DbUser;
+ $dbuser = new DbUser;
+ $dbmission = new DbMission;
// On vérifie si la connection se fait via le formulaire de connection ou par cookie
if (!$cookie) {
@@ -34,6 +35,24 @@ function login($cookie, $email = null, $pass = null, $remember = 0) {
$_SESSION[$key] = $value;
}
+ // Partie notification,
+ // Ajout à la session d'un élément "notification".
+ $_SESSION["notification"] = 0;
+ // Si c'est un pro
+ if ($_SESSION["userStatus"] == "1") {
+ // on récupère et loop dans ses missions
+ $result = $dbmission->get_mission_by_proid($_SESSION["userId"]);
+ for ($i = 0; $i < count($result); $i++) {
+ // Si il y a une mission en attente
+ if (!$result[$i]["acceptedByPro"]) {
+ // l'élément de la liste notification devient vrai
+ $_SESSION["notification"] = 1;
+ // Et on stop le loop, inutile d'aller plus loin
+ break;
+ }
+ }
+ }
+
// Si était coché remember me ou que la connection s'est faite via cookie,
// on en génère un nouveau.
if ($remember || $cookie) {
diff --git a/Core/Functions/func_myMission.php b/Core/Functions/func_myMission.php
index bf3a2a6..c6d4594 100644
--- a/Core/Functions/func_myMission.php
+++ b/Core/Functions/func_myMission.php
@@ -5,12 +5,16 @@
// # Description: Fonction de gesrtion de ses missions #
// # #
// ############################################################################
+
+// Acceptation d'une mission par un pro
function mymission_accept_mission($missionId) {
$dbmission = new DbMission;
$accepted = $dbmission->accept_mission_by_missionid($missionId);
// Sélection du message à afficher en fonction de réussite ou pas.
if ($accepted) {
+ // Suppresion de l'élément "notification" de la session.
+ unset($_SESSION["notification"]);
$message = ["missionAccepted", "success"];
} else {
$message = ["missionAccepted", "fail"];
@@ -22,6 +26,7 @@ function mymission_accept_mission($missionId) {
die();
}
+// Validation de fin de mission par un pro ou un client
function mymission_complete_mission($missionId, $userStatus) {
$dbmission = new DbMission;
diff --git a/Core/Functions/func_register.php b/Core/Functions/func_register.php
index d8960ce..1a94bc1 100644
--- a/Core/Functions/func_register.php
+++ b/Core/Functions/func_register.php
@@ -8,14 +8,16 @@
function register($email, $password, $userStatus) {
// les regex necessaire pour vérifier le mot de passe
- $numb = "/[0-9]/";
- $upper = "/[A-Z]/";
- $special = "/[`!@#$%^&*()_+\-=\[\]{};':\"\\|,.<>\/?~µ°€£]/";
+ $regNumb = "/[0-9]/";
+ $regUpper = "/[A-Z]/";
+ $regSpecial = "/[`!@#$%^&*()_+\-=\[\]{};':\"\\|,.<>\/?~µ°€£]/";
+ $regEmail = "/^[a-z0-9_-]+@[a-z0-9-]+\.[a-z]/";
if ((strlen($password) >= 8)
- && preg_match($numb, $password)
- && preg_match($upper, $password)
- && preg_match($special, $password)
+ && preg_match($regNumb, $password)
+ && preg_match($regUpper, $password)
+ && preg_match($regSpecial, $password)
+ && preg_match($regEmail, $email)
) {
$dbuser = new DbUser;