/** * @param GridField $grid * @return array */ public function getHTMLFragments($grid) { $cols = new ArrayList(); foreach ($grid->getColumns() as $name) { $meta = $grid->getColumnMetadata($name); $cols->push(new ArrayData(array('Name' => $name, 'Title' => $meta['title']))); } $days = new ArrayList(); for ($i = 0; $i < 5; $i++) { $date = new Date(); $date->setValue(date('d-m-Y', strtotime('+' . $i . ' days', strtotime($this->startDate)))); $isHoliday = in_array($date->Format('Y-m-d'), $this->holidays); $days->push(new ArrayData(array('Day' => $date->Format('l'), 'IsHoliday' => $isHoliday))); } return array('header' => $cols->renderWith('RosterGridFieldTitleHeader', array('StartDate' => $this->startDate, 'Days' => $days))); }
/** * @covers GridField::getColumnMetadata */ public function testGetColumnMetadataBadArguments() { $this->setExpectedException('InvalidArgumentException'); $list = ArrayList::create(); $config = GridFieldConfig::create()->addComponent(new GridFieldTest_Component()); $obj = new GridField('testfield', 'testfield', $list, $config); $obj->getColumnMetadata('non-exist-qweqweqwe'); }