public function actionViewlesson($id) { $lesson = $this->loadModel('Lesson', $id); if ($lesson->discipline->id_teacher != Yii::app()->user->id) { throw new CHttpException(403, 'У вас недостаточно прав для выполнения указанного действия.'); } $model = Progress::model()->findAllByAttributes(array('id_lesson' => $id)); if ($model === array()) { throw new CHttpException(404, 'Страница не найдена.'); } if (isset($_POST['Progress'])) { $transaction = Progress::model()->dbConnection->beginTransaction(); try { foreach ($model as $i => $item) { if (isset($_POST['Progress'][$i])) { $item->attributes = $_POST['Progress'][$i]; $item->save(); } } $transaction->commit(); $this->redirect(array('view', 'id' => $lesson->id_discipline)); } catch (Exception $e) { $transaction->rollBack(); } } $this->render('viewlesson', array('model' => $model, 'lesson' => $lesson)); }