Merge branch 'release/2.0.22' of https://github.com/ultimatemember/ultimatemember into release/2.0.22

This commit is contained in:
nikitozzzzzzz
2018-07-30 17:34:19 +03:00
2 changed files with 29 additions and 21 deletions
+23 -20
View File
@@ -450,30 +450,33 @@ add_filter( 'um_modify_sortby_parameter', 'um_sortby_last_login', 100, 2 );
* @return mixed
*/
function um_modify_sortby_randomly( $query ) {
if( um_is_session_started() === false ){
@session_start();
}
// Reset seed on load of initial
if( ! isset( $_REQUEST['members_page'] ) || $_REQUEST['members_page'] == 0 || $_REQUEST['members_page'] == 1 ) {
if( isset( $_SESSION['seed'] ) ) {
unset( $_SESSION['seed'] );
if( 'random' == $query->query_vars["orderby"] ) {
if( um_is_session_started() === false ){
@session_start();
}
}
// Get seed from session variable if it exists
$seed = false;
if( isset( $_SESSION['seed'] ) ) {
$seed = $_SESSION['seed'];
}
// Set new seed if none exists
if ( ! $seed ) {
$seed = rand();
$_SESSION['seed'] = $seed;
}
// Reset seed on load of initial
if( ! isset( $_REQUEST['members_page'] ) || $_REQUEST['members_page'] == 0 || $_REQUEST['members_page'] == 1 ) {
if( isset( $_SESSION['seed'] ) ) {
unset( $_SESSION['seed'] );
}
}
if($query->query_vars["orderby"] == 'random') {
// Get seed from session variable if it exists
$seed = false;
if( isset( $_SESSION['seed'] ) ) {
$seed = $_SESSION['seed'];
}
// Set new seed if none exists
if ( ! $seed ) {
$seed = rand();
$_SESSION['seed'] = $seed;
}
$query->query_orderby = 'ORDER by RAND('. $seed.')';
}
+6 -1
View File
@@ -1314,7 +1314,12 @@ function um_can_view_profile( $user_id ) {
um_fetch_user( get_current_user_id() );
if ( um_user( 'can_view_roles' ) && $user_id != get_current_user_id() ) {
if ( count( array_intersect( UM()->roles()->get_all_user_roles( $user_id ), um_user( 'can_view_roles' ) ) ) <= 0 ) {
$can_view_roles = um_user( 'can_view_roles' );
if( ! is_array( $can_view_roles ) ) $can_view_roles = array();
if ( count( array_intersect( UM()->roles()->get_all_user_roles( $user_id ), $can_view_roles ) ) <= 0 ) {
um_fetch_user( $temp_id );
return false;
}