HEX
Server: Apache/2.4.58 (Ubuntu)
System: Linux ip-172-31-18-78 6.17.0-1017-aws #17~24.04.1-Ubuntu SMP Tue May 26 21:09:53 UTC 2026 aarch64
User: ubuntu (1000)
PHP: 8.2.31
Disabled: NONE
Upload Files
File: /var/www/content-sp/work-sp/nqb_proofread_previous_ques_view.php
<?php
// ini_set('display_errors', 1);
// ini_set('display_startup_errors', 1);
// error_reporting(E_ALL);
include_once 'config.php';
include_once 'functions.php';
session_start();

if (!empty($_SESSION['editor'])) {
    //current user
    $editorData = json_decode($_SESSION['editor']);
    $adminId = $editorData->eId;


    $protocol = ((!empty($_SERVER['HTTPS']) && $_SERVER['HTTPS'] != 'off') || $_SERVER['SERVER_PORT'] == 443) ? "https://" : "http://";
    $root_link = $protocol . $_SERVER['HTTP_HOST'] . '/';

    include_once 'pagination.php';
    $paguri = explode("&pageN",$_SERVER['REQUEST_URI']);
    $pagination_link = $paguri[0];

?>

    <?php

    $SP_MASTER_STRUCTURE = 'csp_sp_master_structure';
    $SP_EDITORS = 'csp_editors';
    $SP_QUESTION = 'csp_sp_question';
    $SP_QUESTION_MEDIUM_WISE = 'csp_sp_question_medium_wise';
    $SP_MASTER_CATEGORY = 'csp_sp_master_category';
    $SP_QUESTION_DIFFICULTY = 'csp_sp_question_difficulty';
    $SP_MASTER_LEVEL = 'csp_sp_master_level';
    $SP_MEDIUM = 'csp_sp_medium';
    $SP_QUES_HISTORY = 'csp_sp_question_history';
    $SP_MASTER_PROOF_READ_ACCESS = 'csp_proofread_access';

    $sec_med_code = $_REQUEST['viewIn'];
    $uniqueID = $_REQUEST['uniqueID'];
    $mType = 'sp';

    include 'str_replace_type.php';

    $editorAccess = $conn->query("SELECT view_page_access,download_access FROM $SP_EDITORS where editor_id='$adminId'");
    $accEd = $editorAccess->fetch_assoc();
    $viewPage = $accEd['view_page_access'];

    $getLevels = $conn->query("SELECT medium_id,target_medium,ques_type,level_status,questions,master_type from $SP_MASTER_PROOF_READ_ACCESS where id='$uniqueID'");
    $fLev = $getLevels->fetch_assoc();

    $source_medium = $fLev['medium_id'];
    $target_medium = $fLev['target_medium'];
    $ques_type = $fLev['ques_type'];
    $questions = $fLev['questions'];
    $level_status = $fLev['level_status'];


    /**update entity */
    if (isset($_REQUEST['updQues'])) {
        $up_master_id = $_REQUEST['sbtpc_master'];
        $up_subject_id = $_REQUEST['sbtpc_subject'];
        $up_topic_id = $_REQUEST['sbtpc_topic'];
        $up_sub_topic_id = $_REQUEST['sub_topic'];
        $up_ques_id = $_REQUEST['ques_id'];

        if ($up_ques_id != '' && $up_master_id!='' && $up_master_id != '0' && $up_subject_id !='' && $up_subject_id != '0' && $up_topic_id != '' && $up_topic_id != '0') {
            $updateQuery = "UPDATE $SP_QUESTION set master_id='$up_master_id', subject_id='$up_subject_id', topic_id='$up_topic_id', sub_topic_id='$up_sub_topic_id' where question_id = '$up_ques_id' ";
            $conn->query($updateQuery);

            $sec = "0";
            header("Refresh: $sec;");
        }
    }



    /**limit and ques query */
    $limit = 20;
    $pageNo = isset($_GET['pageN']) ? $_GET['pageN'] : 1;
    $indexN = ($pageNo - 1) * $limit;
    $countQuery = $conn->query("SELECT count(sq.question_id) as total FROM $SP_QUESTION as sq
    left join $SP_MASTER_LEVEL as sml on sml.level_name=sq.level_name
    left join $SP_EDITORS as u on u.editor_id=sq.add_by
    left join $SP_MEDIUM as md on md.medium_id=sq.medium_id
    where sq.question_id IN($questions) order by sq.question_id");
    $cQuery = $countQuery->fetch_assoc();
    $count = $cQuery['total'];
    $noOfPages = ceil($count / $limit);
    $query = "SELECT sq.question_id, sq.medium_id, sq.no_of_option, sq.question_instruction, sq.question_statement, sq.option_1, sq.option_2, sq.option_3, sq.option_4, sq.option_5, sq.correct_answer, sq.question_solution, sq.previous_exam_year, sq.previous_exam_name,sq.exam_shift, sq.add_date, sq.status,sml.level_name as ques_level,u.contact_name as addBy,sq.last_proofread_by,pf.contact_name as prf_by,sq.last_proofread_date,md.medium_name,sq.question_type FROM $SP_QUESTION as sq
left join $SP_MASTER_LEVEL as sml on sml.level_name=sq.level_name
left join $SP_EDITORS as u on u.editor_id=sq.add_by
left join $SP_EDITORS as pf on pf.editor_id=sq.last_proofread_by
left join $SP_MEDIUM as md on md.medium_id=sq.medium_id
where sq.question_id IN($questions) order by sq.question_id limit $indexN, $limit";

    $questionList = $conn->query($query);
    $totalQuestion = 0; //mysqli_num_rows($questionList);


    $ques_edit_url = '/work-sp/nqb_question_edit';
    $ques_edit_url_trans = '/work-sp/nqb_question_edit_secondary';
    $ques_add_url_trans = '/work-sp/nqb_question_add_translated';

    ?>
    <!DOCTYPE html>
    <html lang="en">

    <head>
        <meta charset="UTF-8">
        <!-- <meta name="viewport" content="width=device-width, initial-scale=1.0"> -->
        <meta name="viewport" content="width=device-width, user-scalable=no">
        <title>Previouse Year Exam Proof read Question view</title>
        <link rel="icon" href="assets/images/favicon.png" type="image/x-icon">
        <!-- Latest compiled and minified CSS -->
        <link rel="stylesheet" href="assets/css/bootstrap4.css">
        <link href="https://fonts.googleapis.com/css2?family=Poppins&display=swap" rel="stylesheet">
        <link rel="stylesheet" href="assets/css/new-ques-ui.css">
        <link href="assets/plugins/fontawesome/css/font-awesome.css" rel="stylesheet" type="text/css" />
    </head>

    <body>
        <!-- QUESTION UI SECTION  -->
        <section class="question-ui-section">
            <div class="container-fluid">
                <div class="row question-ui-section-box">
                    <div class="question-ui-header">
                        <h4>Total Question - <span><?php echo $count; ?></span></h4>
                    </div>
                </div>
                <!-- Pagination -->
                <div class="row">
                    <div class="col-md-6 col-sm-6 col-xs-12">
                        <?php echo pagination($limit, $pageNo, $pagination_link . "&pageN=", $count); ?>
                    </div>
                </div>

                <!-- Start question loop -->
                <?php
                $i = 1;
                while ($ql = $questionList->fetch_assoc()) {
                    $qId = $ql['question_id'];
                    $instructions = str_replace('../', $root_link, $ql['question_instruction']);
                    $instructions = str_replace($spaceArray, $replaceSpaceArray, $instructions);
                    $question = str_replace('../', $root_link, $ql['question_statement']);
                    $question = str_replace($spaceArray, $replaceSpaceArray, $question);


                    $question_solution = str_replace('../', $root_link, $ql['question_solution']);
                    $question_solution = str_replace($spaceArray, $replaceSpaceArray, $question_solution);


                    $option1 = str_replace('../', $root_link, $ql['option_1']);
                    $option1 = str_replace($spaceArray, $replaceSpaceArray, $option1);
                    $option2 = str_replace('../', $root_link, $ql['option_2']);
                    $option2 = str_replace($spaceArray, $replaceSpaceArray, $option2);

                    $currect_ans = $ql['correct_answer'];

                    // get question proof reading status
                    $ques_prf_status = $ql['status'];
                    $addBy = $ql['addBy'];
                    $addDate = $ql['add_date'];
                    $medium = $ql['medium_id'];

                    if ($ql['last_proofread_by'] != '') {
                        $readBy = $ql['prf_by'];
                        $readDate = $ql['last_proofread_date'];

                        $readText = '<span class="proof">Proof Read <i class="fa fa-check-circle"></i></span>';
                        $readStatus = $readBy . ' / ' . $readDate;
                    } else {
                        $readStatus = '';
                        $readStatus = '';
                        if ($ques_prf_status == '3' || $ques_prf_status == '4') {
                            $readText = '<span class="proof">Proof Read <i class="fa fa-check-circle"></i></span>';
                        } else {
                            $readText = $readText = '<span id="span_' . $i . '" class="not-proof">Not Proof Read <i class="fa fa-times-circle"></i></span>';
                        }
                    }
                    $preExmDet = $ql['previous_exam_name'] . ">>" . $ql['previous_exam_year'].">>".$ql['exam_shift'];

                    if ($ql['option_3']) {
                        $option3 = str_replace('../', $root_link, $ql['option_3']);
                        $option3 = str_replace($spaceArray, $replaceSpaceArray, $option3);
                    } else {
                        $option3 = "";
                    }

                    if ($ql['option_4']) {
                        $option4 = str_replace('../', $root_link, $ql['option_4']);
                        $option4 = str_replace($spaceArray, $replaceSpaceArray, $option4);
                    } else {
                        $option4 = "";
                    }

                    if ($ql['option_5']) {
                        $option5 = str_replace('../', $root_link, $ql['option_5']);
                        $option5 = str_replace($spaceArray, $replaceSpaceArray, $option5);
                    } else {
                        $option5 = "";
                    }
                    // replacing cloze test blanks with question id
                    $varRep = array('{$curnt}' => $i, '{$curnt+1}' => $i + 1, '{$curnt+2}' => $i + 2, '{$curnt+3}' => $i + 3, '{$curnt+4}' => $i + 4, '{$curnt+5}' => $i + 5, '{$curnt+6}' => $i + 6, '{$curnt+7}' => $i + 7, '{$curnt+8}' => $i + 8, '{$curnt+9}' => $i + 9, '{$curnt+10}' => $i + 10, '{$curnt-1}' => $i - 1, '{$curnt-2}' => $i - 2, '{$curnt-3}' => $i - 3, '{$curnt-4}' => $i - 4, '{$curnt-5}' => $i - 5, '{$curnt-6}' => $i - 6, '{$curnt-7}' => $i - 7, '{$curnt-8}' => $i - 8, '{$curnt-9}' => $i - 9, '{$curnt-10}' => $i - 10);
                    // replace unneccessary spaces from ques and statement

                    $getEntity = $conn->query("select m.master_name, s.category_name as subject, t.category_name as topic, st.category_name as subtopic from $SP_QUESTION as q LEFT JOIN $SP_MASTER_CATEGORY as m ON m.master_id=q.master_id LEFT JOIN $SP_MASTER_STRUCTURE as s ON s.sub_id=q.subject_id LEFT JOIN $SP_MASTER_STRUCTURE as t ON t.sub_id=q.topic_id LEFT JOIN $SP_MASTER_STRUCTURE as st ON st.sub_id=q.sub_topic_id where q.question_id='$qId'");
                    $entData = $getEntity->fetch_assoc();
                    $dispEnt = $entData['master_name'] . "->" . $entData['subject'] . "->" . $entData['topic'] . "->" . $entData['subtopic'];
                ?>
                    <div class="row question-ui-section-box mb-2">
                        <div class="col-md-6 col-sm-6 col-xs-12">
                            <div class="question-ui-box">
                                <h4><span><?php echo $i + $indexN; ?>.</span> ( Question Master Id: <?php echo $qId; ?> )
                                    <span class="edit-btn">
                                        <a target="_blank" style="text-decoration: none;" href="<?php echo $ques_edit_url . '?action=edit&quesId=' . $qId . '&mType=' . $mType; ?>"><i class="fa fa-edit"></i></a></span>
                                        <?php if ($viewPage == '1') { ?>
                                        <span class="edit-btn" data-toggle="modal" data-target="#quesEntChange" onclick="quesEntity(<?php echo $qId; ?>)"><i class="fa fa-eye"></i></span>
                                    <?php } ?>
                                </h4>
                                <?php if ($ql['previous_exam_name'] != '') { ?>
                                        <h5 class="ques-topic-name" title="Previous Exam Details">Previous Exam/Year:<?php echo $preExmDet; ?></h5>
                                <?php } ?>
                                <h5 class="ques-topic-name"><?php echo $dispEnt; ?></h5>
                                <?php if ($instructions) { ?>
                                    <div class="question-ui-instruc">
                                        <h4>Instructions</h4>
                                        <p><?php echo $instructions; ?></p>
                                    </div>
                                <?php } ?>
                                <div class="question-ques-option">
                                    <?php echo strtr((str_replace('../', $root_link, $question)), $varRep); ?>
                                </div>
                                <div class="question-ui-options">
                                    <ul>
                                        <li><input <?php if ($currect_ans == 1) echo "checked"; ?> id="rd_ans1<?php echo $i; ?>" type="radio" value="1" name="rd_ans<?php echo $i; ?>"><?php echo $option1; ?></li>
                                        <li><input <?php if ($currect_ans == 2) echo "checked"; ?> id="rd_ans2<?php echo $i; ?>" type="radio" value="2" name="rd_ans<?php echo $i; ?>"><?php echo $option2; ?></li>
                                        <?php if ($option3 != "") { ?>
                                            <li><input <?php if ($currect_ans == 3) echo "checked"; ?> id="rd_ans3<?php echo $i; ?>" type="radio" value="3" name="rd_ans<?php echo $i; ?>"><?php echo $option3; ?></li>
                                        <?php } ?>
                                        <?php if ($option4 != "") { ?>
                                            <li><input <?php if ($currect_ans == 4) echo "checked"; ?> id="rd_ans4<?php echo $i; ?>" type="radio" value="4" name="rd_ans<?php echo $i; ?>"><?php echo $option4; ?></li>
                                        <?php } ?>
                                        <?php if ($option5 != "") { ?>
                                            <li><input <?php if ($currect_ans == 5) echo "checked"; ?> id="rd_ans5<?php echo $i; ?>" type="radio" value="5" name="rd_ans<?php echo $i; ?>"><?php echo $option5; ?></li>
                                        <?php } ?>
                                    </ul>
                                </div>
                                <div class="question-ui-solution">
                                    <span>Solution</span>
                                    <?php echo $question_solution; ?>
                                </div>
                                <div class="question-ui-status">
                                    <h6>Question Status: <?php echo $readText; ?>

                                    </h6>

                                    <h6>Add : <span class="mail-id"><?php echo $addBy . " / " . $addDate; ?></span></h6>
                                    <h6>Proof Read : <span class="mail-id"><?php echo $readStatus; ?> </span></h6>
                                </div>
                                <div class="question-ui-translate">
                                    <p>Available for translate : <?php echo $ql['question_type'] == '0' ? 'Yes' : 'No'; ?></p>
                                </div>
                            </div>
                        </div>
                        <div class="col-md-6 col-sm-6 col-xs-12">
                            <div class="question-ui-box">
                                <?php
                                $secondaryQuery = $conn->query("SELECT qt.id, qt.question_id, qt.question_instruction, qt.question_statement, qt.option_1, qt.option_2, qt.option_3, qt.option_4, qt.option_5, qt.question_solution, qt.add_date, qt.status, qt.medium_id, u.contact_name as addBysec,qt.last_proofread_by,pfs.contact_name as pfs_by,qt.last_proofread_date FROM $SP_QUESTION_MEDIUM_WISE AS qt left join $SP_EDITORS as u on u.editor_id=qt.add_by left join $SP_EDITORS as pfs on pfs.editor_id=qt.last_proofread_by where qt.question_id='$qId' and qt.medium_id='$target_medium'");
                                $checkExists = mysqli_num_rows($secondaryQuery);
                                if ($checkExists != '0') {
                                    $secQues = $secondaryQuery->fetch_assoc();

                                    $questionID_T = $secQues['id'];
                                    $addBy2 = $secQues['addBysec'];
                                    $addDate2 = $secQues['add_date'];
                                    $ques_prf_statusT = $secQues['status'];
                                    $medId = $secQues['medium_id'];

                                    if ($secQues['last_proofread_by'] != '') {
                                        $readBySec = $secQues['pfs_by'];
                                        $readDateSec = $secQues['last_proofread_date'];

                                        $readTextSec = '<span class="proof">Proof Read <i class="fa fa-check-circle"></i></span>';
                                        $readStatusSec = $readBySec . ' / ' . $readDateSec;
                                    } else {
                                        $readStatusSec = '';
                                        if ($ques_prf_statusT == '3' || $ques_prf_statusT == '4') {
                                            $readTextSec = '<span class="proof">Proof Read <i class="fa fa-check-circle"></i></span>';
                                        } else {
                                            $readTextSec = '<span id="span_' . $questionID_T . '" class="not-proof">Not Proof Read <i class="fa fa-times-circle"></i></span>';
                                        }
                                    }


                                    $instructions2 = str_replace('../', $root_link, $secQues['question_instruction']);
                                    $instructions2 = str_replace($spaceArray, $replaceSpaceArray, $instructions2);

                                    $question2 = str_replace('../', $root_link, $secQues['question_statement']);
                                    $question2 = str_replace($spaceArray, $replaceSpaceArray, $question2);

                                    $option1_2 = str_replace('../', $root_link, $secQues['option_1']);
                                    $option2_2 = str_replace('../', $root_link, $secQues['option_2']);

                                    $question_solution_2 = str_replace('../', $root_link, $secQues['question_solution']);
                                    $question_solution_2 = str_replace($spaceArray, $replaceSpaceArray, $question_solution_2);


                                    $option1_2 = str_replace($spaceArray, $replaceSpaceArray, $option1_2);
                                    $option2_2 = str_replace($spaceArray, $replaceSpaceArray, $option2_2);
                                    // get question proof reading status

                                    if ($secQues['option_3']) {
                                        $option3_2 = str_replace('../', $root_link, $secQues['option_3']);
                                        $option3_2 = str_replace($spaceArray, $replaceSpaceArray, $option3_2);
                                    } else {
                                        $option3_2 = "";
                                    }

                                    if ($secQues['option_4']) {
                                        $option4_2 = str_replace('../', $root_link, $secQues['option_4']);
                                        $option4_2 = str_replace($spaceArray, $replaceSpaceArray, $option4_2);
                                    } else {
                                        $option4_2 = "";
                                    }

                                    if ($secQues['option_5']) {
                                        $option5_2 = str_replace('../', $root_link, $secQues['option_5']);
                                        $option5_2 = str_replace($spaceArray, $replaceSpaceArray, $option5_2);
                                    } else {
                                        $option5_2 = "";
                                    }
                                ?>
                                    <h4><span><?php echo $i + $indexN; ?>.</span> ( Question Master Id: <?php echo $qId; ?> )
                                        <span class="edit-btn">
                                            <a target="_blank" style="text-decoration: none;" href="<?php echo $ques_edit_url_trans . '?action=edit&quesId=' . $questionID_T . '&mType=' . $mType; ?>"><i class="fa fa-edit"></i></a></span>
                                    </h4>
                                    <h5 class="ques-topic-name">Secondary Question</h5>
                                    <?php if ($instructions2) { ?>
                                        <div class="question-ui-instruc">
                                            <h4>Instructions</h4>
                                            <p><?php echo $instructions2; ?></p>
                                        </div>
                                    <?php } ?>
                                    <div class="question-ques-option">
                                        <?php echo strtr((str_replace('../', $root_link, $question2)), $varRep); ?>
                                    </div>
                                    <div class="question-ui-options">
                                        <ul>
                                            <li><input <?php if ($currect_ans == 1) echo "checked"; ?> id="rd_ans1sec<?php echo $i; ?>" type="radio" value="1" name="rd_anssec<?php echo $i; ?>"><?php echo $option1_2; ?></li>
                                            <li><input <?php if ($currect_ans == 2) echo "checked"; ?> id="rd_ans2sec<?php echo $i; ?>" type="radio" value="2" name="rd_anssec<?php echo $i; ?>"><?php echo $option2_2; ?></li>
                                            <?php if ($option3_2 != "") { ?>
                                                <li><input <?php if ($currect_ans == 3) echo "checked"; ?> id="rd_ans3sec<?php echo $i; ?>" type="radio" value="3" name="rd_anssec<?php echo $i; ?>"><?php echo $option3_2; ?></li>
                                            <?php } ?>
                                            <?php if ($option4_2 != "") { ?>
                                                <li><input <?php if ($currect_ans == 4) echo "checked"; ?> id="rd_ans4sec<?php echo $i; ?>" type="radio" value="4" name="rd_anssec<?php echo $i; ?>"><?php echo $option4_2; ?></li>
                                            <?php } ?>
                                            <?php if ($option5_2 != "") { ?>
                                                <li><input <?php if ($currect_ans == 5) echo "checked"; ?> id="rd_ans5sec<?php echo $i; ?>" type="radio" value="5" name="rd_anssec<?php echo $i; ?>"><?php echo $option5_2; ?></li>
                                            <?php } ?>
                                        </ul>
                                    </div>
                                    <div class="question-ui-solution">
                                        <span>Solution</span>
                                        <?php echo $question_solution_2; ?>
                                    </div>
                                    <div class="question-ui-status">
                                        <h6>Question Status: <?php echo $readTextSec; ?>
                                        </h6>

                                        <h6>Add : <span class="mail-id"><?php echo $addBy2 . " / " . $addDate2; ?></span></h6>
                                        <h6>Proof Read : <span class="mail-id"><?php echo $readStatusSec; ?> </span></h6>
                                    </div>
                                    <?php } else {
                                    if ($level_status == '1') { ?> <a href="<?php echo '/work-sp/nqb_add_question_secondary?quesId=' . $qId . '&medium=' . $target_medium . '&mType=' . $mType . '&role=proofreader'; ?>" target="_blank" rel="noopener noreferrer">Add Question</a> <?php } else {  echo "---";                                                                                     }
                                } ?>
                            </div>
                        </div>
                    </div>
                <?php
                    $i++;
                }
                ?>

                <!-- Pagination -->
                <div class="row">
                    <div class="col-md-6 col-sm-6 col-xs-12">
                        <?php echo pagination($limit, $pageNo, $pagination_link . "&pageN=", $count); ?>
                    </div>
                </div>
                <!-- end question loop repeat -->
            </div>
        </section>
        <!-- END QUESTION UI SECTION  -->
        <!-- QUESTION Topic Edit MODAL SECTION -->
        <div class="modal fade quesHistory-modal" id="quesEntChange" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true">
            <div class="modal-dialog">
                <div class="modal-content">
                    <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span></button>
                    <div class="modal-body" id="question_entity"></div>
                </div>
            </div>
        </div>
        <!-- END QUESTION HISTORY MODAL SECTION -->
    </body>
    <!-- Latest compiled and minified JavaScript -->
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
    <script src="assets/js/bootstrap4.min.js"></script>
    <script>
        function quesEntity(qId) {
            var site = "ajax_call/nqb_question_entity_change.php?ques_id=" + qId;
            jQuery.ajax({
                url: site,
                type: 'POST',
                data: 'html',
                success: function(data) {
                    document.getElementById("question_entity").innerHTML = data;
                }
            });
        }
        </script>

    </html>
<?php

} else {
    echo "Please Logged In <a href='/work-sp/login'>Log in</a>";
}