File: /var/www/content-sp/work-sp/nqb_proofread_exam_wise_oly.php
<?php
include_once('nqb_master_section_oly.php');
// error_reporting(0);
// error_reporting(E_ALL);
// ini_set('display_errors','On');
//check edit permissions
$fileName = str_replace('.php', '', basename($_SERVER['REQUEST_URI'], '?' . $_SERVER['QUERY_STRING']));
if (in_array($fileName, $pageArray)) {
$adminId = $editor_id;
echo $curDate = date('Y-m-d H:i:s');
$SP_EXAM_QUESTION_LINKAGE = 'shineoly_2022.wp_shine_sp_exam_question_linkage';
$SP_MASTER_CATEGORY = 'csp_sp_master_category';
$SP_MASTER_STRUCTURE = 'csp_sp_master_structure';
$SP_MEDIUM = 'csp_sp_medium';
$SP_QUESTION = 'contentserver_202130.csp_sp_question';
$SP_QUESTION_MEDIUM_WISE = 'contentserver_202130.csp_sp_question_medium_wise';
$SP_EDITORS = 'csp_editors';
$SP_MASTER_PROOF_READ_ACCESS = 'csp_proofread_access';
$SP_TEAM_ACCESS = 'csp_team_user_access';
$getAssignee = $conn->query("SELECT editor_id, contact_name from $SP_EDITORS where team_id='3' and editor_status='1' order by contact_name asc");
/**live config */
include_once '../cron/config.php';
$allExam = $live->query("SELECT e.exam_category_id, e.category_name,e.app_status from shineoly_2022.wp_shine_tt_exam_categories 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");
$allMedium = $conn->query("SELECT medium_id, medium_name from $SP_MEDIUM order by medium_id");
/**submit form */
if (isset($_POST["submit"])) {
$master = $_POST["examm"];
$subject = $_POST["subject"];
$topic = $_POST["topic"];
$assignee = $_POST["assignee"];
$medium = $_POST["medium"];
$target_medium = $_POST["target_medium"];
$qtyp_proof = $_POST["qtyp_proof"];
$qtyp_nproof = @$_POST["qtyp_nproof"];
$ttype = $_POST["ttype"];
$limit_ques = $_POST['limit_ques'];
if ($limit_ques == '') {
$limit = '10';
} else {
$limit = $limit_ques;
}
if ($qtyp_proof != '' && $qtyp_nproof != '') {
$showQuesType = $qtyp_proof . "," . $qtyp_nproof;
} else if ($qtyp_proof != '' && $qtyp_nproof == '') {
$showQuesType = $qtyp_proof;
} else if ($qtyp_proof == '' && $qtyp_nproof != '') {
$showQuesType = $qtyp_nproof;
} else {
$showQuesType = $qtyp_proof;
}
if ($ttype == '1') {
$level_status = 1;
# check secondary questions for translate or proofread
$nullQuery = "and sqm.question_id IS NULL";
} else {
$level_status = 0;
# check secondary questions for translate or proofread
$nullQuery = "";
}
/**live query */
include_once '../cron/config.php';
$questionIds = $live->query("SELECT sq.question_id FROM $SP_EXAM_QUESTION_LINKAGE as e LEFT JOIN $SP_QUESTION as sq on sq.question_id=e.question_id Left join $SP_QUESTION_MEDIUM_WISE as sqm on sqm.question_id=sq.question_id and sqm.medium_id='$target_medium' where e.topic_id='$topic' and sq.medium_id='$medium' and sq.status IN($showQuesType) $nullQuery limit $limit");
$ques_ids = array();
foreach ($questionIds as $q_arr) {
$ques_ids[] = $q_arr['question_id'];
}
$makeCommaQues = implode(",", $ques_ids);
if($makeCommaQues != '') {
// $checkAccess = $conn->query("SELECT count(id) as total from $SP_MASTER_PROOF_READ_ACCESS where assign_to='$assignee' and status IN('0', '1')");
// $cA = $checkAccess->fetch_assoc();
$checkProofReader = $conn->query("SELECT count(id) as total from $SP_TEAM_ACCESS where editor_id='$assignee' and work_id='8'");
$cpf = $checkProofReader->fetch_assoc();
if ($cpf['total'] == 0) {
$conn->query("INSERT into $SP_TEAM_ACCESS set editor_id='$assignee', team_id='3', work_id='8', status='1', added_date='$curDate'");
}
//23912
// if ($cA['total'] < 21) {
$insertQuery = "INSERT into $SP_MASTER_PROOF_READ_ACCESS set master_type='oly',master_id='$master', subject_id='$subject', topic_id='$topic', sub_topic_id='0', medium_id='$medium', target_medium='$target_medium', assign_type='exam', ques_type='$showQuesType', assign_to='$assignee', level_status='$level_status', status='1', assign_by='$adminId', assign_date='$curDate', questions='$makeCommaQues', limit_ques='$limit_ques'";
if ($conn->query($insertQuery)) {
$msg = '<font style="color:green;">Success: Assigned successfully</font>';
} else {
$msg = '<font style="color:red;">Error: Topic already assigned</font>';
}
// } else {
// $msg = '<font style="color:red;">Error: You can not assign more then 20 topic to a single user</font>';
// }
} else {
$msg = '<font style="color:red;">Error: not have questions</font>';
}
}
?>
<style>
.form-group select {
height: 34px;
}
.modal-backdrop {
z-index: 999 !important;
}
.radio_ans {
top: -2px;
left: 11px;
height: 15px !important;
width: 25px !important;
background-color: #eee !important;
border-radius: 50%;
position: relative !important;
opacity: 1 !important;
}
select.form-control {
width: 15em !important;
}
table.dataTable {
font-size: 13px;
}
.delWork {
color: red;
font-size: 15px;
cursor: pointer;
margin-left: 4px;
}
.tddd {
cursor: pointer;
}
</style>
<link href="assets/plugins/select2/css/select2.min.css" rel="stylesheet">
<script src="assets/plugins/select2/js/select2.min.js"></script>
<script type="text/javascript">
var jq = jQuery.noConflict();
jq(document).ready(function() {
jq('.editors-dropdown').select2();
});
</script>
<script src="assets/plugins/jquery/jquery-2.1.3.min.js"></script>
<script src="assets/plugins/jquery-ui/jquery-ui.min.js"></script>
<script type="text/javascript">
function validateFrm() {
var masterL = document.getElementById("examm").length;
var subjectL = document.getElementById("subject").length;
var topicL = document.getElementById("topic").length;
var masterN = document.assForm.examm.value;
var subjectN = document.assForm.subject.value;
var topicN = document.assForm.topic.value;
var medium = document.assForm.medium.value;
var assignee = document.assForm.assignee.value;
if (masterN == 'E' && masterL > 1) {
alert("Select Exam");
document.assForm.examm.focus();
return false;
}
if (subjectN == 'S' && subjectL > 1) {
alert("Select Subject");
document.assForm.subject.focus();
return false;
}
if (topicN == 'T' && topicL > 1) {
alert("Select Topic");
document.assForm.topic.focus();
return false;
}
if (medium == 'MD') {
alert("Select Medium");
document.assForm.medium.focus();
return false;
}
if (assignee == 'AS') {
alert("Select Assignee");
document.assForm.assignee.focus();
return false;
}
return true;
}
</script>
<div class="row">
<div class="col-md-6">
<div class="panel panel-info">
<div class="panel-heading clearfix">
<h4 class="panel-title">Assign Topic To Proof Read
<a href="new_<?php echo $fileName; ?>" target="_blank" rel="noopener noreferrer" style="margin: -8px 0px 0px 0px;" class="btn btn-danger btn-rounded">New Form for assign</a>
</h4>
</div>
<form class="form-inline" name="assForm" method="post" onsubmit="return validateFrm();">
<?php if (isset($msg)){ echo $msg; } ?>
<table class="table table-hover">
<!-- <tr>
<td colspan="2">You can assign maximun 20 topic to a single user.</td>
</tr> -->
<tr>
<th>Select Exam</th>
<td>
<select name="examm" class="form-control" id="examm">
<option value="E">-Exam-</option>
<?php foreach ($allExam as $exm) { ?>
<option value="<?php echo $exm['exam_category_id']; ?>"><?php echo $exm['category_name']; ?></option>
<?php } ?>
</select>
</td>
</tr>
<tr>
<th>Select Subject</th>
<td>
<select name="subject" class="form-control" id="subject">
<option value="S">-Subject-</option>
</select>
</td>
</tr>
<tr>
<th>Select Topic</th>
<td>
<select name="topic" class="form-control" id="topic">
<option value="T">-Topic-</option>
</select>
</td>
</tr>
<tr>
<th>Source Medium</th>
<td>
<select name="medium" class="form-control" id="medium">
<option value="MD">-Source Medium-</option>
<?php foreach ($allMedium as $md) { ?>
<option value="<?php echo $md['medium_id']; ?>"><?php echo $md['medium_name']; ?></option>
<?php } ?>
</select>
</td>
</tr>
<tr>
<th>Target Medium</th>
<td>
<select name="target_medium" class="form-control" id="target_medium">
<option value="MD">-Target Medium-</option>
<?php foreach ($allMedium as $md) { ?>
<option value="<?php echo $md['medium_id']; ?>"><?php echo $md['medium_name']; ?></option>
<?php } ?>
</select>
</td>
</tr>
<tr>
<td colspan="2" id="medium_text"></td>
</tr>
<tr>
<th>Show Ques Type</th>
<td>
<input type="checkbox" name="qtyp_proof" value="3,4">Proof Read
<input type="checkbox" name="qtyp_nproof" value="1,2">Non Proof Read
</td>
</tr>
<tr>
<th>Type</th>
<td>
<input type="radio" name="ttype" value="0">Proof Reader
<input type="radio" name="ttype" value="1">Translator
</td>
</tr>
<tr>
<th>Limit</th>
<td><input type="number" name="limit_ques" class="form-control"></td>
</tr>
<tr>
<th>Select Assignee</th>
<td>
<select name="assignee" class="form-control editors-dropdown" id="assignee">
<option value="AS">-Assignee-</option>
<?php foreach ($getAssignee as $ass) { ?>
<option value="<?php echo $ass['editor_id']; ?>"><?php echo $ass['contact_name']; ?></option>
<?php } ?>
</select>
</td>
</tr>
<tr>
<td colspan="2">
<button type="submit" class="btn btn-info" name="submit">Submit</button>
</td>
</tr>
</table>
</form>
</div>
</div>
<div class="page-footer">
<p class="no-s">Graposs Connect ©</p>
</div>
</div>
<script type="text/javascript">
jQuery.noConflict();
jQuery(document).ready(function() {
jQuery('#examm').on('change', function() {
var exam_id = jQuery("#examm").val();
var loadUrl = "ajax_call/nqb_cscoly_topics.php?exam_id=" + exam_id + "&type=S";
var jqxhr = jQuery.get(loadUrl);
jqxhr.success(function(data) {
jQuery("#subject").html(data);
jQuery("#medium_text").html('');
});
});
jQuery('#subject').on('change', function() {
var sub_id = jQuery("#subject").val();
var loadUrl = "ajax_call/nqb_cscoly_topics.php?sub_id=" + sub_id + "&type=T";
var jqxhr = jQuery.get(loadUrl);
jqxhr.success(function(data) {
jQuery("#topic").html(data);
jQuery("#medium_text").html('');
});
});
jQuery('#topic').on('change', function() {
jQuery('#medium').prop('selectedIndex', 0);
jQuery('#target_medium').prop('selectedIndex', 0);
jQuery("#medium_text").html('');
});
jQuery('#medium').on('change', function() {
var med_id = jQuery("#medium").val();
var t_med_id = jQuery("#target_medium").val();
if (med_id == t_med_id) {
alert("source and target medium can not be same");
jQuery("#target_medium").val('MD');
jQuery("#medium").val('MD');
jQuery("#medium_text").html('');
return false;
}
jQuery("#medium_text").html('');
});
jQuery('#target_medium').on('change', function() {
var med_id = jQuery("#medium").val();
var t_med_id = jQuery("#target_medium").val();
if (med_id == t_med_id) {
alert("source and target medium can not be same");
jQuery("#target_medium").val('MD');
jQuery("#medium_text").html('');
return false;
} else {
var exm_id = jQuery("#examm").val();
var tpc_id = jQuery("#topic").val();
if (tpc_id == 'T') {
alert("Please select topics.");
} else {
var loadUrl = "ajax_call/nqb_oly_exam_wise_trns_prf_ques.php?med_id=" + med_id + "&t_med_id=" + t_med_id + "&exm_id=" + exm_id + "&tpc_id=" + tpc_id;
var jqxhr = jQuery.get(loadUrl);
jqxhr.success(function(data) {
jQuery("#medium_text").html(data);
});
}
}
});
});
</script>
<?php
} else {
echo "<script type='text/javascript'>alert('You dont have access to assign');</script>";
echo "<script type='text/javascript'>location.href='/work-sp';</script>";
}
include_once('footer.php');
?>