public static function updateGroup() { if (isset($_POST['groupId']) && MainWPUtility::ctype_digit($_POST['groupId'])) { $group = MainWPDB::Instance()->getGroupById($_POST['groupId']); if (MainWPUtility::can_edit_group($group)) { MainWPDB::Instance()->clearGroup($group->id); if (isset($_POST['websiteIds'])) { foreach ($_POST['websiteIds'] as $websiteId) { $website = MainWPDB::Instance()->getWebsiteById($websiteId); if (MainWPUtility::can_edit_website($website)) { MainWPDB::Instance()->updateGroupSite($group->id, $website->id); } } } die(json_encode(array('result' => true))); } } die(json_encode(array('result' => false))); }
public static function hookGetGroups($pluginFile, $key, $groupid, $for_manager = false) { if (!self::hookVerify($pluginFile, $key)) { return false; } if ($for_manager && (!defined("MWP_TEAMCONTROL_PLUGIN_SLUG") || !mainwp_current_user_can("extension", dirname(MWP_TEAMCONTROL_PLUGIN_SLUG)))) { return false; } if (isset($groupid)) { $group = MainWPDB::Instance()->getGroupById($groupid); if (!MainWPUtility::can_edit_group($group)) { return false; } $websites = MainWPDB::Instance()->getWebsitesByGroupId($group->id); $websitesOut = array(); foreach ($websites as $website) { $websitesOut[] = $website->id; } return array(array('id' => $groupid, 'name' => $group->name, 'websites' => $websitesOut)); } $groups = MainWPDB::Instance()->getGroupsAndCount(null, $for_manager); $output = array(); foreach ($groups as $group) { $websites = MainWPDB::Instance()->getWebsitesByGroupId($group->id); $websitesOut = array(); foreach ($websites as $website) { if (in_array($website->id, $websitesOut)) { continue; } $websitesOut[] = $website->id; } $output[] = array('id' => $group->id, 'name' => $group->name, 'websites' => $websitesOut); } return $output; }