src/Route/CmsPageRouter.php
protected function decorateUrl($url, array $parameters = [], $referenceType = self::ABSOLUTE_PATH)
    {
        if (!$this->context) {
            throw new \RuntimeException('No context associated to the CmsPageRouter');
        }

        $schemeAuthority = '';
        if ($this->context->getHost() && (self::ABSOLUTE_URL === $referenceType || self::NETWORK_PATH === $referenceType)) {
            $port = '';
            if ('http' === $this->context->getScheme() && 80 !== $this->context->getHttpPort()) {
                $port = sprintf(':%s', $this->context->getHttpPort());
            } elseif ('https' === $this->context->getScheme() && 443 !== $this->context->getHttpsPort()) {
                $port = sprintf(':%s', $this->context->getHttpsPort());
            }

            $schemeAuthority = self::NETWORK_PATH === $referenceType ? '//' : sprintf('%s://', $this->context->getScheme());
            $schemeAuthority = sprintf('%s%s%s', $schemeAuthority, $this->context->getHost(), $port);
        }

        if (self::RELATIVE_PATH === $referenceType) {
            $url = $this->getRelativePath($this->context->getPathInfo(), $url);
        } else {
            $url = sprintf('%s%s%s', $schemeAuthority, $this->context->getBaseUrl(), $url);
        }

        if (\count($parameters) > 0) {
            return sprintf('%s?%s', $url, http_build_query($parameters, '', '&'));
        }

        return $url;
    }
protected function decorateUrl($url, array $parameters = [], $referenceType = self::ABSOLUTE_PATH)
    {
        if (!$this->context) {
            throw new \RuntimeException('No context associated to the CmsPageRouter');
        }

        $schemeAuthority = '';
        if ($this->context->getHost() && (self::ABSOLUTE_URL === $referenceType || self::NETWORK_PATH === $referenceType)) {
            $port = '';
            if ('http' === $this->context->getScheme() && 80 !== $this->context->getHttpPort()) {
                $port = sprintf(':%s', $this->context->getHttpPort());
            } elseif ('https' === $this->context->getScheme() && 443 !== $this->context->getHttpsPort()) {
                $port = sprintf(':%s', $this->context->getHttpsPort());
            }

            $schemeAuthority = self::NETWORK_PATH === $referenceType ? '//' : sprintf('%s://', $this->context->getScheme());
            $schemeAuthority = sprintf('%s%s%s', $schemeAuthority, $this->context->getHost(), $port);
        }

        if (self::RELATIVE_PATH === $referenceType) {
            $url = $this->getRelativePath($this->context->getPathInfo(), $url);
        } else {
            $url = sprintf('%s%s%s', $schemeAuthority, $this->context->getBaseUrl(), $url);
        }

        if (\count($parameters) > 0) {
            return sprintf('%s?%s', $url, http_build_query($parameters, '', '&'));
        }

        return $url;
    }
protected function decorateUrl ( $ url , array $ parameters = [ ] , $ referenceType = self :: ABSOLUTE_PATH ) { if ( ! $ this -> context ) { throw new \ RuntimeException ( 'No context associated to the CmsPageRouter' ) ; } $ schemeAuthority = '' ; if ( $ this -> context -> getHost ( ) && ( self :: ABSOLUTE_URL === $ referenceType || self :: NETWORK_PATH === $ referenceType ) ) { $ port = '' ; if ( 'http' === $ this -> context -> getScheme ( ) && 80 !== $ this -> context -> getHttpPort ( ) ) { $ port = sprintf ( ':%s' , $ this -> context -> getHttpPort ( ) ) ; } elseif ( 'https' === $ this -> context -> getScheme ( ) && 443 !== $ this -> context -> getHttpsPort ( ) ) { $ port = sprintf ( ':%s' , $ this -> context -> getHttpsPort ( ) ) ; } $ schemeAuthority = self :: NETWORK_PATH === $ referenceType ? '//' : sprintf ( '%s://' , $ this -> context -> getScheme ( ) ) ; $ schemeAuthority = sprintf ( '%s%s%s' , $ schemeAuthority , $ this -> context -> getHost ( ) , $ port ) ; } if ( self :: RELATIVE_PATH === $ referenceType ) { $ url = $ this -> getRelativePath ( $ this -> context -> getPathInfo ( ) , $ url ) ; } else { $ url = sprintf ( '%s%s%s' , $ schemeAuthority , $ this -> context -> getBaseUrl ( ) , $ url ) ; } if ( \ count ( $ parameters ) > 0 ) { return sprintf ( '%s?%s' , $ url , http_build_query ( $ parameters , '' , '&' ) ) ; } return $ url ; }
Decorates an URL with url context and query.

@param string      $url           Relative URL
@param array       $parameters    An array of parameters
@param bool|string $referenceType The type of reference to be generated (one of the constants)

@throws \RuntimeException

@return string
Decorates an URL with url context and query .