File: /var/www/content-sp/work-sp/nqb_questions_interchange.php
<?php
include_once 'config.php';
// ini_set('display_errors', 1);
// ini_set('display_startup_errors', 1);
// error_reporting(E_ALL);
session_start();
if (!empty($_SESSION['editor'])) {
$protocol = ((!empty($_SERVER['HTTPS']) && $_SERVER['HTTPS'] != 'off') || $_SERVER['SERVER_PORT'] == 443) ? "https://" : "http://";
$root_link = $protocol . $_SERVER['HTTP_HOST'] . '/';
$SP_QUESTION = 'csp_sp_question';
$SP_MASTER_STRUCTURE = 'csp_sp_master_structure';
$SP_MASTER_CATEGORY = 'csp_sp_master_category';
$SP_QUESTION_MEDIUM_WISE = 'csp_sp_question_medium_wise';
$SP_MEDIUM = 'csp_sp_medium';
$getMster = $conn->query("SELECT master_id,master_name,source from $SP_MASTER_CATEGORY where status='1' order by master_id asc");
$pagination_link = 'nqb_questions_interchange';
//interchange questions
if (isset($_REQUEST['inter_change'])) {
//print_r($_REQUEST['ques_id']);
foreach ($_REQUEST['ques_id'] as $q_id) {
if ($q_id != '' && $q_id != '0') {
$ques_id = $q_id;
$sec_ques_id = $_REQUEST['sec_ques_id-' . $ques_id];
$primaryQues = $conn->query("SELECT question_instruction,question_statement,option_1,option_2,option_3,option_4,option_5,question_solution,status FROM $SP_QUESTION where question_id='$ques_id'");
$pQ = $primaryQues->fetch_assoc();
$p_ins = str_replace("'", "\'", $pQ['question_instruction']);
$p_qu_st = str_replace("'", "\'", $pQ['question_statement']);
$p_op1 = str_replace("'", "\'", $pQ['option_1']);
$p_op2 = str_replace("'", "\'", $pQ['option_2']);
$p_op3 = str_replace("'", "\'", $pQ['option_3']);
$p_op4 = str_replace("'", "\'", $pQ['option_4']);
$p_op5 = str_replace("'", "\'", $pQ['option_5']);
$p_sol = str_replace("'", "\'", $pQ['question_solution']);
$p_status = $pQ['status'];
$secondaryQues = $conn->query("SELECT question_instruction,question_statement,option_1,option_2,option_3,option_4,option_5,question_solution,status FROM $SP_QUESTION_MEDIUM_WISE where id='$sec_ques_id'");
$sQ = $secondaryQues->fetch_assoc();
$s_ins = str_replace("'", "\'", $sQ['question_instruction']);
$s_qu_st = str_replace("'", "\'", $sQ['question_statement']);
$s_op1 = str_replace("'", "\'", $sQ['option_1']);
$s_op2 = str_replace("'", "\'", $sQ['option_2']);
$s_op3 = str_replace("'", "\'", $sQ['option_3']);
$s_op4 = str_replace("'", "\'", $sQ['option_4']);
$s_op5 = str_replace("'", "\'", $sQ['option_5']);
$s_sol = str_replace("'", "\'", $sQ['question_solution']);
$s_status = $sQ['status'];
$updatePrim_Sec = "UPDATE $SP_QUESTION set medium_id='1',question_instruction='$s_ins', question_statement='$s_qu_st', option_1='$s_op1', option_2='$s_op2', option_3='$s_op3', option_4='$s_op4', option_5='$s_op5', question_solution='$s_sol',question_flag='1',status='$s_status' where question_id='$ques_id' and medium_id='2'";
if ($conn->query($updatePrim_Sec)) {
$updateSec_Prim = $conn->query("UPDATE $SP_QUESTION_MEDIUM_WISE set medium_id='2',question_instruction='$p_ins', question_statement='$p_qu_st', option_1='$p_op1', option_2='$p_op2', option_3='$p_op3', option_4='$p_op4', option_5='$p_op5', question_solution='$p_sol', status='$p_status' where id='$sec_ques_id' and medium_id='1'");
}
} else {
echo "Question id zero or empty";
}
}
}
if (isset($_REQUEST['master_session'])) {
$mCreds = explode("-", $_REQUEST['master_id']);
$master = $mCreds[0];
$strSess = $mCreds['1'];
$_SESSION['CHNG-MASTER'] = $master;
$_SESSION['STR_SESS'] = $strSess;
}
if (!empty($_SESSION['CHNG-MASTER'])) {
$mster_id = $_SESSION['CHNG-MASTER'];
$mType = strtolower($_SESSION['STR_SESS']);
include 'str_replace_type.php';
$limit = 100;
$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 INNER JOIN $SP_QUESTION_MEDIUM_WISE as sqm on sqm.question_id=sq.question_id and sqm.medium_id='1' LEFT JOIN $SP_MASTER_CATEGORY as smc on smc.master_id=sq.master_id
LEFT JOIN $SP_MASTER_STRUCTURE as sm1 on sm1.sub_id=sq.subject_id
LEFT JOIN $SP_MASTER_STRUCTURE as sm2 on sm2.sub_id=sq.topic_id
LEFT JOIN $SP_MASTER_STRUCTURE as sm3 on sm3.sub_id=sq.sub_topic_id
WHERE sq.medium_id='2' and sq.master_id='$mster_id' and sq.question_type='0'");
$cQuery = $countQuery->fetch_assoc();
$count = $cQuery['total'];
$noOfPages = ceil($count / $limit);
$getQuestions = "SELECT sq.question_id,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.add_date,smc.master_name,smc.source,sm1.category_name as subject,sm2.category_name as topic,sm3.category_name as sub_topic FROM $SP_QUESTION as sq INNER JOIN $SP_QUESTION_MEDIUM_WISE as sqm on sqm.question_id=sq.question_id and sqm.medium_id='1' LEFT JOIN $SP_MASTER_CATEGORY as smc on smc.master_id=sq.master_id
LEFT JOIN $SP_MASTER_STRUCTURE as sm1 on sm1.sub_id=sq.subject_id
LEFT JOIN $SP_MASTER_STRUCTURE as sm2 on sm2.sub_id=sq.topic_id
LEFT JOIN $SP_MASTER_STRUCTURE as sm3 on sm3.sub_id=sq.sub_topic_id
WHERE sq.medium_id='2' and sq.master_id='$mster_id' and sq.question_type='0' order by sq.question_id limit $indexN, $limit";
$questionList = $conn->query($getQuestions);
$totalQuestion = mysqli_num_rows($questionList);
// echo $conn->error;
}
?>
<!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>Question Interchange - Editors Admin</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">
<div class="row">
<div class="col-md-12">
<form method="post">
<div class="form-group">
<select class="form-control" name="master_id" id="master_id">
<option value="0">--Select master--</option>
<?php foreach ($getMster as $ms) { ?>
<option value="<?php echo $ms['master_id'] . '-' . $ms['source']; ?>" <?php if (@$mster_id == $ms['master_id']) {echo "selected"; } ?>><?php echo $ms['source'] . '-' . $ms['master_name']; ?></option>
<?php } ?>
</select>
</div>
<div class="form-group">
<button type="submit" name="master_session" class="btn btn-primary">Find</button>
</div>
</form>
</div>
</div>
<?php if (!empty($_SESSION['CHNG-MASTER'])) { ?>
<div class="row question-ui-section-box">
<div class="question-ui-header">
<h4>Total Question - <span><?php echo $count; ?></span> ]</h4>
</div>
</div>
<!-- Pagination -->
<input style="height:22px; width:22px; border:1px solid #FF0000;" type="checkbox" id="checkAll" value="0">Select All
<form method="post" onsubmit="return checkBox();">
<!-- Start question loop -->
<?php
$i = 1;
foreach ($questionList as $ql) {
$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'];
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 = "";
}
$addDate = $ql['add_date'];
// 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
$master = $ql['master_name'];
$subject = $ql['subject'];
$topic = $ql['topic'];
$sub_topic = $ql['sub_topic'];
$dispEnt = $master . '->' . $subject . '->' . $topic . '->' . $sub_topic;
?>
<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>
<input class="checkAll1" style="height:22px; width:22px; border:1px solid #FF0000;" type="checkbox" name="ques_id[]" value="<?php echo $qId; ?>">
<?php echo $i + $indexN; ?>.</span> ( Question Master Id: <?php echo $qId; ?> )
</h4>
<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>Add : <span class="mail-id"><?php echo $addDate; ?></span></h6>
</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.medium_id FROM $SP_QUESTION_MEDIUM_WISE AS qt where qt.question_id='$qId' and qt.medium_id='1'");
$checkExists = mysqli_num_rows($secondaryQuery);
if ($checkExists != '0') {
$secQues = $secondaryQuery->fetch_assoc();
$questionID_T = $secQues['id'];
$addDate2 = $secQues['add_date'];
$medId = $secQues['medium_id'];
$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>
<input type="hidden" name="sec_ques_id-<?php echo $qId; ?>" value="<?php echo $questionID_T; ?>">
<?php echo $i + $indexN; ?>.</span> ( Question Id: <?php echo $qId . ' Ref. Id : ' . $questionID_T; ?> )
</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>Add : <span class="mail-id"><?php echo $addDate2; ?></span></h6>
</div>
<?php } else {
} ?>
</div>
</div>
</div>
<?php
$i++;
}
?>
<button type="submit" class="btn btn-danger btn-lg btn-rounded" name="inter_change">InterChange</button>
</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>
<?php } else {
echo "Please select master";
} ?>
<!-- end question loop repeat -->
</div>
</section>
<!-- END QUESTION UI 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 type="text/javascript">
jQuery.noConflict();
jQuery(document).ready(function() {
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');
});
});
function checkBox() {
var numberOfChecked = jQuery('.checkAll1:checked').length;
var totalCheckboxes = jQuery('.checkAll1:checkbox').length;
var numberNotChecked = totalCheckboxes - numberOfChecked;
if (numberOfChecked == '0') {
alert("!! Please select atleast one checkbox !!");
return false;
}
}
</script>
</html>
<?php
} else {
echo "Please Logged In";
}