File: /var/www/content-sp/work-sp/nqb_olympiad_master_moving_copy.php
<?php
// ini_set('display_errors', 1);
// ini_set('display_startup_errors', 1);
// error_reporting(E_ALL);
include_once('nqb_master_section_oly.php');
include_once 'pagination.php';
$fileName = 'nqb_olympiad_master_moving';//str_replace('.php', '', basename($_SERVER['REQUEST_URI'], '?' . $_SERVER['QUERY_STRING']));
//check master permissions
if (in_array($fileName, $pageArray)) {
$protocol = ((!empty($_SERVER['HTTPS']) && $_SERVER['HTTPS'] != 'off') || $_SERVER['SERVER_PORT'] == 443) ? "https://" : "http://";
$root_link = $protocol . $_SERVER['HTTP_HOST'] . '/';
$pagination_link = 'nqb_olympiad_master_moving_copy';
$curDate = date('Y-m-d H:i:s');
$flag = '1';
# tables use
$SP_EXAM_QUESTION_LINKAGE = 'shineoly_2022.wp_shine_sp_exam_question_linkage';
$TT_EXAM_CATEGORIES_TABLE = 'shineoly_2022.wp_shine_tt_exam_categories';
$SP_QUESTION = 'contentserver_202130.csp_sp_question';
$SP_QUESTION_MEDIUM_WISE = 'contentserver_202130.csp_sp_question_medium_wise';
$SP_MEDIUM = 'csp_sp_medium';
$SP_MASTER_CATEGORY = 'contentserver_202130.csp_sp_master_category';
$SP_MASTER_STRUCTURE = 'csp_sp_master_structure';
$mQuery = '';
$allMaster = $conn->query("select mc.master_id, mc.master_name from $SP_MASTER_CATEGORY as mc WHERE mc.master_name LIKE 'Olympiad%' and mc.source='OLY' $mQuery order by mc.master_id asc");
/**live config */
include_once '../cron/config.php';
$allExam = $live->query("SELECT e.exam_category_id, e.category_name,e.app_status from $TT_EXAM_CATEGORIES_TABLE as e Inner join shineoly_2022.wp_shine_tt_all_exams as ae on ae.exam_category_id=e.exam_category_id where ae.status='1' order by e.category_name asc");
# submit exam form
if (isset($_REQUEST['e_find_ques'])) {
$e_oly_exam = $_REQUEST['e_oly_exam'];
$e_oly_master = $_REQUEST['e_oly_master'];
$e_oly_subject = $_REQUEST['e_oly_subject'];
if ($e_oly_exam == 0 || $e_oly_master == 0 || $e_oly_subject == 0) {
$msgResp = "<div class='alert alert-danger'>Error:Please select exam and master from dropdown</div>";
} else {
$_SESSION['e_oly_exam'] = $e_oly_exam;
$_SESSION['e_oly_master'] = $e_oly_master;
$_SESSION['e_oly_subject'] = $e_oly_subject;
}
}
/***
* move questions from exam to master
*/
if (isset($_REQUEST['e_move_ques'])) {
$move_in_topic = $_REQUEST['move_in_topic'];
$ques_ids = $_REQUEST['ques_id'];
$explIds = explode("-", $move_in_topic);
$e_sbtpc_master = $explIds[0];
$e_sbtpc_subject = $explIds[1];
$e_sbtpc_topic = $explIds[2];
$e_sub_topic = $explIds[3];
if ($move_in_topic != '') {
if (!empty($ques_ids)) {
$explIds = explode("-", $move_in_topic);
$e_exam_id = $explIds[0];
$e_sbtpc_master = $explIds[1];
$e_sbtpc_subject = $explIds[2];
$e_sbtpc_topic = $explIds[3];
$e_sub_topic = $explIds[4];
if ($e_exam_id != '' && $e_exam_id != '0' && $e_sbtpc_master != '' && $e_sbtpc_master != '0' && $e_sbtpc_subject != '' && $e_sbtpc_subject != '0' && $e_sbtpc_topic != '' && $e_sbtpc_topic != '0') {
foreach ($ques_ids as $qid) {
if ($qid != '' && $qid != '0') {
// echo "<br><pre>" . $e_sbtpc_master . '-' . $e_sbtpc_subject . '-' . $e_sbtpc_topic . '-' . $e_sub_topic . '--' . $qid;
$insertPrimaryQ = "UPDATE $SP_QUESTION set master_id='$e_sbtpc_master', subject_id='$e_sbtpc_subject', topic_id='$e_sbtpc_topic', sub_topic_id='$e_sub_topic' WHERE question_id='$qid'";
if ($conn->query($insertPrimaryQ)) {
echo "UPDATED";
}
}
}
} else {
$msgResp = "<div class='alert alert-danger'>Error:something went wrong</div>";
}
} else {
$msgResp = "<div class='alert alert-danger'>Error:Question not selected</div>";
}
} else {
$msgResp = "<div class='alert alert-danger'>Error:Please select all dropdown</div>";
}
}
$mType = 'oly';
include 'str_replace_type.php';
?>
<style>
.table-hover th,
td {
font-size: 13px;
}
.modal-backdrop.in {
opacity: 0.9 !important;
z-index: 9 !important;
}
</style>
<div class="row">
<div class="col-md-12">
<?php if (isset($msgResp)) echo $msgResp; ?>
</div>
<div class="col-md-12">
<div class="panel panel-primary">
<div class="panel-heading clearfix">
<h4 class="panel-title">
Select Exam-Master
</h4>
</div>
<div class="spacer"></div>
<div class="panel-body">
<form class="form-inline" method="post">
<div class="form-group">
<select name="e_oly_exam" class="form-control" required>
<option value="0">--Select olympiad Exam--</option>
<?php foreach ($allExam as $ms) {
if (isset($_SESSION['e_oly_exam']) && $_SESSION['e_oly_exam'] == $ms['exam_category_id']) {
$isSelect = "selected";
} else {
$isSelect = "";
}
?>
<option value="<?php echo $ms['exam_category_id']; ?>" <?php echo $isSelect; ?>><?php echo $ms['category_name']; ?></option>
<?php } ?>
</select>
</div>
<div class="form-group">
<select name="e_oly_master" id="e_oly_master" class="form-control" required>
<option value="0">--Select Olympiad Master--</option>
<?php foreach ($allMaster as $am) {
if (isset($_SESSION['e_oly_master']) && $_SESSION['e_oly_master'] == $am['master_id']) {
$isSelectM = "selected";
} else {
$isSelectM = "";
}
?>
<option value="<?php echo $am['master_id']; ?>" <?php echo $isSelectM; ?>><?php echo $am['master_name']; ?> </option>
<?php } ?>
</select>
</div>
<div class="form-group">
<select name="e_oly_subject" id="e_oly_subject" class="form-control" required>
<option value="0">--Select Olympiad Subject--</option>
<?php if (isset($_SESSION['e_oly_exam']) && isset($_SESSION['e_oly_master']) && isset($_SESSION['e_oly_subject'])) {
$findInmaster = $_SESSION['e_oly_master'];
$getFirstSubjects = $conn->query("SELECT sub_id,category_name FROM $SP_MASTER_STRUCTURE where master_id='$findInmaster' and parent_id='0'");
foreach ($getFirstSubjects as $fsb) {
?>
<option value="<?php echo $fsb['sub_id']; ?>" <?php if ($fsb['sub_id'] == $_SESSION['e_oly_subject']) echo "selected"; ?>><?php echo $fsb['category_name']; ?></option>
<?php }
} ?>
</select>
</div>
<input class="btn btn-info" type="submit" value="Select Master" name="e_find_ques" />
</form>
</div>
</div>
</div>
<?php if (isset($_SESSION['e_oly_exam']) && isset($_SESSION['e_oly_master']) && isset($_SESSION['e_oly_subject'])) {
$csc_exam_id = $_SESSION['e_oly_exam'];
$csc_master_id = $_SESSION['e_oly_master'];
$csc_subject_id = $_SESSION['e_oly_subject'];
/***
* get question from selectedexam which doesn't exist in selected master
*/
# START pagination query
$limit = 100;
$pageNo = isset($_GET['pageN']) ? $_GET['pageN'] : 1;
$indexN = ($pageNo - 1) * $limit;
$countQuery = $live->query("SELECT count(q.question_id) as total FROM $SP_EXAM_QUESTION_LINKAGE as ql LEFT JOIN $SP_QUESTION as q on q.question_id=ql.question_id LEFT JOIN $SP_MASTER_CATEGORY as mc on mc.master_id=q.master_id WHERE ql.exam_type_id='$csc_exam_id' and ql.question_id NOT IN(SELECT question_id FROM $SP_QUESTION where q.master_id='$csc_master_id' and q.subject_id='$csc_subject_id')");
$cQuery = $countQuery->fetch_assoc();
$count = $cQuery['total'];
$noOfPages = ceil($count / $limit);
# pagination query END
$getQuestions = $live->query("SELECT q.question_id,q.question_statement,ms.category_name as subject,mss.category_name as topic,mc.master_name FROM $SP_EXAM_QUESTION_LINKAGE as ql LEFT JOIN $SP_QUESTION as q on q.question_id=ql.question_id LEFT JOIN $SP_MASTER_STRUCTURE as ms on ms.sub_id=q.subject_id LEFT JOIN $SP_MASTER_STRUCTURE as mss on mss.sub_id=q.topic_id LEFT JOIN $SP_MASTER_CATEGORY as mc on mc.master_id=q.master_id WHERE ql.exam_type_id='$csc_exam_id' and ql.question_id NOT IN(SELECT question_id FROM $SP_QUESTION where q.master_id='$csc_master_id' and q.subject_id='$csc_subject_id') limit $indexN, $limit");
echo $live->error;
?>
<form method="post">
<div class="col-md-8">
<div class="panel panel-info">
<div class="panel-heading clearfix">
<h4 class="panel-title" style="width: 100%;">Question Statements</h4>
</div>
<div class="spacer"></div>
<div class="panel-body">
<div class="row">
<div class="col-md-12">
<input type="checkbox" id="checkAll" value="0">Select All
<div class="table-responsive">
<table class="table table-hover tableFixHead" style="width:100%;">
<thead>
<tr>
<th>#</th>
<th>Master-Subject-topic</th>
<th>Question Id</th>
<th>Statement</th>
</tr>
</thead>
<tbody>
<?php
$i = 1 + $indexN;
foreach ($getQuestions as $q) {
$question_id = $q['question_id'];
$question = str_replace('../', $root_link, $q['question_statement']);
$question = str_replace($spaceArray, $replaceSpaceArray, $question);
$getTopic = $live->query("select e.category_name from $SP_EXAM_QUESTION_LINKAGE as l left join $TT_EXAM_CATEGORIES_TABLE as e ON e.exam_category_id=l.topic_id where l.question_id=$question_id limit 1");
$getTopic1 = $getTopic->fetch_assoc();
?>
<tr>
<td><?php echo $i; ?></td>
<td><?php echo $q['master_name'] . '/' . $q['subject'] . '/' . $q['topic']; ?></td>
<td>
<p>
<input class="checkAll1" style="height:22px; width:22px; border:1px solid #FF0000;" type="checkbox" name="ques_id[]" value="<?php echo $question_id; ?>">
<a href="nqb_single_question_view?qId=<?php echo $question_id; ?>&secMed=2" target="_blank" rel="noopener noreferrer">
<?php echo $question_id; ?> (<?php echo $getTopic1['category_name']; ?>)
</a>
</p>
</td>
<td><?php echo $question; ?></td>
</tr>
<?php $i++;
} ?>
</tbody>
</table>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="col-md-4">
<div class="panel panel-info">
<div class="panel-heading clearfix">
<h4 class="panel-title" style="width: 100%;">Move in Master</h4>
</div>
<div class="spacer"></div>
<div class="panel-body">
<div class="row">
<div class="col-md-12">
<?php include_once('nqb_olympiad_master_treeview.php'); ?>
</div>
<button type="submit" class="btn btn-success" name="e_move_ques">Move</button>
</div>
</div>
</div>
</div>
</form>
<div class="col-md-12">
<!-- <span class="badge badge-info">Total Data : <?php //echo $count; ?></span> -->
<?php echo pagination($limit, $pageNo, $pagination_link . "?pageN=", $count); ?>
</div>
<?php } ?>
</div>
</div><!-- Main Wrapper -->
<div class="page-footer">
<p class="no-s">Graposs Connect ©</p>
</div>
</div><!-- Page Inner -->
<script type="text/javascript">
jQuery(document).ready(function() {
jQuery('#e_sbtpc_master').on('change', function() {
var mid = jQuery("#e_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("#e_sbtpc_subject").html(data);
});
});
jQuery('#e_oly_master').on('change', function() {
var mid = jQuery("#e_oly_master").val();
var loadUrl = "ajax_call/nqb_master_topics.php?eid=" + mid + "&type=master";
var jqxhr = jQuery.get(loadUrl);
jqxhr.success(function(data) {
jQuery("#e_oly_subject").html(data);
});
});
jQuery('#e_sbtpc_subject').on('change', function() {
var subId = jQuery("#e_sbtpc_subject").val();
var mid = jQuery("#e_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("#e_sbtpc_topic").html(data);
});
});
jQuery('#e_sbtpc_topic').on('change', function() {
var subId = jQuery("#e_sbtpc_topic").val();
var mid = jQuery("#e_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("#e_sub_topic").html(data);
var len = jQuery("#e_sub_topic option").length;
//jQuery("#sub2pic").text(len);
document.getElementById("sub2pic").innerHTML = "(" + len + ")";
document.getElementById("sub2pic_count").value = len;
});
});
});
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);
}
});
</script>
<?php
} else {
echo "<script>alert('You dont have access for this page');</script>";
echo "<script type='text/javascript'>location.href='/work-sp';</script>";
}
include_once('footer.php');
?>