Example #1
0
 public function successAction()
 {
     try {
         //            $userWalletMapper = new Application_Model_UserWalletMapper();
         //            $userWallet = new Application_Model_UserWallet();
         //            $userPackagesMapper = new Application_Model_UserPackagesMapper();
         //            $userPackages = new Application_Model_UserPackages();
         $userTrackMapper = new Application_Model_UserTrackMapper();
         $userTrack = new Application_Model_UserTrack();
         $ordersMapper = new Application_Model_OrdersMapper();
         //            $packagesMapper = new Application_Model_PackagesMapper();
         $userTransactionsMapper = new Application_Model_UserTransactionsMapper();
         $userTransactions = new Application_Model_UserTransactions();
         $request = $this->getRequest();
         $status = $request->getParam("status");
         $fname = $request->getParam("firstname");
         $amount = $request->getParam("amount");
         $txnid = $request->getParam("txnid");
         $posted_hash = $request->getParam("hash");
         $product_info = $request->getParam("productinfo");
         $key = $request->getParam("key");
         $email = $request->getParam("email");
         $code = $request->getParam("bankcode");
         $salt = "dwf1Ltip";
         //test salt
         $salt = "GQs7yium";
         $retHashSeq = $salt . '|' . $status . '|||||||||||' . $email . '|' . $fname . '|' . $product_info . '|' . $amount . '|' . $txnid . '|' . $key;
         $hash = hash("sha512", $retHashSeq);
         $infos = explode("|", $product_info);
         $transaction_type = explode(":", $infos[0]);
         $transaction_type = $transaction_type[1];
         //echo $transaction_type;exit;
         $user_id = explode(":", $infos[1]);
         $user_id = $user_id[1];
         $id = explode(":", $infos[2]);
         $id = $id[1];
         $package_id = explode(":", $infos[3]);
         $package_id = $package_id[1];
         if ($user_id != 0) {
             $userTransactions->__set("trnx_user_id", $user_id);
             $userTransactions->__set("other_details", $transaction_type);
             $userTransactions->__set("gateway_transaction_id", $txnid);
             $userTransactions->__set("trnx_amount", $amount);
             $userTransactions->__set("trnx_method", $code);
             $userTransactions->__set("trnx_status", $status);
             $userTransactions->__set("trnx_order_id", $id);
             $userTransactionsMapper->addNewUserTransaction($userTransactions);
         }
         if ($hash != $posted_hash) {
             throw new Exception("Invalid Transaction");
         } else {
             $flag = TRUE;
             $this->view->flag = $flag;
             if ($transaction_type == "Package") {
                 //echo "in";
                 $package = $packagesMapper->getPackageById($package_id);
                 $number_clothes = $package->__get("no_of_clothes");
                 $number_pickups = $package->__get("no_of_pickups");
                 //echo $number_pickups;exit;
                 $validity = $package->__get("validity");
                 //echo $validity;exit;
                 $zend_date = new Zend_Date();
                 $date = $zend_date->addMonth($validity);
                 $new_date = $date->toString("dd-MM-yyyy");
                 $userTrack->__set("usertrack_user_id", $user_id);
                 $userTrack->__set("track_type", 'package');
                 $userTrack->__set("usertrack_package_id", $package_id);
                 $userTrack->__set("clothes_left", $number_clothes);
                 $userTrack->__set("clothes_availed", $number_clothes);
                 $userTrack->__set("pickups_left", $number_pickups);
                 $userTrack->__set("pickups_availed", $number_pickups);
                 $userTrack->__set("usertrack_start_date", date('Y-m-d'));
                 $userTrack->__set("usertrack_expiry_date", $new_date);
                 if ($userTrackMapper->addNewTrack(addNewTrack)) {
                     $this->view->hasMessage = true;
                     $this->view->messageType = "success";
                     $this->view->message = "Profile Updated successfully";
                 } else {
                     $this->view->hasMessage = true;
                     $this->view->messageType = "danger";
                     $this->view->message = "Error while updating";
                 }
             } elseif ($transaction_type == "Online") {
                 $order = $ordersMapper->getOrderById($id);
                 $order->__set("order_payment_status", "Paid");
                 $ordersMapper->updateOrder($order);
             }
             $this->_redirect('index/orderlist');
         }
     } catch (Exception $e) {
         $e->getMessage();
     }
 }
 public function editAction()
 {
     try {
         //$admins = new Application_Model_Admins;
         $transactionsMapper = new Application_Model_UserTransactionsMapper();
         $request = $this->getRequest();
         $user_transaction_form = new Application_Form_UserTransactionsForm();
         $this->view->form = $user_transaction_form;
         $elements = $user_transaction_form->getElements();
         $transaction_id = $request->getParam("id");
         $secure = new My_Secure();
         $id = $secure->decode($transaction_id);
         $transaction = $transactionsMapper->getUserTransactionById($id);
         foreach ($elements as $element) {
             $element->setValue($transaction->__get($element->getName()));
         }
         if ($request->isPost()) {
             $request_type = $request->getParam("request_type", false);
             if ($request_type) {
                 if ($request_type == "edit") {
                     $params = $request->getParams();
                     if ($user_transaction_form->isValid($params)) {
                         foreach ($params as $param => $value) {
                             $transaction->__set($param, $value);
                         }
                         if ($transactionsMapper->updateUserTransaction($transaction)) {
                             $this->view->message = "Transaction Updated successfully";
                             $this->view->hasMessage = true;
                             $this->view->messageType = "success";
                         } else {
                             $this->view->message = "Error occured while updating. Please try again";
                             $this->view->hasMessage = true;
                             $this->view->messageType = "danger";
                         }
                     } else {
                         $this->view->message = "Error occured while updating. Please fill form correctly";
                         $this->view->hasMessage = true;
                         $this->view->messageType = "danger";
                     }
                 }
             }
         }
         $this->authorised = true;
     } catch (Exception $ex) {
         $this->authorised = false;
         $this->view->hasMessage = true;
         $this->view->messageType = "danger";
         $this->view->message = $ex->getMessage();
     }
 }