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));
 }
Ejemplo n.º 2
0
 public function actionIndex()
 {
     if (Yii::app()->getUser()->hasRole('teacher')) {
         $instructedRecords = CourseInstructor::model()->with('course')->findAllByAttributes(array('user_id' => Yii::app()->getUser()->getId()));
         $this->render('_teacher_instructed_view', array('instructedRecords' => $instructedRecords));
     } else {
         if (Yii::app()->getUser()->hasRole('student')) {
             $enrolledRecords = UserCourseEnrollment::model()->with('course')->findAllByAttributes(array('user_id' => Yii::app()->getUser()->getId()));
             $this->render('_student_enrolled_view', array('enrolledRecords' => $enrolledRecords));
         } else {
             $this->render('//misc/unavailable', array('messageTitle' => "Page Not Found", 'message' => 'The page you requested could not be found.'));
         }
     }
 }
Ejemplo n.º 3
0
 public function actionCreate()
 {
     $model = new GradedWork();
     $model->createdBy = new User();
     $model->courseGradedWork = new CourseGradedWork();
     $model->scenario = 'create';
     if (isset($_POST['GradedWork'])) {
         $model->attributes = $_POST['GradedWork'];
         $model->courseGradedWork->attributes = $_POST['CourseGradedWork'];
         $model->coursePublished = $_POST['GradedWork']['coursePublished'];
         //var_dump($model->coursePublished);die();
         //$model->createdBy->attributes = $_POST['User'];
         //var_dump($model->courseGradedWork->graded_work_id);die();
         $model->datetime_created = new CDbExpression('now()');
         $model->created_by = Yii::app()->getUser()->getId();
         try {
             $transaction = GradedWork::model()->dbConnection->beginTransaction();
             if ($model->save()) {
                 $model->courseGradedWork->graded_work_id = $model->uid;
                 if ($model->courseGradedWork->save()) {
                     if ($model->coursePublished == 1) {
                         $courseStudents = UserCourseEnrollment::model()->findAllByAttributes(array('course_code' => $model->courseGradedWork->course_code));
                         foreach ($courseStudents as $courseStudent) {
                             $userGradedWork = new UserGradedWork();
                             $userGradedWork->user_id = $courseStudent->user_id;
                             $userGradedWork->graded_work_id = $model->uid;
                             //echo $userGradedWork->graded_work_id;
                             //$userGradedWork->validate(); echo CHtml::errorSummary($userGradedWork);die();
                             if ($userGradedWork->save()) {
                             } else {
                                 $transaction->rollback();
                                 Yii::app()->user->setFlash('failure', 'The Graded Work was not saved. An error occured.');
                             }
                         }
                         if ($transaction->active) {
                             $transaction->commit();
                             Yii::app()->user->setFlash('success', 'The Graded Work was created successfully.');
                             $model->refresh();
                             $this->render('view', array('model' => $model));
                             Yii::app()->end();
                         }
                     } else {
                         $transaction->commit();
                         Yii::app()->user->setFlash('success', 'The Graded Work was created successfully.');
                         $model->refresh();
                         $this->render('view', array('model' => $model));
                         Yii::app()->end();
                     }
                 } else {
                     $transaction->rollback();
                     Yii::app()->user->setFlash('failure', 'The Graded Work was not saved. An error occured.');
                 }
             }
         } catch (Exception $ex) {
             if ($transaction->getActive()) {
                 $transaction->rollback();
                 Yii::app()->user->setFlash('failure', 'The Graded Work was not saved. An error occured.');
             }
         }
         //var_dump($model->attributes);die();
     }
     $this->render('create', array('model' => $model, 'courseGradedWork' => $model->courseGradedWork, 'createdBy' => $model->createdBy));
 }