$gids[] = $row[0]['guideline_id']; } } // set to default guideline if no input guidelines if (!is_array($gids)) { $gids[] = DEFAULT_GUIDELINE; } // retrieve user link ID $userLinksDAO = new UserLinksDAO(); $user_link_id = $userLinksDAO->getUserLinkID($user_id, $uri, $gids); // set new session id $userLinksDAO->setLastSessionID($user_link_id, Utility::getSessionID()); // validating uri content $validate_content = @file_get_contents($uri); if (isset($validate_content)) { $aValidator = new AccessibilityValidator($validate_content, $gids, $uri); $aValidator->setLineOffset($offset); $aValidator->validate(); $errors = $aValidator->getValidationErrorRpt(); // save errors into user_decisions // $userDecisionsDAO = new UserDecisionsDAO(); // $userDecisionsDAO->saveErrors($user_link_id, $errors); if ($output == 'html') { // generate html output $htmlWebServiceOutput = new HTMLWebServiceOutput($aValidator, $user_link_id, $gids); echo $htmlWebServiceOutput->getWebServiceOutput(); } if ($output == 'rest') { // generate html output $restWebServiceOutput = new RESTWebServiceOutput($errors, $user_link_id, $gids); header('Content-type: text/xml');
$css = $cssValidator->getValidationRptArray(); } $error_nr_css = $cssValidator->getNumOfValidateError(); if ($cssValidator->containErrors()) { $css_error = $cssValidator->getErrorMsg(); } } else { // css validator is only available at validating url, not at validating a uploaded file or pasted html $css_error = _AC("css_validator_unavailable"); } } if ($problem != 'html' && $problem != 'css') { include_once AC_INCLUDE_PATH . 'classes/AccessibilityValidator.class.php'; include_once AC_INCLUDE_PATH . 'classes/FileExportRptGuideline.class.php'; include_once AC_INCLUDE_PATH . 'classes/FileExportRptLine.class.php'; $aValidator = new AccessibilityValidator($validate_content, $_gids, $uri); $aValidator->validate(); $errors = $aValidator->getValidationErrorRpt(); } // get page title $title = ''; if (preg_match("/<title>(.+)<\\/title>/siU", $validate_content, $matches)) { $title = $matches[1]; } $known = array(); $likely = array(); $potential = array(); $error_nr_known = 0; $error_nr_likely = 0; $error_nr_potential = 0; // create file depending on user choice
if (isset($validate_content) && !Utility::hasEnoughMemory(strlen($validate_content))) { $msg->addError('NO_ENOUGH_MEMORY'); $has_enough_memory = false; } // A boolean flag that decides the show/hide of the AChecker introduction section. // This section is displayed when the AChecker index page is visited and no validation has been performed yet. $show_achecker_whatis = false; // validation and display result if ($_POST["validate_uri"] || $_POST["validate_file"] || $_POST["validate_content"] || $_POST["validate_paste"]) { // check accessibility include AC_INCLUDE_PATH . "classes/AccessibilityValidator.class.php"; if ($_POST["validate_uri"]) { $check_uri = $_POST['uri']; } if (isset($validate_content) && $has_enough_memory) { $aValidator = new AccessibilityValidator($validate_content, $_gids, $check_uri); $aValidator->validate(); } // end of checking accessibility } else { $show_achecker_whatis = true; } $has_errors = false; // A flag detecting if there's any error occurred if ($msg->containsErrors()) { $has_errors = true; } // display initial validation form: input URI or upload a html file include "checker_input_form.php"; // display validation results if (!$has_errors && (isset($aValidator) || isset($htmlValidator))) {