@@ -33,7 +33,7 @@ public static function register_routes() {
3333 array (
3434 'methods ' => \WP_REST_Server::EDITABLE ,
3535 'callback ' => array ( '\Activitypub\Rest\Inbox ' , 'shared_inbox_post ' ),
36- 'args ' => self ::shared_inbox_request_parameters (),
36+ 'args ' => self ::shared_inbox_post_parameters (),
3737 'permission_callback ' => '__return_true ' ,
3838 ),
3939 )
@@ -46,12 +46,13 @@ public static function register_routes() {
4646 array (
4747 'methods ' => \WP_REST_Server::EDITABLE ,
4848 'callback ' => array ( '\Activitypub\Rest\Inbox ' , 'user_inbox_post ' ),
49- 'args ' => self ::user_inbox_request_parameters (),
49+ 'args ' => self ::user_inbox_post_parameters (),
5050 'permission_callback ' => '__return_true ' ,
5151 ),
5252 array (
5353 'methods ' => \WP_REST_Server::READABLE ,
5454 'callback ' => array ( '\Activitypub\Rest\Inbox ' , 'user_inbox_get ' ),
55+ 'args ' => self ::user_inbox_get_parameters (),
5556 'permission_callback ' => '__return_true ' ,
5657 ),
5758 )
@@ -195,7 +196,7 @@ public static function shared_inbox_post( $request ) {
195196 *
196197 * @return array list of parameters
197198 */
198- public static function user_inbox_request_parameters () {
199+ public static function user_inbox_get_parameters () {
199200 $ params = array ();
200201
201202 $ params ['page ' ] = array (
@@ -205,6 +206,32 @@ public static function user_inbox_request_parameters() {
205206 $ params ['user_id ' ] = array (
206207 'required ' => true ,
207208 'type ' => 'integer ' ,
209+ 'validate_callback ' => function ( $ param , $ request , $ key ) {
210+ return user_can ( $ param , 'publish_posts ' );
211+ },
212+ );
213+
214+ return $ params ;
215+ }
216+
217+ /**
218+ * The supported parameters
219+ *
220+ * @return array list of parameters
221+ */
222+ public static function user_inbox_post_parameters () {
223+ $ params = array ();
224+
225+ $ params ['page ' ] = array (
226+ 'type ' => 'integer ' ,
227+ );
228+
229+ $ params ['user_id ' ] = array (
230+ 'required ' => true ,
231+ 'type ' => 'integer ' ,
232+ 'validate_callback ' => function ( $ param , $ request , $ key ) {
233+ return user_can ( $ param , 'publish_posts ' );
234+ },
208235 );
209236
210237 $ params ['id ' ] = array (
@@ -243,7 +270,7 @@ public static function user_inbox_request_parameters() {
243270 *
244271 * @return array list of parameters
245272 */
246- public static function shared_inbox_request_parameters () {
273+ public static function shared_inbox_post_parameters () {
247274 $ params = array ();
248275
249276 $ params ['page ' ] = array (
0 commit comments