Exemple #1
0
 /**
  * Lokalizuje command, za predpokladu, ze preklad existuje.
  *
  * @param string $link
  * @return string
  */
 public static function build($link, $isStatic = FALSE)
 {
     if (FALSE === $isStatic) {
         // Nactem si lokalizovane linky a jejich matchovaci protejsky
         $linkCreator = new Lib_LinkCreator();
         // @todo logovat ktere linky se na dane pageId pouzivaji a cechovat to
         // at se neprovadi tento proces neustale dokola.
         $linkCreator->load();
         foreach ($linkCreator->getLinkPatterns() as $pattern) {
             if (0 < preg_match('@' . $pattern['pattern'] . '@i', $link, $matches)) {
                 array_shift($matches);
                 return self::getWebRoot() . Lib_Tools::mergeCommand($pattern['localize'], $matches);
             }
         }
         return 'Link neni lokalizovan';
     } else {
         return self::getWebRoot() . $link;
     }
 }
Exemple #2
0
 /**
  * Spusti bobra.
  *
  */
 private function getBobr()
 {
     // veskery odeslany obsah zacnem bufferovat
     ob_start();
     echo '<p>Tyto blahy se daji vypnout v configu. Jedna se o debugMode</p>';
     $this->setUser();
     try {
         // Vytvorime si zaklad z url.
         $process = new Bobr_Process();
         print_Re($process);
         if (0 < $process->getPageId()) {
             $page = new Bobr_Page_Page($process->pageId);
             // Nastavime jazyk pro popiskovac a dame mu i informaci o pageId kvuli cachovani
             $description = Bobr_DescriptionList::getInstance($process->getLang(), $process->getPageId());
             // Nastavime jazyk generatoru linku
             Lib_LinkCreator::setLang($process->getLang());
             // To co se do ted vypsalo vypisem pod html kodem.
             $errorOutput = ob_get_contents();
             ob_end_clean();
             $config = new Config();
             $template = Bobr_Page_Template::getInstance();
             $template->setContainerColection($page->getContainerColection())->setCommand($process->getCommand());
             Bobr_Page_Template::add('title', 'Vitej');
             $template->addCssLink($page->getCss());
             $template->load(__WEB_ROOT__ . $config->share . $page->getTemplate(), FALSE);
             echo $template;
         } else {
             throw new Bobr_BobrException('Z nejakeho duvodu se nepovedlo nacist stranku.');
         }
     } catch (Bobr_Page_PageException $e) {
         // Nemuze se vytvorit stranka, vyhodime nejvissi vyjimku.
         throw new Bobr_BobrException($e->getMessage());
     } catch (Bobr_Page_TemplateException $e) {
         throw new Bobr_BobrException($e->getMessage());
     }
     echo $this->getErrorOutput($errorOutput);
 }
Exemple #3
0
 public static function setLang($lang)
 {
     // @todo provadet kontrolu jazyka.
     self::$lang = (string) $lang;
 }