PHP Code:
$ACLActions = array(
'module'=>array('actions'=>
array(
'access'=>
array(
'aclaccess'=>array(ACL_ALLOW_ENABLED,ACL_ALLOW_DEFAULT, ACL_ALLOW_DISABLED),
'label'=>'LBL_ACTION_ACCESS',
'default'=>ACL_ALLOW_ENABLED,
),
'view'=>
array(
'aclaccess'=>array(ACL_ALLOW_ALL,ACL_ALLOW_GROUP,ACL_ALLOW_OWNER,ACL_ALLOW_DEFAULT, ACL_ALLOW_NONE),
'label'=>'LBL_ACTION_VIEW',
'default'=>ACL_ALLOW_ALL,
),
'list'=>
array(
'aclaccess'=>array(ACL_ALLOW_ALL,ACL_ALLOW_GROUP,ACL_ALLOW_OWNER,ACL_ALLOW_DEFAULT, ACL_ALLOW_NONE),
'label'=>'LBL_ACTION_LIST',
'default'=>ACL_ALLOW_ALL,
),
'edit'=>
array(
'aclaccess'=>array(ACL_ALLOW_ALL,ACL_ALLOW_GROUP,ACL_ALLOW_OWNER,ACL_ALLOW_DEFAULT, ACL_ALLOW_NONE),
'label'=>'LBL_ACTION_EDIT',
'default'=>ACL_ALLOW_ALL,
),
'delete'=>
array(
'aclaccess'=>array(ACL_ALLOW_ALL,ACL_ALLOW_GROUP,ACL_ALLOW_OWNER,ACL_ALLOW_DEFAULT, ACL_ALLOW_NONE),
'label'=>'LBL_ACTION_DELETE',
'default'=>ACL_ALLOW_ALL,
),
'import'=>
array(
'aclaccess'=>array(ACL_ALLOW_ALL,ACL_ALLOW_DEFAULT, ACL_ALLOW_NONE),
'label'=>'LBL_ACTION_IMPORT',
'default'=>ACL_ALLOW_ALL,
),
'export'=>
array(
'aclaccess'=>array(ACL_ALLOW_ALL,ACL_ALLOW_GROUP,ACL_ALLOW_OWNER,ACL_ALLOW_DEFAULT, ACL_ALLOW_NONE),
'label'=>'LBL_ACTION_EXPORT',
'default'=>ACL_ALLOW_ALL,
),
)
)
);
I'm not sure, but when I see something like this I think it would be difficult to implement a Create ACLAction and fully make it transparant in the application. But, with a little help from logic hooks, you should be able to make a solution which will actually prevent certain roles from creating certain types of records.
Bookmarks