public static function renderSiteSelector($tmpl) { global $wpdb; $tmpl = mvb_Model_Template::retrieveSub('MULTISITE_SELECTOR', $tmpl); $content = ''; $render_mss = mvb_Model_Helper::getParam('render_mss', 'REQUEST'); if (mvb_Model_API::isNetworkPanel() || $render_mss) { $list_tmpl = mvb_Model_Template::retrieveSub('ROLE_LIST', $tmpl); $list = ''; $sites = mvb_Model_Helper::getSiteList(); $current = mvb_Model_Helper::getParam('site', 'REQUEST', get_current_blog_id()); if (is_array($sites)) { foreach ($sites as $site) { $blog_prefix = $wpdb->get_blog_prefix($site->blog_id); //get Site Name $query = "SELECT option_value FROM {$blog_prefix}options "; $query .= "WHERE option_name = 'blogname'"; $name = $wpdb->get_var($query); if ($site->blog_id == $current) { $is_current = 'selected'; $c_name = $name; } else { $is_current = ''; } $markers = array('###value###' => $site->blog_id, '###title###' => $name . ' ', '###selected###' => $is_current); $list .= mvb_Model_Template::updateMarkers($markers, $list_tmpl); } } $content = mvb_Model_Template::replaceSub('ROLE_LIST', $list, $tmpl); $markers = array('###current_site###' => mvb_Model_Helper::cutStr($c_name, 15), '###title_full###' => $c_name); $content = mvb_Model_Template::updateMarkers($markers, $content); } return $content; }
public function deactivate() { global $wpdb; $sites = mvb_Model_Helper::getSiteList(); if (is_array($sites) && count($sites)) { foreach ($sites as $site) { $c_blog = new mvb_Model_Blog(array('id' => $site->blog_id, 'url' => get_site_url($site->blog_id), 'prefix' => $wpdb->get_blog_prefix($site->blog_id))); self::remove_options($c_blog); } } else { self::remove_options(); } }
function do_save() { if (isset($_POST['submited'])) { $params = isset($_POST['wpaccess']) ? $_POST['wpaccess'] : array(); $error_message = NULL; if (mvb_Model_API::isNetworkPanel() && mvb_Model_ConfigPress::getOption('aam.multisite.apply_all') == 'true') { $limit = apply_filters(WPACCESS_PREFIX . 'msar_restrict_limit', WPACCESS_APPLY_LIMIT); foreach (mvb_Model_Helper::getSiteList() as $i => $site) { if ($site->blog_id == $_GET['site']) { continue; } elseif ($i + 1 >= WPACCESS_APPLY_LIMIT && $limit != -1) { $error_message = mvb_Model_Label::get('LABEL_148'); break; } mvb_Model_API::setCurrentBlog($site->blog_id); $this->initConfig(); $this->config->setMenu(isset($params['menu']) ? $params['menu'] : array()); $this->config->setMetaboxes(isset($params['metabox']) ? $params['metabox'] : array()); $this->config->setCapabilities(isset($params['advance']) ? $params['advance'] : array()); $this->config->saveConfig(); } } //overwrite current blog //TODO - maybe there is better way if (isset($_GET['site'])) { mvb_Model_API::setCurrentBlog($_GET['site']); } $this->config->setMenu(isset($params['menu']) ? $params['menu'] : array()); $this->config->setMetaboxes(isset($params['metabox']) ? $params['metabox'] : array()); $this->config->setCapabilities(isset($params['advance']) ? $params['advance'] : array()); $this->config->saveConfig(); mvb_Model_ConfigPress::saveConfig(stripslashes($params['config_press'])); } else { $error_message = FALSE; } return $error_message; }
/** * * @global type $wpdb * @param type $template * @return type */ function renderSiteSelector($template) { global $wpdb; $m_tempate = $this->templObj->retrieveSub('MULTISITE_SELECTOR', $template); if (mvb_Model_API::isNetworkPanel() || isset($_REQUEST['render_mss'])) { $listTemplate = $this->templObj->retrieveSub('ROLE_LIST', $m_tempate); $list = ''; $sites = mvb_Model_Helper::getSiteList(); $current = isset($_REQUEST['site']) ? $_REQUEST['site'] : get_current_blog_id(); if (is_array($sites)) { foreach ($sites as $site) { $blog_prefix = $wpdb->get_blog_prefix($site->blog_id); //get Site Name $query = "SELECT option_value FROM {$blog_prefix}options "; $query .= "WHERE option_name = 'blogname'"; $name = $wpdb->get_var($query); if ($site->blog_id == $current) { $is_current = 'selected="selected"'; $c_name = $name; } else { $is_current = ''; } $markers = array('###value###' => $site->blog_id, '###title###' => $name . ' ', '###selected###' => $is_current); $list .= $this->templObj->updateMarkers($markers, $listTemplate); } } $m_tempate = $this->templObj->replaceSub('ROLE_LIST', $list, $m_tempate); $m_array = array('###current_site###' => strlen($c_name) > 15 ? substr($c_name, 0, 14) . '...' : $c_name, '###title_full###' => $c_name); $m_tempate = $this->templObj->updateMarkers($m_array, $m_tempate); } else { $m_tempate = ''; } return $this->templObj->replaceSub('MULTISITE_SELECTOR', $m_tempate, $template); }
protected function apply_all() { global $wpdb; $sites = mvb_Model_Helper::getSiteList(); //TODO - implement more complex checking $result = array('status' => 'success', 'message' => mvb_Model_Label::get('LABEL_152')); if (is_array($sites) && count($sites)) { $c_blog = mvb_Model_API::getCurrentBlog(); $options = mvb_Model_API::getBlogOption(WPACCESS_PREFIX . 'options', array()); $morders = mvb_Model_API::getBlogOption(WPACCESS_PREFIX . 'menu_order', array()); $usroles = mvb_Model_API::getBlogOption('user_roles', array()); $kparams = mvb_Model_API::getBlogOption(WPACCESS_PREFIX . 'key_params', array()); $limit = WPACCESS_APPLY_LIMIT; /* * Check if Restriction class exist. * Note for hacks : Better will be to buy an add-on for $10 because on * next release I'll change the checking class */ if (class_exists('aamms_msar_extend')) { $limit = apply_filters(WPACCESS_PREFIX . 'msar_restrict_limit', $limit); } foreach ($sites as $i => $site) { if ($site->blog_id == $c_blog->getID()) { //skip current blog continue; } $blog = new mvb_Model_Blog(array('id' => $site->blog_id, 'url' => get_site_url($site->blog_id), 'prefix' => $wpdb->get_blog_prefix($site->blog_id))); /* $options1 = get_blog_option($site->blog_id, $blog_prefix . WPACCESS_PREFIX . 'options', array()); $morders1 = get_blog_option($site->blog_id, $blog_prefix . WPACCESS_PREFIX . 'menu_order', array()); $usroles1 = get_blog_option($site->blog_id, $blog_prefix . 'user_roles', array()); $kparams1 = get_blog_option($site->blog_id, $blog_prefix . WPACCESS_PREFIX . 'key_params', array()); $options1 = array_merge_recursive($options, $options1); $morders1 = array_merge_recursive($morders, $morders1); $usroles1 = array_merge_recursive($usroles, $usroles1); $kparams1 = array_merge_recursive($kparams, $kparams1); * */ mvb_Model_API::updateBlogOption(WPACCESS_PREFIX . 'options', $options, $blog); mvb_Model_API::updateBlogOption(WPACCESS_PREFIX . 'menu_order', $morders, $blog); mvb_Model_API::updateBlogOption('user_roles', $usroles, $blog); mvb_Model_API::updateBlogOption(WPACCESS_PREFIX . 'key_params', $kparams, $blog); if ($limit != -1 && $i + 1 > $limit) { $result = array('status' => 'error', 'message' => mvb_Model_Label::get('LABEL_156')); break; } } } return $result; }