/** * Init Object * * @param int $user_id */ public function __construct($caller, $user_id = FALSE) { $this->caller = $caller; $user_id = $user_id ? $user_id : get_current_user_id(); $this->user_config = mvb_Model_API::getUserAccessConfig($user_id); $this->menu_filter = new mvb_Model_FilterMenu($this); }
function aam_set_current_user() { global $current_user; //overwrite user capabilities //TODO - Not optimized $config = mvb_Model_API::getUserAccessConfig($current_user->ID); if ($config instanceof mvb_Model_UserConfig) { $current_user->allcaps = $config->getCapabilities(); if ($config->getUser() instanceof WP_User) { foreach ($config->getUser()->getRoles() as $role) { $current_user->allcaps[$role] = 1; } } } }
public function renderInfo() { $id = mvb_Model_Helper::getParam('id', 'POST'); $type = mvb_Model_Helper::getParam('type', 'POST'); if (mvb_Model_Helper::getParam('restore', 'POST')) { $user = mvb_Model_Helper::getParam('user', 'POST'); $role = mvb_Model_Helper::getParam('role', 'POST'); if ($user) { $config = mvb_Model_API::getUserAccessConfig($user); } else { $config = mvb_Model_API::getRoleAccessConfig($role); } $config->deleteRestriction($type, $id); $config->saveConfig(); } $tmpl = mvb_Model_Template::retrieveSub('POST_INFORMATION', $this->template); $result = mvb_Model_Manager_Restriction::renderInfo($id, $type, $this, $tmpl); return $result; }
protected function initConfig() { if ($this->current_user) { $this->config = mvb_Model_API::getUserAccessConfig($this->current_user); } else { $this->config = mvb_Model_API::getRoleAccessConfig($this->current_role); } }
protected function filter_cap(&$all_caps, $user_id, $cap) { if (isset($all_caps[$cap]) && !mvb_Model_API::getUserAccessConfig($user_id)->hasCapability($cap)) { unset($all_caps[$cap]); } }
/** * Initiate an object and other parameters * * @param string $currentRole Current role to work with * @param string $currentUser Current user to work with * @param object Main Object */ function __construct($pObj, $currentRole = FALSE, $currentUser = FALSE) { $this->pObj = $pObj; $this->templObj = new mvb_Model_Template(); $templatePath = WPACCESS_TEMPLATE_DIR . 'admin_options.html'; $this->template = $this->templObj->readTemplate($templatePath); $this->roles = mvb_Model_API::getRoleList(); $this->custom_caps = mvb_Model_API::getBlogOption(WPACCESS_PREFIX . 'custom_caps', array()); $this->setCurrentRole($currentRole); $this->setCurrentUser($currentUser); if ($this->currentUser) { $this->config = mvb_Model_API::getUserAccessConfig($this->currentUser); } else { $this->config = mvb_Model_API::getRoleAccessConfig($this->currentRole); } //get cache. Compatible with version previouse versions $cache = mvb_Model_API::getBlogOption(WPACCESS_PREFIX . 'cache', NULL); if (is_array($cache)) { //yeap this is new version $this->cache = $cache; } else { //TODO - will be deprecated $cache = mvb_Model_API::getBlogOption(WPACCESS_PREFIX . 'options', array()); $this->cache = isset($cache['settings']) ? $cache['settings'] : array(); mvb_Model_API::updateBlogOption(WPACCESS_PREFIX . 'cache', $this->cache); } $this->userSummary = count_users(); }
/** * Save menu order * * @return array */ protected function save_order() { $apply_all = $_POST['apply_all']; $role = $_POST['role']; $user = $_POST['user']; if ($user) { $config = mvb_Model_API::getUserAccessConfig($user); $config->setMenuOrder($_POST['menu']); $config->saveConfig(); } else { if ($apply_all) { foreach (mvb_Model_API::getRoleList() as $role => $dummy) { $config = mvb_Model_API::getRoleAccessConfig($role); $config->setMenuOrder($_POST['menu']); $config->saveConfig(); } } else { $config = mvb_Model_API::getRoleAccessConfig($role); $config->setMenuOrder($_POST['menu']); $config->saveConfig(); } } mvb_Model_Cache::clearCache(); return array('status' => 'success'); }