public function testAddParamShouldSetParamsCorrectly() { $this->form->addParam('language', 'en'); $this->form->addParam('PSPID', 'SOMEPSPID'); $this->form->addParam('someParamName', 'someValue'); $html = $this->form->render(); $this->assertTrue(stripos($html, 'input type="hidden" name="language" value="en') !== false); $this->assertTrue(stripos($html, 'input type="hidden" name="PSPID" value="SOMEPSPID') !== false); $this->assertTrue(stripos($html, 'input type="hidden" name="someParamName" value="someValue') !== false); }
public function testPost() { $request = new HttpRequest(); $request->setUri(Form::OGONE_TEST_URL); $request->setMethod(HttpRequest::METHOD_POST); $request->getPost()->set('PSPID', $this->form->getParam('PSPID')); $request->getPost()->set('orderID', $this->form->getParam('orderID')); $request->getPost()->set('amount', $this->form->getParam('amount')); $request->getPost()->set('currency', $this->form->getParam('currency')); $request->getPost()->set('language', $this->form->getParam('language')); $request->getPost()->set('CN', $this->form->getParam('CN')); $request->getPost()->set('EMAIL', $this->form->getParam('EMAIL')); $request->getPost()->set('accepturl', $this->form->getParam('accepturl')); $request->getPost()->set('declineurl', $this->form->getParam('declineurl')); $request->getPost()->set('exceptionurl', $this->form->getParam('exceptionurl')); $request->getPost()->set('cancelurl', $this->form->getParam('cancelurl')); $request->getPost()->set('SHASign', $this->form->getSha1Sign()); $request->getHeaders()->addHeader(\Zend\Http\Header\ContentType::fromString('Content-type: application/x-www-form-urlencoded')); $response = $this->httpClient->dispatch($request); $this->assertEquals(200, $response->getStatusCode(), 'Ogone response does not have the correct HTTP status code'); $this->assertSelectCount('form[name="OGONE_CC_FORM"]', 1, $response, 'Ogone response does not include the correct form'); }
<?php require "../vendor/autoload.php"; use Jvandemo\Ogone\Form; /** * Example to generate an Ogone payment form * to initiate Ogone payments from your website * * @author Jurgen Van de Moere (http://www.jvandemo.com) * @copyright JobberID (http://www.jobberid.com) * */ // Define form options // See Ogone_Form for list of supported options $options = array('sha1InPassPhrase' => 'your_sha1_in_password', 'formAction' => Form::OGONE_TEST_URL); // Define form parameters (see Ogone documentation for list) // Default parameter values can be set in Ogone_Form if required $params = array('PSPID' => 'your_ogone_pspid', 'orderID' => 'your_order_id', 'amount' => 100, 'currency' => 'EUR', 'language' => 'en', 'CN' => 'name of your client', 'EMAIL' => 'email of your client', 'accepturl' => 'where_to_go_if_accepted.html', 'declineurl' => 'where_to_go_if_declined.html', 'exceptionurl' => 'where_to_go_if_exception_occurs.html', 'cancelurl' => 'where_to_go_if_cancelled.html'); // Instantiate form $form = new Form($options, $params); // You can also add parameters after instantiation // with the addParam() method $form->addParam('CN', 'Jurgen Van de Moere')->addParam('EMAIL', '*****@*****.**')->addParam('language', 'en'); // Automatically generate HTML form with all params and SHA1Sign echo $form->render();