protected function getPermissions($component = null, array $additionalPermissions = array())
{
// Make sure we have a component
if (empty($component)) {
$component = $this->container->componentName;
}
// Initialise with all true
$permissions = array('create' => true, 'edit' => true, 'editown' => true, 'editstate' => true, 'delete' => true);
if (!empty($additionalPermissions)) {
foreach ($additionalPermissions as $localKey => $joomlaPermission) {
$permissions[$localKey] = true;
}
}
$platform = $this->container->platform;
// If this is a CLI application we don't make any ACL checks
if ($platform->isCli()) {
return (object) $permissions;
}
// Get the core permissions
$permissions = array('create' => $platform->authorise('core.create', $component), 'edit' => $platform->authorise('core.edit', $component), 'editown' => $platform->authorise('core.edit.own', $component), 'editstate' => $platform->authorise('core.edit.state', $component), 'delete' => $platform->authorise('core.delete', $component));
if (!empty($additionalPermissions)) {
foreach ($additionalPermissions as $localKey => $joomlaPermission) {
$permissions[$localKey] = $platform->authorise($joomlaPermission, $component);
}
}
return (object) $permissions;
}