bp_nouveau_ajax_mark_activity_favorite()
Mark an activity as a favourite via a POST request.
Return Return
(string) JSON reply
Source Source
File: bp-templates/bp-nouveau/includes/activity/ajax.php
function bp_nouveau_ajax_mark_activity_favorite() { if ( ! bp_is_post_request() ) { wp_send_json_error(); } // Nonce check! if ( empty( $_POST['nonce'] ) || ! wp_verify_nonce( $_POST['nonce'], 'bp_nouveau_activity' ) ) { wp_send_json_error(); } $activity_id = (int) $_POST['id']; $activity_item = new BP_Activity_Activity( $activity_id ); if ( ! bp_activity_user_can_read( $activity_item, bp_loggedin_user_id() ) ) { wp_send_json_error(); } if ( bp_activity_add_user_favorite( $_POST['id'] ) ) { $response = array( 'content' => __( 'Remove Favorite', 'buddypress' ) ); if ( ! bp_is_user() ) { $fav_count = (int) bp_get_total_favorite_count_for_user( bp_loggedin_user_id() ); if ( 1 === $fav_count ) { $response['directory_tab'] = '<li id="activity-favorites" data-bp-scope="favorites" data-bp-object="activity"> <a href="' . bp_loggedin_user_domain() . bp_nouveau_get_component_slug( 'activity' ) . '/favorites/"> ' . esc_html__( 'My Favorites', 'buddypress' ) . ' </a> </li>'; } else { $response['fav_count'] = $fav_count; } } wp_send_json_success( $response ); } else { wp_send_json_error(); } }
Expand full source code Collapse full source code View on Trac
Changelog Changelog
Version | Description |
---|---|
3.0.0 | Introduced. |