diff --git a/code/form/WidgetAreaEditor.php b/code/form/WidgetAreaEditor.php index 8c7363b..d5139f7 100644 --- a/code/form/WidgetAreaEditor.php +++ b/code/form/WidgetAreaEditor.php @@ -42,17 +42,17 @@ class WidgetAreaEditor extends FormField $widgets= new ArrayList(); foreach ($this->widgetClasses as $widgetClass) { - $classes = ClassInfo::subclassesFor($widgetClass); + $classes = ClassInfo::subclassesFor($widgetClass) ?: array(); if (isset($classes['Widget'])) { unset($classes['Widget']); } elseif (isset($classes[0]) && $classes[0] == 'Widget') { unset($classes[0]); } - + foreach ($classes as $class) { $available = Config::inst()->get($class, 'only_available_in'); - + if (!empty($available) && is_array($available)) { if (in_array($this->Name, $available)) { $widgets->push(singleton($class)); @@ -62,7 +62,7 @@ class WidgetAreaEditor extends FormField } } } - + return $widgets; }