diff --git a/.upgrade.yml b/.upgrade.yml index 8361de682..e630ed430 100644 --- a/.upgrade.yml +++ b/.upgrade.yml @@ -154,6 +154,26 @@ mappings: Security: SilverStripe\Security\Security SecurityToken: SilverStripe\Security\SecurityToken NullSecurityToken: SilverStripe\Security\NullSecurityToken + AddToCampaignHandler: SilverStripe\Admin\AddToCampaignHandler + AddToCampaignHandler_FormAction: SilverStripe\Admin\AddToCampaignHandler_FormAction + AdminRootController: SilverStripe\Admin\AdminRootController + CampaignAdmin: SilverStripe\Admin\CampaignAdmin + CMSBatchAction: SilverStripe\Admin\CMSBatchAction + CMSBatchActionHandler: SilverStripe\Admin\CMSBatchActionHandler + CMSMenu: SilverStripe\Admin\CMSMenu + CMSMenuItem: SilverStripe\Admin\CMSMenuItem + CMSPreviewable: SilverStripe\Admin\CMSPreviewable + CMSProfileController: SilverStripe\Admin\CMSProfileController + GroupImportForm: SilverStripe\Admin\GroupImportForm + LeftAndMain: SilverStripe\Admin\LeftAndMain + LeftAndMainMarkingFilter: SilverStripe\Admin\LeftAndMainMarkingFilter + LeftAndMain_HTTPResponse: SilverStripe\Admin\LeftAndMain_HTTPResponse + LeftAndMain_TreeNode: SilverStripe\Admin\LeftAndMain_TreeNode + LeftAndMain_SearchFilter: SilverStripe\Admin\LeftAndMain_SearchFilter + LeftAndMainExtension: SilverStripe\Admin\LeftAndMainExtension + MemberImportForm: SilverStripe\Admin\MemberImportForm + ModelAdmin: SilverStripe\Admin\ModelAdmin + SecurityAdmin: SilverStripe\Admin\SecurityAdmin skipConfigs: - db - casting diff --git a/ORM/Hierarchy/Hierarchy.php b/ORM/Hierarchy/Hierarchy.php index d34a7ebb2..873dd2351 100644 --- a/ORM/Hierarchy/Hierarchy.php +++ b/ORM/Hierarchy/Hierarchy.php @@ -5,13 +5,15 @@ namespace SilverStripe\ORM\Hierarchy; use Config; use Exception; use Controller; -use LeftAndMain; + use ClassInfo; use SilverStripe\ORM\ValidationResult; use SilverStripe\ORM\ArrayList; use SilverStripe\ORM\DataObject; use SilverStripe\ORM\DataExtension; use SilverStripe\ORM\Versioning\Versioned; +use SilverStripe\Admin\LeftAndMain; + /** * DataObjects that use the Hierarchy extension can be be organised as a hierarchy, with children and parents. The most diff --git a/ORM/Versioning/ChangeSetItem.php b/ORM/Versioning/ChangeSetItem.php index 2ef13e05e..e811aecd1 100644 --- a/ORM/Versioning/ChangeSetItem.php +++ b/ORM/Versioning/ChangeSetItem.php @@ -6,7 +6,7 @@ use Exception; use BadMethodCallException; -use CMSPreviewable; + use Controller; use SilverStripe\Filesystem\Thumbnail; use SilverStripe\ORM\DataList; @@ -15,6 +15,8 @@ use SilverStripe\ORM\ManyManyList; use SilverStripe\ORM\SS_List; use SilverStripe\Security\Member; use SilverStripe\Security\Permission; +use SilverStripe\Admin\CMSPreviewable; + /** diff --git a/Security/CMSSecurity.php b/Security/CMSSecurity.php index b4c8223e2..80e09e79a 100644 --- a/Security/CMSSecurity.php +++ b/Security/CMSSecurity.php @@ -7,8 +7,10 @@ use Controller; use Director; use Convert; use Session; -use AdminRootController; + use SS_HTTPResponse; +use SilverStripe\Admin\AdminRootController; + /** diff --git a/Security/Group.php b/Security/Group.php index 1e2125f0f..28ee547a6 100755 --- a/Security/Group.php +++ b/Security/Group.php @@ -135,7 +135,7 @@ class Group extends DataObject { // Filter permissions // TODO SecurityAdmin coupling, not easy to get to the form fields through GridFieldDetailForm - $permissionsField->setHiddenPermissions((array)Config::inst()->get('SecurityAdmin', 'hidden_permissions')); + $permissionsField->setHiddenPermissions((array)Config::inst()->get('SilverStripe\\Admin\\SecurityAdmin', 'hidden_permissions')); if($this->ID) { $group = $this; @@ -203,7 +203,7 @@ class Group extends DataObject { ) . '
' . sprintf( '%s', - singleton('SecurityAdmin')->Link('show/root#Root_Roles'), + singleton('SilverStripe\\Admin\\SecurityAdmin')->Link('show/root#Root_Roles'), // TODO This should include #Root_Roles to switch directly to the tab, // but tabstrip.js doesn't display tabs when directly adressed through a URL pragma _t('Group.RolesAddEditLink', 'Manage roles') diff --git a/Security/Member.php b/Security/Member.php index 8dcda39d1..89e366ab5 100644 --- a/Security/Member.php +++ b/Security/Member.php @@ -1351,7 +1351,7 @@ class Member extends DataObject implements TemplateGlobalProvider { if(class_exists('SilverStripe\\CMS\\Controllers\\CMSMain')) { $cmsPerms = CMSMain::singleton()->providePermissions(); } else { - $cmsPerms = singleton('LeftAndMain')->providePermissions(); + $cmsPerms = singleton('SilverStripe\\Admin\\LeftAndMain')->providePermissions(); } if(!empty($cmsPerms)) { diff --git a/admin/_config.php b/admin/_config.php index 3f8ef79da..fcd6ae56b 100644 --- a/admin/_config.php +++ b/admin/_config.php @@ -1,5 +1,7 @@ setOptions(array( 'friendly_name' => 'Default CMS', @@ -35,4 +37,4 @@ HTMLEditorConfig::get('cms') 'ssbuttons' => FRAMEWORK_DIR . '/client/dist/js/TinyMCE_SSPlugin.js' )); -CMSMenu::remove_menu_class('CMSProfileController'); +CMSMenu::remove_menu_class('SilverStripe\\Admin\\CMSProfileController'); diff --git a/admin/code/AddToCampaignHandler.php b/admin/code/AddToCampaignHandler.php index 22c1bac47..67f5d72e6 100644 --- a/admin/code/AddToCampaignHandler.php +++ b/admin/code/AddToCampaignHandler.php @@ -1,10 +1,25 @@ update( - 'CMSBatchActionHandler', + 'SilverStripe\\Admin\\CMSBatchActionHandler', 'batch_actions', array( $urlSegment => array( @@ -230,7 +241,7 @@ class CMSBatchActionHandler extends RequestHandler { * @throws InvalidArgumentException if invalid action class is passed. */ protected function buildAction($class) { - if(!is_subclass_of($class, 'CMSBatchAction')) { + if(!is_subclass_of($class, 'SilverStripe\\Admin\\CMSBatchAction')) { throw new InvalidArgumentException("{$class} is not a valid subclass of CMSBatchAction"); } return $class::singleton(); diff --git a/admin/code/CMSMenu.php b/admin/code/CMSMenu.php index 3d25d0d0d..406dd8575 100644 --- a/admin/code/CMSMenu.php +++ b/admin/code/CMSMenu.php @@ -1,6 +1,20 @@ []]; - $cmsClassNames = CMSMenu::get_cms_classes('LeftAndMain', true, CMSMenu::URL_PRIORITY); + $cmsClassNames = CMSMenu::get_cms_classes('SilverStripe\\Admin\\LeftAndMain', true, CMSMenu::URL_PRIORITY); foreach ($cmsClassNames as $className) { $combinedClientConfig['sections'][$className] = Injector::inst()->get($className)->getClientConfig(); @@ -901,7 +935,7 @@ class LeftAndMain extends Controller implements PermissionProvider { * @return array */ public function getTemplatesWithSuffix($suffix) { - return SSViewer::get_templates_by_class(get_class($this), $suffix, 'LeftAndMain'); + return SSViewer::get_templates_by_class(get_class($this), $suffix, 'SilverStripe\\Admin\\LeftAndMain'); } public function Content() { @@ -980,7 +1014,7 @@ class LeftAndMain extends Controller implements PermissionProvider { // Validate classname $filterClass = $params['FilterClass']; $filterInfo = new ReflectionClass($filterClass); - if(!$filterInfo->implementsInterface('LeftAndMain_SearchFilter')) { + if(!$filterInfo->implementsInterface('SilverStripe\\Admin\\LeftAndMain_SearchFilter')) { throw new InvalidArgumentException(sprintf('Invalid filter class passed: %s', $filterClass)); } @@ -1073,21 +1107,21 @@ class LeftAndMain extends Controller implements PermissionProvider { ) { return null; } - return sprintf( - '', - _t('LeftAndMain.TooManyPages', 'Too many pages'), - Controller::join_links( - $controller->LinkWithSearch($controller->Link()), ' - ?view=list&ParentID=' . $parent->ID - ), - _t( - 'LeftAndMain.ShowAsList', - 'show as list', - 'Show large amount of pages in list instead of tree view' - ) - ); + return sprintf( + '', + _t('LeftAndMain.TooManyPages', 'Too many pages'), + Controller::join_links( + $controller->LinkWithSearch($controller->Link()), ' + ?view=list&ParentID=' . $parent->ID + ), + _t( + 'LeftAndMain.ShowAsList', + 'show as list', + 'Show large amount of pages in list instead of tree view' + ) + ); }; } else { $nodeCountCallback = null; @@ -1476,7 +1510,7 @@ class LeftAndMain extends Controller implements PermissionProvider { } // Added in-line to the form, but plucked into different view by frontend scripts. - if(in_array('CMSPreviewable', class_implements($record))) { + if ($record instanceof CMSPreviewable) { /** @skipUpgrade */ $navField = new LiteralField('SilverStripeNavigator', $this->getSilverStripeNavigator()); $navField->setAllowHTML(true); @@ -1531,7 +1565,7 @@ class LeftAndMain extends Controller implements PermissionProvider { }); // Announce the capability so the frontend can decide whether to allow preview or not. - if(in_array('CMSPreviewable', class_implements($record))) { + if(in_array('SilverStripe\\Admin\\CMSPreviewable', class_implements($record))) { $form->addExtraClass('cms-previewable'); } @@ -1902,7 +1936,7 @@ class LeftAndMain extends Controller implements PermissionProvider { */ public static function set_application_link($link) { Deprecation::notice('4.0', 'Use the "LeftAndMain.application_link" config setting instead'); - Config::inst()->update('LeftAndMain', 'application_link', $link); + Config::inst()->update('SilverStripe\\Admin\\LeftAndMain', 'application_link', $link); } /** @@ -1927,7 +1961,7 @@ class LeftAndMain extends Controller implements PermissionProvider { */ public static function setApplicationName($name) { Deprecation::notice('4.0', 'Use the "LeftAndMain.application_name" config setting instead'); - Config::inst()->update('LeftAndMain', 'application_name', $name); + Config::inst()->update('SilverStripe\\Admin\\LeftAndMain', 'application_name', $name); } /** @@ -1997,8 +2031,8 @@ class LeftAndMain extends Controller implements PermissionProvider { // Add any custom ModelAdmin subclasses. Can't put this on ModelAdmin itself // since its marked abstract, and needs to be singleton instanciated. - foreach(ClassInfo::subclassesFor('ModelAdmin') as $i => $class) { - if($class == 'ModelAdmin') continue; + foreach(ClassInfo::subclassesFor('SilverStripe\\Admin\\ModelAdmin') as $i => $class) { + if($class == 'SilverStripe\\Admin\\ModelAdmin') continue; if(ClassInfo::classImplements($class, 'TestOnly')) continue; $title = LeftAndMain::menu_title($class); @@ -2024,7 +2058,7 @@ class LeftAndMain extends Controller implements PermissionProvider { */ public static function require_javascript($file) { Deprecation::notice('4.0', 'Use "LeftAndMain.extra_requirements_javascript" config setting instead'); - Config::inst()->update('LeftAndMain', 'extra_requirements_javascript', array($file => array())); + Config::inst()->update('SilverStripe\\Admin\\LeftAndMain', 'extra_requirements_javascript', array($file => array())); } /** @@ -2037,7 +2071,7 @@ class LeftAndMain extends Controller implements PermissionProvider { */ public static function require_css($file, $media = null) { Deprecation::notice('4.0', 'Use "LeftAndMain.extra_requirements_css" config setting instead'); - Config::inst()->update('LeftAndMain', 'extra_requirements_css', array($file => array('media' => $media))); + Config::inst()->update('SilverStripe\\Admin\\LeftAndMain', 'extra_requirements_css', array($file => array('media' => $media))); } /** @@ -2052,7 +2086,7 @@ class LeftAndMain extends Controller implements PermissionProvider { */ public static function require_themed_css($name, $media = null) { Deprecation::notice('4.0', 'Use "LeftAndMain.extra_requirements_themedCss" config setting instead'); - Config::inst()->update('LeftAndMain', 'extra_requirements_themedCss', array($name => array('media' => $media))); + Config::inst()->update('SilverStripe\\Admin\\LeftAndMain', 'extra_requirements_themedCss', array($name => array('media' => $media))); } } diff --git a/admin/code/LeftAndMainExtension.php b/admin/code/LeftAndMainExtension.php index 7a6988d8c..fe6614a13 100644 --- a/admin/code/LeftAndMainExtension.php +++ b/admin/code/LeftAndMainExtension.php @@ -1,5 +1,10 @@ currentPage(); $form = new MemberImportForm( $this, - 'MemberImportForm' + 'SilverStripe\\Admin\\MemberImportForm' ); $form->setGroup($group); @@ -265,7 +285,7 @@ class SecurityAdmin extends LeftAndMain implements PermissionProvider { $form = new GroupImportForm( $this, - 'GroupImportForm' + 'SilverStripe\\Admin\\GroupImportForm' ); return $form; diff --git a/admin/tests/CMSMenuItemTest.php b/admin/tests/CMSMenuItemTest.php index 5567d305f..fc10f8118 100644 --- a/admin/tests/CMSMenuItemTest.php +++ b/admin/tests/CMSMenuItemTest.php @@ -1,4 +1,6 @@ assertInstanceOf('CMSMenuItem', $menuItem, 'Controller menu item is of class CMSMenuItem'); + $this->assertInstanceOf('SilverStripe\\Admin\\CMSMenuItem', $menuItem, 'Controller menu item is of class CMSMenuItem'); $this->assertContains($menuItem->url, singleton('CMSMenuTest_LeftAndMainController')->Link(), 'Controller menu item has the correct link'); $this->assertEquals($menuItem->controller, 'CMSMenuTest_LeftAndMainController', @@ -29,7 +32,7 @@ class CMSMenuTest extends SapphireTest implements TestOnly { CMSMenu::add_controller('CMSMenuTest_CustomTitle'); $menuItems = CMSMenu::get_menu_items(); $menuItem = $menuItems['CMSMenuTest_CustomTitle']; - $this->assertInstanceOf('CMSMenuItem', $menuItem, 'Controller menu item is of class CMSMenuItem'); + $this->assertInstanceOf('SilverStripe\\Admin\\CMSMenuItem', $menuItem, 'Controller menu item is of class CMSMenuItem'); $this->assertEquals('CMSMenuTest_CustomTitle (localised)', $menuItem->title); CMSMenu::clear_menu(); @@ -37,7 +40,7 @@ class CMSMenuTest extends SapphireTest implements TestOnly { CMSMenu::add_link('LinkCode', 'link title', 'http://www.example.com'); $menuItems = CMSMenu::get_menu_items(); $menuItem = $menuItems['LinkCode']; - $this->assertInstanceOf('CMSMenuItem', $menuItem, 'Link menu item is of class CMSMenuItem'); + $this->assertInstanceOf('SilverStripe\\Admin\\CMSMenuItem', $menuItem, 'Link menu item is of class CMSMenuItem'); $this->assertEquals($menuItem->title, 'link title', 'Link menu item has the correct title'); $this->assertEquals($menuItem->url,'http://www.example.com', 'Link menu item has the correct link'); $this->assertNull($menuItem->controller, 'Link menu item has no controller class'); @@ -78,9 +81,9 @@ class CMSMenuTest extends SapphireTest implements TestOnly { // 1.) SecurityAdmin is included // 2.) LeftAndMain & ModelAdmin are excluded $cmsClasses = CMSMenu::get_cms_classes(); - $this->assertContains('SecurityAdmin', $cmsClasses, 'SecurityAdmin included in valid CMS Classes'); - $this->assertNotContains('LeftAndMain', $cmsClasses, 'LeftAndMain not included in valid CMS Classes'); - $this->assertNotContains('ModelAdmin', $cmsClasses, 'LeftAndMain not included in valid CMS Classes'); + $this->assertContains('SilverStripe\\Admin\\SecurityAdmin', $cmsClasses, 'SecurityAdmin included in valid CMS Classes'); + $this->assertNotContains('SilverStripe\\Admin\\LeftAndMain', $cmsClasses, 'LeftAndMain not included in valid CMS Classes'); + $this->assertNotContains('SilverStripe\\Admin\\ModelAdmin', $cmsClasses, 'LeftAndMain not included in valid CMS Classes'); } @@ -89,13 +92,13 @@ class CMSMenuTest extends SapphireTest implements TestOnly { // Populate from CMS Classes, check for existance of SecurityAdmin CMSMenu::clear_menu(); CMSMenu::populate_menu(); - $menuItem = CMSMenu::get_menu_item('SecurityAdmin'); - $this->assertInstanceOf('CMSMenuItem', $menuItem, 'SecurityAdmin menu item exists'); - $this->assertContains($menuItem->url, singleton('SecurityAdmin')->Link(), 'Menu item has the correct link'); - $this->assertEquals($menuItem->controller, 'SecurityAdmin', 'Menu item has the correct controller class'); + $menuItem = CMSMenu::get_menu_item('SilverStripe\\Admin\\SecurityAdmin'); + $this->assertInstanceOf('SilverStripe\\Admin\\CMSMenuItem', $menuItem, 'SecurityAdmin menu item exists'); + $this->assertContains($menuItem->url, singleton('SilverStripe\\Admin\\SecurityAdmin')->Link(), 'Menu item has the correct link'); + $this->assertEquals($menuItem->controller, 'SilverStripe\\Admin\\SecurityAdmin', 'Menu item has the correct controller class'); $this->assertEquals( $menuItem->priority, - singleton('SecurityAdmin')->stat('menu_priority'), + singleton('SilverStripe\\Admin\\SecurityAdmin')->stat('menu_priority'), 'Menu item has the correct priority' ); diff --git a/admin/tests/LeftAndMainTest.php b/admin/tests/LeftAndMainTest.php index 89a8d51f6..aa5d942b7 100644 --- a/admin/tests/LeftAndMainTest.php +++ b/admin/tests/LeftAndMainTest.php @@ -1,6 +1,9 @@ autoFollowRedirection = false; $this->resetMenu(); - $this->backupCss = Config::inst()->get('LeftAndMain', 'extra_requirements_css'); - $this->backupJs = Config::inst()->get('LeftAndMain', 'extra_requirements_javascript'); + $this->backupCss = Config::inst()->get('SilverStripe\\Admin\\LeftAndMain', 'extra_requirements_css'); + $this->backupJs = Config::inst()->get('SilverStripe\\Admin\\LeftAndMain', 'extra_requirements_javascript'); $this->backupCombined = Requirements::get_combined_files_enabled(); - Config::inst()->update('LeftAndMain', 'extra_requirements_css', array( + Config::inst()->update('SilverStripe\\Admin\\LeftAndMain', 'extra_requirements_css', array( FRAMEWORK_DIR . '/tests/assets/LeftAndMainTest.css' )); - Config::inst()->update('LeftAndMain', 'extra_requirements_javascript', array( + Config::inst()->update('SilverStripe\\Admin\\LeftAndMain', 'extra_requirements_javascript', array( FRAMEWORK_DIR . '/tests/assets/LeftAndMainTest.js' )); @@ -56,8 +59,8 @@ class LeftAndMainTest extends FunctionalTest { public function tearDown() { parent::tearDown(); - Config::inst()->update('LeftAndMain', 'extra_requirements_css', $this->backupCss); - Config::inst()->update('LeftAndMain', 'extra_requirements_javascript', $this->backupJs); + Config::inst()->update('SilverStripe\\Admin\\LeftAndMain', 'extra_requirements_css', $this->backupCss); + Config::inst()->update('SilverStripe\\Admin\\LeftAndMain', 'extra_requirements_javascript', $this->backupJs); Requirements::set_combined_files_enabled($this->backupCombined); } @@ -150,7 +153,7 @@ class LeftAndMainTest extends FunctionalTest { $this->session()->inst_set('loggedInAs', $adminuser->ID); $this->resetMenu(); - $menuItems = singleton('LeftAndMain')->MainMenu(false); + $menuItems = singleton('SilverStripe\\Admin\\LeftAndMain')->MainMenu(false); foreach($menuItems as $menuItem) { $link = $menuItem->Link; @@ -180,7 +183,7 @@ class LeftAndMainTest extends FunctionalTest { // anonymous user $this->session()->inst_set('loggedInAs', null); $this->resetMenu(); - $menuItems = singleton('LeftAndMain')->MainMenu(false); + $menuItems = singleton('SilverStripe\\Admin\\LeftAndMain')->MainMenu(false); $this->assertEquals( array_map($allValsFn, $menuItems->column('Code')), array(), @@ -190,24 +193,24 @@ class LeftAndMainTest extends FunctionalTest { // restricted cms user $this->logInAs($securityonlyuser); $this->resetMenu(); - $menuItems = singleton('LeftAndMain')->MainMenu(false); + $menuItems = singleton('SilverStripe\\Admin\\LeftAndMain')->MainMenu(false); $menuItems = array_map($allValsFn, $menuItems->column('Code')); sort($menuItems); $this->assertEquals( $menuItems, - array('CMSProfileController', 'Help', 'SecurityAdmin'), + array('SilverStripe\\Admin\\CMSProfileController', 'Help', 'SilverStripe\\Admin\\SecurityAdmin'), 'Groups with limited access can only access the interfaces they have permissions for' ); // all cms sections user $this->logInAs($allcmssectionsuser); $this->resetMenu(); - $menuItems = singleton('LeftAndMain')->MainMenu(false); - $this->assertContains('CMSProfileController', + $menuItems = singleton('SilverStripe\\Admin\\LeftAndMain')->MainMenu(false); + $this->assertContains('SilverStripe\\Admin\\CMSProfileController', array_map($allValsFn, $menuItems->column('Code')), 'Group with CMS_ACCESS_LeftAndMain permission can edit own profile' ); - $this->assertContains('SecurityAdmin', + $this->assertContains('SilverStripe\\Admin\\SecurityAdmin', array_map($allValsFn, $menuItems->column('Code')), 'Group with CMS_ACCESS_LeftAndMain permission can access all sections' ); @@ -219,9 +222,9 @@ class LeftAndMainTest extends FunctionalTest { // admin $this->logInAs($adminuser); $this->resetMenu(); - $menuItems = singleton('LeftAndMain')->MainMenu(false); + $menuItems = singleton('SilverStripe\\Admin\\LeftAndMain')->MainMenu(false); $this->assertContains( - 'SecurityAdmin', + 'SilverStripe\\Admin\\SecurityAdmin', array_map($allValsFn, $menuItems->column('Code')), 'Administrators can access Security Admin' ); diff --git a/admin/tests/ModelAdminTest.php b/admin/tests/ModelAdminTest.php index 0e6470857..6bc369309 100644 --- a/admin/tests/ModelAdminTest.php +++ b/admin/tests/ModelAdminTest.php @@ -2,6 +2,8 @@ use SilverStripe\ORM\DataObject; use SilverStripe\Security\Permission; +use SilverStripe\Admin\ModelAdmin; + class ModelAdminTest extends FunctionalTest { diff --git a/filesystem/File.php b/filesystem/File.php index f3ed555a8..608abac50 100644 --- a/filesystem/File.php +++ b/filesystem/File.php @@ -11,6 +11,9 @@ use SilverStripe\ORM\DB; use SilverStripe\ORM\DataObject; use SilverStripe\Security\Member; use SilverStripe\Security\Permission; +use SilverStripe\Admin\AdminRootController; +use SilverStripe\Admin\CMSPreviewable; + diff --git a/forms/gridfield/GridFieldDetailForm.php b/forms/gridfield/GridFieldDetailForm.php index c7a4084a3..98fbd65ea 100644 --- a/forms/gridfield/GridFieldDetailForm.php +++ b/forms/gridfield/GridFieldDetailForm.php @@ -6,6 +6,8 @@ use SilverStripe\ORM\HasManyList; use SilverStripe\ORM\ManyManyList; use SilverStripe\ORM\ValidationException; use SilverStripe\ORM\FieldType\DBHTMLText; +use SilverStripe\Admin\LeftAndMain; + /** * Provides view and edit forms at GridField-specific URLs. diff --git a/tests/core/manifest/NamespacedClassManifestTest.php b/tests/core/manifest/NamespacedClassManifestTest.php index 470dd56bc..8a86b1391 100644 --- a/tests/core/manifest/NamespacedClassManifestTest.php +++ b/tests/core/manifest/NamespacedClassManifestTest.php @@ -60,7 +60,7 @@ class NamespacedClassManifestTest extends SapphireTest { $method->setAccessible(true); $expectedImports = array( - 'ModelAdmin', + 'SilverStripe\\Admin\\ModelAdmin', 'Cont' => 'Controller', 'Request' => 'SS_HTTPRequest', 'Response' => 'SS_HTTPResponse', @@ -83,9 +83,9 @@ class NamespacedClassManifestTest extends SapphireTest { // including all core classes $method = new ReflectionMethod($this->manifest, 'coalesceDescendants'); $method->setAccessible(true); - $method->invoke($this->manifest, 'ModelAdmin'); + $method->invoke($this->manifest, 'SilverStripe\\Admin\\ModelAdmin'); - $this->assertContains('SilverStripe\Framework\Tests\ClassI', ClassInfo::subclassesFor('ModelAdmin')); + $this->assertContains('SilverStripe\Framework\Tests\ClassI', ClassInfo::subclassesFor('SilverStripe\\Admin\\ModelAdmin')); } /** diff --git a/tests/core/manifest/fixtures/namespaced_classmanifest/module/classes/ClassI.php b/tests/core/manifest/fixtures/namespaced_classmanifest/module/classes/ClassI.php index 48a894358..5e6248eb7 100644 --- a/tests/core/manifest/fixtures/namespaced_classmanifest/module/classes/ClassI.php +++ b/tests/core/manifest/fixtures/namespaced_classmanifest/module/classes/ClassI.php @@ -2,7 +2,7 @@ namespace SilverStripe\Framework\Tests; //whitespace here is important for tests, please don't change it -use ModelAdmin; +use SilverStripe\Admin\ModelAdmin; use Controller as Cont ; use SS_HTTPRequest as Request, SS_HTTPResponse as Response, SilverStripe\Security\PermissionProvider as P; use silverstripe\test\ClassA;