Source of file CMSPageAddControllerExtension.php
Size: 1,480 Bytes - Last Modified: 2018-11-27T11:02:28+00:00
/var/www/docs.ssmods.com/process/src/src/extensions/controllers/CMSPageAddControllerExtension.php
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051 | <?php namespace StyleHack\BetterPageIcons\Extensions\Controllers; use SilverStripe\CMS\Controllers\CMSMain; use SilverStripe\Core\Config\Config; use SilverStripe\ORM\DataExtension; class CMSPageAddControllerExtension extends DataExtension { private static $defaults = [ 'ParentModeField' => false, ]; /** * Add Font Awesome Icons to "AddPage" * Remove "Create child page" * * @param $fields */ public function updatePageOptions(&$fields) { $pageType = $fields->dataFieldByName('PageType'); $source = $pageType->getSource(); $childPages = Config::inst()->get('BetterPageIcons','show_child_pages'); foreach ($source as $key => $item) { $icon = Config::inst()->get($key, 'fa_icon'); $type = Config::inst()->get($key, 'fa_type'); $color = Config::inst()->get($key, 'fa_color'); $defaults = Config::inst()->get('BetterPageIcons'); $defaultIcon = $defaults['default_icon']; $defaultType = $defaults['default_type']; $defaultColor = $defaults['default_icon_color']; $faIcon = $icon ?: $defaultIcon; $faType = $type ?: $defaultType; $faColor = $color ?: $defaultColor; $value = $item->getValue(); $item->setValue("<i style='color: $faColor;' class=\"fa-icon fa-icon--add $faType fa-$faIcon\"></i>$value"); } #Remove "Create child page" if (!$childPages) { $pageType->setTitle(_t(CMSMain::class . '.ChoosePageType', 'Choose page type')); $fields->RemoveByName('ParentModeField'); } } } |