@@ 47-57 (lines=11) @@ | ||
44 | if ($isInDb) { |
|
45 | $adder = new GridFieldAddNewMultiClass(); |
|
46 | ||
47 | if (is_array($allowed)) { |
|
48 | $list = $allowed; |
|
49 | } else { |
|
50 | $classes = ClassInfo::subclassesFor('BaseElement'); |
|
51 | $list = array(); |
|
52 | unset($classes['BaseElement']); |
|
53 | ||
54 | foreach ($classes as $class) { |
|
55 | $list[$class] = singleton($class)->i18n_singular_name(); |
|
56 | } |
|
57 | } |
|
58 | ||
59 | asort($list); |
|
60 |
@@ 95-107 (lines=13) @@ | ||
92 | public function getAvailableTypes() { |
|
93 | if (is_array($this->owner->config()->get('allowed_elements'))) { |
|
94 | $list = $this->owner->config()->get('allowed_elements'); |
|
95 | } else { |
|
96 | $classes = ClassInfo::subclassesFor('BaseElement'); |
|
97 | $list = array(); |
|
98 | unset($classes['BaseElement']); |
|
99 | ||
100 | foreach ($classes as $class) { |
|
101 | $inst = singleton($class); |
|
102 | ||
103 | if ($inst->canCreate()) { |
|
104 | $list[$class] = singleton($class)->i18n_singular_name(); |
|
105 | } |
|
106 | } |
|
107 | } |
|
108 | if (method_exists($this->owner, 'sortElementalOptions')) { |
|
109 | $this->owner->sortElementalOptions($list); |
|
110 | } else { |