public function actionPopup()
 {
     $str = isset($_POST['user_test_id']) ? $_POST['user_test_id'] : '';
     $arrId = explode('|', $str);
     $user_test_id = $arrId[0];
     $user_id = $arrId[1];
     $arrUserTest = WUserTest::model()->find('id=:id and user_id=:user_id', array(':id' => $user_test_id, ':user_id' => $user_id));
     $arrAns = WUserAnswers::model()->findAll('user_test_id=:user_test_id', array(':user_test_id' => $user_test_id));
     $html = $this->renderPartial('/wUserTest/_popup', array('data' => $arrUserTest, 'userans' => $arrAns, 'user_id' => $user_id, 'user_test_id' => $user_test_id));
     echo $html;
     exit;
 }
 public function actionMarkTest()
 {
     $arrQuestion = isset($_REQUEST["arrQuestion"]) ? $_REQUEST["arrQuestion"] : array();
     $user_test_id = isset($_REQUEST["user_test_id"]) ? $_REQUEST["user_test_id"] : NULL;
     $json = array("result" => "true");
     if (!empty($arrQuestion)) {
         $checkSave = TRUE;
         foreach ($arrQuestion as $itemquestion) {
             $model = WUserAnswers::model()->find("question_id=" . $itemquestion["idquestion"] . ' AND user_test_id=' . $itemquestion["user_test_id"]);
             if (!empty($model)) {
                 $model->point_answer_text = $itemquestion["point_answer_text"];
                 $model->comment_trainer = $itemquestion["comment_question"];
                 if (!$model->save()) {
                     $checkSave = FALSE;
                 }
             }
         }
         if ($checkSave == TRUE) {
             $arrPointQuestion = array();
             // Lay Point cua cau hoi
             $db = Yii::app()->db;
             $comm = $db->createCommand()->select('t.*,t2.test_name')->from('pls_user_test t')->LeftJoin('pls_test_parent t2', 't2.id=t.test_id')->LeftJoin('pls_course t3', 't3.id=t.course_id')->where('t.id=' . $user_test_id . ' AND t3.created_by=' . Yii::app()->user->id);
             $dataUserTest = $comm->queryRow();
             $comm->reset();
             $comm = $db->createCommand()->select('t.*')->from('pls_test_user t')->where('t.id_test_parent=' . $dataUserTest["test_id"] . ' AND user_id=' . $dataUserTest["user_id"] . ' AND kind=' . $dataUserTest["test_kind"] . ' AND t.course_id=' . $dataUserTest["course_id"] . ' AND t.lecture_id=' . $dataUserTest["lecture_id"]);
             $dataTestUser = $comm->queryRow();
             if (!empty($dataTestUser)) {
                 if (!empty($dataTestUser["dataquestion"])) {
                     $dataquestion = json_decode($dataTestUser["dataquestion"], true);
                     if (!empty($dataquestion)) {
                         foreach ($dataquestion as $itemdataquestion) {
                             $arrPointQuestion[$itemdataquestion["idquestion"]]["point"] = $itemdataquestion["point"];
                             $arrPointQuestion[$itemdataquestion["idquestion"]]["answertrue"] = WQuestionAnswerLib::getAnswerTrueQuestion($itemdataquestion["idquestion"]);
                         }
                     }
                 }
             }
             // Select Nhung cau tra loi cua hoc vien
             $comm->reset();
             $comm = $db->createCommand()->select('t.*')->from('pls_user_answers t')->where('t.user_test_id=' . $user_test_id);
             $dataUserAnswer = $comm->queryAll();
             if (!empty($dataUserAnswer)) {
                 foreach ($dataUserAnswer as $itemdataUserAnswer) {
                     $arrPointQuestion[$itemdataUserAnswer["question_id"]]["question_type"] = $itemdataUserAnswer["question_type"];
                     $arrPointQuestion[$itemdataUserAnswer["question_id"]]["question_id"] = $itemdataUserAnswer["question_id"];
                     $arrPointQuestion[$itemdataUserAnswer["question_id"]]["doing"] = $itemdataUserAnswer["doing"];
                     if ($itemdataUserAnswer["question_type"] == 1 or $itemdataUserAnswer["question_type"] == 4) {
                         $arrPointQuestion[$itemdataUserAnswer["question_id"]]["useranswer"] = $itemdataUserAnswer["user_answer_id"];
                     } elseif ($itemdataUserAnswer["question_type"] == 2) {
                         $arrPointQuestion[$itemdataUserAnswer["question_id"]]["useranswer"] = $itemdataUserAnswer["user_answer_text"];
                     }
                     $arrPointQuestion[$itemdataUserAnswer["question_id"]]["point_answer_text"] = $itemdataUserAnswer["point_answer_text"];
                     $arrPointQuestion[$itemdataUserAnswer["question_id"]]["comment_trainer"] = $itemdataUserAnswer["comment_trainer"];
                 }
             }
             // Kiem tra nhung cau tra loi dung
             $dataNew = array();
             $total_point = 0;
             if (!empty($arrPointQuestion)) {
                 foreach ($arrPointQuestion as $key => $itemPointQuestion) {
                     $dataNew[$key] = $itemPointQuestion;
                     if (!empty($itemPointQuestion["answertrue"])) {
                         if ($itemPointQuestion["question_type"] == 4 or $itemPointQuestion["question_type"] == 1) {
                             // Truong hop nhieu dap an
                             $dataAnswer = explode(',', $itemPointQuestion["useranswer"]);
                             $dataAnswerNew = array();
                             foreach ($dataAnswer as $item) {
                                 if (!empty($item)) {
                                     $dataAnswerNew[] = $item;
                                 }
                             }
                             $check = TRUE;
                             if (count($dataAnswerNew) == count($itemPointQuestion["answertrue"])) {
                                 foreach ($dataAnswerNew as $itemdataAnswerNew) {
                                     if (!in_array($itemdataAnswerNew, $itemPointQuestion["answertrue"])) {
                                         $check = FALSE;
                                     }
                                 }
                             } else {
                                 $check = FALSE;
                             }
                             if ($check == TRUE) {
                                 $dataNew[$key]["check"] = "OK";
                                 $total_point += $itemPointQuestion["point"];
                             } else {
                                 $dataNew[$key]["check"] = "NOK";
                             }
                         }
                     }
                     if ($itemPointQuestion["question_type"] == 2) {
                         if (isset($itemPointQuestion["point_answer_text"])) {
                             $total_point += $itemPointQuestion["point_answer_text"];
                         }
                     }
                 }
             }
             // Luu ket qua vao database
             $model = WTestUser::model()->find('user_id=' . $dataUserTest["user_id"] . ' AND id_test_parent=' . $dataUserTest["test_id"] . ' AND kind=' . $dataUserTest["test_kind"] . ' AND course_id=' . $dataUserTest["course_id"] . ' AND lecture_id=' . $dataUserTest["lecture_id"]);
             $model->datafinish = json_encode($dataNew);
             $model->save();
             $modelUserTest = WUserTest::model()->find('id=' . $user_test_id);
             $modelUserTest->pass_score_point = $total_point;
             $modelUserTest->success = 2;
             if ($modelUserTest->save()) {
                 //$testDetails = WTest::model()->find("id=".$test_id);
                 $username = WUser::getFullNameUser($dataUserTest["user_id"]);
                 $trainer = WUser::getFullNameUser(Yii::app()->user->id);
                 $title = "Giáo viên " . $trainer . " đã chấm bài test: " . $dataUserTest["test_name"] . " của bạn";
                 if (!empty($dataUserTest["success"]) and $dataUserTest["success"] == 2) {
                     $title = "Giáo viên " . $trainer . " đã chấm bài lại test: " . $dataUserTest["test_name"] . " của bạn";
                 }
                 $content = "Dear <strong>" . $username . "</strong>";
                 //$content .="<br/>Bài làm Test :".$testDetails->test_name." của bạn đã được Giáo viên: <strong>".$trainer.'</strong> chấm xong';
                 $content .= "<br/>Giáo viên <strong>" . $trainer . '</strong> đã chấm bài: <strong>"' . $dataUserTest["test_name"] . '"</strong> của bạn';
                 $url = Yii::app()->createUrl("wCourseLecture/Viewresult", array("user_test_id" => $dataUserTest["id"]));
                 $content .= "<br/><a href='" . $url . "'>Click Để xem kết quả bài test</a>";
                 WMessage::SendMessage($title, $content, "notifi", Yii::app()->user->id, $dataUserTest["user_id"]);
                 $json = array("result" => "true");
             }
         } else {
             $json = array("result" => "false", "message" => "");
         }
     }
     echo json_encode($json);
 }
 public static function getIDAnswer($question_id, $ut_id)
 {
     $criteria = new CDbCriteria();
     $criteria->distinct = true;
     $criteria->select = 'answer_id';
     $criteria->condition = 'question_id=:question_id and user_test_id=:user_test_id';
     $criteria->params = array(':question_id' => $question_id, ':user_test_id' => $ut_id);
     $rs = WUserAnswers::model()->findAll($criteria);
     if ($rs) {
         $arrId = array();
         foreach ($rs as $r) {
             $arrId[] = $r['answer_id'];
         }
         return $arrId;
     } else {
         return null;
     }
 }
 $data_lecture_id = $item["lecture_id"];
 $data_test_kind = $item["test_kind"];
 $data_test_id = $item["test_id"];
 if (empty($datafinish)) {
     $dataNew = array();
     $totalpointuser = 0;
     foreach ($dataquestion as $key => $itemquestion) {
         $dataNew[$itemquestion["idquestion"]]["point"] = $itemquestion["point"];
         $dataNew[$itemquestion["idquestion"]]["answertrue"] = WQuestionAnswerLib::getAnswerTrueQuestion($itemquestion["idquestion"]);
         $dataNew[$itemquestion["idquestion"]]["question_id"] = $itemquestion["idquestion"];
         $questionDetails = WQuestionLib::getQuestionDetails($itemquestion["idquestion"]);
         if (!empty($questionDetails)) {
             $dataNew[$itemquestion["idquestion"]]["question_type"] = $questionDetails["question_type"];
         }
         //get lai thong tin dap an hoc vien
         $dataUserAnswer = WUserAnswers::getDataUserAnswer($user_test_id, $itemquestion["idquestion"], $data_user_id);
         $answer = array();
         $dataNew[$itemquestion["idquestion"]]["doing"] = (isset($dataUserAnswer["doing"]) and !empty($dataUserAnswer["doing"])) ? $dataUserAnswer["doing"] : 0;
         if ($dataUserAnswer["question_type"] == 2) {
             $dataNew[$itemquestion["idquestion"]]["useranswer"] = $dataUserAnswer["user_answer_text"];
             $dataNew[$itemquestion["idquestion"]]["comment_trainer"] = $dataUserAnswer["comment_trainer"];
             $dataNew[$itemquestion["idquestion"]]["point_answer_text"] = $dataUserAnswer["point_answer_text"];
             $totalpointuser += $dataNew[$itemquestion["idquestion"]]["point_answer_text"];
         } elseif ($dataUserAnswer["question_type"] == 1 or $dataUserAnswer["question_type"] == 4) {
             if (!empty($dataUserAnswer) and !empty($dataUserAnswer["user_answer_id"])) {
                 $dataNew[$itemquestion["idquestion"]]["useranswer"] = $dataUserAnswer["user_answer_id"];
                 $answer = explode(",", $dataUserAnswer["user_answer_id"]);
                 $dataAnswerNew = array();
                 foreach ($answer as $itemanswer) {
                     if (!empty($itemanswer)) {
                         $dataAnswerNew[] = $itemanswer;
             <?php 
 $dataquestion = !empty($data["dataquestion"]) ? json_decode($data["dataquestion"], true) : array();
 $datafinish = !empty($data["datafinish"]) ? json_decode($data["datafinish"], true) : array();
 if (empty($datafinish)) {
     $dataNew = array();
     $totalpointuser = 0;
     foreach ($dataquestion as $key => $itemquestion) {
         $dataNew[$itemquestion["idquestion"]]["point"] = $itemquestion["point"];
         $dataNew[$itemquestion["idquestion"]]["answertrue"] = WQuestionAnswerLib::getAnswerTrueQuestion($itemquestion["idquestion"]);
         $dataNew[$itemquestion["idquestion"]]["question_id"] = $itemquestion["idquestion"];
         $questionDetails = WQuestionLib::getQuestionDetails($itemquestion["idquestion"]);
         if (!empty($questionDetails)) {
             $dataNew[$itemquestion["idquestion"]]["question_type"] = $questionDetails["question_type"];
         }
         //get lai thong tin dap an hoc vien
         $dataUserAnswer = WUserAnswers::getDataUserAnswer($data["user_test_id"], $itemquestion["idquestion"], $data["user_id"]);
         $answer = array();
         $dataNew[$itemquestion["idquestion"]]["doing"] = !empty($dataUserAnswer["doing"]) ? $dataUserAnswer["doing"] : 0;
         if ($dataUserAnswer["question_type"] == 2) {
             $dataNew[$itemquestion["idquestion"]]["useranswer"] = $dataUserAnswer["user_answer_text"];
             $dataNew[$itemquestion["idquestion"]]["comment_trainer"] = $dataUserAnswer["comment_trainer"];
             $dataNew[$itemquestion["idquestion"]]["point_answer_text"] = $dataUserAnswer["point_answer_text"];
             $totalpointuser += $dataNew[$itemquestion["idquestion"]]["point_answer_text"];
         } elseif ($dataUserAnswer["question_type"] == 1 or $dataUserAnswer["question_type"] == 4) {
             if (!empty($dataUserAnswer) and !empty($dataUserAnswer["user_answer_id"])) {
                 $dataNew[$itemquestion["idquestion"]]["useranswer"] = $dataUserAnswer["user_answer_id"];
                 $answer = explode(",", $dataUserAnswer["user_answer_id"]);
                 $dataAnswerNew = array();
                 foreach ($answer as $item) {
                     if (!empty($item)) {
                         $dataAnswerNew[] = $item;
 public static function checkDoTestText($user_test_id)
 {
     $criteria = new CDbCriteria();
     $criteria->condition = 'user_test_id=:user_test_id and user_answer_text !=:user_answer_text';
     $criteria->params = array(':user_test_id' => $user_test_id, ':user_answer_text' => '');
     $rs = WUserAnswers::model()->findAll($criteria);
     //var_dump($rs);exit();
     if ($rs) {
         return true;
     } else {
         return false;
     }
 }
 public function actionAutoSaveQuestionAnswer()
 {
     $user_test_id = isset($_REQUEST["user_test_id"]) ? $_REQUEST["user_test_id"] : NULL;
     $json = array("result" => "true");
     if (!empty($user_test_id)) {
         $db = Yii::app()->db;
         $comm = $db->createCommand()->select('t.*,t5.fullname,t5.username,t4.total_point,t2.course_name,t3.lecture_name,t4.test_name,
             (SELECT dataquestion FROM pls_test_user WHERE user_id=t.user_id AND id_test_parent=t.test_id AND course_id=t.course_id AND lecture_id=t.lecture_id AND kind=t.test_kind) as dataquestion
             ')->from('pls_user_test t')->leftJoin('pls_course t2', 't2.id=t.course_id')->leftJoin('pls_lecture t3', 't3.id=t.lecture_id')->leftJoin('pls_test_parent t4', 't4.id=t.test_id')->leftJoin('pls_user t5', 't5.id=t.user_id')->where('t.id IS NOT NULL AND t.id=' . $user_test_id . ' AND t.user_id=' . Yii::app()->user->id);
         $result = $comm->queryRow();
         if (!empty($result)) {
             $dataQuestion = (isset($result["dataquestion"]) and !empty($result["dataquestion"])) ? json_decode($result["dataquestion"], true) : array();
             if (!empty($dataQuestion)) {
                 foreach ($dataQuestion as $itemquestion) {
                     $dataQuestion = WQuestionLib::model()->find("id=" . $itemquestion["idquestion"]);
                     $model = WUserAnswers::model()->find("user_id=" . Yii::app()->user->id . " AND test_id=" . $result["test_id"] . " AND user_test_id=" . $user_test_id . " AND question_id=" . $itemquestion["idquestion"]);
                     if (empty($model)) {
                         $model = new WUserAnswers();
                         $model->test_id = $result["test_id"];
                         $model->user_test_id = $user_test_id;
                         $model->question_id = $itemquestion["idquestion"];
                         $model->user_answer_id = ",";
                         $model->question_type = $dataQuestion["question_type"];
                         $model->user_id = Yii::app()->user->id;
                         $model->doing = 0;
                         $model->created_date = date('Y-m-d H:i:s');
                         if (!$model->save()) {
                             $json = array("result" => "false");
                         }
                     }
                 }
             }
         }
     }
     echo json_encode($json);
 }
                <p><span class="col1">Duration: </span><span class="col2"><?php 
echo $test['time_test'];
?>
</span></p>
                <div class="showintro">
                    <?php 
echo $test['introduce'];
?>
                </div>
            </div>
            <div class="clear"></div>
            <div id='timer'>
            <h6>Time remaining:</h6>
            <?php 
$arr_test = WCourseLecture::getTestLectureUser($test['id'], $course_id, $lecture_id);
$timer = WUserAnswers::ShowTimer($arr_test['tstatus'], $arr_test['addedd_date'], $arr_test['time_test'], $test['id'], $course_id, $lecture_id);
?>
            <label id="lblTimer"><?php 
echo $timer;
?>
</label>
            
            </div>
        </div>
        <div class="clear"></div>
        <div class="number_ques" style="width: 100%; float:left; margin-top: 20px; margin-bottom: 20px;">
            <?php 
//echo $str;
?>
            <?php 
echo $pagination;
                                    <div id="rate_<?php 
            echo $i;
            ?>
"></div>
                                    <script>
                                        $(function() {
                                            $( "#rate_<?php 
            echo $i;
            ?>
" ).progressbar({
                                                max: '<?php 
            echo $test['total_point'];
            ?>
',
                                                value: parseInt(<?php 
            echo WUserAnswers::getTotalPoint($arrUT['id']);
            ?>
)  
                                            });
                                        });
                                    </script>
                                </td>
                            </tr>
                                <?php 
        }
        $i++;
    }
} else {
    ?>
                        <tr></tr>
                            <?php 
            if (isset($item->lecture)) {
                echo $item->lecture->lecture_name;
            }
            ?>
</span></p>
                <p><span class="col1">Questions: </span><span class="col2"><?php 
            echo count(WQuestion::model()->findAll('test_id=:test_id', array(':test_id' => $item['test_id'])));
            ?>
</span></p>
                <?php 
            if ($item['success'] == 2) {
                //$oneUT = WUserTest::model()->find('test_id=:test_id and user_id=:user_id', array(':test_id'=> $item->test->id, ':user_id'=>Yii::app()->user->id));
                ?>
                <p><span class="col1">Mark:</span><span class="col2"><b style="font-size: 18px; color:red;"><?php 
                if ($item['pass_score_point'] != '') {
                    echo WUserAnswers::getTotalPoint($item['id']);
                } else {
                    echo 0;
                }
                ?>
/<?php 
                echo $item->test->total_point;
                ?>
 points </b> <?php 
                //echo WCourseLecture::labelStatusMark($item['pass_score_point'], $item->test->total_point)
                ?>
</span></p>
                <?php 
            }
            ?>
            </div>
Exemple #11
0
        $name_ques = $ques['question_text'];
        //$q_id      = $ques['id'];
        if (WUserAnswers::checkAnswer($ques['id'], $ques['question_type'], $user_test_id)) {
            $img = '<img src="' . Yii::app()->theme->baseUrl . '/img/true.png" />';
            $point = $ques['point'];
        } else {
            $img = '<img src="' . Yii::app()->theme->baseUrl . '/img/fail.png" />';
            $point = 0;
        }
        $strChoice .= '<tr><td style="text-align:left;padding-left: 48px;">' . Yii::t('web/home', 'Question') . ' ' . $i . ': ' . $name_ques . '</td><td>' . $img . '</td><td>' . $point . '</td></tr>';
    }
    $i++;
}
$strChoice .= '<tr>
                        <td colspan="2" style="text-align: left;padding-left: 48px;">' . Yii::t('web/home', 'Total') . ':</td>
                        <td><b>' . WUserAnswers::getTotalPoint($user_test_id) . '</b></td>
                    </tr>        
                </tbody>
            </table>';
?>
          
            <?php 
echo $strChoice;
?>
            <?php 
if ($strWrite != '') {
    echo '<h6 style="color: #3ab54a; font-weight: bold;">' . Yii::t('web/home', 'Writing') . ':</h6>';
    echo $strWrite;
    if (Yii::app()->session['group_id'] != 2) {
        ?>
            <div class="mark">Mark: <input type="text" value="<?php 
                    $UA = $answer;
                }
                ?>
                    <div class="view_answer" style="margin-top: 10px;">
                        <textarea class="form-control" rows="2" placeholder="Type your answer" name="txtFree[<?php 
                echo $i;
                ?>
]" style="width:600px;"><?php 
                echo $UA;
                ?>
</textarea>
                    </div>
                    <?php 
            } elseif ($ques['question_type'] == 4) {
                $arrAns = WQuestionAnswer::getAnswerByQuesId($ques['id']);
                $arrUA = WUserAnswers::getIDAnswer($ques['id'], $user_test_id);
                if (!isset($arrUA)) {
                    $arrUA = explode(',', $answer);
                }
                $k = 1;
                foreach ($arrAns as $ans) {
                    if ($ans['answer'] != '') {
                        ?>
                        <p><input type="checkbox" <?php 
                        if (in_array($ans['id'], $arrUA)) {
                            echo "checked";
                        }
                        ?>
 name="chkMulti[<?php 
                        echo $i;
                        ?>
 public function actionDoingtest()
 {
     $per_page = 1;
     $page_number = isset($_POST['page']) ? $_POST['page'] : 0;
     //echo $page_number;
     $test_id = isset($_POST['test_id']) ? $_POST['test_id'] : '';
     $course_id = isset($_POST['course_id']) ? $_POST['course_id'] : '';
     $lecture_id = isset($_POST['lecture_id']) ? $_POST['lecture_id'] : '';
     $oneUT = WUserTest::model()->find('test_id=:test_id and course_id=:course_id and lecture_id=:lecture_id and user_id=:user_id', array(':test_id' => $test_id, ':course_id' => $course_id, ':lecture_id' => $lecture_id, ':user_id' => Yii::app()->user->id));
     $position = ($page_number - 1) * $per_page;
     $total = WQuestion::totalQuestion($test_id);
     $pagination = WFunction::paging_question($total, $per_page);
     $question = WQuestion::listQuestion($test_id, $position, $per_page);
     $nameButton = isset($_POST['nameButton']) ? $_POST['nameButton'] : '';
     $UA = '';
     $arrUA = array();
     if ($nameButton == 'next') {
         $ques_type = isset($_POST['question_type']) ? $_POST['question_type'] : '';
         $ques_id = isset($_POST['question_id']) ? $_POST['question_id'] : '';
         $point = isset($_POST['point']) ? $_POST['point'] : '';
         $total_point = $oneUT['pass_score_point'];
         if ($ques_type == 1) {
             $answer = $_POST['rdAns'];
             //echo $answer;exit();
             if ($answer != '') {
                 $modelUserAnswers = new WUserAnswers();
                 $modelUserAnswers->user_test_id = $oneUT['id'];
                 $modelUserAnswers->question_id = $ques_id;
                 $modelUserAnswers->answer_id = $answer;
                 $modelUserAnswers->user_answer_id = $answer;
                 $modelUserAnswers->user_answer_text = '';
                 $modelUserAnswers->created_date = date('Y-m-d H:i:s');
                 $oneAns = WUserAnswers::model()->find('user_test_id=:user_test_id and question_id=:question_id', array(':user_test_id' => $oneUT['id'], ':question_id' => $ques_id));
                 if (is_null($oneAns)) {
                     $modelUserAnswers->save();
                     //Yii::app()->session['ans_id'.$ques_id] = $modelUserAnswers->id;
                 } else {
                     //echo $oneAns['id'];exit();
                     //$modelUserAnswers->updateByPk($oneAns['id'], array($answer));
                     WUserAnswers::updateUA($oneAns['id'], $answer);
                 }
                 if (WUserAnswers::checkAnswer($ques_id, $ques_type)) {
                     $point_user = $point + $total_point;
                 } else {
                     $point_user = $total_point;
                 }
                 WUserTest::updatePointTrainee($test_id, $course_id, Yii::app()->user->id, $point_user, $ques_type);
             } else {
             }
         } elseif ($ques_type == 4) {
             $stranswer = $_POST['chkAns'];
             $answers = explode(',', $stranswer);
             //var_dump($answers); exit();
             $modelUserAnswersM = new WUserAnswers();
             if (count($answers) > 0) {
                 $arrValues = array();
                 foreach ($answers as $a) {
                     //echo $a.' '.$ques_id;exit();
                     //$modelUserAnswersM->user_test_id = $oneUT['id'];
                     //                        $modelUserAnswersM->question_id = $ques_id;
                     //                        $modelUserAnswersM->answer_id = $a;
                     //                        $modelUserAnswersM->user_answer_id = $a;
                     //                        $modelUserAnswersM->user_answer_text = '';
                     //                        $modelUserAnswersM->created_date  = date('Y-m-d H:i:s');
                     //                        $oneAns1 = WUserAnswers::model()->find(
                     //                                  'user_test_id=:user_test_id and
                     //                                  question_id=:question_id and
                     //                                  answer_id=:answer_id',
                     //                                  array(
                     //                                  ':user_test_id'=> $oneUT['id'],
                     //                                  ':question_id' => $ques_id,
                     //                                  ':answer_id'=> $a
                     //                        ));
                     //                        if(isset($oneAns1)){
                     //                            $modelUserAnswersM->save();
                     //                        }else{
                     //                            WUserAnswers::updateUA($oneAns1['id'], $a);
                     //                        }
                     $arrValues[] = '("", ' . $oneUT['id'] . ', ' . $ques_id . ', ' . $a . ', ' . $a . ', "", "' . date("Y-m-d H:i:s") . '")';
                 }
                 $sql = "INSERT INTO {{user_answers}} (`id`, `user_test_id`, `question_id`, `answer_id`, `user_answer_id`, `user_answer_text`, `created_date`) VALUES " . implode(',', $arrValues) . "";
                 WUserAnswers::insertAnswerM($sql);
                 if (WUserAnswers::checkAnswer($ques_id, $ques_type)) {
                     $point_user = $point + $total_point;
                 } else {
                     $point_user = $total_point;
                 }
                 WUserTest::updatePointTrainee($test_id, $course_id, Yii::app()->user->id, $point_user, $ques_type);
             }
         } elseif ($ques_type == 2) {
             $answer = $_POST['txtFree'];
             if ($answer != '') {
                 $modelUserAnswers = new WUserAnswers();
                 $modelUserAnswers->user_test_id = $oneUT['id'];
                 $modelUserAnswers->question_id = $ques_id;
                 $modelUserAnswers->answer_id = '';
                 $modelUserAnswers->user_answer_id = '';
                 $modelUserAnswers->user_answer_text = $answer;
                 $modelUserAnswers->created_date = date('Y-m-d H:i:s');
                 $oneAns = WUserAnswers::model()->find('user_test_id=:user_test_id and question_id=:question_id', array(':user_test_id' => $oneUT['id'], ':question_id' => $ques_id));
                 if (is_null($oneAns)) {
                     $modelUserAnswers->save();
                 } else {
                     WUserAnswers::updateUA($oneAns['id'], $answer);
                 }
             }
         }
         WUserTest::updateStatusTest($test_id, $course_id, 1);
     } elseif ($nameButton == 'previous') {
         $ques_id = isset($_POST['question_id']) ? $_POST['question_id'] : '';
         $ques_type = isset($_POST['question_type']) ? $_POST['question_type'] : '';
         if ($ques_type == 1 || $ques_type == 2) {
             $UA = WUserAnswers::getIDTextAnswer($ques_id, $oneUT['id'], $ques_type);
             //echo $UA;exit();
         } else {
             $arrUA = WUserAnswers::getIDAnswer($ques_id, $oneUT['id']);
         }
     } elseif ($nameButton == 'finished') {
         $ques_type = isset($_POST['question_type']) ? $_POST['question_type'] : '';
         $ques_id = isset($_POST['question_id']) ? $_POST['question_id'] : '';
         $point = isset($_POST['point']) ? $_POST['point'] : '';
         $total_point = $oneUT['pass_score_point'];
         if ($ques_type == 1) {
             $answer = $_POST['rdAns'];
             if ($answer != '') {
                 $modelUserAnswers = new WUserAnswers();
                 $modelUserAnswers->user_test_id = $oneUT['id'];
                 $modelUserAnswers->question_id = $ques_id;
                 $modelUserAnswers->answer_id = $answer;
                 $modelUserAnswers->user_answer_id = $answer;
                 $modelUserAnswers->user_answer_text = '';
                 $modelUserAnswers->created_date = date('Y-m-d H:i:s');
                 $oneAns = WUserAnswers::model()->find('user_test_id=:user_test_id and question_id=:question_id', array(':user_test_id' => $oneUT['id'], ':question_id' => $ques_id));
                 if (is_null($oneAns)) {
                     $modelUserAnswers->save();
                     //Yii::app()->session['ans_id'.$ques_id] = $modelUserAnswers->id;
                 } else {
                     //echo $oneAns['id'];exit();
                     //$modelUserAnswers->updateByPk($oneAns['id'], array($answer));
                     WUserAnswers::updateUA($oneAns['id'], $answer);
                 }
                 if (WUserAnswers::checkAnswer($ques_id, $ques_type)) {
                     $point_user = $total_point + $point;
                 } else {
                     $point_user = $total_point;
                 }
                 WUserTest::updatePointTrainee($test_id, $course_id, Yii::app()->user->id, $point_user, $ques_type);
             } else {
             }
         } elseif ($ques_type == 4) {
             $stranswer = $_POST['chkAns'];
             $answermm = explode(',', $stranswer);
             $modelUserAnswersMM = new WUserAnswers();
             if (count($answermm) > 0) {
                 $arrValues = array();
                 foreach ($answermm as $a) {
                     //$modelUserAnswersMM->user_test_id = $oneUT['id'];
                     //                        $modelUserAnswersMM->question_id = $ques_id;
                     //                        $modelUserAnswersMM->answer_id = $a;
                     //                        $modelUserAnswersMM->user_answer_id = $a;
                     //                        $modelUserAnswersMM->user_answer_text = '';
                     //                        $modelUserAnswersMM->created_date  = date('Y-m-d H:i:s');
                     $arrValues[] = '("", ' . $oneUT['id'] . ', ' . $ques_id . ', ' . $a . ', ' . $a . ', "" , "' . date("Y-m-d H:i:s") . '")';
                     //$oneAns2 = WUserAnswers::model()->find('user_test_id=:user_test_id and question_id=:question_id and answer_id=:answer_id', array(':user_test_id'=> $oneUT['id'], ':question_id' => $ques_id, ':answer_id'=> $a));
                     //                        if(is_null($oneAns2)){
                     //
                     //                            $modelUserAnswersMM->save();
                     //
                     //                        }else{
                     //                            WUserAnswers::updateUA($oneAns2['id'], $a);
                     //                        }
                 }
                 $sql = "INSERT INTO {{user_answers}} (`id`, `user_test_id`, `question_id`, `answer_id`, `user_answer_id`, `user_answer_text`, `created_date`) VALUES " . implode(',', $arrValues) . "";
                 WUserAnswers::insertAnswerM($sql);
                 if (WUserAnswers::checkAnswer($ques_id, $ques_type)) {
                     $point_user = $total_point + $point;
                 } else {
                     $point_user = $total_point;
                 }
                 WUserTest::updatePointTrainee($test_id, $course_id, Yii::app()->user->id, $point_user, $ques_type);
             }
         } elseif ($ques_type == 2) {
             $answer = $_POST['txtFree'];
             if ($answer != '') {
                 $modelUserAnswers = new WUserAnswers();
                 $modelUserAnswers->user_test_id = $oneUT['id'];
                 $modelUserAnswers->question_id = $ques_id;
                 $modelUserAnswers->answer_id = '';
                 $modelUserAnswers->user_answer_id = '';
                 $modelUserAnswers->user_answer_text = $answer;
                 $modelUserAnswers->created_date = date('Y-m-d H:i:s');
                 $oneAns = WUserAnswers::model()->find('user_test_id=:user_test_id and question_id=:question_id', array(':user_test_id' => $oneUT['id'], ':question_id' => $ques_id));
                 if (is_null($oneAns)) {
                     $modelUserAnswers->save();
                 } else {
                     WUserAnswers::updateUA($oneAns['id'], $answer);
                 }
             }
         }
         $url = Yii::app()->params->url_base . '/index.php?r=wTest/result&test_id=' . $test_id . '&course_id=' . $course_id . '&lecture_id=' . $lecture_id . '&total=' . $total;
         echo "<script type='text/javascript'>top.location.href = '{$url}';</script>";
         exit;
     } else {
         $ques1 = $question[0];
         if ($ques1['question_type'] == 1 || $ques1['question_type'] == 2) {
             $UA = WUserAnswers::getIDTextAnswer($ques1['id'], $oneUT['id'], $ques1['question_type']);
             //echo $UA;exit();
         } else {
             $arrUA = WUserAnswers::getIDAnswer($ques1['id'], $oneUT['id']);
         }
     }
     $html = $this->renderPartial('/wTest/trainee/_doingtest', array('question' => $question, 'ua' => $UA, 'arrUA' => $arrUA, 'page_number' => $page_number, 'total' => $total, 'test_id' => $test_id, 'course_id' => $course_id, 'lecture_id' => $lecture_id));
     echo $html;
     exit;
 }
                    <p><span class="col1">Duration: </span><span class="col2"><?php 
echo $test['time_test'];
?>
 minutes</span></p>
                    <div class="showintro">
                        <?php 
echo $test['introduce'];
?>
                    </div>
                </div>
                <div class="clear"></div>
                <div id='timer'>
                    <h6>Time remaining:</h6>
                    <?php 
$arr_test = WCourseLecture::getTestLectureUser($test['id'], $course_id, $lecture_id, $test['kind_of_test'], $kind);
$timer = WUserAnswers::ShowTimer(2, $arr_test['addedd_date'], $arr_test['time_test'], $test['id'], $course_id, $lecture_id, $total, $kind);
?>
                    <label id="lblTimer"><?php 
echo $timer;
?>
</label>

                </div>
            </div>
            <div class="clear"></div>
            <?php 
if (!empty($question)) {
    ?>
            <div class="number_ques" style="width: 100%; float:left; margin-top: 20px; margin-bottom: 20px;">
                <?php 
    //echo $str;
Exemple #15
0
$strWrite = '';
$arrQues = WQuestion::model()->findAll('test_id=:test_id', array(':test_id' => $data->test->id));
$i = 1;
foreach ($arrQues as $ques) {
    if ($ques['question_type'] == 2) {
        $arrUA = WUserAnswers::model()->find('question_id=:question_id and user_test_id=:user_test_id', array(':question_id' => $ques['id'], ':user_test_id' => $user_test_id));
        $strWrite .= '<div class="quesw"><span style="font-weight: bold;">Question ' . $ques['id'] . '</span> (' . $ques['point'] . ' points)</div>
                                <div class="name_ques">' . $ques['question_text'] . '</div>
                                <input type="hidden" id="pointstr" value="' . $ques['point'] . '" />
                                <div class="ans" style="font-style: italic;">Answer:</div>
                                <div class="answer">
                                    <p>' . $arrUA['user_answer_text'] . '</p>
                                </div>';
    } elseif ($ques['question_type'] == 1 || $ques['question_type'] == 4) {
        $name_ques = $ques['question_text'];
        if (WUserAnswers::checkAnswer($ques['id'], $ques['question_type'], $user_test_id)) {
            $img = '<img src="' . Yii::app()->theme->baseUrl . '/img/true.png" />';
            $point = $ques['point'];
        } else {
            $img = '<img src="' . Yii::app()->theme->baseUrl . '/img/fail.png" />';
            $point = 0;
        }
        $strChoice .= '<tr><td style="text-align:left;padding-left: 48px;">Question ' . $i . ': ' . $name_ques . '</td><td>' . $img . '</td><td>' . $point . '</td></tr>';
    }
    $i++;
}
$strChoice .= '<tr>
                        <td colspan="2" style="text-align: left;padding-left: 48px;">Total:</td>
                        <td>' . $data['pass_score_point'] . '</td>
                    </tr>        
                </tbody>
 /**
  * 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 WUserAnswers the loaded model
  * @throws CHttpException
  */
 public function loadModel($id)
 {
     $model = WUserAnswers::model()->findByPk($id);
     if ($model === null) {
         throw new CHttpException(404, 'The requested page does not exist.');
     }
     return $model;
 }