private function setTeamsTable() { $model = new Model_TeamsModel(); $model->addQuery('select', array('table' => $model->getTableName())); $groupId = $this->getGroupId(); if (is_numeric($groupId)) { $model->addQuery('where', array('where_condition' => 'groups_id_FK=' . $groupId)); } $model->addQuery('order', array('order' => implode($model->getPrimaryKeys(), ",") . ' DESC')); $teamsCollection = new Core_Model_Adapter_ModelCollection(); $teamsCollection->getModelCollection($model); $this->teamsTable->setData($teamsCollection->toArray()); $this->teamsTable->addColumn(array('key' => 'teams_id', 'label' => 'ID')); $this->teamsTable->addColumn(array('key' => 'team_name', 'label' => 'Name')); }
private function setTeamsTablePanel() { $table = $this->teamsTableWithPanel->getTable(); $model = new Model_TeamsModel(); $model->addQuery('select', array('table' => $model->getTableName())); $model->addQuery('order', array('order' => implode($model->getPrimaryKeys(), ",") . ' DESC')); $model->addQuery('limit', array('limit' => 20)); $this->teamsTableWithPanel->setModel($model); $table->addColumn(array('key' => 'teams_id', 'label' => 'ID')); $table->addColumn(array('key' => 'team_name', 'label' => 'Name')); $groupsModel = new Model_GroupsModel(); $groupsModel->addQuery('select', array('table' => $groupsModel->getTableName())); $groupsCollection = new Core_Model_Adapter_ModelCollection(); $groupsCollectionData = $groupsCollection->getModelCollection($groupsModel); $table->addColumn('{key:"groups_id_FK",label:"Group",allowHTML:true,formatter:' . $table->getFormatter("selectFromModel", array('values' => $groupsCollectionData, 'value' => 'groups_id', 'label' => 'name_of_group', 'attributes' => array('name' => 'model[' . $this->teamsTableWithPanel->getModelName() . '][groups_id_FK]'))) . '}', false, 'groups'); $select = new Extension_View_Html_Form_Elements_Select(); $select->setModel($groupsCollection->toArray()); $select->setAttribute('name', 'groups_id_FK'); $select->setOptionLabelKey('name_of_group'); $select->setOptionValueKey('groups_id'); $this->teamsTableWithPanel->addFilter($select); }