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.149.29.192


Current Path : /proc/thread-self/root/var/www/html/dud/
Upload File :
Current File : //proc/thread-self/root/var/www/html/dud/report_candidate_list.php

<?php
function generateCandidateListReport($aobj_context)
{	
	session_start();
	$college_code = $_SESSION['collcode']; 
    $aobj_context->mobj_db->SetFetchMode(ADODB_FETCH_ASSOC);  
    
	//echo $college_code; 
	$degree_code = $aobj_context->mobj_data["degree_code"]; 
	$search_field = $aobj_context->mobj_data["search_field"]; 
	
	$RegNo_start = substr("00000000".$aobj_context->mobj_data["streg"],-8); 
	$RegNo_end = substr("ZZZZZZZZ".$aobj_context->mobj_data["edreg"],-8); 
	
	$main_src_obj=(explode("/",$_SERVER["REQUEST_URI"]));
	$main_src=$main_src_obj[1];
	$pdf_writer_class=$aobj_context->main_src."/maya-pdf/fpdf.php";
	$root_pdf_file_download=$aobj_context->main_src."/Report_details/output/report_candidate_list.pdf";

	include($pdf_writer_class);
   /*  if($active_field === 'T')
	{	 */
		$pdf= new FPDF('L'); //Landscape
		$pdf->WhichReport = 'ReportCandidateList';
	/* }
	else
	{
		$pdf= new FPDF(); //A4
		$pdf->WhichReport = 'ReportCandidateNonActList';
	} */
	$pdf->SetFont('Times','B',16);
	$pdf->SetMargins(5,12);		
	$pdf->AliasNbPages();
	//$pdf->SetAutoPageBreak('on' , 10);
//header	
	$page_header_university = "select FUNIVNAME,FTOWN, date_format(now(),'%d/%m/%Y') as date from control";
	$lobj_page_header_university = $aobj_context->mobj_db->GetRow($page_header_university);
	
	$page_header_college ="select concat('[',FCOLLCODE,']  ',FCOLLNAME,', ',FTOWN) as college_name
							from college where FCOLLCODE='{$college_code}'";
	$lobj_page_header_college = $aobj_context->mobj_db->GetRow($page_header_college); 

	$page_header_degree = "select date_add(date_add(now(),INTERVAL 13 hour),interval 30 minute) as now_date,concat('[',FDEGREE,'] - ', FDESCPN,space(2),'-',space(2),FEXAMDATE) as Degree_name, FADYEAR  
							from degree where FDEGREE = '{$degree_code}' ";
	$lobj_page_header_degree = $aobj_context->mobj_db->GetRow($page_header_degree);
	 

	$page_header_REGROLL = "select FREGROLL from control";
		$lobj_page_header_REGROLL = $aobj_context->mobj_db->GetRow($page_header_REGROLL);

	$pdf->aobj_context =$aobj_context ;
	$pdf->date_time = 'ReportCandidateList';
	$pdf->WhichReport = 'ReportCandidateList';
	$pdf->FUNIVNAME = $lobj_page_header_university['FUNIVNAME'].', '.$lobj_page_header_university['FTOWN'];
	$pdf->FTOWN = '';
	$pdf->date_1 = $lobj_page_header_university['date'];
	$pdf->college_name = $lobj_page_header_college['college_name'];
	$pdf->Degree_name = $lobj_page_header_degree['Degree_name'];
	$pdf->date_time = $lobj_page_header_degree['now_date'];
	$pdf->REGROLL=$lobj_page_header_REGROLL['FREGROLL'];
	$pdf->RFROM= $RegNo_start;
	$pdf->RTO= $RegNo_end;
	$pdf->head_cnt=0;;
//end header		

	$pdf->AddPage();	PrintFooter($pdf);		
	$pdf->SetFont('Times','B',9);	
// body
	$get_fee_paid_REC_DATE ="select FREGNO,
	if(date_format(FRECPTDATEA,'%d/%m/%y')='00/00/00','',date_format(FRECPTDATEA,'%d/%m/%y')) as FdateA, FRECPTNOA,
	if(date_format(FRECPTDATEB,'%d/%m/%y')='00/00/00','',date_format(FRECPTDATEB,'%d/%m/%y')) as FdateB, FRECPTNOB,
	if(date_format(FRECPTDATEC,'%d/%m/%y')='00/00/00','',date_format(FRECPTDATEC,'%d/%m/%y')) as FdateC, FRECPTNOC,
	 if(date_format(FRECPTDATED,'%d/%m/%y')='00/00/00','',date_format(FRECPTDATED,'%d/%m/%y'))as FdateD, FRECPTNOD,    
	if(date_format(FRECPTDATEE,'%d/%m/%y')='00/00/00','',date_format(FRECPTDATEE,'%d/%m/%y')) as FdateE, FRECPTNOE, 
	if(date_format(FRECPTDATEF,'%d/%m/%y')='00/00/00','',date_format(FRECPTDATEF,'%d/%m/%y')) as FdateF, FRECPTNOF, 
	if(date_format(FRECPTDATEG,'%d/%m/%y')='00/00/00','',date_format(FRECPTDATEG,'%d/%m/%y')) as FdateG, FRECPTNOG,
	if(date_format(FRECPTDATEH,'%d/%m/%y')='00/00/00','',date_format(FRECPTDATEH,'%d/%m/%y'))as FdateH, FRECPTNOH,
	if(date_format(FRECPTDATEI,'%d/%m/%y')='00/00/00','',date_format(FRECPTDATEI,'%d/%m/%y')) as FdateI, FRECPTNOI,
	if(date_format(FRECPTDATEJ,'%d/%m/%y')='00/00/00','',date_format(FRECPTDATEJ,'%d/%m/%y'))as FdateJ, FRECPTNOJ    
	from candsum
	WHERE  fdegree='{$degree_code}'
	and FREGNO>='{$RegNo_start}' and FREGNO<='{$RegNo_end}' 
	and  FCOLLCODE='{$college_code}' and frecptdate is not null";
	$lobj_get_fee_paid_REC_DATE = $aobj_context->mobj_db->GetAll($get_fee_paid_REC_DATE);
	  
    $rec_date_array=array();	
	foreach($lobj_get_fee_paid_REC_DATE as $key => $value)
	{
		$rec_date_array[$value['FREGNO']]['A']['Date'] = $value['FdateA'];
		$rec_date_array[$value['FREGNO']]['A']['Rec'] = $value['FRECPTNOA'];
		
		$rec_date_array[$value['FREGNO']]['B']['Date'] = $value['FdateB'];
		$rec_date_array[$value['FREGNO']]['B']['Rec'] = $value['FRECPTNOB'];
		
		$rec_date_array[$value['FREGNO']]['C']['Date'] = $value['FdateC'];
		$rec_date_array[$value['FREGNO']]['C']['Rec'] = $value['FRECPTNOC'];
		
		$rec_date_array[$value['FREGNO']]['D']['Date'] = $value['FdateD'];
		$rec_date_array[$value['FREGNO']]['D']['Rec'] = $value['FRECPTNOD'];
		
		$rec_date_array[$value['FREGNO']]['E']['Date'] = $value['FdateE'];
		$rec_date_array[$value['FREGNO']]['E']['Rec'] = $value['FRECPTNOE'];
		
		$rec_date_array[$value['FREGNO']]['F']['Date'] = $value['FdateF'];
		$rec_date_array[$value['FREGNO']]['F']['Rec'] = $value['FRECPTNOF'];
		
		$rec_date_array[$value['FREGNO']]['G']['Date'] = $value['FdateG'];
		$rec_date_array[$value['FREGNO']]['G']['Rec'] = $value['FRECPTNOG'];
		
		$rec_date_array[$value['FREGNO']]['H']['Date'] = $value['FdateH'];
		$rec_date_array[$value['FREGNO']]['H']['Rec'] = $value['FRECPTNOH'];
		
		$rec_date_array[$value['FREGNO']]['I']['Date'] = $value['FdateI'];
		$rec_date_array[$value['FREGNO']]['I']['Rec'] = $value['FRECPTNOI'];
		
		$rec_date_array[$value['FREGNO']]['J']['Date'] = $value['FdateJ'];
		$rec_date_array[$value['FREGNO']]['J']['Rec'] = $value['FRECPTNOJ'];
	}
		$fee_cond=" ifnull(cs.ftotalfee,0) > 0 ";
		if($all_data=="Yes")
		$fee_cond="";

		$get_candidate_data = "  select a.*,b.FEXAMNAME,b.Fee_ShortName,b.fee  ,format(b.total_fee,0) as total_fee 
		from (SELECT s.FSLNO,s.FNAME,s.FFATNAME,s.FMOTNAME,
		if(date_format(s.FDOB,'%d/%m/%y')='00/00/00','',date_format(s.FDOB,'%d/%m/%y'))
		as FDOB,
		s.FSEX,cs.FCATEGORY as FCASTE,cd.FDEGREE, cd.FEXAMNO,cd.FCOLLCODE, cd.FREGNO, format(cs.FTOTALFEE,0) AS FTOTALFEE, 
		GROUP_CONCAT(distinct {$search_field} order by cd.FSUBCODE separator '|') as subjects 
		from canddet cd inner join student s on s.FREGNO=cd.FREGNO 
		and s.FDEGREE=cd.FDEGREE 
		and s.FCOLLCODE=cd.FCOLLCODE 
		and ifnull(cd.FPASSMTH,'')=''
		INNER JOIN subject sub on sub.FDEGREE=cd.FDEGREE and sub.FEXAMNO=cd.FEXAMNO and sub.FSUBCODE=cd.FSUBCODE
		inner join candsum cs on 
		cs.FDEGREE=cd.FDEGREE  and cs.FCOLLCODE=cd.FCOLLCODE and
		cs.FREGNO=cd.FREGNO and ifnull(cs.ftotalfee,0) > 0
		WHERE   cd.fregno>='{$RegNo_start}' and cd.fregno<='{$RegNo_end}' 
		and cd.fdegree='{$degree_code}' and  cd.FCOLLCODE='{$college_code}'
		and cd.fpresent = 'P' GROUP BY cd.FDEGREE,cd.FEXAMNO, 
		cd.FCOLLCODE,cd.FREGNO ORDER BY cd.FREGNO) a left join 
		(select sf.FDEGREE,sf.FEXAMNO,sf.FCOLLCODE,sf.FREGNO,deg.FEXAMNAME, 
		GROUP_CONCAT(mf.FSHORTNAME order by mf.FFEECODE) as Fee_ShortName,
		GROUP_CONCAT(if(ROUND(sf.FAMOUNT,0)=0,'',ROUND(sf.FAMOUNT,0)) order by sf.FFEECODE separator '|') as fee,
		sum(FAMOUNT) as total_fee
		from masfee mf left join studfee sf on sf.FFEECODE=mf.FFEECODE inner join degree deg on 
		deg.FDEGREE=sf.FDEGREE and deg.FEXAMNO=sf.FEXAMNO
		where sf.fregno>='{$RegNo_start}' and sf.fregno<='{$RegNo_end}' and sf.fdegree='{$degree_code}' 
		and  sf.FCOLLCODE='{$college_code}'			
		group by FDEGREE,FEXAMNO,FCOLLCODE,FREGNO having sum(FAMOUNT) > 0) b on
		a.FDEGREE=b.FDEGREE and a.FEXAMNO=b.FEXAMNO and a.FCOLLCODE=b.FCOLLCODE and a.FREGNO=b.FREGNO 
		where b.fexamname is not null order by a.FREGNO,FEXAMNO"; //FPRESENT='P'
     //echo $get_candidate_data; die();
		//var_dump($get_candidate_data);
	$lobj_get_candidate_data = $aobj_context->mobj_db->GetAll($get_candidate_data);   
	// echo "<pre>".$get_candidate_data;die();
	$final_arr=array();
	$for_page_break=array();
	$k=0;	
	$full_fee_arr=array();
	$unique_fee_arr=array();
	$grand_total=0;
	
	//var_dump($pdf->Degree_name);die();

	//$pdf->Cell(20,5,"Degree".$pdf->Degree_name,'1',1,'C');
	foreach($lobj_get_candidate_data as  $sk=>$sv)
	{
		$reg_no=$sv['FREGNO'];
		$fslno=$sv['FSLNO'];
		$fname=$sv['FNAME'];
		$fatname=$sv['FFATNAME'];
		$mname=$sv['FMOTNAME'];		
		$dob=$sv['FDOB'];
		$fsex=$sv['FSEX'];
		$fcaste=$sv['FCASTE'];
		$fdegree=$sv['FDEGREE'];
		$fexam=$sv['FEXAMNO'];
		$total_fee=$sv['FTOTALFEE'];
		$subjects=$sv['subjects'];
		$exam_name=$sv['FEXAMNAME'];
		$fee_shortname=$sv['Fee_ShortName'];
		$fee=$sv['fee'];
		$explode_fee_short_name_arr=explode(",",$fee_shortname);
		$explode_fee_arr=explode("|",$fee);
		
		foreach($explode_fee_short_name_arr as $ffk=>$ffv)
		{
			$full_fee_arr[$reg_no][$ffv]+=$explode_fee_arr[$ffk];
			$grand_total+=$explode_fee_arr[$ffk];
			if(!in_array($ffv,$unique_fee_arr))
			array_push($unique_fee_arr,$ffv);
		}
		
		//$total_fee=$sv[total_fee];
		$student_exams_arr[$reg_no][$k]=$fexam;$k++;
		$final_arr[$reg_no]['reg_no']=$reg_no;
		$final_arr[$reg_no]['fslno']=$fslno;
		$final_arr[$reg_no]['fname']=$fname;
		$final_arr[$reg_no]['fatname']=$fatname;
		$final_arr[$reg_no]['mname']=$mname;
		$final_arr[$reg_no]['dob']=$dob;
		$final_arr[$reg_no]['fsex']=$fsex;
		$final_arr[$reg_no]['fcaste']=$fcaste;
		$final_arr[$reg_no]['fee_shortname']=$fee_shortname;
		$final_arr[$reg_no]['fee']=$fee;
		$final_arr[$reg_no]['total_fee']=$total_fee;
		$final_arr[$reg_no]['fexam'][$fexam]['exam_name']=$exam_name;
		$final_arr[$reg_no]['fexam'][$fexam]['fee']=$fee;
		$final_arr[$reg_no]['fexam'][$fexam]['subjects']=$subjects;
		$final_arr[$reg_no]['exam_name']=$exam_name;		 	
		
	}
  
	 
	foreach($student_exams_arr as $skk=>$svv)
	{
		$for_page_break[$skk]=count($svv)+2;
	}
	 
	$line_counter=0;
	$arr_w = array(12,25,110,35,63,10,20,45,12,18);
	$arr_h = array(5,6);	 
	$sl_no=1;
	$grand_tot_arr=array();
	$page_tot_arr=array();
	$footer_student_fee_arr=array();
 
	foreach($final_arr as $stdk=>$stdv)
	{
		$reg_no=$stdv['reg_no'];									   		  	 	
		$fslno=$stdv['fslno'];
		$fname=$stdv['fname'];
		$fatname=$stdv['fatname'];
		$mname=$stdv['mname'];
		$dob=$stdv['dob'];
		$fsex=$stdv['fsex'];
		$fcaste=$stdv['fcaste'];						
		$total_fee=$stdv['total_fee'];						
		
		
		if(($line_counter+($for_page_break[$reg_no])) >= 20)
		{	 
		//echo $line_counter+($for_page_break[$reg_no]); die();
			$pdf->ln(1);
			$sum_arr=array();
			foreach($footer_student_fee_arr as $sk=>$sv)
			{
				foreach($unique_fee_arr as $ak=>$av)
				{
				 $sum_arr[$av]+=$full_fee_arr[$sv][$av];
				}
			}
			 
			foreach($sum_arr as $ak=>$av)
			{
				$pdf->Cell(20,5,$ak,'1',0,'C');
			}
			$pdf->Cell(20,5,"Total",'1',1,'C');
			$tot=0;
			foreach($sum_arr as $ak=>$av)
			{
				$pdf->Cell(20,5,$av,'1',0,'C');
				$tot+=$av;
			}
			$pdf->Cell(20,5,$tot,'1',1,'C');
			$footer_student_fee_arr=array();
				
			$pdf->AddPage();PrintFooter($pdf);		
			$line_counter=0;		 
		} 
		
			//$pdf->Ln(1);	
			$line_counter += 1;			
			$pdf->SetFont('Times','B',9);	
			$pdf->Cell($arr_w[0],$arr_h[1],$sl_no,'LRT',0,'C');
			$pdf->Cell($arr_w[1],$arr_h[1],$reg_no,'LRT',0,'C');		
			array_push($footer_student_fee_arr,$reg_no);
			$pdf->Cell($arr_w[2],$arr_h[1],$fname,'1',0,'L');		
			$pdf->SetFont('Times','',9);		
			$pdf->Cell($arr_w[4]-3,$arr_h[1],'Fat.:   '.$fatname,'1',0,'L');		
			$pdf->Cell($arr_w[4]+12+3,$arr_h[1],'Mot.:   '.$mname,'1',1,'L');	
			$pdf->Cell($arr_w[0],$arr_h[1],'','LR',0,'C');
			$pdf->Cell($arr_w[1],$arr_h[1],'','LR',0,'L');		
			$pdf->Cell($arr_w[3],$arr_h[1],'DOB.:   '.$dob,'1',0,'L');
			$pdf->Cell($arr_w[6],$arr_h[1],'Gen.:   '.$fsex,'1',0,'L');		
			$pdf->Cell($arr_w[6],$arr_h[1],'Grp.:   '.$fcaste,'1',0,'L');
			$pdf->SetFont('Times','B',9);
			$pdf->Cell($arr_w[7]-$arr_w[5],$arr_h[1],'Total Fee:  '.$total_fee,'1',0,'C');
			$pdf->SetFont('Times','',9);
			//Fee Short Name Details
			
			$fee_shortname=$stdv['fee_shortname'];						
			$free_name_array = explode(",",$fee_shortname);
			//echo "<pre>";print_r($free_name_array);die();
			/* if(empty($free_name_array))
			{
			$free_name_array[0]="";
			$free_name_array[1]="";
			$free_name_array[2]="";
			}
			 */

			for($m=0; $m<count($free_name_array); $m++)

			{				
				if(($m) <= 7)
				{
				
				$pdf->Cell($arr_w[8],$arr_h[1],$free_name_array[$m],'1',0,'C');			
				}
				else
				{
//					$pdf->Cell($arr_w[8],$arr_h[1],'Others','1',0,'C');							
					break;
				}	
			}
			$diff=8-count($free_name_array);
			if($diff>0)//writing empty if it comes less than 8
			{
				for($d=0;$d<$diff;$d++)
				$pdf->Cell($arr_w[8],$arr_h[1],"",'1',0,'C');			
			}	
			
			$pdf->Cell($arr_w[8],$arr_h[1],'Total','1',0,'C');	
			$pdf->SetFont('Times','',9);			
			$pdf->Cell($arr_w[8],$arr_h[1],'Date','1',0,'C');
			$pdf->Cell($arr_w[6]-2,$arr_h[1],'Rec. No.','1',1,'C');												
			$line_counter++;
		    //Exam Fee Details
			//echo "<pre>";
			
			$fexam_arr = $stdv['fexam'];//print_r($fexam_arr);die();
				 
			foreach($fexam_arr as $ek=>$ev)
			{
				$line_counter++;
				 $exam_no=$ek;					 			
				 $exam_name=$ev['exam_name'];					 			
				 $pdf->Cell(($arr_w[0]+$arr_w[1]),$arr_h[1],$exam_name,'1',0,'L');	 	
				
				 $subjects=$ev['subjects'];	
				 $subject_array = explode("|",$subjects);				 
				 $remeber_cell=0;
				for($m=0;$m<count($subject_array);$m++)
				{								
					$pdf->Cell($arr_w[5],$arr_h[1],$subject_array[$m],'1',0,'C');					
					$remeber_cell++;
				}
				for($j=$remeber_cell; $j<11; $j++)
				{
					 $pdf->Cell($arr_w[5],$arr_h[1],'','1',0,'C');
				}
				
				$fee=$ev['fee'];				
				$free_array = explode("|",$fee);			
				$other_sum=0;
				$other_flag=0;	
				$total_exam_fee=0;
				for($m=0; $m<count($free_array); $m++)
				{		
					if(($m) <= 7)
					{
						$pdf->Cell($arr_w[8],$arr_h[1],$free_array[$m],'1',0,'C');	
						$grand_tot_arr[$free_name_array[$m]]+=$free_array[$m];
						$page_tot_arr[$free_name_array[$m]]+=$free_array[$m]; 
							$total_exam_fee+=$free_array[$m];
						$other_flag=0;	
						$other_sum=0;
					}	
					else
					{
						$other_sum += $free_array[$m];
						$total_exam_fee+=$free_array[$m];						
						$other_flag=1;
					}				
				}
			if($other_flag)
				$pdf->Cell($arr_w[8],$arr_h[1],$other_sum,'1',0,'C');	
				$diff=8-count($free_name_array);
				if($diff>0)//writing empty if it comes less than 8
				{
					for($d=0;$d<$diff;$d++)
					$pdf->Cell($arr_w[8],$arr_h[1],"",'1',0,'C');			
				}	
					
				$pdf->Cell($arr_w[8],$arr_h[1],$total_exam_fee,'1',0,'C');								
				$pdf->Cell($arr_w[8],$arr_h[1],$rec_date_array[$reg_no][$exam_no]['Date'],'1',0,'C');
				$pdf->Cell($arr_w[6]-2,$arr_h[1],$rec_date_array[$reg_no][$exam_no]['Rec'] ,'1',1,'C');				
			}	 	

			$sl_no++; 	
			$sum_arr=array();
			foreach($footer_student_fee_arr as $sk=>$sv)
			{
				foreach($unique_fee_arr as $ak=>$av)
				{
					$sum_arr[$av]+=$full_fee_arr[$sv][$av];
				}
			}
 
			  
	}
			$pdf->ln(2);;
			foreach($sum_arr as $ak=>$av)
			{
			$pdf->Cell(20,5,$ak,'1',0,'C');
			}
			$pdf->Cell(20,5,"Total",'1',1,'C');
			$tot=0;
			foreach($sum_arr as $ak=>$av)
			{
			$pdf->Cell(20,5,$av,'1',0,'C');
			$tot+=$av;
			}
			$pdf->Cell(20,5,$tot,'1',1,'C');

		/* 
		$pdf->Cell(35,5,"Page Wise Head Count",'0',1,'L');	 	
		foreach($page_tot_arr as $ak=>$av)
		{
		$pdf->Cell(15,5,$ak,'1',0,'C');	 	
		}
		$pdf->Cell(2,5,"",'0',1,'L');	 
		foreach($page_tot_arr as $ak=>$av)
		{
		$pdf->Cell(15,5,$av,'1',0,'C');	 	
		}
		$pdf->ln(2);;
		 $sum_arr=array();
			foreach($footer_student_fee_arr as $sk=>$sv)
			{
			foreach($unique_fee_arr as $ak=>$av)
					{
					 $sum_arr[$av]+=$full_fee_arr[$sv][$av];
					}
			} */
		$pdf->ln(5);	 	
		$pdf->SetFont('Times','B',9);		
		$pdf->Cell(35,5,"Grand Total",'0',1,'L');
		$s=0;		 
		foreach($grand_tot_arr as $ak=>$av)
		{
			$pdf->Cell(15,5,$ak,'1',0,'C');	 	
		}
		$pdf->Cell(15,5,"Total",'1',1,'C');	
		foreach($grand_tot_arr as $ak=>$av)
		{
			$pdf->Cell(15,5,$av,'1',0,'C');	 
			$s+=$av;				
		}
		$pdf->Cell(15,5,$s,'1',1,'C');	
			
			
		$pdf->ln(5);;
		$pdf->SetFont('Times','B',12);
		$pdf->Cell(210,5,"Grand Total Rs {$grand_total}/",'0',1,'L');
			 
			
		
	 
	 
	 
	 
/* 	$check_same_reg_no_for_pb = $lobj_get_candidate_data[0]['FREGNO'];
	$for_page_break = array();
	$page_break_counter=2;
	foreach($lobj_get_candidate_data as $key => $value)
	{
		if($check_same_reg_no_for_pb ==$value['FREGNO'])		
		{
			$page_break_counter++;
		}
		else 
		{
			$page_break_counter=3;
			$check_same_reg_no_for_pb=$value['FREGNO'];
		}
		$for_page_break[$value['FREGNO']]=$page_break_counter;
		
	}	

	$line_counter=0;
	$check_same_reg_no = $lobj_get_candidate_data[0]['FREGNO'];
	$check_same_sl_no = $lobj_get_candidate_data[0]['FSLNO'];
	$first_time_printing = 1;
	$arr_w = array(12,25,111,35,67,10,20,45,15,18);
	$arr_h = array(5,6);
	$page_temp_flag=0;

	foreach($lobj_get_candidate_data as $key => $value)
	{	
	 if(($line_counter+($for_page_break[$value['FREGNO']])) >= 23 && $check_same_reg_no !=$value['FREGNO'])
	  {
		$pdf->AddPage();		
		$line_counter=0;
		$page_temp_flag=1;
	  }	   	
	  else
	  {
		$page_temp_flag=1;
	  } */
	  /* if($page_temp_flag)
	  {
		  if(($first_time_printing) || $check_same_reg_no !=$value['FREGNO'] && $check_same_sl_no != $value['FSLNO'])		
			{
				$pdf->Ln(2);
				$line_counter += 2;
				$pdf->SetFont('Times','B',9);	
					$pdf->Cell($arr_w[0],$arr_h[1],$value['FSLNO'],'LRT',0,'C');
					$pdf->Cell($arr_w[1],$arr_h[1],$value['FREGNO'],'LRT',0,'C');		
					$pdf->Cell($arr_w[2],$arr_h[1],$value['FNAME'],'1',0,'L');		
				$pdf->SetFont('Times','',9);		
					$pdf->Cell($arr_w[4],$arr_h[1],'Fat.:   '.$value['FFATNAME'],'1',0,'L');		
					$pdf->Cell($arr_w[4],$arr_h[1],'Mot.:   '.$value['FMOTNAME'],'1',1,'L');	
					
					$pdf->Cell($arr_w[0],$arr_h[1],'','LR',0,'C');
					$pdf->Cell($arr_w[1],$arr_h[1],'','LR',0,'L');		
					$pdf->Cell($arr_w[3],$arr_h[1],'DOB.:   '.$value['FDOB'],'1',0,'L');
					$pdf->Cell($arr_w[6],$arr_h[1],'Gen.:   '.$value['FSEX'],'1',0,'L');		
					$pdf->Cell($arr_w[6],$arr_h[1],'Grp.:   '.$value['FCASTE'],'1',0,'L');
				$pdf->SetFont('Times','B',9);
					$pdf->Cell($arr_w[7],$arr_h[1],'Total Fee:  '.$value['FTOTALFEE'],'1',0,'C');
				$pdf->SetFont('Times','',9);
// stars FEE NAMEs			
				$free_name_array = explode(",",$value['Fee_ShortName']);	
				for($m=0; $m<count($free_name_array); $m++)
				{				
					if(($m) <= 3)
					$pdf->Cell($arr_w[8],$arr_h[1],$free_name_array[$m],'1',0,'C');			
					else
					{
						$pdf->Cell($arr_w[8],$arr_h[1],'Others','1',0,'C');							
						break;
					}	
				}
				$pdf->Cell($arr_w[8],$arr_h[1],'Exam Fee','1',0,'C');	
$pdf->SetFont('Times','',9);			
				$pdf->Cell($arr_w[8],$arr_h[1],'Date','1',0,'C');
				$pdf->Cell($arr_w[6],$arr_h[1],'Rec. No.','1',1,'C');
// End FEE NAMEs			
				$first_time_printing=0;	
				$check_same_reg_no=$value['FREGNO'];
				$check_same_sl_no = $value['FSLNO'];	
			}
//subjects		
			$line_counter++;
				$pdf->Cell(($arr_w[0]+$arr_w[1]),$arr_h[1],$value['FEXAMNAME'],'1',0,'L');				
				$subject_array = explode("|",$value['subjects']);	
			
				$remeber_cell=0;
				for($m=0;$m<count($subject_array);$m++)
				{			
					$pdf->Cell($arr_w[5],$arr_h[1],$subject_array[$m],'1',0,'C');
			
					$remeber_cell++;
				}
				 
				for($j=$remeber_cell; $j<12; $j++)
				{
					 $pdf->Cell($arr_w[5],$arr_h[1],'','1',0,'C');
				}		
//end subjects
//fee stratrs here
				$free_array = explode("|",$value['fee']);
			
				$other_sum=0;
				$other_flag=0;	
				for($m=0; $m<count($free_array); $m++)
				{		
					if(($m) <= 3)
					{
						$pdf->Cell($arr_w[8],$arr_h[1],$free_array[$m],'1',0,'C');	
						$other_flag=0;	
						$other_sum=0;
					}	
					else
					{
						$other_sum += $free_array[$m];			
						$other_flag=1;
					}				
				}
			
				if($other_flag)
					$pdf->Cell($arr_w[8],$arr_h[1],$other_sum,'1',0,'C');
				
				$pdf->Cell($arr_w[8],$arr_h[1],$value['total_fee'],'1',0,'C');				
				
				$pdf->Cell($arr_w[8],$arr_h[1],$rec_date_array[$value['FREGNO']][$value['FEXAMNO']]['Date'],'1',0,'C');
				$pdf->Cell($arr_w[6],$arr_h[1],$rec_date_array[$value['FREGNO']][$value['FEXAMNO']]['Rec'] ,'1',1,'C');
				$page_temp_flag=0;
			} */
			/*$pdf->Ln(20);
			$pdf->Cell(20,4,"Date :",'0',0,'C');
			$pdf->Cell(250,4,"Signature of the principal(With seal)",'0',1,'R');
			PrintFooter($pdf);
			
			$pdf->WhichReport = 'ReportCandidateListSummary';
			$pdf->AddPage();
			$pdf->SetMargins(5,12);	
			
			$sql = "select fdegree, fcollcode, FCATEGORY, fcount, fmale, ffemale,
			group_concat(heads order by heads) as headfee  from (select concat(FFEECODE, '->',sum(famount)) as heads, 
			candsum.fdegree,candsum.fcollcode,FCATEGORY,count(distinct student.fregno) as fcount,
			sum(if(student.fsex='M',1,0)) as fmale,
			sum(if(student.fsex='F',1,0)) as ffemale
			from  candsum, studfee,student
			where student.fdegree=candsum.fdegree
			and student.fregno=candsum.fregno 
			and studfee.fdegree=candsum.fdegree
			and studfee.fregno=candsum.fregno and candsum.fdegree ='{$degree_code}' and candsum.fcollcode='{$college_code}'
			and candsum.fregno>='{$RegNo_start}' and candsum.fregno<='{$RegNo_end}' 
			and studfee.fcollcode=candsum.fcollcode
			group by candsum.fdegree,candsum.fcollcode,FCATEGORY, FFEECODE) x
			group by fdegree, fcollcode, FCATEGORY, fcount";
			//var_dump($sql);
			$rst = $aobj_context->mobj_db->GetAll($sql);
			//matching the feehead codes
			$sql = "SELECT DISTINCT fheadcode FROM admfeestr WHERE fdegree='{$degree_code}' AND fcombcode='Exam' ORDER BY fexamno,fcatcode,fheadcode";
			$feeheads = $aobj_context->mobj_db->GetAll($sql);
			$slno=1;
			$totmale = 0;
			$totfemale = 0;
			$totstud = 0;
			$totamount = 0;
			
			$pdf->SetFont('Times','',10);	
			foreach($rst as $key=>$val)
			{
				$Toatlfee=0;
				$pdf->Cell(40,6,'','0',0,'C');
				$pdf->Cell(12,6,$slno,'1',0,'C');
				$pdf->Cell(20,6,$val['FCATEGORY'],'1',0,'L');
				$pdf->Cell(20,6,$val['fcount'],'1',0,'R');
				$totmale += $val['fmale'];
				$totfemale += $val['ffemale'];
				$totstud += $val['fcount'];
				$headfeearr = explode(',',$val['headfee']);
				//var_dump($headfeearr);
				$fappfee=array();
				$rowtotfee = 0;
				$i=0;
				foreach($feeheads as $feekey=>$feeval){
					$feeheadcode[$i] = $feeval['fheadcode'];
					$i++;
				}
				//$i=0;
				foreach($headfeearr as $hdkey=>$hdval)
				{
					
					$feearr = explode('->',$hdval);
					$rowtotfee += $feearr[1];
					$i=0;
					foreach($feeheads as $feekey=>$feeval){
						$feeheadcode[$i] = $feeval['fheadcode'];
						if($feearr[0] == $feeheadcode[$i])
						{
							$fappfee[$i] += $feearr[1];
							//$totappfee[$feeval['fheadcode']] += $feearr[1];
						}
						$i++;
					}
				}
				for($i=0;$i<count($fappfee);$i++){
					$pdf->Cell(20,6,$fappfee[$i],'1',0,'R');
					$totfees[$i]+=$fappfee[$i];
				}
				$pdf->Cell(20,6,$rowtotfee,'1',1,'R');
				$totregfee += 0;
				$totothfee += 0;
				$totfine += 0;
				$totamount +=$rowtotfee;
				++$slno;
			}
				
			$pdf->SetFont('Times','B',10);	
			$pdf->Cell(40,6,'','0',0,'C');
			$pdf->Cell(32,6,'Total','1',0,'C');
			$pdf->Cell(20,6,$totstud,'1',0,'R');
			for($i=0;$i<count($totfees);$i++)
				$pdf->Cell(20,6,$totfees[$i],'1',0,'R');
			$pdf->Cell(20,6,$totamount,'1',1,'R');*/
			$pdf->Output("Candidate List.pdf","D");		
}

