Code Duplication    Length = 11-13 lines in 2 locations

code/models/ElementList.php 1 location

@@ 50-60 (lines=11) @@
47
            if ($isInDb) {
48
                $adder = new GridFieldAddNewMultiClass();
49
50
                if (is_array($allowed)) {
51
                    $list = $allowed;
52
                } else {
53
                    $classes = ClassInfo::subclassesFor('BaseElement');
54
                    $list = array();
55
                    unset($classes['BaseElement']);
56
57
                    foreach ($classes as $class) {
58
                        $list[$class] = singleton($class)->i18n_singular_name();
59
                    }
60
                }
61
62
                asort($list);
63

code/extensions/ElementPageExtension.php 1 location

@@ 103-115 (lines=13) @@
100
    public function getAvailableTypes() {
101
        if (is_array($this->owner->config()->get('allowed_elements'))) {
102
            $list = $this->owner->config()->get('allowed_elements');
103
        } else {
104
            $classes = ClassInfo::subclassesFor('BaseElement');
105
            $list = array();
106
            unset($classes['BaseElement']);
107
108
            foreach ($classes as $class) {
109
                $inst = singleton($class);
110
111
                if ($inst->canCreate()) {
112
                    $list[$class] = singleton($class)->i18n_singular_name();
113
                }
114
            }
115
        }
116
117
        if (method_exists($this->owner, 'sortElementalOptions')) {
118
            $this->owner->sortElementalOptions($list);