The Arcive of Official vBulletin Modifications Site.It is not a VB3 engine, just a parsed copy! |
|
#1
|
||||
|
||||
![]()
Paid Subscriptions purchased by our members since we upgraded to 4.2.3 Beta 3 are being recorded in the Transaction Log and Transaction Stats as Failures. As a result, the members who purchase these subscriptions aren't being identified with the additional usergroups associated with our Paid Subscription levels, and the Subscription Manager isn't being updated with these subscriptions. But, according to our Host, he is receiving the payments.
I have a copy of the version 4.2.1 class_paypal.php file and compared it to the version 4.2.3 Beta 3 class_paypal.php file. There are a few significant differences. I don't have a copy of the version 4.2.1 class_paid_subscription.php file, so I don't know if this file may also be affecting this issue. I need to know how to fix this issue. Thank you. |
#2
|
|||
|
|||
![]()
Any error logs?
|
#3
|
||||
|
||||
![]()
For each of the 'Failures' in the Transaction Log Transaction Details, under the heading API is shown:
vb_error_code authentication_failure However, under the heading POST, there is a verify_sign entry, and the payment_status reflects Completed. |
#4
|
|||
|
|||
![]() |
#5
|
||||
|
||||
![]()
Neither of those links are helpful, but thank you.
As stated, before we upgraded to vBulletin 4.2.3 Beta 3, Paid Subscriptions were working correctly. But we also upgraded our Linux server to Ubuntu 14.04.1 LTS, which included PHP 5.5.9. PHP 5.5.9 was incompatible with vBulletin 4.2.2 PL3/4, so as recommended, we upgraded to 4.2.3 Beta 3, which fixed all the problems we were experiencing. So it may be that PHP 5.5.9 is a contributing factor with our Paid Subscription issue? --------------- Added [DATE]1422843729[/DATE] at [TIME]1422843729[/TIME] --------------- Can I just replace the 4.2.3 Beta 3 class_paypal.php file with the original 4.2.1 class_paypal.php file? --------------- Added [DATE]1422865353[/DATE] at [TIME]1422865353[/TIME] --------------- I need a copy of version 4.2.1 class_paid_subscription.php file so I can compare it against the 4.2.3 Beta 3 file. |
#6
|
||||
|
||||
![]()
Then download the 4.2.1 package.
|
#7
|
||||
|
||||
![]()
Replaced class_paypal.php, payment_gateway.php, and payments.php with version 4.2.1 of each and our issue with Paid Subscriptions is "fixed". Still waiting for some response on our filed trouble ticket on vbulletin.com as to why the 4.2.3 Beta 3 version of these files caused this issue in the first place.
|
#8
|
||||
|
||||
![]()
Well in includes/paymentapi/clas_paypal.php line 60 was changed.
From: Code:
$mc_gross = doubleval($this->registry->GPC['mc_gross']+ ($this->registry->GPC['payment_status'] == 'Canceled_Reversal' ? $vbulletin->GPC['mc_fee'] : 0)); Code:
$mc_gross = doubleval($this->registry->GPC['mc_gross']+ ($this->registry->GPC['payment_status'] == 'Canceled_Reversal' ? $this->registry->GPC['mc_fee'] : 0)); Nothing was changed in payment_gateway.php. So it is pretty easy to figure out where the issue lies. ![]() |
#9
|
||||
|
||||
![]()
My first thing was to compare the files to the version 4.2.1 files. I noticed what you pointed out, and wondered if the change from:
'Canceled_Reversal' ? $vbulletin->GPC to: 'Canceled_Reversal' ? $this->registry->GPC was the cause, or a contributing cause. But in the 4.2.3 Beta 3 version of includes/paymentapi/class_paypal.php, the following lines were 'added': 80: curl_setopt($ch, CURLOPT_HTTPHEADER, array('Connection: Close')); 92: $this->error_code = 'curl_failure'; 197: curl_setopt($ch, CURLOPT_HTTPHEADER, array('Connection: Close')); Line 92 above replaced this block of code: Code:
$header = "POST /cgi-bin/webscr HTTP/1.0\r\n"; $header .= "Host: www.paypal.com\r\n"; $header .= "Content-Type: application/x-www-form-urlencoded\r\n"; $header .= "Content-Length: " . strlen($query) . "\r\n\r\n"; if ($fp = fsockopen('www.paypal.com', 80, $errno, $errstr, 15)) { socket_set_timeout($fp, 15); fwrite($fp, $header . $query); while (!feof($fp)) { $result = fgets($fp, 1024); if (strcmp($result, 'VERIFIED') == 0) { break; } } fclose($fp); } Code:
if (!$communication) { $header = "POST /cgi-bin/webscr HTTP/1.0\r\n"; $header .= "Host: www.paypal.com\r\n"; $header .= "Content-Type: application/x-www-form-urlencoded\r\n"; $header .= "Content-Length: " . strlen($query) . "\r\n\r\n"; if ($fp = fsockopen('www.paypal.com', 80, $errno, $errstr, 15)) { socket_set_timeout($fp, 15); fwrite($fp, $header . $query); while (!feof($fp)) { $result = fgets($fp, 1024); if (strcmp($result, 'INVALID') == 0) { $communication = true; break; } } fclose($fp); } } |
Благодарность от: | ||
ozzy47 |
#10
|
||||
|
||||
![]()
Ahhh, I compared 4.2.2. to 4.2.3 that is why I did not find any other differences.
|
![]() |
|
|
X vBulletin 3.8.12 by vBS Debug Information | |
---|---|
|
|
![]() |
|
Template Usage:
Phrase Groups Available:
|
Included Files:
Hooks Called:
|