function DisplayDatesTableBody() { $dates = RetrieveDates(); if ($dates != NULL) { foreach ($dates as $date) { echo "<tr>"; echo "<td>" . $date[DATE_TABLE_DATE_ID] . "</td>"; echo "<td>" . $date[DATE_TABLE_DATE] . "</td>"; echo "<td>" . $date[DATE_TABLE_PUBLIC_HOL_ID] . "</td>"; $pubHolID = $date[DATE_TABLE_PUBLIC_HOL_ID]; $publicHolidayName = ""; if ($pubHolID != NULL) { $publicHoliday = RetrievePublicHolidayByID($pubHolID); $publicHolidayName = $publicHoliday[PUB_HOL_NAME]; } echo "<td>" . $publicHolidayName . "</td>"; echo "</tr>"; } } }
function DeletePublicHoliday($ID) { $result = 0; $record = RetrievePublicHolidayByID($ID); if ($record != NULL) { $date = RetrieveDateByID($record[PUB_HOL_DATE_ID]); $date[DATE_TABLE_PUBLIC_HOL_ID] = NULL; UpdateDate($date); $sql = "DELETE FROM publicHolidayTable WHERE publicHolidayID=" . $ID . ";"; $result = performSQL($sql); } GenerateStatus(true, "Record successfully deleted."); return $result; }
} if ($_GET["ID"] != NULL) { $record = RetrievePublicHolidayByID($_GET["ID"]); $date = RetrieveDateByID($record[PUB_HOL_DATE_ID]); } if (isset($_POST["cancel"])) { $url = "Location:adminPublicHolidays.php"; header($url); } if (isset($_POST["update"])) { $record[PUB_HOL_ID] = $_GET["ID"]; $record[PUB_HOL_NAME] = $_POST["name"]; $filter[DATE_TABLE_DATE] = $_POST["date"]; $dates = RetrieveDates($filter); $date = $dates[0]; $currentRecord = RetrievePublicHolidayByID($_GET["ID"]); if ($currentRecord != NULL) { if ($currentRecord[PUB_HOL_DATE_ID] != $date[DATE_TABLE_DATE_ID]) { //Date has changed, so remove the public holiday ID from the old //date record and add to the new date record. $oldDate = RetrieveDateByID($currentRecord[PUB_HOL_DATE_ID]); $oldDate[DATE_TABLE_PUBLIC_HOL_ID] = NULL; UpdateDate($oldDate); } } $record[PUB_HOL_DATE_ID] = $date[DATE_TABLE_DATE_ID]; $success = UpdatePublicHoliday($record); if ($success) { $url = "Location:adminPublicHolidays.php"; header($url); }
function UpdateDate($fields) { //-------------------------------------------------------------------------------- // Validate Input parameters //-------------------------------------------------------------------------------- $inputIsValid = TRUE; $validID = false; $countOfFields = 0; foreach ($fields as $key => $value) { if ($key == DATE_TABLE_DATE_ID) { $record = RetrieveDateByID($value); if ($record != NULL) { $validID = true; $countOfFields++; } } else { if ($key == DATE_TABLE_DATE) { $countOfFields++; if (!isValidDate($value)) { error_log("Invalid DATE_TABLE_DATE passed to UpdateDate."); $inputIsValid = FALSE; } } else { if ($key == DATE_TABLE_PUBLIC_HOL_ID) { $countOfFields++; if ($value != NULL) { $record = RetrievePublicHolidayByID($value); if ($record == NULL) { error_log("Invalid DATE_TABLE_PUBLIC_HOL_ID passed to UpdateDate."); $inputIsValid = FALSE; } } } else { error_log("Invalid field passed to UpdateDate. {$key}=" . $key); $inputIsValid = FALSE; } } } } if (!$validID) { error_log("No valid ID supplied in call to UpdateDate."); $inputIsValid = FALSE; } if ($countOfFields < 2) { error_log("Insufficent fields supplied in call to UpdateDate."); $inputIsValid = FALSE; } //-------------------------------------------------------------------------------- // Only attempt to update a record in the database if the input parameters are ok. //-------------------------------------------------------------------------------- $success = false; if ($inputIsValid) { $success = performSQLUpdate(DATE_TABLE, DATE_TABLE_DATE_ID, $fields); } return $success; }