/var/www/vhosts/ihelp.ro/httpdocs/vendor/cakephp/cakephp/src/View/Helper
NameSizeModeActions
BreadcrumbsHelper.php133670644editdlrm
FlashHelper.php32940644editdlrm
FormHelper.php953450644editdlrm
HtmlHelper.php399600644editdlrm
IdGeneratorTrait.php27220644editdlrm
NumberHelper.php92250644editdlrm
PaginatorHelper.php460730644editdlrm
TextHelper.php155030644editdlrm
TimeHelper.php154970644editdlrm
UrlHelper.php95240644editdlrm
Edit: /var/www/vhosts/ihelp.ro/httpdocs/vendor/cakephp/cakephp/src/View/Helper/UrlHelper.php (9524B)
*/ protected $_defaultConfig = [ 'assetUrlClassName' => Asset::class, ]; /** * Asset URL engine class name * * @var string * @psalm-var class-string<\Cake\Routing\Asset> */ protected $_assetUrlClassName; /** * Check proper configuration * * @param array $config The configuration settings provided to this helper. * @return void */ public function initialize(array $config): void { parent::initialize($config); $engineClassConfig = $this->getConfig('assetUrlClassName'); /** @psalm-var class-string<\Cake\Routing\Asset>|null $engineClass */ $engineClass = App::className($engineClassConfig, 'Routing'); if ($engineClass === null) { throw new CakeException(sprintf('Class for %s could not be found', $engineClassConfig)); } $this->_assetUrlClassName = $engineClass; } /** * Returns a URL based on provided parameters. * * ### Options: * * - `escape`: If false, the URL will be returned unescaped, do only use if it is manually * escaped afterwards before being displayed. * - `fullBase`: If true, the full base URL will be prepended to the result * * @param array|string|null $url Either a relative string URL like `/products/view/23` or * an array of URL parameters. Using an array for URLs will allow you to leverage * the reverse routing features of CakePHP. * @param array $options Array of options. * @return string Full translated URL with base path. */ public function build($url = null, array $options = []): string { $defaults = [ 'fullBase' => false, 'escape' => true, ]; $options += $defaults; $url = Router::url($url, $options['fullBase']); if ($options['escape']) { /** @var string $url */ $url = h($url); } return $url; } /** * Returns a URL from a route path string. * * ### Options: * * - `escape`: If false, the URL will be returned unescaped, do only use if it is manually * escaped afterwards before being displayed. * - `fullBase`: If true, the full base URL will be prepended to the result * * @param string $path Cake-relative route path. * @param array $params An array specifying any additional parameters. * Can be also any special parameters supported by `Router::url()`. * @param array $options Array of options. * @return string Full translated URL with base path. * @see \Cake\Routing\Router::pathUrl() */ public function buildFromPath(string $path, array $params = [], array $options = []): string { return $this->build(['_path' => $path] + $params, $options); } /** * Generates URL for given image file. * * Depending on options passed provides full URL with domain name. Also calls * `Helper::assetTimestamp()` to add timestamp to local files. * * @param string $path Path string. * @param array $options Options array. Possible keys: * `fullBase` Return full URL with domain name * `pathPrefix` Path prefix for relative URLs * `plugin` False value will prevent parsing path as a plugin * `timestamp` Overrides the value of `Asset.timestamp` in Configure. * Set to false to skip timestamp generation. * Set to true to apply timestamps when debug is true. Set to 'force' to always * enable timestamping regardless of debug value. * @return string Generated URL */ public function image(string $path, array $options = []): string { $options += ['theme' => $this->_View->getTheme()]; return h($this->_assetUrlClassName::imageUrl($path, $options)); } /** * Generates URL for given CSS file. * * Depending on options passed provides full URL with domain name. Also calls * `Helper::assetTimestamp()` to add timestamp to local files. * * @param string $path Path string. * @param array $options Options array. Possible keys: * `fullBase` Return full URL with domain name * `pathPrefix` Path prefix for relative URLs * `ext` Asset extension to append * `plugin` False value will prevent parsing path as a plugin * `timestamp` Overrides the value of `Asset.timestamp` in Configure. * Set to false to skip timestamp generation. * Set to true to apply timestamps when debug is true. Set to 'force' to always * enable timestamping regardless of debug value. * @return string Generated URL */ public function css(string $path, array $options = []): string { $options += ['theme' => $this->_View->getTheme()]; return h($this->_assetUrlClassName::cssUrl($path, $options)); } /** * Generates URL for given javascript file. * * Depending on options passed provides full URL with domain name. Also calls * `Helper::assetTimestamp()` to add timestamp to local files. * * @param string $path Path string. * @param array $options Options array. Possible keys: * `fullBase` Return full URL with domain name * `pathPrefix` Path prefix for relative URLs * `ext` Asset extension to append * `plugin` False value will prevent parsing path as a plugin * `timestamp` Overrides the value of `Asset.timestamp` in Configure. * Set to false to skip timestamp generation. * Set to true to apply timestamps when debug is true. Set to 'force' to always * enable timestamping regardless of debug value. * @return string Generated URL */ public function script(string $path, array $options = []): string { $options += ['theme' => $this->_View->getTheme()]; return h($this->_assetUrlClassName::scriptUrl($path, $options)); } /** * Generates URL for given asset file. * * Depending on options passed provides full URL with domain name. Also calls * `Helper::assetTimestamp()` to add timestamp to local files. * * ### Options: * * - `fullBase` Boolean true or a string (e.g. https://example) to * return full URL with protocol and domain name. * - `pathPrefix` Path prefix for relative URLs * - `ext` Asset extension to append * - `plugin` False value will prevent parsing path as a plugin * - `timestamp` Overrides the value of `Asset.timestamp` in Configure. * Set to false to skip timestamp generation. * Set to true to apply timestamps when debug is true. Set to 'force' to always * enable timestamping regardless of debug value. * * @param string $path Path string or URL array * @param array $options Options array. * @return string Generated URL */ public function assetUrl(string $path, array $options = []): string { $options += ['theme' => $this->_View->getTheme()]; return h($this->_assetUrlClassName::url($path, $options)); } /** * Adds a timestamp to a file based resource based on the value of `Asset.timestamp` in * Configure. If Asset.timestamp is true and debug is true, or Asset.timestamp === 'force' * a timestamp will be added. * * @param string $path The file path to timestamp, the path must be inside `App.wwwRoot` in Configure. * @param string|bool $timestamp If set will overrule the value of `Asset.timestamp` in Configure. * @return string Path with a timestamp added, or not. */ public function assetTimestamp(string $path, $timestamp = null): string { return h($this->_assetUrlClassName::assetTimestamp($path, $timestamp)); } /** * Checks if a file exists when theme is used, if no file is found default location is returned * * @param string $file The file to create a webroot path to. * @return string Web accessible path to file. */ public function webroot(string $file): string { $options = ['theme' => $this->_View->getTheme()]; return h($this->_assetUrlClassName::webroot($file, $options)); } /** * Event listeners. * * @return array */ public function implementedEvents(): array { return []; } }