Example #1
0
 protected function getRenderData($data = array())
 {
     $data = parent::getRenderData($data);
     $data['url'] = 'https://pagamenti.unicredito.it/initInsert.do?';
     $input['numeroCommerciante'] = $this->params->get('numero_commerciante', '');
     $input['stabilimento'] = $this->params->get('stabilimento', '');
     $input['userID'] = $this->params->get('user_id', '');
     $input['password'] = $this->params->get('password', '');
     $input['numeroOrdine'] = $data['order']->id;
     $input['totaleOrdine'] = floor($data['order']->total * 100);
     $input['valuta'] = $data['order']->getCurrency()->code;
     $input['flagRiciclaOrdine'] = 'Y';
     $input['flagDeposito'] = $this->params->get('flag_deposito', 'Y');
     $input['tipoRispostaApv'] = $this->params->get('redirect', 'wait');
     $input['urlOk'] = $this->app->zoocart->payment->getReturnUrl();
     $input['urlKo'] = $this->app->zoocart->payment->getCancelUrl();
     $input['mac'] = urlencode($this->getMac($input));
     // Fix urlencode and password masking
     $input['urlOk'] = urlencode($input['urlOk']);
     $input['urlKo'] = urlencode($input['urlKo']);
     $input['password'] = '******';
     $vars = array();
     foreach ($input as $key => $value) {
         $vars[] = $key . '=' . $value;
     }
     $data['url'] .= implode('&', $vars);
     $data['postback_url'] = $this->app->zoocart->payment->getCallbackUrl('pagonline');
     $data['auto'] = $this->params->get('auto', 1);
     $data = array_merge($data, $input);
     return $data;
 }
Example #2
0
 public function render($data = array())
 {
     $app = App::getInstance('zoo');
     $data['order']->state = $app->zoocart->getConfig()->get('payment_pending_orderstate', 4);
     $app->zoocart->table->orders->save($data['order']);
     return parent::render($data);
 }
Example #3
0
 /**
  * Get data, needed for rendering payment form
  *
  * @param array $data
  * @return array
  */
 protected function getRenderData($data = array())
 {
     $data = parent::getRenderData($data);
     $sitename = JFactory::getApplication()->getCfg('sitename', '');
     $data['public_key'] = $this->_getPublicKey();
     $data['order_id'] = $data['order']->id;
     $data['callback_url'] = $this->app->zoocart->payment->getCallbackUrl('stripe', 'html');
     $data['cardholder'] = $this->app->user->get()->name;
     $data['amount'] = (int) ($data['order']->total * 100);
     $data['currency'] = strtolower($data['order']->getCurrency()->code);
     $data['description'] = ucfirst($sitename) . ' ' . lcfirst(JText::_('PLG_ZOOCART_ORDER')) . ' #' . (int) $data['order_id'];
     return $data;
 }
Example #4
0
 /**
  * Get data for rendiring in payment request form
  *
  * @param array $data
  * @return array
  */
 protected function getRenderData($data = array())
 {
     $user = JFactory::getUser();
     $data = parent::getRenderData($data);
     $data['url'] = 'https://www.2checkout.com/checkout/spurchase';
     $data['sid'] = $this->params->get('sid', '');
     $data['x_receipt_link_url'] = $this->app->zoocart->payment->getCallbackUrl('2checkout', 'html');
     $data['name'] = $user->name;
     $data['email'] = $user->email;
     $data['billing_address'] = $data['order']->getBillingAddress();
     $data['shipping_address'] = $data['order']->getShippingAddress();
     $data['content'] = $this->renderOrderDetails($data['order']);
     $data['auto'] = $this->params->get('auto', 1);
     return $data;
 }
Example #5
0
 /**
  * Prepare data for rendering payment form
  *
  * @param array $data
  * @return array
  */
 protected function getRenderData($data = array())
 {
     $data = parent::getRenderData($data);
     $zoo = App::getInstance('zoo');
     $data['url'] = $zoo->zoocart->payment->getCallbackUrl('paypalpro', 'html');
     $data['order_id'] = $data['order']->id;
     // User personal data:
     if ($user = $this->app->user->get()) {
         $personals = explode(' ', $user->name);
         $data['firstname'] = empty($personals[0]) ? $personals[0] : '';
         $data['lastname'] = empty($personals[1]) ? $personals[1] : '';
     } else {
         $data['firstname'] = '';
         $data['lastname'] = '';
     }
     return $data;
 }
Example #6
0
 protected function getRenderData($data = array())
 {
     $data = parent::getRenderData($data);
     $data['test'] = $this->params->get('test', 0);
     if ($data['test']) {
         $data['url'] = 'https://www.sandbox.paypal.com/cgi-bin/webscr';
         $data['account'] = $this->params->get('test_account', '');
     } else {
         $data['url'] = 'https://www.paypal.com/cgi-bin/webscr';
         $data['account'] = $this->params->get('account', '');
     }
     $zoo = App::getInstance('zoo');
     $data['currency'] = $data['order']->getCurrency()->code;
     $data['custom'] = $data['order']->id;
     $data['item_number'] = $data['order']->id;
     $data['item_name'] = JText::_('PLG_ZOOCART_ORDER') . ' ' . $data['order']->id;
     $data['amount'] = $data['order']->subtotal;
     $data['tax'] = $data['order']->tax_total;
     $data['return_url'] = $zoo->zoocart->payment->getReturnUrl();
     $data['cancel_url'] = $zoo->zoocart->payment->getCancelUrl();
     $data['postback_url'] = $zoo->zoocart->payment->getCallbackUrl('paypal', 'html');
     $data['auto'] = $this->params->get('auto', 1);
     return $data;
 }
