BP_REST_Messages_Endpoint::update_starred( WP_REST_Request $request )
Adds or removes the message from the current user’s starred box.
Description
Parameters
- $request
-
(Required) Full details about the request.
Return
(WP_REST_Response) | WP_Error
Source
File: bp-messages/classes/class-bp-rest-messages-endpoint.php
849 850 851 852 853 854 855 856 857 858 859 860 861 862 863 864 865 866 867 868 869 870 871 872 873 874 875 876 877 878 879 880 881 882 883 884 885 886 887 888 889 890 891 892 893 894 895 896 897 898 899 900 901 902 903 904 905 906 907 908 909 910 911 912 913 914 | public function update_starred( $request ) { // Setting context. $request ->set_param( 'context' , 'edit' ); $message = $this ->get_message_object( $request [ 'id' ] ); if ( empty ( $message ->id ) ) { return new WP_Error( 'bp_rest_invalid_id' , __( 'Sorry, this message does not exist.' , 'buddyboss' ), array ( 'status' => 404, ) ); } $user_id = bp_loggedin_user_id(); $result = false; $action = 'star' ; $info = __( 'Sorry, you cannot add the message to your starred box.' , 'buddyboss' ); if ( bp_messages_is_message_starred( $message ->id, $user_id ) ) { $action = 'unstar' ; $info = __( 'Sorry, you cannot remove the message from your starred box.' , 'buddyboss' ); } $result = bp_messages_star_set_action( array ( 'user_id' => $user_id , 'message_id' => $message ->id, 'action' => $action , ) ); if ( ! $result ) { return new WP_Error( 'bp_rest_user_cannot_update_starred_message' , $info , array ( 'status' => 500, ) ); } // Prepare the message for the REST response. $data = $this ->prepare_response_for_collection( $this ->prepare_message_for_response( $message , $request ) ); $response = rest_ensure_response( $data ); /** * Fires after a message is starred/unstarred via the REST API. * * @param BP_Messages_Message $message Message object. * @param string $action Informs about the update performed. * Possible values are `star` or `unstar`. * @param WP_REST_Response $response The response data. * @param WP_REST_Request $request The request sent to the API. * * @since 0.1.0 */ do_action( 'bp_rest_message_update_starred_item' , $message , $action , $response , $request ); return $response ; } |
Changelog
Version | Description |
---|---|
0.1.0 | Introduced. |
Questions?
We're always happy to help with code or other questions you might have! Search our developer docs, contact support, or connect with our sales team.