$tmp) { foreach ($tmp as $jour => $value) { db::query("INSERT INTO " . DB_T_ALERTES_EMAILS . " (id, id_user, heure, jour) VALUES (:id, :id_user, :heure, :jour)"); db::bind(':id', $userId."#".$heure."#".$jour); db::bind(':id_user', $userId); db::bind(':heure', $heure); db::bind(':jour', $jour); try { db::execute(); } catch (Exception $ex) { alert::recError("Erreur d'enregistrement des alertes"); return FALSE; } } } alert::recSuccess("Enregistrement pris en compte"); return TRUE; } else { alert::recSuccess("Vous n'avez plus de plages horaires enregistrées"); return TRUE; } } /** * Récupère les paramètres d'alertes email pour un utilisateur. * * @param float|null $_id L'ID de l'utilisateur (optionnel). * @return array|null Les paramètres d'alertes ou NULL si aucun paramètre. */ public static function getParameter(float $_id = NULL){ $userId = is_null($_id) ? session::getId() : $_id; db::query("SELECT " . "" . DB_T_ALERTES_EMAILS . ".heure, " . "" . DB_T_ALERTES_EMAILS . ".jour " . "FROM " . DB_T_ALERTES_EMAILS . " " . "WHERE id_user = :id_user"); db::bind(':id_user', $userId); $tmp = db::resultset(); if(isset($tmp)){ $return = []; foreach ($tmp as $value) { $return[$value["heure"]][$value["jour"]] = 1; } return $return; } else { return NULL; } } /** * Vérifie si les paramètres d'alertes sont valides pour un utilisateur. * * @param float $_id L'ID de l'utilisateur. * @return bool TRUE si les paramètres sont valides, FALSE sinon. */ public static function checkParameter(float $_id){ $data = self::getParameter($_id); $jourSemaineOriginal = date('w'); $jourSemaineAdjuste = ($jourSemaineOriginal + 6) % 7; // Pour que le Lundi soit le numéro 0 return isset($data[date('G')][$jourSemaineAdjuste]) ? TRUE : FALSE; } }