mirror of
https://github.com/silverstripe/silverstripe-cms
synced 2024-10-22 08:05:56 +02:00
Merge branch '3.4' into 3.5
This commit is contained in:
commit
e90715d6c6
@ -1019,7 +1019,7 @@ class SiteTree extends DataObject implements PermissionProvider,i18nEntityProvid
|
||||
}
|
||||
|
||||
// Fall over to inherited permissions
|
||||
if($parent) {
|
||||
if($parent && $parent->exists()) {
|
||||
return $parent->canAddChildren($member);
|
||||
} else {
|
||||
// This doesn't necessarily mean we are creating a root page, but that
|
||||
|
@ -52,7 +52,7 @@
|
||||
? (parentTree.getValue() || this.getParentID())
|
||||
: null,
|
||||
newClassName = metadata ? metadata.ClassName : null,
|
||||
hintKey = (newClassName && parentMode === 'child')
|
||||
hintKey = (newClassName && parentMode === 'child' && id)
|
||||
? newClassName
|
||||
: 'Root',
|
||||
hint = (typeof hints[hintKey] !== 'undefined') ? hints[hintKey] : null,
|
||||
|
@ -545,6 +545,10 @@ class SiteTreeTest extends SapphireTest {
|
||||
$this->assertTrue(singleton('SiteTreeTest_ClassA')->canCreate(null));
|
||||
$this->assertFalse(singleton('SiteTreeTest_ClassA')->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() {
|
||||
|
Loading…
Reference in New Issue
Block a user