mirror of
https://github.com/silverstripe/silverstripe-blog
synced 2024-10-22 11:05:58 +02:00
Merge pull request #28 from micmania1/fix-getcmsfields-closure
FIX Fixed the beforeUpdateCMSFields and made them consistent
This commit is contained in:
commit
1df6d24047
@ -33,10 +33,11 @@ class Blog extends Page {
|
|||||||
|
|
||||||
|
|
||||||
public function getCMSFields() {
|
public function getCMSFields() {
|
||||||
$this->beforeUpdateCMSFields(function($fields) {
|
$self =& $this;
|
||||||
|
$this->beforeUpdateCMSFields(function($fields) use ($self) {
|
||||||
|
|
||||||
$posts = $this->getBlogPosts();
|
$posts = $self->getBlogPosts();
|
||||||
$excluded = $this->getExcludedSiteTreeClassNames();
|
$excluded = $self->getExcludedSiteTreeClassNames();
|
||||||
if(!empty($excluded)) {
|
if(!empty($excluded)) {
|
||||||
$posts = $posts->filter("ClassName", $excluded);
|
$posts = $posts->filter("ClassName", $excluded);
|
||||||
$gridField = new GridField(
|
$gridField = new GridField(
|
||||||
@ -56,14 +57,14 @@ class Blog extends Page {
|
|||||||
$categories = GridField::create(
|
$categories = GridField::create(
|
||||||
"Categories",
|
"Categories",
|
||||||
_t("Blog.Categories", "Categories"),
|
_t("Blog.Categories", "Categories"),
|
||||||
$this->Categories(),
|
$self->Categories(),
|
||||||
$config
|
$config
|
||||||
);
|
);
|
||||||
|
|
||||||
$tags = GridField::create(
|
$tags = GridField::create(
|
||||||
"Tags",
|
"Tags",
|
||||||
_t("Blog.Tags", "Tags"),
|
_t("Blog.Tags", "Tags"),
|
||||||
$this->Tags(),
|
$self->Tags(),
|
||||||
$config
|
$config
|
||||||
);
|
);
|
||||||
|
|
||||||
|
@ -59,13 +59,8 @@ class BlogPost extends Page {
|
|||||||
|
|
||||||
public function getCMSFields() {
|
public function getCMSFields() {
|
||||||
|
|
||||||
// Assign to variable & pass for PHP <= 5.4 closure compatibility
|
$self =& $this;
|
||||||
$data = array(
|
$this->beforeUpdateCMSFields(function($fields) use ($self) {
|
||||||
"TagsMap" => $this->Parent()->Tags()->map()->toArray(),
|
|
||||||
"CategoryMap" => $this->Parent()->Categories()->map()->toArray()
|
|
||||||
);
|
|
||||||
|
|
||||||
$this->beforeUpdateCMSFields(function($fields) use ($data) {
|
|
||||||
// Add Publish date fields
|
// Add Publish date fields
|
||||||
$fields->insertAfter(
|
$fields->insertAfter(
|
||||||
$publishDate = DatetimeField::create("PublishDate", _t("BlogPost.PublishDate", "Publish Date")),
|
$publishDate = DatetimeField::create("PublishDate", _t("BlogPost.PublishDate", "Publish Date")),
|
||||||
@ -74,12 +69,18 @@ class BlogPost extends Page {
|
|||||||
$publishDate->getDateField()->setConfig("showcalendar", true);
|
$publishDate->getDateField()->setConfig("showcalendar", true);
|
||||||
|
|
||||||
// Add Categories & Tags fields
|
// Add Categories & Tags fields
|
||||||
$categoriesField = ListboxField::create("Categories",
|
$categoriesField = ListboxField::create(
|
||||||
_t("BlogPost.Categories", "Categories"), $data['CategoryMap'])->setMultiple(true);
|
"Categories",
|
||||||
|
_t("BlogPost.Categories", "Categories"),
|
||||||
|
$self->Parent()->Categories()->map()->toArray()
|
||||||
|
)->setMultiple(true);
|
||||||
$fields->insertAfter($categoriesField, "PublishDate");
|
$fields->insertAfter($categoriesField, "PublishDate");
|
||||||
|
|
||||||
$tagsField = ListboxField::create("Tags", _t("BlogPost.Tags", "Tags"), $data['TagsMap'])
|
$tagsField = ListboxField::create(
|
||||||
->setMultiple(true);
|
"Tags",
|
||||||
|
_t("BlogPost.Tags", "Tags"),
|
||||||
|
$self->Parent()->Tags()->map()->toArray()
|
||||||
|
)->setMultiple(true);
|
||||||
$fields->insertAfter($tagsField, "Categories");
|
$fields->insertAfter($tagsField, "Categories");
|
||||||
|
|
||||||
// Add featured image
|
// Add featured image
|
||||||
|
Loading…
Reference in New Issue
Block a user