Ejemplo n.º 1
0
 function display($tpl = null)
 {
     $orderId = JRequest::getVar('orderid', null);
     $buyerId = JRequest::getVar('buyerid', null);
     //Get Id of current user
     $user = JFactory::getUser();
     $userId = $user->get('id');
     $pointPaid = EnmasseHelper::getPointPaidByOrderId($orderId);
     $totalPrice = EnmasseHelper::getTotalPriceByOrderId($orderId);
     $orderStatus = EnmasseHelper::getOrderStatusByOrderId($orderId);
     //If current user is owner of the order and the order was paid with point
     if ($buyerId == $userId && $pointPaid > 0 && $orderStatus == 'Refunded') {
         $dealName = EnmasseHelper::getDealNameByOrderId($orderId);
         $this->assignRef('dealName', $dealName);
         $this->assignRef('orderId', $orderId);
         $this->assignRef('totalPrice', $totalPrice);
         $this->assignRef('pointPaid', $pointPaid);
         $this->assignRef('buyerId', $buyerId);
         $this->_setPath('template', JPATH_SITE . DS . "components" . DS . "com_enmasse" . DS . "theme" . DS . EnmasseHelper::getThemeFromSetting() . DS . "tmpl" . DS);
         $this->_layout = "point_refund";
         parent::display($tpl);
     } else {
         $link = JRoute::_("index.php?option=com_enmasse&view=deallisting", false);
         JFactory::getApplication()->redirect($link);
     }
 }
Ejemplo n.º 2
0
 function doRefund()
 {
     $post = JRequest::get('post');
     $orderId = $post['orderid'];
     $pointRefund = $post['point'];
     $buyerId = $post['buyerid'];
     //Get Id of current user
     $user = JFactory::getUser();
     $userId = $user->get('id');
     $pointPaid = EnmasseHelper::getPointPaidByOrderId($orderId);
     $totalPrice = EnmasseHelper::getTotalPriceByOrderId($orderId);
     $orderStatus = EnmasseHelper::getOrderStatusByOrderId($orderId);
     $refundedAmount = EnmasseHelper::getRefundedAmountByOrderId($orderId);
     //Check the last time to be sure we do for right buyer and do on a right order
     $pass = true;
     if ($pointRefund == '') {
         $msg = JText::_('INVALID_POINT');
         $pass = false;
     }
     if ($pointPaid < 0) {
         $msg = JText::_('NOT_PAID_WITH_POINT');
         $pass = false;
     }
     if ($pointRefund > $totalPrice) {
         $msg = JText::_('POINT_NOT_GREATE_TOTAL_PRICE');
         $pass = false;
     }
     if ($buyerId != $userId) {
         $msg = JText::_('NOT_OWNER');
         $pass = false;
     }
     if ($refundedAmount != 0) {
         $msg = JText::_('ALREADY_REQUESTED');
         $pass = false;
     }
     if ($pass) {
         if (JModel::getInstance('point', 'enmasseModel')->doRefund($userId, $orderId, $pointRefund)) {
             $msg = JText::_('REFUND_SUCCESSFULLY');
         } else {
             $msg = JText::_('REFUND_FAILED');
         }
         $link = JRoute::_("index.php?option=com_enmasse&controller=point&task=refundForm&orderid=" . $orderId . "&buyerid=" . $buyerid, false);
         JFactory::getApplication()->redirect($link, $msg);
     } else {
         $link = JRoute::_("index.php?option=com_enmasse&controller=point&task=refundForm&orderid=" . $orderId . "&buyerid=" . $buyerid, false);
         JFactory::getApplication()->redirect($link, $msg);
     }
 }