From f3a821037c25ea0d8316a9e6652c7b6d0aeb7287 Mon Sep 17 00:00:00 2001 From: micmania1 Date: Thu, 8 May 2014 21:08:44 +0100 Subject: [PATCH] Fix: Prevent inheritance of the default cms fields within widgets. --- widgets/BlogArchiveWidget.php | 9 ++++++--- widgets/BlogCategoriesWIdget.php | 7 +++++-- widgets/BlogRecentPostsWidget.php | 9 ++++++--- widgets/BlogTagsWidget.php | 3 ++- 4 files changed, 19 insertions(+), 9 deletions(-) diff --git a/widgets/BlogArchiveWidget.php b/widgets/BlogArchiveWidget.php index 68e129c..fb8f981 100755 --- a/widgets/BlogArchiveWidget.php +++ b/widgets/BlogArchiveWidget.php @@ -31,9 +31,12 @@ if(class_exists("Widget")) { $type[$k] = _t("BlogArchiveWidget." . ucfirst(strtolower($v)), $v); } - $fields->push(DropdownField::create("BlogID", _t("BlogArchiveWidget.Blog", "Blog"), Blog::get()->map())); - $fields->push(DropdownField::create("Type", _t("BlogArchiveWidget.Type", "Type"), $type)); - $fields->push(NumericField::create("NumberToDisplay", _t("BlogArchiveWidget.NumberToDisplay", "No. to Display"))); + $fields->merge(array( + DropdownField::create("BlogID", _t("BlogArchiveWidget.Blog", "Blog"), Blog::get()->map()), + DropdownField::create("Type", _t("BlogArchiveWidget.Type", "Type"), $type), + NumericField::create("NumberToDisplay", _t("BlogArchiveWidget.NumberToDisplay", "No. to Display")) + )); + $this->extend("updateCMSFields", $fields); return $fields; } diff --git a/widgets/BlogCategoriesWIdget.php b/widgets/BlogCategoriesWIdget.php index cdc1aee..eb506ab 100755 --- a/widgets/BlogCategoriesWIdget.php +++ b/widgets/BlogCategoriesWIdget.php @@ -17,8 +17,11 @@ if(class_exists("Widget")) { ); public function getCMSFields() { - $fields = parent::getCMSFields(); - $fields->push(DropdownField::create("BlogID", _t("BlogCategoriesWidget.Blog", "Blog"), Blog::get()->map())); + $fields = FieldList::create(); + $fields->push( + DropdownField::create("BlogID", _t("BlogCategoriesWidget.Blog", "Blog"), Blog::get()->map()) + ); + $this->extend("updateCMSFields", $fields); return $fields; } diff --git a/widgets/BlogRecentPostsWidget.php b/widgets/BlogRecentPostsWidget.php index 021f9c1..006aa68 100755 --- a/widgets/BlogRecentPostsWidget.php +++ b/widgets/BlogRecentPostsWidget.php @@ -19,9 +19,12 @@ if(class_exists("Widget")) { ); public function getCMSFields() { - $fields = parent::getCMSFields(); - $fields->push(DropdownField::create("BlogID", _t("BlogRecentPostsWidget.Blog", "Blog"), Blog::get()->map())); - $fields->push(NumericField::create("NumberOfPosts", _t("BlogRecentPostsWidget.NumberOfPosts", "Number of Posts"))); + $fields = FieldList::create(); + $fields->merge(array( + DropdownField::create("BlogID", _t("BlogRecentPostsWidget.Blog", "Blog"), Blog::get()->map()), + NumericField::create("NumberOfPosts", _t("BlogRecentPostsWidget.NumberOfPosts", "Number of Posts")) + )); + $this->extend("updateCMSFields", $fields); return $fields; } diff --git a/widgets/BlogTagsWidget.php b/widgets/BlogTagsWidget.php index d977351..ed6e33d 100755 --- a/widgets/BlogTagsWidget.php +++ b/widgets/BlogTagsWidget.php @@ -17,8 +17,9 @@ if(class_exists("Widget")) { ); public function getCMSFields() { - $fields = parent::getCMSFields(); + $fields = FieldList::create(); $fields->push(DropdownField::create("BlogID", _t("BlogTagsWidget.Blog", "Blog"), Blog::get()->map())); + $this->extend("updateCMSFields", $fields); return $fields; }