function __construct() { global $bp, $wpmudev_chat; $wpmudev_chat->load_configs(); $this->settings_slug = 'wpmudev_chat_bp_group'; $this->slug = $wpmudev_chat->get_option('bp_menu_slug', 'global'); $this->name = $wpmudev_chat->get_option('bp_menu_label', 'global'); $this->create_step_position = 21; $this->nav_item_position = 31; $this->enable_nav_item = false; if (isset($bp->groups->current_group->id)) { if (groups_is_user_member($bp->loggedin_user->id, $bp->groups->current_group->id)) { // First check if the old value $enabled = groups_get_groupmeta($bp->groups->current_group->id, 'wpmudevchatbpgroupenable'); if (!empty($enabled)) { groups_delete_groupmeta($bp->groups->current_group->id, 'wpmudevchatbpgroupenable'); groups_update_groupmeta($bp->groups->new_group_id, $this->settings_slug . '_enable', $enabled); } $enabled = groups_get_groupmeta($bp->groups->current_group->id, $this->settings_slug . '_enable'); if ($enabled == "yes") { $this->enable_nav_item = true; } $atts = groups_get_groupmeta($bp->groups->current_group->id, $this->settings_slug); //if (!empty($atts)) { //if ((isset($atts['bp_menu_slug'])) && (!empty($atts['bp_menu_slug']))) { // $this->slug = $atts['bp_menu_slug']; //} //if ((isset($atts['bp_menu_label'])) && (!empty($atts['bp_menu_label']))) { // $this->nav_item_name = $atts['bp_menu_label']; //} //} //echo "slug=[". $this->slug ."]<br />"; } } }
function __construct() { global $bp, $wpmudev_chat; $wpmudev_chat->load_configs(); $this->create_step_position = 21; $this->nav_item_position = 31; $this->slug = $wpmudev_chat->get_option('bp_menu_slug', 'global'); $this->name = $wpmudev_chat->get_option('bp_menu_label', 'global'); $this->enable_nav_item = false; if (isset($bp->groups->current_group->id)) { if (groups_is_user_member($bp->loggedin_user->id, $bp->groups->current_group->id)) { // First check if the old value $enabled = groups_get_groupmeta($bp->groups->current_group->id, 'wpmudevchatbpgroupenable'); if (!empty($enabled)) { echo "here!<br />"; groups_delete_groupmeta($bp->groups->current_group->id, 'wpmudevchatbpgroupenable'); groups_update_groupmeta($bp->groups->new_group_id, self::settings_slug . '_enable', $enabled); } $enabled = groups_get_groupmeta($bp->groups->current_group->id, self::settings_slug . '_enable', true); if ($enabled == "yes") { $this->enable_nav_item = true; } } } $args = array('slug' => $this->slug, 'name' => $this->name, 'enable_nav_item' => $this->enable_nav_item, 'nav_item_position' => $this->nav_item_position, 'screens' => array('edit' => array('name' => $this->name, 'submit_text' => __('Submit', $wpmudev_chat->translation_domain)), 'create' => array('position' => $this->create_step_position))); parent::init($args); }
function delete_pic_cover_group($activity_id) { global $bp; $group_id = $bp->groups->current_group->id; $activity_id = $_POST['activity_id']; $attachment_id = bp_activity_get_meta($activity_id, 'all_bp_cover_group', true); wp_delete_attachment($attachment_id, true); groups_delete_groupmeta($group_id, 'bp_cover_group'); groups_delete_groupmeta($group_id, 'bp_cover_group_position'); bp_activity_delete(array('id' => $activity_id, 'item_id' => $group_id)); BP_Activity_Activity::delete_activity_meta_entries($activity_id); }
function delete() { global $nxtdb, $bp; // Delete groupmeta for the group groups_delete_groupmeta($this->id); // Fetch the user IDs of all the members of the group $user_ids = BP_Groups_Member::get_group_member_ids($this->id); $user_ids = implode(',', (array) $user_ids); // Modify group count usermeta for members $nxtdb->query($nxtdb->prepare("UPDATE {$nxtdb->usermeta} SET meta_value = meta_value - 1 WHERE meta_key = 'total_group_count' AND user_id IN ( {$user_ids} )")); // Now delete all group member entries BP_Groups_Member::delete_all($this->id); do_action_ref_array('bp_groups_delete_group', array(&$this)); // Finally remove the group entry from the DB if (!$nxtdb->query($nxtdb->prepare("DELETE FROM {$bp->groups->table_name} WHERE id = %d", $this->id))) { return false; } return true; }
function groups_update_groupmeta($group_id, $meta_key, $meta_value) { global $nxtdb, $bp; if (!is_numeric($group_id)) { return false; } $meta_key = preg_replace('|[^a-z0-9_]|i', '', $meta_key); if (is_string($meta_value)) { $meta_value = stripslashes($nxtdb->escape($meta_value)); } $meta_value = maybe_serialize($meta_value); if (empty($meta_value)) { return groups_delete_groupmeta($group_id, $meta_key); } $cur = $nxtdb->get_row($nxtdb->prepare("SELECT * FROM " . $bp->groups->table_name_groupmeta . " WHERE group_id = %d AND meta_key = %s", $group_id, $meta_key)); if (!$cur) { $nxtdb->query($nxtdb->prepare("INSERT INTO " . $bp->groups->table_name_groupmeta . " ( group_id, meta_key, meta_value ) VALUES ( %d, %s, %s )", $group_id, $meta_key, $meta_value)); } else { if ($cur->meta_value != $meta_value) { $nxtdb->query($nxtdb->prepare("UPDATE " . $bp->groups->table_name_groupmeta . " SET meta_value = %s WHERE group_id = %d AND meta_key = %s", $meta_value, $group_id, $meta_key)); } else { return false; } } // Update the cached object and recache nxt_cache_set('bp_groups_groupmeta_' . $group_id . '_' . $meta_key, $meta_value, 'bp'); return true; }
/** * Save the Group Forum data on create * * @since bbPress (r3465) */ public function create_screen_save() { check_admin_referer('groups_create_save_' . $this->slug); $create_forum = !empty($_POST['bbp-create-group-forum']) ? true : false; $forum_id = 0; $forum_ids = bbp_get_group_forum_ids(bp_get_new_group_id()); if (!empty($forum_ids)) { $forum_id = (int) is_array($forum_ids) ? $forum_ids[0] : $forum_ids; } // Create a forum, or not switch ($create_forum) { case true: // Bail if initial content was already created if (!empty($forum_id)) { return; } // Set the default forum status switch (bp_get_new_group_status()) { case 'hidden': $status = bbp_get_hidden_status_id(); break; case 'private': $status = bbp_get_private_status_id(); break; case 'public': default: $status = bbp_get_public_status_id(); break; } // Create the initial forum $forum_id = bbp_insert_forum(array('post_parent' => bbp_get_group_forums_root_id(), 'post_title' => bp_get_new_group_name(), 'post_content' => bp_get_new_group_description(), 'post_status' => $status)); // Run the BP-specific functions for new groups $this->new_forum(array('forum_id' => $forum_id)); break; case false: // Forum was created but is now being undone if (!empty($forum_id)) { wp_delete_post($forum_id, true); groups_delete_groupmeta(bp_get_new_group_id(), 'forum_id'); } break; } }
function gtags_save_tags($group) { global $bp; if (isset($_POST['group-tags']) && $_POST['group-tags']) { $grouptags = str_replace("\\'", "", $_POST['group-tags']); // remove single quotes cause they dont work! $grouptags = apply_filters('gtags_save_tags', $grouptags); groups_update_groupmeta($group->id, 'gtags_group_tags', $grouptags); } elseif ($bp->action_variables[0] == 'edit-details') { // delete the group tags if empty, and we're on the edit details page groups_delete_groupmeta($group->id, 'gtags_group_tags'); } }
/** * Update association * * @param type $group_id * @return type */ public function update($group_id) { if (!isset($_POST['_bp_linked_group_page_nonce'])) { return; } if (!$this->current_user_can_modify_settings($group_id)) { return; } if (!wp_verify_nonce($_POST['_bp_linked_group_page_nonce'], '_bp_linked_group_page')) { return; } $page_id = absint($_POST['_group_linked_page']); if (!$page_id) { groups_delete_groupmeta($group_id, '_group_linked_page'); } else { groups_update_groupmeta($group_id, '_group_linked_page', $page_id); } }
/** * Save the Group Forum data on create * * @since bbPress (r3465) */ public function create_screen_save($group_id = 0) { // Nonce check if (!bbp_verify_nonce_request('groups_create_save_' . $this->slug)) { bbp_add_error('bbp_create_group_forum_screen_save', __('<strong>ERROR</strong>: Are you sure you wanted to do that?', 'bbpress')); return; } // Check for possibly empty group_id if (empty($group_id)) { $group_id = bp_get_new_group_id(); } $create_forum = !empty($_POST['bbp-create-group-forum']) ? true : false; $forum_id = 0; $forum_ids = bbp_get_group_forum_ids($group_id); if (!empty($forum_ids)) { $forum_id = (int) is_array($forum_ids) ? $forum_ids[0] : $forum_ids; } // Create a forum, or not switch ($create_forum) { case true: // Bail if initial content was already created if (!empty($forum_id)) { return; } // Set the default forum status switch (bp_get_new_group_status()) { case 'hidden': $status = bbp_get_hidden_status_id(); break; case 'private': $status = bbp_get_private_status_id(); break; case 'public': default: $status = bbp_get_public_status_id(); break; } // Create the initial forum $forum_id = bbp_insert_forum(array('post_parent' => bbp_get_group_forums_root_id(), 'post_title' => bp_get_new_group_name(), 'post_content' => bp_get_new_group_description(), 'post_status' => $status)); // Run the BP-specific functions for new groups $this->new_forum(array('forum_id' => $forum_id)); // Update forum active groups_update_groupmeta(bp_get_new_group_id(), '_bbp_forum_enabled_' . $forum_id, true); // Toggle forum on $this->toggle_group_forum(bp_get_new_group_id(), true); break; case false: // Forum was created but is now being undone if (!empty($forum_id)) { // Delete the forum wp_delete_post($forum_id, true); // Delete meta values groups_delete_groupmeta(bp_get_new_group_id(), 'forum_id'); groups_delete_groupmeta(bp_get_new_group_id(), '_bbp_forum_enabled_' . $forum_id); // Toggle forum off $this->toggle_group_forum(bp_get_new_group_id(), false); } break; } }
function mpp_delete_groups_wall_gallery_id($group_id, $type, $gallery_id) { $key = "_mpp_wall_{$type}_gallery_id"; return groups_delete_groupmeta($group_id, $key, $gallery_id); }
static function user_register_classes($user_id) { global $wpdb; //get user's email address $user = get_userdata($user_id); //get all invites by email $sqlQuery = "SELECT * FROM " . $wpdb->prefix . "bp_groups_groupmeta WHERE meta_value = '" . esc_sql(strtolower($user->user_email)) . "' "; $invites = $wpdb->get_results($sqlQuery); if (!empty($invites)) { foreach ($invites as $invite) { //add to group groups_join_group($invite->group_id, $user_id); //remove meta value groups_delete_groupmeta($invite->group_id, "sp_invites", strtolower($user->user_email)); } } }
function ass_save_default_subscription($group) { global $bp, $_POST; if (isset($_POST['ass-default-subscription']) && ($postval = $_POST['ass-default-subscription'])) { if ($postval && $postval != 'no') { groups_update_groupmeta($group->id, 'ass_default_subscription', $postval); } elseif ($postval == 'no') { groups_delete_groupmeta($group->id, 'ass_default_subscription'); } } }
/** * @group groupmeta * @group groups_delete_groupmeta */ public function test_groups_delete_groupmeta_with_delete_all() { // With no meta key, don't delete for all items - just delete // all for a single item $g1 = $this->factory->group->create(); $g2 = $this->factory->group->create(); groups_add_groupmeta($g1, 'foo', 'bar'); groups_add_groupmeta($g1, 'foo1', 'bar1'); groups_add_groupmeta($g2, 'foo', 'bar'); groups_add_groupmeta($g2, 'foo1', 'bar1'); $this->assertTrue(groups_delete_groupmeta($g1, 'foo', '', true)); $this->assertSame('', groups_get_groupmeta($g1, 'foo')); $this->assertSame('', groups_get_groupmeta($g2, 'foo')); $this->assertSame('bar1', groups_get_groupmeta($g1, 'foo1')); $this->assertSame('bar1', groups_get_groupmeta($g2, 'foo1')); }
/** * Save the settings of the group */ public function edit_screen_save($group_id = null) { if ('POST' !== strtoupper($_SERVER['REQUEST_METHOD'])) { return false; } check_admin_referer('groups_edit_save_' . $this->slug, 'altctrl'); $group_id = !empty($group_id) ? $group_id : bp_get_current_group_id(); $altctrl = array(); if (empty($_POST['_altctrl'])) { return; } else { $altctrl = $_POST['_altctrl']; } if (!empty($altctrl['request'])) { groups_update_groupmeta($group_id, '_altctrl_request', absint($altctrl['request'])); } else { groups_delete_groupmeta($group_id, '_altctrl_request'); } if (!empty($altctrl['tabs'])) { groups_update_groupmeta($group_id, '_altctrl_tabs', array_map('sanitize_title', $altctrl['tabs'])); } else { groups_delete_groupmeta($group_id, '_altctrl_tabs'); } $page_id = $altctrl['page_id']; if (!empty($altctrl['page_cb']) && !empty($altctrl['page_content'])) { $page_id = wp_insert_post(array('ID' => $page_id, 'post_status' => 'publish', 'post_type' => 'group_front', 'post_content' => $altctrl['page_content'])); update_post_meta($page_id, '_altctrl_group_id', $group_id); groups_update_groupmeta($group_id, '_altctrl_page_id', $page_id); } if (!empty($altctrl['page_id']) && empty($altctrl['page_cb'])) { if (wp_delete_post($page_id)) { groups_delete_groupmeta($group_id, '_altctrl_page_id', $page_id); } } bp_core_add_message(__('Settings saved successfully', 'altctrl-public-group')); bp_core_redirect(bp_get_group_permalink(buddypress()->groups->current_group) . 'admin/' . $this->slug); }
/** * Save the settings of the group * * @param integer $group_id the group id we save settings for * @uses check_admin_referer() for security reasons * @uses bp_get_current_group_id() to get the group id * @uses groups_update_groupmeta() to set the BuddyDrive option if needed * @uses groups_delete_groupmeta() to delete the BuddyDrive option if needed * @uses buddydrive_remove_buddyfiles_from_group() to eventually remove attached BuddyDrive items * @uses is_admin() to check if we're in WP backend * @uses bp_core_add_message() to inform about success / error * @uses bp_core_redirect() to avoid some refreshing stuff * @uses bp_get_group_permalink() to redirect to */ public function edit_screen_save($group_id = null) { if ('POST' !== strtoupper($_SERVER['REQUEST_METHOD'])) { return false; } check_admin_referer('groups_edit_save_' . $this->slug, 'buddydrive_group_admin'); $group_id = !empty($group_id) ? $group_id : bp_get_current_group_id(); /* Insert your edit screen save code here */ $buddydrive_ok = !empty($_POST['_group_buddydrive_activate']) ? $_POST['_group_buddydrive_activate'] : false; if (!empty($buddydrive_ok)) { $success = groups_update_groupmeta($group_id, '_buddydrive_enabled', $buddydrive_ok); } else { $success = groups_delete_groupmeta($group_id, '_buddydrive_enabled'); // we need to remove folders and items attached to this group in this case buddydrive_remove_buddyfiles_from_group($group_id); } if (!is_admin()) { /* To post an error/success message to the screen, use the following */ if (!$success) { bp_core_add_message(__('There was an error saving, please try again', 'buddydrive'), 'error'); } else { bp_core_add_message(__('Settings saved successfully', 'buddydrive')); } bp_core_redirect(bp_get_group_permalink(buddypress()->groups->current_group) . 'admin/' . $this->slug); } }
function admin_ui_edit_save($group_id) { /* Insert your edit screen save code here */ $checkins_ok = !empty($_POST['_group_checkins_activate']) ? $_POST['_group_checkins_activate'] : false; if (!empty($checkins_ok)) { $success = groups_update_groupmeta($group_id, 'checkins_ok', $checkins_ok); } else { $success = groups_delete_groupmeta($group_id, 'checkins_ok'); } /* we don't want activities to lead to 404 */ if (groups_get_groupmeta($group_id, 'checkins_ok') != 1) { bp_checkins_group_disabled_checkins($group_id); } }
delete_option('foursquare-client-secret'); delete_option('foursquare-cron-schedule'); delete_option('foursquare-user-import'); //deleting tables global $wpdb; $fs_table = $wpdb->base_prefix . 'bp_checkins_foursquare_logs'; $category_meta_table = $wpdb->base_prefix . 'places_categorymeta'; $wpdb->query("DROP TABLE IF EXISTS `{$fs_table}`"); $wpdb->query("DROP TABLE IF EXISTS `{$category_meta_table}`"); // deleting places ! $places_id = $wpdb->get_col($wpdb->prepare("SELECT ID FROM {$wpdb->base_prefix}posts WHERE post_type = %s", 'places')); foreach ($places_id as $place) { wp_delete_post($place, true); } /* leaving taxonomy places_category because no function to delete (future release of WP).. i don't want to put a mess ! */ /* see http://core.trac.wordpress.org/ticket/12629 */ //deleting users meta delete_metadata('user', false, 'foursquare_token', '', true); delete_metadata('user', false, 'foursquare_latest_timestamp', '', true); delete_metadata('user', false, 'bpci_latest_lat', '', true); delete_metadata('user', false, 'bpci_latest_lng', '', true); delete_metadata('user', false, 'bpci_latest_address', '', true); //deleting groupmetas if (function_exists('bp_init')) { $group_ids = $wpdb->get_col("SELECT id FROM {$wpdb->base_prefix}bp_groups"); if (count($group_ids) >= 1) { foreach ($group_ids as $group_id) { groups_delete_groupmeta($group_id, 'checkins_ok'); } } }
/** * Process restriction data captured in the form. * * @since 1.0.0 */ function cfbgr_process_data() { $group_id = bp_get_current_group_id(); $restriction = groups_get_groupmeta($group_id, 'cf-buddypress-group-restrictions'); if ((!isset($_POST['_cfbgr_restriction_status']) || 'hidden' === $_POST['group-status']) && !empty($restriction)) { // Delete the group's meta. groups_delete_groupmeta(bp_get_current_group_id(), 'cf-buddypress-group-restrictions'); } if (!empty($_POST['_cfbgr_restriction_status']) && 'hidden' !== $_POST['group-status']) { $restriction = $_POST['_cfbgr_restriction_status']; // Just in case ... if (is_array($_POST['_cfbgr_restriction_status'])) { $restriction = $_POST['_cfbgr_restriction_status'][0]; } // Update the group's meta. groups_update_groupmeta(bp_get_current_group_id(), 'cf-buddypress-group-restrictions', sanitize_key($restriction)); } }
/** * settings_screen_save() contains the catch-all logic for saving * settings from the edit, create, and Dashboard admin panels * @param $group_id int */ function settings_screen_save($group_id = NULL) { if (isset($_POST['action']) && $_POST['action'] == 'bp_group_cover_upload') { $group_id = $_POST['group_id']; if (!isset($_POST['_wpnonce']) || !wp_verify_nonce($_POST['_wpnonce'], $group_id)) { $this->message = '<div class="error message">' . __('Security check Failed. Contact Administrator.', 'bp-profile-cover') . '</div>'; } else { if (!empty($_FILES['group_cover']['name'])) { $attachment = new BP_Group_Profile_Cover(); $file = $attachment->upload($_FILES); if (!empty($file['error'])) { $this->message = '<div class="error message">' . $file['error'] . '</div>'; } else { groups_update_groupmeta($group_id, 'cover', $file['url']); $this->message = '<div class="success message">' . __('Cover image uploaded successfully', 'bp-profile-cover') . '</div>'; } } else { if (isset($_POST['delete_group_profile_cover'])) { groups_delete_groupmeta($group_id, 'cover'); } } if (isset($_POST['position_x'])) { groups_update_groupmeta($group_id, 'position_x', $_POST['position_x']); } if (isset($_POST['position_y'])) { groups_update_groupmeta($group_id, 'position_y', $_POST['position_y']); } if (!empty($_POST['cover_repeat'])) { groups_update_groupmeta($group_id, 'repeat', $_POST['cover_repeat']); } } } }
/** * Delete the current group. * * @return bool True on success, false on failure. */ public function delete() { global $wpdb; // Delete groupmeta for the group. groups_delete_groupmeta($this->id); // Fetch the user IDs of all the members of the group. $user_ids = BP_Groups_Member::get_group_member_ids($this->id); $user_id_str = esc_sql(implode(',', wp_parse_id_list($user_ids))); // Modify group count usermeta for members. $wpdb->query("UPDATE {$wpdb->usermeta} SET meta_value = meta_value - 1 WHERE meta_key = 'total_group_count' AND user_id IN ( {$user_id_str} )"); // Now delete all group member entries. BP_Groups_Member::delete_all($this->id); /** * Fires before the deletion of a group. * * @since 1.2.0 * * @param BP_Groups_Group $this Current instance of the group item being deleted. Passed by reference. * @param array $user_ids Array of user IDs that were members of the group. */ do_action_ref_array('bp_groups_delete_group', array(&$this, $user_ids)); wp_cache_delete($this->id, 'bp_groups'); $bp = buddypress(); // Finally remove the group entry from the DB. if (!$wpdb->query($wpdb->prepare("DELETE FROM {$bp->groups->table_name} WHERE id = %d", $this->id))) { return false; } return true; }
function ass_save_default_subscription($group) { if (isset($_POST['ass-default-subscription']) && ($postval = $_POST['ass-default-subscription'])) { if ($postval && $postval != 'no') { groups_update_groupmeta($group->id, 'ass_default_subscription', $postval); // during group creation, also save the sub level for the group creator if ('group-settings' == bp_get_groups_current_create_step()) { ass_group_subscription($postval, $group->creator_id, $group->id); } } elseif ($postval == 'no') { groups_delete_groupmeta($group->id, 'ass_default_subscription'); } } }
function groups_update_groupmeta($group_id, $meta_key, $meta_value) { global $wpdb, $bp; if (!is_numeric($group_id)) { return false; } $meta_key = preg_replace('|[^a-z0-9_]|i', '', $meta_key); $meta_value = (string) $meta_value; if (is_string($meta_value)) { $meta_value = stripslashes($wpdb->escape($meta_value)); } $meta_value = maybe_serialize($meta_value); if (empty($meta_value)) { return groups_delete_groupmeta($group_id, $meta_key); } $cur = $wpdb->get_row($wpdb->prepare("SELECT * FROM " . $bp->groups->table_name_groupmeta . " WHERE group_id = %d AND meta_key = %s", $group_id, $meta_key)); if (!$cur) { $wpdb->query($wpdb->prepare("INSERT INTO " . $bp->groups->table_name_groupmeta . " ( group_id, meta_key, meta_value ) VALUES ( %d, %s, %s )", $group_id, $meta_key, $meta_value)); } else { if ($cur->meta_value != $meta_value) { $wpdb->query($wpdb->prepare("UPDATE " . $bp->groups->table_name_groupmeta . " SET meta_value = %s WHERE group_id = %d AND meta_key = %s", $meta_value, $group_id, $meta_key)); } else { return false; } } // TODO need to look into using this. // wp_cache_delete($user_id, 'users'); return true; }
public function create_screen_save_notab($group_id = 0) { // No nonce check, since there's no tab // Check for possibly empty group_id if (empty($group_id)) { $group_id = bp_get_new_group_id(); } // We always set this true, because we always create a forum (the user doesn't get to choose whether they want it or not anymore) $create_forum = true; //!empty( $_POST['bbp-create-group-forum'] ) ? true : false; $forum_id = 0; $forum_ids = bbp_get_group_forum_ids($group_id); if (!empty($forum_ids)) { $forum_id = (int) is_array($forum_ids) ? $forum_ids[0] : $forum_ids; } // Create a forum, or not switch ($create_forum) { case true: // Bail if initial content was already created if (!empty($forum_id)) { return; } // Set the default forum status switch (bp_get_new_group_status()) { case 'hidden': $status = bbp_get_hidden_status_id(); break; case 'private': $status = bbp_get_private_status_id(); break; case 'public': default: $status = bbp_get_public_status_id(); break; } // Create the initial forum $forum_id = bbp_insert_forum(array('post_parent' => bbp_get_group_forums_root_id(), 'post_title' => bp_get_new_group_name(), 'post_content' => bp_get_new_group_description(), 'post_status' => $status)); // Run the BP-specific functions for new groups $this->new_forum(array('forum_id' => $forum_id)); // Update forum active groups_update_groupmeta(bp_get_new_group_id(), '_bbp_forum_enabled_' . $forum_id, true); // Toggle forum on $this->toggle_group_forum(bp_get_new_group_id(), true); break; case false: // Forum was created but is now being undone if (!empty($forum_id)) { // Delete the forum wp_delete_post($forum_id, true); // Delete meta values groups_delete_groupmeta(bp_get_new_group_id(), 'forum_id'); groups_delete_groupmeta(bp_get_new_group_id(), '_bbp_forum_enabled_' . $forum_id); // Toggle forum off $this->toggle_group_forum(bp_get_new_group_id(), false); } break; } }
/** * @group user_can_associate_doc_with_group * @expectedDeprecated user_can_associate_doc_with_group */ public function test_associate_with_group_default_can_create_value() { $g = $this->factory->group->create(); $d = $this->factory->doc->create(array('group' => $g)); groups_delete_groupmeta($g, 'bp-docs'); $u = $this->factory->user->create(); $this->add_user_to_group($u, $g); $this->assertTrue(BP_Docs_Groups_Integration::user_can_associate_doc_with_group($u, $g)); }
/** * Saves settings, called from settings/admin page * * @return boolean */ function ccgn_update_groupmeta($group_id = false) { $group_id = !$group_id ? bp_get_current_group_id() : $group_id; $success = false; $input = array('ccgn_is_enabled', 'ccgn_tab_label', 'ccgn_level_to_post', 'ccgn_url_slug'); foreach ($input as $field) { //groups_update_groupmeta returns false if the old value matches the new value, so we'll need to check for that case $old_setting = groups_get_groupmeta($group_id, $field); $new_setting = isset($_POST[$field]) ? $_POST[$field] : null; // Filter the slug on save // TODO: Don't use this slug for the Admin pane . Maybe not possible with current BP? // Probably will need to modify BP_Group_Extension and submit ticket. if ($field == 'ccgn_url_slug') { $new_setting = sanitize_title($new_setting); } if ($new_setting == $old_setting) { // No need to resave settings if they're the same $success = true; } elseif (empty($new_setting)) { // Remove existing entries $success = groups_delete_groupmeta($group_id, $field); } else { $success = groups_update_groupmeta($group_id, $field, $new_setting); } } return $success; }
function delete() { global $wpdb, $bp; // Delete groupmeta for the group groups_delete_groupmeta($this->id); // Modify group count usermeta for members for ($i = 0; $i < count($this->user_dataset); $i++) { $user = $this->user_dataset[$i]; $total_count = get_usermeta($user->user_id, 'total_group_count'); if ($total_count != '') { update_usermeta($user->user_id, 'total_group_count', (int) $total_count - 1); } // Now delete the group member record BP_Groups_Member::delete($user->user_id, $this->id, false); } // Delete the wire posts for this group if the wire is installed if (function_exists('bp_wire_install')) { BP_Wire_Post::delete_all_for_item($this->id, $bp->groups->table_name_wire); } // Finally remove the group entry from the DB if (!$wpdb->query($wpdb->prepare("DELETE FROM {$bp->groups->table_name} WHERE id = %d", $this->id))) { return false; } return true; }
/** * Delete Group Cover * @param null $group_id * @return bool|void */ function delete_cover($group_id = null) { if (!$group_id) { return false; } //delete the associated image and send a message $old_file_path = groups_get_groupmeta($group_id, 'bpcp_group_cover_file_path'); if ($old_file_path) { @unlink($old_file_path); //remove old files with each new upload } groups_delete_groupmeta($group_id, 'bpcp_group_cover_file_path'); groups_delete_groupmeta($group_id, 'bpcp_group_cover'); }