Hi guys,
i managed to get this thing working. All you need to do is:
- set the Dependant field wirth ->setDepends()
- load the values in the dependant field via callback
Here is how it worked for me:
getCMSFields(){
$fields->addFieldToTab('Root.RelatedArticles', $blogModuleField = DropdownField::create('BlogModule', 'Blog Module', BlogHolder::get()->sort('Title', 'ASC')->map('ID', 'Title')));
$fields->addFieldToTab('Root.RelatedArticles', $articleField = DependentDropdownField::create('LinkedArticleID', 'Related Blog Article', array('News', 'DropdownBlogArticles'))->setEmptyString('(No Article Selected)'));
$articleField->setDepends($blogModuleField);
}
public static function DropdownBlogArticles($parent_ = null){
if($parent_){
return BlogEntry::get()->filter('ParentID', $parent_)->sort('Date', 'DESC')->limit(50)->map('ID', 'Title')->toArray();
} else {
return BlogEntry::get()->sort('Date', 'DESC')->limit(50)->map('ID', 'Title')->toArray();
}
}