コード例 #1
0
ファイル: BMCreateButton.php プロジェクト: kashyapkk/SDKs
    $optionSelectionDetails->PaymentPeriod = $paymentPeriod;
    $optionDetails = new OptionDetailsType();
    $optionDetails->OptionName = "CreateButton";
    $optionDetails->OptionSelectionDetails = $optionSelectionDetails;
} elseif ($_REQUEST['buttonType'] == "AUTOBILLING") {
    $buttonVar["min_amount"] = $_REQUEST['minAmt'];
} elseif ($_REQUEST['buttonType'] == "GIFTCERTIFICATE") {
    $buttonVar["shopping_url"] = $_REQUEST['shoppingUrl'];
} elseif ($_REQUEST['buttonType'] == "PAYMENT") {
    $buttonVar["subtotal"] = $_REQUEST['subTotal'];
} elseif ($_REQUEST['buttonType'] == "SUBSCRIBE") {
    $buttonVar["a3"] = $_REQUEST['subAmt'];
    $buttonVar["p3"] = $_REQUEST['subPeriod'];
    $buttonVar["t3"] = $_REQUEST['subInterval'];
}
$createButtonRequest = new BMCreateButtonRequestType();
$createButtonRequest->ButtonCode = $_REQUEST['buttonCode'];
$createButtonRequest->ButtonType = $_REQUEST['buttonType'];
$createButtonRequest->Version = 86.0;
$createButtonRequest->ButtonVar[0] = $buttonVar;
if ($_REQUEST['buttonType'] == "PAYMENTPLAN") {
    $createButtonRequest->OptionDetails = $optionDetails;
}
$createButtonReq = new BMCreateButtonReq();
$createButtonReq->BMCreateButtonRequest = $createButtonRequest;
$paypalService = new PayPalAPIInterfaceServiceService();
$createButtonResponse = $paypalService->BMCreateButton($createButtonReq);
echo "<pre>";
print_r($createButtonResponse);
echo "</pre>";
require_once '../Response.php';
コード例 #2
0
 public function actionPay($id)
 {
     $reservation = Reservation::model()->findByPk($id);
     if (isset($reservation)) {
         Yii::app()->session['llegada'] = $reservation->arrival_date;
         Yii::app()->session['salida'] = $reservation->departure_date;
         Yii::app()->session['maxPersonas'] = $reservation->number_people;
         Yii::app()->session['total'] = $reservation->total;
         $count = 0;
         $habitacion = [];
         foreach (RoomsBooked::model()->findAllByAttributes(array('reservation_id' => $reservation->id)) as $i => $rb) {
             $count += $rb->quantity;
             for ($i = 0; $i < $rb->quantity; $i++) {
                 $n = 'room_' . TypeRoom::model()->findByPk($rb->type_room_id)->name . '_name';
                 array_push($habitacion, Yii::t('rooms', $n));
             }
         }
         Yii::app()->session['habitacion'] = $habitacion;
         Yii::app()->session['habitaciones'] = $count;
         /* paypal */
         require_once 'paypal/PPBootStrap.php';
         $buttonVar = array("item_name=reservacion", "item_number=" . $this->generateRandomString(3) . $reservation->id . $this->generateRandomString(1), "return=" . Yii::app()->request->getBaseUrl(true) . "#cuenta", "business=marisaloorv@yahoo.com", "amount=" . $reservation->total, "notify_url=" . Yii::app()->request->getBaseUrl(true) . "/site/ipn", "no_shipping=1", "cancel_return=" . Yii::app()->request->getBaseUrl(true) . "#cuenta");
         $createButtonRequest = new BMCreateButtonRequestType();
         $createButtonRequest->ButtonCode = "ENCRYPTED";
         $createButtonRequest->ButtonType = "BUYNOW";
         $createButtonRequest->ButtonSubType = 'SERVICES';
         $createButtonRequest->BuyNowText = 'PAYNOW';
         $createButtonRequest->ButtonLanguage = 'es';
         $createButtonRequest->ButtonImageURL = Yii::app()->request->getBaseUrl(true) . "/images/paypal.png";
         $createButtonRequest->ButtonVar = $buttonVar;
         $createButtonReq = new BMCreateButtonReq();
         $createButtonReq->BMCreateButtonRequest = $createButtonRequest;
         $paypalService = new PayPalAPIInterfaceServiceService(Configuration::getAcctAndConfig());
         try {
             $createButtonResponse = $paypalService->BMCreateButton($createButtonReq);
             if ($createButtonResponse->Ack == 'Success') {
                 Yii::app()->session['button'] = $createButtonResponse->Website;
             } else {
                 $this->redirect(Yii::app()->request->getBaseUrl(true) . '#cuenta');
             }
         } catch (Exception $ex) {
             print_r($ex);
             die;
         }
         /* --- */
         $this->redirect(Yii::app()->request->getBaseUrl(true) . '#pagar');
     } else {
         $this->redirect(Yii::app()->request->getBaseUrl(true) . '#cuenta');
     }
 }
コード例 #3
0
 /**
  * Get HTML code for payment button
  *
  */
 public function getPaymentCode()
 {
     $path = JPATH_COMPONENT . '/lib/payment/paypal_standard/lib';
     set_include_path($path);
     require_once 'services/PayPalAPIInterfaceService/PayPalAPIInterfaceServiceService.php';
     $createButtonRequest = new BMCreateButtonRequestType();
     $createButtonRequest->ButtonCode = 'ENCRYPTED';
     $createButtonRequest->ButtonType = 'BUYNOW';
     $createButtonRequest->ButtonVar = $this->buttonVars;
     $createButtonReq = new BMCreateButtonReq();
     $createButtonReq->BMCreateButtonRequest = $createButtonRequest;
     $paypalService = new PayPalAPIInterfaceServiceService();
     $credentials = new PPSignatureCredential($this->credentials->user, $this->credentials->password, $this->credentials->signature);
     try {
         $createButtonResponse = $paypalService->BMCreateButton($createButtonReq, $credentials);
     } catch (Exception $e) {
         throw new Exception($e->getMessage());
         exit;
     }
     if ($createButtonResponse->Ack == 'Failure') {
         // Log error here
         //print_r($createButtonResponse); die;
         // Throw exception
         throw new Exception($createButtonResponse->Errors[0]->LongMessage);
     }
     //print_r($createButtonResponse);
     return $createButtonResponse->Website;
 }