/** * Get Data from Database * * @param string $option * @return array * @todo Delete in next releases */ protected function getOldData($option) { $id = $this->getID(); $data = mvb_Model_API::getBlogOption($option); $data = isset($data[$id]) ? $data[$id] : array(); return $data; }
/** * * @param type $caller */ public function __construct($caller) { parent::__construct($caller); $key_params = mvb_Model_API::getBlogOption(WPACCESS_PREFIX . 'key_params', array()); $this->key_params = array_keys($key_params); //TODO - Save in array format }
/** * * @global array $submenu * @param string $tmpl * @param mvb_Model_Manager $parent * @return string */ public static function render($tmpl, $parent) { global $wp_post_types; self::$parent = $parent; //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 $cache = mvb_Model_API::getBlogOption(WPACCESS_PREFIX . 'options', array()); $cache = isset($cache['settings']) ? $cache['settings'] : array(); mvb_Model_API::updateBlogOption(WPACCESS_PREFIX . 'cache', $cache); } $row_tmpl = mvb_Model_Template::retrieveSub('METABOX_LIST_ITEM', $tmpl); $list = ''; if (isset($cache['metaboxes']) && is_array($cache['metaboxes'])) { $list_tmpl = mvb_Model_Template::retrieveSub('POST_METABOXES_LIST', $row_tmpl); $item_tmpl = mvb_Model_Template::retrieveSub('POST_METABOXES_ITEM', $list_tmpl); $widget_tmpl = mvb_Model_Template::retrieveSub('WIDGET_ITEM', $list_tmpl); foreach ($cache['metaboxes'] as $type => $metaboxes) { $render = TRUE; switch ($type) { case 'widgets': $temp = self::renderWidget($widget_tmpl, $metaboxes); $label = mvb_Model_Label::get('LABEL_79'); break; case 'dashboard': $temp = self::renderMetabox($item_tmpl, $metaboxes, $type); $label = mvb_Model_Label::get('LABEL_116'); break; default: if (isset($wp_post_types[$type])) { $temp = self::renderMetabox($item_tmpl, $metaboxes, $type); $label = $wp_post_types[$type]->labels->name; } else { $render = FALSE; } break; } if ($render) { $temp = mvb_Model_Template::replaceSub('POST_METABOXES_LIST', $temp, $row_tmpl); $list .= mvb_Model_Template::updateMarkers(array('###post_type_label###' => $label), $temp); } } $content = mvb_Model_Template::replaceSub('METABOX_LIST_ITEM', $list, $tmpl); $content = mvb_Model_Template::replaceSub('METABOX_LIST_EMPTY', '', $content); } else { $empty_tmpl = mvb_Model_Template::retrieveSub('METABOX_LIST_EMPTY', $tmpl); $content = mvb_Model_Template::replaceSub('METABOX_LIST_ITEM', '', $tmpl); $content = mvb_Model_Template::replaceSub('METABOX_LIST_EMPTY', $empty_tmpl, $content); } return $content; }
/** * {@inheritdoc } */ protected function getConfig() { $config = mvb_Model_API::getBlogOption(WPACCESS_PREFIX . 'config_' . $this->getID()); if ($config) { $this->setMenu($config->menu); $this->setMenuOrder($config->menu_order); $this->setMetaboxes($config->metaboxes); $this->setRestrictions($config->restrictions); } $roles = mvb_Model_API::getRoleList(FALSE); //TODO - Potensially hole if (isset($roles[$this->getID()]['capabilities'])) { $this->setCapabilities($roles[$this->getID()]['capabilities']); } }
/** * */ public function render_optionlist() { $role = mvb_Model_Helper::getParam('role', 'POST'); $user = mvb_Model_Helper::getParam('user', 'POST'); $m = new mvb_Model_Manager($this, $role, $user); $or_roles = mvb_Model_API::getBlogOption(WPACCESS_PREFIX . 'original_user_roles'); $content = $m->getMainOptionsList(); $content = $m->templObj->clearTemplate($content); $result = array('html' => apply_filters(WPACCESS_PREFIX . 'option_page', $content), 'restorable' => isset($or_roles[$role]) ? TRUE : FALSE); die(json_encode($result)); }
public function admin_menu() { global $submenu, $menu; if (mvb_Model_API::getBlogOption(WPACCESS_PREFIX . 'first_time', FALSE) !== FALSE) { $aam_cap = mvb_Model_API::isSuperAdmin() ? WPACCESS_ADMIN_ROLE : 'aam_manage'; } else { $aam_cap = WPACCESS_ADMIN_ROLE; } if (!isset($submenu['awm-group'])) { add_menu_page(__('AWM Group', 'aam'), __('AWM Group', 'aam'), 'administrator', 'awm-group', array($this, 'awm_group'), WPACCESS_CSS_URL . 'images/active-menu.png'); } add_submenu_page('awm-group', __('Access Manager', 'aam'), __('Access Manager', 'aam'), $aam_cap, 'wp_access', array($this, 'accessManagerPage')); //init the list of key parameters $this->init_key_params(); if (!mvb_Model_API::isSuperAdmin()) { //filter the menu $this->getAccessControl()->getMenuFilter()->manage(); } }
function __construct() { $keyParams = mvb_Model_API::getBlogOption(WPACCESS_PREFIX . 'key_params', array()); $this->keyParams = array_keys($keyParams); //TODO - Save in array format }
/** * * @global type $submenu * @param type $template * @return type */ public function renderMainMenuOptions($template) { global $submenu; $s_menu = $this->getRoleMenu(); /* * First Tab - Main Menu */ $listTemplate = $this->templObj->retrieveSub('MAIN_MENU_LIST', $template); $itemTemplate = $this->templObj->retrieveSub('MAIN_MENU_ITEM', $listTemplate); $sublistTemplate = $this->templObj->retrieveSub('MAIN_MENU_SUBLIST', $itemTemplate); $subitemTemplate = $this->templObj->retrieveSub('MAIN_MENU_SUBITEM', $sublistTemplate); $list = ''; if (is_array($s_menu)) { foreach ($s_menu as $menuItem) { if (!$menuItem[0]) { //seperator continue; } //render submenu $subList = ''; if (isset($submenu[$menuItem[2]]) && is_array($submenu[$menuItem[2]])) { foreach ($submenu[$menuItem[2]] as $submenuItem) { $checked = $this->checkChecked('submenu', array($menuItem[2], $submenuItem[2])); $markers = array('###submenu_name###' => $this->removeHTML($submenuItem[0]), '###value###' => $submenuItem[2], '###checked###' => $checked); $subList .= $this->templObj->updateMarkers($markers, $subitemTemplate); } $subList = $this->templObj->replaceSub('MAIN_MENU_SUBITEM', $subList, $sublistTemplate); } $tTempl = $this->templObj->replaceSub('MAIN_MENU_SUBLIST', $subList, $itemTemplate); $markers = array('###name###' => $this->removeHTML($menuItem[0]), '###id###' => $menuItem[5], '###menu###' => $menuItem[2], '###whole_checked###' => $this->checkChecked('menu', array($menuItem[2]))); $list .= $this->templObj->updateMarkers($markers, $tTempl); } } $listTemplate = $this->templObj->replaceSub('MAIN_MENU_ITEM', $list, $listTemplate); $template = $this->templObj->replaceSub('MAIN_MENU_LIST', $listTemplate, $template); /* * Second Tab - Metaboxes */ $listTemplate = $this->renderMetaboxList($template); $template = $this->templObj->replaceSub('METABOX_LIST', $listTemplate, $template); /* * Third Tab - Advance Settings */ $capList = mvb_Model_API::getCurrentUser()->getAllCaps(); //TODO ? ksort($capList); $listTemplate = $this->templObj->retrieveSub('CAPABILITY_LIST', $template); $itemTemplate = $this->templObj->retrieveSub('CAPABILITY_ITEM', $listTemplate); $list = ''; if (is_array($capList) && count($capList)) { foreach ($capList as $cap => $dump) { $desc = str_replace("\n", '<br/>', mvb_Model_Label::get($cap)); $markers = array('###title###' => $cap, '###description###' => $desc, '###checked###' => $this->checkChecked('capability', array($cap)), '###cap_name###' => mvb_Model_Helper::getCapabilityHumanTitle($cap)); $titem = $this->templObj->updateMarkers($markers, $itemTemplate); if (!in_array($cap, $this->custom_caps)) { $titem = $this->templObj->replaceSub('CAPABILITY_DELETE', '', $titem); } else { $titem = $this->templObj->replaceSub('CAPABILITY_DELETE', $this->templObj->retrieveSub('CAPABILITY_DELETE', $titem), $titem); } $list .= $titem; } $template = $this->templObj->replaceSub('CAPABILITY_LIST_EMPTY', '', $template); } else { $empty = $this->templObj->retrieveSub('CAPABILITY_LIST_EMPTY', $template); $template = $this->templObj->replaceSub('CAPABILITY_LIST_EMPTY', $empty, $template); } $listTemplate = $this->templObj->replaceSub('CAPABILITY_ITEM', $list, $listTemplate); $template = $this->templObj->replaceSub('CAPABILITY_LIST', $listTemplate, $template); //Posts & Pages $template = $this->templObj->replaceSub('POST_INFORMATION', '', $template); $template = $this->templObj->updateMarkers(array('###access_config###' => stripslashes(mvb_Model_API::getBlogOption(WPACCESS_PREFIX . 'access_config', ''))), $template); return $template; }
/** * Get Data from Database * * @param string $option * @return array * @todo Delete in next releases */ protected static function getRoleOldData($role, $option) { $data = mvb_Model_API::getBlogOption($option); $data = isset($data[$role]) ? $data[$role] : array(); return $data; }
protected function initAccessConfig() { $a_conf = stripslashes(mvb_Model_API::getBlogOption(WPACCESS_PREFIX . 'access_config')); require_once 'Zend/Config.php'; require_once 'Zend/Config/Ini_Str.php'; if (trim($a_conf)) { $a_conf = new Zend_Config_Ini_Str($a_conf); } $this->access_config = new mvb_Model_ConfigPress($a_conf); }
protected function delete_capability() { global $wpdb; $cap = trim($_POST['cap']); $custom_caps = mvb_Model_API::getBlogOption(WPACCESS_PREFIX . 'custom_caps'); if (in_array($cap, $custom_caps)) { $roles = mvb_Model_API::getBlogOption('user_roles'); if (is_array($roles)) { foreach ($roles as &$role) { if (isset($role['capabilities'][$cap])) { unset($role['capabilities'][$cap]); } } } mvb_Model_API::updateBlogOption('user_roles', $roles); $result = array('status' => 'success'); mvb_Model_Cache::clearCache(); } else { $result = array('status' => 'error', 'message' => mvb_Model_Label::get('LABEL_125')); } return $result; }
protected function restore_role($role) { $or_roles = mvb_Model_API::getBlogOption(WPACCESS_PREFIX . 'original_user_roles', array()); $roles = mvb_Model_API::getRoleList(FALSE); if ($role != WPACCESS_ADMIN_ROLE || $role == WPACCESS_ADMIN_ROLE && mvb_Model_API::isSuperAdmin()) { if (isset($or_roles[$role])) { $roles[$role]['capabilities'] = $or_roles[$role]['capabilities']; } else { $roles[$role]['capabilities'] = $this->default_caps; } mvb_Model_API::updateBlogOption('user_roles', $roles); mvb_Model_API::deleteBlogOption(WPACCESS_PREFIX . 'config_' . $role); mvb_Model_Cache::clearCache(); $result = array('status' => 'success'); } else { $result = array('status' => 'error'); } return $result; }