/** * Retrieve a list of allowed parent roles * * @paraam integer $roleId * @param integer $id Role id * @return array list of allowable parent roles in 'list' format */ public function allowedParents(Model $model, $id = null) { if (!$model->Behaviors->enabled('Croogo.Aliasable')) { $model->Behaviors->load('Croogo.Aliasable'); } if ($id == $model->byAlias('public')) { return array(); } $adminRoleId = $model->byAlias('admin'); $excludes = Hash::filter(array_values(array($adminRoleId, $id))); $options = array('conditions' => array('NOT' => array($model->alias . '.id' => $excludes))); return $model->find('list', $options); }