Example #7
0
 protected function getRenderData($data = array())
 {
     $data = parent::getRenderData($data);
     $data['test'] = $this->params->get('test', 0);
     if ($data['test']) {
         $data['merchantid'] = $this->params->get('test_merchantid', '');
         $data['paymentgatewayid'] = $this->params->get('test_paymentgatewayid', '');
         $secretkey = $this->params->get('test_secretkey', '');
         $data['merchantemail'] = $this->params->get('test_merchantemail', '');
         $data['url'] = 'https://test.borgun.is/SecurePay/default.aspx';
     } else {
         $data['merchantid'] = $this->params->get('merchantid', '');
         $data['paymentgatewayid'] = $this->params->get('paymentgatewayid', '');
         $secretkey = $this->params->get('secretkey', '');
         $data['merchantemail'] = $this->params->get('merchantemail', '');
         $data['url'] = 'https://securepay.borgun.is/securepay/default.aspx';
     }
     $data['merchantlogo'] = $this->params->get('merchantlogo', '');
     $data['language'] = $this->params->get('language', '');
     $data['auto'] = $this->params->get('auto', 0);
     $zoo = App::getInstance('zoo');
     $data['returnurlsuccess'] = $zoo->zoocart->payment->getReturnUrl() . '&layout=success';
     $data['returnurlcancel'] = $zoo->zoocart->payment->getCallbackUrl('borgun', 'html') . '&orderid=' . $data['order']->id . '&layout=cancel';
     $data['returnurlsuccessserver'] = $zoo->zoocart->payment->getCallbackUrl('borgun', 'html');
     $data['returnurlerror'] = $zoo->zoocart->payment->getCallbackUrl('borgun', 'html') . '&orderid=' . $data['order']->id . '&layout=error';
     $data['checkhash'] = md5($data['merchantid'] . $data['returnurlsuccess'] . $secretkey);
     $data['orderid'] = $data['order']->id;
     $data['currency'] = $data['order']->getCurrency()->code;
     $data['buyername'] = $this->app->user->get()->name;
     $data['buyeremail'] = $this->app->user->get()->email;
     //Products
     $items = $data['order']->getItems();
     $i = 0;
     foreach ($items as $item) {
         $data['items']["itemdescription_{$i}"] = $item->name;
         $data['items']["Itemcount_{$i}"] = $item->quantity;
         $data['items']["Itemunitamount_{$i}"] = $item->price;
         $data['items']["Itemamount_{$i}"] = $item->price * $item->quantity;
         $i++;
     }
     //Shipping fee
     if ($data['order']->shipping) {
         $data['items']["itemdescription_{$i}"] = JText::_('PLG_ZOOCART_PAYMENT_BORGUN_SHIPPING_FEE_LABEL');
         $data['items']["Itemcount_{$i}"] = 1;
         $data['items']["Itemunitamount_{$i}"] = round($data['order']->shipping, 2);
         $data['items']["Itemamount_{$i}"] = round($data['order']->shipping, 2);
         $i++;
     }
     //Payment fee
     if ($data['order']->payment) {
         $data['items']["itemdescription_{$i}"] = JText::_('PLG_ZOOCART_PAYMENT_BORGUN_FEE_LABEL');
         $data['items']["Itemcount_{$i}"] = 1;
         $data['items']["Itemunitamount_{$i}"] = round($data['order']->payment, 2);
         $data['items']["Itemamount_{$i}"] = round($data['order']->payment, 2);
         $i++;
     }
     //Discount
     if ($data['order']->discount) {
         $data['items']["itemdescription_{$i}"] = JText::_('PLG_ZOOCART_PAYMENT_BORGUN_DISCOUNT_LABEL');
         $data['items']["Itemcount_{$i}"] = 1;
         $data['items']["Itemunitamount_{$i}"] = round(0 - $data['order']->discount, 2);
         $data['items']["Itemamount_{$i}"] = round(0 - $data['order']->discount, 2);
         $i++;
     }
     //Taxes
     if ($data['order']->getTaxTotal()) {
         $data['items']["itemdescription_{$i}"] = JText::_('PLG_ZOOCART_PAYMENT_BORGUN_TAXES_LABEL');
         $data['items']["Itemcount_{$i}"] = 1;
         $data['items']["Itemunitamount_{$i}"] = round($data['order']->getTaxTotal(), 2);
         $data['items']["Itemamount_{$i}"] = round($data['order']->getTaxTotal(), 2);
         $i++;
     }
     $data['amount'] = round($data['order']->total, 2);
     $data['tax'] = round($data['order']->tax_total, 2);
     if (!$data['merchantid'] || !$data['paymentgatewayid'] || !$secretkey) {
         $app = JFactory::getApplication();
         $app->enqueueMessage(JText::_('PLG_ZOOCART_PAYMENT_BORGUN_INVALID_SETTINGS'), 'error');
         $app->redirect(JRoute::_('index.php?option=com_zoolanders&controller=cart'));
     }
     return $data;
 }