public function getBodyAttributes($data) { if (!isset($data[$this->option[self::ID]]) && !is_null($data[$this->option[self::ID]])) { throw new Grid_Exception('Column "' . $this->option[self::ID] . '" does not exist in data.'); } $class = 'button-component'; $exception = 'Option \\DataGrid\\StatusColumn::BUTTONS must be array contains instances of Components\\StatusButton.'; if (!is_array($this->option[self::BUTTONS])) { throw new Grid_Exception($exception); } $active_count = 0; foreach ($this->option[self::BUTTONS] as $button) { if (!$button instanceof StatusButton) { throw new Grid_Exception($exception); } if ($button->isActive($this->option[self::ID], $data)) { $class .= ' is-' . $button->getStatus(); $active_count++; } } if ($active_count === 0) { $class .= ' ' . self::$no_active_class; } return parent::mergeAttributes($data, array('class' => $class)); }
public function getHeaderContent() { return parent::getHeaderContent(); }
public function getBodyAttributes($data) { $attributes = array(); $attributes['class'] = 'type-template'; return parent::mergeAttributes($data, $attributes); }
protected function setDefaults() { return array_merge(parent::setDefaults(), array(self::FILTERING => TRUE)); }