Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public function redirectAction()
- {
- $session = $this->getCheckout();
- $session->setPayuCheckoutQuoteId($session->getQuoteId());
- $session->setPayuCheckoutRealOrderId($session->getLastRealOrderId())
- $order = Mage::getModel('sales/order');
- //$order->loadByIncrementId("100000025");
- $order->loadByIncrementId($session->getLastRealOrderId());
- $order->addStatusToHistory($order->getStatus(), Mage::helper('payucheckout')->__('Customer was redirected to payu.'));
- $order->save();
- $orderId = $order->getRealOrderId();
- $formFields = Mage::getModel('payucheckout/shared')->getFormFields();
- // $formFields=Mage::getModel('payucheckout/shared')->getFormFields();
- //$userInfo=$formFields->getFormFields();
- $key=Mage::getStoreConfig('payment/payucheckout_shared/key');
- $salt=Mage::getStoreConfig('payment/payucheckout_shared/salt');
- $debug_mode=Mage::getStoreConfig('payment/payucheckout_shared/debug_mode'); $url=Mage::getModel('payucheckout/shared')->getPayuCheckoutSharedUrl(); $iframeUrl=Mage::getModel('payucheckout/shared')->getPayuCheckoutIframeUrl();
- $requestData = array();
- $txnid = $orderId;
- //$key = "7xIhPP";
- $requestData['key'] = $formFields['key'] ;
- $requestData['txnid'] = $formFields['txnid'] ;
- $requestData['amount'] = $formFields['amount'] ;
- $requestData['productinfo'] = $formFields['productinfo'] ;
- $requestData['firstname'] = $formFields['firstname'] ;
- $requestData['email'] = $formFields['email'] ;
- $requestData['phone'] = $formFields['phone'] ;
- $requestData['surl'] = $formFields['surl'] ;
- $requestData['furl'] = $formFields['furl'] ;
- //$requestData['curl'] = Mage::getBaseUrl().'payucheckout/shared/canceled/id/'.$order->getRealOrderId();
- $requestData['hash'] = $formFields['Hash'] ;
- $requestData['pg'] = $formFields['Pg'] ;
- $requestData['bankcode'] = "CC";
- // For DEV integration
- // $url = 'https://test.payu.in/_payment.php?type=merchant_txn';
- // For Live integration
- //$url = 'https://secure.payu.in/_payment?type=merchant_txn';
- $response = $this->curlCall($url, http_build_query($requestData));
- // echo "the URL is ".$url."<br /> The data for order id is ".$orderId."is ".$response; exit;
- //$iframeHtml = '<iframe width="700px" height="500px" border="0" src="https://secure.payu.in/_payment.php?type=merchant_txn&txtid='.$response.'&key='.$key.'">
- // For Live Integration
- //$iframeHtml = '<iframe width="700px" height="500px" border="0" src="https://secure.payu.in/_merchantCheckoutPage.php?txtid='.$response.'&key='.$key.'"> ';
- // For Test Integration
- $iframeHtml = '<center><div>Kultureshop Payment Method-</div> <iframe width="900px" height="600px" border="0" src="'.$iframeUrl.'?txtid='.$response["result"].'&key='.$key.'"> </iframe> </center> ';
- $this->getResponse()->setBody($iframeHtml);
- //$session->unsQuoteId();
- // $session->unsLastRealOrderId();
- }
- public function saveShippingMethodAction()
- {
- if ($this->_expireAjax()) {
- return;
- }
- $countryId =Mage::getSingleton('checkout/session')->getQuote()->getShippingAddress()->getData('country_id');
- $shipping=Mage::getSingleton('checkout/session')->getQuote()->getShippingAddress()->getShippingAmount();
- // added by anup to check postal code
- if( $countryId != 'IN' && $shipping =='0' )
- {
- echo "Invalid Postal Code";
- }
- // added by anup to check postal code -ends
- else
- {
- $_POST['shipping_method'] = 'flatrate_flatrate';
- if ($this->getRequest()->isPost()) {
- $data = $this->getRequest()->getPost('shipping_method', '');
- $result = $this->getOnepage()->saveShippingMethod($data);
- /*
- $result will have erro data if shipping method is empty
- */
- if(!$result) {
- Mage::dispatchEvent('checkout_controller_onepage_save_shipping_method',
- array('request'=>$this->getRequest(),
- 'quote'=>$this->getOnepage()->getQuote()));
- $this->getOnepage()->getQuote()->collectTotals();
- $this->getResponse()->setBody(Mage::helper('core')->jsonEncode($result));
- $result['goto_section'] = 'payment';
- $result['update_section'] = array(
- 'name' => 'payment-method',
- 'html' => $this->_getPaymentMethodsHtml()
- );
- }
- $this->getOnepage()->getQuote()->collectTotals()->save();
- $this->getResponse()->setBody(Mage::helper('core')->jsonEncode($result));
- }
- }
- }
- public function savePaymentAction()
- {
- if ($this->_expireAjax()) {
- return;
- }
- try {
- if (!$this->getRequest()->isPost()) {
- $this->_ajaxRedirectResponse();
- return;
- }
- if($_POST['billing']['country_id'] == 'IN')
- {
- $_POST['payment']['method'] = 'payucheckout_shared';
- }
- else
- {
- $_POST['payment']['method'] = 'paypal_standard';
- }
- // set payment to quote
- $result = array();
- $data = $this->getRequest()->getPost('payment', array());
- $result = $this->getOnepage()->savePayment($data);
- // get section and redirect data
- $redirectUrl = $this->getOnepage()->getQuote()->getPayment()->getCheckoutRedirectUrl();
- if (empty($result['error']) && !$redirectUrl) {
- $this->loadLayout('checkout_onepage_review');
- $result['goto_section'] = 'review';
- $result['update_section'] = array(
- 'name' => 'review',
- 'html' => $this->_getReviewHtml()
- );
- }
- if ($redirectUrl) {
- $result['redirect'] = $redirectUrl;
- }
- } catch (Mage_Payment_Exception $e) {
- if ($e->getFields()) {
- $result['fields'] = $e->getFields();
- }
- $result['error'] = $e->getMessage();
- } catch (Mage_Core_Exception $e) {
- $result['error'] = $e->getMessage();
- } catch (Exception $e) {
- Mage::logException($e);
- $result['error'] = $this->__('Unable to set Payment Method.');
- }
- $this->getResponse()->setBody(Mage::helper('core')->jsonEncode($result));
- }
- save: function(){
- if (checkout.loadWaiting!=false) return;
- var validator = new Validation(this.form);
- if (validator.validate()) {
- checkout.setLoadWaiting('billing');
- // if ($('billing:use_for_shipping') && $('billing:use_for_shipping').checked) {
- // $('billing:use_for_shipping').value=1;
- // }
- var request = new Ajax.Request(
- this.saveUrl,
- {
- method: 'post',
- onComplete: this.onComplete,
- onSuccess: this.onSave,
- onFailure: checkout.ajaxFailure.bind(checkout),
- parameters: Form.serialize(this.form)
- }
- );
- }
- },
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement