private function SaveRights() { $groupID = $this->Value('UserGroup'); $userGroup = Usergroup::Schema()->ByID($groupID); $this->layout->SetUserGroup($userGroup); if (!$userGroup) { $oldRights = $this->layout->GetUserGroupRights(); if ($oldRights) { $oldRights->GetContentRights()->Delete(); } $this->layout->SetUserGroupRights(null); } else { $this->layout->SetUserGroup($userGroup); $this->layoutRights->Save(); $this->layout->SetUserGroupRights($this->layoutRights->Rights()); } $this->layout->Save(); }
/** * Grant evaluation for adding content on top of a layout area * @param Layout $layout The layout * @return GrantResult Returns the grant result telling if creation is allowed */ function GrantAddContentToLayout(Layout $layout) { //dummy content for evaluation $content = new Content(); $content->SetUserGroup($layout->GetUserGroup()); $layoutRights = $layout->GetUserGroupRights(); if ($layoutRights) { $content->SetUserGroupRights($layoutRights->GetContentRights()); } return $this->Grant(BackendAction::Create(), $content); }