public function addAction()
 {
     $request = $this->getRequest();
     $id = $this->params()->fromRoute('id');
     //insert
     if ($id == '') {
         if ($request->isPost()) {
             $data = $this->params()->fromPost();
             $coupon = new Coupon();
             $counponCode = Utility::generateCouponCode();
             $coupon->setCode($counponCode);
             $coupon->setValue($data['Value']);
             $coupon->setType($data['type']);
             $coupon->setIsdelete(0);
             $coupon->setDescription($data['description']);
             $coupon->setFromdate(strtotime($data['fromdate']));
             $coupon->setTodate(strtotime($data['todate']));
             $coupon->setReuse($data['reuse']);
             $this->modelCoupon->insert($coupon);
             //flash
             $this->flashMessenger()->addSuccessMessage("Insert success");
             $this->redirect()->toRoute('admin/child', array('controller' => 'coupon'));
         }
         //insert new user
         return new ViewModel(array('title' => $this->translator->translate('Add New Coupon')));
     } else {
         $coupon = $this->modelCoupon->findOneBy(array('id' => $id));
         if ($request->isPost()) {
             $data = $this->params()->fromPost();
             //                print_r($data);
             $idFormPost = $data['id'];
             $coupon = $this->modelCoupon->findOneBy(array('id' => $idFormPost));
             $coupon->setCode($data['code']);
             $coupon->setValue($data['Value']);
             $coupon->setType($data['type']);
             $coupon->setDescription($data['description']);
             $coupon->setFromdate(strtotime($data['fromdate']));
             $coupon->setTodate(strtotime($data['todate']));
             $coupon->setIsdelete(0);
             $coupon->setReuse($data['reuse']);
             $this->modelCoupon->edit($coupon);
             //flash
             $this->flashMessenger()->addSuccessMessage("Update success");
             $this->redirect()->toRoute('admin/child', array('controller' => 'coupon'));
         }
         return new ViewModel(array('data' => $coupon, 'title' => $this->translator->translate('Edit coupon:')));
     }
 }