Add form styling to HTML5 elements

This will allow HTML5 themes to inherit BP's form styles elegantly.

Fixes #4116

Props magnus78

git-svn-id: https://buddypress.svn.wordpress.org/trunk@7133 cdf35c40-ae34-48e0-9cc9-0c9da1808c22
BP_Groups_Group::id should be 0 for non-existent groups

Fixes #4185

Props chriskeeble

git-svn-id: https://buddypress.svn.wordpress.org/trunk@7134 cdf35c40-ae34-48e0-9cc9-0c9da1808c22
Introduces bp_user_query_online_interval filter

This will allow site admins or plugins to adjust the number of minutes used as
an interval when querying for 'online' users using BP_User_Query.

Fixes #4347

git-svn-id: https://buddypress.svn.wordpress.org/trunk@7135 cdf35c40-ae34-48e0-9cc9-0c9da1808c22
POT, generated from r7135

git-svn-id: https://buddypress.svn.wordpress.org/trunk@7136 cdf35c40-ae34-48e0-9cc9-0c9da1808c22
Removes bbp_ copypasta introduced in r7132

git-svn-id: https://buddypress.svn.wordpress.org/trunk@7137 cdf35c40-ae34-48e0-9cc9-0c9da1808c22
Removes bbp_ copypasta introduced in r7131

git-svn-id: https://buddypress.svn.wordpress.org/trunk@7138 cdf35c40-ae34-48e0-9cc9-0c9da1808c22
Removes bbp_ copypasta in bp-core-options.php

This erroneous code appears to have been in place for several versions. It's
likely that, as a result, the options in question have been broken for several
versions, since the setter and checker were using different option names. So
there should be no backward compatibility concerns with making these changes.

git-svn-id: https://buddypress.svn.wordpress.org/trunk@7139 cdf35c40-ae34-48e0-9cc9-0c9da1808c22
On group extension Edit screens, load template at bp_screens

On legacy themes (bp-default and derivatives), it's necessary to delay the
loading of the template, so that all group extensions have a chance to register
their navigation before exit() is called.

Fixes #4586

git-svn-id: https://buddypress.svn.wordpress.org/trunk@7140 cdf35c40-ae34-48e0-9cc9-0c9da1808c22
Introduces BP_Group_Member_Query and refactors bp_group_has_members() to use it

BP_Group_Member_Query extends BP_User_Query, which has a number of notable
benefits:
- Group member queries no longer JOIN against global user tables
- Less code duplication, since general logic like 'exclude' is handled by
  BP_User_Query
- Future access to the additional parameters of BP_User_Query, such as 'type'

Using the new BP_Group_Member_Query, this changeset also changes the way that
group member queries filter by group roles (member, mod, admin). The new
group_role parameter in the bp_group_has_members() stack accepts an array of
group roles. The legacy argument 'exclude_admins_mods' is still accepted, and
translates to 'group_role' => array( 'member' ) when true. These group_role
enhancements will allow for future enhancements in the Groups Admin section of
the Dashboard, and other places where it might be useful to query for the
members of a group matching a specific role. See #4977.

Fixes #4482

Props trishasalas for early patches and feedback. Props johnjamesjacoby for
review.

git-svn-id: https://buddypress.svn.wordpress.org/trunk@7141 cdf35c40-ae34-48e0-9cc9-0c9da1808c22
POT, generated from r7141

git-svn-id: https://buddypress.svn.wordpress.org/trunk@7142 cdf35c40-ae34-48e0-9cc9-0c9da1808c22
In BP_Group_Member_Query, when no members are found of a type, ensure the query fails to return results

git-svn-id: https://buddypress.svn.wordpress.org/trunk@7143 cdf35c40-ae34-48e0-9cc9-0c9da1808c22
Improves the algorithm for filtering by role in BP_Group_Member_Query

Filtering by group role is tricky, because group role data is declared
explicitly in the database only for 'admin', 'mod', and 'banned' - 'member'
status is implicit, when these other three values are 0. The improved algorithm
assembles a role whitelist in cases where the list of roles being filtered does
not include 'member', and a role blacklist in the case where the list does
contain 'member'.

git-svn-id: https://buddypress.svn.wordpress.org/trunk@7144 cdf35c40-ae34-48e0-9cc9-0c9da1808c22
Deprecate exclude_banned arg of bp_group_has_members() in favor of 'banned' role

This changeset introduces support for the 'banned' group_role filter in
BP_Group_Member_Query. This takes the place of the exclude_banned parameter.
Backward compatibility for exclude_banned is added in
groups_get_group_members().

See #4977

git-svn-id: https://buddypress.svn.wordpress.org/trunk@7145 cdf35c40-ae34-48e0-9cc9-0c9da1808c22
Updates the Groups Admin member interface to use BP_Group_Member_Query

This provides increased flexibility for fixes to be introduced for #4977

git-svn-id: https://buddypress.svn.wordpress.org/trunk@7146 cdf35c40-ae34-48e0-9cc9-0c9da1808c22
Allow BP_Group_Member_Query::get_group_member_ids() to fetch all matching records

Previously, the per_page parameter was applied to this utility method for
efficiency's sake. However, this caused problems for the total_users count of
the parent BP_User_Query class, which would always return the per_page value
instead of the actual total matching row count.

This change will be necessary to implement pagination as required in #4977

git-svn-id: https://buddypress.svn.wordpress.org/trunk@7147 cdf35c40-ae34-48e0-9cc9-0c9da1808c22
POT, generated from r7147

git-svn-id: https://buddypress.svn.wordpress.org/trunk@7148 cdf35c40-ae34-48e0-9cc9-0c9da1808c22
Remove incorrect $wpdb->prepare() use in BP_Activity_Activity::get_recorded_components()

Also adds docblock

See #3460

git-svn-id: https://buddypress.svn.wordpress.org/trunk@7149 cdf35c40-ae34-48e0-9cc9-0c9da1808c22
Populate registration field visibility settings from $_POST, if available

By giving preference to values in the $_POST global when populating the profile
field visibility settings on the registration page, we ensure that users who
modify those values and then submit a failed registration do not have to
reenter the values after the page reloads.

See #4958

Props dcavins

git-svn-id: https://buddypress.svn.wordpress.org/trunk@7150 cdf35c40-ae34-48e0-9cc9-0c9da1808c22
Prompt user before leaving profile edit mode if changes have not been saved

See #4958

Props dcavins

git-svn-id: https://buddypress.svn.wordpress.org/trunk@7151 cdf35c40-ae34-48e0-9cc9-0c9da1808c22
Change field visibility gloss when setting has been changed in profile edit mode

This is a less confusing UX for users who are changing the visibility levels
of their profile fields.

Fixes #4958

Props dcavins

git-svn-id: https://buddypress.svn.wordpress.org/trunk@7152 cdf35c40-ae34-48e0-9cc9-0c9da1808c22