public function setUrl(Url $url) { $address = $url->getUrl(); $baseUrl = $this->request->getCurrentRequest()->getSchemeAndHttpHost() . $this->request->getCurrentRequest()->getScriptName(); $baseUrlEscapeQuote = preg_quote($baseUrl); $url->setInternalUrl(false); if (preg_match("#{$baseUrlEscapeQuote}#", $address)) { $url->setUrl(substr($address, strlen($baseUrl))); $url->setInternalUrl(true); } return $url; }
/** * @DI\Observe("copy_hevinci_url") * * @param CopyResourceEvent $event */ public function onCopy(CopyResourceEvent $event) { $resource = $event->getResource(); $copy = new Url(); $copy->setName($resource->getName()); $copy->setUrl($resource->getUrl()); $copy->setInternalUrl($resource->getInternalUrl()); $event->setCopy($copy); $event->stopPropagation(); }