public static function getSettings($masterComponentClass = null) { $ret = parent::getSettings($masterComponentClass); $ret['generators']['detail']['class'] = 'Kwc_Directories_Item_Directory_Trl_Generator'; $ret['extConfig'] = 'Kwc_Directories_Item_Directory_Trl_ExtConfigEditButtons'; $ret['multiFileUpload'] = false; return $ret; }
public function getSelect() { $select = parent::getSelect(); $s = new Kwf_Model_Select(); $s->whereEquals('category_id', $this->getData()->parent->id); $select->where(new Kwf_Model_Select_Expr_Child_Contains('Categories', $s)); return $select; }
public function getSelect($overrideValues = array()) { $ret = parent::getSelect($overrideValues); $cmp = $this->getData()->chained->getComponent()->getRow()->component; if ($cmp) { $ret->whereEquals('component', $cmp); } return $ret; }
public function getSelect() { $select = parent::getSelect(); if (!$select) { return null; } $limit = Kwc_Abstract::getSetting($this->getData()->chained->componentClass, 'limit'); if ($limit) { $select->limit($limit); } return $select; }
public function getSelect() { $ret = parent::getSelect(); $select = $this->getData()->parent->chained->getGenerator('detail')->getFormattedSelect($this->getData()->parent->chained, array('ignoreVisible' => true)); $model = Kwf_Model_Abstract::getInstance(Kwc_Abstract::getSetting($this->getData()->parent->componentClass, 'childModel')); $visible = $model->hasColumn('visible') ? 'AND visible = 1' : ''; $select->where(new Kwf_Model_Select_Expr_Sql('id IN ( SELECT SUBSTRING(component_id, ' . (strlen($this->getData()->parent->dbId . '_') + 1) . ') FROM ' . $model->getTableName() . ' WHERE component_id LIKE ' . Kwf_Registry::get('db')->quote(str_replace('_', '\\_', $this->getData()->parent->dbId . '_') . '%') . ' ' . $visible . ' )')); $dependentModel = Kwc_Abstract::getSetting($this->getData()->chained->componentClass, 'dependentModel'); if (!$dependentModel) { throw new Kwf_Exception('Set dependentModel for correct grouping'); } $ret->where(new Kwf_Model_Select_Expr_Child_Contains($dependentModel, $select)); $ret->order('pos', 'ASC'); return $ret; }