<?php
class MyDataObject extends DataObject implements PermissionProvider {
public function canView($member = NULL, $context = []) {
return Permission::check('MYOBJECT_VIEW');
}
public function canEdit($member = NULL, $context = []) {
return Permission::check('MYOBJECT_EDIT');
}
public function canDelete($member = NULL, $context = []) {
return Permission::check('MYOBJECT_DELETE');
}
public function canCreate($member = NULL, $context = []) {
return Permission::check('MYOBJECT_CREATE');
}
/**
* Get an array of {@link Permission} definitions that this object supports
*
* @return array
*/
public function providePermissions() {
return array(
'MYOBJECT_VIEW' => array(
'name' => 'View My Object',
'category' => 'Module',
),
'MYOBJECT_EDIT' => array(
'name' => 'Edit My Object',
'category' => 'Module',
),
'MYOBJECT_DELETE' => array(
'name' => 'Delete My Object',
'category' => 'Module',
),
'MYOBJECT_CREATE' => array(
'name' => 'Create My Object',
'category' => 'Module'
)
);
}
}