protected function _initialize() { //$this->_kiwi_module = new Kiwi_News_Module($this->mid, $this->name, $this->ngid, $this->newsgroup, $this->size, $this->listmode, $this->pagination, $this->detailpage); $this->_kiwi_module = Kiwi_Object_Manager::load('Kiwi_News_Module', array($this->mid, $this->name, $this->ngid, $this->newsgroup, $this->size, $this->listmode, $this->pagination, $this->detailpage)); // allows caching // non-overridable attributes (module attributes have priority) $attr_no = array('mid' => 'id', 'name' => 'name', 'ngid' => 'ngid', 'mactive' => 'active'); foreach ($attr_no as $attr => $mattr) { if ($this->_kiwi_module->{$mattr} !== null) { $this->{$attr} = $this->_kiwi_module->{$mattr}; } } // overridable attributes (tag attributes have priority) $attr_o = array('size' => 'size', 'listmode' => 'listmode', 'pagination' => 'pagination', 'detailpage' => 'detailpage'); foreach ($attr_o as $attr => $mattr) { if ($this->{$attr} === null) { $this->{$attr} = $this->_kiwi_module->{$mattr}; } } // default values of attributes $defaults = array('size' => 5, 'pagination' => 'both', 'page' => 1, 'ns' => '', 'images' => ''); foreach ($defaults as $attr => $val) { if ($this->{$attr} === null) { $this->{$attr} = $val; } } // default for nsd is value of ns if ($this->nsd === null) { $this->nsd = $this->ns; } if ($this->ngid === null && $this->newsgroup === null) { throw new Data_Insufficient_Exception('ngid or newsgroup'); } parent::_initialize(); }
protected function _initialize() { //$this->_do = new Kiwi_Slide; $this->_do = Kiwi_Object_Manager::load('Kiwi_Slide'); // allows caching parent::_initialize(); }
protected function _initialize() { if ($this->group === null) { throw new Data_Insufficient_Exception('group'); } //$this->_kiwi_object = new Kiwi_Banners($this->group); $this->_kiwi_object = Kiwi_Object_Manager::load('Kiwi_Banners', array($this->group)); // allows caching parent::_initialize(); }
protected function _initialize() { //$module = new Kiwi_Text_Module($this->mid, $this->name); $module = Kiwi_Object_Manager::load('Kiwi_Text_Module', array($this->mid, $this->name)); // allows caching // non-overridable attributes (module attributes have priority) $attr_no = array('mid' => 'id', 'name' => 'name', 'mactive' => 'active'); foreach ($attr_no as $attr => $mattr) { if ($module->{$mattr} !== null) { $this->{$attr} = $module->{$mattr}; } } // overridable attributes (tag attributes have priority) $attr_o = array('title' => 'name', 'content' => 'content'); foreach ($attr_o as $attr => $mattr) { if ($this->{$attr} === null) { $this->{$attr} = $module->{$mattr}; } } parent::_initialize(); }
protected function updateTemplate_CatalogProduct($p, array &$produkt_fields, array $p_vzor) { $vzor_fields = array(); $vzor_group = new HTML_Group(); $zaklad_vzory = $this->_index->zaklad_vzory; if (empty($zaklad_vzory)) { throw new Template_Element_Missing_Exception('zaklad_vzory'); } if (count($zaklad_vzory) !== 1) { throw new Template_Invalid_Structure_Exception("The \"zaklad_vzory\" element duplicity"); } $vzor_group->add(clone $zaklad_vzory[0]); foreach ($p_vzor as $elem) { $vzor_clone = clone $elem; $vzor_fields[$vzor_clone->specification] = $vzor_clone; $vzor_group->add($vzor_clone); } $index = new HTML_Indexer($vzor_group, 'eid', false); if ($p !== null) { //$po = new Kiwi_Product($p->PID); $po = Kiwi_Object_Manager::load('Kiwi_Product', array($p->PID)); // allows caching // generování řádků popisujících umístění produktu v katalogu $this->updateTemplate_Location($index, $po); // generování názvu produktu $this->updateTemplate_Title($index, $po); // generování kódu produktu $this->updateTemplate_Code($index, $po); // generování fotografie $this->updateTemplate_CatalogPhoto($index, $po); // generování odkazu na detail produktu $this->updateTemplate_DetailLink($index, $po); // generování dalších fotografií $this->updateTemplate_AdditionalPhotos($index, $po); // generování ilustrativních fotografií $this->updateTemplate_IllustrativePhotos($index, $po); // generování fotografií produktů z kolekce $this->updateTemplate_CollectionPhotos($index, $po); // generování příloh $this->updateTemplate_Attachments($index, $po); // generování odkazu pro objednání $this->updateTemplate_OrderLink($index, $po); // generování příznaku novinky $this->updateTemplate_Novelty($index, $po); // generování příznaku akce $this->updateTemplate_Action($index, $po); // generování příznaku slevy $this->updateTemplate_Discount($index, $po); // generování ceny (cen) $this->updateTemplate_Cost($index, $po); // generování popisu $this->updateTemplate_Description($index, $po); // generování vlastností $this->updateTemplate_Properties($index, $po); } foreach ($vzor_fields as $section => $field) { if (array_key_exists($section, $produkt_fields)) { $produkt_fields[$section]->add($field); } } }