Пример #1
0
 private function getSoapSingleton()
 {
     if (self::$soapClient == null) {
         $headerXml = $this->getSoapHeaderXml();
         $baseUrl = $this->getTransactionServer();
         $soapWsdlUrl = $baseUrl . '/service/PayUAPI?wsdl';
         $headerbody = new SoapVar($headerXml, XSD_ANYXML, null, null, null);
         $soapHeader = new SOAPHeader(self::NS, 'Security', $headerbody, true);
         $soap_client = new SoapClient($soapWsdlUrl, array('trace' => 1, 'exception' => 0));
         $soap_client->__setSoapHeaders($soapHeader);
         self::$soapClient = $soap_client;
         return $soap_client;
     }
     return self::$soapClient;
 }
Пример #2
0
 function _notify_url()
 {
     $db = JFactory::getDBO();
     $par = JComponentHelper::getParams('com_djclassifieds');
     $payment_id = JRequest::getInt('payId', '0');
     $reference = JRequest::getVar('PayUReference', '');
     /* API step 4 START */
     $payu = new PayUAPI($this->params['soap_username'], $this->params['soap_password'], $this->params['test_mode'], $this->params['safe_key']);
     $paymentInfo = $payu->get_payment_info($reference);
     if ($paymentInfo == false) {
         die('Error ecountered while retrieving payment information');
     }
     //echo '<pre>';
     //	var_dump($paymentInfo);
     //	exit;
     //echo '</pre>';
     $status = $paymentInfo['return']['transactionState'];
     $successful = $paymentInfo['return']['successful'];
     $message = $paymentInfo['return']['resultMessage'];
     if ($status == 'SUCCESSFUL' && $successful) {
         $query = "UPDATE #__djcf_payments SET status='Completed', transaction_id='" . $reference . "' " . "WHERE id=" . $payment_id . " AND method='" . $this->params['plugin_name'] . "'";
         $db->setQuery($query);
         $db->query();
         $this->_paymentSuccess();
     } else {
         $query = "UPDATE #__djcf_payments SET status='Cancelled', transaction_id='" . $txn_id . "' " . "WHERE id=" . $payment_id . " AND method='" . $this->params['plugin_name'] . "'";
         $db->setQuery($query);
         $db->query();
         $this->_paymentError($message);
     }
     /* API step 4 END */
 }