/** * Update existing route * * @param void * @return null */ function edit() { if ($this->active_tax_rate->isNew()) { $this->httpError(HTTP_ERR_NOT_FOUND); } // if if (!$this->active_tax_rate->canEdit($this->logged_user)) { $this->httpError(HTTP_ERR_FORBIDDEN); } // if $this->wireframe->addPageMessage(lang('Updating of this tax rate will also update all existing invoices. If that is not an option, consider creating a new tax rate'), 'warning'); $tax_rate_data = $this->request->post('tax_rate'); if (!is_array($tax_rate_data)) { $tax_rate_data = array('name' => $this->active_tax_rate->getName(), 'percentage' => $this->active_tax_rate->getPercentage()); } // if $this->smarty->assign('tax_rate_data', $tax_rate_data); if ($this->request->isSubmitted()) { $this->active_tax_rate->setAttributes($tax_rate_data); $save = $this->active_tax_rate->save(); if ($save && !is_error($save)) { flash_success('Tax rate ":name" has been updated', array('name' => $this->active_tax_rate->getName())); $this->redirectTo('admin_tax_rates'); } else { $this->smarty->assign('errors', $save); } // if } // if }
public function actionCreate() { $model = new TaxRate(); $description = new TaxRateDescription(); $this->performAjaxValidation(array($model, $description), 'tax-rate-form'); if (isset($_POST[$this->modelName])) { $model->setAttributes($_POST[$this->modelName]); $description->setAttributes($_POST[$this->modelName . 'Description']); $suc = Yii::t('info', 'TaxRate was successfully created'); $err = Yii::t('info', 'Could not update TaxRate'); $description->tax_rate_id = 0; $description->locale_code = Yii::app()->getLanguage(); if ($model->validate() && $description->validate()) { if ($model->save()) { $description->tax_rate_id = $model->id; $description->save(); Yii::app()->user->setFlash(TbHtml::ALERT_COLOR_SUCCESS, $suc); if (Yii::app()->getRequest()->getIsAjaxRequest()) { $this->renderPartial('_view', array('model' => $model, 'description' => $description), false, true); Yii::app()->end(); } else { $this->redirect(array('view', 'id' => $model->id)); } } else { Yii::app()->user->setFlash(TbHtml::ALERT_COLOR_ERROR, $err); } } else { $description->validate(); } } if (Yii::app()->getRequest()->getIsAjaxRequest()) { $this->renderPartial('_form', array('model' => $model, 'description' => $description), false, true); Yii::app()->end(); } $this->render('create', array('model' => $model, 'description' => $description)); }