public function executeUpdate() { $i18n = new sfI18N(); $i18n->initialize($this->getContext()); $i18n->setCulture($this->getUser()->getCulture()); $action_i18n = $i18n->globalMessageFormat->format('save as new'); $action_type = $this->getRequestParameter('action_type'); if ($action_type == $action_i18n || !$this->getRequestParameter('id')) { $department = new Department(); } else { $department = DepartmentPeer::retrieveByPk($this->getRequestParameter('id')); $this->forward404Unless($department); } $department->setId($this->getRequestParameter('id')); $department->setCode($this->getRequestParameter('code')); $department->setNumCode($this->getRequestParameter('num_code')); $department->setName($this->getRequestParameter('name')); $department->setParent($this->getRequestParameter('parent')); $department->setDescription($this->getRequestParameter('description')); $department->setCourseModel($this->getRequestParameter('course_model')); $department->save(); if ($action_type == $action_i18n || !$this->getRequestParameter('department_detail_id')) { $department_detail = new DepartmentDetail(); } else { $department_detail = DepartmentDetailPeer::retrieveByPk($this->getRequestParameter('department_detail_id')); $this->forward404Unless($department_detail); } $department_detail->setId($this->getRequestParameter('department_detail_id')); $department_detail->setName($this->getRequestParameter('description')); $department_detail->setNss($this->getRequestParameter('nss')); $department_detail->setNis($this->getRequestParameter('nis')); $department_detail->setNds($this->getRequestParameter('nds')); $department_detail->setAccreditation($this->getRequestParameter('accreditation')); $department_detail->setAddress($this->getRequestParameter('address')); $department_detail->setStatus($this->getRequestParameter('status')); $department_detail->setPhone($this->getRequestParameter('phone')); $department_detail->setEmail($this->getRequestParameter('email')); $department_detail->setWebsite($this->getRequestParameter('website')); $department_detail->setRegionId($this->getRequestParameter('region_id')); $department_detail->setCity($this->getRequestParameter('city')); $department_detail->setDistrict($this->getRequestParameter('district')); $department_detail->setSubDistrict($this->getRequestParameter('sub_district')); $department_detail->setPostCode($this->getRequestParameter('post_code')); $department_detail->setDepartment($department); $department_detail->save(); return $this->redirect('department/list'); }