Changeset 4349
- Timestamp:
- 11/07/2012 08:04:06 AM (14 years ago)
- Location:
- trunk/includes
- Files:
-
- 4 edited
-
forums/capabilities.php (modified) (6 diffs)
-
replies/capabilities.php (modified) (7 diffs)
-
topics/capabilities.php (modified) (8 diffs)
-
users/capabilities.php (modified) (6 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/includes/forums/capabilities.php
r4330 r4349 3 3 /** 4 4 * bbPress Forum Capabilites 5 * 5 * 6 6 * Used to map forum capabilities to WordPress's existing capabilities. 7 7 * … … 54 54 case 'read_hidden_forums' : 55 55 56 // Non-participants can never read private/hidden forums57 if ( ! user_can( $user_id, 'participate' ) ) {58 $caps = array( 'do_not_allow' );59 60 56 // Moderators can always read private/hidden forums 61 } elseif ( user_can( $user_id, 'moderate' ) ) {62 $caps = array( $cap);57 if ( user_can( $user_id, 'moderate' ) ) { 58 $caps = array( 'moderate' ); 63 59 } 64 60 … … 68 64 69 65 // User cannot participate 70 if ( ! user_can( $user_id, ' participate' ) ) {66 if ( ! user_can( $user_id, 'spectate' ) ) { 71 67 $caps = array( 'do_not_allow' ); 72 68 73 69 // Do some post ID based logic 74 70 } else { 75 71 76 72 // Get the post 77 73 $_post = get_post( $args[0] ); … … 83 79 // Post is public 84 80 if ( bbp_get_public_status_id() == $_post->post_status ) { 85 $caps = array( ' particpate' );81 $caps = array( 'spectate' ); 86 82 87 83 // User is author so allow read 88 84 } elseif ( (int) $user_id == (int) $_post->post_author ) { 89 $caps = array( ' participate' );85 $caps = array( 'spectate' ); 90 86 91 87 // Unknown so map to private posts … … 102 98 case 'publish_forums' : 103 99 104 // Non participants cannot participate105 if ( ! user_can( $user_id, 'participate' ) ) {106 $caps = array( 'do_not_allow' );107 108 100 // Moderators can always edit 109 } elseif ( user_can( $user_id, 'moderate' ) ) {110 $caps = array( $cap);101 if ( user_can( $user_id, 'moderate' ) ) { 102 $caps = array( 'moderate' ); 111 103 } 112 104 … … 119 111 case 'edit_others_forums' : 120 112 121 // Non participants cannot manage content122 if ( ! user_can( $user_id, 'participate' ) ) {123 $caps = array( 'do_not_allow' );124 125 113 // Moderators can always edit 126 } elseif ( user_can( $user_id, 'moderate' ) ) {127 $caps = array( $cap);114 if ( user_can( $user_id, 'moderate' ) ) { 115 $caps = array( 'moderate' ); 128 116 } 129 117 -
trunk/includes/replies/capabilities.php
r4330 r4349 3 3 /** 4 4 * bbPress Reply Capabilites 5 * 5 * 6 6 * Used to map reply capabilities to WordPress's existing capabilities. 7 7 * … … 53 53 54 54 // User cannot participate 55 if ( ! user_can( $user_id, ' participate' ) ) {55 if ( ! user_can( $user_id, 'spectate' ) ) { 56 56 $caps = array( 'do_not_allow' ); 57 57 58 58 // Do some post ID based logic 59 59 } else { 60 60 61 61 // Get the post 62 62 $_post = get_post( $args[0] ); … … 68 68 // Post is public 69 69 if ( bbp_get_public_status_id() == $_post->post_status ) { 70 $caps = array( ' particpate' );70 $caps = array( 'spectate' ); 71 71 72 72 // User is author so allow read 73 73 } elseif ( (int) $user_id == (int) $_post->post_author ) { 74 $caps = array( ' participate' );74 $caps = array( 'spectate' ); 75 75 76 76 // Unknown so map to private posts … … 87 87 case 'publish_replies' : 88 88 89 // Non participants cannot participate90 if ( ! user_can( $user_id, 'participate' ) ) {91 $caps = array( 'do_not_allow' );92 93 89 // Moderators can always publish 94 } elseif ( user_can( $user_id, 'moderate' ) ) {95 $caps = array( $cap);90 if ( user_can( $user_id, 'moderate' ) ) { 91 $caps = array( 'moderate' ); 96 92 } 97 93 … … 104 100 case 'edit_others_replies' : 105 101 106 // Non participants cannot manage content107 if ( ! user_can( $user_id, 'participate' ) ) {108 $caps = array( 'do_not_allow' );109 110 102 // Moderators can always edit 111 } elseif ( user_can( $user_id, 'moderate' ) ) {112 $caps = array( $cap);103 if ( user_can( $user_id, 'moderate' ) ) { 104 $caps = array( 'moderate' ); 113 105 } 114 106 … … 160 152 // Moderators can always edit forum content 161 153 } elseif ( user_can( $user_id, 'moderate' ) ) { 162 $caps[] = ' participate';154 $caps[] = 'moderate'; 163 155 164 156 // Unknown so map to delete_others_posts … … 169 161 170 162 break; 171 163 172 164 // Moderation override 173 165 case 'delete_replies' : 174 166 case 'delete_others_replies' : 175 167 176 // Non participants cannot manage content177 if ( ! user_can( $user_id, 'participate' ) ) {178 $caps = array( 'do_not_allow' );179 180 168 // Moderators can always delete 181 } elseif ( user_can( $user_id, 'moderate' ) ) {182 $caps = array( $cap);169 if ( user_can( $user_id, 'moderate' ) ) { 170 $caps = array( 'moderate' ); 183 171 } 184 172 185 173 break; 186 174 187 175 /** Admin *************************************************************/ 188 176 -
trunk/includes/topics/capabilities.php
r4330 r4349 3 3 /** 4 4 * bbPress Topic Capabilites 5 * 5 * 6 6 * Used to map topic capabilities to WordPress's existing capabilities. 7 7 * … … 71 71 72 72 // User cannot participate 73 if ( ! user_can( $user_id, ' participate' ) ) {73 if ( ! user_can( $user_id, 'spectate' ) ) { 74 74 $caps = array( 'do_not_allow' ); 75 75 76 76 // Do some post ID based logic 77 77 } else { 78 78 79 79 // Get the post 80 80 $_post = get_post( $args[0] ); … … 86 86 // Post is public 87 87 if ( bbp_get_public_status_id() == $_post->post_status ) { 88 $caps = array( ' particpate' );88 $caps = array( 'spectate' ); 89 89 90 90 // User is author so allow read 91 91 } elseif ( (int) $user_id == (int) $_post->post_author ) { 92 $caps = array( ' participate' );92 $caps = array( 'spectate' ); 93 93 94 94 // Unknown so map to private posts … … 105 105 case 'publish_topics' : 106 106 107 // Non participants cannot participate108 if ( ! user_can( $user_id, 'participate' ) ) {109 $caps = array( 'do_not_allow' );110 111 107 // Moderators can always publish 112 } elseif ( user_can( $user_id, 'moderate' ) ) {113 $caps = array( $cap);108 if ( user_can( $user_id, 'moderate' ) ) { 109 $caps = array( 'moderate' ); 114 110 } 115 111 … … 122 118 case 'edit_others_topics' : 123 119 124 // Non participants cannot manage content125 if ( ! user_can( $user_id, 'participate' ) ) {126 $caps = array( 'do_not_allow' );127 128 120 // Moderators can always edit 129 } elseif ( user_can( $user_id, 'moderate' ) ) {121 if ( user_can( $user_id, 'moderate' ) ) { 130 122 $caps = array( $cap ); 131 123 } … … 178 170 // Moderators can always edit forum content 179 171 } elseif ( user_can( $user_id, 'moderate' ) ) { 180 $caps[] = ' participate';172 $caps[] = 'moderate'; 181 173 182 174 // Unknown so map to delete_others_posts … … 187 179 188 180 break; 189 181 190 182 // Moderation override 191 183 case 'delete_topics' : 192 184 case 'delete_others_topics' : 193 185 194 // Non participants cannot manage content195 if ( ! user_can( $user_id, 'participate' ) ) {196 $caps = array( 'do_not_allow' );197 198 186 // Moderators can always delete 199 } elseif ( user_can( $user_id, 'moderate' ) ) {187 if ( user_can( $user_id, 'moderate' ) ) { 200 188 $caps = array( $cap ); 201 189 } 202 190 203 191 break; 204 192 205 193 /** Admin *************************************************************/ 206 194 … … 229 217 // What capability is being checked? 230 218 switch ( $cap ) { 231 case 'manage_topic_tags' : 232 case 'edit_topic_tags' : 233 case 'delete_topic_tags' : 234 case 'assign_topic_tags' : 235 236 // Non participants cannot manage content 237 if ( ! user_can( $user_id, 'participate' ) ) { 238 $caps = array( 'do_not_allow' ); 219 case 'manage_topic_tags' : 220 case 'edit_topic_tags' : 221 case 'delete_topic_tags' : 222 case 'assign_topic_tags' : 223 case 'bbp_topic_tags_admin' : 239 224 240 225 // Moderators can always edit 241 } elseif ( user_can( $user_id, 'moderate' ) ) { 242 $caps = array( $cap ); 243 } 244 245 break; 246 247 case 'bbp_topic_tags_admin' : 248 $caps = array( 'moderate' ); 226 if ( user_can( $user_id, 'moderate' ) ) { 227 $caps = array( 'moderate' ); 228 } 249 229 } 250 230 -
trunk/includes/users/capabilities.php
r4346 r4349 3 3 /** 4 4 * bbPress User Capabilites 5 * 5 * 6 6 * Used to map user capabilities to WordPress's existing capabilities. 7 7 * … … 171 171 function bbp_set_current_user_default_role() { 172 172 173 // Bail if forum is not global 174 if ( ! bbp_allow_global_access( true ) ) 175 return; 173 /** Sanity ****************************************************************/ 176 174 177 175 // Bail if not logged in or already a member of this site … … 190 188 return; 191 189 192 // Load up bbPress 193 $bbp = bbpress(); 190 /** Ready *****************************************************************/ 191 192 // Load up bbPress once 193 $bbp = bbpress(); 194 195 // Get whether or not to add a role to the user account 196 $add_to_site = bbp_allow_global_access(); 194 197 195 198 // Get the current user's WordPress role. Set to empty string if none found. 196 $user_role = isset( $bbp->current_user->roles ) ? array_shift( $bbp->current_user->roles ) : '';199 $user_role = isset( $bbp->current_user->roles ) ? array_shift( $bbp->current_user->roles ) : ''; 197 200 198 201 // Loop through the role map, and grant the proper bbPress role 199 202 foreach ( (array) bbp_get_user_role_map() as $wp_role => $bbp_role ) { 203 204 // User's role matches a possible WordPress role (including none at all) 200 205 if ( $user_role == $wp_role ) { 201 $bbp->current_user->add_role( $bbp_role ); 206 207 // Add role to user account, making them a user of this site 208 if ( true == $add_to_site ) { 209 $bbp->current_user->add_role( $bbp_role ); 210 211 // Dynamically assign capabilities, making them "anonymous" 212 } else { 213 $bbp->current_user->caps[$bbp_role] = true; 214 $bbp->current_user->get_role_caps(); 215 } 216 202 217 break; 203 218 } 204 } 219 } 205 220 } 206 221 … … 226 241 'contributor' => $default_role, 227 242 'subscriber' => $default_role, 228 '' => $default_role243 '' => bbp_get_anonymous_role() 229 244 ) ); 230 245 } … … 490 505 /** 491 506 * Checks if user is active 492 * 507 * 493 508 * @since bbPress (r3502) 494 * 509 * 495 510 * @uses is_user_logged_in() To check if user is logged in 496 511 * @uses bbp_get_displayed_user_id() To get current user ID … … 525 540 /** 526 541 * Checks if user is not active. 527 * 542 * 528 543 * @since bbPress (r3502) 529 * 544 * 530 545 * @uses is_user_logged_in() To check if user is logged in 531 546 * @uses bbp_get_displayed_user_id() To get current user ID
Note: See TracChangeset
for help on using the changeset viewer.