/** * @param GridField $gridField * @param DataObject $record * @param string $columnName * * @return string - the HTML for the column */ public function getColumnContent($gridField, $record, $columnName) { // No permission checks - handled through GridFieldDetailForm // which can make the form readonly if no edit permissions are available. $data = new ArrayData(array('Link' => $record->CMSEditLink())); return $data->renderWith('GridFieldEditButton'); }
/** * @param GridField $gridField * @param DataObject $record * @param string $columnName * * @return string - the HTML for the column */ public function getColumnContent($gridField, $record, $columnName) { // No permission checks, handled through GridFieldDetailForm, // which can make the form readonly if no edit permissions are available. if ($record->hasMethod("CMSEditLink")) { $data = new ArrayData(array('Link' => Controller::join_links($record->CMSEditLink()))); return $data->renderWith('GridFieldEditButtonInSiteTree'); } else { return parent::getColumnContent($gridField, $record, $columnName); } }
/** * @param DataObject $target * @return array */ public function getContextFields(DataObject $target) { $result = array(); if (!$target) { return $result; } $fields = $target->inheritedDatabaseFields(); foreach ($fields as $field => $fieldDesc) { $result[$field] = $target->{$field}; } if ($target instanceof CMSPreviewable) { $result['CMSLink'] = $target->CMSEditLink(); } else { if ($target->hasMethod('WorkflowLink')) { $result['CMSLink'] = $target->WorkflowLink(); } } return $result; }