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();
|
ob_end_clean();
|
||||||
|
|
||||||
if (preg_match('/VERIFIED/i', $info)) {
|
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;
|
return TRUE;
|
||||||
}
|
} else {
|
||||||
else {
|
watchdog('booking', 'Payment verification not successful: @info', array('@info' => $info));
|
||||||
watchdog('booking', 'Payment verification not successful: @info', array('@info' => $info));
|
|
||||||
return FALSE;
|
return FALSE;
|
||||||
}
|
}
|
||||||
}
|
|
||||||
else {
|
} else {
|
||||||
watchdog('booking_paypal', 'Call to curl_exec() failed. url=@url vars=@vars', array(
|
watchdog('booking_paypal', 'Call to curl_exec() failed with error @error. vars=@vars', array(
|
||||||
'@vars' => print_r($vars, TRUE)
|
'@vars' => print_r($vars, TRUE), '@error' => curl_error($ch)), WATCHDOG_ERROR);
|
||||||
), WATCHDOG_ERROR);
|
|
||||||
return FALSE;
|
return FALSE;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -58,9 +56,17 @@ function booking_paypal_ipn() {
|
|||||||
|
|
||||||
watchdog('booking', 'Payment notification received: @info', array('@info' => var_export($ipn, TRUE)));
|
watchdog('booking', 'Payment notification received: @info', array('@info' => var_export($ipn, TRUE)));
|
||||||
|
|
||||||
if(!_booking_paypal_ipn_verify($ipn))
|
//verify the notification with paypal
|
||||||
return;
|
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) {
|
if ($ipn['payment_status'] != 'Pending' && variable_get('booking_paypal_sandbox', 0) == 1) {
|
||||||
|
Reference in New Issue
Block a user