public function getCMSFields() { $this->beforeUpdateCMSFields(function ($fields) { $fields->addFieldsToTab('Root.Main', array(Textfield::create('ContactName', 'Name'), TextField::create('Phone', 'Phone'), TextField::create('Mobile', 'Mobile'), TextField::create('Fax', 'Fax'), EmailField::create('Email', 'Email'), $website = TextField::create('Website', 'Website'))); $website->setRightTitle('e.g ' . Director::absoluteBaseURL()); }); return parent::getCMSFields(); }
public function getCMSFields() { $this->beforeUpdateCMSFields(function ($fields) { $url = TextField::create('LinkURL', 'Link URL'); $url->setRightTitle('Including protocol e.g: ' . Director::absoluteBaseURL()); $fields->addFieldToTab('Root.Main', $url); $fields->addFieldsToTab('Root.Main', array(TreeDropdownField::create('InternalLinkID', 'Link To', 'SiteTree'), CheckboxField::create('NewWindow', 'Open in a new window'), $text = TextField::create('LinkText', 'Link Text'), $desc = TextareaField::create('LinkDescription', 'Link Description'))); }); return parent::getCMSFields(); }
public function getCMSFields() { $this->beforeUpdateCMSFields(function ($fields) { $desc = TextareaField::create('FileDescription', 'Description'); $desc->setRightTitle('Optional'); $fields->addFieldToTab('Root.Main', $desc); $uploadField = UploadField::create('File', 'File')->setAllowedMaxFileNumber(1)->setFolderName('Uploads/files'); $fields->addFieldToTab('Root.Main', $uploadField); }); return parent::getCMSFields(); }
public function getCMSFields() { $styles = $this->config()->get('styles'); $fields = parent::getCMSFields(); if (count($styles) > 0) { $this->beforeUpdateCMSFields(function ($fields) use($styles) { $fields->addFieldsToTab('Root.Main', new HtmlEditorField('HTML', 'Content')); $fields->addFieldsToTab('Root.Main', $styles = new DropdownField('Style', 'Style', $styles)); $styles->setEmptyString('Select a custom style..'); }); } else { $fields->removeByName('Style'); } return $fields; }
public function getCMSFields() { $styles = $this->config()->get('styles'); $fields = parent::getCMSFields(); if (count($styles) > 0) { $this->beforeUpdateCMSFields(function ($fields) use($styles) { $fields->addFieldsToTab('Root.Main', new HtmlEditorField('HTML', 'Content')); $fields->addFieldsToTab('Root.Main', $styles = new DropdownField('Style', 'Style', $styles)); $styles->setEmptyString('Select a custom style..'); }); } else { $fields->removeByName('Style'); } if ($this->isEndofLine('ElementContent') && $this->hasExtension('VersionViewerDataObject')) { $fields = $this->addVersionViewer($fields, $this); } return $fields; }
/** * @return FieldList */ public function getCMSFields() { $elements = $this->Elements(); $isInDb = $this->isInDB(); $this->beforeUpdateCMSFields(function ($fields) use($elements, $isInDb) { $fields->removeByName('Root.Elements'); $fields->removeByName('Elements'); $desc = HTMLEditorField::create('ListDescription', 'List Description'); $desc->setRightTitle('Optional'); $fields->addFieldToTab('Root.Main', $desc); if ($isInDb) { $adder = new ElementalGridFieldAddNewMultiClass(); $list = $this->getAvailableTypes(); if ($list) { $adder->setClasses($list); } $config = GridFieldConfig_RecordEditor::create(100); $config->addComponent(new GridFieldSortableRows('Sort')); $config->removeComponentsByType('GridFieldAddNewButton'); $config->removeComponentsByType('GridFieldSortableHeader'); $config->removeComponentsByType('GridFieldDeleteAction'); $config->removeComponentsByType('GridFieldAddExistingAutocompleter'); $config->addComponent(new GridFieldTitleHeader()); $config->addComponent(new ElementalGridFieldDeleteAction()); $config->addComponent($adder); $config->addComponent($autocompleter = new ElementalGridFieldAddExistingAutocompleter()); if ($list) { $autocompleter->setSearchList(BaseElement::get()->filter('ClassName', array_keys($list))); } $config->removeComponentsByType('GridFieldDetailForm'); $config->addComponent(new VersionedDataObjectDetailsForm()); $widgetArea = new GridField('Elements', Config::inst()->get("ElementPageExtension", 'elements_title'), $elements, $config); $fields->addFieldToTab('Root.Main', $widgetArea); } else { $fields->addFieldToTab('Root.Main', LiteralField::create('warn', '<p class="message notice">Once you save this object you will be able to add items</p>')); } }); return parent::getCMSFields(); }
public function getCMSFields() { $elements = $this->Elements(); $isInDb = $this->isInDB(); $allowed = $this->config()->get('allowed_elements'); $this->beforeUpdateCMSFields(function ($fields) use($elements, $isInDb, $allowed) { $desc = HTMLEditorField::create('ListDescription', 'List Description'); $desc->setRightTitle('Optional'); $fields->addFieldToTab('Root.Main', $desc); if ($isInDb) { $adder = new GridFieldAddNewMultiClass(); if (is_array($allowed)) { $list = $allowed; } else { $classes = ClassInfo::subclassesFor('BaseElement'); $list = array(); unset($classes['BaseElement']); foreach ($classes as $class) { $list[$class] = singleton($class)->i18n_singular_name(); } } asort($list); $adder->setClasses($list); $config = GridFieldConfig_RecordEditor::create(100); $config->addComponent(new GridFieldSortableRows('Sort')); $config->removeComponentsByType('GridFieldAddNewButton'); $config->addComponent($adder); $config->removeComponentsByType('GridFieldDetailForm'); $config->addComponent(new VersionedDataObjectDetailsForm()); $widgetArea = new GridField('Elements', Config::inst()->get("ElementPageExtension", 'elements_title'), $elements, $config); $fields->addFieldToTab('Root.Main', $widgetArea); } else { $fields->addFieldToTab('Root.Main', LiteralField::create('warn', '<p class="message notice">Once you save this object you will be able to add items</p>')); } $fields->removeByName('Root.Elements'); }); return parent::getCMSFields(); }