Example #1
0
 public function actionView($id = null)
 {
     if (!$id) {
         return $this->render('/site/error', ['name' => 'Bad request', 'message' => 'id is not defined']);
     }
     $message['class'] = '';
     $message['text'] = '';
     $model = new TeacherStudent();
     $dataProvider = Teacher::find()->where(['id' => (int) $id]);
     if ($model->load(Yii::$app->request->post()) && $model->validate()) {
         if (TeacherStudent::find()->where(['teacher_id' => $model->teacher_id, 'student_id' => $model->student_id])->count() == 0) {
             $result = $model->save();
         } else {
             $message['class'] = 'danger';
             $message['text'] = 'Ошибка. Пользователь с id ' . $model->student_id . ' уже назначен учителю с id ' . $model->teacher_id . '.';
         }
         if (isset($result) && $result === true) {
             $message['class'] = 'success';
             $message['text'] = 'Ваш запрос успешно выполнен. Пользователь с id ' . $model->student_id . ' назначен учителю с id ' . $model->teacher_id . '.';
         }
     }
     return $this->render('view', ['dataProvider' => $dataProvider, 'model' => $model, 'message' => $message]);
 }
Example #2
0
 /**
  * Add students to teacher
  */
 public function saveTeachers()
 {
     $this->removeTeachers();
     if (!empty($this->teachers)) {
         foreach ($this->teachers as $val) {
             if (is_numeric($val)) {
                 $t_u = new TeacherStudent();
                 $t_u->student_id = $this->id;
                 $t_u->teacher_id = $val;
                 $t_u->save();
             }
         }
     }
     $this->_teachers = ArrayHelper::map($this->teacherStudents, 'name', 'id');
 }
Example #3
0
 /**
  * @return \yii\db\ActiveQuery
  */
 public function getTeacherStudents()
 {
     return $this->hasMany(TeacherStudent::className(), ['student_id' => 'id']);
 }