Commit c9316365 authored by Kylian ou Nathan's avatar Kylian ou Nathan
Browse files

17/02/2020 11h30

parent c8dec792
......@@ -94,8 +94,6 @@ class StreamingServer(socketserver.ThreadingMixIn, server.HTTPServer): #serveur
allow_reuse_address = True
daemon_threads = True
with picamera.PiCamera(resolution='1080x720', framerate=30) as camera:
output = StreamingOutput()
......@@ -103,7 +101,7 @@ with picamera.PiCamera(resolution='1080x720', framerate=30) as camera:
camera.start_recording(output, format='mjpeg')
try:
print("Demarrage du stream")
address = ('', 8000) #port utilisé
address = ('', 8080) #port utilisé
server = StreamingServer(address, StreamingHandler)
server.serve_forever() #le lancer pour toujours
finally:
......
......@@ -66,6 +66,7 @@ $route['nouveau_mot_de_passe/(:any)'] = 'Authentification/nouveau_mot_de_passe/$
$route['camera/edit/(:any)'] = 'Camera/edit/$1';
$route['camera/view/(:any)'] = 'Camera/view/$1';
$route['camera/delete/(:any)'] = 'Camera/delete/$1';
$route['camera'] = 'Camera/list';
$route['capteur/edit'] = 'Capteur/edit';
......
......@@ -112,7 +112,7 @@ class Camera extends CI_Controller
}
$this->CameraModele->delete($id);
echo("Je suis dans le delete");
redirect("/camera", "refresh");
}
......
......@@ -83,32 +83,21 @@
</div>
<div class="maison_profil">
<p class="title">Profil actif :</p>
<form action="<?= base_url("/edit_profil")?>" method="post">
<select class="profilActif" name="profilActif" onchange="this.parentElement.submit()">
<?php
foreach($listes_profils as $profil){
$selected = "";
if($profil_actif->id == $profil->id) {
$selected = "selected";
}
echo '<option '.$selected.' value="'.$profil->id.'">'.$profil->nom.'</option>';
}
?>
</select>
</form>
</div>
<div class="maison_horaire">
<p class="title">Plage horaire :</p>
......@@ -156,6 +145,41 @@
</div>
</a>
<h6 class="big">Guide</h6>
<section class="guide">
<div class="left">
<i class='uil uil-comment-info-alt'></i>
</div>
<p>
- Dans la première partie vous pourrez visualiser la dernière notification émise,
cette section est en vert si il n'y a pas de notification et en rouge si il y en a.
</p>
<p>
- Dans le seconde partie vous pouvez choisir quel profil activer et voir la plage horaire
de ce profil.
</p>
<p>
- La dernière partie est un menu afin d'accèder aux différentes partie du site.
</p>
<p>
- Sur le premier bouton vous pourrez accèder à vos profils afin de les gérers
</p>
<p>
- Sur le deuxième bouton vous pourrez accèder aux notifications afin de les visualiser
et de les supprimer.
</p>
<p>
- Sur le troisième bouton vous pourrez accèder à vos capteurs afin de les gérers
</p>
<p>
- Sur le premier bouton vous pourrez accèder à vos caméras afin de les gérers.
</p>
<p>
Pour les profils, capteurs et caméras vous aurez la possibilité d'en ajouter, de modifier
les existants et d'en supprimer.
</p>
</section>
</main>
</body>
......
......@@ -21,9 +21,15 @@
<div class="title"><?=($new ? "Ajouter une caméra" : ("Caméra : " . $nom))?></div>
</div>
<div class="right">
<button type="submit" form="EditCamera" class="blue">
<p>Valider</P>
<button type="submit" form="EditCamera" class="validation">
<i class='uil uil-check'></i>
</button>
<p>Annuler</P>
<a href="<?=base_url("/camera")?>" class="annulation">
<i class='uil uil-times'></i>
</a>
</div>
</header>
<main>
......@@ -41,7 +47,7 @@
<label for="IP" class="input l_r">
<div class="left">
<i class='uil uil-wifi'></i>
<input name="ip" required pattern="^([0-9]{1,3}\.){3}[0-9]{1,3}$" type="text" value="<?=isset($ip) ? $ip : ""?>" placeholder="192.168.4..." />
<input name="ip" required type="text" value="<?=isset($ip) ? $ip : ""?>" placeholder="192.168.4..." />
</div>
</label>
......
......@@ -41,23 +41,26 @@
if(isset($error)) {
echo $error;
} else {
foreach($cameras as $camera){ ?>
if(sizeof($cameras)<1){
echo "Vide";
}
else{
foreach($cameras as $camera){ ?>
<a href="<?=base_url("/camera/view/" . $camera->id)?>" class="image_button_link">
<img src="/static/ressources/cuisine.png" alt="Une caméra">
<div class="button l_r">
<div class="left">
<i class='uil uil-camera'></i>
<p class="title"><?= $camera->nom ?></p>
</div>
<div class="right">
<i class='uil uil-angle-right'></i>
</div>
</div>
<img src="<?= $camera->ip == "localhost" ? base_url("/camera/localhost/stream.mjpg") : "https://" + $camera->ip + "/stream.mjpg" ?>" />
<div class="button l_r">
<div class="left">
<i class='uil uil-camera'></i>
<p class="title"><?= $camera->nom ?></p>
</div>
<div class="right">
<i class='uil uil-angle-right'></i>
</div>
</div>
</a>
<?php } } ?>
<?php }} } ?>
</main>
</body>
......
......@@ -29,15 +29,10 @@
</header>
<main>
<h6 class="big">En temps réel</h6>
<img src="<?=base_url("/static/ressources/garden.jpg")?>" />
<img class="IMG_STREAM" src="<?= $ip == "localhost" ? base_url("/camera/localhost/stream.mjpg") : "https://" + $ip + "/stream.mjpg" ?>" />
<h6 class="big">Vidéos</h6>
<!-- var_dump($ee)
JE LAI ENLEVE POUR FAIRE LE DESIGN
-->
<table>
<thead>
<td class="columnUn">Filmé le</td>
......@@ -57,14 +52,7 @@
</tr>
</tbody>
</table>
<?php if(!$new) { ?>
<a href="<?= base_url("/profil/delete/".$id) ?>" class="simple_button_link l_r red bottom">
<div class="left">
<i class='uil uil-trash-alt'></i>
<div class="title">Supprimer cette caméra</div>
</div>
</a>
<?php } ?>
</main>
</body>
</html>
......@@ -21,9 +21,15 @@
<div class="title"><?= ($new ? "Ajouter un capteur" : ("Capteur : " . $nom) )?></div>
</div>
<div class="right">
<button type="submit" form="EditCapteur" class="blue">
<p>Valider</P>
<button type="submit" form="EditCapteur" class="validation">
<i class='uil uil-check'></i>
</button>
<p>Annuler</P>
<a href="<?=base_url("/capteur")?>" class="annulation">
<i class='uil uil-times'></i>
</a>
</div>
</header>
<main>
......
......@@ -22,9 +22,15 @@
</div>
<div class="right">
<button type="submit" form="EditProfil" class="blue">
<p>Valider</P>
<button type="submit" form="EditProfil" class="validation">
<i class='uil uil-check'></i>
</button>
<p>Annuler</P>
<a href="<?= base_url("/profil/") ?>" class="annulation">
<i class='uil uil-times'></i>
</a>
</div>
</header>
<main>
......
......@@ -28,6 +28,12 @@
foreach($intrusion as $date) { ?>
<section class="simple_layout">
<div class="red_intrusion l_r">
<div class="top_of_intrusion">
<div class="right">
<a href="<?= base_url("/resume/delete/") ?>">
<i class="uil uil-trash-alt"></i>
</a>
</div>
<div class="left intrusion_detected in_red_intrusion">
<i class='uil uil-shield-exclamation'></i>
<p><?= date_format($date, "d/m/Y") ?></p>
......@@ -35,6 +41,7 @@
<div class="left in_red_intrusion">
<p class="detailIntrusion">Une intrusion a été détecté à <?= date_format($date, "H:i") ?>.</p>
</div>
</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>
......
......@@ -190,4 +190,23 @@ a.go_to_camera:hover {
.indicateur.green {
background: #27AE60;
}
.guide {
background-color: white !important;
color: #4C84FF !important;
border-radius: 5px;
margin: 15px;
padding: 15px;
width: 90%;
box-shadow: 0px 0px 2px rgba(0, 0, 0, 0.15);
flex-shrink: 0;
}
.guide i {
margin-right: 15px;
}
.guide p {
color: black !important;
}
\ No newline at end of file
......@@ -66,42 +66,32 @@ label.input:hover {
box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.2);
}
main img.IMG_STREAM {
width: 100%;
}
/*TABLEAU*/
main table {
border-collapse: collapse;
background: #fff;
border-radius: 10px;
overflow: hidden;
text-align: center;
width: 80%;
margin-bottom: 50px
}
table thead td {
height: 40px;
background: #4C84FF;
}
thead th {
font-size: 18px;
color: white;
background: #CCC;
}
tbody tr {
color: gray;
color: black;
font-size: 15px;
height: 50px;
}
.columnUn {
width: 200px;
}
.columnDeux,
.columnTrois {
width: 100px;
}
tbody tr:nth-child(even) {
background-color: #e8e8e8;
background-color: #FFF;
}
\ No newline at end of file
......@@ -157,10 +157,11 @@ a.image_button_link:hover {
}
a.image_button_link img {
display: block;
border-top-left-radius: 5px;
border-top-right-radius: 5px;
width: 100%;
height: 200px;
max-height: 450px;
object-fit: cover;
}
......@@ -357,7 +358,7 @@ main .blue,
main .black,
.black {
color: #000000;
color: black;
}
main .green,
......@@ -370,6 +371,11 @@ main .orange,
color: orange;
}
main .orange,
.orange {
color: white;
}
/***************************************************************************
##### EXEMPLE INDICATEUR DE COULEUR #####
......@@ -400,4 +406,46 @@ main>form {
flex-direction: column;
align-items: center;
box-sizing: border-box;
}
/***************************************************************************
##### EXEMPLE MENU VALIDER/ANNULER #####
Mise en forme des boutons de validation et d'annulation
(sur les pages de création de profil, camera, capteur..)
<div class="right">
<p>Valider</P>
<button type="submit" form="EditProfil" class="validation">
<i class='uil uil-check'></i>
</button>
<p>Annuler</P>
<a href="<?= base_url("/profil/") ?>" class="annulation">
<i class='uil uil-times'></i>
</a>
</div>
*/
.validation {
color: white;
background-color: #4C84FF !important;
border-radius: 15px;
width: 28px;
height: 28px;
}
.annulation {
color: white;
background-color: #E62929 !important;
border-radius: 15px;
width: 28px;
height: 28px;
}
.validation [class^=uil-]:before,
.validation [class*=" uil-"]:before,
.annulation [class^=uil-]:before,
.annulation [class*=" uil-"]:before {
margin-left: .1em;
}
\ 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