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 : 52.14.173.116


Current Path : /proc/thread-self/root/var/www/html/nehu/src/
Upload File :
Current File : //proc/thread-self/root/var/www/html/nehu/src/student_entry.php

<?php
/* 
 *
 * FOR THE STUDENT ENTRY FORM
 * PROGRAMED BY NAVEEN
 * DATE: 12/03/09
 * TIME: 9:45 AM 
  *
 */
require_once("/var/www/html/aws/aws-autoloader.php");
use Aws\S3\S3Client;
use Aws\S3\Exception\S3Exception;

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

function saveStudentEntry($aobj_context)
{
	session_start();
	include_once("/JSON.php"); 
	$json = new Services_JSON();
	$college_code = $_SESSION['collcode'];
	$u_id = $_SESSION['user_id'];
	$log_name = $_SESSION['usr'];
	
	$aobj_context->mobj_db->SetFetchMode(ADODB_FETCH_ASSOC);
	if(trim($college_code) == true)
	{
	$add_edit=trim($aobj_context->mobj_data["add_edit"]);
	$degree_slno=trim($aobj_context->mobj_data["degree_slno"]);
	$degree_code=trim($aobj_context->mobj_data["degree_code"]);
	$degree_exam=trim($aobj_context->mobj_data["degree_exam"]);
	$student_entry_name=trim($aobj_context->mobj_data["student_entry_name"]);
	$degree_fname=trim($aobj_context->mobj_data["degree_fname"]);
	$degree_mname=trim($aobj_context->mobj_data["degree_mname"]);
	$degree_dob=trim($aobj_context->mobj_data["degree_dob"]);
	$degree_gender=trim($aobj_context->mobj_data["degree_gender"]);
	$degree_category=trim($aobj_context->mobj_data["degree_category"]);
	$degree_nationality=trim($aobj_context->mobj_data["degree_nationality"]);
	$degree_english=trim($aobj_context->mobj_data["degree_english"]);
	
	$degree_address_comm1=str_replace("'","''",trim($aobj_context->mobj_data["student_entry_comm_addr1"]));
	$degree_address_comm2=str_replace("'","''",trim($aobj_context->mobj_data["student_entry_comm_addr2"]));
	$degree_address_comm3=str_replace("'","''",trim($aobj_context->mobj_data["student_entry_comm_addr3"]));
	$degree_address_comm4=str_replace("'","''",trim($aobj_context->mobj_data["student_entry_comm_addr4"]));
	
	$degree_address_perm1=str_replace("'","''",trim($aobj_context->mobj_data["student_entry_per_add1"]));
	$degree_address_perm2=str_replace("'","''",trim($aobj_context->mobj_data["student_entry_per_add2"]));
	$degree_address_perm3=str_replace("'","''",trim($aobj_context->mobj_data["student_entry_per_add3"]));
	$degree_address_perm4=str_replace("'","''",trim($aobj_context->mobj_data["student_entry_per_add4"]));
	
	$sub_degree=trim($aobj_context->mobj_data["sub_degree"]);
	//$lateral_entry=trim($aobj_context->mobj_data["lateral_entry"]);
	$lateral_entry =0;
	
	$rec_order_no=trim($aobj_context->mobj_data["rec_order_no"]);
	$rec_order_date=trim($aobj_context->mobj_data["rec_order_date"]);
	$aff_order_no=trim($aobj_context->mobj_data["aff_order_no"]);
	$aff_order_date=trim($aobj_context->mobj_data["aff_order_date"]);
	$religion=trim($aobj_context->mobj_data["religion"]);
	
	$father_occ=trim($aobj_context->mobj_data["father_occ"]);
	$mother_occ=trim($aobj_context->mobj_data["mother_occ"]);
	$email=trim($aobj_context->mobj_data["email"]);
	$contact=trim($aobj_context->mobj_data["contact"]);
	$blood_group=trim($aobj_context->mobj_data["blood_group"]);
	$mobile=trim($aobj_context->mobj_data["mobile"]); 
	$collrsch=str_replace("'","''",trim($aobj_context->mobj_data["collrsch"]));
	$passyear=trim($aobj_context->mobj_data["passyear"]);
	$totalper=trim($aobj_context->mobj_data["totalper"]);
	$boardRuniv=trim($aobj_context->mobj_data["boardRuniv"]);
	$lstclass=trim($aobj_context->mobj_data["lstclass"]);
	$othboardRuniv=trim($aobj_context->mobj_data["othboardRuniv"]);
	$mgdocno=trim($aobj_context->mobj_data["mgdocno"]);
	$combination=trim($aobj_context->mobj_data["honours_combination"]);
	$honours=trim($aobj_context->mobj_data["degree_honours"]);
	$student_entry_reg_fee=trim($aobj_context->mobj_data["student_entry_reg_fee"]);
	$student_entry_exam_fee=trim($aobj_context->mobj_data["student_entry_exam_fee"]);
	$student_entry_grade_card_fee=trim($aobj_context->mobj_data["student_entry_grade_card_fee"]);
	$student_entry_total_fee=trim($aobj_context->mobj_data["student_entry_total_fee"]);
	$student_entry_reg_fee=empty($student_entry_reg_fee)?0:$student_entry_reg_fee;
	$student_entry_exam_fee=empty($student_entry_reg_fee)?0:$student_entry_exam_fee;
	$student_entry_grade_card_fee=empty($student_entry_reg_fee)?0:$student_entry_grade_card_fee;
	$student_entry_total_fee=empty($student_entry_reg_fee)?0:$student_entry_total_fee;
	

	$lstr_param = stripslashes($aobj_context->mobj_data["sub_arr"]);
	$mobj_jsondata = $json->decode($lstr_param);
	$sub_arr_data = get_object_vars($mobj_jsondata);
	// var_dump($sub_arr_data);
	// die();
	$rec_no = trim($aobj_context->mobj_data["rec_no"]);
	$rec_date = trim($aobj_context->mobj_data["rec_date"]);
	//$sub_arr = trim($aobj_context->mobj_data["sub_arr"]);
	$fee_remarks = trim($aobj_context->mobj_data["fee_remarks"]);
	$fcombcode=trim($aobj_context->mobj_data["fcombcode"]);
	$fee_paid=trim($aobj_context->mobj_data["fee_paid"]);
	$migfilepath=trim($aobj_context->mobj_data["migfilepath"]);
	$total_comb_fee=trim($aobj_context->mobj_data["total_comb_fee"]);
	$stud_abcNo=trim($aobj_context->mobj_data["stud_abcNo"]);
	$study_State=trim($aobj_context->mobj_data["study_State"]);
	//$lstr_param = stripslashes($aobj_context->mobj_data["sub_arr"]);
	
	$total_comb_fee=(empty($total_comb_fee) || $total_comb_fee='null')?0:$total_comb_fee;
	
	$get_year="SELECT FADYEAR ,FMEYEAR, FMEEXAMTYP
				FROM degree
				WHERE FDEGREE='{$degree_code}'
				AND FEXAMNO='{$degree_exam}'";
	$lobj_get_year = $aobj_context->mobj_db->getRow($get_year);
	$f_year=$lobj_get_year['FADYEAR'];
	$fexam_year=$lobj_get_year['FMEYEAR']; 
	$fexm_type=$lobj_get_year['FMEEXAMTYP'];
	if($add_edit=='Add')
	{
	$get_generateAutoIncrementSlNo = "select right(concat('0000',ifnull(max(FSLNO),0)+01),4)  as  FSLNO 
					from studadm
					where  FDEGREE='{$degree_code}' and FCOLLCODE='{$college_code}'";

	$lobj_get_generateAutoIncrementSlNo = $aobj_context->mobj_db->getRow($get_generateAutoIncrementSlNo);
	$degree_slno=$lobj_get_generateAutoIncrementSlNo['FSLNO'];
	 
	}
	$unlink_file=trim($aobj_context->mobj_data["unlink_file"]);

	
	 
	
	$fee_com_param = stripslashes($aobj_context->mobj_data["fee_com"]);
	$mobj_fee_com_param = $json->decode($fee_com_param);
	$fee_arr_data = get_object_vars($mobj_fee_com_param);
	

	/* $check_adminsion_freeze ="  select FCADSTATUS, ifnull(fadmstop,'') as FADMSTOP from colldeg 
									where FCOLLCODE='{$college_code}' 
									and FDEGREE='{$degree_code}'";								
	$lobj_check_adminsion_freeze = $aobj_context->mobj_db->getRow($check_adminsion_freeze); 
	 */
	$qry = "select * from collexam where fdegree = '{$degree_code}' and fcollcode = '{$college_code}' 
			and DATE_FORMAT(NOW(),'%Y-%m-%d') 
			BETWEEN DATE_FORMAT(fadmfrom,'%Y-%m-%d') 
			AND DATE_FORMAT(fadmto,'%Y-%m-%d')";
	$student_exam_details = $aobj_context->mobj_db->GetRow($qry);
	
	
	if(count($student_exam_details) < 0)
	{
		$arr='Last date is over';
		echo $aobj_context->mobj_output->ToJSONEnvelope($arr,-1,"Failure");
		return;		
	}
	else
	{
	
		$college_path=$aobj_context->main_src."/student_photos/{$college_code}";
		$folder_path=$aobj_context->main_src."/student_photos/{$college_code}/".replaceChars($degree_code);
		$file_name=basename($_FILES['student_entry_upload']['name']);
		$path_arr=pathinfo($_FILES['student_entry_upload']['name']);
		$file_ext=$path_arr['extension'];
		$full_file_path= $folder_path.'/'.$f_year."_".$degree_slno."_".$file_name;;
		$image_path="student_photos/{$college_code}/".replaceChars($degree_code).'/'.$f_year."_".$degree_slno."_".$file_name;
		
		$migfile_name=basename($_FILES['student_entry_migran']['name']);
		$mig_path_arr=pathinfo($_FILES['student_entry_migran']['name']);
		$mig_file_ext=$mig_path_arr['extension'];
		$mig_full_file_path= $folder_path.'/'.$f_year."_".$degree_slno."_".$migfile_name;;
		$mig_image_path="student_photos/{$college_code}/".replaceChars($degree_code).'/'.$f_year."_".$degree_slno."_mig_".$migfile_name;

		$s3 = S3Client::factory(
			array(
				'credentials' => array(
					'key' => IAM_KEY,
					'secret' => IAM_SECRET
				),
				'version' => "latest",
				'region'  => 'ap-south-1'
			)
		);

		$query = "select funivcode from control";
		$results = $aobj_context->mobj_db->GetRow($query);
		$funivcode = $results['funivcode'];

	//student_entry_upload
	if(!file_exists($college_path))
	{
		mkdir($college_path);
	}
	if(!file_exists($folder_path))
	{
		mkdir($folder_path);
	}
	$cond1 = "";
	$cond ="";
	if(is_null($lobj_check_adminsion_freeze['FCADSTATUS']))
	{
			$get_comb_subj = "select FSUBCODE from mascomb where FCOMBCODE ='{$combination}' and FDEGREE='{$degree_code}'";
			$lobj_get_comb_subj = $aobj_context->mobj_db->getRow($get_comb_subj);

			$lobj_combsubj=$lobj_get_comb_subj['FSUBCODE'];
			$subjArry=Array();
			$subjArry=explode('*',$lobj_combsubj);
			if($add_edit=='Add')
			{
			$photo_path="";
			if(isset($_FILES['student_entry_upload']['name']) && $_FILES['student_entry_upload']['name'] != '')         
			{ 
							/* if(move_uploaded_file($_FILES['student_entry_upload']['tmp_name'],$mig_))
							 {
							 $photo_path=$image_path;
							 } */
				if ($_FILES["student_entry_upload"]["error"] > 0) 
				{ 
					$error = $_FILES["student_entry_upload"]["error"]; 
				} 
				else if (($_FILES["student_entry_upload"]["type"] == "image/gif") 
				|| ($_FILES["student_entry_upload"]["type"] == "image/jpeg") || 
				($_FILES["student_entry_upload"]["type"] == "image/png") || 
				($_FILES["student_entry_upload"]["type"] == "image/pjpeg")) 
				{ 
					$url = $full_file_path; 
					$unlink_file = $aobj_context->main_src."/".$unlink_file;
					try {
					$res = $s3->putObject(['Bucket' => STUDENT_PHOTOS_BUCKET, 'Key' => $funivcode."/".$image_path, 'SourceFile' => $unlink_file]);
					$photo_path=$image_path; 
					unlink($full_file_path);
					}catch(S3Exception $e) {
						$arr['message'] = 'Unable to upload Photo';
						echo $aobj_context->mobj_output->ToJSONEnvelope($arr,-1,"failure"); 
						return;
					}
					
					// $filename = compress_image($_FILES["student_entry_upload"]["tmp_name"], $url, 80); 
					// $buffer = file_get_contents($url);
					// $photo_path=$image_path;
				}	
						 
			}
			// var_dump(isset($_FILES['student_entry_migran']['name']) && $_FILES['student_entry_migran']['name'] != '',$study_State !== 'Meghalaya');
			if(isset($_FILES['student_entry_migran']['name']) && $_FILES['student_entry_migran']['name'] != ''){
				if($study_State !== 'Meghalaya'){
					// if(isset($_FILES['student_entry_migran']['name']) && $_FILES['student_entry_migran']['name'] != '')         
					// { 
						if ($_FILES["student_entry_migran"]["error"] > 0) 
						{ 
							$error = $_FILES["student_entry_migran"]["error"]; 
						} 
						else if (($_FILES["student_entry_migran"]["type"] == "image/gif") 
						|| ($_FILES["student_entry_migran"]["type"] == "image/jpeg") || 
						($_FILES["student_entry_migran"]["type"] == "image/png") || 
						($_FILES["student_entry_migran"]["type"] == "image/pjpeg")) 
						{ 

							if(move_uploaded_file($_FILES['student_entry_migran']['tmp_name'],$mig_image_path))
							 {
							 $migfilepath=$mig_image_path;
							 } 

							//$url = $mig_full_file_path; 
							//$unlink_file = $aobj_context->main_src."/".$unlink_file;
							try {
							$res = $s3->putObject(['Bucket' => STUDENT_PHOTOS_BUCKET, 'Key' => $funivcode."/".$mig_image_path, 'SourceFile' => $migfilepath]);
							$mig_photo_path=$mig_image_path; 
							unlink($mig_full_file_path);
							}catch(S3Exception $e) {
								$arr['message'] = 'Unable to Migration Certificate';
								echo $aobj_context->mobj_output->ToJSONEnvelope($arr,-1,"failure"); 
								return;
							}
						}	
								
					// }
					$cond = ",FMIGCERPATH";
					$cond1 = ",'{$mig_photo_path}'";
					// var_dump($cond,$cond1);
				}
			}
			$lstr_qry = "insert into studadm( FSLNO,FDEGREE,FEXAMNO,FCOLLCODE,FNAME,FFATNAME,
			FMOTNAME,FDOB,Fgender,FCASTE,FNATIONAL,FENGLISH,
			FCURRADD1,FCURRADD2,FCURRADD3,FCURRADD4,
			FPERMADD1,FPERMADD2,FPERMADD3,FPERMADD4,
			FSUBDEGREE,FPHOTOPATH,FLATERAL_ENTRY,FREC_ORDER_NO,
			FREC_ORDER_DATE,FAFF_ORDER_NO,FAFF_ORDER_DATE,
			FRELIGION, REG_FEE,EXAM_FEE,GRADE_CARD_FEE,TOTAL_FEE,
			FFAT_OCC,FMOT_OCC,FEMAIL,FCONTACT_NO,FBLOOD_GROUP,
			FUSERID,  FLOGNAME, FLOGDATE, FDELETED,
			FFEEPAID,FRECNO,FRECDATE,FREMARKS,
			FMOBILE_NO, FCOLLRSCH, FPASSYEAR, FTOTALPERCENT, FBOARD_UNIV,
			FLSTCLASS, FOTHBOARD,FMIGCERTNO,FABCNO,
			FCOMBCODE,FHONOURS,FSTUDYSTATE $cond) 
			values
			('{$degree_slno}','{$degree_code}',
			'{$degree_exam}', '{$college_code}', 
			'{$student_entry_name}','{$degree_fname}',
			'{$degree_mname}','{$degree_dob}',
			'{$degree_gender}', '{$degree_category}', 
			'{$degree_nationality}', '{$degree_english}',
			'{$degree_address_comm1}','{$degree_address_comm2}',
			'{$degree_address_comm3}','{$degree_address_comm4}',
			'{$degree_address_perm1}', '{$degree_address_perm2}',
			'{$degree_address_perm3}','{$degree_address_perm4}',
			'{$sub_degree}','{$photo_path}','{$lateral_entry}',
			'{$rec_order_no}','{$rec_order_date}','{$aff_order_no}',
			'{$aff_order_date}','{$religion}', 
			'{$student_entry_reg_fee}',
			'{$student_entry_exam_fee}',
			'{$student_entry_grade_card_fee}',
			'{$student_entry_total_fee}',
			'{$father_occ}','{$mother_occ}','{$email}',
			'{$contact}','{$blood_group}',
			'{$u_id}','{$log_name} ',
			NOW(),'F' ,
			'{$fee_paid}',
			'{$rec_no}',date_format('{$rec_date}','%Y-%m-%d'),'{$fee_remarks}',
			'{$mobile}','{$collrsch}','{$passyear}','{$totalper}','{$boardRuniv}',
			'{$lstclass}','{$othboardRuniv}','{$mgdocno}','{$stud_abcNo}','{$combination}','{$honours}',
			'{$study_State}' $cond1) ";     
			// var_dump($lstr_qry);die();
			$lobj_rs = $aobj_context->mobj_db->Execute($lstr_qry);
			$get_year="SELECT FADYEAR ,FMEYEAR, FMEEXAMTYP
				FROM degree
				WHERE FDEGREE='{$degree_code}'
				AND FEXAMNO='{$degree_exam}'";
				
	$result = $aobj_context->mobj_db->getRow($get_year);
	$f_year=$result['FADYEAR'];		
				
			for($k=0;$k<count($fee_arr_data);$k++)
			{
				$insert_options="insert into admfeedetl 
				(FYEAR,FDEGREE,
				FEXAMNO,FCOLLCODE,
				FSLNO,FHEADCODE,
				FAMOUNT)
				values
				(
				{$f_year},
				'{$degree_code}',
				'{$degree_exam}',
				'{$college_code}',
				'{$degree_slno}',
				'{$fee_arr_data[$k]->head_id}',
				'{$fee_arr_data[$k]->fee_paid}' 
				)
				";
				 
				$lobj_insert_options = $aobj_context->mobj_db->Execute($insert_options);
			}
			
			// for($k=0;$k<count($subjArry);$k++)
			// {
			// 	$insert_options="insert into options(FDEGREE,
			// 	FEXAMNO,
			// 	FCOLLCODE,
			// 	FSLNO,
			// 	FSUBCODE,
			// 	FDELETED)
			// 	values
			// 	(
			// 	'{$degree_code}',
			// 	'{$degree_exam}',
			// 	'{$college_code}',
			// 	'{$degree_slno}',
			// 	'{$subjArry[$k]}',
			// 	'F'
			// 	)";
			// 	$lobj_insert_options = $aobj_context->mobj_db->Execute($insert_options);
			// }	

					for($k=0;$k<count($sub_arr_data);$k++)
					{
						$insert_options="insert into options(FDEGREE,
						FEXAMNO,
						FCOLLCODE,
						FSLNO,
						FSUBCODE,
						FDELETED)
						values
						(
						'{$degree_code}',
						'{$degree_exam}',
						'{$college_code}',
						'{$degree_slno}',
						'{$sub_arr_data[$k]->sub_code}',
						'F'
						)
						";
						 
						$lobj_insert_options = $aobj_context->mobj_db->Execute($insert_options);
					}

			if($lobj_rs) 
			{
					$arr='Student Record inserted Successfully. Sl.No is '.$degree_slno;
					 echo $aobj_context->mobj_output->ToJSONEnvelope($arr,0,"success"); 
					 return;
			}	
			else
			{
					$arr='Insertion Failed';
					echo $aobj_context->mobj_output->ToJSONEnvelope($arr,-1,"Failure");
				   return;
			}
		}
		else if($add_edit=='Edit') // 
		{  
			$get_existing_data="select FPHOTOPATH, ifnull(FAREGNO,'') as FAREGNO from studadm where 
				FSLNO='{$degree_slno}' and 
				FDEGREE='{$degree_code}' and 
				FCOLLCODE='{$college_code}'
				and FEXAMNO='{$degree_exam}'";
			$lobj_get_existing_data = $aobj_context->mobj_db->GetRow($get_existing_data);
			$existing_photo_path= $lobj_get_existing_data['FPHOTOPATH'] ;
			$stud_regno = $lobj_get_existing_data['FAREGNO'] ;
			
			 if(isset($_FILES['student_entry_upload']['name']) && $_FILES['student_entry_upload']['name'] != '')         
			{			 
						/* if(move_uploaded_file($_FILES['student_entry_upload']['tmp_name'],$full_file_path))
						 {	
							$unlink_file=$aobj_context->main_src."/".$existing_photo_path;
							 unlink($unlink_file);						 
							//rename($unlink_file,$unlink_file."_tmp");						 
							$existing_photo_path=$image_path;
						 } */
			if ($_FILES["student_entry_upload"]["error"] > 0) 
			{ 
				$error = $_FILES["student_entry_upload"]["error"]; 
			} 
			else if (($_FILES["student_entry_upload"]["type"] == "image/gif") 
			|| ($_FILES["student_entry_upload"]["type"] == "image/jpeg") || 
			($_FILES["student_entry_upload"]["type"] == "image/png") || 
			($_FILES["student_entry_upload"]["type"] == "image/pjpeg")) 
			{ 
				$query = "select funivcode from control";
				$results = $aobj_context->mobj_db->GetRow($query);
				$funivcode = $results['funivcode'];
				$s3 = S3Client::factory(
					array(
						'credentials' => array(
							'key' => IAM_KEY,
							'secret' => IAM_SECRET
						),
						'version' => "latest",
						'region'  => 'ap-south-1'
					)
				);

				$unlink_file = $aobj_context->main_src."/".$unlink_file;
				
				try {
					$res = $s3->putObject(['Bucket' => STUDENT_PHOTOS_BUCKET, 'Key' => $funivcode."/".$image_path, 'SourceFile' => $unlink_file]);
					$photo_path=$image_path; 
					unlink($full_file_path);
					}catch(S3Exception $e) {
						$arr['message'] = 'Unable to upload Photo';
						echo $aobj_context->mobj_output->ToJSONEnvelope($arr,-1,"failure"); 
						return;
					}


				$url = $full_file_path; 
				$filename = compress_image($_FILES["student_entry_upload"]["tmp_name"], $url, 80); 
				$buffer = file_get_contents($url);
				$unlink_file=$aobj_context->main_src."/".$existing_photo_path;
				unlink($unlink_file);	
				$existing_photo_path=$image_path;
			}	
		}
			if(isset($_FILES['student_entry_migran']['name']) && $_FILES['student_entry_migran']['name'] != ''){
				
				if($study_State !== 'Meghalaya'){
					// if(isset($_FILES['student_entry_migran']['name']) && $_FILES['student_entry_migran']['name'] != '')         
					// { 
						
						if ($_FILES["student_entry_migran"]["error"] > 0) 
						{ 
							$error = $_FILES["student_entry_migran"]["error"]; 
						} 

						else if (($_FILES["student_entry_migran"]["type"] == "image/gif") 
						|| ($_FILES["student_entry_migran"]["type"] == "image/jpeg") || 
						($_FILES["student_entry_migran"]["type"] == "image/png") || 
						($_FILES["student_entry_migran"]["type"] == "image/pjpeg")) 
						{ 

							if(move_uploaded_file($_FILES['student_entry_migran']['tmp_name'],$mig_image_path))
							 {
							 $migfilepath=$mig_image_path;
							 } 

							//$url = $mig_full_file_path; 
							//$unlink_file = $aobj_context->main_src."/".$unlink_file;
							try {
							$res = $s3->putObject(['Bucket' => STUDENT_PHOTOS_BUCKET, 'Key' => $funivcode."/".$mig_image_path, 'SourceFile' => $migfilepath]);
							$mig_photo_path=$mig_image_path; 
							unlink($mig_full_file_path);
							}catch(S3Exception $e) {
								$arr['message'] = 'Unable to Migration Certificate';
								echo $aobj_context->mobj_output->ToJSONEnvelope($arr,-1,"failure"); 
								return;
							}
						}	
								
					// }
					$cond = ",FMIGCERPATH = '{$mig_photo_path}'";
					
					// var_dump($cond,$cond1);
				}
			}		 
			
			 
				$update_qry="update studadm set
				FNAME='{$student_entry_name}',
				FFATNAME='{$degree_fname}',
				FMOTNAME='{$degree_mname}',
				FDOB='{$degree_dob}',
				Fgender='{$degree_gender}',
				FCASTE='{$degree_category}',
				FNATIONAL='{$degree_nationality}',
				FENGLISH='{$degree_english}',
				FCURRADD1='{$degree_address_comm1}',
				FCURRADD2='{$degree_address_comm2}',
				FCURRADD3='{$degree_address_comm3}',
				FCURRADD4='{$degree_address_comm4}',
				FPERMADD1='{$degree_address_perm1}',
				FPERMADD2='{$degree_address_perm2}',
				FPERMADD3='{$degree_address_perm3}',
				FPERMADD4='{$degree_address_perm4}',
				FPHOTOPATH='{$existing_photo_path}',
				FSUBDEGREE='{$sub_degree}',
				REG_FEE='{$student_entry_reg_fee}',
				EXAM_FEE='{$student_entry_exam_fee}',
				GRADE_CARD_FEE='{$student_entry_grade_card_fee}',
				TOTAL_FEE='{$student_entry_total_fee}',
				FLATERAL_ENTRY='{$lateral_entry}',
				FREC_ORDER_NO='{$rec_order_no}',
				FREC_ORDER_DATE='{$rec_order_date}',
				FAFF_ORDER_NO='{$aff_order_no}',
				FAFF_ORDER_DATE='{$aff_order_date}',
				FRELIGION='{$religion}',
				FFAT_OCC='{$father_occ}',
				FMOT_OCC='{$mother_occ}',
				FEMAIL='{$email}',
				FCONTACT_NO='{$contact}',
				FBLOOD_GROUP='{$blood_group}',	
				FUSERID='{$u_id}',
				FSTUDYSTATE = '{$study_State}',
				FLOGNAME='{$log_name}',
				FLOGDATE=NOW(),
				FFEEPAID='{$fee_paid}',
				FRECNO='{$rec_no}',
				FRECDATE='{$rec_date}',
				FREMARKS='{$fee_remarks}',
				FABCNO = '{$stud_abcNo}',
				FMOBILE_NO = '{$mobile}', FCOLLRSCH = '{$collrsch}', FPASSYEAR = '{$passyear}', 
				FTOTALPERCENT = '{$totalper}', FBOARD_UNIV = '{$boardRuniv}', FLSTCLASS = '{$lstclass}',FOTHBOARD='{$othboardRuniv}',
				FMIGCERTNO= '{$mgdocno}',FCOMBCODE = '{$combination}', FHONOURS = '{$honours}'$cond
				where 
				FSLNO='{$degree_slno}' and 
				FDEGREE='{$degree_code}' and 
				FCOLLCODE='{$college_code}'
				and FEXAMNO='{$degree_exam}'";	
				$lobj_rs = $aobj_context->mobj_db->Execute($update_qry);
				
				$delete="delete from admfeedetl
				where
				FYEAR='{$f_year}'
				and FDEGREE='{$degree_code}'
				and FEXAMNO='{$degree_exam}'
				and FCOLLCODE='{$college_code}'
				and FSLNO='{$degree_slno}'";		
				$lobj_rsa = $aobj_context->mobj_db->Execute($delete);
			 
				for($k=0;$k<count($fee_arr_data);$k++)
				{
					$insert_options="insert into admfeedetl 
					(FYEAR,FDEGREE,
					FEXAMNO,FCOLLCODE,
					FSLNO,FHEADCODE,
					FAMOUNT)
					values
					(
					'{$f_year}',
					'{$degree_code}',
					'{$degree_exam}',
					'{$college_code}',
					'{$degree_slno}',
					'{$fee_arr_data[$k]->head_id}',
					'{$fee_arr_data[$k]->fee_paid}' 
					)
					";
					 
					$lobj_insert_options = $aobj_context->mobj_db->Execute($insert_options);
				}
			/* 				
			// insert combination subjects to canddet table. 23/09/2015
			if($stud_regno)
			{
				
				$delete_from_canddet="delete from canddet where FDEGREE='{$degree_code}'
					and FEXAMNO='{$degree_exam}' and FCOLLCODE='{$college_code}' 
					and FREGNO ='{$stud_regno}'";
				$lobj_delete_from_canddet = $aobj_context->mobj_db->Execute($delete_from_canddet);
				
				$get_comb_subj = "select FSUBCODE from mascomb where FCOMBCODE ='{$combination}' and FDEGREE='{$degree_code}'";
				$lobj_get_comb_subj = $aobj_context->mobj_db->getRow($get_comb_subj);
				
				$lobj_combsubj=$lobj_get_comb_subj[FSUBCODE];
				$subjArry=Array();
				$subjArry=explode('*',$lobj_combsubj);

				for($j=0;$j<count($subjArry);$j++)
				{
					if($subjArry[$j] !='')
					{
						$insert_combSubj = "insert into canddet(FDEGREE,FEXAMNO,FCOLLCODE,FREGNO,FSUBCODE,FPRESENT,FYEAR,FEXAMTYPE, FDELETED)
						values('{$degree_code}','{$degree_exam}','{$_SESSION['collcode']}','{$stud_regno}','{$subjArry[$j]}',
						'P','{$fexam_year}','{$fexm_type}','M')";
						$lobj_insert_combSubj = $aobj_context->mobj_db->Execute($insert_combSubj);
					}							
				}
			}
			*/			
				//Secho $update_qry; die(); 		 
				$delete_from_options="delete from options where FDEGREE='{$degree_code}'
				and FEXAMNO='{$degree_exam}' and FCOLLCODE='{$_SESSION['collcode']}' 
				and FSLNO='{$degree_slno}'";
				$lobj_delete_from_options = $aobj_context->mobj_db->Execute($delete_from_options);
				
				for($k=0;$k<count($sub_arr_data);$k++)
				{
					$insert_options="insert into options(FDEGREE,
					FEXAMNO,
					FCOLLCODE,
					FSLNO,
					FSUBCODE,
					FDELETED)
					values
					(
					'{$degree_code}',
					'{$degree_exam}',
					'{$college_code}',
					'{$degree_slno}',
					'{$sub_arr_data[$k]->sub_code}',
					'F'
					)
					";
						
					$lobj_insert_options = $aobj_context->mobj_db->Execute($insert_options);
				}

				// for($k=0;$k<count($subjArry);$k++)
				// {
				// 	$insert_options="insert into options(FDEGREE,
				// 	FEXAMNO,
				// 	FCOLLCODE,
				// 	FSLNO,
				// 	FSUBCODE,
				// 	FDELETED)
				// 	values
				// 	(
				// 	'{$degree_code}',
				// 	'{$degree_exam}',
				// 	'{$college_code}',
				// 	'{$degree_slno}',
				// 	'{$subjArry[$k]}',
				// 	'F'
				// 	)";
				// 	$lobj_insert_options = $aobj_context->mobj_db->Execute($insert_options);
				// }	 
						
				if($lobj_rs) 
				{
						$arr='Student Record Updated Successfully';
						 echo $aobj_context->mobj_output->ToJSONEnvelope($arr,0,"success"); 
						 return;
				}	
				else
				{
						$arr='Updation Failed';
						echo $aobj_context->mobj_output->ToJSONEnvelope($arr,-1,"Failure");
					   return;
				}
		}
		}
		else
		{
				$arr='Student Admission Freezed By Admin';
				echo $aobj_context->mobj_output->ToJSONEnvelope($arr,-1,"Failure");
				return;		
		}
	}
	}
	else
	{
		$arr='Session Expired,please login';
		echo $aobj_context->mobj_output->ToJSONEnvelope($arr,-9,"Failure");
		return;	
	
	}
}		
// delete Record 
function disableRecord($aobj_context)
{
	$sl_no = $aobj_context->mobj_data["sl_no"]; 
	$degree_code = $aobj_context->mobj_data["degree_code"]; 	
	$exam = $aobj_context->mobj_data["exam"]; 	
	session_start();
	$college_code = $_SESSION['collcode'];
	include_once("/JSON.php"); 
	$json = new Services_JSON();
	
	$lstr_param = stripslashes($aobj_context->mobj_data["delete_arr"]);
	$mobj_jsondata = $json->decode($lstr_param);
	$delete_arr_data = get_object_vars($mobj_jsondata);
	
	for($k=0;$k<count($delete_arr_data);$k++)
	{	   
 	    /* $lstr_qry = "delete  
			from student 
			 where FDEGREE='{$delete_arr_data[$k]->degree_code}'
			       AND 
			       FEXAMNO='{$delete_arr_data[$k]->exam}'
				   AND
				   FSLNO ='{$delete_arr_data[$k]->sl_no}'
				   ";  */
	//echo $lstr_qry ;
    $check_adminsion_freeze ="  select FCADSTATUS, ifnull(fadmstop,'') as FADMSTOP from colldeg 
									where FCOLLCODE='{$college_code}' 
									and FDEGREE='{$delete_arr_data[$k]->degree_code}'";								
	$lobj_check_adminsion_freeze = $aobj_context->mobj_db->getRow($check_adminsion_freeze); 
	
	if($lobj_check_adminsion_freeze['FADMSTOP']=='T')
	{
			$arr='Last date is over';
			echo $aobj_context->mobj_output->ToJSONEnvelope($arr,-9,"success"); 
			 return;
	
	}
	ELSE
	{
	   
			$disable_student_record = "UPDATE studadm SET FDELETED='T' 
			WHERE  FDEGREE='{$delete_arr_data[$k]->degree_code}' 
			and FEXAMNO='{$delete_arr_data[$k]->exam}'
			and FSLNO='{$delete_arr_data[$k]->sl_no}'
			and FCOLLCODE ='{$_SESSION['collcode']}' and ifnull(FAREGNO,'') ='' ";	

		  $lobj_rs = $aobj_context->mobj_db->Execute($disable_student_record);	
 	  
	}							
	}
	
/* 	
//FDELETED	
    $disable_student_record = 	"	UPDATE student SET FDELETED='T' 
								WHERE  FDEGREE='{$degree_code}' and FEXAMNO='{$exam}' 
								and FSLNO='{$sl_no}' and FCOLLCODE ='{$_SESSION['collcode']}' ";	
								
	$disable_options_record = 	"	UPDATE options SET FDELETED='T' 
								WHERE  FDEGREE='{$degree_code}' and FEXAMNO='{$exam}' 
								and FSLNO='{$sl_no}' and FCOLLCODE='{$_SESSION['collcode']}' ";								
	//echo $disable_student_record; die();	
	$lobj_disable_student_record = $aobj_context->mobj_db->Execute($disable_student_record);	
	$lobj_disable_options_record = $aobj_context->mobj_db->Execute($disable_options_record); */	
	
	if($lobj_rs) 
	{			
			 echo $aobj_context->mobj_output->ToJSONEnvelope($lobj_rs,0,"success"); 
			 return;
	}	
	else
	{			
			echo $aobj_context->mobj_output->ToJSONEnvelope($lobj_rs,-1,"Failure");
		   return;
	}
	
}
function getSubjectNames($aobj_context) // purpose to put subject name to dynamic text boxes -- naveen
{
	$subject_code = $aobj_context->mobj_data["subject_code"]; 
	$degree_code = $aobj_context->mobj_data["degree_code"]; 	
	$exam = $aobj_context->mobj_data["exam"]; 	
	$aobj_context->mobj_db->SetFetchMode(ADODB_FETCH_ASSOC); 	
	$get_sub_names="select FSUBCODE as id,FSUBCODE,FSUBNAME,FSUBSHORT ,FMANDATORY from degree d inner join subject s on 
						s.FDEGREE=d.FDEGREE  and  d.FEXAMNO=s.FEXAMNO
						where d.FDEGREE='{$degree_code}' and s.FEXAMNO='{$exam}'  
						and FSUBCODE='{$subject_code}'
						group by  FSUBCODE";
	$lobj_get_sub_names = $aobj_context->mobj_db->getRow($get_sub_names);	
	//var_dump($arr); die();
	echo $aobj_context->mobj_output->ToJSONEnvelope($lobj_get_sub_names,0,"success"); 
	return;
	
}
//   $g_student_retain_per_mode=1; 
function getsubjectAppearingTotal($aobj_context)
{
	 session_start();
	$degree_code = $aobj_context->mobj_data["degree_code"]; 	
	$exam = $aobj_context->mobj_data["exam"]; 	
	$sl_no = $aobj_context->mobj_data["sl_no"]; 
	$pmode = $aobj_context->mobj_data["pmode"]; 
	$sub_degree = trim($aobj_context->mobj_data["sub_degree"]); 
	$college_code=$_SESSION['collcode'];	
	$degree_code=(!empty($sub_degree))?$sub_degree:$degree_code;
	 $aobj_context->mobj_db->SetFetchMode(ADODB_FETCH_ASSOC); 	
		$get_sub_total=" select FTOTSUB from degree where FDEGREE= '{$degree_code}' and FEXAMNO='{$exam}'";
		$lobj_sub_total = $aobj_context->mobj_db->getRow($get_sub_total);
		
		$total_sub=$lobj_sub_total['FTOTSUB'];
		//echo $total_sub; die();
	
		
		$get_exsting_data="	select a.*,b.FSUBNAME,b.FSUBSHORT,FMANDATORY from 
							(select FDEGREE,FEXAMNO,FCOLLCODE,FSLNO,FSUBCODE from options
							where FSLNO='{$sl_no}' and FCOLLCODE='{$_SESSION['collcode']}' 
							and FEXAMNO='{$exam}' and FDEGREE='{$degree_code}') a
							left join 
							(select s.FDEGREE,
							FSUBCODE,FSUBNAME,FSUBSHORT ,FMANDATORY from degree d inner join subject s on 
							s.FDEGREE=d.FDEGREE  and  d.FEXAMNO=s.FEXAMNO
							where d.FDEGREE='{$degree_code}' and s.FEXAMNO='{$exam}') b on a.FSUBCODE=b.FSUBCODE
							and a.FDEGREE=b.FDEGREE
							group by FSUBCODE limit {$total_sub}
							 ";
		  
		 $lobj_get_exsting_data = $aobj_context->mobj_db->getAll($get_exsting_data);
		 
	    
	// get true sub Names
		 
	  $get_true_sub_names="select FSUBCODE,FSUBNAME,FSUBSHORT ,FMANDATORY from degree d inner join subject s on 
				s.FDEGREE=d.FDEGREE  and  d.FEXAMNO=s.FEXAMNO
				where d.FDEGREE='{$degree_code}' and s.FEXAMNO='{$exam}' and FMANDATORY='T'
				group by  FSUBCODE";	
		$lobj_get_true_sub_names = $aobj_context->mobj_db->getAll($get_true_sub_names);	
	 
		$e_data.="<table  width='94%' class='tr_ventor_row' cellspacing='0' cellpadding='0' border='0' >";
		//$e_data.="<th align='left' colspan='3' class='ui-jqgrid-titlebar ui-widget-header ui-corner-tl ui-corner-tr ui-helper' style='font-size:12px; padding-left:6px; height:24px;'>Subjects Appearing</th>";		
		$e_data.="<tr style='font-size:12px;' class='ui-state-default ui-jqgrid-hdiv'>";		
		$e_data.="<td  style='padding:2px; width:60px; border-left:1px solid #C5DBEC; border-right:1px solid #C5DBEC; border-bottom:1px solid #C5DBEC;'>Sub Code</td>";
		$e_data.="<td  style='padding:2px; width:65px; border-right:1px solid #C5DBEC; border-bottom:1px solid #C5DBEC;'>Short Name</td>";
		$e_data.="<td  style='padding:2px; width:65px; border-right:1px solid #C5DBEC; border-bottom:1px solid #C5DBEC;'>Subject Name</td>";
		$e_data.="</tr>";
		
		$k=0;
		$id=0;
		 
	 
		if(empty($lobj_get_exsting_data))
		{
		$remaining_count=$total_sub-count($lobj_get_true_sub_names);
		//echo 'aa';			
			foreach($lobj_get_true_sub_names as $key=>$value)
			{
			  /* 
				if($k%2==0)
				{
				$class='tbl_row';
				$inp_class='tbl_row_input';
				}
				else
				{
				$input_class='tbl_row1'; 
				$inp_class='tbl_row1_input';
				} */  
				 $e_data.="<tr style='font-size:12px;' class='ui-widget-content jqgrow'>";
				 $e_data.="<td class='tbl_row_new' align='center' style='border-left:1px solid #C5DBEC; border-right:1px solid #C5DBEC; padding:2px;'><input  tabindex=-1  {$inp_class} type=text style='width:60px;border:none;' readonly id='se_sub_code_{$id}' value='{$value[FSUBCODE]}' onkeydown='return keyboardSubjectAppearingPopup(event,this.id);'></td>";
				 $e_data.="<td class='tbl_row_new' align='center' style='border-right:1px solid #C5DBEC; padding:2px;'><input type=text style='border:none;width:60px;' {$inp_class}  tabindex=-1  readonly id='se_short_name_{$id}' value='{$value[FSUBSHORT]}'></td>";
				 $e_data.="<td  class='tbl_row_new' style='border-right:1px solid #C5DBEC; padding:2px;'><input type=text style='border:none;width:290px;' {$inp_class} id='se_sub_name_{$id}'  tabindex=-1   readonly value='{$value[FSUBNAME]}'> </td>";
				 $e_data.="</tr>";
				 $k++;
				 $id++;
			}
			$name=''; 			
			if($pmode == 0)
			{
				$last_slno_execution ="  select s.FSUBCODE, s.FSUBSHORT, s.FSUBNAME 
											from subject s inner join options d on 									
											s.FDEGREE=d.FDEGREE  and  s.FEXAMNO=d.FEXAMNO and 
											d.fsubcode = s.fsubcode and d.FCOLLCODE='{$college_code}' and
											s.fssubname != 'I.A.' and s.FMANDATORY = 'F' and
											s.FDEGREE='{$degree_code}' and s.FEXAMNO='{$exam}' and 
											d.fslno = 
											( select MAX(s.fslno) from studadm s 
											where s.FDEGREE='{$degree_code}' and s.FEXAMNO='{$exam}' 
											AND FCOLLCODE='{$college_code}' ) group by    s.FSUBCODE
										";
				$lobj_last_slno_execution = $aobj_context->mobj_db->getAll($last_slno_execution);	
			}	
			 
		//	var_dump($lobj_last_slno_execution); die();  			
			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';
				}  
				if($j==0)
				$name="name='focus'";
				else
				$name='';
				 
				 $e_data.="<tr style='font-size:12px;' class='ui-widget-content jqgrow' >";
				 $e_data.="<td class='tbl_row_new' align='center' style='border-left:1px solid #C5DBEC; border-right:1px solid #C5DBEC; padding:1px;'><input type='text' onkeydown='return keyboardSubjectAppearingPopup(event,this.id);' value='{$lobj_last_slno_execution[$j][FSUBCODE]}' onfocus=\$g_focus_element='se_sub_code_{$id}' {$name}  onblur='getSubDetails(this.id,{$id});' align='center' style = 'width:60px;' maxlength='4' id='se_sub_code_{$id}'> </td>";
				 $e_data.="<td class='tbl_row_new' align='center'  style='border-right:1px solid #C5DBEC;  padding:2px;'><input type='text'  tabindex=-1  readonly style = 'width:60px;border:none;' id='se_short_name_{$id}' value='{$lobj_last_slno_execution[$j][FSUBSHORT]}'  ></td>";
				 $e_data.="<td class='tbl_row_new' style='border-right:1px solid #C5DBEC; padding:2px;'><input type='text' tabindex=-1  readonly  style = 'width:290px;border:none;' id='se_sub_name_{$id}' value='{$lobj_last_slno_execution[$j][FSUBNAME]}'  ></td>";
				 $e_data.="</tr>";
				 $k++;
				 $id++;
			}  
		}
		else
		{
		$flag=0;
		$remaining_count=$total_sub-count($lobj_get_exsting_data);
			for($h=0;$h<count($lobj_get_exsting_data);$h++)
			{
				$read_only=($lobj_get_exsting_data[$h]['FMANDATORY']=='T')?"readOnly":''; 
				$border=($lobj_get_exsting_data[$h]['FMANDATORY']=='T')?" border:none;":''; 
				$on_blur =($lobj_get_exsting_data[$h]['FMANDATORY']=='F')?" onblur='getSubDetails( this.id,{$id});' onkeydown='return keyboardSubjectAppearingPopup(event,this.id);' ":'';
				$focus_id =($lobj_get_exsting_data[$h]['FMANDATORY']=='F')?" onfocus=\$g_focus_element='se_sub_code_{$id}' ":'';
				   
				if($k%2==0)
				{
				$class='tbl_row';
				$inp_class='tbl_row_input';
				}
				else
				{
				$input_class='tbl_row1'; 
				$inp_class='tbl_row1_input';
				}
				if(($lobj_get_exsting_data[$h]['FMANDATORY']=='F') && $flag==0)
				{
				$name="name='focus'";
				$flag=1;
				}else
				$name='';
			 $e_data.="<tr style='font-size:12px;' class='ui-widget-content jqgrow' >";
			 $e_data.="<td class='tbl_row_new' align='center'style='border-left:1px solid #C5DBEC; border-right:1px solid #C5DBEC; padding:2px; padding:1px;'><input type='text' {$input_class} {$on_blur } {$name} {$read_only} align='center' {$focus_id} value='{$lobj_get_exsting_data[$h]['FSUBCODE']}' style = 'width:60px;{$border}'id='se_sub_code_{$id}'>  </td>";
			 $e_data.="<td class='tbl_row_new' align='center' style='border-right:1px solid #C5DBEC;  padding:2px;'><input type='text'   {$read_only} style = 'width:60px;border:none;'  {$inp_class} value='{$lobj_get_exsting_data[$h]['FSUBSHORT']}' id='se_short_name_{$id}'></td>";
			 $e_data.="<td class='tbl_row_new' style='border-right:1px solid #C5DBEC; padding:2px;'><input type='text'   {$read_only} style = 'width:290px;border:none;' {$inp_class}  value='{$lobj_get_exsting_data[$h]['FSUBNAME']}' id='se_sub_name_{$id}'></td>";
			 $e_data.="</tr>";
			 $k++;
			 $id++;
			}
			$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';
				}  
				if($j==0)
				$name="name='focus'";
				else
				$name='';
				 
				 $e_data.="<tr style='font-size:12px;' class='ui-widget-content jqgrow' >";
				 $e_data.="<td class='tbl_row_new' align='center' style='border-left:1px solid #C5DBEC; border-right:1px solid #C5DBEC; padding:1px;'><input type='text' onkeydown='return keyboardSubjectAppearingPopup(event,this.id);' value='{$lobj_last_slno_execution[$j][FSUBCODE]}' onfocus=\$g_focus_element='se_sub_code_{$id}' {$name}  onblur='getSubDetails(this.id,{$id});' align='center' style = 'width:60px;' maxlength='4' id='se_sub_code_{$id}'> </td>";
				 $e_data.="<td class='tbl_row_new' align='center'  style='border-right:1px solid #C5DBEC;  padding:2px;'><input type='text'  tabindex=-1  readonly style = 'width:60px;border:none;' id='se_short_name_{$id}' value='{$lobj_last_slno_execution[$j][FSUBSHORT]}'  ></td>";
				 $e_data.="<td class='tbl_row_new' style='border-right:1px solid #C5DBEC; padding:2px;'><input type='text' tabindex=-1  readonly  style = 'width:290px;border:none;' id='se_sub_name_{$id}' value='{$lobj_last_slno_execution[$j][FSUBNAME]}'  ></td>";
				 $e_data.="</tr>";
				 $k++;
				 $id++;
			}
		}		
		 
		
		$e_data.="</table>";
		$arr['html']=$e_data;
		$arr['table_data']=$lobj_get_true_sub_names;
		$arr['remaining_count']=$remaining_count;
		$arr['total_count']=$id;
		// var_dump($arr['total_count']); die();
	echo $aobj_context->mobj_output->ToJSONEnvelope($arr,0,"success"); 
	return;  			
}

function getHonoursCombinationSubject($aobj_context)
{
	session_start();
	$degree_code = $aobj_context->mobj_data["degree_code"]; 	
	$exam = $aobj_context->mobj_data["exam"];
	$honours = $aobj_context->mobj_data["honours"]; 	
	$combcode = $aobj_context->mobj_data["combcode"];
 	$sl_no = $aobj_context->mobj_data["sl_no"]; 
	$pmode = $aobj_context->mobj_data["pmode"]; 
	
	$college_code=$_SESSION['collcode'];	
	 $aobj_context->mobj_db->SetFetchMode(ADODB_FETCH_ASSOC); 	
		$get_sub_total=" select FTOTSUB from degree where FDEGREE= '{$degree_code}' and FEXAMNO='{$exam}'";
		$lobj_sub_total = $aobj_context->mobj_db->getRow($get_sub_total);
		
		$total_sub=$lobj_sub_total['FTOTSUB'];
		//echo $total_sub; die();
	
		
		$get_exsting_data="	select a.*,b.FSUBNAME,b.FSUBSHORT,FMANDATORY from 
							(select FDEGREE,FEXAMNO,FCOLLCODE,FSLNO,FSUBCODE from options
							where FSLNO='{$sl_no}' and FCOLLCODE='{$_SESSION['collcode']}' 
							and FEXAMNO='{$exam}' and FDEGREE='{$degree_code}') a
							left join 
							(select s.FDEGREE,
							FSUBCODE,FSUBNAME,FSUBSHORT ,FMANDATORY from degree d inner join subject s on 
							s.FDEGREE=d.FDEGREE  and  d.FEXAMNO=s.FEXAMNO
							where d.FDEGREE='{$degree_code}' and s.FEXAMNO='{$exam}') b on a.FSUBCODE=b.FSUBCODE
							and a.FDEGREE=b.FDEGREE
							group by FSUBCODE limit {$total_sub}
							 ";
		  
		 $lobj_get_exsting_data = $aobj_context->mobj_db->getAll($get_exsting_data);
		 //var_dump($get_exsting_data );die();
	    
	// get true sub Names
		 
	  $get_true_sub_names="select FSUBCODE,FSUBNAME,FSUBSHORT ,FMANDATORY from mascomb d inner join subject s on 
				s.FDEGREE=d.FDEGREE  and  d.FEXAMNO=s.FEXAMNO
				inner join mascomb m on INSTR(m.fsubcode,s.FSUBCODE)
				group by  s.FSUBCODE";	
		$lobj_get_true_sub_names = $aobj_context->mobj_db->getAll($get_true_sub_names);	
	 
		$e_data.="<table  width='94%' class='tr_ventor_row' cellspacing='0' cellpadding='0' border='0' >";
		//$e_data.="<th align='left' colspan='3' class='ui-jqgrid-titlebar ui-widget-header ui-corner-tl ui-corner-tr ui-helper' style='font-size:12px; padding-left:6px; height:24px;'>Subjects Appearing</th>";		
		$e_data.="<tr style='font-size:12px;' class='ui-state-default ui-jqgrid-hdiv'>";		
		$e_data.="<td  style='padding:2px; width:60px; border-left:1px solid #C5DBEC; border-right:1px solid #C5DBEC; border-bottom:1px solid #C5DBEC;'>Sub Code</td>";
		$e_data.="<td  style='padding:2px; width:65px; border-right:1px solid #C5DBEC; border-bottom:1px solid #C5DBEC;'>Short Name</td>";
		$e_data.="<td  style='padding:2px; width:65px; border-right:1px solid #C5DBEC; border-bottom:1px solid #C5DBEC;'>Subject Name</td>";
		$e_data.="</tr>";
		
		$k=0;
		$id=0;
		 
	 
		if(empty($lobj_get_exsting_data))
		{
		$remaining_count=$total_sub-count($lobj_get_true_sub_names);
		//echo 'aa';			
			foreach($lobj_get_true_sub_names as $key=>$value)
			{
			  /* 
				if($k%2==0)
				{
				$class='tbl_row';
				$inp_class='tbl_row_input';
				}
				else
				{
				$input_class='tbl_row1'; 
				$inp_class='tbl_row1_input';
				} */  
				 $e_data.="<tr style='font-size:12px;' class='ui-widget-content jqgrow'>";
				 $e_data.="<td class='tbl_row_new' align='center' style='border-left:1px solid #C5DBEC; border-right:1px solid #C5DBEC; padding:2px;'><input  tabindex=-1  {$inp_class} type=text style='width:60px;border:none;' readonly id='se_sub_code_{$id}' value='{$value[FSUBCODE]}' onkeydown='return keyboardSubjectAppearingPopup(event,this.id);'></td>";
				 $e_data.="<td class='tbl_row_new' align='center' style='border-right:1px solid #C5DBEC; padding:2px;'><input type=text style='border:none;width:60px;' {$inp_class}  tabindex=-1  readonly id='se_short_name_{$id}' value='{$value[FSUBSHORT]}'></td>";
				 $e_data.="<td  class='tbl_row_new' style='border-right:1px solid #C5DBEC; padding:2px;'><input type=text style='border:none;width:290px;' {$inp_class} id='se_sub_name_{$id}'  tabindex=-1   readonly value='{$value[FSUBNAME]}'> </td>";
				 $e_data.="</tr>";
				 $k++;
				 $id++;
			}
			$name=''; 			
			if($pmode == 0)
			{
				$last_slno_execution ="  select s.FSUBCODE, s.FSUBSHORT, s.FSUBNAME 
											from subject s inner join options d on 									
											s.FDEGREE=d.FDEGREE  and  s.FEXAMNO=d.FEXAMNO and 
											d.fsubcode = s.fsubcode and d.FCOLLCODE='{$college_code}' and
											s.fssubname != 'I.A.' and s.FMANDATORY = 'F' and
											s.FDEGREE='{$degree_code}' and s.FEXAMNO='{$exam}' and 
											d.fslno = 
											( select MAX(s.fslno) from studadm s 
											where s.FDEGREE='{$degree_code}' and s.FEXAMNO='{$exam}' 
											AND FCOLLCODE='{$college_code}' ) group by    s.FSUBCODE
										";
				$lobj_last_slno_execution = $aobj_context->mobj_db->getAll($last_slno_execution);	
			}	
			 
		//	var_dump($lobj_last_slno_execution); die();  			
			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';
				}  
				if($j==0)
				$name="name='focus'";
				else
				$name='';
				 
				 $e_data.="<tr style='font-size:12px;' class='ui-widget-content jqgrow' >";
				 $e_data.="<td class='tbl_row_new' align='center' style='border-left:1px solid #C5DBEC; border-right:1px solid #C5DBEC; padding:1px;'><input type='text' onkeydown='return keyboardSubjectAppearingPopup(event,this.id);' value='{$lobj_last_slno_execution[$j][FSUBCODE]}' onfocus=\$g_focus_element='se_sub_code_{$id}' {$name}  onblur='getSubDetails(this.id,{$id});' align='center' style = 'width:60px;' maxlength='4' id='se_sub_code_{$id}'> </td>";
				 $e_data.="<td class='tbl_row_new' align='center'  style='border-right:1px solid #C5DBEC;  padding:2px;'><input type='text'  tabindex=-1  readonly style = 'width:60px;border:none;' id='se_short_name_{$id}' value='{$lobj_last_slno_execution[$j][FSUBSHORT]}'  ></td>";
				 $e_data.="<td class='tbl_row_new' style='border-right:1px solid #C5DBEC; padding:2px;'><input type='text' tabindex=-1  readonly  style = 'width:290px;border:none;' id='se_sub_name_{$id}' value='{$lobj_last_slno_execution[$j][FSUBNAME]}'  ></td>";
				 $e_data.="</tr>";
				 $k++;
				 $id++;
			}  
		}
		else
		{
		$flag=0;
		$remaining_count=$total_sub-count($lobj_get_exsting_data);
			for($h=0;$h<count($lobj_get_exsting_data);$h++)
			{
				$read_only=($lobj_get_exsting_data[$h]['FMANDATORY']=='T')?"readOnly":''; 
				$border=($lobj_get_exsting_data[$h]['FMANDATORY']=='T')?" border:none;":''; 
				$on_blur =($lobj_get_exsting_data[$h]['FMANDATORY']=='F')?" onblur='getSubDetails( this.id,{$id});' onkeydown='return keyboardSubjectAppearingPopup(event,this.id);' ":'';
				$focus_id =($lobj_get_exsting_data[$h]['FMANDATORY']=='F')?" onfocus=\$g_focus_element='se_sub_code_{$id}' ":'';
				   
				if($k%2==0)
				{
				$class='tbl_row';
				$inp_class='tbl_row_input';
				}
				else
				{
				$input_class='tbl_row1'; 
				$inp_class='tbl_row1_input';
				}
				if(($lobj_get_exsting_data[$h]['FMANDATORY']=='F') && $flag==0)
				{
				$name="name='focus'";
				$flag=1;
				}else
				$name='';
			 $e_data.="<tr style='font-size:12px;' class='ui-widget-content jqgrow' >";
			 $e_data.="<td class='tbl_row_new' align='center'style='border-left:1px solid #C5DBEC; border-right:1px solid #C5DBEC; padding:2px; padding:1px;'><input type='text' {$input_class} {$on_blur } {$name} {$read_only} align='center' {$focus_id} value='{$lobj_get_exsting_data[$h]['FSUBCODE']}' style = 'width:60px;{$border}'id='se_sub_code_{$id}'>  </td>";
			 $e_data.="<td class='tbl_row_new' align='center' style='border-right:1px solid #C5DBEC;  padding:2px;'><input type='text'   {$read_only} style = 'width:60px;border:none;'  {$inp_class} value='{$lobj_get_exsting_data[$h]['FSUBSHORT']}' id='se_short_name_{$id}'></td>";
			 $e_data.="<td class='tbl_row_new' style='border-right:1px solid #C5DBEC; padding:2px;'><input type='text'   {$read_only} style = 'width:290px;border:none;' {$inp_class}  value='{$lobj_get_exsting_data[$h]['FSUBNAME']}' id='se_sub_name_{$id}'></td>";
			 $e_data.="</tr>";
			 $k++;
			 $id++;
			}
			$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';
				}  
				if($j==0)
				$name="name='focus'";
				else
				$name='';
				 
				 $e_data.="<tr style='font-size:12px;' class='ui-widget-content jqgrow' >";
				 $e_data.="<td class='tbl_row_new' align='center' style='border-left:1px solid #C5DBEC; border-right:1px solid #C5DBEC; padding:1px;'><input type='text' onkeydown='return keyboardSubjectAppearingPopup(event,this.id);' value='{$lobj_last_slno_execution[$j][FSUBCODE]}' onfocus=\$g_focus_element='se_sub_code_{$id}' {$name}  onblur='getSubDetails(this.id,{$id});' align='center' style = 'width:60px;' maxlength='4' id='se_sub_code_{$id}'> </td>";
				 $e_data.="<td class='tbl_row_new' align='center'  style='border-right:1px solid #C5DBEC;  padding:2px;'><input type='text'  tabindex=-1  readonly style = 'width:60px;border:none;' id='se_short_name_{$id}' value='{$lobj_last_slno_execution[$j][FSUBSHORT]}'  ></td>";
				 $e_data.="<td class='tbl_row_new' style='border-right:1px solid #C5DBEC; padding:2px;'><input type='text' tabindex=-1  readonly  style = 'width:290px;border:none;' id='se_sub_name_{$id}' value='{$lobj_last_slno_execution[$j][FSUBNAME]}'  ></td>";
				 $e_data.="</tr>";
				 $k++;
				 $id++;
			}
		}		
		 
		
		$e_data.="</table>";
		$arr['html']=$e_data;
		$arr['table_data']=$lobj_get_true_sub_names;
		$arr['remaining_count']=$remaining_count;
		$arr['total_count']=$id;
		// var_dump($arr['total_count']); die();
	echo $aobj_context->mobj_output->ToJSONEnvelope($arr,0,"success"); 
	return; 

}

function getSubDetails($aobj_context)
{
	$degree_code = $aobj_context->mobj_data["degree_code"]; 	
	$exam = $aobj_context->mobj_data["exam"]; 	
	
	  	
	$field_id = $aobj_context->mobj_data["field_id"]; 	
	$icode = $aobj_context->mobj_data["icode"]; 	
	$value = $aobj_context->mobj_data["value"]; 	
	
	 
	
	$get_true_sub_names="select'{$field_id}' as 'field_id',{$icode} as 'icode',
				FSUBCODE,FSUBNAME,FSUBSHORT ,FMANDATORY from degree d inner join subject s on 
				s.FDEGREE=d.FDEGREE  and  d.FEXAMNO=s.FEXAMNO
				where d.FDEGREE='{$degree_code}' and s.FEXAMNO='{$exam}' and
				( FSUBCODE='{$value}' or FSUBSHORT='{$value}')
				 ";	
		$lobj_get_true_sub_names = $aobj_context->mobj_db->getRow($get_true_sub_names);	
	 
	 
	if($lobj_get_true_sub_names) 
		{
				 
				 echo $aobj_context->mobj_output->ToJSONEnvelope($lobj_get_true_sub_names,0,"success"); 
				 return;
		}	
		else
		{
				 
				echo $aobj_context->mobj_output->ToJSONEnvelope($icode,-1,"Failure");
			   return;
		}	 
} 
function getSlNoStudentDetails($aobj_context)
{
$aobj_context->mobj_db->SetFetchMode(ADODB_FETCH_ASSOC); 	
	session_start();   //and FDELETED = 'F'
	$sl_no = "0000".$aobj_context->mobj_data["sl_no"]; 
	$sl_no=substr($sl_no, -4);  
	$degree = $aobj_context->mobj_data["degree"]; 
	$get_student_details_slno = "select s.FSLNO,s.FDEGREE,d.FDESCPN,s.FEXAMNO,s.FCOLLCODE,s.FNAME, 
							s.FFATNAME,s.FMOTNAME,
							ifnull(s.FSTUDYSTATE,'') as FSTUDYSTATE,
							ifnull(s.FABCNO,'') as FABCNO,
							ifnull(s.FMIGCERTNO,'') as FMIGCERTNO,
							ifnull(s.FMIGCERPATH,'') as FMIGCERPATH,
							DATE_FORMAT(s.FDOB,'%Y') as FDOB_Year ,
							DATE_FORMAT(s.FDOB,'%b') as FDOB_month ,
							DATE_FORMAT(s.FDOB,'%d') as FDOB_date  ,
							s.Fgender,s.FCASTE,s.FNATIONAL,s.FENGLISH,s.FCURRADD1,
							 REG_FEE,EXAM_FEE,GRADE_CARD_FEE,TOTAL_FEE,
							s.FCURRADD2,s.FCURRADD3,s.FCURRADD4,s.FPERMADD1,s.FPERMADD2,s.FPERMADD3,s.FPERMADD4,
							s.FSUBDEGREE,concat('https://university-student-photos.s3.ap-south-1.amazonaws.com/005/',s.FPHOTOPATH) as FPHOTOPATH,s.FLATERAL_ENTRY,s.FBLOOD_GROUP,s.FCONTACT_NO,s.FEMAIL,s.FMOT_OCC,s.FFAT_OCC,
							s.FREC_ORDER_NO,
							DATE_FORMAT(s.FREC_ORDER_DATE,'%d/%m/%Y') as FREC_ORDER_DATE,
							s.FAFF_ORDER_NO,
							DATE_FORMAT(s.FAFF_ORDER_DATE,'%d/%m/%Y') as FAFF_ORDER_DATE,
							s.FRELIGION,
							ifnull(s.FDELETED,'F') as FDELETED,FFEEPAID,FRECNO,date_format(FRECDATE,'%d/%m/%Y') as FRECDATE,
							FREMARKS,FCOMBCODE,FMOBILE_NO, FCOLLRSCH, FPASSYEAR, FTOTALPERCENT, FBOARD_UNIV, FLSTCLASS, FOTHBOARD, FMIGCERTNO, FHONOURS
							from studadm s 
							inner join  degree d on d.FDEGREE=s.FDEGREE
							where s.FSLNO='{$sl_no}' and s.FDEGREE='{$degree}' 
							and s.FCOLLCODE='{$_SESSION['collcode']}' and d.FEXAMNO='A';";	 
 
	$lobj_get_student_details = $aobj_context->mobj_db->getRow($get_student_details_slno);
	//var_dump($lobj_get_student_details); die();
	 //echo $get_student_details_slno; die();
	
	if(!empty($lobj_get_student_details) && $lobj_get_student_details[FDELETED] == 'F' )
	{
		echo $aobj_context->mobj_output->ToJSONEnvelope($lobj_get_student_details,0,"success"); 
		return;
	}
	else if(!empty($lobj_get_student_details) && $lobj_get_student_details[FDELETED] == 'T' )
	{
		echo $aobj_context->mobj_output->ToJSONEnvelope($lobj_get_student_details,-1,"Disabled"); 
		return;		
	}
	else if(empty($lobj_get_student_details) )
	{
		echo $aobj_context->mobj_output->ToJSONEnvelope($lobj_get_student_details,-2,"Failure"); 
		return;
	}
}
function generateAutoIncrementSlNo($aobj_context)
{
	$aobj_context->mobj_db->SetFetchMode(ADODB_FETCH_ASSOC); 
	session_start();
	$college_code = $_SESSION['collcode'];
	$degree = $aobj_context->mobj_data["degree"]; 
	$qry = "select * from collexam where fdegree = '{$degree}' and fcollcode = '{$college_code}' 
			and DATE_FORMAT(NOW(),'%Y-%m-%d') 
			BETWEEN DATE_FORMAT(fadmfrom,'%Y-%m-%d') 
			AND DATE_FORMAT(fadmto,'%Y-%m-%d')";
	$student_exam_details = $aobj_context->mobj_db->GetRow($qry);

	
	//$lobj_check_adminsion_freeze = $aobj_context->mobj_db->getRow($check_adminsion_freeze); 
	
	
	if(count($student_exam_details) <= 0)
	{
		$arr='Last date is over';
		echo $aobj_context->mobj_output->ToJSONEnvelope($arr,-1,"Failure");
		return;		
	}
	else
	{
		$get_generateAutoIncrementSlNo = "select right(concat('0000',ifnull(max(FSLNO),0)+01),4)  as  FSLNO 
						from studadm
						where  FDEGREE='{$degree}' and FCOLLCODE='{$_SESSION['collcode']}'";
			 //echo $get_generateAutoIncrementSlNo;
		$lobj_get_generateAutoIncrementSlNo = $aobj_context->mobj_db->getRow($get_generateAutoIncrementSlNo);
		 
		if($lobj_get_generateAutoIncrementSlNo)
		{
		echo $aobj_context->mobj_output->ToJSONEnvelope($lobj_get_generateAutoIncrementSlNo['FSLNO'],0,"success"); 
		return;
		}
		else
		{
		echo $aobj_context->mobj_output->ToJSONEnvelope($lobj_get_student_details,-1,"success"); 
		return;
		}
	}
}
function DiaplayUserSelectedPhoto($aobj_context)
{
	$aobj_context->mobj_db->SetFetchMode(ADODB_FETCH_ASSOC); 
	session_start();
	$collcode = $_SESSION['collcode']; 
	$user_id = $_SESSION['user_id']; 
	 $college_path=$aobj_context->main_src."/student_photos/{$college_code}";
	$folder_path=$aobj_context->main_src."/student_photos/{$college_code}/".replaceChars($degree_code);
	 $file_name=replaceChars(basename($_FILES['student_entry_upload']['name']));
				$path_arr=pathinfo($_FILES['student_entry_upload']['name']);
				$file_ext=$path_arr['extension'];
	 
	$temp_path=$aobj_context->main_src."/student_photos/temp";
	if(!file_exists($temp_path))
	{
	 mkdir($temp_path);
	}
	$file_path="/{$collcode}_{$user_id}_{$file_name}";
 	$temp_path.=$file_path;
	$buffer ='';
		if(isset($_FILES['student_entry_upload']['name']) && $_FILES['student_entry_upload']['name'] != '')         
			{ 
			if ($_FILES["student_entry_upload"]["error"] > 0) 
			{ 
				$error = $_FILES["student_entry_upload"]["error"]; 
			} 
			else if (($_FILES["student_entry_upload"]["type"] == "image/gif") 
			|| ($_FILES["student_entry_upload"]["type"] == "image/jpeg") || 
			($_FILES["student_entry_upload"]["type"] == "image/png") || 
			($_FILES["student_entry_upload"]["type"] == "image/pjpeg")) 
			{ 
				$url = $temp_path; 
				$filename = compress_image($_FILES["student_entry_upload"]["tmp_name"], $url, 80); 
				$buffer = file_get_contents($url);
			}
			/* $size=($_FILES['student_entry_upload']['size']/1024);
			if($size>1024)
			{
			$data="Please Upload the Photo of size less than 1 MB";
				echo $aobj_context->mobj_output->ToJSONEnvelope($data,-2,"success"); 
				return;
			} */
			/* if(move_uploaded_file($filename,$temp_path))
			 { */
				$data="student_photos/temp{$file_path}";
				echo $aobj_context->mobj_output->ToJSONEnvelope($data,0,"success"); 
				return;
			 //}
			}
			echo $aobj_context->mobj_output->ToJSONEnvelope($data,-1,"failure"); 
				return;	
	
	 
}

function compress_image($source_url, $destination_url, $quality)
 { 
	$info = getimagesize($source_url); 
	if ($info['mime'] == 'image/jpeg') $image = imagecreatefromjpeg($source_url); 
	elseif ($info['mime'] == 'image/gif') $image = imagecreatefromgif($source_url); 
	elseif ($info['mime'] == 'image/png') $image = imagecreatefrompng($source_url);
	imagejpeg($image, $destination_url, $quality); 
	return $destination_url;
 } 
/* 
function ViewStudentDetails($aobj_context)
{
	session_start();
	 
	$college_code = $_SESSION['collcode'];	
	  include_once($aobj_context->main_src.'/src/display_details_in_grid_custom.php');
		$display_obj=new display_details_in_grid($aobj_context);
		$display_obj->table_cols=array('grid_sl_no','grid_degree','grid_sub_degree','grid_exam','grid_count');
		$display_obj->display_qry="select concat(FDEGREE,FSLNO) as id, FSLNO as grid_sl_no, FDEGREE as grid_degree,FSUBDEGREE as grid_sub_degree,
						FEXAMNO as  grid_exam,
						FNAME as grid_name,
						concat(real_name,date_format(FLOGDATE,' %d-%b-%Y')) as created_by
						from 
					studadm st
					left join s_sysdb s on s.internal_code=FUSERID
					where 1=1 and ifnull(st.FDELETED,'F')='F' 
					and (FREGNO='' or FREGNO is null) and FCOLLCODE='{$college_code}'";	
 			
		$display_obj->DisplayDetailsInGrid();
} */

function ViewStudentDetails($aobj_context)
{
	session_start();
	 
	$college_code = $_SESSION['collcode'];	
	  include_once($aobj_context->main_src.'/src/display_details_in_grid_custom.php');
		$display_obj=new display_details_in_grid($aobj_context);
		$display_obj->table_cols=array('grid_sl_no','grid_degree','grid_exam','grid_count');
		$display_obj->display_qry="select concat(FDEGREE,FEXAMNO) as id, FSLNO as grid_sl_no, FDEGREE as grid_degree,
						FEXAMNO as  grid_exam, count(*) as grid_count from studadm st left join s_sysdb s on s.internal_code=FUSERID
					where 1=1 and ifnull(st.FDELETED,'F')='F' 
					and (FREGNO='' or FREGNO is null) and FCOLLCODE='{$college_code}' group by FDEGREE,FEXAMNO";	
 			
		$display_obj->DisplayDetailsInGrid();
}

function ViewDegreeWiseStudentDetails($aobj_context)
{
	session_start();
	 
	$college_code = $_SESSION['collcode'];	
	$degid = $aobj_context->mobj_data["degid"];
	  include_once($aobj_context->main_src.'/src/display_details_in_grid_custom.php');
		$display_obj=new display_details_in_grid($aobj_context);
		$display_obj->table_cols=array('grid_sl_no','grid_degree','grid_sub_degree','grid_exam','grid_name','created_by');
		$display_obj->display_qry="select concat(FDEGREE,FSLNO) as id, FSLNO as grid_sl_no, FDEGREE as grid_degree,FSUBDEGREE as grid_sub_degree,
						FEXAMNO as  grid_exam,
						FNAME as grid_name,
						concat(real_name,date_format(FLOGDATE,' %d-%b-%Y')) as created_by
						from 
					studadm st
					left join s_sysdb s on s.internal_code=FUSERID
					where 1=1 and ifnull(st.FDELETED,'F')='F' 
					and (FREGNO='' or FREGNO is null) and FCOLLCODE='{$college_code}' and concat(FDEGREE,FEXAMNO) ='{$degid}'";	
 			
		$display_obj->DisplayDetailsInGrid();
}



function ViewCourseWiseStudentDetails($aobj_context)
{
	session_start();
	 
	$college_code = $_SESSION['collcode'];	
	  include_once($aobj_context->main_src.'/src/display_details_in_grid_custom.php');
		$display_obj=new display_details_in_grid($aobj_context);
		$display_obj->table_cols=array('grid_sl_no','grid_degree','grid_sub_degree','grid_exam','grid_name','created_by');
		$display_obj->display_qry="select concat(FDEGREE,FSLNO) as id, FSLNO as grid_sl_no, FDEGREE as grid_degree,FSUBDEGREE as grid_sub_degree,
						FEXAMNO as  grid_exam,
						FNAME as grid_name,
						concat(real_name,date_format(FLOGDATE,' %d-%b-%Y')) as created_by
						from 
					studadm st
					left join s_sysdb s on s.internal_code=FUSERID
					where 1=1 and ifnull(st.FDELETED,'F')='F' 
					and (FREGNO='' or FREGNO is null) and FCOLLCODE='{$college_code}'";	
 			
		$display_obj->DisplayDetailsInGrid();
}


function deleteStudentDetails($aobj_context)
{
 $aobj_context->mobj_db->SetFetchMode(ADODB_FETCH_ASSOC);
 $lstr_ids = $aobj_context->mobj_data["id"];	 
 	    $lstr_qry = "delete  
			from studadm 
			 where internal_code in (".$lstr_ids.")"; 
	//	echo $lstr_qry 
 $lobj_rs = $aobj_context->mobj_db->Execute($lstr_qry);
}
function GetCombinationFeeList($aobj_context)
{
	$aobj_context->mobj_db->SetFetchMode(ADODB_FETCH_ASSOC);
	$fdegree = $aobj_context->mobj_data["fdegree"];	 
	$fexamno = $aobj_context->mobj_data["fexamno"];	 
	$fcombcode = $aobj_context->mobj_data["fcombcode"];	 
	$fcatcode = $aobj_context->mobj_data["fcatcode"];
	$fsl_no = $aobj_context->mobj_data["fsl_no"];
	session_start();
	$collcode = $_SESSION['collcode'];  
	$get_year="SELECT FADYEAR
				FROM degree
				WHERE FDEGREE='{$fdegree}'
				AND FEXAMNO='{$fexamno}'";
	$lobj_get_year = $aobj_context->mobj_db->getRow($get_year);
	$year=$lobj_get_year['FADYEAR'];
	
	$query = "select count(distinct s.fsubcode) as pr_cnt from subject s inner join mascomb m on  s.fdegree = m.fdegree
	where m.fdegree = '{$fdegree}' and instr(m.fsubcode,s.fsubcode)
	and m.fcombcode = '{$fcombcode}'
	and ifnull(ftheory,'') = 'F' and ifnull(fintass,'') <> 'T'";
	$res = $aobj_context->mobj_db->GetRow($query);
	$pr_cnt = $res['pr_cnt'];

	$query = "select fcombcode from studadm where fdegree = '{$fdegree}' and fcollcode = '{$collcode}' and fslno = '{$fsl_no}'";
	$res = $aobj_context->mobj_db->GetRow($query);
	$studcombcode =  $res['fcombcode'];

	if($studcombcode == $fcombcode)
	{
		$get_details="select  a.FHEADCODE,(FFEE+(fprfee*{$pr_cnt})) as FFEE,ifnull(FAMOUNT ,'0') as fee_paid from
		(SELECT FHEADCODE,FFEE,fprfee,
			FCOMBCODE,FCATCODE
		FROM admfeestr
		WHERE FDEGREE='{$fdegree}'
		AND FEXAMNO='{$fexamno}'
		AND FCOMBCODE='{$fcombcode}'
		AND FCATCODE='{$fcatcode}')a
		left outer join 
		(
		SELECT FHEADCODE,FAMOUNT 
		FROM admfeedetl
		where FDEGREE='{$fdegree}'
		AND FEXAMNO='{$fexamno}'
		AND FCOLLCODE='{$collcode}'
		AND FSLNO='{$fsl_no}'					 
		) b
		on a.FHEADCODE=b.FHEADCODE order by FHEADCODE";
					//var_dump($get_details);
	}else
	{
		
		$get_details = "select  a.FHEADCODE,(FFEE+(fprfee*{$pr_cnt})) as FFEE,'0' as fee_paid from
		(SELECT FHEADCODE,FFEE,fprfee,
		FCOMBCODE,FCATCODE
		FROM admfeestr
		WHERE FDEGREE='{$fdegree}'
		AND FEXAMNO='{$fexamno}'
		AND FCOMBCODE='{$fcombcode}'
		AND FCATCODE='{$fcatcode}') a";

	}

	$lobj_rs = $aobj_context->mobj_db->GetAll($get_details);
				
	$str_reval="";
	$str_reval.="<table width='60%' style='padding:3px 4px 3px 3px;' class='tr_ventor_row' id='reval_table_data' width='100%' border='0' cellspacing='0' cellpadding='0'>";
	$str_reval.="<th align='left' colspan='4' class='ui-jqgrid-titlebar ui-widget-header ui-corner-tl ui-corner-tr ui-helper' style='font-size:12px; padding-left:6px; height:24px;'>Fee Details</th>";
	$str_reval.="<tr class='ui-state-default ui-jqgrid-hdiv'>";
	$str_reval.="<td align='center' style=' font-size:12px; border-left:1px solid #C5DBEC; border-right:1px solid #C5DBEC; border-bottom:1px solid #C5DBEC;'>Sl.No</td>";
	$str_reval.="<td align='center' style=' font-size:12px; border-right:1px solid #C5DBEC; border-bottom:1px solid #C5DBEC;'>Description</td>";
	$str_reval.="<td align='center' style=' font-size:12px; border-right:1px solid #C5DBEC; border-bottom:1px solid #C5DBEC;'>Fee</td>";
	$str_reval.="<td align='center' style=' font-size:12px; border-right:1px solid #C5DBEC; border-bottom:1px solid #C5DBEC;'>Fee Paid</td>";
 
	$str_reval.="</tr>";
	$sl_no=1;
	$total=0;
	$total_fee_paid=0;
	foreach($lobj_rs  as $ak=>$av)
	{
		$FHEADCODE=$av['FHEADCODE'];
		$FFEE=$av['FFEE'];
		$fee_paid=$av['fee_paid'];
		$total+=$FFEE;
		$total_fee_paid+=$fee_paid;
		$str_reval.="<tr class='ui-widget-content jqgrow'>";		
		$str_reval.="<td class='tbl_row_new' style='text-align:center; border-left:1px solid #C5DBEC; border-right:1px solid #C5DBEC; padding:2px; font-size:12px;  ' >{$sl_no}</td>";
		$str_reval.="<td class='tbl_row_new' style='border-left:0px solid #C5DBEC; border-right:1px solid #C5DBEC; padding:2px; font-size:12px;' align='left' id='head_{$sl_no}'>{$FHEADCODE}</td>";
		$str_reval.="<td class='tbl_row_new' style='border-left:0px solid #C5DBEC; border-right:1px solid #C5DBEC; padding:2px; font-size:12px;width:50px;'align='right' >{$FFEE}</td>";
		$str_reval.="<td class='tbl_row_new' style='border-left:0px solid #C5DBEC; border-right:1px solid #C5DBEC; padding:2px; font-size:12px;' align='right'><input onblur=\"CalculateTotalFeePaid();\" onkeypress='return acceptNumbersOnlyForModule(event);'  type='text'  style='text-align:right;width:50px;'id='fee_paying_{$sl_no}' value='{$fee_paid}'/></td>";
		$str_reval.="</tr>";
		$sl_no++;
	}
	$str_reval.="<tr class='ui-widget-content jqgrow' style='font-weight:bold;'>";		
	$str_reval.="<td colspan=2 class='tbl_row_new' style='text-align:center; border-left:1px solid #C5DBEC; border-right:1px solid #C5DBEC; padding:2px; font-size:12px;'  align='right'>Total </td>";
		
	$str_reval.="<td class='tbl_row_new' style='border-left:0px solid #C5DBEC; border-right:1px solid #C5DBEC; padding:2px; font-size:12px;' align='right' id='total_comb_fee'>{$total}</td>";
	$str_reval.="<td class='tbl_row_new' style='border-left:0px solid #C5DBEC; border-right:1px solid #C5DBEC; padding:2px; font-size:12px;' align='right' id='total_fee_paid'>{$total_fee_paid}</td>";

	$str_reval.="</tr>";
	$str_reval.="</table>";
	$arr['html']=	$str_reval;
	print_r($aobj_context->mobj_output->ToJSONEnvelope($arr,0,"success"));
	return $html;  
}

