public function run() { $params = array(); $criteria = new CDbCriteria(); // $criteria->select = array('id,username,fullname,phone,address,status'); $criteria->select = '*'; if (isset($this->course_id) and $this->course_id != '') { $criteria->addCondition('course_id=' . $this->course_id); } $criteria->addCondition('status=1'); $criteria->params = $params; $total = WCourseTrainee::model()->count($criteria); $offset = $this->limit * ($this->page - 1); $criteria->limit = $this->limit; $criteria->offset = $offset; $data = WCourseTrainee::model()->findAll($criteria); $listTrainee = array(); if (!empty($data)) { foreach ($data as $item) { $listTrainee[] = CJSON::decode(CJSON::encode($item->pls_user)); } } $data = $listTrainee; $pages = new CPagination($total); $pages->pageSize = $this->limit; $pages->applyLimit($criteria); $this->render($this->view, array('data' => $data, 'pages' => $pages)); }
public function actionLoadMores() { // action loadmore //sanitize post value $data = array(); if (isset($_POST["page"])) { $page_number = filter_var($_POST["page"], FILTER_SANITIZE_NUMBER_INT, FILTER_FLAG_STRIP_HIGH); } else { $page_number = 0; } //throw HTTP error if page number is not valid if (!is_numeric($page_number)) { header('HTTP/1.1 500 Invalid page number!'); $this->redirect('/'); } //get current starting point of records $position = $page_number * Params::$coursePerPage; //Limit our results within a specified range. $traineelist = new WCourseTrainee(); $results = $traineelist->getListCourses($position, Params::$coursePerPage); //var_dump($results);die; $data = $this->renderPartial('index', array('traineelist' => $results), true); // var_dump($data);die; echo $data; }
public function actionPosttest() { $cs = Yii::app()->getClientScript(); $cs->registerCssFile(Yii::app()->theme->baseUrl . '/css/jquery-ui.css?ver=' . time()); $cs->registerCssFile(Yii::app()->theme->baseUrl . '/css/dialog.css?ver=' . time()); //$cs->registerCssFile(Yii::app()->theme->baseUrl.'/css/jquery.countdown.css?ver='.time()); $cs->registerScriptFile(Yii::app()->theme->baseUrl . '/js/jquery.simplemodal-1.4.4.js', CClientScript::POS_END); $cs->registerScriptFile(Yii::app()->theme->baseUrl . '/js/jquery-ui.js'); $cs->registerScriptFile(Yii::app()->theme->baseUrl . '/js/jquery.slimscroll.min.js'); $data = WCourseLecture::MyTest($test_id = NULL, $course_id = NULL, $lecture_id = NULL, 2); //$testLectureOk = WUserTest::getTestByLectureLog(); $arrCo = WCourseTrainee::getListCourseTrainee(); $this->render('posttest', array('data' => $data, 'listcourse' => $arrCo)); }
/** * Displays a particular model. * @param integer $id the ID of the model to be displayed */ public function actionTraineeViewCourse($id) { if (empty(Yii::app()->user->id)) { $this->redirect(Yii::app()->createUrl('')); } $dataCourseLecture = array(); $listTrainee = array(); $db = Yii::app()->db; if (!empty($id)) { $data = WCourseLecture::model()->findAll('course_id=' . $id . ' ORDER BY start_date ASC'); $data = CJSON::decode(CJSON::encode($data)); $course_data = WCourse::getDetailCourse($id); if (!empty($data)) { foreach ($data as $key => $item) { if (!empty($item["lecture_id"])) { $lectureDetails = WLecture::model()->find('id=' . $item['lecture_id']); if (!empty($lectureDetails)) { $category = $lectureDetails->category; $lectureDetails = CJSON::decode(CJSON::encode($lectureDetails)); $dataCourseLecture[$item['id']] = $item; $dataCourseLecture[$item['id']]['details'] = $lectureDetails; $dataCourseLecture[$item['id']]['cat_name'] = $category->cat_name; $dataCourseLecture[$item['id']]['PreTest'] = FALSE; if (strtotime($course_data["end_date"]) < strtotime($item["end_date"])) { $dataCourseLecture[$item['id']]['end_date'] = $course_data["end_date"]; } if (!empty($item['pre_test_id'])) { $comm = $db->createCommand()->select('t.*')->from('pls_user_test t')->where('course_id=' . $item['course_id'] . ' AND success = 2 AND lecture_id=' . $item['lecture_id'] . ' AND test_id=' . $item['pre_test_id'] . ' AND user_id=' . Yii::app()->user->id); $preTest = $comm->queryRow(); $comm->reset(); if (!empty($preTest)) { $dataCourseLecture[$item['id']]['PreTest'] = TRUE; } } $dataCourseLecture[$item['id']]['Test'] = FALSE; if (!empty($item['test_id'])) { $comm = $db->createCommand()->select('t.*')->from('pls_user_test t')->where('course_id=' . $item['course_id'] . ' AND success=2 AND lecture_id=' . $item['lecture_id'] . ' AND test_id=' . $item['test_id'] . ' AND user_id=' . Yii::app()->user->id); $Test = $comm->queryRow(); $comm->reset(); if (!empty($Test)) { $dataCourseLecture[$item['id']]['Test'] = TRUE; } } } } // Info Pre-Test } } $dataTrainee = WCourseTrainee::model()->findAll('course_id=' . $id); $dataTrainee = CJSON::decode(CJSON::encode($dataTrainee)); if (!empty($dataTrainee)) { foreach ($dataTrainee as $item) { $traineeDetails = WUser::model()->find('id=' . $item['trainee_id']); if (!empty($traineeDetails)) { $traineeDetails = CJSON::decode(CJSON::encode($traineeDetails)); $listTrainee[$traineeDetails['id']]['id'] = $traineeDetails['id']; $listTrainee[$traineeDetails['id']]['course_id'] = $id; $listTrainee[$traineeDetails['id']]['fullname'] = $traineeDetails['fullname']; $listTrainee[$traineeDetails['id']]['username'] = $traineeDetails['username']; } } } } $this->render('trainee/view', array('model' => $this->loadModel($id), 'dataCourseLecture' => $dataCourseLecture, 'listTrainee' => $listTrainee)); }
/** * Returns the data model based on the primary key given in the GET variable. * If the data model is not found, an HTTP exception will be raised. * @param integer $id the ID of the model to be loaded * @return WCourseTrainee the loaded model * @throws CHttpException */ public function loadModel($id) { $model = WCourseTrainee::model()->findByPk($id); if ($model === null) { throw new CHttpException(404, 'The requested page does not exist.'); } return $model; }
public static function listTest($course_id) { $criteria = new CDbCriteria(); $criteria->alias = 'ct'; $criteria->select = 'ct.*'; $criteria->condition = 'ct.course_id=:course_id'; $criteria->params = array(':course_id' => $course_id); $criteria->order = ''; $rs = WCourseTrainee::model()->findAll($criteria); if ($rs) { return $rs; } else { } }
public static function getInfoCourseLectureComment($idcomment, $dataId, $dataType) { $db = Yii::app()->db; $dataNew = array(); $group_id = Yii::app()->session["group_id"]; if ($dataType == "course") { $comm = $db->createCommand()->select('t.*')->from('pls_course t')->where("t.id IS NOT NULL AND t.id=" . $dataId); $data = $comm->queryRow(); if (!empty($data)) { $dataNew[$idcomment]["name"] = 'Course: ' . $data["course_name"]; $url = Yii::app()->createUrl("wCourse/view", array("id" => $data["id"])); switch ($group_id) { case 1: $url = Yii::app()->createUrl("wCourse/view", array("id" => $data["id"], "row" => "comment_row_" . $idcomment)); break; case 2: $url = Yii::app()->createUrl("wCourse/TraineeViewCourse", array("id" => $data["id"], "row" => "comment_row_" . $idcomment)); break; case 3: $url = Yii::app()->createUrl("wCourse/view", array("id" => $data["id"], "row" => "comment_row_" . $idcomment)); break; } $dataNew[$idcomment]["url"] = $url; } } elseif ($dataType == "courselecture") { $comm = $db->createCommand()->select('t.*')->from('pls_lecture t')->where("t.id IS NOT NULL AND t.id=" . $dataId); $data = $comm->queryRow(); if (!empty($data)) { $url = NULL; switch ($group_id) { case 1: case 3: $url = Yii::app()->createUrl("wLecture/View", array("id" => $data["id"], "row" => "comment_row_" . $idcomment)); break; case 2: $datacourselecture = WCourseLecture::model()->findAll("lecture_id=" . $dataId); $course_lecture_id = NULL; if (!empty($datacourselecture)) { foreach ($datacourselecture as $itemcourelecture) { $modelCourseTrainee = WCourseTrainee::model()->find("course_id=" . $itemcourelecture->course_id . ' AND trainee_id=' . Yii::app()->user->id); if (!empty($modelCourseTrainee)) { $course_lecture_id = $itemcourelecture->id; } } } if (!empty($course_lecture_id)) { $url = Yii::app()->createUrl("wLecture/LectureView", array("course_lecture_id" => $course_lecture_id, "row" => "comment_row_" . $idcomment)); } else { $url = "javascript:;"; } break; /*case 3: $url = Yii::app()->createUrl("wSuperLecture/LectureView",array("course_lecture_id" => $data["id"]));; break;*/ } $dataNew[$idcomment]["name"] = 'Lecture: ' . $data["lecture_name"]; $dataNew[$idcomment]["url"] = $url; } } return $dataNew; }
?> </p></td> </tr> </table> </div> </div> </div> </div> <div class="container-fluid"> <h3 class="my_profiles" style="margin-left: 0px;"><?php echo Yii::t('web/home', 'Course History'); ?> </h3> <div class="col-md-12"> <?php $data_course = WCourseTrainee::getAllCourseTrainee($data['id']); if (!empty($data_course)) { $i = 0; foreach ($data_course as $value) { ?> <div class="col-md-6 col-sm-6 col-xs-12 list_course_sp" style="padding-left: 0px;"> <?php if (!empty($value['avatar'])) { ?> <img class="col-md-4 col-sm-6 col-xs-12" style="padding-left: 0px;" width="100%" src="<?php echo Yii::app()->params['url_base'] . '/uploads/avatars/course/' . $value['avatar']; ?> " /> <?php } else { ?>
$dataTotalNotifi = WMessageSendto::getTotalReadMessage("notifi"); $totalresgister = WCourseTrainee::getTotalTraineeRegister(); $totalnotifi = count($dataTotalNotifi) + $totalresgister; // Thong Bao Kich Hoat Course (Super) if (Yii::app()->session["group_id"] == 3) { $totalCourseRegister = WCourse::getTotalCourseNoActive(); $totalnotifi = $totalnotifi + $totalCourseRegister; } // Danh sach Course Sap dien ra (Trainee Hoc vien) if (Yii::app()->session["group_id"] == 2) { $courseStart = WCourseTrainee::getCourseStartTrainee(); $totalnotifi = $totalnotifi + count($courseStart); } // Danh sach Course Sap dien ra (Trainer Giao Vien) if (Yii::app()->session["group_id"] == 1) { $courseStartTrainer = WCourseTrainee::getCourseStartTrainer(); $totalnotifi = $totalnotifi + count($courseStartTrainer); } ?> <a href="javascript:;" data-toggle="dropdown" role="button" aria-expanded="false" style="position: relative;"> <img src="<?php echo Yii::app()->theme->baseUrl; ?> /img/notifi.png" /> <?php if ($totalnotifi != 0) { ?> <span class="badge bg-warning" style="position: absolute; background: #E35B5A; top: -7px; right: -7px; font-size: 11px; padding: 3px 6px; "><?php echo !empty($totalnotifi) ? $totalnotifi : 0; ?> </span>
?> <span class="start">Start</span> <?php break; case 5: ?> <span class="complete">Complete</span> <?php break; } ?> </span> </p>--> <?php $checkResgiter = WCourseTrainee::checkRegister($item["id"]); if (empty($checkResgiter)) { ?> <p><button courseId="<?php echo $item['id']; ?> " class="btn btn-danger btn-sm btn_desgin btn_reject" onclick="return RegisterCourse(this);"><?php echo Yii::t('web/home', 'Register Course'); ?> </button> </p> <?php } else { ?> <div class="alert alert-success" style="background-image: none; border: 1px solid #d6e9c6; width: 200px; padding: 3px 20px; color: #3c763d" role="alert"><?php echo Yii::t('web/home', 'Register Pending'); ?>
/** * Trainee thuc hien 1 bai test * @param: $test_id : Test * @param: $course_id: Course **/ public function actionStarttest($test_id, $course_id, $lecture_id) { self::CheckLogin(); $this->layout = '//layouts/main_trainer'; $cs = Yii::app()->getClientScript(); unset($_SESSION['dataQuestionLis']); $cs->registerCssFile(Yii::app()->theme->baseUrl . '/css/jquery-ui.css?ver=' . time()); $cs->registerCssFile(Yii::app()->theme->baseUrl . '/css/dialog.css?ver=' . time()); //$cs->registerCssFile(Yii::app()->theme->baseUrl.'/css/jquery.countdown.css?ver='.time()); $cs->registerScriptFile(Yii::app()->theme->baseUrl . '/js/jquery.simplemodal-1.4.4.js', CClientScript::POS_END); $cs->registerScriptFile(Yii::app()->theme->baseUrl . '/js/jquery-ui.js'); $cs->registerScriptFile(Yii::app()->theme->baseUrl . '/js/jquery.slimscroll.min.js'); //Check trainee co trong khoa hoc hay khong if (WCourseTrainee::CheckTraineeInCourse($course_id) == FALSE) { $this->redirect(Yii::app()->CreateUrl("/")); } $kind = isset($_REQUEST['kind']) ? $_REQUEST['kind'] : ''; $db = Yii::app()->db; $comm = $db->createCommand()->select('t.*,t2.test_cat')->from('pls_test_parent t')->leftJoin('pls_test_cat t2', 't.test_cat_id = t2.id')->where('t.id=' . $test_id); $result = $comm->queryRow(); $dataQuestion = array(); $dataQuestionLib = array(); // Luu Data Question vao 1 mang $dataTestUser = WTestUser::model()->find("id_test_parent=" . $test_id . ' AND course_id=' . $course_id . ' AND lecture_id=' . $lecture_id . ' AND user_id=' . Yii::app()->user->id); if (empty($dataTestUser)) { if (!empty($result["dataconfig"])) { $dataconfig = json_decode($result["dataconfig"], true); $dataQuestionFix = array(); $totalquestion = 0; // Ket noi database $db = Yii::app()->db; $comm = $db->createCommand(); if (isset($dataconfig["datafix"]) and !empty($dataconfig["datafix"])) { $totalquestion += count($dataconfig["datafix"]); if (!empty($result["if_random"])) { $dataNew = array(); $i = 0; $count = count($dataconfig["datafix"]); while ($i < $count) { $indexrandom = array_rand($dataconfig["datafix"]); $dataNew[$i] = $dataconfig["datafix"][$indexrandom]; unset($dataconfig["datafix"][$indexrandom]); $i++; } $dataconfig["datafix"] = $dataNew; } foreach ($dataconfig["datafix"] as $key => $ItemdataquestionFix) { $dataQuestionFix[] = $ItemdataquestionFix["idquestion"]; $dataQuestionLib[$key] = $ItemdataquestionFix; } } ///////////// if (isset($dataconfig["datarandom"]) and !empty($dataconfig["datarandom"])) { foreach ($dataconfig["datarandom"] as $itemdatarandom) { $totalquestion += $itemdatarandom["number_question"]; $point = $itemdatarandom["point_question"] / $itemdatarandom["number_question"]; $comm->reset(); $comm = $comm->select('*')->from('pls_question_lib t'); if (!empty($dataQuestionFix)) { $comm = $comm->where('t.question_cat_id=' . $itemdatarandom["idcate"] . ' AND t.id NOT IN(' . implode(',', $dataQuestionFix) . ')'); } else { $comm = $comm->where('t.question_cat_id=' . $itemdatarandom["idcate"]); } $comm = $comm->order('RAND()')->limit($itemdatarandom["number_question"]); $data = $comm->queryAll(); $dataNew = array(); if (!empty($data)) { foreach ($data as $key => $dataItem) { $dataNew[$key]["idquestion"] = $dataItem["id"]; $dataNew[$key]["point"] = $point; } $dataQuestionLib = array_merge($dataQuestionLib, $dataNew); } } } $dataTestUser = new WTestUser(); $dataTestUser->id_test_parent = $test_id; $dataTestUser->user_id = Yii::app()->user->id; $dataTestUser->dataquestion = json_encode($dataQuestionLib); $dataTestUser->course_id = $course_id; $dataTestUser->lecture_id = $lecture_id; $dataTestUser->kind = $kind; $dataTestUser->save(); } } else { if (!empty($dataTestUser->dataquestion)) { $dataQuestionLib = json_decode($dataTestUser->dataquestion, true); } } $total = count($dataQuestionLib); $kind = isset($_REQUEST['kind']) ? $_REQUEST['kind'] : ''; $model = new WUserTest(); $model->test_id = $test_id; $model->course_id = $course_id; $model->lecture_id = $lecture_id; $model->user_id = Yii::app()->user->id; $model->status = 0; $model->added_date = date('Y-m-d H:i:s'); if ($kind == '' or $kind == 1) { $model->test_kind = 1; } else { $model->test_kind = 0; } //echo $model->test_kind; exit(); $oneut = WUserTest::model()->find('test_id=:test_id and course_id=:course_id and lecture_id=:lecture_id and user_id=:user_id and test_kind=:test_kind', array(':test_id' => $test_id, ':course_id' => $course_id, ':lecture_id' => $lecture_id, ':user_id' => Yii::app()->user->id, ':test_kind' => $model->test_kind)); if (is_null($oneut)) { $model->save(); $user_test_id = $model->id; } else { if ($oneut->status >= 1) { $cl = WCourseLecture::model()->find('course_id=' . $course_id . ' AND lecture_id=' . $lecture_id); if ($kind == 1) { $this->redirect(Yii::app()->createUrl("wLecture/LectureView", array("course_lecture_id" => $cl->id))); } elseif ($kind == 0) { $this->redirect(Yii::app()->createUrl("wCourse/TraineeViewCourse", array("id" => $cl->course_id))); } } $user_test_id = $oneut->id; } $per_page = 1; $page_number = isset($_POST['page']) ? $_POST['page'] : 0; $position = $page_number * $per_page; if (!empty($total)) { $pagination = WFunction::gettab($dataQuestionLib); } else { $pagination = ''; } $this->render('/wTest/trainee/starttest', array('course_id' => $course_id, 'lecture_id' => $lecture_id, 'test' => $result, 'pagination' => $pagination, 'total' => $total, 'kind' => $model->test_kind, "question" => $dataQuestionLib, "user_test_id" => $user_test_id)); }
} ?> </td> </tr> <tr> <td class="tbl_td_left"><?php echo Yii::t('web/home', 'Status'); ?> </td> <td> <?php // thoi gian chua bat dau if (time() > strtotime($item['start_date'])) { // Check user co trong khoa hoc nay khog ? if (WCourseTrainee::checkRegister(intval($_REQUEST['id'])) == 1) { //truong hop ton tai pre-test if (!empty($item["pre_test_id"])) { //chua lam bai test $checkEmptyTEst = WTestParent::model()->find("id=" . $item["pre_test_id"]); if (!empty($checkEmptyTEst)) { if (WUserTest::checkTestStatus($item["course_id"], $item["lecture_id"], $item["pre_test_id"], Yii::app()->user->id, 1) == FALSE) { if (time() > strtotime($item['end_date'])) { echo "<span class='label label-default'>" . Yii::t('web/home', 'Not Finish') . "</span>"; } else { echo "<span style=\"color: #ff6714\">" . Yii::t('web/home', 'Waiting for Pre-test') . "</span> - <a href='" . $url . "'>" . Yii::t('web/home', 'Do Pre-Testing now') . "</a>"; } } else { //Da lam bai test //Chua hoan thanh bai giang if (WTrainingLog::getStatusLearnLecture('r=wlecture/LectureView&course_lecture_id=' . $item['id']) == FALSE) {
/** * Displays a particular model. * @param integer $id the ID of the model to be displayed */ public function actionViewCourse($id) { if (empty(Yii::app()->user->id)) { $this->redirect(Yii::app()->createUrl('')); } $dataCourseLecture = array(); $listTrainee = array(); if (!empty($id)) { $data = WCourseLecture::model()->findAll('course_id=' . $id); $data = CJSON::decode(CJSON::encode($data)); if (!empty($data)) { foreach ($data as $key => $item) { $lectureDetails = WLecture::model()->find('id=' . $item['lecture_id']); if (!empty($lectureDetails)) { $category = $lectureDetails->category; $lectureDetails = CJSON::decode(CJSON::encode($lectureDetails)); $dataCourseLecture[$item['id']] = $item; $dataCourseLecture[$item['id']]['details'] = $lectureDetails; $dataCourseLecture[$item['id']]['cat_name'] = $category->cat_name; } } } $dataTrainee = WCourseTrainee::model()->findAll('course_id=' . $id); $dataTrainee = CJSON::decode(CJSON::encode($dataTrainee)); if (!empty($dataTrainee)) { foreach ($dataTrainee as $item) { $traineeDetails = WUser::model()->find('id=' . $item['trainee_id']); if (!empty($traineeDetails)) { $traineeDetails = CJSON::decode(CJSON::encode($traineeDetails)); $listTrainee[$traineeDetails['id']]['id'] = $traineeDetails['id']; $listTrainee[$traineeDetails['id']]['course_id'] = $id; $listTrainee[$traineeDetails['id']]['fullname'] = $traineeDetails['fullname']; $listTrainee[$traineeDetails['id']]['username'] = $traineeDetails['username']; } } } } $this->render('supervisor/view', array('model' => $this->loadModel($id), 'dataCourseLecture' => $dataCourseLecture, 'listTrainee' => $listTrainee)); }
?> </span></p> <p><span class="col1"><?php echo Yii::t('web/home', 'Total lectures'); ?> :</span><span class="col2 color_cb0303"><?php echo WLecture::getTotalLectureOfTrainer(); ?> </span></p> <p><span class="col1"><?php echo Yii::t('web/home', 'Pendding trainees'); ?> :</span> <span class="col2 color_40b80c"> <?php echo WCourseTrainee::getTotalTraineeRegister(); ?> <a style="font-weight: normal;font-size: 11px;" href="<?php echo Yii::app()->createUrl('wCourseTrainee/Listtraineeall'); ?> ">View list</a> </span> </p> </div> <div class="clear"></div> </div> <div class="chart_trainer_right chart_trainer_item fr"> <img class="fl" src="<?php echo Yii::app()->theme->baseUrl; ?> /img/chart-people.png" />
public function actionRegisterCourse() { $trainee_id = $_POST['trainee_id']; $course_id = $_POST['course_id']; $model = WCourseTrainee::model()->find('trainee_id = ' . $trainee_id . ' AND course_id=' . $course_id); if (empty($model)) { $model = new WCourseTrainee(); $model->trainee_id = $trainee_id; $model->course_id = $course_id; $model->register_date = date('Y-m-d H:i'); $model->status = 0; if ($model->save()) { echo json_encode(array('status' => 'true', 'mess' => 'You have successfully registered. Waiting for activation')); } else { echo json_encode(array('status' => 'false', 'mess' => '')); } } else { echo json_encode(array('status' => 'exists', 'mess' => 'Waiting... for activation')); } }