/** * Creates a new ProyectoAccionEspecifica model. * For ajax request will return json object * and for non-ajax request if creation is successful, the browser will be redirected to the 'view' page. * @return mixed */ public function actionCreate($proyecto) { $request = Yii::$app->request; $model = new ProyectoAccionEspecifica(); $model->id_proyecto = $proyecto; $model->estatus = 1; //lista desplegable $unidadEjecutora = UnidadEjecutora::find()->all(); $unidadMedida = UnidadMedida::find()->all(); if ($request->isAjax) { /* * Process for ajax request */ Yii::$app->response->format = Response::FORMAT_JSON; if ($request->isGet) { return ['title' => "Nueva Acción Específica", 'content' => $this->renderAjax('create', ['model' => $model, 'unidadEjecutora' => $unidadEjecutora, 'unidadMedida' => $unidadMedida]), 'footer' => Html::button('Cerrar', ['class' => 'btn btn-default pull-left', 'data-dismiss' => "modal"]) . Html::button('Crear', ['class' => 'btn btn-success', 'type' => "submit"])]; } else { if ($model->load($request->post()) && $model->save()) { return ['forceReload' => '#especifica-pjax', 'title' => "Nueva Acción Específica", 'content' => '<span class="text-success">Creada exitosamente.</span>', 'footer' => Html::button('Cerrar', ['class' => 'btn btn-default pull-left', 'data-dismiss' => "modal"]) . Html::a('Crear otra', ['create', 'proyecto' => $proyecto], ['class' => 'btn btn-primary', 'role' => 'modal-remote'])]; } else { return ['title' => "Nueva Acción Específica", 'content' => $this->renderAjax('create', ['model' => $model, 'unidadEjecutora' => $unidadEjecutora, 'unidadMedida' => $unidadMedida]), 'footer' => Html::button('Cerrar', ['class' => 'btn btn-default pull-left', 'data-dismiss' => "modal"]) . Html::button('Crear', ['class' => 'btn btn-success', 'type' => "submit"])]; } } } else { /* * Process for non-ajax request */ if ($model->load($request->post()) && $model->save()) { return $this->redirect(['view', 'id' => $model->id]); } else { return $this->render('create', ['model' => $model, 'unidadEjecutora' => $unidadEjecutora, 'unidadMedida' => $unidadMedida]); } } }