/** @test */
    public function GeneratesAForm()
    {
        $expected = '<form method="post" action="https://secure.ogone.com/ncol/test/orderstandard_utf8.asp" id="ogone" name="ogone">
				<input type="hidden" name="pspid" value="123456789" />
				<input type="hidden" name="orderid" value="987654321" />
				<input type="hidden" name="cn" value="Louis XIV" />
				<input type="hidden" name="owneraddress" value="1, Rue du Palais" />
				<input type="hidden" name="ownertown" value="Versailles" />
				<input type="hidden" name="ownerzip" value="2300" />
				<input type="hidden" name="ownercty" value="FR" />
				<input type="hidden" name="email" value="*****@*****.**" />
				<input type="hidden" name="amount" value="100" />
				<input type="hidden" name="SHASIGN" value="foo" />
				<input type="submit" value="Submit" id="submit" name="submit" />
			</form>';
        $paymentRequest = $this->provideMinimalPaymentRequest();
        $formGenerator = new SimpleFormGenerator();
        $html = $formGenerator->render($paymentRequest);
        $this->assertXmlStringEqualsXmlString($expected, $html);
    }
 /** @test */
 public function GeneratesAFormWithCustomOperationParameter()
 {
     $expected = '<form method="post" action="https://secure.ogone.com/ncol/test/orderstandard_utf8.asp" id="ogone" name="ogone">
             <input type="hidden" name="PSPID" value="123456789" />
             <input type="hidden" name="ORDERID" value="987654321" />
             <input type="hidden" name="CURRENCY" value="EUR" />
             <input type="hidden" name="AMOUNT" value="100" />
             <input type="hidden" name="CN" value="Louis XIV" />
             <input type="hidden" name="OWNERADDRESS" value="1, Rue du Palais" />
             <input type="hidden" name="OWNERTOWN" value="Versailles" />
             <input type="hidden" name="OWNERZIP" value="2300" />
             <input type="hidden" name="OWNERCTY" value="FR" />
             <input type="hidden" name="EMAIL" value="*****@*****.**" />
             <input type="hidden" name="OPERATION" value="SAL" />
             <input type="hidden" name="' . PaymentRequest::SHASIGN_FIELD . '" value="foo" />
             <input type="submit" value="Submit" id="ogonesubmit" name="ogonesubmit" />
         </form>';
     $paymentRequest = $this->provideMinimalPaymentRequest();
     $paymentRequest->setOperation(new PaymentOperation(PaymentOperation::REQUEST_FOR_DIRECT_SALE));
     $formGenerator = new SimpleFormGenerator();
     $this->assertXmlStringEqualsXmlString($expected, $formGenerator->render($paymentRequest));
     $this->assertXmlStringEqualsXmlString($expected, $formGenerator->render($paymentRequest, 'ogone', true));
 }
Example #3
0
use Ogone\FormGenerator\SimpleFormGenerator;
$passphrase = new Passphrase('my-sha-in-passphrase-defined-in-ogone-interface');
$shaComposer = new AllParametersShaComposer($passphrase);
$shaComposer->addParameterFilter(new ShaInParameterFilter());
//optional
$ecommercePaymentRequest = new EcommercePaymentRequest($shaComposer);
// Optionally set Ogone uri, defaults to TEST account
//$ecommercePaymentRequest->setOgoneUri(EcommercePaymentRequest::PRODUCTION);
// Set various params:
$ecommercePaymentRequest->setOrderid('123456');
$ecommercePaymentRequest->setAmount(150);
// in cents
$ecommercePaymentRequest->setCurrency('EUR');
// ...
$ecommercePaymentRequest->validate();
$formGenerator = new SimpleFormGenerator();
$html = $formGenerator->render($ecommercePaymentRequest);
// Or use your own generator. Or pass $ecommercePaymentRequest to a view
class Ogone extends Front
{
    public function __construct()
    {
        parent::__construct();
        \CI::lang()->load('ogone');
    }
    //back end installation functions
    public function checkoutForm()
    {
        //set a default blank setting for flatrate shipping
        $this->partial('ogoneCheckoutForm');
    }