You appear to be a bot. Output may be restricted
Description
Set customer details after authentication
Usage
$void = EDD_Amazon_Payments::signin_redirect();
Parameters
Returns
void
Source
File name: easy-digital-downloads/includes/gateways/amazon-payments.php
Lines:
1 to 66 of 66
public function signin_redirect() { if ( ! isset( $_GET['edd-listener'] ) || $_GET['edd-listener'] !== 'amazon' ) { return; } if ( ! isset( $_GET['state'] ) || $_GET['state'] !== 'signed-in' ) { return; } $profile = EDD()->session->get( 'amazon_profile' ); $reference = $_GET['amazon_reference_id']; if( ! is_user_logged_in() ) { $user = get_user_by( 'email', $profile['email'] ); if( $user ) { edd_log_user_in( $user->ID, $user->user_login, '' ); $customer = array( 'first_name' => $user->first_name, 'last_name' => $user->last_name, 'email' => $user->user_email ); } else { $names = explode( ' ', $profile['name'], 2 ); $customer = array( 'first_name' => $names[0], 'last_name' => isset( $names[1] ) ? $names[1] : '', 'email' => $profile['email'] ); if( 'none' !== edd_get_option( 'show_register_form' ) ) { // Create a customer account if registration is not disabled $args = array( 'user_email' => $profile['email'], 'user_login' => $profile['email'], 'display_name' => $profile['name'], 'first_name' => $customer['first_name'], 'last_name' => $customer['last_name'], 'user_pass' => wp_generate_password( 20 ), ); $user_id = wp_insert_user( $args ); edd_log_user_in( $user_id, $args['user_login'], $args['user_pass'] ); } } EDD()->session->set( 'customer', $customer ); } wp_redirect( edd_get_checkout_uri( array( 'payment-mode' => 'amazon', 'state' => 'authorized', 'amazon_reference_id' => $reference ) ) ); exit; }