setXMLLocation(); $header = "loadURL: "; $url = $_GET['url']; logMessage("{$header} url={$url}"); $displayResults = ""; $fileExtension = pathinfo($url, PATHINFO_EXTENSION); if ($fileExtension == "xml") { logMessage("{$header} Determined that url: '{$url}' is attempting to " . "point to an xml file."); logMessage("{$header} Try to get local path from url: '{$url}'"); //$localPath = getLocalPathFromURL($url); $localPath = getPathToXMLFile($url); if (!file_exists($localPath)) { logMessage("{$header} Determined the desired file: '{$localPath}' " . "does not exist"); $displayResults = "File does not exist. Please check your path " . "and try again."; } else { logMessage("{$header} Attempt to load '{$localPath}' as xml"); $fileXML = simplexml_load_file($localPath); if ($fileXML != false) { $displayResults = getInnerContent($fileXML); } else { $displayResults = "Error found in the xml file that's " . "intending to be loaded. This can very " . "likely be due to syntax errors. (Remember " . "that the '&' character should be " . "represented as '&')."; } } } else { $url = getSubstringOfAAfterOccuranceOfB(getLocalPathFromURL($url), "/www"); // Redirect to the url that was passed in logMessage("{$header} Since file extension was not xml, redirect to the " . "url that was passed in"); header("HTTP/1.1 307 Temporary Redirect"); header("Location: " . $url); } echo $displayResults;
/** * Takes in a url, determines whether that url is foreign or not * and returns a boolean * * @param string $url * * @author Andrew Darwin <*****@*****.**> */ function is_link_external($url) { global $domainName; global $DEBUG; $header = "is_link_external(): "; logMessage("{$header} Input link = '{$url}'"); $is_external = false; $relativeTeamPathUnderWWW = getAdjustedCurrentDirectory(); logMessage("{$header} relativeTeamPathUnderWWW = " . "'{$relativeTeamPathUnderWWW}'"); $strippedURL = getLocalPathFromURL($url); $strippedURL = stripLeadingSlash($strippedURL); $relativeTeamPathUnderWWW = stripLeadingSlash($relativeTeamPathUnderWWW); if ($DEBUG && isAbsoluteURL($url)) { $prototypeName = getDirectoryNameFromPath($relativeTeamPathUnderWWW); $relativeTeamPathUnderWWW = getSubstringOfABeforeOccuranceOfB($relativeTeamPathUnderWWW, $prototypeName); } logMessage("{$header} Stripped url = '{$strippedURL}'"); if (directoryAIsChildOfDirectoryB($strippedURL, $relativeTeamPathUnderWWW)) { logMessage("{$header} '{$strippedURL}' is a child of " . "'{$relativeTeamPathUnderWWW}'. Set external to false."); $is_external = false; } else { $is_external = true; logMessage("{$header} '{$strippedURL}' is not a child of " . "'{$relativeTeamPathUnderWWW}'. Set external to true."); } return $is_external; }