/** * Send all pending invites by a single user to a specific group. * * @param int $user_id ID of the inviting user. * @param int $group_id ID of the group. */ function groups_send_invites($user_id, $group_id) { if (empty($user_id)) { $user_id = bp_loggedin_user_id(); } // Send friend invites. $invited_users = groups_get_invites_for_group($user_id, $group_id); $group = groups_get_group(array('group_id' => $group_id)); for ($i = 0, $count = count($invited_users); $i < $count; ++$i) { $member = new BP_Groups_Member($invited_users[$i], $group_id); // Send the actual invite groups_notification_group_invites($group, $member, $user_id); $member->invite_sent = 1; $member->save(); } /** * Fires after the sending of invites for a group. * * @since 1.0.0 * * @param int $group_id ID of the group who's being invited to. * @param array $invited_users Array of users being invited to the group. */ do_action('groups_send_invites', $group_id, $invited_users); }
/** * Return a list of friends who can be invited to a group * * @since 1.0.0 * * @param array $args Array of arguments for friends list output. * @return mixed HTML list of checkboxes, or false */ function bp_get_new_group_invite_friend_list($args = array()) { // Bail if no friends component. if (!bp_is_active('friends')) { return false; } // Parse arguments. $r = wp_parse_args($args, array('user_id' => bp_loggedin_user_id(), 'group_id' => false, 'separator' => 'li')); // No group passed, so look for new or current group ID's. if (empty($r['group_id'])) { $bp = buddypress(); $r['group_id'] = !empty($bp->groups->new_group_id) ? $bp->groups->new_group_id : $bp->groups->current_group->id; } // Setup empty items array. $items = array(); // Get user's friends who are not in this group already. $friends = friends_get_friends_invite_list($r['user_id'], $r['group_id']); if (!empty($friends)) { // Get already invited users. $invites = groups_get_invites_for_group($r['user_id'], $r['group_id']); for ($i = 0, $count = count($friends); $i < $count; ++$i) { $checked = in_array((int) $friends[$i]['id'], (array) $invites); $items[] = '<' . $r['separator'] . '><label for="f-' . esc_attr($friends[$i]['id']) . '"><input' . checked($checked, true, false) . ' type="checkbox" name="friends[]" id="f-' . esc_attr($friends[$i]['id']) . '" value="' . esc_attr($friends[$i]['id']) . '" /> ' . esc_html($friends[$i]['full_name']) . '</label></' . $r['separator'] . '>'; } } /** * Filters the array of friends who can be invited to a group. * * @since 2.4.0 * * @param array $items Array of friends. * @param array $r Parsed arguments from bp_get_new_group_invite_friend_list() * @param array $args Unparsed arguments from bp_get_new_group_invite_friend_list() */ $invitable_friends = apply_filters('bp_get_new_group_invite_friend_list', $items, $r, $args); if (!empty($invitable_friends) && is_array($invitable_friends)) { $retval = implode("\n", $invitable_friends); } else { $retval = false; } return $retval; }
function bp_get_new_group_invite_friend_list($args = '') { global $bp; if (!bp_is_active('friends')) { return false; } $defaults = array('group_id' => false, 'separator' => 'li'); $r = wp_parse_args($args, $defaults); extract($r, EXTR_SKIP); if (empty($group_id)) { $group_id = !empty($bp->groups->new_group_id) ? $bp->groups->new_group_id : $bp->groups->current_group->id; } if ($friends = friends_get_friends_invite_list(bp_loggedin_user_id(), $group_id)) { $invites = groups_get_invites_for_group(bp_loggedin_user_id(), $group_id); for ($i = 0, $count = count($friends); $i < $count; ++$i) { $checked = ''; if (!empty($invites)) { if (in_array($friends[$i]['id'], $invites)) { $checked = ' checked="checked"'; } } $items[] = '<' . $separator . '><input' . $checked . ' type="checkbox" name="friends[]" id="f-' . $friends[$i]['id'] . '" value="' . esc_attr($friends[$i]['id']) . '" /> ' . $friends[$i]['full_name'] . '</' . $separator . '>'; } } if (!empty($items)) { return implode("\n", (array) $items); } return false; }
function __construct($user_id, $group_id) { global $bp; $this->invites = groups_get_invites_for_group($user_id, $group_id); $this->invite_count = count($this->invites); }
function bp_get_new_group_invite_member_list($args = '') { global $bp; $defaults = array('group_id' => false, 'separator' => 'li'); $r = wp_parse_args($args, $defaults); extract($r, EXTR_SKIP); if (!$group_id) { $group_id = isset($bp->groups->new_group_id) ? $bp->groups->new_group_id : $bp->groups->current_group->id; } $items = array(); $friends = get_members_invite_list($bp->loggedin_user->id, $group_id); if ($friends) { $invites = groups_get_invites_for_group($bp->loggedin_user->id, $group_id); for ($i = 0; $i < count($friends); $i++) { $checked = ''; if ($invites) { if (in_array($friends[$i]['id'], $invites)) { $checked = ' checked="checked"'; } } $items[] = '<' . $separator . '><input' . $checked . ' type="checkbox" name="friends[]" id="f-' . $friends[$i]['id'] . '" value="' . esc_html($friends[$i]['id']) . '" /> ' . $friends[$i]['full_name'] . '</' . $separator . '>'; } } return implode("\n", (array) $items); }
function bp_groups_invite_template( $user_id, $group_id ) { global $bp; $this->invites = groups_get_invites_for_group( $user_id, $group_id ); $this->invite_count = count( $this->invites ); }
function groups_send_invites($user_id, $group_id) { if (empty($user_id)) { $user_id = bp_loggedin_user_id(); } // Send friend invites. $invited_users = groups_get_invites_for_group($user_id, $group_id); $group = groups_get_group(array('group_id' => $group_id)); for ($i = 0, $count = count($invited_users); $i < $count; ++$i) { $member = new BP_Groups_Member($invited_users[$i], $group_id); // Send the actual invite groups_notification_group_invites($group, $member, $user_id); $member->invite_sent = 1; $member->save(); } do_action('groups_send_invites', $group_id, $invited_users); }
function kleo_bp_get_new_group_invite_friend_list($args = '') { global $bp; if (!bp_is_active('friends')) { return false; } $defaults = array('group_id' => false, 'separator' => 'li'); $r = wp_parse_args($args, $defaults); extract($r, EXTR_SKIP); if (empty($group_id)) { $group_id = !empty($bp->groups->new_group_id) ? $bp->groups->new_group_id : $bp->groups->current_group->id; } if ($friends = friends_get_friends_invite_list(bp_loggedin_user_id(), $group_id)) { $invites = groups_get_invites_for_group(bp_loggedin_user_id(), $group_id); for ($i = 0, $count = count($friends); $i < $count; ++$i) { $checked = ''; if (!empty($invites)) { if (in_array($friends[$i]['id'], $invites)) { $checked = ' checked="checked"'; } } $items[] = '<' . $separator . '>' . '<label class="mark-item">' . '<input class="checkbox-cb"' . $checked . ' type="checkbox" name="friends[]" id="f-' . $friends[$i]['id'] . '" value="' . esc_attr($friends[$i]['id']) . '" /> ' . '<span class="checkbox-mark"></span>' . '</label>' . '<div class="item-avatar rounded">' . get_avatar($friends[$i]['id']) . '</div>' . '<div class="invite-list-content"><h4>' . bp_core_get_userlink($friends[$i]['id']) . '</h4>' . '<span class="activity">' . bp_get_last_activity($friends[$i]['id']) . '</span>' . '<span class="group-invites-status"></span></div>' . '</' . $separator . '>'; } } if (!empty($items)) { return implode("\n", (array) $items); } return false; }
function groups_send_invites($user_id, $group_id) { global $bp; if (!$user_id) { $user_id = $bp->loggedin_user->id; } // Send friend invites. $invited_users = groups_get_invites_for_group($user_id, $group_id); $group = new BP_Groups_Group($group_id); for ($i = 0, $count = count($invited_users); $i < $count; ++$i) { $member = new BP_Groups_Member($invited_users[$i], $group_id); // Send the actual invite groups_notification_group_invites($group, $member, $user_id); $member->invite_sent = 1; $member->save(); } do_action('groups_send_invites', $group_id, $invited_users); }
function groups_send_invites( $user_id, $group_id ) { global $bp; require_once ( BP_PLUGIN_DIR . '/bp-groups/bp-groups-notifications.php' ); if ( !$user_id ) $user_id = $bp->loggedin_user->id; // Send friend invites. $invited_users = groups_get_invites_for_group( $user_id, $group_id ); $group = new BP_Groups_Group( $group_id ); for ( $i = 0; $i < count( $invited_users ); $i++ ) { $member = new BP_Groups_Member( $invited_users[$i], $group_id ); // Send the actual invite groups_notification_group_invites( $group, $member, $user_id ); $member->invite_sent = 1; $member->save(); } do_action( 'groups_send_invites', $bp->groups->current_group->id, $invited_users ); }
function groups_send_invites($group_obj, $skip_check = false) { global $bp; if (!$skip_check) { if (!check_admin_referer('groups_send_invites', '_wpnonce_send_invites')) { return false; } } require_once BP_PLUGIN_DIR . '/bp-groups/bp-groups-notifications.php'; // Send friend invites. $invited_users = groups_get_invites_for_group($bp->loggedin_user->id, $group_obj->id); for ($i = 0; $i < count($invited_users); $i++) { $member = new BP_Groups_Member($invited_users[$i], $group_obj->id); // Send the actual invite groups_notification_group_invites($group_obj, $member, $bp->loggedin_user->id); $member->invite_sent = 1; $member->save(); } do_action('groups_send_invites', $group_obj->id, $invited_users); }
function bp_group_send_invite_form($group = false) { global $bp, $groups_template, $invites; if (!$group) { $group =& $groups_template->group; } ?> <div class="left-menu"> <h4><?php _e('Select Friends', 'buddypress'); ?> <img id="ajax-loader" src="<?php echo $bp->groups->image_base; ?> /ajax-loader.gif" height="7" alt="Loading" style="display: none;" /></h4> <?php bp_group_list_invite_friends(); ?> <?php wp_nonce_field('groups_invite_uninvite_user', '_wpnonce_invite_uninvite_user'); ?> <input type="hidden" name="group_id" id="group_id" value="<?php echo attribute_escape($group->id); ?> " /> </div> <div class="main-column"> <div id="message" class="info"> <p><?php _e('Select people to invite from your friends list.', 'buddypress'); ?> </p> </div> <?php $invites = groups_get_invites_for_group($bp->loggedin_user->id, $group_obj->id); ?> <ul id="friend-list" class="item-list"> <?php for ($i = 0; $i < count($invites); $i++) { if (!($user = wp_cache_get('bp_user_' . $invites[$i], 'bp'))) { $user = new BP_Core_User($invites[$i]); wp_cache_set('bp_user_' . $invites[$i], $user, 'bp'); } ?> <li id="uid-<?php echo $user->id; ?> "> <?php echo $user->avatar_thumb; ?> <h4><?php echo $user->user_link; ?> </h4> <span class="activity"><?php echo $user->last_active; ?> </span> <div class="action"> <a class="remove" href="<?php echo wp_nonce_url(site_url($bp->groups->slug . '/' . $group->id . '/invites/remove/' . $user->id), 'groups_invite_uninvite_user'); ?> " id="uid-<?php echo $user->id; ?> "><?php _e('Remove Invite', 'buddypress'); ?> </a> </div> </li> <?php } // end for ?> </ul> <?php wp_nonce_field('groups_send_invites', '_wpnonce_send_invites'); ?> </div> <?php }