protected function ActionPurchaseAction()
 {
     $id = $this->getRequest()->getParam('id') ? $this->getRequest()->getParam('id') : '0';
     if ($this->getRequest()->isPost()) {
         $data = $this->getRequest()->getPost();
         //    		if($data["status"]!=="Paid"){
         //    			if(@$data['payment']=='payment'){
         //     				$update_payment_order = new purchase_Model_DbTable_DbPurchaseVendor();
         //     				$update_payment_order-> updateVendorOrderPayment($data);
         //    			}
         //    			elseif(@$data['Update']=='Update'){
         //    				$update_order = new purchase_Model_DbTable_DbPurchaseVendor();
         //    				$update_order->updateVendorOrder($data);
         //    			}
         //    			$this->_redirect("purchase/index/index");
         //    		}
         //    		else{
         //    			Application_Form_FrmMessage::message("Cann't Edit!Purchase Order Has Been Payment Already");
         //    		    Application_Form_FrmMessage::redirectUrl("/purchase/index/index");
         //    		}
         $update_order = new purchase_Model_DbTable_DbPurchaseVendor();
         if (isset($data["cancel_order"])) {
             if ($data["oldStatus"] != 6) {
                 $update_order->cancelPurchaseOrder($data);
                 Application_Form_FrmMessage::message("You have been cancel purchase order success! ");
                 Application_Form_FrmMessage::redirectUrl("/purchase/index/index");
             } else {
                 Application_Form_FrmMessage::message("Cannot cancel again! Becuase cancel order has been cancel already! ");
                 Application_Form_FrmMessage::redirectUrl("/purchase/index/index");
             }
         } else {
             if (isset($data["Update"]) or $data["update"]) {
                 if ($data["oldStatus"] == 6) {
                     if ($data["status"] == 6) {
                         Application_Form_FrmMessage::message("Cannot cancel again! Becuase cancel order has been cancel already! ");
                     } else {
                         $update_order->updateVendorCancellOrder($data);
                         Application_Form_FrmMessage::message("You has been re-order success!");
                         Application_Form_FrmMessage::redirectUrl("/purchase/index/index");
                     }
                 } else {
                     $update_order->updateVendorStock($data);
                     Application_Form_FrmMessage::message("You have been Update order success! ");
                     //print_r($data);exit();
                     //Application_Form_FrmMessage::redirectUrl("/purchase/index/index");
                 }
             }
         }
         // 		if($data["Update"]=="Update"){
         // 			Application_Form_FrmMessage::message("Cann't Edit!Purchase Order Has Been Payment Already");
         // 			Application_Form_FrmMessage::redirectUrl("/purchase/index/index");
         // 		}
     }
     $user = $this->GetuserInfoAction();
     if ($user["level"] != 1 and $user["level"] != 2) {
         if ($user["level"] == 4) {
             $this->_redirect("purchase/index/index");
         }
         $gb = new Application_Model_DbTable_DbGlobal();
         $exist = $gb->userSaleOrderExist($id, $user["location_id"]);
         if ($exist == "") {
             $this->_redirect("purchase/index/index");
         }
     }
     $purchase = new purchase_Model_DbTable_DbPurchaseOrder();
     $rows = $purchase->purchaseInfo($id);
     $db = new Application_Model_DbTable_DbGlobal();
     $formStock = new Application_Form_purchase();
     $formpurchase_info = $formStock->productOrder($rows);
     Application_Model_Decorator::removeAllDecorator($formpurchase_info);
     // omit default zend html tag
     $this->view->form = $formpurchase_info;
     $this->view->status = $rows["status"];
     //veiw sales order left 23/8/13
     $row_purchase = $purchase->showPurchaseOrder();
     $this->view->product = $row_purchase;
     //get item of this lost
     $orderModel = new purchase_Model_DbTable_DbPurchaseOrder();
     $orderDetail = $orderModel->getPurchaseID($id);
     $this->view->rowsOrder = $orderDetail;
     $session_record_order = new Zend_Session_Namespace('record_order');
     $session_record_order->orderDetail = $orderDetail;
     $session_vendor_info = new Zend_Session_Namespace('vendor_info');
     $session_vendor_info->vendorinfo = $rows;
     //for check if status update
     if ($rows["status"] != 0) {
         $this->_redirect("purchase/advance/advance/id/" . $id);
     }
     // item option in select
     $items = new Application_Model_GlobalClass();
     $itemRows = $items->getProductOption();
     $this->view->itemsOption = $itemRows;
     $formControl = new Application_Form_FrmAction(null);
     $formViewControl = $formControl->AllAction(null);
     Application_Model_Decorator::removeAllDecorator($formViewControl);
     $this->view->control = $formViewControl;
     //for search left
     $search = new purchase_Form_FrmSearch();
     $frmsearch = $search->formSearch();
     Application_Model_Decorator::removeAllDecorator($frmsearch);
     $this->view->get_frmsearch = $frmsearch;
     //for add product;
     $formpopup = new Application_Form_FrmPopup(null);
     $formproduct = $formpopup->popuProduct(null);
     Application_Model_Decorator::removeAllDecorator($formproduct);
     $this->view->form_add_product = $formproduct;
     //for add vendor
     $formvendor = $formpopup->popupVendor(null);
     Application_Model_Decorator::removeAllDecorator($formvendor);
     $this->view->form_vendor = $formvendor;
     //for add location
     $formAdd = $formpopup->popuLocation(null);
     Application_Model_Decorator::removeAllDecorator($formAdd);
     $this->view->form_addstock = $formAdd;
     //for link advane
     $this->view->getorder_id = $id;
 }