function generatecollegeWiseStudentList($aobj_context)
{	
	session_start();
	$college_code = $_SESSION['collcode']; 
    $aobj_context->mobj_db->SetFetchMode(ADODB_FETCH_ASSOC);  
    
	//echo $college_code; 
	$degree_code = $aobj_context->mobj_data["degree_code"]; 
	$freshexam = $aobj_context->mobj_data["freshexam"]; 
	$RegNo_start = substr("00000000".$aobj_context->mobj_data["streg"],-8); 
	$RegNo_end = substr("ZZZZZZZZ".$aobj_context->mobj_data["edreg"],-8); 
	
	$main_src_obj=(explode("/",$_SERVER["REQUEST_URI"]));
	$main_src=$main_src_obj[1];
	$pdf_writer_class=$aobj_context->main_src."/maya-pdf/fpdf.php";
	$root_pdf_file_download=$aobj_context->main_src."/Report_details/output/report_candidate_list.pdf";

	include($pdf_writer_class);
 
	$pdf= new FPDF(); //A4
	$pdf->WhichReport = 'ReportCandidateNonActList';
	
	$pdf->SetFont('Times','B',16);
	$pdf->SetMargins(5,12);		
	$pdf->AliasNbPages();
	//$pdf->SetAutoPageBreak('on' , 10);
	//header	
	$page_header_university = "select FUNIVNAME,FTOWN, date_format(now(),'%d/%m/%Y') as date from control";
	$lobj_page_header_university = $aobj_context->mobj_db->GetRow($page_header_university);
	
	$page_header_college ="select concat('[',FCOLLCODE,']  ',FCOLLNAME,', ',FTOWN) as college_name
							from college where FCOLLCODE='{$college_code}'";
	$lobj_page_header_college = $aobj_context->mobj_db->GetRow($page_header_college); 

	$page_header_degree = "select date_add(date_add(now(),INTERVAL 13 hour),interval 30 minute) as now_date,concat('[',FDEGREE,'] - ', FDESCPN,space(2),'-',space(2),FEXAMDATE) as Degree_name, FADYEAR  
							from degree where FDEGREE = '{$degree_code}' ";
	$lobj_page_header_degree = $aobj_context->mobj_db->GetRow($page_header_degree);
	 

	$page_header_REGROLL = "select FREGROLL from control";
		$lobj_page_header_REGROLL = $aobj_context->mobj_db->GetRow($page_header_REGROLL);

	$pdf->aobj_context =$aobj_context ;
	$pdf->date_time = 'ReportCandidateList';
	$pdf->WhichReport = 'ReportCandidateList';
	$pdf->FUNIVNAME = $lobj_page_header_university['FUNIVNAME'].', '.$lobj_page_header_university['FTOWN'];
	$pdf->FTOWN = '';
	$pdf->date_1 = $lobj_page_header_university['date'];
	$pdf->college_name = $lobj_page_header_college['college_name'];
	$pdf->Degree_name = $lobj_page_header_degree['Degree_name'];
	$pdf->date_time = $lobj_page_header_degree['now_date'];
	$pdf->REGROLL=$lobj_page_header_REGROLL['FREGROLL'];
	$pdf->RFROM= $RegNo_start;
	$pdf->RTO= $RegNo_end;
	$pdf->head_cnt=0;;
//end header		

	$pdf->AddPage();	PrintFooter($pdf);		
	$pdf->SetFont('Times','',9);	
// body
	
		
		if($freshexam == 'T')
		{	
			$fresh = "and cs.FFRESHEXAM = cd.FEXAMNO";
			
		}
		else
		{	
			$fresh = '';
		}
			
	
	
		$get_candidateNack_data= "select d.fdescpn, d.FEXAMNAME, s.FSLNO,LEFT(s.FNAME,50) as FNAME ,
		LEFT(s.FFATNAME,50) as FFATNAME,LEFT(s.FMOTNAME,50) as FMOTNAME,
		if(date_format(s.FDOB,'%d/%m/%y')='00/00/00','',date_format(s.FDOB,'%d/%m/%y')) as FDOB,
		s.FSEX,	s.FCASTE,cd.FDEGREE, cd.FEXAMNO,cd.FCOLLCODE, cd.FREGNO, ifnull(s.fstudid,'') as fstudid,
		GROUP_CONCAT(distinct case when ifnull(cd.FPASSMTH,'')='' then concat(' ',sub.fsubshort,' ') else concat('[',sub.fsubshort,']') end order by cd.FSUBCODE separator '') as subjects 
		from canddet cd inner join student s on s.FREGNO=cd.FREGNO 
		and s.FDEGREE=cd.FDEGREE and s.FCOLLCODE=cd.FCOLLCODE
		INNER JOIN subject sub on sub.FDEGREE=cd.FDEGREE and sub.FEXAMNO=cd.FEXAMNO and sub.FSUBCODE=cd.FSUBCODE
		inner join candsum cs on 
		cs.FDEGREE=cd.FDEGREE  and cs.FCOLLCODE=cd.FCOLLCODE and 
		cs.FREGNO=cd.FREGNO {$fresh}
		inner join degree d on cd.fdegree = d.fdegree and cd.fexamno = d.fexamno
		inner join collexam c on s.fcollcode = c.fcollcode and s.fdegree = c.fdegree and c.fexamno = cd.fexamno
			#and ifnull(c.fcwsl,'') = 'T'
		WHERE cd.fregno>='{$RegNo_start}' and cd.fregno<='{$RegNo_end}' 
		and cd.fdegree='{$degree_code}' and  cd.FCOLLCODE='{$college_code}' #and s.fcollcode not in('1416','1411','4014')
		GROUP BY cd.FDEGREE,cd.FEXAMNO, 
		cd.FCOLLCODE,cd.FREGNO ORDER BY cd.FREGNO,cd.FEXAMNO";

		$lobj_get_candidateNack_data = $aobj_context->mobj_db->GetAll($get_candidateNack_data); 

		if($freshexam == 'T')
		{	
			$get_candidateNack_data= "select d.fdescpn, d.FEXAMNAME, s.FSLNO,LEFT(s.FNAME,50) as FNAME ,
			 LEFT(s.FFATNAME,50) as FFATNAME,
			LEFT(s.FMOTNAME,50) as FMOTNAME, 
			IF(DATE_FORMAT(s.FDOB,'%d/%m/%y')='00/00/00','',DATE_FORMAT(s.FDOB,'%d/%m/%y')) as FDOB, 
			s.FSEX,	s.FCASTE,cd.FDEGREE, cd.FEXAMNO,cd.FCOLLCODE, s.FAREGNO as FREGNO, ifnull(s.fstudid,'') as fstudid,
			GROUP_CONCAT(distinct CONCAT(' ',sub.fsubshort,' ')  order by cd.FSUBCODE separator '') as subjects 
			from options cd inner join studadm s on 
			s.FDEGREE = cd.FDEGREE and s.FCOLLCODE = cd.FCOLLCODE 
			and s.fslno = cd.fslno and s.fappno = cd.fappno
			INNER JOIN subject sub on sub.FDEGREE=cd.FDEGREE 
			and sub.FEXAMNO=cd.FEXAMNO and sub.FSUBCODE=cd.FSUBCODE inner join degree d on cd.fdegree = d.fdegree 
			and cd.fexamno = d.fexamno 
			inner join collexam c on s.fcollcode = c.fcollcode and s.fdegree = c.fdegree and c.fexamno = 'A'
			and ifnull(c.fcwsl,'') = 'T'
			WHERE s.faregno>='{$RegNo_start}' and s.faregno<='{$RegNo_end}' 
			and cd.fdegree='{$degree_code}' 
			and cd.FCOLLCODE='{$college_code}' 
			and s.fapprstatus = 'APPROVED' 
			GROUP BY cd.FDEGREE,cd.FEXAMNO, cd.FCOLLCODE,s.FAREGNO 
			ORDER BY s.FAREGNO,cd.FEXAMNO";
			

			$lobj_get_candidateNack_data = $aobj_context->mobj_db->GetAll($get_candidateNack_data); 
		}
		
		//$header=array('Sl No.','Reg No.' ,'Name','Subjects');
		
		//$pdf->SetFillColor(255);
		//$pdf->SetLineWidth(.2);
		//$pdf->SetFont('','B',10);

		$w=array(10,45,145);
		//for($i=0;$i<count($header);$i++)
		//	$pdf->Cell($w[$i],10,$header[$i],1,0,'C',true);
		$pdf->Ln();
		//$pdf->SetFillColor(224,235,255);
		//$pdf->SetTextColor(0);
		
	
		$adm_ln_counter=0;
		$sln = 0000;
		$counter = 0;
		$count = count($lobj_get_candidateNack_data);
		foreach($lobj_get_candidateNack_data as $key => $value)
		{		

			$y  = $pdf->GetY();
			if($y>= 260)
			{

				$pdf->Ln(3);
				
				$pdf->AddPage();	
				PrintFooter($pdf);	
				$adm_ln_counter=0;
				$pdf->Ln(10);
				
				//$pdf->SetLineWidth(.4);
				$pdf->SetFont('','',10);
				//for($i=0;$i<count($header);$i++)
				//$pdf->Cell($w[$i],10,$header[$i],1,0,'C',true);
				$pdf->Ln();
			}
				
				$ltmpregno="";
				$ltmpname="";
				$ltmpslno="";
				$ltmpfathname = "";
				$ltmpmothname = "";
				if($lregno!=$value['FREGNO'])
				{
					$sln++;
					$lregno = $value['FREGNO'];
					$y  = $pdf->GetY();
					if($y>= 250)
					{
						$pdf->Ln(3);
						
						$pdf->AddPage();	
						PrintFooter($pdf);	
						$adm_ln_counter=0;
						$pdf->Ln(10);
						
						//$pdf->SetLineWidth(.4);
						$pdf->SetFont('','',10);
						//for($i=0;$i<count($header);$i++)
						//$pdf->Cell($w[$i],10,$header[$i],1,0,'C',true);
						$pdf->Ln();
					}

					$pdf->SetFont('Courier','',11);
					$pdf->Cell($w[0],6,$sln,'LRT',0,'C');
					$pdf->Cell($w[1],6,'Reg. No. :'.$value['FREGNO'],'LRT','','L');
					$pdf->Cell($w[2],6,'Student Name   : '.$value['FNAME'],'RT','1','L');
					$pdf->Cell($w[0],6,'','LR',0,'C');
					$pdf->Cell($w[1],6,'Stud. Id.:'.$value['fstudid'],'LR','','L');
					$pdf->Cell($w[2],6,"Father's Name  : ".$value['FFATNAME'],'R','1','L');
					$pdf->Cell($w[0],6,'','LR',0,'C');
					$pdf->Cell($w[1],6,'','LRB','','C');
					$pdf->Cell($w[2],6,"Mother's Name  : ".$value['FMOTNAME'],'RB','1','L');
				}
				
				$pdf->SetFont('Courier','',11);
				$pdf->Cell($w[0],6,'','LRB',0,'C');
				$pdf->Cell($w[1],6,$value['FEXAMNAME'],1,'','L');	
				$pdf->Cell($w[2],6,$value['subjects'],'1',1,'L');
				$adm_ln_counter++;
				

			//$fill=!$fill;
		}			
		
		PrintFooter($pdf);
		$pdf->Output("Student List.pdf","D");
}

function PrintFooter($pdf)
{
		$new_x=$pdf->GetX();
		$new_y=$pdf->GetY();
		$ip=$_SERVER["REMOTE_ADDR"];
		$pdf->SetY(-17);
		$pdf->SetFont('Times','B',8);

		$pdf->Cell(140,6,'Printed   : IP Address : '.$ip.", Date : ".$pdf->date_time,'0',0,'L');
		$pdf->SetXY($new_x,$new_y); 
}	
?>