query("update $wpdb->usermeta set meta_key = 'loginradius_provider_id' where meta_key = 'id'"); $wpdb->query("update $wpdb->usermeta set meta_key = 'loginradius_thumbnail' where meta_key = 'thumbnail'"); $wpdb->query("update $wpdb->usermeta set meta_key = 'loginradius_verification_key' where meta_key = 'loginRadiusVkey'"); $wpdb->query("update $wpdb->usermeta set meta_key = 'loginradius_isVerified' where meta_key = 'loginRadiusVerified'"); update_option('loginradius_version', self::$loginRadiusVersion); } add_action('parse_request', array(get_class(), 'connect')); add_filter('LR_logout_url', array(get_class(), 'log_out_url'), 20, 2); add_action('lr_raas_linking_interface', array(get_class(), 'raas_social_linking_interface')); /* change authentication links */ if (!empty($lr_raas_settings['lost_password_page_id'])) { add_filter('lostpassword_url', array(get_class(), 'lr_lostpassword_url'), 12, 0); } if (!empty($lr_raas_settings['registration_page_id'])) { add_filter('register_url', array(get_class(), 'lr_registration_url'), 12, 0); } if (!empty($lr_raas_settings['login_page_id'])) { add_filter('login_url', array(get_class(), 'lr_login_url'), 12, 0); } if (isset($lr_raas_settings['email_verify_option']) && ($lr_raas_settings['email_verify_option'] != 'required')) { add_filter('lr_user_allow_login', '__return_true'); } add_action('lr_update_extented_user_profile', array(get_class(), 'lr_save_raas_profile_data'), 10, 2); add_filter('is_uid_exists_in_wordpress', array(get_class(), 'is_uid_exists_in_wordpress'), 10, 2); } public static function is_uid_exists_in_wordpress($action, $userProfile) { global $wpdb; if (isset($userProfile['uid']) && !empty($userProfile['uid'])) { $userId = $wpdb->get_var($wpdb->prepare("SELECT user_id FROM " . $wpdb->usermeta . " WHERE meta_key='lr_raas_uid' AND meta_value = %s", $userProfile['uid'])); if (!empty($userId)) { // id exists return $userId; } else { // id doesn't exist return false; } } return $action; } public static function lr_lostpassword_url() { global $lr_raas_settings; return get_permalink($lr_raas_settings['lost_password_page_id']); } public static function lr_registration_url() { global $lr_raas_settings; return get_permalink($lr_raas_settings['registration_page_id']); } public static function lr_login_url() { global $lr_raas_settings; return get_permalink($lr_raas_settings['login_page_id']); } /** * Function that uses for logout. */ public static function log_out_url() { $link = '' . __('Logout', 'lr-plugin-slug') . ''; echo apply_filters('Login_Radius_log_out_url', $link); } /** * add raas interface script if linking enable * * @global type $loginRadiusSettings */ public static function raas_social_linking_interface() { global $loginRadiusSettings, $lr_js_in_footer; if (!empty($loginRadiusSettings['LoginRadius_socialLinking'])) { wp_register_script('lr-raas-front-script', LR_ROOT_URL . 'lr-raas/assets/js/loginradiusfront.js', array('jquery-ui-datepicker'), LR_PLUGIN_VERSION, $lr_js_in_footer); wp_register_script('lr-raas', '//cdn.loginradius.com/hub/prod/js/LoginRadiusRaaS.js', array('jquery', 'lr-social-login'), LR_PLUGIN_VERSION, $lr_js_in_footer); wp_register_style('lr-raas-style', LR_ROOT_URL . 'lr-raas/assets/css/lr-raas-style.css', array(), LR_PLUGIN_VERSION); echo '
' . self::login_script() . self::raas_forms('accountlinking'); echo ''; } } /** * update user profile data in usermeta * * @param type $user_id * @param type $profileData */ public static function lr_save_raas_profile_data($user_id, $profileData) { $user_id = wp_update_user(array('ID' => $user_id, 'first_name' => $profileData['FirstName'], 'last_name' => $profileData['LastName'], 'user_nicename' => $profileData['NickName'] )); if (isset($profileData['Gender']) && in_array($profileData['Gender'], array('M', 'male', 'Male', 'm'))) { $gender = 'M'; } elseif (isset($profileData['Gender']) && in_array($profileData['Gender'], array('F', 'female', 'Female', 'f'))) { $gender = 'F'; } else { $gender = 'U'; } $birthdate = !empty($profileData['BirthDate']) ? $profileData['BirthDate'] : ''; $city = !empty($profileData['ProfileCity']) ? $profileData['ProfileCity'] : ''; $state = !empty($profileData['State']) ? $profileData['State'] : ''; $country = !empty($profileData['CountryName']) ? $profileData['CountryName'] : ''; $phone = !empty($profileData['PhoneNumber']) ? $profileData['PhoneNumber'] : ''; if (!empty($profileData['uid'])) { update_user_meta($user_id, 'lr_raas_uid', $profileData['uid']); } if (!empty($profileData['ID'])) { update_user_meta($user_id, 'lr_raas_accountid', $profileData['ID']); } update_user_meta($user_id, 'lr_birthdate', $birthdate); update_user_meta($user_id, 'lr_gender', $gender); update_user_meta($user_id, 'lr_city', $city); update_user_meta($user_id, 'lr_state', $state); update_user_meta($user_id, 'lr_country', $country); update_user_meta($user_id, 'lr_phone', $phone); } /** * Print the script required for enabling social login. * * @global array $loginradius_api_settings * @global type $lr_raas_settings * @param type $linkingWidget * @param type $custom */ public static function login_script($linkingWidget = false, $custom = false) { global $loginradius_api_settings, $lr_raas_settings, $lr_custom_interface_settings; $loginradius_api_settings['LoginRadius_apikey'] = isset($loginradius_api_settings['LoginRadius_apikey']) ? trim($loginradius_api_settings['LoginRadius_apikey']) : ''; if (!empty($loginradius_api_settings['LoginRadius_apikey'])) { $emailVerificationUrl = isset($lr_raas_settings['login_page_id']) ? get_permalink($lr_raas_settings['login_page_id']) : ''; $forgotPasswordUrl = isset($lr_raas_settings['login_page_id']) ? get_permalink($lr_raas_settings['login_page_id']) : ''; $storageVariable = ''; wp_enqueue_script('jquery'); wp_enqueue_script('jquery-ui-datepicker'); wp_enqueue_script('lr-raas'); wp_enqueue_style('lr-raas-style'); wp_enqueue_style('jquery-ui-style'); wp_enqueue_style('lr-form-style'); $accountLinking = ''; $redirectTo = site_url('/'); if (is_user_logged_in()) { $storageVariable = get_user_meta(get_current_user_id(), 'lr_raas_uid', true); $accountLinking = '&ac_linking=true'; } else { $loginPageID = isset($lr_raas_settings['login_page_id']) && !empty($lr_raas_settings['login_page_id']) ? $lr_raas_settings['login_page_id'] : ''; $redirectTo = get_permalink($loginPageID); } $args = array( 'api_key' => $loginradius_api_settings['LoginRadius_apikey'], 'spinner' => LR_Core::get_spinner(), 'local_domain' => site_url('/'), 'storageVariable' => $storageVariable, 'emailVerificationUrl' => $emailVerificationUrl, 'forgotPasswordUrl' => $forgotPasswordUrl, 'sitename' => !empty($loginradius_api_settings['sitename']) ? $loginradius_api_settings['sitename'] : '', 'v2RecaptchaSiteKey' => !empty($lr_raas_settings['v2captcha_site_key']) ? $lr_raas_settings['v2captcha_site_key'] : '', 'ajax_url' => get_admin_url() . 'admin-ajax.php', 'login_page_url' => get_permalink($lr_raas_settings['login_page_id']), 'current_page' => get_permalink(), 'disable_email_verify' => !empty($lr_raas_settings['email_verify_option']) && 'disabled' == $lr_raas_settings['email_verify_option'] ? '1' : '', 'optional_email_verify' => !empty($lr_raas_settings['email_verify_option']) && 'optional' == $lr_raas_settings['email_verify_option'] ? '1' : '', 'enable_email_verify_login' => !empty($lr_raas_settings['enable_email_verify_login']) ? $lr_raas_settings['enable_email_verify_login'] : '', 'enable_ask_email_for_unverified' => !empty($lr_raas_settings['enable_ask_email_for_unverified']) ? $lr_raas_settings['enable_ask_email_for_unverified'] : '', 'enable_username' => !empty($lr_raas_settings['enable_username']) ? $lr_raas_settings['enable_username'] : '', 'enable_ask_for_password' => !empty($lr_raas_settings['enable_ask_for_password']) ? $lr_raas_settings['enable_ask_for_password'] : '', 'forgotPasswordTemplate' => !empty($lr_raas_settings['forgot_template']) ? $lr_raas_settings['forgot_template'] : '', 'emailVerificationTemplate' => !empty($lr_raas_settings['email_verify_template']) ? $lr_raas_settings['email_verify_template'] : '' ); wp_localize_script('lr-raas-front-script', "RaasDetails", $args); wp_enqueue_script('lr-raas-front-script'); $interface_url = LR_ROOT_URL . 'lr-custom-interface/assets/images/custom_interface/'; $interface_url_default = LR_ROOT_URL . 'lr-custom-interface/assets/images/default_interface/'; if (is_multisite()) { if (file_exists($interface_url . get_current_blog_id() . '/')) { $interface_url .= get_current_blog_id() . '/'; } } if (!empty($lr_custom_interface_settings['custom_interface'])) { ?>

Your LoginRadius API key or secret is not valid, please correct it or contact LoginRadius support at www.LoginRadius.com

"; } elseif (!$newInterface) { return $LR_Raas_Social_Login->raas_forms('sociallogin') . '
'; } else { return $LR_Raas_Social_Login->raas_forms('accountlinking') . '
'; } } /** * generate RaaS forms. * * @param type $page */ public static function raas_forms($page) { global $lr_raas_settings; ?> Provider) && !empty($_POST['lr_raas_response']->Provider)) { update_user_meta($user_id, 'loginradius_provider', $_POST['lr_raas_response']->Provider); } do_action('lr_update_extented_user_profile', $user_id, LR_Social_Profile_Data_Function::validate_profiledata($_POST['lr_raas_response'])); } } /** * update raas user profile * * @param type $errors * @param type $update * @param type $user * @return type */ public static function raas_user_updation($errors, $update, $user) { global $userAPIObject; $params = array( 'username' => isset($_POST['user_login']) ? $_POST['user_login'] : '', 'firstname' => isset($_POST['first_name']) ? $_POST['first_name'] : '', 'lastname' => isset($_POST['last_name']) ? $_POST['last_name'] : '', 'gender' => isset($_POST['lr_gender']) ? $_POST['lr_gender'] : '', 'birthdate' => isset($_POST['lr_birthdate']) ? date('m-d-Y', strtotime($_POST['lr_birthdate'])) : '', 'city' => isset($_POST['lr_city']) ? $_POST['lr_city'] : '', 'state' => isset($_POST['lr_state']) ? $_POST['lr_state'] : '', 'country' => isset($_POST['lr_country']) ? $_POST['lr_country'] : '', 'phonenumber' => isset($_POST['lr_phone']) ? $_POST['lr_phone'] : '', ); if (isset($_POST['pass1'])) { $params['password'] = $_POST['pass1']; } if (false == $update) { $params['emailid'] = isset($_POST['email']) ? $_POST['email'] : ''; try { $response = $userAPIObject->create($params); $_POST['uid'] = $response->Uid; $_POST['ID'] = $response->ID; $_POST['lr_raas_response'] = $response; } catch (\LoginRadiusSDK\LoginRadiusException $e) { $errors->add('user_creation_error', $e->getErrorResponse()->description); return; } } else { $accountId = get_user_meta($_POST['user_id'], 'lr_raas_accountid', true); $uid = get_user_meta($_POST['user_id'], 'lr_raas_uid', true); if (!empty($accountId)) { try { $response = $userAPIObject->edit($accountId, $params); if (isset($response->Uid) && !empty($response->Uid)) { try { $userProfile = $userAPIObject->getProfileByID($accountId); if (isset($userProfile->ID)) { do_action('lr_update_extented_user_profile', $_POST['user_id'], LR_Social_Profile_Data_Function::validate_profiledata($userProfile)); } } catch (\LoginRadiusSDK\LoginRadiusException $e) { error_log($e->getErrorResponse()->description); } } } catch (\LoginRadiusSDK\LoginRadiusException $e) { $errors->add('user_updation_error', $e->getErrorResponse()->description); } } } } /** * * @global type $pagenow * @param type $user_id * @return boolean */ public static function save_extra_profile_fields($user_id) { global $pagenow, $userAPIObject; if (!current_user_can('edit_user', $user_id)) { return false; } $params = array( 'firstname' => !empty($_POST['first_name']) ? $_POST['first_name'] : '', 'lastname' => !empty($_POST['last_name']) ? $_POST['last_name'] : '', 'gender' => !empty($_POST['lr_gender']) ? $_POST['lr_gender'] : '', 'birthdate' => !empty($_POST['lr_birthdate']) ? $_POST['lr_birthdate'] : '', 'city' => !empty($_POST['lr_city']) ? $_POST['lr_city'] : '', 'state' => !empty($_POST['lr_state']) ? $_POST['lr_state'] : '', 'country' => !empty($_POST['lr_country']) ? $_POST['lr_country'] : '', 'phonenumber' => !empty($_POST['lr_phone']) ? $_POST['lr_phone'] : '' ); $accountId = get_user_meta($user_id, 'loginradius_current_id', true); if (!empty($accountId)) { try { $response = $userAPIObject->edit($accountId, $params); if (isset($response->isPosted) && !empty($response->isPosted)) { try { $userProfile = $userAPIObject->getProfileByID($accountId); if (isset($userProfile->ID)) { do_action('lr_update_extented_user_profile', $user_id, LR_Social_Profile_Data_Function::validate_profiledata($userProfile)); } } catch (\LoginRadiusSDK\LoginRadiusException $e) { error_log($e->getErrorResponse()->description); } } } catch (\LoginRadiusSDK\LoginRadiusException $e) { update_user_meta($user_id, 'lr_profile_update_error', $e->getErrorResponse()->description); wp_redirect($pagenow . '?error=1'); exit(); } } else { return; } } /** * Display profile files on profile page * * @param type $user */ public static function display_extra_profile_fields($user) { ?>
(required) ID) { echo 'readonly="readonly"'; } ?> />
changeAccountPassword($uid, $data['oldpassword'], $data['newpassword']); $message = '
' . __('Password has been updated Successfully.') . '
'; } catch (\LoginRadiusSDK\LoginRadiusException $e) { $message = '
' . $e->getErrorResponse()->description . '
'; } update_user_meta($user_id, 'lr_message_text', $message); } /** * Set password on raas * * @param type $data */ public static function set_password($data) { global $accountAPIObject; $user_id = get_current_user_id(); $uid = get_user_meta($user_id, 'lr_raas_uid', true); $email = isset($data['emailid']) ? trim($data['emailid']) : ''; $password = isset($data['password']) ? trim($data['password']) : ''; $params = array('accountid' => $uid, 'emailid' => $email, 'password' => $password); try { $accountAPIObject->createUserRegistrationProfile($params); $message = '
' . __('Password has been Created Successfully.') . '
'; } catch (\LoginRadiusSDK\LoginRadiusException $e) { $message = '
' . $e->getErrorResponse()->description . '
'; } update_user_meta($user_id, 'lr_message_text', $message); } /** * Check for the query string variables and authenticate user. */ public static function connect() { // check if permission is provided if (isset($_POST['newpassword']) && !empty($_POST['newpassword'])) { self::change_password($_POST); } else if (isset($_POST['password']) && !empty($_POST['password'])) { self::set_password($_POST); } // Recieve Custom Object Form Fields do_action('lr_custom_obj_form_response'); } } }