コード例 #1
0
ファイル: Status.php プロジェクト: mesour/datagrid
 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));
 }
コード例 #2
0
ファイル: Container.php プロジェクト: mesour/datagrid
 public function getHeaderContent()
 {
     return parent::getHeaderContent();
 }
コード例 #3
0
ファイル: Template.php プロジェクト: mesour/datagrid
 public function getBodyAttributes($data)
 {
     $attributes = array();
     $attributes['class'] = 'type-template';
     return parent::mergeAttributes($data, $attributes);
 }
コード例 #4
0
ファイル: Filter.php プロジェクト: mesour/datagrid
 protected function setDefaults()
 {
     return array_merge(parent::setDefaults(), array(self::FILTERING => TRUE));
 }