/** * Check current user can capability or not * * @param string $cap User capability * * @return bool */ public function currentUserCan($cap) { if (isset($this->_View->viewVars['current_user'])) { $role = $this->_View->viewVars['current_user']['User']['role']; return in_array($cap, HuradRole::getRole($role)['capabilities']); } return false; }
* Author Capabilities */ /* * Author Posts Capability */ HuradRole::addCap('author', 'manage_posts'); HuradRole::addCap('author', 'all_posts'); HuradRole::addCap('author', 'add_posts'); HuradRole::addCap('author', 'publish_posts'); /* * Author Users Capability */ HuradRole::addCap('author', 'manage_users'); /* * Author Etc Capability */ HuradRole::addCap('author', 'read'); HuradRole::addCap('author', 'index'); /* * User Capabilities */ /* * User Users Capability */ HuradRole::addCap('user', 'manage_users'); /* * User Etc Capability */ HuradRole::addCap('user', 'read'); HuradRole::addCap('user', 'index');
/** * Add capability to role * * @param string $roleSlug Role slug * @param string $cap Role Capability */ public static function addCap($roleSlug, $cap) { if (self::roleExists($roleSlug)) { if (!self::capExists($roleSlug, $cap)) { self::$caps[$roleSlug][] = $cap; $result = Hash::insert(self::$roles, $roleSlug . '.capabilities', self::$caps[$roleSlug]); self::$roles = $result; Configure::write('Hurad.caps', self::$caps); } } }