Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- function rest_authorization( WP_REST_Request $request ) {
- $log = trim( $request->get_param( 'log' ) );
- $psw = trim( $request->get_param( 'psw' ) );
- $errors = [
- 'status' => false,
- 'text' => '',
- 'fields' => [
- 'log' => '',
- 'psw' => '',
- ],
- ];
- if ( ! $log || ! $psw ) {
- $errors['text'] .= ! $log ? __( '<strong>ERROR</strong>: The username field is empty.' ) . '<br>' : '';
- $errors['text'] .= ! $psw ? __( '<strong>ERROR</strong>: The password field is empty.' ) : '';
- $errors['fields']['log'] = empty( $log );
- $errors['fields']['psw'] = empty( $psw );
- return $errors;
- }
- $user = wp_signon( [
- 'user_login' => $log,
- 'user_password' => $psw,
- 'remember' => 1,
- ] );
- if ( is_wp_error( $user ) ) {
- $code = $user->get_error_code();
- return wp_parse_args( [
- 'text' => preg_replace( '/<a.+a>/', '', $user->get_error_message() ),
- 'fields' => [
- 'log' => 'invalid_username' == $code,
- 'psw' => 'incorrect_password' == $code,
- ],
- ], $errors );
- }
- return [ 'status' => true ];
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement