/** * Place the export button in a <p> tag below the field * * @param GridField $gridField * @return array */ public function getHTMLFragments($gridField) { $button = new GridField_FormAction($gridField, 'export', _t('TableListField.CSVEXPORT', 'Export to CSV'), 'export', null); $button->setAttribute('data-icon', 'download-csv'); $button->addExtraClass('no-ajax font-icon-down-circled action_export'); $button->setForm($gridField->getForm()); return array($this->targetFragment => '<p class="grid-csv-button">' . $button->Field() . '</p>'); }
/** * Place the print button in a <p> tag below the field * * @param GridField * * @return array */ public function getHTMLFragments($gridField) { $button = new GridField_FormAction($gridField, 'print', _t('TableListField.Print', 'Print'), 'print', null); $button->setAttribute('data-icon', 'grid_print'); $button->addExtraClass('gridfield-button-print'); $button->addExtraClass('font-icon-print'); return array($this->targetFragment => '<p class="grid-print-button">' . $button->Field() . '</p>'); }
/** * * @param GridField $gridField * @return string[] - HTML */ public function getHTMLFragments($gridField) { $dataClass = $gridField->getModelClass(); $forTemplate = new ArrayData(array()); $forTemplate->Fields = new FieldList(); $searchField = new TextField('gridfield_relationsearch', _t('GridField.RelationSearch', "Relation search")); $searchField->setAttribute('data-search-url', Controller::join_links($gridField->Link('search'))); $searchField->setAttribute('placeholder', $this->getPlaceholderText($dataClass)); $searchField->addExtraClass('relation-search no-change-track action_gridfield_relationsearch'); $findAction = new GridField_FormAction($gridField, 'gridfield_relationfind', _t('GridField.Find', "Find"), 'find', 'find'); $findAction->setAttribute('data-icon', 'relationfind'); $findAction->addExtraClass('action_gridfield_relationfind'); $addAction = new GridField_FormAction($gridField, 'gridfield_relationadd', _t('GridField.LinkExisting', "Link Existing"), 'addto', 'addto'); $addAction->setAttribute('data-icon', 'chain--plus'); $addAction->addExtraClass('action_gridfield_relationadd'); // If an object is not found, disable the action if (!is_int($gridField->State->GridFieldAddRelation(null))) { $addAction->setReadonly(true); } $forTemplate->Fields->push($searchField); $forTemplate->Fields->push($findAction); $forTemplate->Fields->push($addAction); if ($form = $gridField->getForm()) { $forTemplate->Fields->setForm($form); } $template = SSViewer::get_templates_by_class($this, '', __CLASS__); return array($this->targetFragment => $forTemplate->renderWith($template)); }