/** * Validate the extra register fields. * * @param string $username Current username. * @param string $email Current email. * @param object $validation_errors WP_Error object. * * @return void */ function wooc_validate_extra_register_fields($username, $email, $validation_errors) { if (isset($_POST['register_phone']) && empty($_POST['register_phone'])) { $validation_errors->add('register_phone_error', __('Phone is required!.', 'woocommerce')); } if (isset($_POST['register_dob']) && empty($_POST['register_dob'])) { $validation_errors->add('register_dob_error', __('Date of Birth is required!.', 'woocommerce')); } if (isset($_POST['register_phone']) && isset($_POST['register_dob'])) { include_once TEMPLATEPATH . "/portal/api/Api.php"; include_once TEMPLATEPATH . "/portal/api/Setting.php"; include_once TEMPLATEPATH . "/portal/api/RequestParams.php"; include_once TEMPLATEPATH . "/portal/api/BQ_Base.php"; include_once TEMPLATEPATH . "/portal/api/BQ_CustomerProfile.php"; include_once TEMPLATEPATH . "/portal/api/BQ_GetAirtimeBalance.php"; $Api = new Api(); $requestParams = new requestParams(); $BQ = new BQ_CustomerProfile(); $BQ->set_CustomerMdn($_POST['register_phone']); $requestParams->id = Setting::CLEC_ID; $requestParams->firstName = Setting::CLEC_FIRSTNAME; $requestParams->lastName = Setting::CLEC_LASTNAME; $requestParams->details = $BQ; $request = $Api->buildRequest($requestParams); $Api->callAPI(Setting::URL, $request); $BQ->set_response($Api->response); // Must wrap certain properties/methods with print_r in order to "see" them // echo print_r($BQ->get_DOB()); // echo print_r($_POST['register_dob']); // die(); if (!$BQ->isValidCustomer()) { $validation_errors->add('register_phone_error', __('Not a valid Assist Wireless phone number.', 'woocommerce')); } elseif ($BQ->get_DOB() != $_POST['register_dob']) { $validation_errors->add('register_dob_error', __("Date of birth does not match what's in our records.", 'woocommerce')); } else { // HACK $BQ->update_customerId(); // Not sure you can use these variables yet... since WC session hasn't started? // WC()->session->set('customerId', (string)$BQ->get_customerId()); // WC()->session->set('carrier', (string)$BQ->get_carrier()); $_SESSION['customerId'] = (string) $BQ->get_customerId(); $_SESSION['carrier'] = (string) $BQ->get_planId(); } } }
$requestParams->lastName = Setting::CLEC_LASTNAME; $requestParams->details = $BQ; $request = $Api->buildRequest($requestParams); $Api->callAPI(Setting::URL, $request); $BQ->set_response($Api->response); WC()->session->set('fullname', $BQ->get_fullname()); WC()->session->set('customerId', $customerId); // $BQ->get_customerId() WC()->session->set('balance', $BQ->get_balance()); WC()->session->set('balanceFloat', $BQ->get_balanceFloat()); WC()->session->set('balancePastDue', $BQ->get_balancePastDue()); WC()->session->set('planName', (string) $BQ->get_planName()); WC()->session->set('planPrice', (string) $BQ->get_planPrice()); WC()->session->set('mdn', $BQ->get_telephoneNumber1()); WC()->session->set('daysLeft', $BQ->get_daysLeft()); WC()->session->set('carrier', $BQ->get_planId()); // $_SESSION['fullname'] = WC()->session->get('fullname'); // $_SESSION['customerId'] = WC()->session->get('customerId'); // $_SESSION['balance'] = WC()->session->get('balance'); // $_SESSION['balancePastDue'] = WC()->session->get('balancePastDue'); // $_SESSION['planName'] = "TBD"; // $_SESSION['planPrice'] = "TBD"; // $_SESSION['mdn'] = WC()->session->get('mdn'); // $_SESSION['daysLeft'] = WC()->session->get('daysLeft'); // $_SESSION['fullname'] = $BQ->get_fullname(); // $_SESSION['customerId'] = $BQ->get_customerId(); // $_SESSION['balance'] = $BQ->get_balance(); // $_SESSION['balancePastDue'] = $BQ->get_balancePastDue(); // $_SESSION['planName'] = $BQ->get_planName(); // $_SESSION['planPrice'] = $BQ->get_planPrice(); // $_SESSION['mdn'] = $BQ->get_telephoneNumber1();