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


Current Path : /proc/thread-self/root/var/www/html/vskub/src/
Upload File :
Current File : //proc/thread-self/root/var/www/html/vskub/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();
	 
	$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=trim($aobj_context->mobj_data["student_entry_comm_addr1"]);
	$degree_address_comm2=trim($aobj_context->mobj_data["student_entry_comm_addr2"]);
	$degree_address_comm3=trim($aobj_context->mobj_data["student_entry_comm_addr3"]);
	$degree_address_comm4=trim($aobj_context->mobj_data["student_entry_comm_addr4"]);
	
	$degree_address_perm1=trim($aobj_context->mobj_data["student_entry_per_add1"]);
	$degree_address_perm2=trim($aobj_context->mobj_data["student_entry_per_add2"]);
	$degree_address_perm3=trim($aobj_context->mobj_data["student_entry_per_add3"]);
	$degree_address_perm4=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"]);

	$aqty = trim($aobj_context->mobj_data["aqty"]);
	$asty = trim($aobj_context->mobj_data["asty"]);
	
	$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=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"]);
	$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;
	
	$rec_no = trim($aobj_context->mobj_data["rec_no"]);
	$rec_date = trim($aobj_context->mobj_data["rec_date"]);
	$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"]);
	$total_comb_fee=trim($aobj_context->mobj_data["total_comb_fee"]);
	$total_comb_fee=(empty($total_comb_fee) || $total_comb_fee='null')?0:$total_comb_fee;
	
	$get_year="SELECT FADYEAR
				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'];
	
	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"]);

	include_once("/JSON.php"); 
	$json = new Services_JSON();
	 
	$lstr_param = stripslashes($aobj_context->mobj_data["sub_arr"]);
	$mobj_jsondata = $json->decode($lstr_param);
	$sub_arr_data = get_object_vars($mobj_jsondata);
	$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); 
	//var_dump($lobj_check_adminsion_freeze['FADMSTOP']);die();
	if($lobj_check_adminsion_freeze['FADMSTOP']=='T')
	{
		$arr='Last date for student admission 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.'/'.$degree_slno."_".$file_name;;
	$image_path="student_photos/{$college_code}/".replaceChars($degree_code).'/'.$degree_slno."_2017_".$file_name;
	 
	//student_entry_upload
	if(!file_exists($college_path))
			{
			 mkdir($college_path);
			}if(!file_exists($folder_path))
			{
			 mkdir($folder_path);
			}
	if(is_null($lobj_check_adminsion_freeze['FCADSTATUS']))
	{
	
		if($add_edit=='Add')
		{
		$photo_path="";

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

			// 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))
			// 	{
			// 	$photo_path=$image_path;
			// 	}
			// }
			$lstr_qry = "insert into studadm(FSLNO,FDEGREE,FEXAMNO,FCOLLCODE,
											FNAME,FAYEAR,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,FOTHBOARD,FMIGCERTNO,
											FCOMBCODE,FHONOURS) 
									        values
											('{$degree_slno}','{$degree_code}',
											 '{$degree_exam}', '{$college_code}', 
											 '{$student_entry_name}','{$f_year}','{$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}',
											'{$othboardRuniv}','{$mgdocno}','{$combination}','{$honours}','{$aqty}','{$asty}'
										    ) ";     

						
							$lobj_rs = $aobj_context->mobj_db->Execute($lstr_qry);
	 			
						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($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
					{
						//var_dump($lstr_qry);
						 $arr='Insertion Failed';
							echo $aobj_context->mobj_output->ToJSONEnvelope($arr,-1,"Failure");
						   return; 
						   
					}
		}
		else if($add_edit=='Edit') // 
		{  
			$get_existing_data="select FPHOTOPATH 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'] ;
			//  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;
			// 			 }
			// 			}

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

			 
					$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} ',
								FLOGNAME='{$log_name}',
								FLOGDATE=NOW(),
								FFEEPAID='{$fee_paid}',
								FRECNO='{$rec_no}',
								FRECDATE='{$rec_date}',
								FREMARKS='{$fee_remarks}',
								FMOBILE_NO = '{$mobile}', FCOLLRSCH = '{$collrsch}', FPASSYEAR = '{$passyear}', 
								FTOTALPERCENT = '{$totalper}', FBOARD_UNIV = '{$boardRuniv}',FOTHBOARD='{$othboardRuniv}',
								FMIGCERTNO= '{$mgdocno}',FCOMBCODE = '{$combination}', FHONOURS = '{$honours}',
								faqty = '{$aqty}',
								fasty = '{$asty}'
								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);
						}
						

			 //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);
					}	 
				
				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"]; 	
	
	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 ;
     
	   
	    $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']}' ";	
								
		  $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'];	
	$combination = trim($aobj_context->mobj_data["combination"]);
	$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  s.FSUBCODE
				union
				select s.FSUBCODE,s.FSUBNAME,s.FSUBSHORT ,'T' as FMANDATORY from degree d inner join subject s on 
				s.FDEGREE=d.FDEGREE  and  d.FEXAMNO=s.FEXAMNO
				left join mascomb m on m.FDEGREE=d.FDEGREE and m.fcombcode = '{$combination}'
				where d.FDEGREE='{$degree_code}'  and 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 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"]; 
	$_SESSION['sl_no'] = $sl_no;
	
	$select_logintCnt = "select ifnull(login_cnt,'') as login_cnt from studoc
	where FCOLLCODE='{$_SESSION['collcode']}' and app_no='{$sl_no}' and FDEGREE = '{$degree}'";
	$lobj_select_logintCnt = $aobj_context->mobj_db->getRow($select_logintCnt);
	if($lobj_select_logintCnt['login_cnt'] !='')
	{
		$_SESSION['login_cnt'] = $lobj_select_logintCnt['login_cnt'];
	}
	else
	{
		session_start();
		$login_counter="select (ifnull(login_cnt,0) +1)as login_cnt from login_counter";		
		$lobj_rs_counter = $aobj_context->mobj_db->GetRow($login_counter);	
		$count_val=$lobj_rs_counter['login_cnt'];     	
			
		$update_log_cnt="update login_counter set login_cnt={$count_val}";         		 				
		$lobj_update_log_cnt = $aobj_context->mobj_db->Execute($update_log_cnt);
		setcookie("login_cnt",$count_val,time()+36000333, '/' );
		$_SESSION['login_cnt']=$count_val;	
	}
	$get_student_details_slno = "select s.*, s.FSLNO,s.FDEGREE,d.FDESCPN,
	s.FEXAMNO,s.FCOLLCODE,s.FNAME, 
	s.FFATNAME,s.FMOTNAME,ifnull(FPASSMNTH,'') as FPASSMNTH,ifnull(FPASSYER,'') as FPASSYER,
	ifnull(FMARKSECURED,'') as FMARKSECURED,
	ifnull(FMARKTOTAL,'') as FMARKTOTAL, ifnull(FPERMARK,'') as FPERMARK,
	DATE_FORMAT(s.FDOB,'%d/%m/%Y') as FDOBirth  ,FCATBIRTH,
	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,
	DATE_FORMAT(s.FADMDATE,'%d/%m/%Y') as FADMISDATE,
	s.FSUBDEGREE,
	concat('https://university-student-photos.s3.ap-south-1.amazonaws.com/026/',s.FPHOTOPATH) as FPHOTOPATH,
	concat('https://university-student-photos.s3.ap-south-1.amazonaws.com/026/',s.FSIGNPATH) as FSIGNPATH,
	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,
	s.fasty,s.faqty
	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();
	
	$query = "select * from qualdet where fslno = '{$sl_no}' and fdegree = '{$degree}' 
	and fcollcode ='{$_SESSION['collcode']}'";
	$results = $aobj_context->mobj_db->getAll($query); 

	$arr['studdet'] = $lobj_get_student_details;
	$arr['qualdet'] = $results;
	$arr['qualcount'] = count($results);;
	
	if(!empty($lobj_get_student_details) && $lobj_get_student_details['FDELETED'] == 'F' )
	{
		echo $aobj_context->mobj_output->ToJSONEnvelope($arr,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();
	$degree = $aobj_context->mobj_data["degree"]; 
	$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;
  
		if(isset($_FILES['student_entry_upload']['name']) && $_FILES['student_entry_upload']['name'] != '')         
			{ 
			$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($_FILES['student_entry_upload']['tmp_name'],$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 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 = 'GEN';	 
 $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'];
	
 	 $get_details="select  a.FHEADCODE,FFEE,ifnull(FAMOUNT ,'0') as fee_paid from
					(SELECT FHEADCODE,FFEE,
					 FCOMBCODE,FCATCODE
					FROM admfeestr
					WHERE FYEAR='{$year}'
					AND FDEGREE='{$fdegree}'
					AND FEXAMNO='{$fexamno}'
					AND FCOMBCODE='{$fcombcode}'
					AND FCATCODE='{$fcatcode}')a
					left outer join 
					(
					SELECT FHEADCODE,FAMOUNT 
					FROM admfeedetl
					where FYEAR='{$year}'
					AND FDEGREE='{$fdegree}'
					AND FEXAMNO='{$fexamno}'
					AND FCOLLCODE='{$collcode}'
					AND FSLNO='{$fsl_no}'					 
					) b
					on a.FHEADCODE=b.FHEADCODE order by FHEADCODE";
					$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 getCombinationNames($aobj_context)
{
	$aobj_context->mobj_db->SetFetchMode(ADODB_FETCH_ASSOC);
	session_start();
	$collcode = $_SESSION['collcode'];  
	$degreecode = $aobj_context->mobj_data["degree"];
	$get_honours="SELECT  FCOMBCODE as internal_code, FCOMBDESC as value from mascomb 
	where fdegree = '{$degreecode}'";
	$lobj_get_honours = $aobj_context->mobj_db->getAll($get_honours);
	

	$get_data="SELECT distinct FDEGREE AS internal_code,CONCAT(FDEGREE,' - ',FDESCPN) AS value FROM degree
	where fdegree like 'b%' and fexamno = 'A'";
	$up_obj=$aobj_context->mobj_db->GetAll($get_data);
	$arr['degree']=$up_obj;
	$arr['mascomb']=$lobj_get_honours; 
	if($lobj_get_honours)
	{
		echo $aobj_context->mobj_output->ToJSONEnvelope($arr,0,"success"); 
	}
	else
	{
		$data = '';
		echo $aobj_context->mobj_output->ToJSONEnvelope($data,-1,"failure"); 
	}

}

	function UploadEmployeeDocuments($aobj_context)
	{	
		$aobj_context->mobj_db->SetFetchMode(ADODB_FETCH_ASSOC);
		session_start();
			$login_cnt = $_SESSION['login_cnt'];
			$collcode = $_SESSION['collcode']; 
			$dir_path=$aobj_context->main_src."/certificates/{$login_cnt}";
			mkdir($dir_path);
			//chmod($dir_path,7777);
			$cert_file_name=trim($aobj_context->mobj_data["file_name"]);
			$doc_type_int_code=trim($aobj_context->mobj_data["doc_type_int_code"]);
			
		
		
		
		$file_id="ed_{$doc_type_int_code}";
		$file_name=replaceChars(basename($_FILES[$file_id]['name']));
		//$file_ext=$path_arr['extension'];
		$arr['file_name']=$file_name;	
		if(isset($file_name) && $file_name != '')         
		{ 		
				$path_arr=pathinfo($_FILES[$file_id]['name']);
				$file_ext=$path_arr['extension'];
				
		$root_file_name=$dir_path."/{$cert_file_name}.".$file_ext;	
		$attachement_path="certificates/{$login_cnt}/{$cert_file_name}.".$file_ext;	

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

		if(move_uploaded_file($_FILES[$file_id]['tmp_name'],$root_file_name))
		  {

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

					$funivcode = $results['funivcode'];

					// var_dump($root_file_name);
					// var_dump($funivcode);
					// var_dump($attachement_path);die();

					$arr['path']=$attachement_path;					
					$arr['id']=$doc_type_int_code;					
					$arr['file_name']=$file_name;
					try {
						$s3->putObject(['Bucket' => ADMISSION_CERTIFICATES, 'Key' => $funivcode.'/'.$attachement_path, 'SourceFile' => $root_file_name]);
						$del_query = "delete from studoc
						where ref_mas_doc_code='{$doc_type_int_code}'
						and login_cnt='{$login_cnt}'";
						$up_obj=$aobj_context->mobj_db->Execute($del_query);

						$insert_doc="INSERT INTO studoc(ref_mas_doc_code, login_cnt, file_path, created_date, fcollcode,fdegree,app_no)
						values('{$doc_type_int_code}','{$login_cnt}','{$attachement_path}',now(),'{$college_code}','{$degree}','{$slno}')";
						$up_obj=$aobj_context->mobj_db->Execute($insert_doc); 
						unlink($root_file_name);
						echo $aobj_context->mobj_output->ToJSONEnvelope($arr,0,"success");	

						return;
					} catch(S3Exception $e){
						$arr['message'] = 'Unable to upload documents';
						echo $aobj_context->mobj_output->ToJSONEnvelope($arr,-1,"failure"); 
						return;
					}
				
								
			 			
		  }
		  else
		  {
				$data="Moving {$file_name} failed";						
				echo $aobj_context->mobj_output->ToJSONEnvelope($data,-1,"failure");	
				return;
		  }
		} 
		else
		{
		$data="File is empty, not moved";						
		echo $aobj_context->mobj_output->ToJSONEnvelope($data,-1,"failure");	
		return;
		}
	}	
	
	function UploadEditEmployeeDocuments($aobj_context)
	{	
		session_start();
		$aobj_context->mobj_db->SetFetchMode(ADODB_FETCH_ASSOC);
		$college_code = $_SESSION['collcode'];
		$login_cnt = $_SESSION['login_cnt'];
		$degree = $aobj_context->mobj_data["degree"];
		$collcode = $aobj_context->mobj_data["collcode"];
		$slno = $aobj_context->mobj_data["slno"];
				
		$dir_path=$aobj_context->main_src."certificates/{$login_cnt}";
		mkdir($dir_path);
		//chmod($dir_path,7777);
		$cert_file_name=trim($aobj_context->mobj_data["file_name"]);
		$doc_type_int_code=trim($aobj_context->mobj_data["doc_type_int_code"]);
			
		$file_id="ed_{$doc_type_int_code}";
		
		$file_name=replaceChars(basename($_FILES[$file_id]['name']));
		//$file_ext=$path_arr['extension'];
		$arr['file_name']=$file_name;	
		if(trim($college_code) != '')
		{
			
			if(isset($file_name) && $file_name != '')         
			{ 		
				
				$path_arr=pathinfo($_FILES[$file_id]['name']);
				
				$file_ext=$path_arr['extension'];
				
				$root_file_name=$dir_path."/{$cert_file_name}.".$file_ext;	
				$attachement_path="certificates/{$login_cnt}/{$cert_file_name}.".$file_ext;	

				$s3 = S3Client::factory(
					array(
						'credentials' => array(
							'key' => IAM_KEY,
							'secret' => IAM_SECRET
						),
						'version' => "latest",
						'region'  => 'ap-south-1'
					)
				);
				
				if(move_uploaded_file($_FILES[$file_id]['tmp_name'],$root_file_name))
				{
					$query = "select funivcode from control";
					$results = $aobj_context->mobj_db->GetRow($query);

					$funivcode = $results['funivcode'];

					// var_dump($root_file_name);
					// var_dump($funivcode);
					// var_dump($attachement_path);die();

					$arr['path']=$attachement_path;					
					$arr['id']=$doc_type_int_code;					
					$arr['file_name']=$file_name;
					try {
						$s3->putObject(['Bucket' => ADMISSION_CERTIFICATES, 'Key' => $funivcode.'/'.$attachement_path, 'SourceFile' => $root_file_name]);
						$del_query = "delete from studoc
						where ref_mas_doc_code='{$doc_type_int_code}'
						and login_cnt='{$login_cnt}'";
						$up_obj=$aobj_context->mobj_db->Execute($del_query);

						$insert_doc="INSERT INTO studoc(ref_mas_doc_code, login_cnt, file_path, created_date, fcollcode,fdegree,app_no)
						values('{$doc_type_int_code}','{$login_cnt}','{$attachement_path}',now(),'{$college_code}','{$degree}','{$slno}')";
						$up_obj=$aobj_context->mobj_db->Execute($insert_doc); 
						unlink($root_file_name);
						echo $aobj_context->mobj_output->ToJSONEnvelope($arr,0,"success");	

						return;
					} catch(S3Exception $e){
						$arr['message'] = 'Unable to upload documents';
						echo $aobj_context->mobj_output->ToJSONEnvelope($arr,-1,"failure"); 
						return;
					}
					
					
					// $arr['path']=$attachement_path;					
					// $arr['id']=$doc_type_int_code;					
					// $arr['file_name']=$file_name;	
					// $delete="delete from studoc
					// where ref_mas_doc_code='{$doc_type_int_code}'
					// and login_cnt='{$login_cnt}'
					// 			";	
					// $lobj_delete= $aobj_context->mobj_db->Execute($delete);			
					// $insert="INSERT INTO studoc(ref_mas_doc_code, login_cnt, file_path, created_date, fcollcode,fdegree,app_no)
					// values('{$doc_type_int_code}','{$login_cnt}','{$attachement_path}',now(),'{$college_code}','{$degree}','{$slno}')";	
					// $lobj_insert= $aobj_context->mobj_db->Execute($insert);
					// // echo $insert;
					// echo $aobj_context->mobj_output->ToJSONEnvelope($arr,0,"success");	
					// return; 		
			  	}
			  else
			  {
					$data="Moving {$file_name} failed";						
					echo $aobj_context->mobj_output->ToJSONEnvelope($data,-1,"failure");	
					return;
			  }
			} 
			else
			{
				$data="File is empty, not moved";						
				echo $aobj_context->mobj_output->ToJSONEnvelope($data,-1,"failure");	
				return;
			}
		}
		else
		{
			$data="Moving {$file_name} failed";						
			echo $aobj_context->mobj_output->ToJSONEnvelope($data,-1,"failure");	
			return;
		}	
	}	
	
	function setAdmLoginCntr($aobj_context)
	{
		$aobj_context->mobj_db->SetFetchMode(ADODB_FETCH_ASSOC);
		session_start();
		$login_counter="select (ifnull(login_cnt,0) +1)as login_cnt from login_counter";		
		$lobj_rs_counter = $aobj_context->mobj_db->GetRow($login_counter);	
		$count_val=$lobj_rs_counter['login_cnt'];     	

		$update_log_cnt="update login_counter set login_cnt={$count_val}";         		 				
		$lobj_update_log_cnt = $aobj_context->mobj_db->Execute($update_log_cnt);
		setcookie("login_cnt",$count_val,time()+36000333, '/' );
		$_SESSION['login_cnt']=$count_val;	
		echo $aobj_context->mobj_output->ToJSONEnvelope($count_val,0,"success");
		return;
	}

	function DiaplayUserSelectedSignature($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_signupload']['name']));
		$path_arr=pathinfo($_FILES['student_entry_signupload']['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}_s_{$file_name}";
		$temp_path.=$file_path;
  
		if(isset($_FILES['student_entry_signupload']['name']) && $_FILES['student_entry_signupload']['name'] != '')         
		{ 
			$size=($_FILES['student_entry_signupload']['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($_FILES['student_entry_signupload']['tmp_name'],$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 getstudfee($aobj_context)
	{


		$aqty=trim($aobj_context->mobj_data["aqty"]);
		$degree=trim($aobj_context->mobj_data["degree"]);
		$asty=trim($aobj_context->mobj_data["asty"]);

		$qery = "select ffee from admfeestr where fdegree = '{$degree}' and fexamno = 'A' and fcombcode = '{$aqty}'
		and fcatcode = 'GM' and FCONSTYPE = '{$asty}'";
		 //var_dump($qery);
		$res = $aobj_context->mobj_db->GetRow($qery);	
		
		if($res)
		{
			$arr['fee'] = $res['ffee'];
			echo $aobj_context->mobj_output->ToJSONEnvelope($arr,0,"success");	
			return;
		}else
		{
			$data = "Fee Deatils not Defined.";
			echo $aobj_context->mobj_output->ToJSONEnvelope($data,-1,"failure"); 
			return;	
		}	

	}

?>