mirror of
https://github.com/silverstripe/silverstripe-subsites
synced 2024-10-22 09:05:55 +00:00
API CHANGE: Removed deprecated Subsite::getSubsitesForMember(). Use Subsite::acessible_sites() instead.
BUGFIX: Improved hasMainSitePermission() to be less generous about handing over ADMIN rights between subsites. (from r88955) (from r96299)
This commit is contained in:
parent
b823bd286e
commit
3a59828fed
@ -350,29 +350,6 @@ JS;
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* Get all subsites.
|
|
||||||
*
|
|
||||||
* @return DataObjectSet Subsite instances
|
|
||||||
*/
|
|
||||||
static function getSubsitesForMember( $member = null) {
|
|
||||||
if(!$member && $member !== FALSE) $member = Member::currentMember();
|
|
||||||
|
|
||||||
if(!$member) return false;
|
|
||||||
|
|
||||||
if(self::hasMainSitePermission($member)) {
|
|
||||||
return DataObject::get('Subsite');
|
|
||||||
} else {
|
|
||||||
return DataObject::get(
|
|
||||||
'Subsite',
|
|
||||||
"\"MemberID\" = {$member->ID}",
|
|
||||||
'',
|
|
||||||
"LEFT JOIN \"Group\" ON \"Subsite\".\"ID\" = \"SubsiteID\"
|
|
||||||
LEFT JOIN \"Group_Members\" ON \"Group\".\"ID\" = \"Group_Members\".\"GroupID\""
|
|
||||||
);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
static function hasMainSitePermission($member = null, $permissionCodes = array('ADMIN')) {
|
static function hasMainSitePermission($member = null, $permissionCodes = array('ADMIN')) {
|
||||||
if(!is_array($permissionCodes))
|
if(!is_array($permissionCodes))
|
||||||
user_error('Permissions must be passed to Subsite::hasMainSitePermission as an array', E_USER_ERROR);
|
user_error('Permissions must be passed to Subsite::hasMainSitePermission as an array', E_USER_ERROR);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user