Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Thêm function:
- function checkUserIDFacebook($userID) {
- global $wpdb;
- $user = $wpdb->get_results("SELECT * FROM wp_nicmsusermeta WHERE meta_key = 'open_type_facebook' AND meta_value= $userID ");
- return $user;
- }
- function existsEmail($exists) {
- if(get_user_meta($exists, 'open_type', true) == 'facebook,') {
- $this->checkContent($exists);
- $status = $this->isUserInfoValid($exists);
- $token = $this->set_token($exists);
- if($status == 1) {
- $data = array(
- 'status' => 1,
- 'token' => $token
- );
- return $data;
- }
- $data = array(
- 'status' => 0,
- 'token' => $token
- );
- return $data;
- } else {
- return new WP_Error( 'rest_not_found', __( 'Email already exists.', 'wpuf-pro' ), array( 'status' => 404 ) );
- }
- }
- function notExistEmail($user, $url, $access_token) {
- if (!isset($user['email'])) {
- $user['email'] = '';
- }
- $username = 'FACEBOOK'.$user['id'];
- $password = wp_generate_password( 20, false );
- $creationResult = wp_create_user( $username, $password, $user['email'] );
- if ( is_wp_error( $creationResult ) ) {
- return new WP_Error( 'registration_failed', __( 'Registration failed.' ), array( 'status' => 422, 'message' => $creationResult->get_error_message() ) );
- }
- $user_img = open_connect_http($url.'/me/picture?redirect=false&height=320&type=small&width=320&access_token='.$access_token);
- $img = $user_img['data']['url'];
- if(isset($img)) {
- $imagesID = $this->saveImageFromUrl($img);
- update_user_meta($creationResult, 'images', $imagesID);
- $image = wp_get_attachment_image_src($imagesID, 'avatar-thumb');
- update_user_meta($creationResult, 'user_avatar', $image[0]);
- }
- $name = $user['name'];
- update_user_meta($creationResult, 'nickname', $name);
- update_user_meta($creationResult, 'gender', $this->gender($user));
- update_user_meta($creationResult, 'open_type', 'facebook,');
- update_user_meta($creationResult, 'open_type_facebook', $user['id']);
- update_user_meta($creationResult, 'open_img', $img);
- update_user_meta($creationResult, 'open_access_token', $access_token);
- update_user_meta($creationResult, 'deactive_user', 1);
- $test = get_user_meta($creationResult , 'user_avatar', true);
- $token = $this->set_token($creationResult);
- $data = array(
- 'status' => 1,
- 'token' => $token
- );
- return $data;
- }
- ------------
- Search: function doLoginFacebook Sửa thành:
- public function doLoginFacebook($request) {
- global $wpdb;
- $access_token = $request['access_token'];
- $appID = '801820409985344';
- $appsecret = 'e97f2f8b0612369b1eaf605d46e6e018';
- $url = 'https://graph.facebook.com';
- $user = open_connect_http($url.'/me?fields=id,name,email,gender&access_token='.$access_token);
- $idUser = $user['id'];
- if(!isset($idUser)) {
- return new WP_Error( 'rest_not_found', __( 'User not found.', 'wpuf-pro' ), array( 'status' => 404 ) );
- }
- $email = $user['email'];
- if($email != '') {
- $exists = email_exists($email);
- if($exists) {
- return $this->existsEmail($exists);
- } else {
- return $this->notExistEmail($user, $url, $access_token);
- }
- } else {
- $checkUser = $this->checkUserIDFacebook($idUser);
- if(count($checkUser) > 0) {
- return $this->existsEmail($checkUser[0]->user_id);
- } else {
- return $this->notExistEmail($user, $url, $access_token);
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement