0xV3NOMx
Linux ip-172-26-7-228 5.4.0-1103-aws #111~18.04.1-Ubuntu SMP Tue May 23 20:04:10 UTC 2023 x86_64



Your IP : 18.222.119.143


Current Path : /var/www/oasis/src_old/
Upload File :
Current File : /var/www/oasis/src_old/subject_freshExam.php

<?php

function replaceChars($name)
{
    $spl_char = array("*","/","~","!","@","#","$","%","^","&",":",";","?","/","\\","_","-","'"," ","");
    $link_name = strtolower(str_replace($spl_char,"_",$name));
    return str_ireplace("__","_",$link_name);
}
function PopulateFreshExamSubject($aobj_context)
{
    session_start();

    $aobj_context->mobj_db->SetFetchMode(ADODB_FETCH_ASSOC);
    $college_code = $_SESSION['collcode'];
    $Regno = $aobj_context->mobj_data["Regno"];
    $degree = $aobj_context->mobj_data["degree"];
    $exam = $aobj_context->mobj_data["Examno"];
    $prevFreshSub = $aobj_context->mobj_data["prevFreshSub"];
    $exam_appear=array();

	$query = "select * from collexam where fdegree = '{$degree}' 
	and fcollcode = '{$college_code}' 
	and fexamno = '{$exam}'
	and DATE_FORMAT(NOW(),'%Y-%m-%d') 
	BETWEEN DATE_FORMAT(fsubcrfrom,'%Y-%m-%d') 
	AND DATE_FORMAT(fsubcrto,'%Y-%m-%d') ";
	$student_exam_details = $aobj_context->mobj_db->GetRow($query); 

	if(count($student_exam_details) > 0)
	{

	}else
	{

		$id="<tr style='height: 20'>";
        $id.="<td colspan=9 align = 'center'><b>Subject corrections are not available now!<b></td>";
        $id.="</tr>";
        $arr['html_data']=$id;
        echo $aobj_context->mobj_output->ToJSONEnvelope($arr,-1,"success");
		return;
		
	} 

    $qry = " select c.FDEGREE,c.FEXAMNO,c.FCOLLCODE,c.FREGNO,
			IF(IFNULL(c.FCATEGORY,'')='',if(ifnull(s.FCASTE,'') = '', 'GM', s.FCASTE) ,c.FCATEGORY) AS FCATEGORY,
			if(c.Fgender='',s.Fgender,c.Fgender) as Fgender,c.FAPPEARA,c.FEXAMFEEA,
			c.FAPPEARB,c.FEXAMFEEB,c.FAPPEARC,c.FEXAMFEEC,c.FAPPEARD,c.FEXAMFEED,c.FAPPEARE,
			c.FEXAMFEEE,c.FAPPEARF,c.FEXAMFEEF,c.FAPPEARG,c.FEXAMFEEG,c.FAPPEARH,c.FEXAMFEEH,
			c.FAPPEARI,c.FEXAMFEEI,c.FAPPEARJ,c.FEXAMFEEJ,round(c.FTOTALFEE,2) as FTOTALFEE,
			c.FYEAR,c.FEXAMTYPE,c.FDELETED,FRECPTNO,DATE_FORMAT(FRECPTDATE,'%d/%m/%Y') as FRECPTDATE
			,FREMARKS,c.FTOTSUBA,c.FTOTSUBB,c.FTOTSUBC,c.FTOTSUBD,c.FTOTSUBE,c.FTOTSUBF,c.FTOTSUBG,c.FTOTSUBH,
			c.FTOTSUBI,c.FTOTSUBJ,concat('*',c.FCONSTYPE) as FCONSTYPE,ifnull(c.FELIG,'0123456789') as FELIG,
			sum(if(t.fexamno = 'A',1,0)) as fcnta, sum(if(t.fexamno = 'B',1,0)) as fcntb,
			sum(if(t.fexamno = 'C',1,0)) as fcntc, sum(if(t.fexamno = 'D',1,0)) as fcntd,
			sum(if(t.fexamno = 'E',1,0)) as fcnte, sum(if(t.fexamno = 'F',1,0)) as fcntf,
			sum(if(t.fexamno = 'G',1,0)) as fcntg, sum(if(t.fexamno = 'H',1,0)) as fcnth,
			sum(if(t.fexamno = 'I',1,0)) as fcnti, sum(if(t.fexamno = 'J',1,0)) as fcntj,
			FRECPTNOA,DATE_FORMAT(FRECPTDATEA,'%d/%m/%Y') AS FRECPTDATEA,
			FRECPTNOB,DATE_FORMAT(FRECPTDATEB,'%d/%m/%Y') AS FRECPTDATEB,
			FRECPTNOC,DATE_FORMAT(FRECPTDATEC,'%d/%m/%Y') AS FRECPTDATEC ,
			FRECPTNOD,DATE_FORMAT(FRECPTDATED,'%d/%m/%Y') AS FRECPTDATED ,
			FRECPTNOE,DATE_FORMAT(FRECPTDATEE,'%d/%m/%Y') AS FRECPTDATEE ,
			FRECPTNOF,DATE_FORMAT(FRECPTDATEF,'%d/%m/%Y') AS FRECPTDATEF ,
			FRECPTNOG,DATE_FORMAT(FRECPTDATEG,'%d/%m/%Y') AS FRECPTDATEG ,
			FRECPTNOH,DATE_FORMAT(FRECPTDATEH,'%d/%m/%Y') AS FRECPTDATEH ,
			FRECPTNOI,DATE_FORMAT(FRECPTDATEI,'%d/%m/%Y') AS FRECPTDATEI ,
			FRECPTNOJ,DATE_FORMAT(FRECPTDATEJ,'%d/%m/%Y') AS FRECPTDATEJ ,
			FFRESHEXAM  
			from candsum c left join student s on s.FDEGREE=c.FDEGREE 
			and s.FREGNO=c.FREGNO
			left outer join canddet t
			on c.fdegree = t.fdegree and c.fregno = t.fregno
			where c.FDEGREE='{$degree}' 
			and c.FCOLLCODE='{$college_code}'
            and c.FREGNO='{$Regno}' 
            and ifnull(c.FFRESHEXAM,'') = '{$exam}'";
            
    $student_exam_details = $aobj_context->mobj_db->GetRow($qry);
    if($student_exam_details)
    {
                
        $fcnta  = $student_exam_details['fcnta'];
		$fcntb  = $student_exam_details['fcntb'];
		$fcntc  = $student_exam_details['fcntc'];	
		$fcntd  = $student_exam_details['fcntd'];
		$fcnte  = $student_exam_details['fcnte'];
		$fcntf  = $student_exam_details['fcntf'];
		$fcntg  = $student_exam_details['fcntg'];
		$fcnti  = $student_exam_details['fcnti'];
        $fcntj  = $student_exam_details['fcntj'];
        
        if($student_exam_details['FAPPEAR'.$exam]=='N')
        {
            $arr['html_data']="<tr style='height: 20px;color:red;font-size:18px;'><td COLSPAN=3 align = 'center'><b>Student is not eligible for the given examination<b></td></tr>";
            
            //$id=" id ='cand_entry_".$exam."'";
        }
        else if($student_exam_details['FAPPEAR'.$exam]=='P')
        {
            $arr['html_data']="<tr style='height: 20px;color:green;font-size:18px;'><td COLSPAN=3 align = 'center'><b>Student has already passed in the given examination.<b></td></tr>";
            
            //$id=" id ='cand_entry_".chr($i)."'";
        }
        else  if($student_exam_details['FAPPEAR'.$exam]=='A' || $student_exam_details['FAPPEAR'.$exam]=='E')
        {
            array_push($exam_appear,$exam);
        //$id=" id='cand_entry_".$exam."'";
        //$td_data="<Input  onclick=showExamNosDiv('{$html_id}'); {$id}  name='radio_common' type='radio'>";
        //$id='';
        }
        //if($exam ==$exam_appear);
    
         
        // $get_total_sub_for_degree="select * from degree where FDEGREE='{$degree}'";
        // $lobj_get_total_sub_for_degree = $aobj_context->mobj_db->GetAll($get_total_sub_for_degree);
         
        // for($j=0;$j<count($lobj_get_total_sub_for_degree);$j++)
        // {
        //     if($lobj_get_total_sub_for_degree[$j]['FEXAMNO']=='A')
        //     {
        //         $exam_A_limit=$lobj_get_total_sub_for_degree[$j]['FTOTSUB'];
        //         $semister_names['A']=$lobj_get_total_sub_for_degree[$j]['FEXAMNAME'];
        //     }
        //     else if($lobj_get_total_sub_for_degree[$j]['FEXAMNO']=='B')
        //     {
        //         $exam_B_limit=$lobj_get_total_sub_for_degree[$j]['FTOTSUB'];
        //         $semister_names['B']=$lobj_get_total_sub_for_degree[$j]['FEXAMNAME'];
        //     }
        //     else if($lobj_get_total_sub_for_degree[$j]['FEXAMNO']=='C')
        //     {
        //         $exam_C_limit=$lobj_get_total_sub_for_degree[$j]['FTOTSUB'];
        //         $semister_names['C']=$lobj_get_total_sub_for_degree[$j]['FEXAMNAME'];
        //     }
        //     else if($lobj_get_total_sub_for_degree[$j]['FEXAMNO']=='D')
        //     {
        //         $exam_D_limit=$lobj_get_total_sub_for_degree[$j]['FTOTSUB'];
        //         $semister_names['D']=$lobj_get_total_sub_for_degree[$j]['FEXAMNAME'];
        //     }
        //     else if($lobj_get_total_sub_for_degree[$j]['FEXAMNO']=='E')
        //     {
        //         $exam_E_limit=$lobj_get_total_sub_for_degree[$j]['FTOTSUB'];
        //         $semister_names['E']=$lobj_get_total_sub_for_degree[$j]['FEXAMNAME'];
        //     }
        //     else if($lobj_get_total_sub_for_degree[$j]['FEXAMNO']=='F')
        //     {
        //         $exam_F_limit=$lobj_get_total_sub_for_degree[$j]['FTOTSUB'];
        //         $semister_names['F']=$lobj_get_total_sub_for_degree[$j]['FEXAMNAME'];
        //     }
        //     else if($lobj_get_total_sub_for_degree[$j]['FEXAMNO']=='G')
        //     {
        //         $exam_G_limit=$lobj_get_total_sub_for_degree[$j]['FTOTSUB'];
        //         $semister_names['G']=$lobj_get_total_sub_for_degree[$j]['FEXAMNAME'];
        //     }
        //     else if($lobj_get_total_sub_for_degree[$j]['FEXAMNO']=='H')
        //     {
        //         $exam_H_limit=$lobj_get_total_sub_for_degree[$j]['FTOTSUB'];
        //         $semister_names['H']=$lobj_get_total_sub_for_degree[$j]['FEXAMNAME'];
        //     }
        //     else if($lobj_get_total_sub_for_degree[$j]['FEXAMNO']=='I')
        //     {
        //         $exam_I_limit=$lobj_get_total_sub_for_degree[$j]['FTOTSUB'];
        //         $semister_names['I']=$lobj_get_total_sub_for_degree[$j]['FEXAMNAME'];
        //     }
        //     else if($lobj_get_total_sub_for_degree[$j]['FEXAMNO']=='J')
        //     {
        //         $exam_J_limit=$lobj_get_total_sub_for_degree[$j]['FTOTSUB'];
        //         $semister_names['J']=$lobj_get_total_sub_for_degree[$j]['FEXAMNAME'];
        //     }
        // }
            
            



        $get_total_sub_for_degree="select * from degree where FDEGREE='{$degree}'";
		$lobj_get_total_sub_for_degree = $aobj_context->mobj_db->GetAll($get_total_sub_for_degree); 
		$totsub = explode(',',$totsub);		 
		for($j=0;$j<count($lobj_get_total_sub_for_degree);$j++)
		{
			if($lobj_get_total_sub_for_degree[$j]['FEXAMNO'] == 'A')
			{

				//var_dump($fcnta.' - '.$lobj_get_total_sub_for_degree[$j]['FEXAMNAME']);
				if($totsub[$j] > 0)
					$exam_A_limit = $totsub[$j];
				else if($fcnta > $lobj_get_total_sub_for_degree[$j]['FTOTSUB'])
					$exam_A_limit = $fcnta;
				else
					$exam_A_limit = $lobj_get_total_sub_for_degree[$j]['FTOTSUB'];
				
				$semister_names['A'] = $lobj_get_total_sub_for_degree[$j]['FEXAMNAME'];
			}
			else if($lobj_get_total_sub_for_degree[$j]['FEXAMNO']=='B')
			{ 
				if($totsub[$j] > 0)
					$exam_B_limit = $totsub[$j];
				else if($fcntb > $lobj_get_total_sub_for_degree[$j]['FTOTSUB'])
					$exam_B_limit = $fcntb;
				else
					$exam_B_limit=$lobj_get_total_sub_for_degree[$j]['FTOTSUB'];
				
				$semister_names['B']=$lobj_get_total_sub_for_degree[$j]['FEXAMNAME'];
			}
			else if($lobj_get_total_sub_for_degree[$j]['FEXAMNO']=='C')
			{
				if($totsub[$j] > 0)
					$exam_C_limit = $totsub[$j];
				else if($fcntc > $lobj_get_total_sub_for_degree[$j]['FTOTSUB'])
					$exam_C_limit = $fcntc;
				else
					$exam_C_limit=$lobj_get_total_sub_for_degree[$j]['FTOTSUB'];
				
				$semister_names['C']=$lobj_get_total_sub_for_degree[$j]['FEXAMNAME'];
			}
			else if($lobj_get_total_sub_for_degree[$j]['FEXAMNO']=='D')
			{
				if($totsub[$j] > 0)
					$exam_D_limit = $totsub[$j];
				else if($fcntd > $lobj_get_total_sub_for_degree[$j]['FTOTSUB'])
					$exam_D_limit = $fcntd;
				else
					$exam_D_limit=$lobj_get_total_sub_for_degree[$j]['FTOTSUB'];

				$semister_names['D']=$lobj_get_total_sub_for_degree[$j]['FEXAMNAME'];
			}
			else if($lobj_get_total_sub_for_degree[$j]['FEXAMNO']=='E')
			{
				if($totsub[$j] > 0)
					$exam_E_limit = $totsub[$j];
				else if($fcnte > $lobj_get_total_sub_for_degree[$j]['FTOTSUB'])
					$exam_E_limit = $fcnte;
				else
					$exam_E_limit=$lobj_get_total_sub_for_degree[$j]['FTOTSUB'];
				
				$semister_names['E']=$lobj_get_total_sub_for_degree[$j]['FEXAMNAME'];
			}
			else if($lobj_get_total_sub_for_degree[$j]['FEXAMNO']=='F')
			{
				if($totsub[$j] > 0)
					$exam_F_limit = $totsub[$j];
				else if($fcntf > $lobj_get_total_sub_for_degree[$j]['FTOTSUB'])
					$exam_F_limit = $fcntf;
				else
					$exam_F_limit=$lobj_get_total_sub_for_degree[$j]['FTOTSUB'];
				
				$semister_names['F']=$lobj_get_total_sub_for_degree[$j]['FEXAMNAME'];
			}	
			else if($lobj_get_total_sub_for_degree[$j]['FEXAMNO']=='G')
			{
				if($totsub[$j] > 0)
					$exam_G_limit = $totsub[$j];
				else if($fcntg > $lobj_get_total_sub_for_degree[$j]['FTOTSUB'])
					$exam_G_limit = $fcntg;
				else
					$exam_G_limit=$lobj_get_total_sub_for_degree[$j]['FTOTSUB'];
				
				$semister_names['G']=$lobj_get_total_sub_for_degree[$j]['FEXAMNAME'];
			}
			else if($lobj_get_total_sub_for_degree[$j]['FEXAMNO']=='H')
			{
				if($totsub[$j] > 0)
					$exam_H_limit = $totsub[$j];
				else if($fcnth > $lobj_get_total_sub_for_degree[$j]['FTOTSUB'])
					$exam_H_limit = $fcnth;
				else
					$exam_H_limit=$lobj_get_total_sub_for_degree[$j]['FTOTSUB'];
				
				$semister_names['H']=$lobj_get_total_sub_for_degree[$j]['FEXAMNAME'];
			}
			else if($lobj_get_total_sub_for_degree[$j]['FEXAMNO']=='I')
			{
				if($totsub[$j] > 0)
					$exam_I_limit = $totsub[$j];
				else if($fcnti > $lobj_get_total_sub_for_degree[$j]['FTOTSUB'])
					$exam_I_limit = $fcnti;
				else
					$exam_I_limit=$lobj_get_total_sub_for_degree[$j]['FTOTSUB'];
				
				$semister_names['I']=$lobj_get_total_sub_for_degree[$j]['FEXAMNAME'];
			}
			else if($lobj_get_total_sub_for_degree[$j]['FEXAMNO']=='J')
			{
				if($totsub[$j] > 0)
					$exam_J_limit = $totsub[$j];
				else if($fcntj > $lobj_get_total_sub_for_degree[$j]['FTOTSUB'])
					$exam_J_limit = $fcntj;
				else
					$exam_J_limit=$lobj_get_total_sub_for_degree[$j]['FTOTSUB'];
				
				$semister_names['J']=$lobj_get_total_sub_for_degree[$j]['FEXAMNAME'];
			}
        }
        
        if(in_array($exam,$exam_appear))
        {
            $id='';
            $remaining_count=0;
            $id="\$exam_".$exam;
            $html_id="candidate_list_exam_".$exam."_details";
         
             $char_name=$exam;
             $max_limit="\$exam_".$char_name."_limit";
             eval("\$max_limit = \"$max_limit\";");
         
            $FEXAMNO=$exam;
            $id="<table  class='tr_ventor_row content-tbl' width='100%' border='0' cellspacing='0' cellpadding='0'>";
            $id.="<th align='left' colspan='10' class='ui-jqgrid-titlebar ui-widget-header ui-corner-tl ui-corner-tr ui-helper' style='font-size:10px; padding-left:6px; height:20px;'>{$semister_names[$FEXAMNO]}</th>";
            $id.="<tr class='ui-state-default ui-jqgrid-hdiv'>";
            $id.="<td align='center' style='  font-size:12px; border-left:1px solid #C5DBEC; border-right:1px solid #C5DBEC; border-bottom:1px solid #C5DBEC;width:100px;padding:5px 5px;'>Sub Code</td>";
            $id.="<td align='center' style='  font-size:12px; border-right:1px solid #C5DBEC; border-bottom:1px solid #C5DBEC;width:100px;padding:5px 5px;'>QP Code</td>";
            $id.="<td align='center' style='  font-size:12px; border-right:1px solid #C5DBEC; border-bottom:1px solid #C5DBEC;padding:5px 5px;'>Subject / Paper Name </td>";
            $id.="</tr>";
          
            $get_header_exam_details ="select c.FSUBCODE,s.FSUBNAME,ifnull(c.FPASSMTH,'') as FPASSMTH,
                                s.FQPCODE AS FSUBSHORT,c.FEXAMTYPE,
                                ifnull(c.FPRESENT,'N') as FPRESENT,
                                if(c.FINSERTED='','F',c.FINSERTED) as FINSERTED, 
                                s.fmandatory from canddet c
                                inner join subject s on s.FDEGREE=c.FDEGREE
                                and s.FSUBCODE=c.FSUBCODE
                                where c.FDEGREE='{$degree}' and c.FCOLLCODE='{$college_code}' and
                                c.FEXAMNO='{$FEXAMNO}'  and
                                c.FREGNO='{$Regno}' and (s.fsubcode = ifnull(s.fvarsubgrp,'') or ifnull(s.fvarsubgrp,'') = '')
                                 group by c.FSUBCODE 
                                 order by c.FSUBCODE, FINSERTED,s.fmandatory desc
                                 limit $max_limit";
                                //var_dump($get_header_exam_details);
        $lobj_rs = $aobj_context->mobj_db->GetAll($get_header_exam_details);
        $remaining_count = $max_limit-count($lobj_rs);
        //var_dump($get_header_exam_details);
        $k=0;
        $txt_id=0;
          
                
        $subjectList='';
        for($m=0;$m<count($lobj_rs);$m++)
        {
            $code_pop_up_field="";
            $FSUBCODE=$lobj_rs[$m]['FSUBCODE'];
            $FSUBSHORT=$lobj_rs[$m]['FSUBSHORT'];
            $FSUBNAME=$lobj_rs[$m]['FSUBNAME'];
            if($lobj_rs[$m]['FPASSMTH']=='' or is_null($lobj_rs[$m]['FPASSMTH']))// to display pass M/Y based on the  value
            {
                $checked=($lobj_rs[$m]['FPRESENT']=='P')?" checked ":"";
                $FPASSMTH="<input type='checkbox' {$checked} id='exam_{$char_name}_ce_pass_{$txt_id}'>";
                $FPASSMTH_TD="";
                $code_pop_up_field="";
            }
            else
            {
                $FPASSMTH=$lobj_rs[$m]['FPASSMTH'];
                $FPASSMTH_TD=" id='exam_{$char_name}_ce_pass_{$txt_id}' ";
                $code_pop_up_field='readonly=true;';
			}
			
            if($lobj_rs[$m]['fmandatory'] !='T' && $lobj_rs[$m]['FINSERTED'] == 'T')// to display text box for the value if FINSERTED=''T
            {
                //$subjectInstList.=$FSUBCODE."*";
                $sub_code_input_border=    "background-color:#fff";
                $sub_code_input_popup=" onblur='getSubDetails(this.id,{$txt_id});'  onkeydown='return keyboardSubjectAppearingPopup(event,this.id);'";
                $sub_code_input_name="di";
                $input_tab_indx=" tabindex={$txt_id}";
                $read_only=" ";
            }
            else
            {
                $subjectPrevList.=$FSUBCODE."*";
                $sub_code_input_border=    " border:none;";
                $sub_code_input_popup=    "";
                $sub_code_input_name="update";
                $input_tab_indx=" tabindex=-1";
                $read_only=" readonly";
            }
            if($k%2==0)
            {
                $class='tbl_row';
                $inp_class='tbl_row_input';
            }
            else
            {
                $input_class='tbl_row1';
                $inp_class='tbl_row1_input';
            }
			$subjectList.=$FSUBCODE."*";
			
			$idsub = "exam_{$char_name}_ce_sub_code_{$txt_id}";

            $id.="<tr>";
            $id.="<td align='center' style='  font-size:12px;   border-left:1px solid #C5DBEC; border-right:1px solid #C5DBEC; border-bottom:1px solid #C5DBEC;'><input {$code_pop_up_field} {$inp_class} type=text style='width:60px; text-align:center;{$sub_code_input_border}' {$read_only} {$sub_code_input_popup} name='{$sub_code_input_name}'   id='exam_{$char_name}_ce_sub_code_{$txt_id}'  {$input_tab_indx} value='{$FSUBCODE}'> <input  style='text-align:center;' type = 'hidden' id = 'old_exam_{$char_name}_ce_sub_code_{$txt_id}' value='{$FSUBCODE}'> </td>";
            $id.="<td align='center'  style='  font-size:12px;   border-right:1px solid #C5DBEC; border-bottom:1px solid #C5DBEC;'id='exam_{$char_name}_ce_short_name_{$txt_id}' > {$FSUBSHORT}</td>";
            $id.="<td align='left' id='exam_{$char_name}_ce_desc_{$txt_id}'  style='  font-size:12px;    border-right:1px solid #C5DBEC; border-bottom:1px solid #C5DBEC;padding:5px 5px;'>   {$FSUBNAME}</td>";
            $id.="</tr>";
            $k++;
            $txt_id++;
        }
        
        $subject_prev_query = "select distinct FSUBCODE,FSUBNAME,FQPCODE AS FSUBSHORT from subject
        where  INSTR('{$prevFreshSub}',FSUBCODE) and fdegree='{$degree}' group by  FSUBCODE";
        $lobj_subject_prev = $aobj_context->mobj_db->GetAll($subject_prev_query);

        if($remaining_count>0)
        {
            $k=0;
            for($j=0;$j<$remaining_count;$j++)
            {
                
                if($k%2==0)
                {
                    $class='tbl_row';
                    $inp_class='tbl_row_input';
                }
                else
                {
                    $input_class='tbl_row1';
                    $inp_class='tbl_row1_input';
                }
                
                $FSUBCODE=$lobj_subject_prev[$j]['FSUBCODE'];
                $FSUBSHORT=$lobj_subject_prev[$j]['FSUBSHORT'];
                $FSUBNAME=$lobj_subject_prev[$j]['FSUBNAME'];
				$idsub = "exam_{$char_name}_ce_sub_code_{$txt_id}";
				
                 $id.="<tr>";
                 $id.="<td align='center'   style=' font-size:12px;   border-left:1px solid #C5DBEC; border-right:1px solid #C5DBEC; border-bottom:1px solid #C5DBEC;'><input  type='text' {$inp_class} name='new_insert'  onblur='getSubDetails(this.id,{$txt_id});'  onkeydown='return keyboardSubjectAppearingPopup(event,this.id);' style='width:60px;background-color:none' tabindex={$txt_id}   id='exam_{$char_name}_ce_sub_code_{$txt_id}' value='{$FSUBCODE}'> <input type = 'hidden'  id = 'old_exam_{$char_name}_ce_sub_code_{$txt_id}' value='{$FSUBCODE}'></td>";
                 $id.="<td align='center'  style=' font-size:12px;   border-right:1px solid #C5DBEC; border-bottom:1px solid #C5DBEC;'id='exam_{$char_name}_ce_short_name_{$txt_id}'>{$FSUBSHORT}</td>";
                 $id.="<td align='left'  id='exam_{$char_name}_ce_desc_{$txt_id}'   style=' font-size:12px;   border-right:1px solid #C5DBEC; border-bottom:1px solid #C5DBEC;'>{$FSUBNAME}</td>";
                 $id.="</tr>";
                 $k++;
                 $txt_id++;
            }
        }
        
            // if(empty($lobj_rs))
            // {
            //     $id.="<tr style='height: 20'>";
            //     $id.="<td COLSPAN=3 align = 'center'><b>No Records Found For this Search<b></td>";
            //     $id.="</tr>";
            // }
            $total_count_of_each_div[$html_id]=$txt_id;
            $exam_fee_val=$exam_fee[$html_id];
        
            $exam_receipt_no_val=$exam_receipt_no[$html_id];
            $exam_receipt_no_date_val=$exam_receipt_no_date[$html_id];
            
            $arr['html_data']=$id;
            $arr['total_count_of_each_div']=$total_count_of_each_div;
            
            $arr['subject_pre']=$subjectPrevList;
            /* if($remaining_count>0)
            $arr['subject_pre']=$subjectPrevList;
            else
            $arr['subject_pre']=$subjectInstList; */
        }
        echo $aobj_context->mobj_output->ToJSONEnvelope($arr,0,"success");
        return;
    }
    else
    {
        $id="<tr style='height: 20'>";
        $id.="<td COLSPAN=3 align = 'center'><b>No Records Found For this Search<b></td>";
        $id.="</tr>";
        $arr['html_data']=$id;
        echo $aobj_context->mobj_output->ToJSONEnvelope($arr,-1,"success");
        return;
    }
        
}

function PopulateFreshExamNo($aobj_context)
{
    session_start();
    $aobj_context->mobj_db->SetFetchMode(ADODB_FETCH_ASSOC);
    $college_code = $_SESSION['collcode'];
    $Regno = $aobj_context->mobj_data["Regno"];
    $degree = $aobj_context->mobj_data["degree"];
    
    $get_fresh_exam="select c.ffreshexam,d.fexamname from student s inner join degree d on d.FDEGREE=s.FDEGREE left join candsum c on c.fregno = s.fregno  where
    s.fcollcode= '{$college_code}'and s.fregno='{$Regno}' and   d.fexamno = c.ffreshexam";
     
    $lobj_rs_get_fresh_exam = $aobj_context->mobj_db->GetRow($get_fresh_exam);
    $error_blog='Not a Valid Register No';
    if($lobj_rs_get_fresh_exam)
    echo $aobj_context->mobj_output->ToJSONEnvelope($lobj_rs_get_fresh_exam,0,"success");
    else
    echo $aobj_context->mobj_output->ToJSONEnvelope($error_blog,-1,"error");
}

function saveFreshExamEntry($aobj_context)
{
    session_start();
    include_once("/JSON.php");
    $json = new Services_JSON();
    $aobj_context->mobj_db->SetFetchMode(ADODB_FETCH_ASSOC);
    $college_code = $_SESSION['collcode'];
    $FLOGNAME =  $_SESSION['usr'];
    $reg_no = $aobj_context->mobj_data["reg_no"];
    $degree = $aobj_context->mobj_data["degree"];
    $exam = $aobj_context->mobj_data["fresh_exam"];
    $lstr_param = stripslashes($aobj_context->mobj_data["details"]);
    $mobj_jsondata = $json->decode($lstr_param);
    $sub_arr_data = get_object_vars($mobj_jsondata);
    $sub_prev= $aobj_context->mobj_data["prevSubj"];
    $sub_prev_in = str_replace("*", "','", $sub_prev);
    // var_dump($sub_prev);
    $sub_prev = explode("*", $sub_prev);
    // var_dump($sub_prev);
    $check_adminsion_freeze ="  select distinct c.FCCLSTATUS, d.fmeyear, d.fmeexamtyp from colldeg c, degree d
                                    where c.fdegree = d.fdegree and c.FCOLLCODE='{$college_code}'
                                    and c.FDEGREE='{$degree}'";
	$lobj_check_adminsion_freeze = $aobj_context->mobj_db->getRow($check_adminsion_freeze);
	

	$qry ="select distinct * from candsum c
                                    where c.FCOLLCODE='{$college_code}'
									and c.FDEGREE='{$degree}'
									and c.fregno = '{$reg_no}'
									and ifnull(ffreshexam,'') ='{$exam}'";
	$res = $aobj_context->mobj_db->getRow($qry);
	
	
	
	$semexamfee = $res["FEXAMFEE{$exam}"]; 
	
	
	$prs = "";
	if($semexamfee > 0)
	{	
		$prs = "P";
	}	
	
	
	
    if(is_null($lobj_check_adminsion_freeze['FCCLSTATUS']))
    {
        $lstr_sub_fee = stripslashes($aobj_context->mobj_data["sub_fee"]);
        $mobj_lstr_sub_fee = $json->decode($lstr_sub_fee);
        $sub_fee_data = get_object_vars($mobj_lstr_sub_fee);

        //delete Newly inserted records
        
        $exam_data='';
        $char_id=$exam;
        $exam_data=get_object_vars($sub_arr_data[$char_id]);
        
        // var_dump($exam_data);
        $SubjectArray[1]=$exam_data;
        $exam_Subjdata='';
        $exam_Subjdata=get_object_vars($sub_arr_data[$char_id]);
        
// do insert/update
        $sub_fresh='';
        $char_id=$exam;
        
        
        if(!empty($exam_Subjdata))
        {
            for($k=0;$k<count($exam_Subjdata);$k++)
            {
                    
                if (!in_array($exam_Subjdata[$k]->sub, $sub_prev, true)) {
                        $sub_fresh.=$exam_Subjdata[$k]->sub.'*';
                    }
                    
				if($exam_Subjdata[$k]->sub != $exam_Subjdata[$k]->oldsub)
				{
					
					if($exam_Subjdata[$k]->oldsub == "")
					{
						$query="insert into canddet
						(FDEGREE,
						FEXAMNO,
						FCOLLCODE,
						FREGNO,
						FSUBCODE,
						FINSERTED,
						FPRESENT, fyear, fexamtype, fmoduser, fmoddate) values
						(
						'{$degree}',
						'{$exam_Subjdata[$k]->ex}',
						'{$college_code}',
						'{$reg_no}',
						'{$exam_Subjdata[$k]->sub}',
						'T',
						'{$prs}', '{$lobj_check_adminsion_freeze['fmeyear']}', '{$lobj_check_adminsion_freeze['fmeexamtyp']}',
						'{$FLOGNAME}',now()
						)";
						$lobj_insert_canddet_records = $aobj_context->mobj_db->Execute($query);
					}else
					{
						$query = "update canddet set fsubcode = '{$exam_Subjdata[$k]->sub}',
						fpresent = '{$prs}', fmoduser = '{$FLOGNAME}', fmoddate = now()
						where fregno = '{$reg_no}' and fcollcode = '{$college_code}' and fdegree = '{$degree}' 
						and fsubcode = '{$exam_Subjdata[$k]->oldsub}'";
						$lobj_insert_canddet_records = $aobj_context->mobj_db->Execute($query);

						$query1 = "update appcanddet set fsubcode = '{$exam_Subjdata[$k]->sub}',
						fpresent = '{$prs}'
						where fregno = '{$reg_no}' and fcollcode = '{$college_code}' and fdegree = '{$degree}' 
						and fsubcode = '{$exam_Subjdata[$k]->oldsub}'";
						$res = $aobj_context->mobj_db->Execute($query1);

                    }
                    
                    $query1 = "insert ignore into marks (FDEGREE, FEXAMNO, FCOLLCODE, FREGNO, FSUBCODE, fmarks, fyear, fexamtype)
                    select c.fdegree,c.fexamno,c.fcollcode,c.fregno,
                    s.fcsubcode,'-1', c.fyear,c.fexamtype
                    from candsum c inner join 
                    subject s on c.fdegree = s.fdegree and  s.fexamno = '{$exam_Subjdata[$k]->ex}'
                    and s.FSUBCODE	= '{$exam_Subjdata[$k]->sub}'
                    where c.fregno = '{$reg_no}'
                    and c.fcollcode = '{$college_code}' and c.fdegree = '{$degree}'
                    and s.fintass = 'T' and s.fretain = 'T'";
                    $res = $aobj_context->mobj_db->Execute($query1); 

                    $query = "insert ignore into marks_pr (FDEGREE, FEXAMNO, FCOLLCODE, FREGNO, FSUBCODE, fmarks11, fyear, fexamtype)
                    select cd.fdegree,cd.fexamno,cd.fcollcode,cd.fcollcode,s.fcsubcode,'-1', 
                    cd.fyear,cd.fexamtype
                    from subject s inner join candsum cd on s.fdegree = cd.fdegree 
                    and s.fsubcode = '{$exam_Subjdata[$k]->sub}'
                    and cd.fregno = '{$reg_no}'
                    and ifnull(cd.fpassmth,'') = '' 
                    and ifnull(cd.fthpr,'') <> 'F'
                    where s.fdegree = '{$degree}' 
                    and cd.fcollcode = '{$college_code}'
                    and s.ftheory = 'F'
                    and ifnull(s.fintass,'F') <> 'T'";
                    $res = $aobj_context->mobj_db->Execute($query);
					
				}	
            }
        }
            
        if($lobj_insert_canddet_records)
        {
            $select_nxtreg_query="select FREGNO from student where FREGNO > '{$reg_no}' and FCOLLCODE='{$college_code}' order by FREGNO limit 1";
            $lobj_select_nxtreg=$aobj_context->mobj_db->getRow($select_nxtreg_query);
            $preg_details=array();
            $preg_details[0]=$reg_no;
            $preg_details[1]=$degree;
            $preg_details[2]=$exam;
            $arr['prev_reg']=$preg_details;
            $arr['next_reg']=$lobj_select_nxtreg;
            $arr['prev_subjects']=$sub_fresh;
            //$arr='Details Updated Successfully';
            echo $aobj_context->mobj_output->ToJSONEnvelope($arr,0,"success");
            return;
        }
        else
        {
            $arr='Updation failed';
            $arr['prev_subjects']='';
            echo $aobj_context->mobj_output->ToJSONEnvelope($arr,-1,"success");
            return;
        }
    }
    else
    {
        $arr='Candidate List Freezed By Admin';
        echo $aobj_context->mobj_output->ToJSONEnvelope($arr,-1,"Failure");
        return;
    }
}
?>