LLMS_REST_Posts_Controller::get_item_permissions_check( WP_REST_Request $request )
Check if a given request has access to read an item.
Parameters Parameters
- $request
-
(WP_REST_Request) (Required) Full details about the request.
Return Return
(WP_Error|boolean)
Source Source
File: libraries/lifterlms-rest/includes/abstracts/class-llms-rest-posts-controller.php
public function get_item_permissions_check( $request ) {
$object = $this->get_object( (int) $request['id'] );
if ( is_wp_error( $object ) ) {
return $object;
}
if ( 'edit' === $request['context'] && ! $this->check_update_permission( $object ) ) {
return llms_rest_authorization_required_error();
}
if ( ! empty( $request['password'] ) ) {
// Check post password, and return error if invalid.
if ( ! hash_equals( $object->get( 'password' ), $request['password'] ) ) {
return llms_rest_authorization_required_error( __( 'Incorrect password.', 'lifterlms' ) );
}
}
// Allow access to all password protected posts if the context is edit.
if ( 'edit' === $request['context'] ) {
add_filter( 'post_password_required', '__return_false' );
}
if ( ! $this->check_read_permission( $object ) ) {
return llms_rest_authorization_required_error();
}
return true;
}
Expand full source code Collapse full source code View on GitHub
Changelog Changelog
| Version | Description |
|---|---|
| 1.0.0-beta.1 | Introduced. |