src/Security/Group.php
public function canEdit($member = null)
    {
        if (!$member) {
            $member = Security::getCurrentUser();
        }

        // extended access checks
        $results = $this->extend('canEdit', $member);
        if ($results && is_array($results)) {
            if (!min($results)) {
                return false;
            }
        }

        if (// either we have an ADMIN
            (bool)Permission::checkMember($member, "ADMIN")
            || (
                // or a privileged CMS user and a group without ADMIN permissions.
                // without this check, a user would be able to add himself to an administrators group
                // with just access to the "Security" admin interface
                Permission::checkMember($member, "CMS_ACCESS_SecurityAdmin") &&
                !Permission::get()->filter(array('GroupID' => $this->ID, 'Code' => 'ADMIN'))->exists()
            )
        ) {
            return true;
        }

        return false;
    }
public function canEdit($member = null)
    {
        if (!$member) {
            $member = Security::getCurrentUser();
        }

        // extended access checks
        $results = $this->extend('canEdit', $member);
        if ($results && is_array($results)) {
            if (!min($results)) {
                return false;
            }
        }

        if (// either we have an ADMIN
            (bool)Permission::checkMember($member, "ADMIN")
            || (
                // or a privileged CMS user and a group without ADMIN permissions.
                // without this check, a user would be able to add himself to an administrators group
                // with just access to the "Security" admin interface
                Permission::checkMember($member, "CMS_ACCESS_SecurityAdmin") &&
                !Permission::get()->filter(array('GroupID' => $this->ID, 'Code' => 'ADMIN'))->exists()
            )
        ) {
            return true;
        }

        return false;
    }
public function canEdit ( $ member = null ) { if ( ! $ member ) { $ member = Security :: getCurrentUser ( ) ; } // extended access checks $ results = $ this -> extend ( 'canEdit' , $ member ) ; if ( $ results && is_array ( $ results ) ) { if ( ! min ( $ results ) ) { return false ; } } if ( // either we have an ADMIN ( bool ) Permission :: checkMember ( $ member , "ADMIN" ) || ( // or a privileged CMS user and a group without ADMIN permissions. // without this check, a user would be able to add himself to an administrators group // with just access to the "Security" admin interface Permission :: checkMember ( $ member , "CMS_ACCESS_SecurityAdmin" ) && ! Permission :: get ( ) -> filter ( array ( 'GroupID' => $ this -> ID , 'Code' => 'ADMIN' ) ) -> exists ( ) ) ) { return true ; } return false ; }
Checks for permission-code CMS_ACCESS_SecurityAdmin.
If the group has ADMIN permissions, it requires the user to have ADMIN permissions as well.

@param Member $member Member
@return boolean
Checks for permission - code CMS_ACCESS_SecurityAdmin . If the group has ADMIN permissions it requires the user to have ADMIN permissions as well .