Search

Need more help?

Contact now with us via WhatsApp to get more and fast help
Edit Template

[houzez_login]

array()); $username = wp_kses( $_POST['username'], $allowed_html ); $pass = isset( $_POST['password'] ) ? $_POST['password'] : ""; $is_submit_listing = isset($_POST['is_submit_listing']) ? wp_kses( $_POST['is_submit_listing'], $allowed_html ) : ""; $response = isset( $_POST["g-recaptcha-response"] ) ? $_POST["g-recaptcha-response"] : "";do_action('houzez_before_login');if( $is_submit_listing == 'yes' ) { check_ajax_referer('houzez_register_nonce2', 'houzez_register_security2'); } else { check_ajax_referer( 'houzez_login_nonce', 'houzez_login_security' ); }if( isset( $_POST['remember'] ) ) { $remember = wp_kses( $_POST['remember'], $allowed_html ); } else { $remember = ''; }if( empty( $username ) ) { echo json_encode( array( 'success' => false, 'msg' => esc_html__('The username or email field is empty.', 'houzez-login-register') ) ); wp_die(); } if( empty( $pass ) ) { echo json_encode( array( 'success' => false, 'msg' => esc_html__('The password field is empty.', 'houzez-login-register') ) ); wp_die(); } if( !username_exists( $username ) && !email_exists($username)) { echo json_encode( array( 'success' => false, 'msg' => esc_html__('Invalid username or email', 'houzez-login-register') ) ); wp_die(); }if($is_submit_listing != 'yes') { houzez_google_recaptcha_callback(); }$remember = ($remember == 'on') ? true : false;if(is_email($username)) { $user = get_user_by( 'email', $username ); $username = $user->user_login; }$creds = array(); $creds['user_login'] = $username; $creds['user_password'] = $pass; $creds['remember'] = $remember; $user = wp_signon( $creds, false );if ( is_wp_error( $user ) ) {$error_code = $user->get_error_code();if( $error_code == 'incorrect_password' ) {echo json_encode( array( 'success' => false, 'msg' => sprintf( wp_kses(__('The password you entered for the username %s is incorrect.', 'houzez-login-register'), $allowed_html_array), $username ) ) );} else {echo json_encode( array( 'success' => false, 'msg' => $user->get_error_message() ) );} wp_die(); } else {$user_id = $user->ID; $email_verified = get_user_meta( $user_id, 'houzez_email_verified', true );if ( metadata_exists( 'user', $user_id, 'houzez_email_verified' ) && !$email_verified ) { echo json_encode( array( 'success' => false, 'msg' => esc_html__( 'Please verify your email address before logging in. A verification email has been sent to your email address.', 'houzez-login-register' ) ) ); wp_logout(); wp_die(); } else {wp_set_current_user($user->ID); // Set the current user detail wp_set_auth_cookie($user->ID, true); // Set auth cookies echo json_encode( array( 'success' => true, 'redirect_to' => esc_url($_POST['redirect_to']), 'msg' => esc_html__('Login successful, redirecting...', 'houzez-login-register') ) ); }do_action('houzez_after_login');} wp_die(); } }/*-----------------------------------------------------------------------------------*/ // Register /*-----------------------------------------------------------------------------------*/ add_action( 'wp_ajax_nopriv_houzez_register', 'houzez_register' );if( !function_exists('houzez_register') ) { function houzez_register() { check_ajax_referer('houzez_register_nonce', 'houzez_register_security');$allowed_html = array();$usermane = trim( sanitize_text_field( wp_kses( $_POST['username'], $allowed_html ) )); $email = trim( sanitize_text_field( wp_kses( $_POST['useremail'], $allowed_html ) )); $term_condition = isset( $_POST['term_condition'] ) ? wp_kses( $_POST['term_condition'], $allowed_html ) : "off"; $enable_password = houzez_option('enable_password');$response = isset( $_POST["g-recaptcha-response"] ) ? $_POST["g-recaptcha-response"] : "";$user_roles = array ( 'houzez_agency', 'houzez_agent', 'houzez_buyer', 'houzez_seller', 'houzez_owner' );$user_role = get_option( 'default_role' );if( $user_role == 'administrator' ) { $user_role = 'subscriber'; } if( isset( $_POST['role'] ) && $_POST['role'] != '' && in_array( $_POST['role'], $user_roles ) ) { $user_role = isset( $_POST['role'] ) ? sanitize_text_field( wp_kses( $_POST['role'], $allowed_html ) ) : $user_role; } else { $user_role = $user_role; }if( houzez_option('header_register') != 1 ) { echo json_encode( array( 'success' => false, 'msg' => esc_html__('Access denied.', 'houzez-login-register') ) ); wp_die(); }if( get_option('users_can_register') != 1 ) { echo json_encode( array( 'success' => false, 'msg' => esc_html__('Access denied.', 'houzez-login-register') ) ); wp_die(); }$firstname = isset( $_POST['first_name'] ) ? $_POST['first_name'] : ''; if( empty($firstname) && houzez_option('register_first_name', 0) == 1 ) { echo json_encode( array( 'success' => false, 'msg' => esc_html__('The first name field is empty.', 'houzez-login-register') ) ); wp_die(); }$lastname = isset( $_POST['last_name'] ) ? $_POST['last_name'] : ''; if( empty($lastname) && houzez_option('register_last_name', 0) == 1 && $user_role != 'houzez_agency' ) { echo json_encode( array( 'success' => false, 'msg' => esc_html__('The last name field is empty.', 'houzez-login-register') ) ); wp_die(); }if( empty( $usermane ) ) { echo json_encode( array( 'success' => false, 'msg' => esc_html__('The username field is empty.', 'houzez-login-register') ) ); wp_die(); } if( strlen( $usermane ) < 3 ) { echo json_encode( array( 'success' => false, 'msg' => esc_html__('Minimum 3 characters required', 'houzez-login-register') ) ); wp_die(); } if (preg_match("/^[0-9A-Za-z_]+$/", $usermane) == 0) { echo json_encode( array( 'success' => false, 'msg' => esc_html__('Invalid username (do not use special characters or spaces)!', 'houzez-login-register') ) ); wp_die(); }if( username_exists( $usermane ) ) { echo json_encode( array( 'success' => false, 'msg' => esc_html__('This username is already registered.', 'houzez-login-register') ) ); wp_die(); } if( empty( $email ) ) { echo json_encode( array( 'success' => false, 'msg' => esc_html__('The email field is empty.', 'houzez-login-register') ) ); wp_die(); }if( email_exists( $email ) ) { echo json_encode( array( 'success' => false, 'msg' => esc_html__('This email address is already registered.', 'houzez-login-register') ) ); wp_die(); }if( !is_email( $email ) ) { echo json_encode( array( 'success' => false, 'msg' => esc_html__('Invalid email address.', 'houzez-login-register') ) ); wp_die(); }$phone_number = isset( $_POST['phone_number'] ) ? $_POST['phone_number'] : ''; if( empty($phone_number) && houzez_option('register_mobile', 0) == 1 ) { echo json_encode( array( 'success' => false, 'msg' => esc_html__('Please enter your number', 'houzez-login-register') ) ); wp_die(); }if( $enable_password == 'yes' ){ $user_pass = trim( sanitize_text_field(wp_kses( $_POST['register_pass'] ,$allowed_html) ) ); $user_pass_retype = trim( sanitize_text_field(wp_kses( $_POST['register_pass_retype'] ,$allowed_html) ) );if ($user_pass == '' || $user_pass_retype == '' ) { echo json_encode( array( 'success' => false, 'msg' => esc_html__('One of the password field is empty!', 'houzez-login-register') ) ); wp_die(); }if ($user_pass !== $user_pass_retype ){ echo json_encode( array( 'success' => false, 'msg' => esc_html__('Passwords do not match', 'houzez-login-register') ) ); wp_die(); } }$term_condition = ( $term_condition == 'on') ? true : false;if( !$term_condition ) { echo json_encode( array( 'success' => false, 'msg' => esc_html__('You need to agree with terms & conditions.', 'houzez-login-register') ) ); wp_die(); }do_action('houzez_before_register');houzez_google_recaptcha_callback();if($enable_password == 'yes' ) { $user_password = $user_pass; } else { $user_password = wp_generate_password( $length=12, $include_standard_special_chars=false ); }$user_id = wp_create_user( $usermane, $user_password, $email );if ( is_wp_error($user_id) ) { echo json_encode( array( 'success' => false, 'msg' => $user_id ) ); wp_die(); } else {wp_update_user( array( 'ID' => $user_id, 'role' => $user_role ) );if( $enable_password =='yes' ) { echo json_encode( array( 'success' => true, 'msg' => esc_html__('Your account was created and you can login now!', 'houzez-login-register') ) ); } else { echo json_encode( array( 'success' => true, 'msg' => esc_html__('An email with the generated password was sent!', 'houzez-login-register') ) ); }update_user_meta( $user_id, 'first_name', $firstname); update_user_meta( $user_id, 'last_name', $lastname);if( $user_role == 'houzez_agency' ) { update_user_meta( $user_id, 'fave_author_phone', $phone_number); } else { update_user_meta( $user_id, 'fave_author_mobile', $phone_number); } $user_as_agent = houzez_option('user_as_agent');if( $user_as_agent == 'yes' ) {if( !empty($firstname) && !empty($lastname) ) { $usermane = $firstname.' '.$lastname; }if ($user_role == 'houzez_agent' || $user_role == 'author') { houzez_register_as_agent($usermane, $email, $user_id, $phone_number);} else if ($user_role == 'houzez_agency') { houzez_register_as_agency($usermane, $email, $user_id, $phone_number); } } houzez_wp_new_user_notification( $user_id, $user_password, $phone_number );do_action('houzez_after_register', $user_id); } wp_die();} }/*-----------------------------------------------------------------------------------*/ // Register /*-----------------------------------------------------------------------------------*/ add_action( 'wp_ajax_nopriv_houzez_social_create_account', 'houzez_social_create_account' );if( !function_exists('houzez_social_create_account') ) { function houzez_social_create_account() { check_ajax_referer('houzez_social_register_nonce', 'houzez_social_register_security');$allowed_html = array();$usermane = trim( sanitize_text_field( wp_kses( $_POST['username'], $allowed_html ) )); $email = trim( sanitize_text_field( wp_kses( $_POST['useremail'], $allowed_html ) )); $term_condition = isset( $_POST['term_condition'] ) ? wp_kses( $_POST['term_condition'], $allowed_html ) : "off"; $fid = isset( $_POST['id'] ) ? $_POST['id'] : ""; do_action('houzez_before_social_create_account');$user_roles = array ( 'houzez_agency', 'houzez_agent', 'houzez_buyer', 'houzez_seller', 'houzez_owner', 'houzez_manager' );$user_role = get_option( 'default_role' );if( $user_role == 'administrator' ) { $user_role = 'subscriber'; } if( isset( $_POST['role'] ) && $_POST['role'] != '' && in_array( $_POST['role'], $user_roles ) ) { $user_role = isset( $_POST['role'] ) ? sanitize_text_field( wp_kses( $_POST['role'], $allowed_html ) ) : $user_role; } else { $user_role = $user_role; }if( houzez_option('header_register') != 1 ) { echo json_encode( array( 'success' => false, 'msg' => esc_html__('Access denied.', 'houzez-login-register') ) ); wp_die(); }if( get_option('users_can_register') != 1 ) { echo json_encode( array( 'success' => false, 'msg' => esc_html__('Access denied.', 'houzez-login-register') ) ); wp_die(); }$term_condition = ( $term_condition == 'on') ? true : false;if( !$term_condition ) { echo json_encode( array( 'success' => false, 'msg' => esc_html__('You need to agree with terms & conditions.', 'houzez-login-register') ) ); wp_die(); }if( empty( $usermane ) ) { echo json_encode( array( 'success' => false, 'msg' => esc_html__('The username field is empty.', 'houzez-login-register') ) ); wp_die(); } if( strlen( $usermane ) < 3 ) { echo json_encode( array( 'success' => false, 'msg' => esc_html__('Minimum 3 characters required', 'houzez-login-register') ) ); wp_die(); } if (preg_match("/^[0-9A-Za-z_]+$/", $usermane) == 0) { echo json_encode( array( 'success' => false, 'msg' => esc_html__('Invalid username (do not use special characters or spaces)!', 'houzez-login-register') ) ); wp_die(); } if( username_exists( $usermane ) ) { echo json_encode( array( 'success' => false, 'msg' => esc_html__('This username is already registered.', 'houzez-login-register') ) ); wp_die(); } if( empty( $email ) ) { echo json_encode( array( 'success' => false, 'msg' => esc_html__('The email field is empty.', 'houzez-login-register') ) ); wp_die(); }if( email_exists( $email ) ) { echo json_encode( array( 'success' => false, 'msg' => esc_html__('This email address is already registered.', 'houzez-login-register') ) ); wp_die(); }if( !is_email( $email ) ) { echo json_encode( array( 'success' => false, 'msg' => esc_html__('Invalid email address.', 'houzez-login-register') ) ); wp_die(); }$user_password = wp_generate_password( $length=12, $include_standard_special_chars=false );$user_id = wp_create_user( $usermane, $user_password, $email );if ( is_wp_error($user_id) ) { echo json_encode( array( 'success' => false, 'msg' => $user_id ) ); wp_die(); } else {wp_update_user( array( 'ID' => $user_id, 'role' => $user_role ) );update_user_meta( $user_id, 'houzez_user_facebook_id', $fid); update_option( 'houzez_user_facebook_id_'.$fid, $email );if( $user_role == 'houzez_agency' ) { update_user_meta( $user_id, 'fave_author_phone', $phone_number); } else { update_user_meta( $user_id, 'fave_author_mobile', $phone_number); } $user_as_agent = houzez_option('user_as_agent');if( $user_as_agent == 'yes' ) {if( !empty($firstname) && !empty($lastname) ) { $usermane = $firstname.' '.$lastname; }if ($user_role == 'houzez_agent' || $user_role == 'author') { houzez_register_as_agent($usermane, $email, $user_id, $phone_number);} else if ($user_role == 'houzez_agency') { houzez_register_as_agency($usermane, $email, $user_id, $phone_number); } } houzez_wp_new_user_notification( $user_id, $user_password, $phone_number );echo json_encode( array( 'success' => true, 'redirect_to' => esc_url($_POST['redirect_to']), 'msg' => esc_html__('Login successful, redirecting...', 'houzez-login-register') ) );do_action('houzez_after_social_create_account', $user_id);wp_die(); } wp_die();} }add_action('houzez_after_social_create_account', 'houzez_social_auto_login'); if( ! function_exists('houzez_social_auto_login') ) { function houzez_social_auto_login($user_id) {$fid = get_user_meta( $user_id, 'houzez_user_facebook_id', true); $fb_info = get_option('houzez_user_facebook_info_'.$fid); //$username = houzez_generate_unique_username( $username );$picture_url = isset($fb_info['picture_url']) ? $fb_info['picture_url'] : ''; $first_name = isset($fb_info['first_name']) ? $fb_info['first_name'] : ''; $last_name = isset($fb_info['last_name']) ? $fb_info['last_name'] : ''; $display_name = $first_name.' '.$last_name;wp_update_user(array('ID' => $user_id, 'display_name' => $display_name, 'first_name' => $first_name, 'last_name' => $last_name)); update_user_meta($user_id, 'fave_author_custom_picture', $picture_url);if( ! empty($fid) ) { wp_set_current_user($user_id); // Set the current user to the new user wp_set_auth_cookie($user_id); // Set the auth cookie for the new user }return true; } }/*-----------------------------------------------------------------------------------*/ // Link Account /*-----------------------------------------------------------------------------------*/ add_action( 'wp_ajax_nopriv_houzez_link_account', 'houzez_link_account' );if( !function_exists('houzez_link_account') ) { function houzez_link_account() { check_ajax_referer('link_account_nonce', 'link_account_security');$allowed_html = array();$username = wp_kses( $_POST['lusername'], $allowed_html ); $password = isset( $_POST['lpassword'] ) ? $_POST['lpassword'] : ""; $id = isset( $_POST['lid'] ) ? $_POST['lid'] : "";if( empty( $username ) ) { echo json_encode( array( 'success' => false, 'msg' => esc_html__('The username or email field is empty.', 'houzez-login-register') ) ); wp_die(); } if( empty( $password ) ) { echo json_encode( array( 'success' => false, 'msg' => esc_html__('The password field is empty.', 'houzez-login-register') ) ); wp_die(); } if( !username_exists( $username ) && !email_exists($username)) { echo json_encode( array( 'success' => false, 'msg' => esc_html__('Invalid username or email', 'houzez-login-register') ) ); wp_die(); }wp_clear_auth_cookie();$remember = ($remember == 'on') ? true : false;if(is_email($username)) { $user = get_user_by( 'email', $username ); $username = $user->user_login; }$creds = array(); $creds['user_login'] = $username; $creds['user_password'] = $password; $creds['remember'] = $remember; $user = wp_signon( $creds, false );if ( is_wp_error( $user ) ) {$error_code = $user->get_error_code();if( $error_code == 'incorrect_password' ) {echo json_encode( array( 'success' => false, 'msg' => sprintf( wp_kses(__('The password you entered for the username %s is incorrect.', 'houzez-login-register'), $allowed_html_array), $username ) ) );} else {echo json_encode( array( 'success' => false, 'msg' => $user->get_error_message() ) );} wp_die(); } else {$user_id = $user->ID; $user_email = $user->user_email; $email_verified = get_user_meta( $user_id, 'houzez_email_verified', true ); update_option( 'houzez_user_facebook_id_'.$id, $user_email ); update_user_meta( $user_id, 'houzez_user_facebook_id', $id);if ( metadata_exists( 'user', $user_id, 'houzez_email_verified' ) && !$email_verified ) { echo json_encode( array( 'success' => false, 'msg' => esc_html__( 'Please verify your email address before logging in. A verification email has been sent to your email address.', 'houzez-login-register' ) ) ); wp_logout(); wp_die(); } else {wp_set_current_user ( $user->ID ); // Set the current user detail echo json_encode( array( 'success' => true, 'redirect_to' => esc_url($_POST['redirect_to']), 'msg' => esc_html__('Login successful, redirecting...', 'houzez-login-register') ) ); }do_action('houzez_after_login');} wp_die(); } }/*-----------------------------------------------------------------------------------*/ // Register /*-----------------------------------------------------------------------------------*/ add_action( 'wp_ajax_houzez_agency_agent', 'houzez_agency_agent' );if( !function_exists('houzez_agency_agent') ) { function houzez_agency_agent() {check_ajax_referer('houzez_agency_agent_ajax_nonce', 'houzez-security-agency-agent');$allowed_html = array();$username = trim( sanitize_text_field( wp_kses( $_POST['aa_username'], $allowed_html ) )); $email = sanitize_email( $_POST['aa_email'] ); $firstname = trim( sanitize_text_field( wp_kses( $_POST['aa_firstname'], $allowed_html ) )); $lastname = trim( sanitize_text_field( wp_kses( $_POST['aa_lastname'], $allowed_html ) )); $agent_agency = trim( sanitize_text_field( wp_kses( $_POST['agency_id'], $allowed_html ) )); $agency_ids_cpt = $_POST['agency_ids_cpt']; $agency_id_cpt = trim( sanitize_text_field( wp_kses( $_POST['agency_id_cpt'], $allowed_html ) )); $user_password = trim( sanitize_text_field( wp_kses( $_POST['aa_password'], $allowed_html ) )); $aa_notification = isset($_POST['aa_notification']) ? $_POST['aa_notification'] : false;$user_role = 'houzez_agent';$aa_notification = ( $aa_notification == 'on') ? true : false;if( empty( $username ) ) { echo json_encode( array( 'success' => false, 'msg' => esc_html__('The username field is empty.', 'houzez-login-register') ) ); wp_die(); } if( username_exists( $username ) ) { echo json_encode( array( 'success' => false, 'msg' => esc_html__('This username is already registered.', 'houzez-login-register') ) ); wp_die(); } if( strlen( $username ) < 3 ) { echo json_encode( array( 'success' => false, 'msg' => esc_html__('Minimum 3 characters required', 'houzez-login-register') ) ); wp_die(); } if (preg_match("/^[0-9A-Za-z_]+$/", $username) == 0) { echo json_encode( array( 'success' => false, 'msg' => esc_html__('Invalid username (do not use special characters or spaces)!', 'houzez-login-register') ) ); wp_die(); } if( empty( $email ) ) { echo json_encode( array( 'success' => false, 'msg' => esc_html__('The email field is empty.', 'houzez-login-register') ) ); wp_die(); }if( email_exists( $email ) ) { echo json_encode( array( 'success' => false, 'msg' => esc_html__('This email address is already registered.', 'houzez-login-register') ) ); wp_die(); }if( !is_email( $email ) ) { echo json_encode( array( 'success' => false, 'msg' => esc_html__('Invalid email address.', 'houzez-login-register') ) ); wp_die(); }if( empty( $user_password ) ) { echo json_encode( array( 'success' => false, 'msg' => esc_html__('The passowrd field is empty.', 'houzez-login-register') ) ); wp_die(); }$user_id = wp_create_user( $username, $user_password, $email );if ( is_wp_error($user_id) ) { echo json_encode( array( 'success' => false, 'msg' => $user_id ) ); wp_die(); } else {$update_args = array( 'ID' => $user_id, 'role' => $user_role, 'first_name' => $firstname, 'last_name' => $lastname ); wp_update_user( $update_args );update_user_meta( $user_id, 'fave_agent_agency', $agent_agency) ; // used for get user created by agencyecho json_encode( array( 'success' => true, 'msg' => esc_html__('Agent account created!', 'houzez-login-register') ) );$user_as_agent = houzez_option('user_as_agent');if( $user_as_agent == 'yes' ) {$agent_category = isset( $_POST['agent_category'] ) ? sanitize_text_field( $_POST['agent_category'] ) : ''; $agent_city = isset( $_POST['agent_city'] ) ? sanitize_text_field( $_POST['agent_city'] ) : '';houzez_register_agency_agent($username, $email, $user_id, $agency_id_cpt, $agency_ids_cpt, $agent_agency, $firstname, $lastname, $agent_category, $agent_city); } if($aa_notification == 'on') { houzez_wp_new_user_notification( $user_id, $user_password ); } } wp_die();} }if( !function_exists('houzez_update_agency_user_agent_02') ) { function houzez_update_agency_user_agent_02($agency_user_agent_id, $firstname, $lastname, $useremail, $agent_category, $agent_city) { if (!empty($firstname) || !empty($lastname) || !empty($agency_user_agent_id) ) { $agr = array( 'ID' => $agency_user_agent_id, 'post_title' => $firstname . ' ' . $lastname ); $post_id = wp_update_post($agr);if( ! empty( $agent_category ) ) { $agent_category = intval($agent_category); wp_set_object_terms( $post_id, $agent_category, 'agent_category' ); } else { wp_set_object_terms( $post_id, '', 'agent_category' ); } if( ! empty( $agent_city ) ) { $agent_city = intval($agent_city); wp_set_object_terms( $post_id, $agent_city, 'agent_city' ); } else { wp_set_object_terms( $post_id, '', 'agent_city' ); } } update_post_meta( $post_id, 'fave_agent_email', $useremail ); } }/*-----------------------------------------------------------------------------------*/ // New register user notification /*-----------------------------------------------------------------------------------*/ if( !function_exists('houzez_wp_new_user_notification') ) {function houzez_wp_new_user_notification( $user_id, $randonpassword = '', $phone_number = '' ) {$user = new WP_User( $user_id );$user_login = stripslashes( $user->user_login ); $user_email = stripslashes( $user->user_email );// Send notification to admin if( houzez_option('nru_admin_email', 1) != 0 ) { $args = array( 'user_login_register' => $user_login, 'user_email_register' => $user_email, 'user_phone_register' => $phone_number ); houzez_register_email_type( get_option('admin_email'), 'admin_new_user_register', $args ); }// Return if password in empty if ( empty( $randonpassword ) ) { return; }// Send notification to registered user $args = array( 'user_login_register' => $user_login, 'user_email_register' => $user_email, 'user_pass_register' => $randonpassword, 'user_phone_register' => $phone_number, );houzez_register_email_type( $user_email, 'new_user_register', $args );} }//add_action( 'houzez_after_register', 'houzez_email_verification', 10, 1 ); if( ! function_exists('houzez_email_verification') ) { function houzez_email_verification($user_id) {$user = new WP_User( $user_id ); $user_email = stripslashes( $user->user_email );// Send verification email $email_verification_token = md5( time() . $user_id . $user_email ); update_user_meta( $user_id, 'houzez_email_verification_token', $email_verification_token ); // Set email_verified to false update_user_meta( $user_id, 'houzez_email_verified', false );$template = houzez_get_template_link('template/template-login.php');$email_verification_link = $template . '?verrify-email='.intval($user_id).'&token=' . $email_verification_token;$args = array( 'email_verification_link' => ''.$email_verification_link.'', ); houzez_register_email_type( $user_email, 'user_register_verification', $args );} }add_action( 'wp_ajax_nopriv_houzez_reset_password', 'houzez_reset_password' ); add_action( 'wp_ajax_houzez_reset_password', 'houzez_reset_password' ); if( !function_exists('houzez_reset_password') ) { function houzez_reset_password() { check_ajax_referer('fave_resetpassword_nonce', 'security');$allowed_html = array(); $user_login = wp_kses( $_POST['user_login'], $allowed_html );if ( empty( $user_login ) ) { echo json_encode(array( 'success' => false, 'msg' => esc_html__('Enter a username or email address.', 'houzez-login-register') ) ); wp_die(); }if ( strpos( $user_login, '@' ) ) { $user_data = get_user_by( 'email', trim( $user_login ) ); if ( empty( $user_data ) ) { echo json_encode(array('success' => false, 'msg' => esc_html__('There is no user registered with that email address.', 'houzez-login-register'))); wp_die(); } } else { $login = trim( $user_login ); $user_data = get_user_by('login', $login);if ( !$user_data ) { echo json_encode(array( 'success' => false, 'msg' => esc_html__('Invalid username', 'houzez-login-register') ) ); wp_die(); } }$user_login = $user_data->user_login; $user_email = $user_data->user_email; $key = get_password_reset_key( $user_data );if ( is_wp_error( $key ) ) { echo json_encode(array( 'success' => false, 'msg' => $key ) ); wp_die(); }$message = esc_html__('Someone has requested a password reset for the following account:', 'houzez-login-register' ) . "\r\n\r\n"; $message .= network_home_url( '/' ) . "\r\n\r\n"; $message .= sprintf(esc_html__('Username: %s', 'houzez-login-register'), $user_login) . "\r\n\r\n"; $message .= esc_html__('If this was a mistake, just ignore this email and nothing will happen.', 'houzez-login-register') . "\r\n\r\n"; $message .= esc_html__('To reset your password, visit the following address:', 'houzez-login-register') . "\r\n\r\n"; $message .= network_site_url("wp-login.php?action=rp&key=$key&login=" . rawurlencode($user_login), 'login'). "\r\n";if ( is_multisite() ) $blogname = $GLOBALS['current_site']->site_name; else /* * The blogname option is escaped with esc_html on the way into the database * in sanitize_option we want to reverse this for the plain text arena of emails. */ $blogname = wp_specialchars_decode(get_option('blogname'), ENT_QUOTES);$title = sprintf( esc_html__('[%s] Password Reset', 'houzez-login-register'), $blogname );/** * Filter the subject of the password reset email. * * @since 2.8.0 * @since 4.4.0 Added the `$user_login` and `$user_data` parameters. * * @param string $title Default email title. * @param string $user_login The username for the user. * @param WP_User $user_data WP_User object. */ $title = apply_filters( 'retrieve_password_title', $title, $user_login, $user_data );/** * Filter the message body of the password reset mail. * * @since 2.8.0 * @since 4.1.0 Added `$user_login` and `$user_data` parameters. * * @param string $message Default mail message. * @param string $key The activation key. * @param string $user_login The username for the user. * @param WP_User $user_data WP_User object. */$message = apply_filters( 'retrieve_password_message', $message, $key, $user_login, $user_data ); $headers = 'From: No Reply ' . "\r\n"; if ( $message && !wp_mail( $user_email, wp_specialchars_decode( $title ), $message, $headers ) ) { echo json_encode(array('success' => false, 'msg' => esc_html__('The email could not be sent.', 'houzez-login-register') . "
\n" . esc_html__('Possible reason: your host may have disabled the mail() function.', 'houzez-login-register'))); wp_die(); } else { echo json_encode(array('success' => true, 'msg' => esc_html__('Check your email', 'houzez-login-register') )); wp_die(); } return true;} }/*-----------------------------------------------------------------------------------*/ // Save Front-end user as agency /*-----------------------------------------------------------------------------------*/if( !function_exists('houzez_register_as_agency') ) {function houzez_register_as_agency( $username, $email, $user_id, $phone_number = null ) { // Create post object $args = array( 'post_title' => $username, 'post_type' => 'houzez_agency', 'post_status' => 'publish' );// Insert the post into the database $post_id = wp_insert_post( $args ); update_post_meta( $post_id, 'houzez_user_meta_id', $user_id); // used when agent custom post type updated update_user_meta( $user_id, 'fave_author_agency_id', $post_id); update_post_meta( $post_id, 'fave_agency_email', $email) ; update_post_meta( $post_id, 'fave_agency_phone', $phone_number);if( houzez_option('realtor_visible', 0) ) { update_post_meta( $post_id, 'fave_agency_visible', 1); } } }/*-----------------------------------------------------------------------------------*/ // Save Front-end user as agent /*-----------------------------------------------------------------------------------*/if( !function_exists('houzez_register_as_agent') ) {function houzez_register_as_agent( $username, $email, $user_id, $mobile_num = null, $image_url = null ) {// Create post object $args = array( 'post_title' => $username, 'post_type' => 'houzez_agent', 'post_status' => 'publish' );// Insert the post into the database $post_id = wp_insert_post( $args ); update_post_meta( $post_id, 'houzez_user_meta_id', $user_id); // used when agent custom post type updated update_user_meta( $user_id, 'fave_author_agent_id', $post_id); update_post_meta( $post_id, 'fave_agent_email', $email); update_post_meta( $post_id, 'fave_agent_mobile', $mobile_num);if( houzez_option('realtor_visible', 0) ) { update_post_meta( $post_id, 'fave_agent_visible', 1); }if( !empty($image_url) ) { houzez_set_image_from_url($post_id, $image_url); }} }/*-----------------------------------------------------------------------------------*/ // Upload image from url and set for post /*-----------------------------------------------------------------------------------*/if( !function_exists('houzez_set_image_from_url') ) { function houzez_set_image_from_url($post_id, $image_url) {include_once( ABSPATH . 'wp-admin/includes/image.php' ); $response = wp_remote_get($image_url, array( 'timeout' => 8 ) ); if( !is_wp_error( $response ) ){ $bits = wp_remote_retrieve_body( $response ); $filename = strtotime("now").'_'.uniqid().'.jpg'; $upload = wp_upload_bits( $filename, null, $bits ); $data['guid'] = $upload['url']; $data['post_mime_type'] = 'image/jpeg'; $attach_id = wp_insert_attachment( $data, $upload['file'], 0 ); $profile_attach_data = wp_generate_attachment_metadata( $attach_id, $upload['file'] ); wp_update_attachment_metadata( $attach_id, $profile_attach_data ); update_post_meta( $post_id, '_thumbnail_id', $attach_id ); }} }/*-----------------------------------------------------------------------------------*/ // Save Agency Agent /*-----------------------------------------------------------------------------------*/if( !function_exists('houzez_register_agency_agent') ) {function houzez_register_agency_agent( $username, $email, $user_id, $agency_id_cpt, $agency_ids_cpt, $agent_agency, $firstname, $lastname, $agent_category, $agent_city ) {if( !empty($firstname) || !empty($lastname) ) { $username = $firstname.' '.$lastname; } // Create post object $args = array( 'post_title' => $username, 'post_type' => 'houzez_agent', 'post_status' => 'publish' );// Insert the post into the database $post_id = wp_insert_post( $args ); update_post_meta( $post_id, 'houzez_user_meta_id', $user_id); // used when agent custom post type updated update_user_meta( $user_id, 'fave_author_agent_id', $post_id) ; update_user_meta( $user_id, 'fave_author_agency_id', $agency_id_cpt) ; update_user_meta( $user_id, 'fave_author_company', get_the_title($agency_id_cpt)) ; update_user_meta( $user_id, 'fave_agent_agency', $agent_agency) ; // used for get user created by agency //update_user_meta( $user_id, 'fave_author_agency_id', $agent_agency) ; // used for get user created by agency update_post_meta( $post_id, 'fave_agent_email', $email) ; update_post_meta( $post_id, 'fave_agent_company', get_the_title($agency_id_cpt)) ; update_post_meta( $post_id, 'fave_agent_agencies', $agency_id_cpt) ; delete_post_meta( $agency_id_cpt, 'fave_agency_cpt_agent' );array_push($agency_ids_cpt, $post_id);foreach ( $agency_ids_cpt as $agentID ) { if( !empty($agentID)) add_post_meta( $agency_id_cpt, 'fave_agency_cpt_agent', $agentID ); }if( ! empty( $agent_category ) ) { $agent_category = intval($agent_category); wp_set_object_terms( $post_id, $agent_category, 'agent_category' ); } else { wp_set_object_terms( $post_id, '', 'agent_category' ); } if( ! empty( $agent_city ) ) { $agent_city = intval($agent_city); wp_set_object_terms( $post_id, $agent_city, 'agent_city' ); } else { wp_set_object_terms( $post_id, '', 'agent_city' ); } } }if (!function_exists('houzez_register_email_type')) { function houzez_register_email_type( $email, $email_type, $args ) {$value_message = houzez_option('houzez_' . $email_type, ''); $value_subject = houzez_option('houzez_subject_' . $email_type, '');$value_message = apply_filters('wpml_translate_single_string', $value_message, 'admin_texts_houzez_options', '[houzez_options]houzez_email_' . $value_message ); $value_subject = apply_filters('wpml_translate_single_string', $value_subject, 'admin_texts_houzez_options', '[houzez_options]houzez_email_subject_' . $value_subject );houzez_register_emails_filter_replace( $email, $value_message, $value_subject, $args); } }if( !function_exists('houzez_register_emails_filter_replace')): function houzez_register_emails_filter_replace( $email, $message, $subject, $args ) { $args ['website_url'] = get_option('siteurl'); $args ['website_name'] = get_option('blogname'); $args ['user_email'] = $email; $user = get_user_by( 'email', $email ); $args ['username'] = $user->user_login;foreach( $args as $key => $val){ $subject = str_replace( '%'.$key, $val, $subject ); $message = str_replace( '%'.$key, $val, $message ); } houzez_register_send_emails( $email, $subject, $message ); } endif;if( !function_exists('houzez_register_send_emails') ): function houzez_register_send_emails( $user_email, $subject, $message ){ $headers = array(); $headers[] = 'From: No Reply ';$enable_html_emails = houzez_option('enable_html_emails'); $enable_email_header = houzez_option('enable_email_header'); $enable_email_footer = houzez_option('enable_email_footer');if( $enable_html_emails != 0 ) { $headers[] = "Content-Type: text/html; charset=UTF-8"; } $headers = apply_filters( "houzez_send_register_mails_header", $headers );// Filter for modify the header in child theme$email_head_logo = houzez_option('email_head_logo', false, 'url'); $email_head_bg_color = houzez_option('email_head_bg_color'); $email_foot_bg_color = houzez_option('email_foot_bg_color'); $email_footer_content = houzez_option('email_footer_content');$social_1_icon = houzez_option('social_1_icon', false, 'url'); $social_1_link = houzez_option('social_1_link'); $social_2_icon = houzez_option('social_2_icon', false, 'url'); $social_2_link = houzez_option('social_2_link'); $social_3_icon = houzez_option('social_3_icon', false, 'url'); $social_3_link = houzez_option('social_3_link'); $social_4_icon = houzez_option('social_4_icon', false, 'url'); $social_4_link = houzez_option('social_4_link');$message = stripslashes( $message ); $message = wp_kses_post( wpautop( wptexturize( $message ) ) );$socials = ''; if( !empty($social_1_icon) || !empty($social_2_icon) || !empty($social_3_icon) || !empty($social_4_icon) ) { $socials = '
'; $socials .= '

'.esc_html__('Follow us on', 'houzez').'

';if( !empty($social_1_icon) ) { $socials .= ' '; } if( !empty($social_2_icon) ) { $socials .= ' '; } if( !empty($social_3_icon) ) { $socials .= ' '; } if( !empty($social_4_icon) ) { $socials .= ' '; }$socials .= '
'; }if( $enable_email_header != 0 ) { $email_content = '
logo
'; }$email_content .= '
'.$message.'
';if( $enable_email_footer != 0 ) { $email_content .= '
' . $email_footer_content . '
' . $socials . '
'; }if( $enable_html_emails != 0 ) { $email_messages = $email_content; } else { $email_messages = $message; }@wp_mail( $user_email, $subject, $email_messages, $headers ); }; endif;// Add the 'status' column //add_filter( 'manage_users_columns', 'houzez_add_user_status_column' ); function houzez_add_user_status_column( $columns ) { $columns['status'] = __( 'Status', 'houzez-login-register' ); return $columns; }// Display the status value in the column //add_filter( 'manage_users_custom_column', 'display_user_status_column', 10, 3 ); function display_user_status_column( $value, $column_name, $user_id ) { if ( 'status' !== $column_name ) { return $value; }$verified = get_user_meta( $user_id, 'houzez_email_verified', true ); $activate_url = wp_nonce_url( admin_url( "admin-ajax.php?action=activate_user&user_id={$user_id}" ), 'activate_user_' . $user_id ); $deactivate_url = wp_nonce_url( admin_url( "admin-ajax.php?action=deactivate_user&user_id={$user_id}" ), 'deactivate_user_' . $user_id ); $activate_button = '' . __( 'Click to verify', 'houzez-login-register' ) . ''; $deactivate_button = '' . __( 'Deactivate', 'houzez-login-register' ) . '';if ( metadata_exists( 'user', $user_id, 'houzez_email_verified' ) && $verified ) { $button = esc_html__('Verified', 'houzez-login-register'); } else { $button = $activate_button; } //$button = ( $verified === 'active' ) ? $deactivate_button : $activate_button;return $button; }// Activate/deactivate user //add_action( 'wp_ajax_activate_user', 'activate_user' ); //add_action( 'wp_ajax_deactivate_user', 'deactivate_user' ); function activate_user() { $user_id = isset( $_GET['user_id'] ) ? intval( $_GET['user_id'] ) : 0; if ( ! current_user_can( 'edit_user', $user_id ) ) { wp_die( __( 'You do not have sufficient permissions to access this page.' ) ); } check_admin_referer( 'activate_user_' . $user_id ); update_user_meta( $user_id, 'houzez_email_verified', true ); wp_redirect( admin_url( 'users.php' ) ); exit; } function deactivate_user() { $user_id = isset( $_GET['user_id'] ) ? intval( $_GET['user_id'] ) : 0; if ( ! current_user_can( 'edit_user', $user_id ) ) { wp_die( __( 'You do not have sufficient permissions to access this page.' ) ); } check_admin_referer( 'deactivate_user_' . $user_id ); update_user_meta( $user_id, 'houzez_email_verified', false ); wp_redirect( admin_url( 'users.php' ) ); exit; }