Ejemplo n.º 1
0
 public function actionEnroll()
 {
     $enrollmentModel = new Enrollment();
     $userCourseEnrollmentModel = new UserCourseEnrollment();
     $courseModel = new Course();
     $userCourseEnrollmentModel->scenario = "enroll";
     if (isset($_POST['Enrollment']) && isset($_POST['UserCourseEnrollment']) && isset($_POST['Course'])) {
         $enrollmentModel->attributes = $_POST['Enrollment'];
         $userCourseEnrollmentModel->attributes = $_POST['UserCourseEnrollment'];
         $courseModel->attributes = $_POST['Course'];
         $courseModel->course_code = $userCourseEnrollmentModel->course_code;
         //var_dump($courseModel);
         //echo $courseModel->exists('course_code=:code',array('code'=>$courseModel->course_code));
         $transaction = Enrollment::model()->dbConnection->beginTransaction();
         try {
             $enrollmentModel->datetime_created = new CDbExpression('now()');
             if ($enrollmentModel->save()) {
                 $userCourseEnrollmentModel->enrollment_id = $enrollmentModel->uid;
                 $userCourseEnrollmentModel->enrolled_by = Yii::app()->getUser()->getId();
                 if ($userCourseEnrollmentModel->save()) {
                     $transaction->commit();
                     $userCourseEnrollmentModel->refresh();
                     Yii::app()->user->setFlash('success', strtr('The Student was Enrolled in {course_code} assigned successfully.', array('{course_code}' => $courseModel->course_code)));
                     $this->render('view', array('model' => $userCourseEnrollmentModel));
                     Yii::app()->end();
                 } else {
                     $transaction->rollback();
                 }
             }
         } catch (Exception $ex) {
             $transaction->rollback();
         }
     }
     $this->render('enroll', array('enrollmentModel' => $enrollmentModel, 'userCourseEnrollmentModel' => $userCourseEnrollmentModel, 'courseModel' => $courseModel));
 }