function getHonoursNames($aobj_context)
{
	$aobj_context->mobj_db->SetFetchMode(ADODB_FETCH_ASSOC);
	session_start();
	$collcode = $_SESSION['collcode']; 
	$degreecode = $aobj_context->mobj_data["degree"];
	$get_honours="SELECT distinct fhonours as internal_code, fhonours as value from mascomb 
	where ifnull(fhonours,'') <>'' and fdegree = '{$degreecode}'";
	$lobj_get_honours = $aobj_context->mobj_db->getAll($get_honours);
	
		if($lobj_get_honours)
		{
			echo $aobj_context->mobj_output->ToJSONEnvelope($lobj_get_honours,0,"success"); 
			
		}
		else
		{
			$data = 'Error in data retrieval';
			echo $aobj_context->mobj_output->ToJSONEnvelope($data,-1,"failure"); 
			
		}

}

function getHonoursCombinationNames($aobj_context)
{
	$aobj_context->mobj_db->SetFetchMode(ADODB_FETCH_ASSOC);
	session_start();
	$collcode = $_SESSION['collcode'];  
	$honours = $aobj_context->mobj_data["honours"];	
	$degreecode = $aobj_context->mobj_data["degree"];
	$get_honours="SELECT  FCOMBCODE as internal_code, FCOMBDESC as value from mascomb 
	where fhonours = '{$honours}' and ifnull(fhonours,'') <>'' and fdegree = '{$degreecode}'";
	$lobj_get_honours = $aobj_context->mobj_db->getAll($get_honours);
	
	if($lobj_get_honours)
	{
		echo $aobj_context->mobj_output->ToJSONEnvelope($lobj_get_honours,0,"success"); 
	}
	else
	{
		$data = '';
		echo $aobj_context->mobj_output->ToJSONEnvelope($data,-1,"failure"); 
	}

}

