public function process()
 {
     try {
         if (array_key_exists("id", $this->form->getControls())) {
             $record = new InquiriesRecord($this->form->getControlByName("id")->getValue());
         } else {
             $record = new InquiriesRecord();
             $record->question = $this->form->getControlByName("question")->getValue();
         }
         $record->is_active = (int) $this->form->getControlByName("is_active")->isSelected();
         $record->store();
         if (!array_key_exists("id", $this->form->getControls())) {
             for ($i = 1; $i <= LBoxConfigManagerProperties::getPropertyContentByName("inquiries_answers_count"); $i++) {
                 if (strlen($this->form->getControlByName("answer-{$i}")->getValue()) < 1) {
                     continue;
                 }
                 $optionsRecords[$i] = new InquiriesOptionsRecord();
                 $optionsRecords[$i]->ref_inquiry = $record->id;
                 $optionsRecords[$i]->answer = $this->form->getControlByName("answer-{$i}")->getValue();
                 $optionsRecords[$i]->store();
             }
         }
         LBoxFront::reload(LBoxFront::getPage()->url . ":" . $record->id);
     } catch (Exception $e) {
         throw $e;
     }
 }
 public function process()
 {
     try {
         $parent = new DiscussionsRecord($this->form->getControlByName("pid")->getValue());
         $record = new DiscussionsRecord();
         $classNameRecord = get_class($record);
         foreach ($this->form->getControls() as $control) {
             if ($control instanceof LBoxFormControlMultiple) {
                 continue;
             }
             if ($control instanceof LBoxFormControlSpamDefense) {
                 continue;
             }
             if ($control->getName() == "pid") {
                 continue;
             }
             if ($control->getName() == eval("return {$classNameRecord}::\$idColName;")) {
                 continue;
             }
             $colName = $control->getName();
             $record->{$colName} = strlen($control->getValue()) > 0 ? $control->getValue() : "<<NULL>>";
         }
         $record->pageId = LBoxFront::getPage()->id;
         $record->store();
         $parent->addChild($record);
         // u odpovedi reloadovat na hlavni vlakno
         if ($parent->hasParent()) {
             LBoxFront::reload(LBoxUtil::getURLWithoutParamsByPattern(array("/" . $this->patternURLParamReplyTo . "/")));
         }
     } catch (Exception $e) {
         throw $e;
     }
 }
 /**
  * getter na fotogalerii
  * @return PhotogalleriesRecord
  */
 protected function getPhotogallery()
 {
     try {
         if (!$this->photoGallery instanceof PhotogalleriesRecord) {
             $this->photoGallery = LBoxFront::getPage()->getRecord();
         }
         if (!$this->photoGallery instanceof PhotogalleriesRecord) {
             $class = get_class($this);
             throw new LBoxExceptionPage("You have to set photogallery database record via setPhotoGalleryRecord() setter before get values via '{$class}' instance!");
         }
         return $this->photoGallery;
     } catch (Exception $e) {
         throw $e;
     }
 }
示例#4
0
 /**
  * zjistuje, jestli je na aktualne zobrazene strance povolen resize
  * @return bool
  */
 public function isAllowedResize()
 {
     try {
         $pagesAllowedResize = LBoxConfigManagerProperties::getPropertyContentByName("metanodes_allow_resize_pages");
         $pagesAllowedResizeArr = explode(" ", $pagesAllowedResize);
         foreach ($pagesAllowedResizeArr as $pageAllowedResize) {
             $pageAllowedResize = trim($pageAllowedResize);
             switch (true) {
                 case strtolower($pageAllowedResize) == "all":
                 case $pageAllowedResize == LBoxFront::getPage()->id:
                     return true;
                     break;
             }
         }
         return false;
     } catch (Exception $e) {
         throw $e;
     }
 }
 public function prepare($name = "", $value = NULL)
 {
     switch ($name) {
         case "title":
             if (!LBoxFront::getPage()->getRecord() instanceof ArticlesRecord) {
                 $class = get_class($this);
                 throw new LBoxExceptionPage("Wrong data returns by LBoxFront::getPage()->getRecord(): " . get_class(LBoxFront::getPage()->getRecord()) . "!");
             }
             $webTitle = LBoxConfigManagerProperties::getInstance()->getPropertyByName("web_title")->getContent();
             $pageTitlePattern = LBoxConfigManagerProperties::getInstance()->getPropertyByName("page_title_pattern_article")->getContent();
             $pageTitle = $pageTitlePattern;
             $pageTitle = str_replace("\$properties_web_title", $webTitle, $pageTitle);
             $pageTitle = str_replace("\$page_title", $value, $pageTitle);
             $pageTitle = str_replace("\$record_name", LBoxFront::getPage()->getRecord()->heading, $pageTitle);
             $pageTitle = str_replace("\$article_name", LBoxFront::getPage()->getRecord()->heading, $pageTitle);
             $pageTitle = trim($pageTitle);
             // v pripade ze mame nakonci samotny oddelovac, odrizneme ho ze stringu
             if (substr($pageTitle, -1) == "|") {
                 $pageTitle = trim(substr($pageTitle, 0, strlen($pageTitle) - 1));
             }
             return $pageTitle;
             break;
         case "description":
             return (string) LBoxFront::getPage()->getRecord()->getParamDirect($name);
             break;
         case "heading":
             return LBoxFront::getPage()->getRecord()->getParamDirect($name);
             break;
         case "nameBreadcrumb":
         case "headingBreadcrumb":
             return $this->instance->heading;
             break;
         default:
             return parent::prepare($name, $value);
     }
 }
示例#6
0
 /**
  * preneseni commit success z formu na validatory
  */
 public function commitProcessSuccess()
 {
     try {
         foreach ($this->validators as $validator) {
             $validator->commitProcessSuccess();
         }
         // uchovat hodnotu pro pripadnou persistenci
         $_SESSION["LBox"]["Forms"][$this->form->getName()]["Controls"][$this->getName()]["value"][LBoxFront::getPage()->url] = $this->getValue();
     } catch (Exception $e) {
         throw $e;
     }
 }
示例#7
0
 /**
  * Vraci config home page
  * @return LBoxConfigItemStructure
  * @throws LBoxException
  */
 public function getHomePageCfg()
 {
     try {
         $page = LBoxConfigManagerStructure::getInstance()->getHomePage();
         if (LBoxFront::getPage()->config->getOutputFilter() instanceof LBoxOutputFilter) {
             $outputFilterClassName = get_class(LBoxFront::getPage()->config->getOutputFilter());
             $page->setOutputFilter(new $outputFilterClassName($page));
         }
         return $page;
     } catch (Exception $e) {
         throw $e;
     }
 }
 /**
  * vraci, jestli je cache na aktualni strance zapnuta
  * @return bool
  */
 public function isCacheON()
 {
     try {
         switch (true) {
             case !LBoxConfigManagerProperties::gpcn("cache_front"):
             case LBoxFront::getPage()->cache_off:
             case LBoxFront::getPage()->cache_only_notlogged && LBoxXTProject::isLogged():
                 return false;
                 break;
             default:
                 return true;
         }
     } catch (Exception $e) {
         throw $e;
     }
 }
示例#9
0
 /**
  * Vrati XT roli uzivatele pokud je j*z zalogovan
  * @param int $loginGroup
  * @return XTRolesRecord
  * @throws LBoxExceptionXT
  */
 public static function getUserXTRoleRecord($loginGroup = 0)
 {
     try {
         if ($loginGroup < 1) {
             if (strlen(LBoxFront::getPage()->xt) > 0) {
                 $loginGroup = LBoxFront::getPage()->xt;
             } else {
                 $loginGroup = 1;
             }
         }
         if (!self::isLogged($loginGroup)) {
             throw new LBoxExceptionXT(LBoxExceptionXT::MSG_NOT_LOGGED, LBoxExceptionXT::CODE_NOT_LOGGED);
         }
         if (array_key_exists(self::getUserXTRecord($loginGroup)->id, self::$xtRoleRecords) && self::$xtRoleRecords[self::getUserXTRecord($loginGroup)->id] instanceof XTRolesRecord) {
             return self::$xtRoleRecords[self::getUserXTRecord($loginGroup)->id];
         }
         return self::$xtRoleRecords[self::getUserXTRecord($loginGroup)->id] = self::getUserXTRecord($loginGroup)->getRole();
     } catch (Exception $e) {
         throw $e;
     }
 }
示例#10
0
 /**
  * Vraci aktualni stranku, nebo NULL pokud jde o 404
  * @return LBoxPage
  */
 protected function getPage()
 {
     try {
         // pokud je aktualni stranka 404, tak vracet NULL, aby byl formular nastaven na vytvoreni nove stranky
         return LBoxFront::getPage()->id == LBoxConfigSystem::getInstance()->getParamByPath("pages/page404") ? NULL : LBoxFront::getPage();
     } catch (Exception $e) {
         throw $e;
     }
 }
