| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970 | <?php/** * * PHP Pro Bid $Id$ CXDHlInlrvmyqFCA1iYWVGyijIcOwxeEZp6enK5w9rc= * * @link        http://www.phpprobid.com * @copyright   Copyright (c) 2015 Online Ventures Software & CodeCube SRL * @license     http://www.phpprobid.com/license Commercial License * * @version     7.5 *//** * url view helper * * IMPORTANT: dynamic routes will be set by slugs */namespace Ppb\View\Helper;use Cube\Controller\Front,    Cube\View\Helper\Url as UrlHelper;class Url extends UrlHelper{    /**     *     * force all urls to redirect to the site     *     * @var string     */    private $_sitePath = null;    public function __construct($sitePath)    {        $this->_sitePath = $sitePath;    }    /**     *     * create an url based on a set of params and the router object     * 7.5: added workaround for key/value pairs for which the cleaned value results in an empty string     *     * @param string|array $params       a string or an array of params     * @param string       $name         the name of the specific route to use     * @param bool         $addGetParams whether to attach params resulted from a previous get operation to the url     * @param array        $skipParams   an array of params to be omitted when constructing the url     * @param bool         $addBaseUrl   flag to add the base url param to the assembled route     * @param bool         $cleanString  if true, will clean values of get variables (only if params is an array)     *     * @return string                   the url of the link href attribute     */    public function url($params, $name = null, $addGetParams = false, array $skipParams = null, $addBaseUrl = true, $cleanString = true)    {        $router = Front::getInstance()->getRouter();        if (is_array($params) &&            $cleanString === true        ) {            foreach ($params as $key => $value) {                $params[$key] = self::cleanString($value);            }        }        return (($addBaseUrl) ? $this->_sitePath : '') . $router->assemble($params, $name, false, $addGetParams, $skipParams);    }}
 |