ENH Use config instead of runtime code to remove menu items

This commit is contained in:
Guy Sartorelli 2024-10-15 12:51:55 +13:00
parent bd48b04731
commit 2fa2aa356f
No known key found for this signature in database
4 changed files with 6 additions and 10 deletions

View File

@ -1,10 +1,5 @@
<?php
use SilverStripe\Admin\CMSMenu;
use SilverStripe\CMS\Controllers\CMSMain;
use SilverStripe\CMS\Controllers\CMSPageAddController;
use SilverStripe\CMS\Controllers\CMSPageEditController;
use SilverStripe\CMS\Controllers\CMSPageSettingsController;
use SilverStripe\CMS\Model\SiteTree;
use SilverStripe\Core\Manifest\ModuleLoader;
use SilverStripe\Forms\HTMLEditor\TinyMCEConfig;
@ -31,8 +26,3 @@ ShortcodeParser::get('default')->register(
'sitetree_link',
[SiteTree::class, 'link_shortcode_handler']
);
CMSMenu::remove_menu_class(CMSMain::class);
CMSMenu::remove_menu_class(CMSPageEditController::class);
CMSMenu::remove_menu_class(CMSPageSettingsController::class);
CMSMenu::remove_menu_class(CMSPageAddController::class);

View File

@ -32,6 +32,8 @@ class CMSPageAddController extends CMSPageEditController
private static $menu_title = 'Add page';
private static $required_permission_codes = 'CMS_ACCESS_CMSMain';
private static $ignore_menuitem = true;
private static $allowed_actions = [
'AddForm',
'doAdd',

View File

@ -28,6 +28,8 @@ class CMSPageEditController extends CMSMain
private static $required_permission_codes = 'CMS_ACCESS_CMSMain';
private static $ignore_menuitem = true;
private static $allowed_actions = [
'AddToCampaignForm',
];

View File

@ -15,6 +15,8 @@ class CMSPageSettingsController extends CMSMain
private static $required_permission_codes = 'CMS_ACCESS_CMSMain';
private static $ignore_menuitem = true;
public function getEditForm($id = null, $fields = null)
{
$record = $this->getRecord($id ?: $this->currentPageID());