Ejemplo n.º 1
0
 public function RegistrarInscripcion(&$Persona, $DetalleInscripcion)
 {
     //verificamos si existe la parsona;
     $flag;
     $aux = Persona::find()->where(['ci' => $Persona->ci])->one();
     $DetalleInscripcion = DynamicFormModel::createMultiple(InscripcionExamen::className());
     DynamicFormModel::loadMultiple($DetalleInscripcion, Yii::$app->request->post());
     $valid = $Persona->validate();
     $valid = DynamicFormModel::validateMultiple($DetalleInscripcion) && $valid;
     if ($aux != null) {
         $Persona = $aux;
     } else {
         $Persona->eliminado = 0;
         $flag = $Persona->save(false);
     }
     foreach ($DetalleInscripcion as $i => $DetalleInscripcion) {
         //$DetalleInscripcion->idAlumno = $Persona;
         $DetalleInscripcion->fecha_inscripcion = date('Y-m-d H:i:s');
         $DetalleInscripcion->eliminado = 0;
         if (!($flag = $DetalleInscripcion->save(false))) {
             $transaction->rollBack();
             return false;
         }
         $DetalleInscripcion->link('idAlumno', $Persona);
     }
     return true;
 }
Ejemplo n.º 2
0
 public function actionGuardarRespuesta()
 {
     $id_inscripcion = Yii::$app->session->get('id_inscripcion');
     $respuestasAlumno = DynamicFormModel::createMultiple(RespuestaAlumno::className());
     DynamicFormModel::loadMultiple($respuestasAlumno, Yii::$app->request->post());
     $valid = DynamicFormModel::validateMultiple($respuestasAlumno);
     if ($valid) {
         $negocio = new RespuestaExamenNegocio();
         $negocio->guardarRespuestasAlumno($respuestasAlumno, $id_inscripcion);
     }
     Yii::$app->session->remove('id_inscripcion');
     Yii::$app->session->close();
     return $this->redirect(['index']);
 }
Ejemplo n.º 3
0
 /**
  * Creates a new Pregunta model.
  * If creation is successful, the browser will be redirected to the 'view' page.
  * @return mixed
  */
 public function actionCreate()
 {
     $model = new Pregunta();
     $modelRespuestaExamen = [new RespuestaExamen()];
     $model->load(Yii::$app->request->post());
     $modelRespuestaExamen = DynamicFormModel::createMultiple(RespuestaExamen::className());
     DynamicFormModel::loadMultiple($modelRespuestaExamen, Yii::$app->request->post());
     $valid = $model->validate() && DynamicFormModel::validateMultiple($modelRespuestaExamen);
     if ($valid) {
         $this->negocio->savePregunta1($model, $modelRespuestaExamen);
         $dataProvider = new ActiveDataProvider(['query' => RespuestaExamen::find()->where(['id_pregunta' => $model->id])->orderBy('id')]);
         return $this->redirect(['view', 'id' => $model->id, 'dataProvider' => $dataProvider]);
     } else {
         return $this->render('create', ['model' => $model, 'modelRespuestaExamen' => empty($modelsRespuestaExamen) ? [new RespuestaExamen()] : $modelsRespuestaExamen]);
     }
 }
Ejemplo n.º 4
0
 public function updatePregunta($model)
 {
     $modelRespuestaExamen = $model->respuestaExamens;
     $oldIDs = ArrayHelper::map($modelRespuestaExamen, 'id', 'id');
     $modelRespuestaExamen = DynamicFormModel::createMultiple(RespuestaExamen::classname(), $modelRespuestaExamen);
     DynamicFormModel::loadMultiple($modelRespuestaExamen, Yii::$app->request->post());
     $deletedIDs = array_diff($oldIDs, array_filter(ArrayHelper::map($modelRespuestaExamen, 'id', 'id')));
     if ($model->validate() && DynamicFormModel::validateMultiple($modelRespuestaExamen)) {
         $transaction = Yii::$app->db->beginTransaction();
         try {
             $model->file = UploadedFile::getInstance($model, 'file');
             if ($model->file != NULL) {
                 $this->getImagePregunta($model);
             }
             if ($model->save(false)) {
                 if ($model->file != NULL) {
                     $model->file->saveAs($model->imagen);
                 }
                 //                    if (! empty($deletedIDs)) {
                 //                        RespuestaExamen::deleteAll(['id' => $deletedIDs]);
                 //                    }
                 foreach ($modelRespuestaExamen as $i => $modelRespuestaExamen) {
                     $modelRespuestaExamen->imgfile = UploadedFile::getInstance($modelRespuestaExamen, "[{$i}]imgfile");
                     if ($modelRespuestaExamen->imgfile != NULL) {
                         $this->getImageRespuesta($modelRespuestaExamen);
                     }
                     if (!($flag = $modelRespuestaExamen->save(false))) {
                         $transaction->rollBack();
                         return false;
                     }
                     $modelRespuestaExamen->link('idPregunta', $model);
                     if ($modelRespuestaExamen->imgfile != NULL) {
                         $modelRespuestaExamen->imgfile->saveAs($modelRespuestaExamen->imagen);
                     }
                 }
             }
             $transaction->commit();
             return true;
         } catch (Exception $e) {
             print_r($e);
             $transaction->rollBack();
             return false;
         }
     } else {
         return false;
     }
 }