You can set a default CanViewType
and ViewerGroups
by using the populateDefaults()
function:
public function populateDefaults() {
$this->CanViewType = 'OnlyTheseUsers';
$this->ViewerGroups()->add(Group::get()->byID(1));
$this->ViewerGroups()->add(Group::get()->byID(2));
parent::populateDefaults();
}
This will add the 2 user groups and set the can view type to 'OnlyTheseUsers'.
An alternative solution is to set the canView
function to only allow members in group 1 or 2 to view the page:
public function canView($member = NULL) {
$currentUser = Member::currentUser();
if ($currentUser && ($currentUser->inGroup(1) || $currentUser->inGroup(2))) {
return true;
}
return false;
}