コード例 #1
0
ファイル: EmployerController.php プロジェクト: quynhvv/stepup
 public function actionPostJob()
 {
     $model = new Job();
     $model->setScenario('post');
     if ($model->load(Yii::$app->request->post())) {
         if ($model->validate()) {
             //job functions
             $jobFunctions = (array) $model->functions;
             if ($model->function2 && !in_array($model->function2, $jobFunctions)) {
                 array_push($jobFunctions, $model->function2);
             }
             if ($model->function3 && !in_array($model->function3, $jobFunctions)) {
                 array_push($jobFunctions, $model->function3);
             }
             $model->functions = $jobFunctions;
             //job industry
             $jobIndustry = (array) $model->industry;
             if ($model->industry2 && !in_array($model->industry2, $jobIndustry)) {
                 array_push($jobIndustry, $model->industry2);
             }
             $model->industry = $jobIndustry;
             $model->status = Job::STATUS_NEW;
             $model->created_by = Yii::$app->user->getId();
             $model->created_time = new \MongoDate();
             $model->updated_time = new \MongoDate();
             try {
                 if ($model->save()) {
                     //set success flash message
                     Yii::$app->getSession()->setFlash('success', ['type' => 'success', 'duration' => 5000, 'icon' => 'fa fa-users', 'message' => Yii::t($this->module->id, Html::encode('Post job successfully.')), 'title' => Yii::t('app', Html::encode('Success'))]);
                     //redirect to list
                     return $this->redirect(['list-job']);
                 }
             } catch (CDbException $e) {
                 throw new \yii\web\HttpException(405, Yii::t('app', 'Error saving data'));
             } catch (Exception $e) {
                 throw new \yii\web\HttpException(405, Yii::t('app', 'Error saving data'));
             }
         } else {
             $error_messages = array();
             foreach ($model->errors as $attribute => $errors) {
                 foreach ($errors as $error_message) {
                     $error_messages[] = "- " . Yii::t($this->module->id, $error_message);
                 }
             }
             $error_messages = implode('<br/>', $error_messages);
             //set error flash message
             Yii::$app->getSession()->setFlash('danger', ['type' => 'danger', 'duration' => 5000, 'icon' => 'fa fa-users', 'message' => $error_messages, 'title' => Yii::t('app', Html::encode('Errors'))]);
         }
     } else {
         Yii::$app->view->title = Yii::t($this->module->id, 'Post New Job');
         Yii::$app->view->params['breadcrumbs'][] = ['label' => Yii::t($this->module->id, 'Manage Jobs'), 'url' => ['list-job']];
         Yii::$app->view->params['breadcrumbs'][] = Yii::$app->view->title;
     }
     return $this->render('post-job', ['model' => $model]);
 }
コード例 #2
0
ファイル: JobtestController.php プロジェクト: quynhvv/stepup
 /**
  * Creates a new Job model.
  * If creation is successful, the browser will be redirected to the 'view' page.
  * @return mixed
  */
 public function actionCreate()
 {
     $model = new Job();
     if ($model->load(Yii::$app->request->post())) {
         if ($model->save()) {
             if (Yii::$app->request->post('save_type') == 'apply') {
                 return $this->redirect(['update', 'id' => (string) $model->_id]);
             }
             return $this->redirect(['view', 'id' => (string) $model->_id]);
         }
     } else {
         Yii::$app->view->title = Yii::t($this->module->id, 'Create');
         Yii::$app->view->params['breadcrumbs'][] = ['label' => Yii::t($this->module->id, ucfirst($this->module->id)), 'url' => ['index']];
         Yii::$app->view->params['breadcrumbs'][] = Yii::$app->view->title;
         return $this->render('form', ['model' => $model]);
     }
 }