Example #1
0
function setSiteGroupRights($site, $group, $rights)
{
    $application = new \BackBee\Standard\Application();
    $em = $application->getEntityManager();
    $aclProvider = $application->getSecurityContext()->getACLProvider();
    $securityIdentity = new \Symfony\Component\Security\Acl\Domain\UserSecurityIdentity($group->getObjectIdentifier(), 'BackBee\\Security\\Group');
    if (array_key_exists('sites', $rights)) {
        $sites = addSiteRights($rights['sites'], $aclProvider, $securityIdentity, $site);
        if (array_key_exists('layouts', $rights)) {
            addLayoutRights($rights['layouts'], $aclProvider, $securityIdentity, $site, $em);
        }
        if (array_key_exists('pages', $rights)) {
            addPageRights($rights['pages'], $aclProvider, $securityIdentity, $em);
        }
        if (array_key_exists('mediafolders', $rights)) {
            addFolderRights($rights['mediafolders'], $aclProvider, $securityIdentity);
        }
        if (array_key_exists('contents', $rights)) {
            addContentRights($rights['contents'], $aclProvider, $securityIdentity, getAllContentClasses($application));
        }
        if (array_key_exists('bundles', $rights)) {
            addBundleRights($rights['bundles'], $aclProvider, $securityIdentity, $application);
        }
        if (array_key_exists('users', $rights)) {
            addUserRights($rights['users'], $aclProvider, $securityIdentity);
        }
        if (array_key_exists('groups', $rights)) {
            addGroupRights($rights['groups'], $aclProvider, $securityIdentity);
        }
        return $sites;
    }
}