Improved error logging/handling in paypal IPN routines
This commit is contained in:
@@ -33,18 +33,16 @@ function _booking_paypal_ipn_verify($vars = array()) {
|
||||
ob_end_clean();
|
||||
|
||||
if (preg_match('/VERIFIED/i', $info)) {
|
||||
watchdog('booking', 'Payment verification completed successfully: @info', array('@info' => $info));
|
||||
watchdog('booking', 'Payment verification completed successfully: @info', array('@info' => $info));
|
||||
return TRUE;
|
||||
}
|
||||
else {
|
||||
watchdog('booking', 'Payment verification not successful: @info', array('@info' => $info));
|
||||
} else {
|
||||
watchdog('booking', 'Payment verification not successful: @info', array('@info' => $info));
|
||||
return FALSE;
|
||||
}
|
||||
}
|
||||
else {
|
||||
watchdog('booking_paypal', 'Call to curl_exec() failed. url=@url vars=@vars', array(
|
||||
'@vars' => print_r($vars, TRUE)
|
||||
), WATCHDOG_ERROR);
|
||||
|
||||
} else {
|
||||
watchdog('booking_paypal', 'Call to curl_exec() failed with error @error. vars=@vars', array(
|
||||
'@vars' => print_r($vars, TRUE), '@error' => curl_error($ch)), WATCHDOG_ERROR);
|
||||
return FALSE;
|
||||
}
|
||||
}
|
||||
@@ -58,9 +56,17 @@ function booking_paypal_ipn() {
|
||||
|
||||
watchdog('booking', 'Payment notification received: @info', array('@info' => var_export($ipn, TRUE)));
|
||||
|
||||
if(!_booking_paypal_ipn_verify($ipn))
|
||||
return;
|
||||
//verify the notification with paypal
|
||||
if(!_booking_paypal_ipn_verify($ipn)) {
|
||||
watchdog('booking', 'Payment verification did not succeed. Retrying.');
|
||||
if(!_booking_paypal_ipn_verify($ipn)) {
|
||||
return;
|
||||
} else {
|
||||
watchdog('booking', 'Payment verification succeeded on second attempt.');
|
||||
}
|
||||
}
|
||||
|
||||
//if we're still exectuing then the verification was successful
|
||||
|
||||
/*
|
||||
if ($ipn['payment_status'] != 'Pending' && variable_get('booking_paypal_sandbox', 0) == 1) {
|
||||
|
Reference in New Issue
Block a user