/** * Determine if the the passed url is external to the current running platform * * @param RokUpdater_Uri $uri * * @return mixed */ public function isExternal($uri) { if (is_string($uri)) { $uri = new RokUpdater_Uri($uri); } if (@file_exists($uri->getComponents(RokUpdater_Uri_Components::PATH, RokUpdater_Uri_Builder::FORMAT_RAW))) { return false; } //if the url does not have a scheme must be internal if (is_null($uri->getHost())) { return false; } if ($uri->getHost() == $this->site_uri->getHost()) { if ($uri->getPort() === RokUpdater_Uri::PORT_UNDEFINED) { return false; } if ($uri->getPort() === $this->site_uri->getPort()) { return false; } } // if its a vfs url its a unit test and local if ($uri->getScheme() == 'vfs') { return false; } //the url has a host and it isn't internal return true; }