public function PayPaypal() { if (!isset($this->data['type'])) { $this->msg = Yii::t("default", "Payment type is required"); return; } $package_id = isset($this->data['package_id']) ? $this->data['package_id'] : ''; if ($this->data['type'] == "purchaseSMScredit") { $paypal_con = Yii::app()->functions->getPaypalConnectionAdmin(); $paypal = new Paypal($paypal_con); if ($res_paypal = $paypal->getExpressDetail()) { $paypal->params['PAYERID'] = $res_paypal['PAYERID']; $paypal->params['AMT'] = $res_paypal['AMT']; $paypal->params['TOKEN'] = $res_paypal['TOKEN']; $paypal->params['CURRENCYCODE'] = $res_paypal['CURRENCYCODE']; if ($res = $paypal->expressCheckout()) { $info = Yii::app()->functions->getSMSPackagesById($package_id); $payment_code = Yii::app()->functions->paymentCode("paypal"); $params = array('merchant_id' => Yii::app()->functions->getMerchantID(), 'sms_package_id' => $package_id, 'payment_type' => $payment_code, 'package_price' => $res_paypal['AMT'], 'sms_limit' => $info['sms_limit'], 'date_created' => date('c'), 'ip_address' => $_SERVER['REMOTE_ADDR'], 'payment_gateway_response' => json_encode($res), 'status' => "paid"); if ($this->insertData("{{sms_package_trans}}", $params)) { $this->details = Yii::app()->request->baseUrl . "/merchant/smsReceipt/id/" . Yii::app()->db->getLastInsertID(); $this->code = 1; $this->msg = Yii::t("default", "Successful"); } else { $this->msg = Yii::t("default", "ERROR: Cannot insert record."); } } else { $this->msg = $paypal->getError(); } } else { $this->msg = $paypal->getError(); } } /*end purchaseSMS*/ }
public function paymentPaypalVerification() { $raw = base64_decode(isset($this->data['raw']) ? $this->data['raw'] : ''); parse_str($raw, $raw_decode); $price = ''; $description = ''; if (is_array($raw_decode) && count($raw_decode) >= 1) { $price = isset($raw_decode['price']) ? $raw_decode['price'] : ''; $description = isset($raw_decode['description']) ? $raw_decode['description'] : ''; } $paypal_con = Yii::app()->functions->getPaypalConnectionAdmin(); $paypal = new Paypal($paypal_con); if ($res_paypal = $paypal->getExpressDetail()) { $paypal->params['PAYERID'] = $res_paypal['PAYERID']; $paypal->params['AMT'] = $res_paypal['AMT']; $paypal->params['TOKEN'] = $res_paypal['TOKEN']; $paypal->params['CURRENCYCODE'] = $res_paypal['CURRENCYCODE']; if ($res = $paypal->expressCheckout()) { /*now insert transaction logs*/ if ($this->data['purchase'] == "fax_package") { $payment_code = Yii::app()->functions->paymentCode("paypal"); $FunctionsK = new FunctionsK(); $info = $FunctionsK->getFaxPackagesById($this->data['package_id']); $params = array('merchant_id' => Yii::app()->functions->getMerchantID(), 'fax_package_id' => $this->data['package_id'], 'payment_type' => $payment_code, 'package_price' => $price, 'fax_limit' => $info['fax_limit'], 'date_created' => date('c'), 'ip_address' => $_SERVER['REMOTE_ADDR'], 'payment_gateway_response' => json_encode($res), 'status' => "paid"); if ($this->insertData("{{fax_package_trans}}", $params)) { $this->details = websiteUrl() . "/merchant/faxreceipt/id/" . Yii::app()->db->getLastInsertID(); $this->code = 1; $this->msg = Yii::t("default", "Successful"); $merchantinfo = Yii::app()->functions->getMerchantInfo(); $FunctionsK = new FunctionsK(); $FunctionsK->faxSendNotification((array) $merchantinfo[0], $this->data['package_id'], $payment_code, $price); } else { $this->msg = Yii::t("default", "ERROR: Cannot insert record."); } } else { $this->msg = t("Uknown transaction"); } } else { $this->msg = $paypal->getError(); } } else { $this->msg = $paypal->getError(); } }