public function actionAdd($id = 0) { if (!empty($id)) { $Custom = Custom::model()->findByPk($id); if (!Yii::app()->user->checkAccess('admin') && ((Yii::app()->getUser()->getProfile()->modules->head != UserModules::DIRECTOR_COMPANY || Yii::app()->user->getProfile()->company_id != $Custom->user->company_id) && (Yii::app()->getUser()->getProfile()->modules->customs != '1' || $Custom->user_id != Yii::app()->user->id) || Yii::app()->getUser()->getProfile()->company->active == '0')) { throw new CHttpException(403); } $ContentManager = null; } else { if (Yii::app()->user->getProfile()->content_manager == '0') { if (!Yii::app()->user->checkAccess('admin') && (Yii::app()->getUser()->getProfile()->modules->head != UserModules::DIRECTOR_COMPANY && Yii::app()->getUser()->getProfile()->modules->customs != '1' || Yii::app()->getUser()->getProfile()->company->active == '0')) { throw new CHttpException(403); } elseif (!Yii::app()->getUser()->getProfile()->company->validate) { $this->redirect('/complete'); } $ContentManager = null; } else { $ContentManager = new ContentManager(); } $Custom = new Custom(); } $contacts = User::getContact(); if (!empty($_POST)) { if (!empty($_POST['Custom']['custom_id'])) { $Custom = Custom::model()->findByPk($_POST['Custom']['custom_id']); } else { $Custom = new Custom(); } $Custom->setAttributes($_POST['Custom'], false); if (Yii::app()->user->getProfile()->content_manager == '1' && $id == 0) { $ContentManager->setAttributes($_POST['ContentManager'], false); } if (!$Custom->validate()) { Yii::import('bootstrap.widgets.TbActiveForm'); if ($ContentManager) { echo TbActiveForm::validate(array($Custom, $ContentManager)); } else { echo TbActiveForm::validate(array($Custom)); } Yii::app()->end(); } else { if (Yii::app()->user->getProfile()->content_manager == '1' && $id == 0) { $Custom->user_id = User::createFakeUser($ContentManager); $Custom->contact_id = $Custom->user_id; } $Custom->save(); $Custom->setPacking($Custom->custom_id, $_POST['Custom']['packing_id']); $Custom->autosearch(); echo CJSON::encode(array('status' => '500', 'redirect' => '/customsaddsuccess/' . $Custom->custom_id)); Yii::app()->end(); } } $this->render('add', ['Custom' => $Custom, 'contacts' => $contacts, 'ContentManager' => $ContentManager]); }