public function getCMSFields() { $fields = parent::getCMSFields(); if ($this->ID) { Session::set("FamilyMemberID", $this->ID); } if (Session::get("FamilyID")) { $this->FamilyID = Session::get("FamilyID"); $fields->replaceField('FamilyID', new HiddenField('FamilyID')); } $dateOfBirth = new DateField('DateOfBirth', 'Date Of Birth'); $dateOfBirth->setConfig('dateformat', 'dd-MM-yyyy'); $dateOfBirth->setDescription('e.g. ' . date('d-m-Y')); $dateOfBirth->setAttribute('placeholder', 'dd-MM-yyyy'); $fields->addFieldsToTab('Root.Main', $dateOfBirth); $genders = Config::inst()->get('FamilyMember', 'Gender'); $gender = new OptionsetField("Gender", 'Gender', $genders); $fields->addFieldsToTab('Root.Main', $gender); $status = Config::inst()->get('FamilyMember', 'MartialStatus'); $martialStatus = new OptionsetField("MartialStatus", 'Martial Status', $status); $fields->addFieldsToTab('Root.Main', $martialStatus); $fields->insertBefore(new Tab('Job', 'Job'), 'CommunityGroups'); //Job GridField $jobGridFieldConfig = GridFieldConfig_RecordEditor::create(); $jobList = Job::get()->filter(array('FamilyMemberID' => $this->ID))->sort('ID ASC'); if ($jobList->count()) { $jobGridFieldConfig->removeComponentsByType('GridFieldAddNewButton'); } $jobGridField = new GridField('Job', 'Job', $jobList, $jobGridFieldConfig); $fields->addFieldsToTab('Root.Job', array($jobGridField)); $fields->insertBefore(new Tab('Health', 'Health'), 'CommunityGroups'); //Health GridField $healthGridFieldConfig = GridFieldConfig_RecordEditor::create(); $healthList = Health::get()->filter(array('FamilyMemberID' => $this->ID))->sort('ID ASC'); if ($healthList->count()) { $healthGridFieldConfig->removeComponentsByType('GridFieldAddNewButton'); } $healthGridField = new GridField('Health', 'Health', $healthList, $healthGridFieldConfig); $fields->addFieldsToTab('Root.Health', array($healthGridField)); //Job GridField /* $communityGroupsCongfig = GridFieldConfig_RelationEditor::create(); //$jobGridFieldConfig = GridFieldConfig_RecordEditor::create(); $communityGroupsList = $this->CommunityGroups(); $communityGroupsGridField = new GridField('CommunityGroups', 'Community Groups', $communityGroupsList, $communityGroupsCongfig); $fields->addFieldsToTab('Root.CommunityGroups', array( $communityGroupsGridField )); */ //CommunityGroups ListboxField $communityGroupsList = CommunityGroup::get()->map('ID', 'Title')->toArray(); $communityGroupsField = new ListboxField($name = "CommunityGroups", $title = "Communtiy Groups", $communityGroupsList); $communityGroupsField->setMultiple(true); $fields->addFieldsToTab('Root.CommunityGroups', $communityGroupsField); //exit('dd'); return $fields; }
public function getCMSFields() { $fields = parent::getCMSFields(); $group = new FieldGroup(); $group->setTitle(_t('News.Author')); $group->setDescription(_t('News.AuthorPage')); $fields->addFieldToTab('Root.Main', $group, 'Metadata'); $field = new TextField('AuthorName', _t('News.Name')); $group->push($field); $field = new TextField('AuthorURI', _t('News.URI')); $group->push($field); $field = new TextField('AuthorEmail', _t('News.Email')); $group->push($field); $field = new DateField('Published', _t('News.Published')); $field->setDescription(_t('News.PublishedDescription')); $field->setLocale($this->config()->date_locale); $field->setConfig('dateformat', $this->config()->date_format); $field->setConfig('showcalendar', true); $fields->addFieldToTab('Root.Main', $field, 'Content'); $field = new HtmlEditorField('Summary', _t('News.Summary')); $field->setRows(4); $fields->addFieldToTab('Root.Main', $field, 'Content'); return $fields; }