function loadNEPSubdet($aobj_context)
{
	$aobj_context->mobj_db->SetFetchMode(ADODB_FETCH_ASSOC);
	$fdegree = $aobj_context->mobj_data["degree_code"];
	$exam = $aobj_context->mobj_data["exam"];
	$appno = $aobj_context->mobj_data["appno"];
	$collcode = $_SESSION['collcode'];

	$query = "select * from subtype where fdegree = '{$fdegree}' order by ftorder";
	$res = $aobj_context->mobj_db->GetAll($query);	
	if($appno == '' || $appno == undefined )
	{
		$query = "select group_concat(distinct concat(su.fsubcode,'-',FMANDATORY)) as subcode , 
		su.fsubtype,st.ftotsub 
		from subject su
		inner join subtype st on su.fdegree = st.fdegree 
		and su.fblockno = st.fsubtype
		where su.fdegree = '{$fdegree}' 
		and su.fexamno = '{$exam}' 
		and su.FMANDATORY = 'T'
		group by su.fblockno
		order by su.fblockno,su.fsubcode";
		
	}else
	{
		$query = "select group_concat(distinct concat(su.fsubcode,'-',FMANDATORY)) as subcode , 
		su.fblockno as fsubtype,
		st.ftotsub 
		from subject su 
		inner join subtype st on su.fdegree = st.fdegree 
		and su.fblockno = st.fsubtype
		inner join options o on su.fdegree = o.fdegree
		and o.fexamno = su.fexamno
		and o.fsubcode = su.fsubcode
		and o.fcollcode = '{$collcode}' and o.fdegree = '{$fdegree}'
		and o.fslno = '{$appno}'
		where su.fdegree = '{$fdegree}' 
		and su.fexamno = '{$exam}' 
		group by su.fblockno
		order by su.fblockno,su.fsubcode";
	}	
	//var_dump($query);die();
	$res2 = $aobj_context->mobj_db->GetAll($query);	

	$div = "";
	if($res)
	{
		foreach($res as $value)
		{
			$subtype = $value['fsubtype'];
			
			$options = "";
			$options = "<option value = ''>--Select---</option>";
			// if($subtype == '1' || $subtype == '2')
			// {
			// 	$query = "select fsubcode,fsubname from subject 
			// 	where fdegree = '{$fdegree}' 
			// 	and fexamno = '{$exam}' and fblockno in ('1','2')
			// 	group by fsubcode";
			// }else
			// {
				$query = "select fsubcode,fsubname from subject 
				where fdegree = '{$fdegree}' 
				and fexamno = '{$exam}' and fblockno = '{$subtype}'
				group by fsubcode";
			//}
			$res1 = $aobj_context->mobj_db->GetAll($query);

			foreach($res1 as $optval)
			{
				$options .= "<option value = '".$optval['fsubcode']."'>".$optval['fsubname']."</option>";	
			}

			$div .= "<span>".$value['fdescpn']."</span>";
			$div .="<table  style='display:'block'; overflow:auto' cellpadding='5' cellspacing='2'>
			<tbody>
				";
			$a = 0;	
			$brv = "";
			for($i=1;$i<=$value['ftotsub'];$i++)
			{
				
				
				if($a>3)
				{	
					$brv = "<br>";
					$a = 0;
				}
				//var_dump($value['fsubtype'].$a.$brv);
				$div  .="<tr><td>
				<select id = '".$value['fsubtype'].$i."'  style = 'width: 350px;' onchange = 'GetCombinationFeeListNew()'>".
				$options	
				."</select>
				$brv
				</td>
				</tr>";
				$a++;
			}
			$div .="</tbody>
			</table>";
						
			
		}
	}else
	{
		$div = "<h4>No Subject Details Found</h4>";
	}


	$arr['html'] =	$div;
	$arr['madsub'] = $res2;
	$arr['totsub'] = $res;
	echo $aobj_context->mobj_output->ToJSONEnvelope($arr,0,"success");	
	return;
}

function GetCombinationFeeListNew($aobj_context)
{

	include_once("/JSON.php"); 
	$json = new Services_JSON();

	$aobj_context->mobj_db->SetFetchMode(ADODB_FETCH_ASSOC);
	$fdegree = $aobj_context->mobj_data["fdegree"];	 
	$fexamno = $aobj_context->mobj_data["fexamno"];	 
	$appno = $aobj_context->mobj_data["appno"];	 
	

	$lstr_param = stripslashes($aobj_context->mobj_data["sub_arr"]);
	$mobj_jsondata = $json->decode($lstr_param);
	$sub_arr_data = get_object_vars($mobj_jsondata);
	

	session_start();
	$collcode = $_SESSION['collcode'];  
	$pr_cnt = 0;
	for($k=0;$k<count($sub_arr_data);$k++)
	{
		

		$query = "select count(distinct s.fsubcode) as pr_cnt 
		from subject s 
		where s.fdegree = '{$fdegree}' and ifnull(ftheory,'') = 'F' 
		and ifnull(fintass,'') <> 'T'
		and fsubcode = '{$sub_arr_data[$k]->sub_code}'";
		$res = $aobj_context->mobj_db->GetRow($query);
		$pr_cnt1 = $res['pr_cnt'];
		$pr_cnt = $pr_cnt+$pr_cnt1;
			
		
	}
	

	// $query = "select count(distinct s.fsubcode) as pr_cnt from subject s inner join mascomb m on  s.fdegree = m.fdegree
	// where m.fdegree = '{$fdegree}' and instr(m.fsubcode,s.fsubcode)
	// and m.fcombcode = '{$fcombcode}'
	// and ifnull(ftheory,'') = 'F' and ifnull(fintass,'') <> 'T'";
	// $res = $aobj_context->mobj_db->GetRow($query);
	// $pr_cnt = $res['pr_cnt'];

	// $query = "select fcombcode from studadm where fdegree = '{$fdegree}' and fcollcode = '{$collcode}' and fslno = '{$fsl_no}'";
	// $res = $aobj_context->mobj_db->GetRow($query);
	// $studcombcode =  $res['fcombcode'];

	if($appno != '')
	{
		$get_details="select  a.FHEADCODE,(FFEE+(fprfee*{$pr_cnt})) as FFEE,
		(FFEE+(fprfee*{$pr_cnt})) as fee_paid from
		(SELECT FHEADCODE,FFEE,fprfee,
			FCOMBCODE,FCATCODE
		FROM admfeestr
		WHERE FDEGREE='{$fdegree}'
		AND FEXAMNO='{$fexamno}'
		AND FCOMBCODE='{$fdegree}'
		AND FCATCODE='GM')a
		left outer join 
		(
		SELECT FHEADCODE,FAMOUNT 
		FROM admfeedetl
		where FDEGREE='{$fdegree}'
		AND FEXAMNO='{$fexamno}'
		AND FCOLLCODE='{$collcode}'
		AND FSLNO='{$appno}'					 
		) b
		on a.FHEADCODE=b.FHEADCODE order by FHEADCODE";
	//var_dump($get_details);
	}else
	{
		
		$get_details = "select  a.FHEADCODE, (FFEE+(fprfee*{$pr_cnt})) as FFEE, 
		(FFEE+(fprfee*{$pr_cnt})) as fee_paid from
		(SELECT FHEADCODE,FFEE,fprfee,
		FCOMBCODE,FCATCODE
		FROM admfeestr
		WHERE FDEGREE='{$fdegree}'
		AND FEXAMNO='{$fexamno}'
		AND FCOMBCODE='{$fdegree}'
		AND FCATCODE='GM') a";

	}

	$lobj_rs = $aobj_context->mobj_db->GetAll($get_details);
				
	$str_reval="";
	$str_reval.="<table width='60%' style='padding:3px 4px 3px 3px;' class='tr_ventor_row' id='reval_table_data' width='100%' border='0' cellspacing='0' cellpadding='0'>";
	$str_reval.="<th align='left' colspan='4' class='ui-jqgrid-titlebar ui-widget-header ui-corner-tl ui-corner-tr ui-helper' style='font-size:12px; padding-left:6px; height:24px;'>Fee Details</th>";
	$str_reval.="<tr class='ui-state-default ui-jqgrid-hdiv'>";
	$str_reval.="<td align='center' style=' font-size:12px; border-left:1px solid #C5DBEC; border-right:1px solid #C5DBEC; border-bottom:1px solid #C5DBEC;'>Sl.No</td>";
	$str_reval.="<td align='center' style=' font-size:12px; border-right:1px solid #C5DBEC; border-bottom:1px solid #C5DBEC;'>Description</td>";
	$str_reval.="<td align='center' style=' font-size:12px; border-right:1px solid #C5DBEC; border-bottom:1px solid #C5DBEC;'>Fee</td>";
	$str_reval.="<td align='center' style=' font-size:12px; border-right:1px solid #C5DBEC; border-bottom:1px solid #C5DBEC;'>Fee Paid</td>";
 
	$str_reval.="</tr>";
	$sl_no=1;
	$total=0;
	$total_fee_paid=0;
	foreach($lobj_rs  as $ak=>$av)
	{
		$FHEADCODE=$av['FHEADCODE'];
		$FFEE=$av['FFEE'];
		$fee_paid=$av['fee_paid'];
		$total+=$FFEE;
		$total_fee_paid+=$fee_paid;
		$str_reval.="<tr class='ui-widget-content jqgrow'>";		
		$str_reval.="<td class='tbl_row_new' style='text-align:center; border-left:1px solid #C5DBEC; border-right:1px solid #C5DBEC; padding:2px; font-size:12px;  ' >{$sl_no}</td>";
		$str_reval.="<td class='tbl_row_new' style='border-left:0px solid #C5DBEC; border-right:1px solid #C5DBEC; padding:2px; font-size:12px;' align='left' id='head_{$sl_no}'>{$FHEADCODE}</td>";
		$str_reval.="<td class='tbl_row_new' style='border-left:0px solid #C5DBEC; border-right:1px solid #C5DBEC; padding:2px; font-size:12px;width:50px;'align='right' >{$FFEE}</td>";
		$str_reval.="<td class='tbl_row_new' style='border-left:0px solid #C5DBEC; border-right:1px solid #C5DBEC; padding:2px; font-size:12px;' align='right'><input onblur=\"CalculateTotalFeePaid();\" onkeypress='return acceptNumbersOnlyForModule(event);'  type='text'  style='text-align:right;width:50px;'id='fee_paying_{$sl_no}' value='{$fee_paid}'/></td>";
		$str_reval.="</tr>";
		$sl_no++;
	}
	$str_reval.="<tr class='ui-widget-content jqgrow' style='font-weight:bold;'>";		
	$str_reval.="<td colspan=2 class='tbl_row_new' style='text-align:center; border-left:1px solid #C5DBEC; border-right:1px solid #C5DBEC; padding:2px; font-size:12px;'  align='right'>Total </td>";
		
	$str_reval.="<td class='tbl_row_new' style='border-left:0px solid #C5DBEC; border-right:1px solid #C5DBEC; padding:2px; font-size:12px;' align='right' id='total_comb_fee'>{$total}</td>";
	$str_reval.="<td class='tbl_row_new' style='border-left:0px solid #C5DBEC; border-right:1px solid #C5DBEC; padding:2px; font-size:12px;' align='right' id='total_fee_paid'>{$total_fee_paid}</td>";

	$str_reval.="</tr>";
	$str_reval.="</table>";
	$arr['html']=	$str_reval;
	print_r($aobj_context->mobj_output->ToJSONEnvelope($arr,0,"success"));
	return $html;  
}

?>