function beforeRender(&$controller) { if (!empty($controller->user)) { $aro = array('model' => 'User', 'foreign_key' => $controller->user['User']['id']); } if (!empty($aro)) { //////// set FieldAccess helper data //////// if (class_exists('FieldAccessCollection')) { $controller->params['FieldAccess'] = FieldAccessCollection::getAllFieldAccess($aro); //debug($controller->params['FieldAccess']); } } }
function getAllFieldAccess($aro) { $_this =& FieldAccessCollection::getInstance(); $access = array(); if (!empty($_this->models)) { if (is_numeric($aro)) { $aro_id = $aro; } else { $Aro = ClassRegistry::init('Aro'); $aro_node = $Aro->node($aro); $aro_id = $aro_node[0]['Aro']['id']; } foreach ($_this->models as $alias => &$Model) { $access[$alias] = $Model->getFieldAccess($aro_id); } } return $access; }