--- /dev/null
+<?php
+
+ require_once('protected/required.php');
+
+ class PdoAlerteManager extends AbstractPdoManager implements AlerteManager {
+
+ public function createAlerte($alerte) {
+
+ $query = $this -> pdo -> prepare(
+ 'INSERT INTO alertes (creation, nature, message) VALUES (NOW(), :nature, :message);'
+ );
+ $query -> bindValue(':nature', $alerte -> getNature());
+ $query -> bindValue(':message', $alerte -> getMessage());
+ $query -> execute();
+ }
+
+ public function updateAlerte($alerte) {
+
+ $query = $this -> pdo -> prepare(
+ 'UPDATE alertes
+ SET creation = :creation,
+ nature = :nature,
+ message = :message
+ WHERE id = :id'
+ );
+ $query -> bindValue(':id', $alerte -> getId());
+ $query -> bindValue(':creation', $alerte -> getCreation());
+ $query -> bindValue(':nature', $alerte -> getNature());
+ $query -> bindValue(':message', $alerte -> getMessage());
+ $query -> execute();
+ }
+
+ public function getAlerte($id) {
+
+ $query = $this -> pdo -> prepare('SELECT * FROM alertes WHERE id = :id');
+ $query -> bindValue(':id', $id);
+ $query -> execute();
+
+ $result = $query -> fetch(PDO::FETCH_ASSOC);
+ $alerte = new Alerte($result['id'], $result['creation'], $result['nature'], $result['message']);
+
+ $query->closeCursor();
+
+ return $alerte;
+ }
+
+ public function getLastAlerte() {
+
+ $query = $this -> pdo -> prepare('SELECT * FROM alertes WHERE id = LAST_INSERT_ID()');
+ $query -> execute();
+
+ $result = $query -> fetch(PDO::FETCH_ASSOC);
+ $alerte = new Alerte($result['id'], $result['creation'], $result['nature'], $result['message']);
+
+ $query->closeCursor();
+
+ return $alerte;
+ }
+
+ public function getAlertes() {
+
+ $query = $this -> pdo -> prepare('SELECT * FROM alertes');
+ $query -> execute();
+
+ $results = $query -> fetchAll(PDO::FETCH_ASSOC);
+ $alertes = array();
+ foreach ($results as $result) {
+ $alertes[] = new Alerte($result['id'], $result['creation'], $result['nature'], $result['message']);
+ }
+
+ $query->closeCursor();
+
+ return $alertes;
+ }
+
+ public function removeAlerte($alerte) {
+
+ $query = $this -> pdo -> prepare('DELETE FROM alertes WHERE id = :id');
+ $query -> bindValue('id', $alerte -> getId());
+ $query -> execute();
+ }
+
+ }
+
+?>