public function getTemplateCacheKey(Template $template, $globals)
    {
        $locals = $template->getLocals();

        $cachekey = '';

        if($template->isTopTemplate())
            $cachekey .= $this->Request->getAdjustedRequestURI();
        else
            $cachekey .= $template->getContentType().$template->getName();

        $cacheParams = array();

        // any locals that aren't globals
        foreach ($locals as $name => $value) {
            if (!is_array($value) && !array_key_exists($name, $globals) &&
             !preg_match("/^[A-Z\-\_0-9]+$/", $name) &&
             !preg_match("/\-\d+$/", $name)) {
                $cacheParams[$name] = $value;
            }
        }

        if(isset($cacheParams['UseQueryStringInCacheKey']) && StringUtils::strToBool($cacheParams['UseQueryStringInCacheKey']) == true)
        {
            foreach ($_GET as $name => $value) {
                if (!is_array($value))
                    $cacheParams['q_'.$name] = $value;
            }
        }

        $cachekey .= '?';
        if (!empty($cacheParams)) {
            ksort($cacheParams);
            foreach ($cacheParams as $n => $v) {
                $cachekey .= $n.'='.substr($v,0,255).'&';
            }
        }

        $cachekey = rtrim($cachekey, '&');
        $this->Logger->debug('Cache Key ['.$cachekey.']');

        return $cachekey;
    }
public function getTemplateCacheKey(Template $template, $globals)
    {
        $locals = $template->getLocals();

        $cachekey = '';

        if($template->isTopTemplate())
            $cachekey .= $this->Request->getAdjustedRequestURI();
        else
            $cachekey .= $template->getContentType().$template->getName();

        $cacheParams = array();

        // any locals that aren't globals
        foreach ($locals as $name => $value) {
            if (!is_array($value) && !array_key_exists($name, $globals) &&
             !preg_match("/^[A-Z\-\_0-9]+$/", $name) &&
             !preg_match("/\-\d+$/", $name)) {
                $cacheParams[$name] = $value;
            }
        }

        if(isset($cacheParams['UseQueryStringInCacheKey']) && StringUtils::strToBool($cacheParams['UseQueryStringInCacheKey']) == true)
        {
            foreach ($_GET as $name => $value) {
                if (!is_array($value))
                    $cacheParams['q_'.$name] = $value;
            }
        }

        $cachekey .= '?';
        if (!empty($cacheParams)) {
            ksort($cacheParams);
            foreach ($cacheParams as $n => $v) {
                $cachekey .= $n.'='.substr($v,0,255).'&';
            }
        }

        $cachekey = rtrim($cachekey, '&');
        $this->Logger->debug('Cache Key ['.$cachekey.']');

        return $cachekey;
    }
public function getTemplateCacheKey ( Template $ template , $ globals ) { $ locals = $ template -> getLocals ( ) ; $ cachekey = '' ; if ( $ template -> isTopTemplate ( ) ) $ cachekey .= $ this -> Request -> getAdjustedRequestURI ( ) ; else $ cachekey .= $ template -> getContentType ( ) . $ template -> getName ( ) ; $ cacheParams = array ( ) ; // any locals that aren't globals foreach ( $ locals as $ name => $ value ) { if ( ! is_array ( $ value ) && ! array_key_exists ( $ name , $ globals ) && ! preg_match ( "/^[A-Z\-\_0-9]+$/" , $ name ) && ! preg_match ( "/\-\d+$/" , $ name ) ) { $ cacheParams [ $ name ] = $ value ; } } if ( isset ( $ cacheParams [ 'UseQueryStringInCacheKey' ] ) && StringUtils :: strToBool ( $ cacheParams [ 'UseQueryStringInCacheKey' ] ) == true ) { foreach ( $ _GET as $ name => $ value ) { if ( ! is_array ( $ value ) ) $ cacheParams [ 'q_' . $ name ] = $ value ; } } $ cachekey .= '?' ; if ( ! empty ( $ cacheParams ) ) { ksort ( $ cacheParams ) ; foreach ( $ cacheParams as $ n => $ v ) { $ cachekey .= $ n . '=' . substr ( $ v , 0 , 255 ) . '&' ; } } $ cachekey = rtrim ( $ cachekey , '&' ) ; $ this -> Logger -> debug ( 'Cache Key [' . $ cachekey . ']' ) ; return $ cachekey ; }
Returns a cacheKey for the specified Template

@param Template $template The template to generate the cacheKey for
@param array    $globals  An array of globals set on this template

@return string The cache key
Returns a cacheKey for the specified Template