Commit 9fdbb475 authored by Kylian ou Nathan's avatar Kylian ou Nathan
Browse files

Up

parent fafe8ac2
......@@ -12,7 +12,7 @@ class API extends CI_Controller{
}
// Controlleur pour l'API
// Controleur pour l'API
public function init() {
// On récupère les segments dans l'URL
......@@ -55,16 +55,25 @@ class API extends CI_Controller{
$debut = mktime($debut[0], $debut[1], 0, 0,0,0);
$fin = mktime($fin[0], $fin[1], 0, 0,0,0);
// Si le profil est activé a l'heure actuelle
if( ($now >= $debut AND $now <= $fin) OR ($profil->debut == $profil->fin) ) {
// TODO : Respecter la liste des capteurs désactivé
// On ajoute le log dans la base de donnée
if($this->LogCapteurModele->add($capteur->id, $type)){
echo "ok";
// Si le type est une intrusion
$email_type = $type === "intrusion" ? $type : "warning";
// On vérifie dans les logs qu'aucun mail n'a été envoyé
$mail_send = $this->LogEmailModele->getAllDay();
// Si le type de mail envoyé est différent de "intrusion"
if($mail_send == false OR !in_array($email_type, array_column($mail_send["raw"], "type"))){
// On envoit un mail
$this->send_email($email_type);
}
......@@ -81,14 +90,20 @@ class API extends CI_Controller{
}
}
// Méthode permettant d'envoyer un mail
private function send_email($type){
// On récupère les utilisateurs qui acceptent de recevoir les notifications
$users = $this->AuthentificationModele->users_accepting_notification();
// On listes les id
$users_id = array_column($users, "id");
// On listes les emails
$users_email = array_column($users, "email");
$to = implode(",", $users_email);
// On définit toutes les infos pour le mail
$subject = $type === "intrusion" ? "[LOCKHOME] Intrusion dans votre maison" : "[LOCKHOME] Notification a lire concernant votre système de sécurité";
$message = file_get_contents("./application/email/$type.html");
......@@ -98,8 +113,10 @@ class API extends CI_Controller{
$headers .= 'Reply-To: lockhome@lockhome.nrocher.fr' . "\r\n";
$headers .= 'X-Mailer: PHP/' . phpversion();
// On envoit le mail
if(mail($to, $subject, $message, $headers)) {
echo "<br>Email accepted by server";
// On ajoute dans la base de donnée a qui ont a envoyé le mail
$this->LogEmailModele->add($users_id, $type);
} else {
echo "<br>Error: Email not accepted by server";
......
......@@ -14,7 +14,7 @@ class Accueil extends CI_Controller
$this->load->helper("url_helper");
}
// Controlleur pour la page "Accueil"
// Controleur pour la page "Accueil"
public function home()
{
......@@ -47,7 +47,7 @@ class Accueil extends CI_Controller
}
// Controlleur pour la page "Modifier les paramètres de la maison"
// Controleur pour la page "Modifier les paramètres de la maison"
public function edit()
{
......@@ -106,7 +106,7 @@ class Accueil extends CI_Controller
}
// Controlleur pour la page "Accueil" -> "Modifier le profil actif"
// Controleur pour la page "Accueil" -> "Modifier le profil actif"
public function edit_profil(){
// On vérifie que c'est bien une requete de type post et que la valeur du nouveau profil actif n'est pas vide
......
......@@ -7,16 +7,20 @@ class Authentification extends CI_Controller {
$this->load->model("MotDePasseOublieModele");
$this->load->helper("url_helper");
}
// Controleur pour la page "Connexion"
public function connexion(){
// Si l'utilisateur est connecté
if($this->session->has_userdata("email")){
header("Location: ./");
}
if($this->input->server('REQUEST_METHOD') == 'POST') {
//REQUETE HTTP POST
// Si
if($this->input->post('email') != null and $this->input->post('mot_de_passe') != null){
$email = $this->input->post('email');
......
......@@ -66,7 +66,7 @@
<div class="right">
<?php /* \/ ICI LE NOM DE L'INPUT COMMENCE PAR capteur_${ID_CAPTEUR} */ ?>
<input id="capteur_<?= $capteur->id ?>" name="capteur_<?= $capteur->id ?>" <?= in_array($capteur->id, $state) ? "" : "checked" ?> value="1" type="checkbox">
<?php /* DONC LORS DE LENVOIT DE DONNEE Controlleur/Profil.php ligne 30 */ ?>
<?php /* DONC LORS DE LENVOIT DE DONNEE Controleur/Profil.php ligne 30 */ ?>
<div class="switch"></div>
</div>
</label>
......
......@@ -23,28 +23,30 @@
</header>
<main>
<?php foreach($intrusion as $date) { ?>
<section class="simple_layout">
<div class="red_intrusion l_r">
<div class="left intrusion_detected in_red_intrusion">
<i class='uil uil-shield-exclamation'></i>
<p><?= date_format($date, "d/m/Y") ?></p>
</div>
<div class="left in_red_intrusion">
<p class="detailIntrusion">Une intrusion a été détecté à <?= date_format($date, "H:i") ?>.</p>
</div>
<a class="go_to_camera l_r in_red_intrusion" href="<?= base_url("/resume/show/".date_format($date, "d/m/Y")) ?>">
<div class="left">
<i class='uil uil-clock'></i>
<p>Voir les évènements</p>
<?php
if(is_array($intrusion)){
foreach($intrusion as $date) { ?>
<section class="simple_layout">
<div class="red_intrusion l_r">
<div class="left intrusion_detected in_red_intrusion">
<i class='uil uil-shield-exclamation'></i>
<p><?= date_format($date, "d/m/Y") ?></p>
</div>
<div class="right">
<i class='uil uil-angle-right'></i>
<div class="left in_red_intrusion">
<p class="detailIntrusion">Une intrusion a été détecté à <?= date_format($date, "H:i") ?>.</p>
</div>
</a>
</div>
</section>
<?php } ?>
<a class="go_to_camera l_r in_red_intrusion" href="<?= base_url("/resume/show/".date_format($date, "d/m/Y")) ?>">
<div class="left">
<i class='uil uil-clock'></i>
<p>Voir les évènements</p>
</div>
<div class="right">
<i class='uil uil-angle-right'></i>
</div>
</a>
</div>
</section>
<?php } }?>
</main>
</body>
</html>
\ No newline at end of file
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment