/** * Izgūst saistītās lapas URL * Parametrus HTML tekstā norāda formātā PARAMETRS=VĒRTĪBA, masīvs veidots ar explode pēc = zīmes * * @param Array $val_arr Parametra masīvs * @return string Saistītās lapas URL */ public static function getBlockRelPageUrl($val_arr) { $page_id = GlobalMethods::getBlockParamVal($val_arr); try { $page_row = GlobalMethods::getPageRowByID($page_id, $page_id); return $page_row->url_title; } catch (\Exception $ex) { throw new \Exceptions("Bloka parametrā '" . $val_arr[0] . "' norādīts neeksistējošas lapas identifikators (" . $page_id . ")!"); } }
/** * Izgūst bloka objekta veida parametra vērtību * Parametrus HTML tekstā norāda formātā PARAMETRS=VĒRTĪBA, parametri atdalīti ar | * Parametrus var norādīt jebkādā secībā * * @param string $params Bloka parametri * @return string Bloka objekta tips */ public static function getObjType($params) { $dat_arr = explode('|', $params); foreach ($dat_arr as $item) { $val_arr = explode('=', $item); if ($val_arr[0] == "OBJ") { return GlobalMethods::getBlockParamVal($val_arr); } } throw new \Exception("Bloka parametros (" . $params . ") nav norādīts objekta tips OBJ!"); }
/** * Apstrādā pieprasīto lapu - identificē lapu un nosaka tiesības uz lapu. * Ja lapa identificēta un ir tiesības, tad atgriež HTML * * @param Request $request GET pieprasījuma objekts * @param mixed $id Lapas identifikators (dx_pages lauks id) vai arī unikāls url (dx_pages lauks url_title) * @return Response HTML lapa */ private function processPageById(Request $request, $id) { // identificējam lapu $page_row = GlobalMethods::getPageRowByID($request->fullUrl(), $id); // nosakam tiesības uz lapu $right = Rights::getRightsOnPage($page_row->id); if ($right == null) { throw new Exception("Jums nav nepieciešamo tiesību, lai piekļūtu resursam '" . $request->url() . "'!", "Piekļuve liegta"); } // attēlojam lapu return $this->showPageById($request, $page_row); }
/** * Izgūst bloka parametra vērtības * Parametrus norāda lapas HTML teksta veidā speciālos simbolos [[OBJ=...|SOURCE=...|TITLE=...]] * * @return void */ protected function parseParams() { $dat_arr = explode('|', $this->params); foreach ($dat_arr as $item) { $val_arr = explode('=', $item); if ($val_arr[0] == "SOURCE") { $this->source_id = GlobalMethods::getBlockParamVal($val_arr); } elseif ($val_arr[0] == "TITLE") { $this->block_title = str_replace("_", " ", GlobalMethods::getBlockParamVal($val_arr)); } else { if (strlen($val_arr[0]) > 0) { throw new \Exception("Norādīts blokam neatbilstošs parametra nosaukums (" . $val_arr[0] . ")!"); } } } $this->getEvents(); $this->addJSInclude('mindwo/js/calendar.js'); }
/** * Izgūst bloka parametra vērtības un izpilda aktīvo ziņu izgūšanu masīvā * Parametrus norāda lapas HTML teksta veidā speciālos simbolos [[OBJ=...|SOURCE=...|ARTICLEPAGE=...|TAGSPAGE=...]] * * @return void */ protected function parseParams() { $dat_arr = explode('|', $this->params); foreach ($dat_arr as $item) { $val_arr = explode('=', $item); if ($val_arr[0] == "SOURCE") { $this->source_id = GlobalMethods::getBlockParamVal($val_arr); } else { if ($val_arr[0] == "TYPE") { $this->type_id = GlobalMethods::getBlockParamVal($val_arr); } else { if (strlen($val_arr[0]) > 0) { throw new \Exception("Iezīmju mākoņa blokam norādīts neatbilstošs parametra nosaukums (" . $val_arr[0] . ")!"); } } } } $this->tags_items = $this->getTagsJSON(); $this->addJSInclude('plugins/jq_cloud/dist/jqcloud.min.js'); $this->addJSInclude('js/blocks/cloud.js'); }
/** * Izgūst bloka parametra vērtības un izpilda aktīvo ziņu izgūšanu masīvā * Parametrus norāda lapas HTML teksta veidā speciālos simbolos [OBJ=...|SOURCE=...|ARTICLEPAGE=...] * * @return void */ protected function parseParams() { $dat_arr = explode('|', $this->params); foreach ($dat_arr as $item) { $val_arr = explode('=', $item); if ($val_arr[0] == "SOURCE") { $this->source_id = GlobalMethods::getBlockParamVal($val_arr); } else { if ($val_arr[0] == "ARTICLEPAGE") { $this->article_url = GlobalMethods::getBlockRelPageUrl($val_arr); } else { if ($val_arr[0] == "LABEL_COLOR") { $this->article_url = GlobalMethods::getBlockRelPageUrl($val_arr); } else { if ($val_arr[0] == "TAG_ID") { $this->tag_id = GlobalMethods::getBlockParamVal($val_arr); } else { throw new \Exceptions("Norādīts blokam neatbilstošs parametra nosaukums (" . $val_arr[0] . ")!"); } } } } } $this->articles_items = $this->getArticlesArray(); $this->addJSInclude('plugins/image-slider/js/jssor.slider.min.js'); $this->addJSInclude('js/blocks/toparticles.js'); }