Ticket #6169: 6169.02.patch
| File 6169.02.patch, 9.6 KB (added by , 11 years ago) |
|---|
-
src/bp-activity/bp-activity-filters.php
651 651 * @return array 652 652 */ 653 653 function bp_activity_filter_just_me_scope( $retval, $filter ) { 654 $retval = array( 655 'column' => 'user_id', 656 'value' => $filter['user_id'] 657 ); 658 659 $retval['override']['display_comments'] = 'stream'; 654 if ( ! empty( $filter['user_id'] ) ) { 655 $user_id = $filter['user_id']; 656 } else { 657 $user_id = bp_displayed_user_id() ? bp_displayed_user_id() : bp_loggedin_user_id(); 658 } 660 659 661 // wipe out the user ID 662 $retval['override']['filter']['user_id'] = 0; 660 // Should we show all items regardless of sitewide visibility? 661 $show_hidden = array(); 662 if ( ! empty( $user_id ) && $user_id !== bp_loggedin_user_id() ) { 663 $show_hidden = array( 664 'column' => 'hide_sitewide', 665 'value' => 0 666 ); 667 } 663 668 664 return $retval; 669 return array( 670 'relation' => 'AND', 671 array( 672 'column' => 'user_id', 673 'value' => $filter['user_id'] 674 ), 675 $show_hidden, 676 677 // overrides 678 'override' => array( 679 'display_comments' => 'stream', 680 'filter' => array( 'user_id' => 0 ), 681 'show_hidden' => true 682 ), 683 ); 665 684 } 666 685 add_filter( 'bp_activity_set_just-me_scope_args', 'bp_activity_filter_just_me_scope', 10, 2 ); 667 686 … … 675 694 * @return array 676 695 */ 677 696 function bp_activity_filter_favorites_scope( $retval, $filter ) { 678 $favs = bp_activity_get_user_favorites( $filter['user_id'] ); 697 if ( ! empty( $filter['user_id'] ) ) { 698 $user_id = $filter['user_id']; 699 } else { 700 $user_id = bp_displayed_user_id() ? bp_displayed_user_id() : bp_loggedin_user_id(); 701 } 702 703 $favs = bp_activity_get_user_favorites( $user_id ); 679 704 if ( empty( $favs ) ) { 680 705 $favs = array( 0 ); 681 706 } 682 707 683 $retval = array( 684 'column' => 'id', 685 'compare' => 'IN', 686 'value' => (array) $favs 687 ); 688 $retval['override']['display_comments'] = true; 689 690 // wipe out the user ID 691 $retval['override']['filter']['user_id'] = 0; 708 // Should we show all items regardless of sitewide visibility? 709 $show_hidden = array(); 710 if ( ! empty( $user_id ) && $user_id !== bp_loggedin_user_id() ) { 711 $show_hidden = array( 712 'column' => 'hide_sitewide', 713 'value' => 0 714 ); 715 } 692 716 693 return $retval; 717 return array( 718 'relation' => 'AND', 719 array( 720 'column' => 'id', 721 'compare' => 'IN', 722 'value' => (array) $favs 723 ), 724 $show_hidden, 725 726 // overrides 727 'override' => array( 728 'display_comments' => true, 729 'filter' => array( 'user_id' => 0 ), 730 'show_hidden' => true 731 ), 732 ); 694 733 } 695 734 add_filter( 'bp_activity_set_favorites_scope_args', 'bp_activity_filter_favorites_scope', 10, 2 ); 696 735 … … 710 749 return $retval; 711 750 } 712 751 713 $retval = array( 714 'column' => 'content', 715 'compare' => 'LIKE', 716 717 // Start search at @ symbol and stop search at closing tag delimiter. 718 'value' => '@' . bp_activity_get_user_mentionname( $filter['user_id'] ) . '<' 719 ); 720 721 // wipe out current search terms if any 722 // this is so the 'mentions' scope can be combined with other scopes 723 $retval['override']['search_terms'] = false; 752 if ( ! empty( $filter['user_id'] ) ) { 753 $user_id = $filter['user_id']; 754 } else { 755 $user_id = bp_displayed_user_id() ? bp_displayed_user_id() : bp_loggedin_user_id(); 756 } 724 757 725 $retval['override']['display_comments'] = 'stream'; 726 $retval['override']['filter']['user_id'] = 0; 758 // Should we show all items regardless of sitewide visibility? 759 $show_hidden = array(); 760 if ( ! empty( $user_id ) && $user_id !== bp_loggedin_user_id() ) { 761 $show_hidden = array( 762 'column' => 'hide_sitewide', 763 'value' => 0 764 ); 765 } 727 766 728 return $retval; 767 return array( 768 'relation' => 'AND', 769 array( 770 'column' => 'content', 771 'compare' => 'LIKE', 772 773 // Start search at @ symbol and stop search at closing tag delimiter. 774 'value' => '@' . bp_activity_get_user_mentionname( $user_id ) . '<' 775 ), 776 $show_hidden, 777 778 // overrides 779 'override' => array( 780 // wipe out current search terms if any 781 // this is so the 'mentions' scope can be combined with other scopes 782 'search_terms' => false, 783 784 'display_comments' => 'stream', 785 'filter' => array( 'user_id' => 0 ), 786 'show_hidden' => true 787 ), 788 ); 729 789 } 730 790 add_filter( 'bp_activity_set_mentions_scope_args', 'bp_activity_filter_mentions_scope', 10, 2 ); -
src/bp-activity/bp-activity-template.php
622 622 if ( empty( $search_terms ) && ! empty( $_REQUEST['s'] ) ) 623 623 $search_terms = $_REQUEST['s']; 624 624 625 // Set some default arguments when using a scope626 if ( ! empty( $scope ) ) {627 // Determine which user ID applies628 if ( empty( $user_id ) ) {629 $user_id = bp_displayed_user_id() ? bp_displayed_user_id() : bp_loggedin_user_id();630 }631 632 // Should we show all items regardless of sitewide visibility?633 if ( ! empty( $user_id ) ) {634 $show_hidden = ( $user_id == bp_loggedin_user_id() ) ? 1 : 0;635 }636 }637 638 625 // Do not exceed the maximum per page 639 626 if ( !empty( $max ) && ( (int) $per_page > (int) $max ) ) 640 627 $per_page = $max; -
src/bp-friends/bp-friends-activity.php
239 239 * @return array 240 240 */ 241 241 function bp_friends_filter_activity_scope( $retval, $filter ) { 242 $friends = friends_get_friend_user_ids( $filter['user_id'] ); 242 if ( ! empty( $filter['user_id'] ) ) { 243 $user_id = $filter['user_id']; 244 } else { 245 $user_id = bp_displayed_user_id() ? bp_displayed_user_id() : bp_loggedin_user_id(); 246 } 247 248 $friends = friends_get_friend_user_ids( $user_id ); 243 249 244 250 if ( empty( $friends ) ) { 245 251 $friends = array( 0 ); 246 252 } 247 253 248 $retval=array(254 return array( 249 255 'relation' => 'AND', 250 256 array( 251 257 'column' => 'user_id', … … 257 263 'column' => 'hide_sitewide', 258 264 'value' => 0 259 265 ), 260 );261 262 // wipe out the user ID263 $retval['override']['filter']['user_id'] = 0;264 265 // make sure we aren't limiting items by 'hide_sitewide' since we're already266 // limiting it above267 $retval['override']['show_hidden'] = true;268 266 269 return $retval; 267 // overrides 268 'override' => array( 269 'filter' => array( 'user_id' => 0 ), 270 'show_hidden' => true 271 ), 272 ); 270 273 } 271 274 add_filter( 'bp_activity_set_friends_scope_args', 'bp_friends_filter_activity_scope', 10, 2 ); 272 275 … … 282 285 * @return array 283 286 */ 284 287 function bp_friends_filter_activity_just_me_scope( $retval, $filter ) { 288 if ( ! empty( $filter['user_id'] ) ) { 289 $user_id = $filter['user_id']; 290 } else { 291 $user_id = bp_displayed_user_id() ? bp_displayed_user_id() : bp_loggedin_user_id(); 292 } 293 285 294 // Get the requested action 286 295 $action = $filter['filter']['action']; 287 296 … … 300 309 return $retval; 301 310 } 302 311 312 // Save existing override value 313 $override = array(); 314 if ( ! empty( $retval['override'] ) ) { 315 $override = $retval['override']; 316 unset( $retval['override'] ); 317 } 318 303 319 /** 304 320 * Else make sure to get the friendship_created action, the user is involved in 305 321 * - user initiated the friendship 306 322 * - user has been requested a friendship 307 323 */ 308 returnarray(324 $retval = array( 309 325 'relation' => 'OR', 310 array( 311 'column' => 'user_id', 312 'value' => $filter['user_id'] 313 ), 326 $retval, 314 327 array( 315 328 'relation' => 'AND', 316 329 array( … … 319 332 ), 320 333 array( 321 334 'column' => 'secondary_item_id', 322 'value' => $ filter['user_id'],335 'value' => $user_id, 323 336 ), 324 ), 325 'override' => array( 326 'display_comments' => 'stream', 327 'filter' => array( 'user_id' => 0 ), 328 ), 337 ) 329 338 ); 339 340 // Add back override value 341 if ( ! empty( $override ) ) { 342 $retval['override'] = $override; 343 } 344 345 return $retval; 330 346 } 331 347 add_filter( 'bp_activity_set_just-me_scope_args', 'bp_friends_filter_activity_just_me_scope', 20, 2 ); 332 348 -
src/bp-groups/bp-groups-activity.php
243 243 * @return array 244 244 */ 245 245 function bp_groups_filter_activity_scope( $retval, $filter ) { 246 $groups = groups_get_user_groups( $filter['user_id'] ); 246 if ( ! empty( $filter['user_id'] ) ) { 247 $user_id = $filter['user_id']; 248 } else { 249 $user_id = bp_displayed_user_id() ? bp_displayed_user_id() : bp_loggedin_user_id(); 250 } 247 251 252 $groups = groups_get_user_groups( $user_id ); 248 253 if ( empty( $groups['groups'] ) ) { 249 254 $groups = array( 'groups' => 0 ); 250 255 } 251 256 252 $retval= array( 257 // Should we show all items regardless of sitewide visibility? 258 $show_hidden = array(); 259 if ( ! empty( $user_id ) && $user_id !== bp_loggedin_user_id() ) { 260 $show_hidden = array( 261 'column' => 'hide_sitewide', 262 'value' => 0 263 ); 264 } 265 266 return array( 253 267 'relation' => 'AND', 254 268 array( 255 'column' => 'component', 256 'value' => buddypress()->groups->id 269 'relation' => 'AND', 270 array( 271 'column' => 'component', 272 'value' => buddypress()->groups->id 273 ), 274 array( 275 'column' => 'item_id', 276 'compare' => 'IN', 277 'value' => (array) $groups['groups'] 278 ), 257 279 ), 258 array( 259 'column' => 'item_id', 260 'compare' => 'IN', 261 'value' => (array) $groups['groups'] 280 $show_hidden, 281 282 // overrides 283 'override' => array( 284 'filter' => array( 'user_id' => 0 ), 285 'show_hidden' => true 262 286 ), 263 287 ); 264 265 // wipe out the user ID266 $retval['override']['filter']['user_id'] = 0;267 268 return $retval;269 288 } 270 289 add_filter( 'bp_activity_set_groups_scope_args', 'bp_groups_filter_activity_scope', 10, 2 ); 271 290