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_question_transfer_old_to_new.php
<?php
ini_set('display_errors', 1);
ini_set('display_startup_errors', 1);
error_reporting(E_ALL);
include_once 'config.php';
include_once '../cron/config.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'] . '/';

    $curDate = date('Y-m-d H:i:s');
    $SP_MASTER_STRUCTURE = 'csp_sp_master_structure';
    $SP_EDITORS = 'csp_editors';
    $SP_QUESTION = 'csp_sp_question';
    $SP_MASTER_CATEGORY = 'csp_sp_master_category';
    $SP_MEDIUM = 'csp_sp_medium';
    $SP_QUESTION_MEDIUM_WISE = 'csp_sp_question_medium_wise';
    $SP_QUES_HISTORY = 'csp_sp_question_history';
    $TT_TEST_QUES = 'h7382406836182.wp_aat93akkcv_tt_test_questions';
    $TT_TEST_QUES_TRANS = 'h7382406836182.wp_aat93akkcv_tt_test_questions_translated';
    $TT_QUESTION_CATEGORIES = 'h7382406836182.wp_aat93akkcv_tt_question_categories';

    $allMaster = $conn->query("SELECT mc.master_id, mc.master_name from $SP_MASTER_CATEGORY as mc where mc.source='SP' order by mc.master_id");

    $from_topic = $_REQUEST['from_id'];

    if (is_numeric($from_topic) && $from_topic != '' && $from_topic != '0') {

        $mType = 'sp';
        include 'str_replace_type.php';


        $pagination_link = $_SERVER['REQUEST_URI'];

        $message = "";
        if (isset($_REQUEST['btn_submit'])) {

            $o_n_master = $_REQUEST['o_n_master'];
            $o_n_subject = $_REQUEST['o_n_subject'];
            $o_n_topic = $_REQUEST['o_n_topic'];
            $o_n_sub_topic = $_REQUEST['o_n_sub_topic'];
            $o_n_ques_id = $_REQUEST['o_n_ques_id'];
            $quesOF = "sarkari-pariksha";
            $ques_of = explode(',', $quesOF);
            $quesOfjson = json_encode($ques_of, JSON_UNESCAPED_UNICODE);

            if (!empty($o_n_ques_id)) {

                foreach ($o_n_ques_id as $q) {

                    if (is_numeric($o_n_master) && is_numeric($o_n_subject) && is_numeric($o_n_topic) && $o_n_master != '0' && $o_n_subject != '0' && $o_n_topic != '0') {

                        $getQuesData = $live->query("SELECT test_question_id,test_passage,question_statement,option_1_answer,option_2_answer,option_3_answer,option_4_answer,option_5_answer,correct_answer,medium_id,question_solution from $TT_TEST_QUES where test_question_id='$q'");
                        $fetchP = $getQuesData->fetch_assoc();

                        $old_id = $fetchP['test_question_id'];
                        $q_instruction = str_replace("'", "''", $fetchP['test_passage']);
                        $q_statement = str_replace("'", "''", $fetchP['question_statement']);
                        $q_option1 = str_replace("'", "''", $fetchP['option_1_answer']);
                        $q_option2 = str_replace("'", "''", $fetchP['option_2_answer']);
                        $q_option3 = str_replace("'", "''", $fetchP['option_3_answer']);
                        $q_option4 = str_replace("'", "''", $fetchP['option_4_answer']);
                        $q_option5 = str_replace("'", "''", $fetchP['option_5_answer']);
                        $q_solution = str_replace("'", "''", $fetchP['question_solution']);
                        $medium_id = $fetchP['medium_id'];
                        $correct_answer = $fetchP['correct_answer'];

                        $checkExist = $conn->query("SELECT count(question_id) as t_ops FROM $SP_QUESTION where old_question_id='$old_id'");
                        $cQuery = $checkExist->fetch_assoc();
                        $count = $cQuery['t_ops'];

                        if ($count == 0) {
                            $transfer_ques = "INSERT into $SP_QUESTION set old_question_id='$old_id', master_id='$o_n_master', subject_id='$o_n_subject', topic_id='$o_n_topic', sub_topic_id='$o_n_sub_topic', level_name='L1', difficulty='D', medium_id='$medium_id', question_instruction='$q_instruction', question_statement='$q_statement', option_1='$q_option1',option_2='$q_option2', option_3='$q_option3', option_4='$q_option4', option_5='$q_option5', correct_answer='$correct_answer', question_solution='$q_solution',question_flag='1',question_type='1',question_of='$quesOfjson', source_id='11', add_date='$curDate', add_by='$adminId', status='2'";
                            //$insert = $wpdb->query($transfer_ques);
                            if ($conn->query($transfer_ques)) {
                                $last_question_id = $conn->insert_id;
                                $checkTranslate = $live->query("SELECT count(id) as s_tops from $TT_TEST_QUES_TRANS  where test_question_id='$q'");
                                $cQuery_s = $checkTranslate->fetch_assoc();
                                $count_s = $cQuery_s['s_tops'];
                                if ($count_s != '0') {
                                    $getTrnsQuesData = $live->query("SELECT medium_id,test_passage,question_statement,option_1_answer,option_2_answer,option_3_answer,option_4_answer,option_5_answer,question_solution from $TT_TEST_QUES_TRANS where test_question_id='$q'");
                                    $fetchS = $getTrnsQuesData->fetch_assoc();

                                    $q_s_instruction = str_replace("'", "''", $fetchS['test_passage']);
                                    $q_s_statement = str_replace("'", "''", $fetchS['question_statement']);
                                    $q_s_option1 = str_replace("'", "''", $fetchS['option_1_answer']);
                                    $q_s_option2 = str_replace("'", "''", $fetchS['option_2_answer']);
                                    $q_s_option3 = str_replace("'", "''", $fetchS['option_3_answer']);
                                    $q_s_option4 = str_replace("'", "''", $fetchS['option_4_answer']);
                                    $q_s_option5 = str_replace("'", "''", $fetchS['option_5_answer']);
                                    $q_s_solution = str_replace("'", "''", $fetchS['question_solution']);
                                    $s_med = $fetchS['medium_id'];

                                    $transfer_ques_trns = "INSERT into $SP_QUESTION_MEDIUM_WISE set question_id='$last_question_id', medium_id='$s_med', question_instruction='$q_s_instruction', question_statement='$q_s_statement', option_1='$q_s_option1',option_2='$q_s_option2', option_3='$q_s_option3', option_4='$q_s_option4', option_5='$q_s_option5', question_solution='$q_s_solution', source_id='11', add_date='$curDate', add_by='$adminId', status='2'";
                                    //$insert_trns = $wpdb->query($transfer_ques_trns);
                                    if ($conn->query($transfer_ques_trns)) {
                                    }
                                }
                                $message .= "<div class='alert alert-success alert-dismissible'>Transferred <button type='button' class='close' data-dismiss='alert' aria-label='Close'><span aria-hidden='true'>×</span></button></div>";
                            }
                        } else {
                            $message .= "<div class='alert alert-danger alert-dismissible'>" . $old_id . " Aleardy Exist <button type='button' class='close' data-dismiss='alert' aria-label='Close'><span aria-hidden='true'>×</span></button></div>";
                        }
                    }
                }
            } else {
                $message = "<div class='alert alert-danger alert-dismissible'>Please select question <button type='button' class='close' data-dismiss='alert' aria-label='Close'><span aria-hidden='true'>×</span></button></div>";
            }
        }

        $limit = 100;
        $pageNo = isset($_GET['pageN']) ? $_GET['pageN'] : 1;
        $indexN = ($pageNo - 1) * $limit;
        $countQuery = $live->query("SELECT count(qt.test_question_id) as total FROM $TT_QUESTION_CATEGORIES as qt LEFT JOIN $TT_TEST_QUES as tt on tt.test_question_id=qt.test_question_id WHERE qt.exam_category_id='$from_topic'");
        $cQuery = $countQuery->fetch_assoc();
        $count = $cQuery['total'];
        $noOfPages = ceil($count / $limit);

        $queryQues = "SELECT tt.test_question_id,tt.medium_id,tt.test_passage,tt.question_statement,tt.option_1_answer,tt.option_2_answer,tt.option_3_answer,tt.option_4_answer,tt.option_5_answer,tt.correct_answer,tt.question_solution,tt.question_add_date FROM $TT_QUESTION_CATEGORIES as qt LEFT JOIN $TT_TEST_QUES as tt on tt.test_question_id=qt.test_question_id WHERE qt.exam_category_id='$from_topic' limit $indexN, $limit";

        $quesData = $live->query($queryQues);

?>
        <!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>Transfer OLD-TO-NEW</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>
            <?php include_once 'pagination.php'; ?>

            <!-- QUESTION UI SECTION  -->
            <section class="question-ui-section">
                <div class="container-fluid">
                    <?php if (isset($message)) {
                        echo $message;
                    } ?>
                    <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>
                    <form method="post" onsubmit="return validate();">
                        <div class="row">

                            <div class="col-md-6 col-sm-6 col-xs-12">
                                <!-- Start question loop -->

                                <div class="row question-ui-section-box mb-2">
                                    <label for="checkAll" class="col-md-12 col-sm-12 col-xs-12">Select All <input type="checkbox" id="checkAll" value="0"> </label>
                                    <?php
                                    $i = 1;
                                    foreach ($quesData as $ql) {
                                        $qId = $ql['test_question_id'];
                                        $instructions = str_replace('../', $root_link, $ql['test_passage']);
                                        $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_answer']);
                                        $option1 = str_replace($spaceArray, $replaceSpaceArray, $option1);
                                        $option2 = str_replace('../', $root_link, $ql['option_2_answer']);
                                        $option2 = str_replace($spaceArray, $replaceSpaceArray, $option2);

                                        $currect_ans = $ql['correct_answer'];

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

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

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

                                        if ($ql['option_5_answer']) {
                                            $option5 = str_replace('../', $root_link, $ql['option_5_answer']);
                                            $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

                                    ?>

                                        <div class="col-md-12 col-sm-12 col-xs-12">
                                            <div class="question-ui-box">
                                                <h4><span><?php echo $i + $indexN; ?>.<input class="checkAll1" style="height:22px; width:22px; border:1px solid #FF0000;" type="checkbox" name="o_n_ques_id[]" value="<?php echo $qId; ?>" /></span> ( Question Master Id: <?php echo $qId; ?> )

                                                </h4>
                                                <?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>Add : <span class="mail-id"><?php echo $addDate; ?></span></h6>
                                                </div>
                                            </div>
                                        </div>

                                    <?php
                                        $i++;
                                    }
                                    ?>
                                </div>
                            </div>
                            <div class="col-md-6 col-sm-6 col-xs-12">
                                <div class="panel panel-info">
                                    <div class="panel-heading clearfix">
                                        <h4 class="panel-title" style="width: 100%;">Transfer in New Master</h4>
                                    </div>
                                    <div class="spacer"></div>
                                    <div class="panel-body">
                                        <div class="form-group">
                                            <label for="inputPassword3" class="col-sm-3 control-label">Master :</label>
                                            <select name="o_n_master" class="form-control" id="sbtpc_master">
                                                <option value="M">--Master--</option>
                                                <?php foreach ($allMaster as $cat) { ?>
                                                    <option value="<?php echo $cat['master_id']; ?>"><?php echo $cat['master_name']; ?></option>
                                                <?php } ?>
                                            </select>
                                        </div>
                                        <div class="form-group">
                                            <label for="inputPassword3" class="col-sm-3 control-label">Subject :</label>
                                            <select name="o_n_subject" class="form-control" id="sbtpc_subject">
                                                <option value="S">--Subject--</option>
                                            </select>
                                        </div>
                                        <div class="form-group">
                                            <label for="inputPassword3" class="col-sm-3 control-label">Topic :</label>
                                            <select name="o_n_topic" class="form-control" id="sbtpc_topic">
                                                <option value="T">--Topic--</option>
                                            </select>
                                        </div>
                                        <div class="form-group">
                                            <label for="inputPassword3" class="col-sm-3 control-label">SubTopic :</label>
                                            <select name="o_n_sub_topic" class="form-control" id="sub_topic">
                                                <option value="">--Sub Topic</option>
                                            </select>
                                        </div>
                                        <div class="form-group">
                                            <label for="inputPassword3" class="col-sm-3 control-label"></label>
                                            <div class="col-sm-6">
                                                <button type="submit" class="btn btn-info btn-rounded" name="btn_submit">Transfer</button>
                                            </div>
                                        </div>
                                    </div>
                                </div>
                            </div>

                        </div>
                    </form>



                    <!-- 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 HISTORY MODAL SECTION -->
            <div class="modal fade quesHistory-modal" id="quesHistory" 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_history"></div>
                    </div>
                </div>
            </div>
            <!-- END QUESTION HISTORY MODAL 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="assets/plugins/jquery/jquery-2.1.3.min.js"></script>
        <script src="assets/js/bootstrap4.min.js"></script>

        </html>

        <script>
            function validate() {

                if (jQuery('#sbtpc_master').val() == "M") {
                    alert("Error:Master");
                    return false;
                }
                if (jQuery('#sbtpc_subject').val() == "S" || jQuery('#sbtpc_subject').val() == "") {
                    alert("Error:Subject");
                    return false;
                }
                if (jQuery('#sbtpc_topic').val() == "T" || jQuery('#sbtpc_topic').val() == "") {
                    alert("Error:Topic");
                    return false;
                }
                return true;
            }

            jQuery.noConflict();
            jQuery(document).ready(function() {
                jQuery('#sbtpc_master').on('change', function() {
                    var mid = jQuery("#sbtpc_master").val();
                    var loadUrl = "ajax_call/nqb_master_topics.php?eid=" + mid + "&type=master";
                    var jqxhr = jQuery.get(loadUrl);
                    jqxhr.success(function(data) {
                        jQuery("#sbtpc_subject").html(data);
                    });
                });

                jQuery('#sbtpc_subject').on('change', function() {
                    var subId = jQuery("#sbtpc_subject").val();
                    var mid = jQuery("#sbtpc_master").val();
                    var loadUrl = "ajax_call/nqb_master_topics.php?eid=" + subId + "&type=topic&m=" + mid;
                    var jqxhr = jQuery.get(loadUrl);
                    jqxhr.success(function(data) {
                        jQuery("#sbtpc_topic").html(data);
                    });
                });

                jQuery('#sbtpc_topic').on('change', function() {
                    var subId = jQuery("#sbtpc_topic").val();
                    var mid = jQuery("#sbtpc_master").val();
                    var loadUrl = "ajax_call/nqb_master_topics.php?eid=" + subId + "&type=subtopic&m=" + mid;
                    var jqxhr = jQuery.get(loadUrl);
                    jqxhr.success(function(data) {
                        jQuery("#sub_topic").html(data);
                    });
                });
            });
            jQuery("#checkAll").change(function() {

                var check = this.value;
                if (check == 0) {
                    jQuery(".checkAll1").prop('checked', jQuery(this).prop('checked'));
                    jQuery(".checker").find('span').addClass('checked');
                    jQuery("#checkAll").val(1);

                } else if (check == 1) {
                    jQuery(".checkAll1").prop('checked', jQuery(this).prop('checked'));
                    jQuery(".checker").find('span').removeClass('checked');
                    jQuery("#checkAll").val(0);
                }
                //jQuery(".checkAll1").prop('!checked', jQuery(this).prop('!checked'));
                //jQuery(".checker").find('span').removeClass('checked');
            });
        </script>
<?php
    } else {
        echo "From id";
    }
} else {
    echo "Please Logged In";
}