public function actionWrite()
 {
     if (isset($_POST['Tax'])) {
         $messages = $this->ValidateData(array(array($_POST['Tax']['taxcode'], 'atxemptytaxcode', 'emptystring'), array($_POST['Tax']['taxvalue'], 'atxemptytaxvalue', 'emptystring'), array($_POST['Tax']['description'], 'atxemptydescription', 'emptystring')));
         if ($messages == '') {
             //$dataku->attributes=$_POST['Tax'];
             if ((int) $_POST['Tax']['taxid'] > 0) {
                 $model = $this->loadModel($_POST['Tax']['taxid']);
                 $model->taxcode = $_POST['Tax']['taxcode'];
                 $model->taxvalue = $_POST['Tax']['taxvalue'];
                 $model->description = $_POST['Tax']['description'];
                 $model->recordstatus = $_POST['Tax']['recordstatus'];
             } else {
                 $model = new Tax();
                 $model->attributes = $_POST['Tax'];
             }
             try {
                 if ($model->save()) {
                     $this->DeleteLock($this->menuname, $_POST['Tax']['taxid']);
                     $this->GetSMessage('atxinsertsuccess');
                 } else {
                     $this->GetMessage($model->getErrors());
                 }
             } catch (Exception $e) {
                 $this->GetMessage($e->getMessage());
             }
         }
     }
 }
Beispiel #2
0
 function deleteAction()
 {
     $id = AF::get($_POST, 'id', 0);
     $modelsID = explode(',', $id);
     $errors = FALSE;
     foreach ($modelsID as $id) {
         $model = new Tax();
         $model->model_uset_id = $this->user->user_id;
         if ($model->fillFromDbPk($id)) {
             $model->delete($id);
         } else {
             $errors = TRUE;
         }
         if ($model->getErrors()) {
             $errors = TRUE;
         }
         unset($model);
     }
     if (isset($_POST['ajax'])) {
         AF::setJsonHeaders('json');
         if ($errors) {
             Message::echoJsonError(__('tax_not_deleted'));
         } else {
             $countE = AF::get($_POST, 'countE', 100000);
             // if the delete request came from an update page, we need to redirect
             if (count($modelsID) >= $countE || stripos($_SERVER['HTTP_REFERER'], 'taxes/update') !== false) {
                 $link = AF::link(array('taxes' => 'view'));
                 Message::echoJsonRedirect($link);
             } else {
                 Message::echoJsonSuccess(__('tax_deleted'));
             }
         }
     }
     $this->redirect('view');
     //$this->redirect();
 }
 /**
  * Adds tax to the system
  *
  * @param string $passkey
  * @param int $intNo
  * @param string $strTax
  * @param float $fltMax
  * @param int $blnCompounded
  * @return string
  */
 public function add_tax($passkey, $intNo, $strTax, $fltMax, $blnCompounded)
 {
     if (!$this->check_passkey($passkey)) {
         return self::FAIL_AUTH;
     }
     if ($intNo > 5) {
         _xls_log(sprintf("SOAP ERROR : System can only handle %s number of taxes. Specified %s", 5, $intNo));
         return self::UNKNOWN_ERROR;
     }
     // Loads tax
     $tax = Tax::LoadByLS($intNo);
     if (!$tax) {
         $tax = new Tax();
         $tax->lsid = $intNo;
     }
     $tax->tax = $strTax;
     $tax->max_tax = $fltMax;
     $tax->compounded = $blnCompounded;
     if (!$tax->save()) {
         _xls_log("SOAP ERROR : Error adding tax {$strTax} " . print_r($tax->getErrors(), true));
         return self::UNKNOWN_ERROR . " Error adding tax {$strTax} " . print_r($tax->getErrors(), true);
     }
     return self::OK;
 }
 /**
  * Adds tax to the system
  *
  * @param string $passkey
  * @param int $intNo
  * @param int $intTaxRateId
  * @param string $strTax
  * @param float $fltMax
  * @param int $blnCompounded
  * @return string
  * @throws SoapFault
  * @soap
  */
 public function add_tax($passkey, $intNo, $intTaxRateId, $strTax, $fltMax, $blnCompounded)
 {
     self::check_passkey($passkey);
     //Remove if we have this tax already, just readd
     Tax::model()->deleteAllByAttributes(array('id' => $intTaxRateId));
     Tax::model()->deleteAllByAttributes(array('lsid' => $intNo));
     // Loads tax
     $tax = Tax::LoadByLS($intNo);
     if (!$tax) {
         $tax = new Tax();
         $tax->id = $intTaxRateId;
         $tax->lsid = $intNo;
     }
     $tax->tax = $strTax;
     $tax->max_tax = $fltMax;
     $tax->compounded = $blnCompounded;
     if (!$tax->save()) {
         $strMsg = "Error adding tax {$strTax}";
         Yii::log("SOAP ERROR : {$strMsg} " . print_r($tax->getErrors(), true), CLogger::LEVEL_ERROR, 'application.' . __CLASS__ . "." . __FUNCTION__);
         throw new SoapFault($strMsg, WsSoapException::ERROR_UNKNOWN);
     }
     return self::OK;
 }