/** * Delete a check by check ID * @access public * @param $checkID * @return true / false * @author Cindy Qi Li */ function Delete($checkID) { $checkID = intval($checkID); // delete all languages require_once AC_INCLUDE_PATH . 'classes/DAO/LanguageTextDAO.class.php'; require_once AC_INCLUDE_PATH . 'classes/DAO/CheckPrerequisitesDAO.class.php'; require_once AC_INCLUDE_PATH . 'classes/DAO/TestPassDAO.class.php'; require_once AC_INCLUDE_PATH . 'classes/DAO/SubgroupChecksDAO.class.php'; require_once AC_INCLUDE_PATH . 'classes/DAO/Techniques.class.php'; require_once AC_INCLUDE_PATH . 'classes/DAO/CheckExamplesDAO.class.php'; $langTextDAO = new LanguageTextDAO(); $row = $this->getCheckByID($checkID); if ($row['note'] != '') { $langTextDAO->DeleteByVarAndTerm('_check', $row['note']); } if ($row['name'] != '') { $langTextDAO->DeleteByVarAndTerm('_check', $row['name']); } if ($row['err'] != '') { $langTextDAO->DeleteByVarAndTerm('_check', $row['err']); } if ($row['description'] != '') { $langTextDAO->DeleteByVarAndTerm('_check', $row['description']); } if ($row['search_str'] != '') { $langTextDAO->DeleteByVarAndTerm('_check', $row['search_str']); } if ($row['long_description'] != '') { $langTextDAO->DeleteByVarAndTerm('_check', $row['long_description']); } if ($row['rationale'] != '') { $langTextDAO->DeleteByVarAndTerm('_check', $row['rationale']); } if ($row['how_to_repair'] != '') { $langTextDAO->DeleteByVarAndTerm('_check', $row['how_to_repair']); } if ($row['repair_example'] != '') { $langTextDAO->DeleteByVarAndTerm('_check', $row['repair_example']); } if ($row['question'] != '') { $langTextDAO->DeleteByVarAndTerm('_check', $row['question']); } if ($row['decision_pass'] != '') { $langTextDAO->DeleteByVarAndTerm('_check', $row['decision_pass']); } if ($row['decision_fail'] != '') { $langTextDAO->DeleteByVarAndTerm('_check', $row['decision_fail']); } if ($row['test_procedure'] != '') { $langTextDAO->DeleteByVarAndTerm('_check', $row['test_procedure']); } if ($row['test_expected_result'] != '') { $langTextDAO->DeleteByVarAndTerm('_check', $row['test_expected_result']); } if ($row['test_failed_result'] != '') { $langTextDAO->DeleteByVarAndTerm('_check', $row['test_failed_result']); } $checkPrerequisitesDAO = new CheckPrerequisitesDAO(); $checkPrerequisitesDAO->DeleteByCheckID($checkID); $testPassDAO = new TestPassDAO(); $testPassDAO->DeleteByCheckID($checkID); $subgroupChecksDAO = new SubgroupChecksDAO(); $subgroupChecksDAO->DeleteByCheckID($checkID); $techniques = new Techniques(); $techniques->DeleteByCheckID($checkID); $checkExamplesDAO = new CheckExamplesDAO(); $checkExamplesDAO->DeleteByCheckID($checkID); $sql = "DELETE FROM " . TABLE_PREFIX . "checks WHERE check_id=" . $checkID; return $this->execute($sql); }
$checkExamplesDAO = new CheckExamplesDAO(); // handle submit if (isset($_POST['cancel'])) { header('Location: index.php'); exit; } else { if (isset($_POST['save_no_close']) || isset($_POST['save_and_close']) || $_POST['javascript_submit']) { $checksDAO = new ChecksDAO(); if (!isset($check_id)) { $check_id = $checksDAO->Create($_SESSION['user_id'], $_POST['html_tag'], $_POST['confidence'], $_POST['note'], $_POST['name'], $_POST['err'], $_POST['description'], $_POST['search_str'], $_POST['long_description'], $_POST['rationale'], $_POST['how_to_repair'], $_POST['repair_example'], $_POST['question'], $_POST['decision_pass'], $_POST['decision_fail'], $_POST['test_procedure'], $_POST['test_expected_result'], $_POST['test_failed_result'], $_POST['open_to_public']); } else { $checksDAO->Update($check_id, $_SESSION['user_id'], $_POST['html_tag'], $_POST['confidence'], $_POST['note'], $_POST['name'], $_POST['err'], $_POST['description'], $_POST['search_str'], $_POST['long_description'], $_POST['rationale'], $_POST['how_to_repair'], $_POST['repair_example'], $_POST['question'], $_POST['decision_pass'], $_POST['decision_fail'], $_POST['test_procedure'], $_POST['test_expected_result'], $_POST['test_failed_result'], $_POST['open_to_public']); } if (!$msg->containsErrors()) { // re-create check examples $checkExamplesDAO->DeleteByCheckID($check_id); $pass_example_desc = trim($_POST['pass_example_desc']); $pass_example = trim($_POST['pass_example']); $fail_example_desc = trim($_POST['fail_example_desc']); $fail_example = trim($_POST['fail_example']); if ($pass_example_desc != '' || $pass_example != '') { $checkExamplesDAO->Create($check_id, AC_CHECK_EXAMPLE_PASS, $pass_example_desc, $pass_example); } if ($fail_example_desc != '' || $fail_example != '') { $checkExamplesDAO->Create($check_id, AC_CHECK_EXAMPLE_FAIL, $fail_example_desc, $fail_example); } $msg->addFeedback('ACTION_COMPLETED_SUCCESSFULLY'); if (isset($_POST['save_and_close'])) { header('Location: index.php'); } else { header('Location: ' . $_SERVER['PHP_SELF'] . '?id=' . $check_id);