--- a/include/db/servicealert-dao.inc.php +++ b/include/db/servicealert-dao.inc.php @@ -1,167 +1,198 @@ prepare($query); // Create a prepared statement - $query -> bindParam(":date", date("Ymd", ($date != "" ? $date : time()))); - $query -> execute(); - if (!$query) { - databaseError($conn -> errorInfo()); - return Array(); - } - return $query -> fetch(PDO :: FETCH_ASSOC); - } -function getServiceAlert($alertID) -{ - global $conn; - $query = 'SELECT * from servicealerts_alerts where id = :servicealert_id'; - debug($query, "database"); - $query = $conn -> prepare($query); - $query -> bindParam(":servicealert_id", $alertID); - $query -> execute(); - if (!$query) { - databaseError($conn -> errorInfo()); - return Array(); - } - return $query -> fetch(PDO :: FETCH_ASSOC); - } +/* + * Copyright 2010,2011 Alexander Sadleir + Licensed under the Apache License, Version 2.0 (the 'License'); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at -function updateServiceAlert($alertID, $start, $end, $description, $url) -{ - global $conn; - $query = 'update servicealerts_alerts set start=:start, "end"=:end, description=:description, url=:url where id = :servicealert_id'; - debug($query, "database"); - $query = $conn -> prepare($query); - $query -> bindParam(":servicealert_id", $alertID); - $query -> bindParam(":start", $start); - $query -> bindParam(":end", $end); - $query -> bindParam(":description", $description); - $query -> bindParam(":url", $url); - $query -> execute(); + http://www.apache.org/licenses/LICENSE-2.0 - print_r($conn -> errorInfo()); - if (!$query) { - databaseError($conn -> errorInfo()); - return Array(); - } - return $query -> fetch(PDO :: FETCH_ASSOC); - } + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an 'AS IS' BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ - function addServiceAlert($start, $end, $description, $url) -{ - global $conn; - $query = 'INSERT INTO servicealerts_alerts (start, "end", description, url) VALUES (:start, :end, :description, :url) '; - debug($query, "database"); - $query = $conn -> prepare($query); - $query -> bindParam(":start", $start); - $query -> bindParam(":end", $end); - $query -> bindParam(":description", $description); - $query -> bindParam(":url", $url); - $query -> execute(); +function getServiceOverride($date = '') { + global $conn; + $query = 'Select * from calendar_dates where date = :date and exception_type = \'1\' LIMIT 1'; + // debug($query,'database'); + $query = $conn->prepare($query); // Create a prepared statement + $date = date('Ymd', ($date != '' ? $date : time())); + $query->bindParam(':date', $date); + $query->execute(); + if (!$query) { + databaseError($conn->errorInfo()); + return Array(); + } + return $query->fetch(PDO :: FETCH_ASSOC); +} - print_r($conn -> errorInfo()); - if (!$query) { - databaseError($conn -> errorInfo()); - return Array(); - } - return $query -> fetch(PDO :: FETCH_ASSOC); - } +function getServiceAlert($alertID) { + global $conn; + $query = 'SELECT id,extract(\'epoch\' from start) as start, extract(\'epoch\' from "end") as end,cause,effect,header,description,url from servicealerts_alerts where id = :servicealert_id'; + debug($query, 'database'); + $query = $conn->prepare($query); + $query->bindParam(':servicealert_id', $alertID); + $query->execute(); + if (!$query) { + databaseError($conn->errorInfo()); + return Array(); + } + return $query->fetch(PDO :: FETCH_ASSOC); +} -function getCurrentAlerts() -{ - global $conn; - $query = 'SELECT * from servicealerts_alerts where NOW() > start and NOW() < "end"'; - // debug($query, "database"); - $query = $conn -> prepare($query); - $query -> execute(); - if (!$query) { - databaseError($conn -> errorInfo()); - return Array(); - } - return $query -> fetchAll(); - } +function updateServiceAlert($alertID, $alert) { + global $conn; + $query = 'update servicealerts_alerts set start=:start, "end"=:end, header=:header, description=:description, url=:url, cause=:cause, effect=:effect where id = :servicealert_id'; + debug($query, 'database'); + $query = $conn->prepare($query); + $query->bindValue(':servicealert_id', $alertID); + $query->bindValue(':start', $alert['startdate']); + $query->bindValue(':end', $alert['enddate']); + $query->bindValue(':header', $alert['header']); + $query->bindValue(':description', $alert['description']); + $query->bindValue(':url', $alert['url']); + $query->bindValue(':cause', $alert['cause']); + $query->bindValue(':effect', $alert['effect']); + $query->execute(); -function getFutureAlerts() -{ - global $conn; - $query = 'SELECT * from servicealerts_alerts where NOW() > start or NOW() < "end"'; - // debug($query, "database"); - $query = $conn -> prepare($query); - $query -> execute(); - if (!$query) { - databaseError($conn -> errorInfo()); - return Array(); - } - return $query -> fetchAll(); - } -function getInformedAlerts($id, $filter_class, $filter_id) -{ - - global $conn; - $query = "SELECT * from servicealerts_informed where servicealert_id = :servicealert_id"; - - if ($filter_class != "") { - $query .= " AND informed_class = :informed_class "; - - } - if ($filter_id != "") { - $query .= " AND informed_id = :informed_id "; - - } - // debug($query, "database"); - $query = $conn -> prepare($query); - if ($filter_class != "") { - $query -> bindParam(":informed_class", $filter_class); - } - if ($filter_id != "") { - $query -> bindParam(":informed_id", $filter_id); - } - $query -> bindParam(":servicealert_id", $id); - $query -> execute(); - if (!$query) { - databaseError($conn -> errorInfo()); - return Array(); - } - return $query -> fetchAll(); - } -function deleteInformedAlert($serviceAlertID, $class, $id) -{ - global $conn; - $query = 'DELETE from servicealerts_informed where servicealert_id = :servicealert_id and informed_class = :informed_class AND informed_id = :informed_id'; - debug($query, "database"); - $query = $conn -> prepare($query); - $query -> bindParam(":servicealert_id", $serviceAlertID); - $query -> bindParam(":informed_class", $class); - $query -> bindParam(":informed_id", $id); - $query -> execute(); - print_r($conn -> errorInfo()); - if (!$query) { - databaseError($conn -> errorInfo()); - return Array(); - } + print_r($conn->errorInfo()); + if (!$query) { + databaseError($conn->errorInfo()); + return Array(); + } + return $query->fetch(PDO :: FETCH_ASSOC); +} + +function addServiceAlert($alert) { + global $conn; + $query = 'INSERT INTO servicealerts_alerts (start, "end", header, description, url,cause,effect) VALUES (:start, :end, :header, :description, :url,:cause,:effect) '; + debug($query, 'database'); + $query = $conn->prepare($query); + //print_r($alert); + $query->bindValue(':start', $alert['startdate']); + $query->bindValue(':end', $alert['enddate']); + $query->bindValue(':header', $alert['header']); + $query->bindValue(':description', $alert['description']); + $query->bindValue(':url', $alert['url']); + $query->bindValue(':cause', $alert['cause']); + $query->bindValue(':effect', $alert['effect']); + $query->execute(); + + print_r($conn->errorInfo()); + if (!$query) { + databaseError($conn->errorInfo()); + return Array(); + } + return $query->fetch(PDO :: FETCH_ASSOC); +} + +function getCurrentAlerts() { + global $conn; + $query = 'SELECT id,extract(\'epoch\' from start) as start, extract(\'epoch\' from "end") as end,cause,effect,header,description,url from servicealerts_alerts where NOW() > start and NOW() < "end"'; + // debug($query, 'database'); + $query = $conn->prepare($query); + $query->execute(); + if (!$query) { + databaseError($conn->errorInfo()); + return Array(); + } + return $query->fetchAll(); +} + +function getFutureAlerts() { + global $conn; + $query = 'SELECT id,extract(\'epoch\' from start) as start, extract(\'epoch\' from "end") as end,cause,effect,header,description,url from servicealerts_alerts where NOW() < "end"'; + // debug($query, 'database'); + $query = $conn->prepare($query); + $query->execute(); + if (!$query) { + databaseError($conn->errorInfo()); + return Array(); + } + return $query->fetchAll(); +} + +function getAllAlerts() { + global $conn; + $query = 'SELECT id,extract(\'epoch\' from start) as start, extract(\'epoch\' from "end") as end,cause,effect,header,description,url from servicealerts_alerts'; + // debug($query, 'database'); + $query = $conn->prepare($query); + $query->execute(); + if (!$query) { + databaseError($conn->errorInfo()); + return Array(); + } + return $query->fetchAll(); +} + +function getInformedAlerts($id, $filter_class, $filter_id) { + + global $conn; + //echo '$id, $filter_class, $filter_id\n'; + $query = 'SELECT * from servicealerts_informed where servicealert_id = :servicealert_id'; + + if ($filter_class != '') { + $query .= ' AND informed_class = :informed_class '; + } + if ($filter_id != '') { + $query .= ' AND informed_id = :informed_id '; + } + // debug($query, 'database'); + $query = $conn->prepare($query); + if ($filter_class != '') { + $query->bindParam(':informed_class', $filter_class); + } + if ($filter_id != '') { + $query->bindParam(':informed_id', $filter_id); + } + $query->bindParam(':servicealert_id', $id); + $query->execute(); + if (!$query) { + databaseError($conn->errorInfo()); + return Array(); + } + return $query->fetchAll(); +} + +function deleteInformedAlert($serviceAlertID, $class, $id) { + global $conn; + $query = 'DELETE from servicealerts_informed where servicealert_id = :servicealert_id and informed_class = :informed_class AND informed_id = :informed_id'; + debug($query, 'database'); + $query = $conn->prepare($query); + $query->bindParam(':servicealert_id', $serviceAlertID); + $query->bindParam(':informed_class', $class); + $query->bindParam(':informed_id', $id); + $query->execute(); + print_r($conn->errorInfo()); + if (!$query) { + databaseError($conn->errorInfo()); + return Array(); + } return null; - } -function addInformedAlert($serviceAlertID, $class, $id, $action) -{ - global $conn; - $query = 'INSERT INTO servicealerts_informed (servicealert_id , informed_class , informed_id) VALUES(:servicealert_id ,:informed_class, :informed_id)'; - debug($query, "database"); - $query = $conn -> prepare($query); - $query -> bindParam(":servicealert_id", $serviceAlertID); - $query -> bindParam(":informed_class", $class); - $query -> bindParam(":informed_id", $id); - $query -> execute(); +} - print_r($conn -> errorInfo()); - if (!$query) { - databaseError($conn -> errorInfo()); - return Array(); - } +function addInformedAlert($serviceAlertID, $class, $id, $action) { + global $conn; + $query = 'INSERT INTO servicealerts_informed (servicealert_id , informed_class , informed_id, informed_action) + VALUES(:servicealert_id ,:informed_class, :informed_id, :informed_action)'; + debug($query, 'database'); + $query = $conn->prepare($query); + $query->bindParam(':servicealert_id', $serviceAlertID); + $query->bindParam(':informed_class', $class); + $query->bindParam(':informed_id', $id); + $query->bindParam(':informed_action', $action); + $query->execute(); + + print_r($conn->errorInfo()); + if (!$query) { + databaseError($conn->errorInfo()); + return Array(); + } return null; - - } -?> +} +