Пример #1
0
 /**
  * Updates an existing Przedmiot model.
  * If update is successful, the browser will be redirected to the 'view' page.
  * @param integer $id
  * @param integer $kierunekStudiow_id
  * @param integer $user_id
  * @return mixed
  */
 public function actionUpdate($step, $id = null)
 {
     $forModal = null;
     switch ($step) {
         case '1':
             if (!($model = Przedmiot::find()->where(['id' => $id])->one())) {
                 $model = new Przedmiot();
             }
             break;
         case '2':
             $forModal = new Kurs();
             $searchModel = new KursSearch();
             $model = $searchModel->search(['przedmiot_id' => $id]);
             break;
         case '3':
             // wymagania
             if (!($model = Przedmiot::find()->where(['id' => $id])->one())) {
                 $model = new Przedmiot();
             }
             break;
         case '4':
             // celKP
             $forModal = new CelKP();
             $searchModel = new CelKPSearch();
             $model = $searchModel->search(['przedmiot_id' => $id]);
             break;
         case '5':
             // pek
             $forModal = new Pek();
             $searchModel = new PekSearch();
             $model = $searchModel->search(['przedmiot_id' => $id]);
             break;
         case '6':
             // tresci programowe
             $forModal = new TresciProgramowe();
             $searchModel = new TresciProgramoweSearch();
             $model = $searchModel->search(['przedmiot_id' => $id]);
             break;
         case '7':
             // narzedziaDydaktyczne
             $forModal = new NarzedziaDydaktyczne();
             $searchModel = new NarzedziaDydaktyczneSearch();
             $model = $searchModel->search(['przedmiot_id' => $id]);
             break;
         case '8':
             // ocena osiagniecie pek
             $forModal = new Ocena();
             $searchModel = new OcenaSearch();
             $model = $searchModel->search(['przedmiot_id' => $id]);
             break;
         case '9':
             // literatura
             if (!($model = Przedmiot::find()->where(['id' => $id])->one())) {
                 $model = new Przedmiot();
             }
             break;
         case '10':
             // opiekun
             if (!($model = Przedmiot::find()->where(['id' => $id])->one())) {
                 $model = new Przedmiot();
             }
             break;
     }
     if (Yii::$app->user->identity->groupId != 'admin' && Przedmiot::idAutora($id) != Yii::$app->user->identity->id) {
         Yii::trace(Yii::$app->user->identity->groupId);
         Yii::trace(Yii::$app->user->identity->id);
         throw new \yii\base\ErrorException("Nie masz odpowiednich uprawnień do edycji tej karty przedmiotu.");
     } else {
         if ($step != 2 && $step != 4 && $step != 5 && $step != 6 && $step != 7 && $step != 8 && $model->load(Yii::$app->request->post()) && $model->save()) {
             if ($step != 11) {
                 return $this->redirect(['update', 'id' => $id, 'step' => $step]);
                 $step++;
             } else {
                 return $this->redirect(['index']);
             }
         } else {
             if ($step == 4 && $forModal->load(Yii::$app->request->post()) && $forModal->save()) {
                 $forModal = new CelKP();
             } elseif ($step == 2 && $forModal->load(Yii::$app->request->post()) && $forModal->save()) {
                 $forModal = new Kurs();
             } elseif ($step == 5 && $forModal->load(Yii::$app->request->post()) && $forModal->save()) {
                 $forModal = new Pek();
             } elseif ($step == 6 && $forModal->load(Yii::$app->request->post()) && $forModal->save()) {
                 $forModal = new TresciProgramowe();
             } elseif ($step == 7 && $forModal->load(Yii::$app->request->post()) && $forModal->save()) {
                 $forModal = new NarzedziaDydaktyczne();
             } elseif ($step == 8 && $forModal->load(Yii::$app->request->post())) {
                 $forModal->przedmiot_id = $id;
                 $forModal->save();
                 if ($wybranePek = Yii::$app->request->post()['wybranePek']) {
                     foreach ($wybranePek as $pek) {
                         $ocenapek = new OcenaOsiagnieciaPekpek();
                         $ocenapek->pek_id = $pek;
                         $ocenapek->ocenaOsiagnieciaPek_id = $forModal->id;
                         $ocenapek->save();
                     }
                 }
                 $forModal = new Ocena();
             }
         }
         return $this->render('update', ['model' => $model, 'id' => $id, 'step' => $step, 'forModal' => $forModal]);
     }
 }
Пример #2
0
 /**
  * @return \yii\db\ActiveQuery
  */
 public function getOcenaOsiagnieciaPekpeks()
 {
     return $this->hasMany(OcenaOsiagnieciaPekpek::className(), ['ocenaOsiagnieciaPek_id' => 'id']);
 }