本文整理汇总了PHP中Braintree_TransparentRedirect类的典型用法代码示例。如果您正苦于以下问题:PHP Braintree_TransparentRedirect类的具体用法?PHP Braintree_TransparentRedirect怎么用?PHP Braintree_TransparentRedirect使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了Braintree_TransparentRedirect类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: confirm
public function confirm($queryString)
{
$params = Braintree_TransparentRedirect::parseAndValidateQueryString($queryString);
$confirmationKlasses = array(Braintree_TransparentRedirect::CREATE_TRANSACTION => 'Braintree_TransactionGateway', Braintree_TransparentRedirect::CREATE_CUSTOMER => 'Braintree_CustomerGateway', Braintree_TransparentRedirect::UPDATE_CUSTOMER => 'Braintree_CustomerGateway', Braintree_TransparentRedirect::CREATE_PAYMENT_METHOD => 'Braintree_CreditCardGateway', Braintree_TransparentRedirect::UPDATE_PAYMENT_METHOD => 'Braintree_CreditCardGateway');
$confirmationGateway = new $confirmationKlasses[$params["kind"]]($this->_gateway);
return $confirmationGateway->_doCreate('/transparent_redirect_requests/' . $params['id'] . '/confirm', array());
}
示例2: testData_doesNotClobberDefaultTimezone
function testData_doesNotClobberDefaultTimezone()
{
$originalZone = date_default_timezone_get();
date_default_timezone_set('Europe/London');
$trData = Braintree_TransparentRedirect::createCustomerData(array('redirectUrl' => 'http://www.example.com'));
$zoneAfterCall = date_default_timezone_get();
date_default_timezone_set($originalZone);
$this->assertEquals('Europe/London', $zoneAfterCall);
}
示例3: buildTrData
function buildTrData($redirectUrl)
{
$customer = Mage::getSingleton('customer/session')->getCustomer();
if ($this->braintree->exists($customer->getId())) {
return Braintree_TransparentRedirect::createCreditCardData(array('redirectUrl' => $redirectUrl, 'creditCard' => array('customerId' => $customer->getId())));
} else {
$credit_card_billing = array();
$billing = $customer->getDefaultBilling();
if ($billing) {
$address = Mage::getModel('customer/address')->load($billing);
$credit_card_billing['billingAddress'] = $this->braintree->toBraintreeAddress($address);
}
return Braintree_TransparentRedirect::createCustomerData(array('redirectUrl' => $redirectUrl, 'customer' => array('id' => $customer->getId(), 'firstName' => $customer->getFirstname(), 'lastName' => $customer->getLastname(), 'company' => $customer->getCompany(), 'phone' => $customer->getTelephone(), 'fax' => $customer->getFax(), 'email' => $customer->getEmail(), 'creditCard' => $credit_card_billing)));
}
}
示例4:
<?php
$queryString = $_SERVER['QUERY_STRING'];
$result = Braintree_TransparentRedirect::confirm($queryString);
if ($result->success) {
$message = "Customer Created with ID: " . $result->customer->email;
} else {
$message = print_r($result->errors->deepAll(), True);
}
?>
<html>
<body>
<h1>Transaction Response</h1>
<ul>
<li>Status - <?php
echo $message;
?>
</li>
</ul>
</body>
</html>
示例5: updateCustomerViaTr
function updateCustomerViaTr($regularParams, $trParams)
{
Braintree_TestHelper::suppressDeprecationWarnings();
$trData = Braintree_TransparentRedirect::updateCustomerData(array_merge($trParams, array("redirectUrl" => "http://www.example.com")));
return Braintree_TestHelper::submitTrRequest(Braintree_Customer::updateCustomerUrl(), $regularParams, $trData);
}
示例6: updateFromTransparentRedirect
/**
* update a customer from a TransparentRedirect operation
*
* @access public
* @param array $attribs
* @return object
*/
public function updateFromTransparentRedirect($queryString)
{
trigger_error("DEPRECATED: Please use Braintree_TransparentRedirectRequest::confirm", E_USER_NOTICE);
$params = Braintree_TransparentRedirect::parseAndValidateQueryString($queryString);
return $this->_doUpdate('post', '/customers/all/confirm_transparent_redirect_request', array('id' => $params['id']));
}
示例7: form
public function form()
{
$result = Braintree_Transaction::sale(array("amount" => "1000.00", "creditCard" => array("number" => $_POST["number"], "cvv" => $_POST["cvv"], "expirationMonth" => $_POST["month"], "expirationYear" => $_POST["year"]), "options" => array("submitForSettlement" => true)));
if ($result->success) {
echo "Success! Transaction ID: " . $result->transaction->id;
} else {
if ($result->transaction) {
echo "Error: " . $result->message;
echo "<br/>";
echo "Code: " . $result->transaction->processorResponseCode;
} else {
echo "Validation errors:<br/>";
foreach ($result->errors->deepAll() as $error) {
echo "- " . $error->message . "<br/>";
}
}
}
pr($result);
die;
?>
<html>
<head>
<title>Braintree Transparent Redirect</title>
</head>
<body>
<?php
if (isset($_GET["id"])) {
echo "id: " . $_GET["id"];
$result = Braintree_TransparentRedirect::confirm($_SERVER['QUERY_STRING']);
pr($result);
}
if (isset($result) && $result->success) {
?>
<h1>Braintree Transparent Redirect Response</h1>
<?php
$transaction = $result->transaction;
?>
<table>
<tr><td>transaction id</td><td><?php
echo htmlentities($transaction->id);
?>
</td></tr>
<tr><td>transaction status</td><td><?php
echo htmlentities($transaction->status);
?>
</td></tr>
<tr><td>transaction amount</td><td><?php
echo htmlentities($transaction->amount);
?>
</td></tr>
<tr><td>customer first name</td><td><?php
echo htmlentities($transaction->customerDetails->firstName);
?>
</td></tr>
<tr><td>customer last name</td><td><?php
echo htmlentities($transaction->customerDetails->lastName);
?>
</td></tr>
<tr><td>customer email</td><td><?php
echo htmlentities($transaction->customerDetails->email);
?>
</td></tr>
<tr><td>credit card number</td><td><?php
echo htmlentities($transaction->creditCardDetails->maskedNumber);
?>
</td></tr>
<tr><td>expiration date</td><td><?php
echo htmlentities($transaction->creditCardDetails->expirationDate);
?>
</td></tr>
</table>
<?php
} else {
if (!isset($result)) {
echo "gagal";
$result = null;
}
?>
<h1>Braintree Transparent Redirect Example</h1>
<?php
if (isset($result)) {
?>
<div style="color: red;"><?php
echo $result->errors->deepSize();
?>
error(s)</div>
<?php
}
?>
<form method="POST" action="<?php
echo Braintree_TransparentRedirect::url();
?>
" autocomplete="off">
<fieldset>
<legend>Customer</legend>
<?php
$this->braintree_text_field('First Name', 'transaction[customer][first_name]', $result);
?>
<?php
$this->braintree_text_field('Last Name', 'transaction[customer][last_name]', $result);
//.........这里部分代码省略.........
示例8: braintree_text_field
<fieldset>
<legend>Payment Information</legend>
<?php
braintree_text_field('Credit Card Number', 'transaction[credit_card][number]', $result);
?>
<?php
braintree_text_field('Expiration Date (MM/YY)', 'transaction[credit_card][expiration_date]', $result);
?>
<?php
braintree_text_field('CVV', 'transaction[credit_card][cvv]', $result);
?>
</fieldset>
<?php
$tr_data = Braintree_TransparentRedirect::transactionData(array('redirectUrl' => "http://" . $_SERVER["SERVER_NAME"] . ":" . $_SERVER["SERVER_PORT"] . parse_url($_SERVER["REQUEST_URI"], PHP_URL_PATH), 'transaction' => array('amount' => '10.00', 'type' => 'sale')));
?>
<input type="hidden" name="tr_data" value="<?php
echo $tr_data;
?>
" />
<br />
<input type="submit" value="Submit" />
</form>
<?php
}
?>
</body>
</html>
示例9: createCreditCardData
public function createCreditCardData($params)
{
return Braintree_TransparentRedirect::createCreditCardData($params);
}
示例10: updateCreditCardViaTr
function updateCreditCardViaTr($regularParams, $trParams)
{
$trData = Braintree_TransparentRedirect::updateCreditCardData(array_merge($trParams, array("redirectUrl" => "http://www.example.com")));
return Braintree_TestHelper::submitTrRequest(Braintree_CreditCard::updateCreditCardUrl(), $regularParams, $trData);
}
示例11: confirm
public static function confirm($queryString)
{
$params = Braintree_TransparentRedirect::parseAndValidateQueryString($queryString);
$confirmationKlasses = array(Braintree_TransparentRedirect::CREATE_TRANSACTION => 'Braintree_Transaction', Braintree_TransparentRedirect::CREATE_CUSTOMER => 'Braintree_Customer', Braintree_TransparentRedirect::UPDATE_CUSTOMER => 'Braintree_Customer', Braintree_TransparentRedirect::CREATE_PAYMENT_METHOD => 'Braintree_CreditCard', Braintree_TransparentRedirect::UPDATE_PAYMENT_METHOD => 'Braintree_CreditCard');
return call_user_func(array($confirmationKlasses[$params["kind"]], '_doCreate'), '/transparent_redirect_requests/' . $params['id'] . '/confirm', array());
}
示例12: array
<?php
$trData = Braintree_TransparentRedirect::transactionData(array('transaction' => array('type' => Braintree_Transaction::SALE, 'amount' => '1000.00', 'options' => array('submitForSettlement' => true)), 'redirectUrl' => 'http://localhost:8080/braintree'));
?>
<html>
<head>
<style type='text/css'>label {display: block;} input {margin-bottom: 10px;}</style>
</head>
<body>
<h1>Braintree Credit Card Transaction Form</h1>
<form id='payment-form' action='<?php
echo Braintree_TransparentRedirect::url();
?>
' method='POST'>
<input type='hidden' name='tr_data' value='<?php
echo htmlentities($trData);
?>
' />
<div>
<h2>Credit Card</h2>
<label for='braintree_credit_card_number'>Credit Card Number</label>
<input type='text' name='transaction[credit_card][number]' id='braintree_credit_card_number' value='4111111111111111'></input>
<label for='braintree_credit_card_exp'>Credit Card Expiry (mm/yyyy)</label>
<input type='text' name='transaction[credit_card][expiration_date]' id='braintree_credit_card_exp' value='12/2015'></input>
</div>
<input class='submit-button' type='submit' />
</form>
</body>
</html>
示例13: confirm
public function confirm()
{
try {
return Braintree_TransparentRedirect::confirm($_SERVER['QUERY_STRING']);
} catch (Braintree_Exception $e) {
Mage::logException($e);
$result = stdClass;
$result->success = false;
return $result;
}
}
示例14: startup
/**
* Startup
*
* @param object $controller
* @return void
*/
public function startup(Controller $controller)
{
if (in_array($this->controller->params['action'], $this->_callback_actions) || array_key_exists($this->controller->params['action'], $this->_callback_actions)) {
$this->action_settings = array();
if (!empty($this->_callback_actions[$this->controller->params['action']]) && is_array($this->_callback_actions[$this->controller->params['action']])) {
$this->action_settings = $this->_callback_actions[$this->controller->params['action']];
}
$continue = true;
$parameters = array();
foreach ($this->_callback_parameters as $parameter) {
if (empty($this->controller->params['url'][$parameter])) {
$continue = false;
break;
} else {
$parameters[$parameter] = $this->controller->params['url'][$parameter];
}
}
if ($continue) {
App::import('Vendor', 'Braintree.Braintree');
$query_string = http_build_query($parameters, '', '&');
foreach (array('BraintreeAddress', 'BraintreeCreditCard', 'BraintreeCreditCardRelation') as $model_name) {
if (!isset($this->{$model_name})) {
$this->{$model_name} = ClassRegistry::init('Braintree.' . $model_name);
}
}
if (!$this->beforeConfirmation()) {
return false;
}
try {
$result = Braintree_TransparentRedirect::confirm($query_string);
} catch (Exception $e) {
$result = false;
}
if (empty($result) || !$result->success) {
$this->onFailure($result);
return true;
} else {
if (!$this->onSuccess($result)) {
return true;
}
}
if (!$this->afterProcessing()) {
return false;
}
}
}
}
示例15: updateAction
public function updateAction()
{
$this->form = $this->createUpdateForm();
if ($this->getParam('http_status') && $this->getParam('hash')) {
$res = Braintree_TransparentRedirect::confirm($_SERVER['QUERY_STRING']);
if ($res instanceof Braintree_Result_Error) {
$this->form->getElementById('credit_card__number-0')->setError($res->message);
} else {
return $this->redirectLocation(REL_ROOT_URL . '/member');
}
}
$this->view->form = $this->form;
$this->view->invoice = null;
$this->view->display_receipt = false;
$this->view->display('cc/info.phtml');
}