Merge branch '3.3' into 3.4

This commit is contained in:
Daniel Hensby 2016-11-28 13:57:38 +00:00
commit 21d9b7cdf1
No known key found for this signature in database
GPG Key ID: B00D1E9767F0B06E
2 changed files with 5 additions and 1 deletions

View File

@ -1019,7 +1019,7 @@ class SiteTree extends DataObject implements PermissionProvider,i18nEntityProvid
} }
// Fall over to inherited permissions // Fall over to inherited permissions
if($parent) { if($parent && $parent->exists()) {
return $parent->canAddChildren($member); return $parent->canAddChildren($member);
} else { } else {
// This doesn't necessarily mean we are creating a root page, but that // This doesn't necessarily mean we are creating a root page, but that

View File

@ -545,6 +545,10 @@ class SiteTreeTest extends SapphireTest {
$this->assertTrue(singleton('SiteTreeTest_ClassA')->canCreate(null)); $this->assertTrue(singleton('SiteTreeTest_ClassA')->canCreate(null));
$this->assertFalse(singleton('SiteTreeTest_ClassA')->canCreate(null, array('Parent' => $parentB))); $this->assertFalse(singleton('SiteTreeTest_ClassA')->canCreate(null, array('Parent' => $parentB)));
$this->assertTrue(singleton('SiteTreeTest_ClassC')->canCreate(null, array('Parent' => $parentB))); $this->assertTrue(singleton('SiteTreeTest_ClassC')->canCreate(null, array('Parent' => $parentB)));
// Test creation underneath a parent which doesn't exist in the database. This should
// fall back to checking whether the user can create pages at the root of the site
$this->assertTrue(singleton('SiteTree')->canCreate(null, array('Parent' => singleton('SiteTree'))));
} }
public function testEditPermissionsOnDraftVsLive() { public function testEditPermissionsOnDraftVsLive() {