Exemplo n.º 1
0
 /**
  *
  * @param string $string
  * @param string $language
  * @return string
  */
 public function translate($string, $language)
 {
     $key = "{$string}-to-{$language}";
     if ($this->cache->exists($key)) {
         return $this->cache->load($key);
     }
     if ($this->hasTranslate($string, $language)) {
         $strings = $this->getDBStrings($language);
         $string = $strings[$string];
         $this->cache->save($key, $string);
     }
     return $string;
 }
Exemplo n.º 2
0
 /**
  * Load
  * @param string $key
  * @return mixed
  */
 public function load($key)
 {
     if (!$this->exists($key)) {
         return null;
     }
     if ($this->primaryStorage->exists($key)) {
         return $this->primaryStorage->load($key);
     }
     if ($this->secondaryStorage->exists($key)) {
         $object = $this->secondaryStorage->load($key);
         $this->primaryStorage->save($key, $object);
         return $object;
     }
 }
Exemplo n.º 3
0
 /**
  * Constructor
  */
 public function __construct($accessRoleCatalog)
 {
     $this->accessRoleCatalog = $accessRoleCatalog;
     $this->mi = microtime(true);
     if ($this->enableCache) {
         $this->cache = new Storage\File(array(), array('cache_dir' => 'cache/acl'));
         $this->acl = $this->cache->load('acl');
         if (!$this->acl) {
             $this->createAcl();
         }
     } else {
         $this->createAcl();
     }
     $this->mf = microtime(true);
 }
Exemplo n.º 4
0
 /**
  *
  * @param  $menu
  * @param AbstractMenuRenderer $renderer
  * @return string
  */
 public function buildAndRender(AbstractMenuRenderer $renderer)
 {
     $keyStorage = 'menu_html_' . $this->role;
     if ($this->cache->exists($keyStorage)) {
         return $this->cache->load($keyStorage);
     }
     $this->build();
     $html = $this->render($this->getUserMenu(), $renderer);
     if (null == $renderer) {
         $this->cache->save($keyStorage, $html);
     }
     return $html;
 }