LLMS_REST_API_Keys_Controller::prepare_item_for_database( WP_REST_Request $request )
Prepare API Key for insert/update
Parameters Parameters
- $request
-
(WP_REST_Request) (Required) Request object.
Return Return
(WP_Error|array)
Source Source
File: libraries/lifterlms-rest/includes/server/class-llms-rest-api-keys-controller.php
protected function prepare_item_for_database( $request ) {
$prepared = array();
if ( isset( $request['id'] ) ) {
$existing = $this->get_object( $request['id'] );
if ( is_wp_error( $existing ) ) {
return $existing;
}
$prepared['id'] = $existing->get( 'id' );
}
$schema = $this->get_item_schema();
if ( ! empty( $schema['properties']['description'] ) && isset( $request['description'] ) ) {
$prepared['description'] = $request['description'];
}
if ( ! empty( $schema['properties']['user_id'] ) && isset( $request['user_id'] ) ) {
$user_id = (int) $request['user_id'];
if ( ! current_user_can( 'edit_user', $user_id ) ) {
return llms_rest_authorization_required_error( __( 'You are not allowed to create or edit an API key for this user.', 'lifterlms' ) );
}
$prepared['user_id'] = $user_id;
}
if ( ! empty( $schema['properties']['permissions'] ) && isset( $request['permissions'] ) ) {
$prepared['permissions'] = $request['permissions'];
}
return $prepared;
}
Expand full source code Collapse full source code View on GitHub
Changelog Changelog
| Version | Description |
|---|---|
| 1.0.0-beta.1 | Introduced. |