示例#11
0
 public function prepare($name = "", $value = NULL)
 {
     switch ($name) {
         case "title":
             $value = strlen($value) > 0 ? $value : $this->prepare("heading", $this->instance->getParamDirect("heading"));
             $webTitle = LBoxConfigManagerProperties::getInstance()->getPropertyByName($this->configParamNameWebTitle)->getContent();
             $homePageTitlePattern = LBoxConfigManagerProperties::getInstance()->getPropertyByName($this->configParamNameHomepageTitle)->getContent();
             $pageTitlePattern = LBoxConfigManagerProperties::getInstance()->getPropertyByName($this->configParamNamePageTitle)->getContent();
             $pageTitle = $this->instance->isHomePage() ? $homePageTitlePattern : $pageTitlePattern;
             $pageTitle = str_replace("\$properties_web_title", $webTitle, $pageTitle);
             $pageTitle = str_replace("\$page_title", $value, $pageTitle);
             $pageTitle = str_replace("\$article_heading", $this->articleHeading, $pageTitle);
             $pageTitle = trim($pageTitle);
             // v pripade ze mame nakonci samotny oddelovac, odrizneme ho ze stringu
             if (substr($pageTitle, -1) == "|") {
                 $pageTitle = trim(substr($pageTitle, 0, strlen($pageTitle) - 1));
             }
             return $pageTitle;
             break;
         case "titleMenu":
         case "title_menu":
             return strlen($this->instance->getParamDirect("title")) > 0 ? $this->instance->getParamDirect("title") : (strlen($this->instance->name_menu) > 0 ? $this->instance->name_menu : $this->prepare("heading", $this->instance->getParamDirect("heading")));
             break;
         case "nameMenu":
         case "name_menu":
         case "headingMenu":
             return strlen($value) > 0 ? $value : $this->instance->heading;
             break;
         case "nameBreadcrumb":
         case "headingBreadcrumb":
             return strlen($value) > 0 ? $value : $this->instance->name_menu;
             break;
         case "titleWeb":
             return LBoxConfigManagerProperties::getInstance()->getPropertyByName($this->configParamNameWebTitle)->getContent();
             break;
         case "description":
         case "keywords":
             return (string) $value;
             break;
         case "isCurrent":
             return $this->instance->url == LBoxFront::getPage()->url;
             break;
         case "isCurrentBranch":
             if ($this->instance->url == LBoxFront::getPage()->url) {
                 return true;
             }
             $parent = LBoxFront::getPage()->config;
             while ($parent = $parent->getParent()) {
                 if ($parent->url == $this->instance->url) {
                     return true;
                 }
             }
             return false;
             break;
         case "heading":
             return (string) $value;
             break;
         case "name":
             return $this->instance->heading;
             break;
         case "name_menu":
             if (strlen($value) < 1) {
                 $value = $this->instance->name;
             }
             return $value;
             break;
         case "getChildren":
             return $this->instance->getChildNodesIterator();
             break;
         case "rssPage":
             if (strlen($this->instance->rss) < 1) {
                 return NULL;
             } else {
                 return LBoxConfigManagerStructure::getPageById($this->instance->rss);
             }
             break;
         case "in_menu":
             return $this->instance->is_accesible ? $value : false;
             break;
         case "bodyclass":
             return LBoxFront::getDisplayLanguage();
             break;
         case "is_accesible":
             if ($this->instance->superxt == 1) {
                 if (!LBoxXTProject::isLoggedSuperAdmin()) {
                     return false;
                 }
             }
             if ($this->instance->xt == 1) {
                 if (!LBoxXTProject::isLoggedAdmin()) {
                     return false;
                 }
             }
             return true;
             break;
         case "getClass":
             return $this->getClassMenu();
             break;
         case "getClassBreadcrumb":
             return $this->getClassBreadcrumb();
             break;
         default:
             return $value;
     }
 }
示例#12
0
 /**
  * kvuli kompatibilite s LBoxXT::getUserXTRecord() se jmenuje stejne, ale vraci LBoxConfigItemAuthDBFree
  * @param int $loginGroup
  * @return LBoxConfigItemAuthDBFree
  * @throws LBoxExceptionXT
  */
 public static function getUserXTRecord($loginGroup = 0)
 {
     try {
         if ($loginGroup < 1) {
             if (strlen(LBoxFront::getPage()->xt) > 0) {
                 $loginGroup = LBoxFront::getPage()->xt;
             } else {
                 $loginGroup = 1;
             }
         }
         if (!self::isLogged($loginGroup)) {
             throw new LBoxExceptionXT(LBoxExceptionXT::MSG_NOT_LOGGED, LBoxExceptionXT::CODE_NOT_LOGGED);
         }
         if (self::$xtUserRecords[$loginGroup] instanceof LBoxConfigItemAuthDBFree) {
             return self::$xtUserRecords[$loginGroup];
         }
         return self::$xtUserRecords[$loginGroup] = LBoxConfigManagerAuthDBFree::getInstance()->getLoginByName($_SESSION["lbox"][self::SESSION_ARRAY_NAME][$loginGroup]["usernick"]);
     } catch (Exception $e) {
         throw $e;
     }
 }