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


Current Path : /var/www/oasis/Report_details_old/
Upload File :
Current File : /var/www/oasis/Report_details_old/hallticketcomm.php

<?php

/* function checkdateforhalticket($aobj_context)
{
	$aobj_context->mobj_db->SetFetchMode(ADODB_FETCH_ASSOC);
	@session_start();
	
	$degree = $aobj_context->mobj_data["degree"];
	
	$collegeCode =$_SESSION['collcode'];
	
	$query = "select * from collexam where fcollcode = '{$collegeCode}' 
					and fdegree = '{$degree}' and DATE_FORMAT(NOW(),'%Y-%m-%d') 
					BETWEEN DATE_FORMAT(FHTFROM,'%Y-%m-%d') 
					AND DATE_FORMAT(FHTTO,'%Y-%m-%d')";
	
	$result = $aobj_context->mobj_db->GetAll($query);
		
	if ($result ==  false)
	{	
		$arr = "Last Date is Over";
		echo $aobj_context->mobj_output->ToJSONEnvelope($arr, -1,"success");	
		return;
	}
}
 */
class AdmissionTicket
{
	
	public $aobj_context;
	public $degree_code;
	public $registor_no_starts;
	public $registor_no_ends;
	public $print_per_page;
	public $sub_appearing_count;
	public $std_adm_count;
	public $sub_arr;
	public $std_arr;
// university
	public $std_FUNIVNAME ;
	public $std_FUNIVCODE ;
	public $std_FTOWN;	
// college info	
	public $college_code;
	public $college_name;
	public $college_address;
// student info
	public $STD_RegNo;
	public $STD_CollCode;
	public $STD_Course;
	public $STD_Name;
	public $STD_FAT;
	public $STD_MAT;
	public $STD_DOB;	
	public $CollDetails;	
	public $ADMNUM;	
	public $bth_flag;
	public $FUNIVCODE;	
	
	
	function __construct($aobj_context)
    {
		$this->aobj_context=$aobj_context;
		$aobj_context->mobj_db->SetFetchMode(ADODB_FETCH_ASSOC);
		session_start();
		$this->college_code = $_SESSION['collcode']; 
		$bth_flag=0;
	}
	
	function getUniversityDetails()
	{
		$page_header_university = "select FUNIVNAME,FTOWN,FHTTEXT,FUNIVADD1  from control";		
		$lobj_page_header_university = $this->aobj_context->mobj_db->GetRow($page_header_university);		
		$this->std_FUNIVNAME = $lobj_page_header_university[FUNIVNAME];
		$this->std_FTOWN = $lobj_page_header_university[FTOWN];
		$this->std_FHTTEXT = $lobj_page_header_university[FHTTEXT];
		$this->std_FUNIVADD1 = $lobj_page_header_university[FUNIVADD1];
		//var_dump($this->std_FHTTEXT);
	}	
	
	function getCollegeDetails()
	{
		$page_header_college = "select c.FCOLLCODE, c.FCOLLNAME, c.FEXAMCNTR,
		ec.FCOLLNAME AS exam_center_name,
		CONCAT(c.FCOLLADD1,SPACE(2), c.FTOWN,'\n',c.FEXAMCNTR) AS COLLEGE_ADRS 
		FROM college c LEFT JOIN college ec ON ec.FCOLLCODE=c.FEXAMCNTR
		WHERE c.FCOLLCODE='{$this->college_code}'";
		
		$lobj_page_header_college = $this->aobj_context->mobj_db->GetRow($page_header_college);
		$this->college_code = $lobj_page_header_college['FCOLLCODE'];
		$this->FEXAMCNTR = $lobj_page_header_college['FEXAMCNTR'];
		$this->exam_center_name = $lobj_page_header_college['exam_center_name'];
		$this->college_name = $lobj_page_header_college['FCOLLNAME'];
		$this->college_address = $lobj_page_header_college['COLLEGE_ADRS'];

	}
	
	function getStudentDetails()
	{
		session_start();
		$FUNIVCODE = $_SESSION['FUNIVCODE'];
		if($FUNIVCODE == '008')
		{
			$fyear = "1=1";
			
			
		}else
		{
			$fyear = "D.fmeyear = cs.fyear";
		}
		
		$get_student_data = "SELECT S.FDEGREE,S.FREGNO,S.FCOLLCODE,ifnull(S.FPHOTOPATH,'') as photo_path,
		concat(col.FCOLLNAME,',',space(2), col.FTOWN) as CollDetails  ,
		concat(ec.FCOLLNAME,', ',ec.ftown) AS exam_center_name,col.FCOLLNAME as FCOLLNAME,
		cs.FCNTRCODE AS FEXAMCNTR,col.FCOLLCODE,CONCAT(D.FDESCPN) AS COURSE, D.FEXAMDATE,
		S.FNAME,S.FFATNAME,S.FMOTNAME,S.fstudid,DATE_FORMAT(S.FDOB,'%d/%m/%Y') AS FDOB
		FROM student S INNER JOIN degree D ON S.FDEGREE=D.FDEGREE 
		INNER JOIN college col ON S.FCOLLCODE=col.FCOLLCODE
		INNER join candsum cs on S.fdegree = cs.fdegree and S.fregno = cs.fregno
		LEFT JOIN college ec ON ec.FCOLLCODE=cs.FCNTRCODE
		INNER join colldeg on colldeg.fdegree = cs.fdegree and colldeg.fcollcode = cs.fcollcode
		WHERE S.FREGNO>='{$this->registor_no_starts}' AND S.FREGNO<='{$this->registor_no_ends}' 
		AND S.FDEGREE='{$this->degree_code}' and cs.FCOLLCODE='{$this->college_code}'
		and if('{$FUNIVCODE}' = '008','1=1',cs.frecptdate is not null )and ifnull(colldeg.fhtstop,'F') <> 'T'
		and ifnull(S.fexamappblk,'') <> 'T' and ifnull(S.fmp,'') <> 'T' 
		and {$fyear} and left(D.fmeexamtyp,1) = left(cs.fexamtype,1)
		order by S.FREGNO";	
		//var_dump($get_student_data);
		$lobj_get_student_data = $this->aobj_context->mobj_db->GetAll($get_student_data);
		$this->std_adm_count = count($lobj_get_student_data);

		foreach($lobj_get_student_data as  $rek=>$rev)
		{		
			$this->std_arr[$rev['FREGNO']]['FREGNO'] = $rev['FREGNO'];
			$this->std_arr[$rev['FREGNO']]['FCOLLCODE'] = $rev['FCOLLCODE'];
			$this->std_arr[$rev['FREGNO']]['FCOLLCODE'] = $rev['FCOLLCODE'];
			$this->std_arr[$rev['FREGNO']]['COURSE'] = $rev['COURSE'];
			$this->std_arr[$rev['FREGNO']]['FNAME'] = $rev['FNAME'];
			$this->std_arr[$rev['FREGNO']]['FFATNAME'] = $rev['FFATNAME'];
			$this->std_arr[$rev['FREGNO']]['FMOTNAME'] = $rev['FMOTNAME'];
			$this->std_arr[$rev['FREGNO']]['FDOB'] = $rev['FDOB'];
			$this->std_arr[$rev['FREGNO']]['EXAMDATE'] = $rev['FEXAMDATE'];
			$this->std_arr[$rev['FREGNO']]['FCOLLNAME'] = $rev['FCOLLNAME'];
			$this->std_arr[$rev['FREGNO']]['CollDetails'] = $rev['CollDetails'];
			$this->std_arr[$rev['FREGNO']]['photo_path'] = $rev['photo_path'];
			$this->std_arr[$rev['FREGNO']]['fstudid'] = $rev['fstudid'];
			$this->std_arr[$rev['FREGNO']]['FEXAMCNTR'] = $rev['FEXAMCNTR'];
			$this->std_arr[$rev['FREGNO']]['exam_center_name'] = $rev['exam_center_name'];
		} 	 
	}
	
	function getSubjectAppearing() //date_format(FDOE,'%d/%m/%Y')
	{
		session_start();
		$FUNIVCODE = $_SESSION['FUNIVCODE'];
		
		if($FUNIVCODE == '008')
		{
			$present = "1=1";
			
			
		}else
		{
			$present = "c.fpresent = 'P'";
		}
		
		$get_subject_appearing = "SELECT c.FDEGREE, cs.FREGNO AS FREGNO , 
		GROUP_CONCAT(d.FEXAMNAME ORDER BY d.FEXAMNO) EXAMNAME,
		GROUP_CONCAT(c.FEXAMNO ORDER BY c.FSUBCODE) FEXAMNO, c.FREGNO,
		if('{$FUNIVCODE}' = '029',GROUP_CONCAT(s.FCSUBCODE ,'->',s.FSUBNAME,' ',s.FSSUBNAME,'->', s.FSHORTNAME,'->',concat(if(date_format(FDOE,'%d/%m/%Y')!='00/00/0000',date_format(FDOE,'%d/%m/%Y'),''),' ',ifnull(FSESSION,''),'->',FQPCODE)  ORDER BY s.FTHEORY desc,s.FCSUBCODE  SEPARATOR '~'),
		GROUP_CONCAT(s.FCSUBCODE ,'->',s.FSUBNAME,' ',s.FSSUBNAME,'->', 
		s.FSHORTNAME,'->',concat(if(date_format(FDOE,'%d/%m/%Y')!='00/00/0000',
		date_format(FDOE,'%d/%m/%Y'),''),' - ',ifnull(rs.fdescpn,''),'->',if('{$FUNIVCODE}' = '018',FSUBSHORT,FQPCODE)) 
		ORDER BY s.FTHEORY desc, s.FDOE, s.FSESSION  SEPARATOR '~')) AS SUBCODE , 
		GROUP_CONCAT(ifnull(s.FSUBNAME,''),' ',ifnull(s.FSSUBNAME,''),
		' [',ifnull(FSUBSHORT,''),']' ORDER BY s.FCSUBCODE) AS SUBDECPN,
		ifnull(FRECPTDATE,'') as receipt_date FROM canddet c INNER JOIN subject s ON
		c.FDEGREE=s.FDEGREE AND c.FEXAMNO=s.FEXAMNO AND c.FSUBCODE=s.FSUBCODE AND s.FINTASS!='T' 
		AND INSTR(ifnull(c.fthpr,''), s.ftheory) <= 0
		left outer join reason rs on s.fsession = rs.freasoncd
		inner join degree d on c.FDEGREE= d.FDEGREE AND c.FEXAMNO=d.FEXAMNO
		and d.FADYEAR=c.FYEAR
		and left(d.FADEXAMTYP,1)=left(c.FEXAMTYPE,1)
		inner join candsum cs on 
		cs.FDEGREE=c.FDEGREE AND cs.FREGNO=c.FREGNO AND 
		cs.FCOLLCODE=c.FCOLLCODE
		AND c.FYEAR=cs.FYEAR
		and left(c.FEXAMTYPE,1)=left(cs.FEXAMTYPE,1)
		WHERE c.FDEGREE='{$this->degree_code}' 
		AND c.FCOLLCODE='{$this->college_code}' 
		AND ifnull(c.FPASSMTH,'') = '' AND {$present}
		and c.FREGNO >= '{$this->registor_no_starts}' 
		AND c.FREGNO <='{$this->registor_no_ends}' 
		and if('{$FUNIVCODE}' = '008','1=1',cs.frecptdate is not null ) is not null
		GROUP BY c.FREGNO, c.FDEGREE ";		
		//var_dump($get_subject_appearing);
		$this->aobj_context->mobj_db->execute("SET @@session.group_concat_max_len=100000");	
		$this->lobj_get_subject_appearing = $this->aobj_context->mobj_db->GetAll($get_subject_appearing);
		$this->receipt_date_arr=array();
	
		foreach($this->lobj_get_subject_appearing as $suk=>$suv)
		{		
			$this->std_arr[$suv[FREGNO]]['SUBCODE']=$suv['SUBCODE'];
			if(!empty($suv['receipt_date']))
			$this->receipt_date_arr[$suv[FREGNO]]=$suv['receipt_date'];		
		}  
	}	
}

function generateAdmissionTicket($aobj_context)
{
		session_start();
		$FUNIVCODE = $_SESSION['FUNIVCODE'];
		
	
		$class_obj=new AdmissionTicket($aobj_context);		
		ini_set("memory_limit",-1);
		ini_set('max_execution_time',3300);
		$class_obj->degree_code		= $aobj_context->mobj_data["degree_code"];
		
		
		if(preg_match('[^BTH]', $class_obj->degree_code))
		$class_obj->bth_flag=1;
		
		$class_obj->registor_no_starts= $aobj_context->mobj_data["reg_starts"];
		$class_obj->registor_no_ends= $aobj_context->mobj_data["reg_ends"]; 
		  
		
		/* $main_src_obj=(explode("/",$_SERVER["REQUEST_URI"]));
		$main_src=$main_src_obj[1];
		
		$pdf_reader_class=$aobj_context->main_src."/maya-pdf/fpdi/FPDI_Protection.php";	
		$pdf_psw_function=$aobj_context->main_src."/maya-pdf/TarkaPDFEncryption.php";
		$pdf_writer_class=$aobj_context->main_src."/maya-pdf/fpdf.php";
		$root_pdf_file_download=$aobj_context->main_src."/Report_details/output/report_adm_ticket.pdf";
 */
 
		$main_src=substr($_SERVER['SCRIPT_FILENAME'],0,strlen($_SERVER['SCRIPT_FILENAME'])-7);
		$pdf_writer_class =$main_src."/tcpdf/tcpdf.php";
		//$pdf_writer_class =$main_src."/tarka_pdf/fpdf.php";
		include_once("stringspliter.php");
		require_once($pdf_writer_class);
		
		//include($pdf_writer_class);		
		//$pdf= new FPDF();
		$pdf= new TCPDF();;
		$pdf->SetMargins(10,3,15);	
		$pdf->aobj_context =$aobj_context ;
		$pdf->WhichReport = 'AdmissionTicket';
		$pdf->SetFillColor(248, 248 ,255);		
		$pdf->SetFont('Times','',10);
		$pdf->AddPage();
		$pdf->SetMargins(10,3,15);
		$pdf->Rect(2,05,200,280);
		$adm_details=$class_obj->getUniversityDetails();
		$adm_details=$class_obj->getCollegeDetails();
		$adm_details=$class_obj->getStudentDetails();
		$adm_details=$class_obj->getSubjectAppearing();
		
	 $page_cnt=1;
	//var_dump($FUNIVCODE);
	if($FUNIVCODE == '032' || $FUNIVCODE == '003' || $FUNIVCODE == '016' ||  $FUNIVCODE == '003U' ||  $FUNIVCODE == '005' ||  $FUNIVCODE == '030' ||  $FUNIVCODE == '008' || $FUNIVCODE == '031' || $FUNIVCODE == '008' ||  $FUNIVCODE == '003D')
	{
		foreach($class_obj->std_arr as $reg_k=>$reg_v)
		{	
				if($FUNIVCODE != '008')
				{
					if(!array_key_exists($reg_v['FREGNO'],$class_obj->receipt_date_arr))
					continue;
				}
				$full_photo_path="";
				$full_photo_path=trim($aobj_context->main_src."/".$reg_v[photo_path]);	
				
					
				if($FUNIVCODE != '030' && $FUNIVCODE != '031')
				{	
					$pdf->Ln(2);
					$pdf->SetLineWidth(0.01);
					$pdf->SetFont('Times','B',16);	
					$img_path=$aobj_context->main_src."/img/report_uni_logo.jpg";
					if(file_exists($img_path)) 
						$pdf->Image($img_path,15,12,22);
					$pdf->Ln(1);
					if($FUNIVCODE == '003D')
					{
						$pdf->Cell(0,4,'KUVEMPU UNIVERSITY',0,1,'C'); 
						$pdf->Ln(2);
						$pdf->SetFont('Times','B',10);
						$pdf->Cell(0,4,'Distance Education' ,'0',1,'C');
						$pdf->Ln(1);
					}else
						$pdf->Cell(0,4,$class_obj->std_FUNIVNAME,0,1,'C');
					$pdf->SetFont('Times','B',8);
					if( $FUNIVCODE == '005')
						$pdf->Cell(0,4,$class_obj->std_FUNIVADD1,0,1,'C');
				}
				if($FUNIVCODE == '030' || $FUNIVCODE == '031')
				{
					
					$pdf->SetLineWidth(0.01);
					//$pdf->Ln(5);
					$img_path=$aobj_context->main_src."/img/report_uni_logo.jpg";
					if($FUNIVCODE == '030')
					{
						if(file_exists($img_path)) 
						$pdf->Image($img_path,70,3,52);
					}
					else
					{
						if(file_exists($img_path)) 
						$pdf->Image($img_path,65,4,75);
					}
					$pdf->SetFont('Times','',12);
					$pdf->Ln(11);
					$pdf->SetFont('Times','',12);
					if($FUNIVCODE == '030')
					$pdf->Cell(0,4,'Rukmini Knowledge Park, Kattigenahalli, Yelahanka, Bengaluru-560 064',0,1,'C');
					$pdf->SetFont('Times','',8);
					$pdf->Cell(0,4,'' ,'0',1,'C'); 
					$pdf->SetFont('Times','B',14);
					$pdf->Ln(1);
					$pdf->Cell(0,5,'ADMISSION TICKET ' ,'0',1,'C'); 
					$pdf->SetFont('Times','B',10);
				}
				else
				{
					if($FUNIVCODE == '003' || $FUNIVCODE == '003U' || $FUNIVCODE == '003D')
						$pdf->Cell(0,5,'ADMISSION TICKET ' ,'0',1,'C');
					else
						$pdf->Cell(0,5,'HALL TICKET ' ,'0',1,'C'); 
				}
				$pdf->SetFont('Times','',8);
				$pdf->Cell(0,5,$reg_v['EXAMDATE'].' EXAMINATION ' ,'0',1,'C'); 
				$pdf->SetFont('Times','',10);
				$pdf->Ln(4);
				
				 
				if(file_exists($full_photo_path) && !empty($reg_v[photo_path]))
				{
					$pdf->Image($full_photo_path,165,$pdf->GetY(),27,27);				
				}
				else
				{
					$pdf->Image($aobj_context->main_src."/img/nophoto.jpg",165,$pdf->GetY(),27,27);				
				}
				
				$pdf->SetFont('Times','B',9); 
				$pdf->Cell(30,6,' Course',0,0,'L');	$pdf->Cell(3,6,' :  ',0,0,'L');	
				$pdf->SetFont('Times','',9);				
				$pdf->Cell(120,6,''.$reg_v['COURSE'],0,1,'L'); 
				
				$pdf->SetFont('Times','B',9);
				if($FUNIVCODE == '031')
				{
					$pdf->Cell(30,6,' Department',0,0,'L'); 
					$pdf->Cell(3,6,' :  ',0,0,'L');
				}
				else
				{
					$pdf->Cell(30,6,' College',0,0,'L');
					$pdf->Cell(3,6,' :  ',0,0,'L');
				}
				$pdf->SetFont('Times','',9); 
				$pdf->MultiCell(96,6,''. $reg_v['FCOLLCODE']." - ".$reg_v['CollDetails'],0,"L");
				$pdf->SetFont('Times','B',9); 
				if($FUNIVCODE == '030' || $FUNIVCODE == '003U' || $FUNIVCODE == '003D')
				{
					$pdf->Cell(30,6,' Exam Center',0,0,'L'); $pdf->Cell(3,6,' :  ',0,0,'L');
					$pdf->SetFont('Times','',9); 
					if($FUNIVCODE == '003U' || $FUNIVCODE == '003D')
						$pdf->Cell(120,6,'As per the notification',0,1,'L');
					else
						$pdf->Cell(120,6,''. $reg_v['FEXAMCNTR']." - ".$reg_v['exam_center_name'],0,1,'L'); 
				}
				if($FUNIVCODE == '003')
				{
					$pdf->Cell(30,6,'Cluster Exam Center',0,0,'L'); $pdf->Cell(3,6,' :  ',0,0,'L');
					$pdf->SetFont('Times','',9); 
					$pdf->Cell(120,6,''. $reg_v['FEXAMCNTR']." - ".$reg_v['exam_center_name'],0,1,'L'); 
				}
				
				$pdf->SetFont('Times','B',9); 
				if($FUNIVCODE == '030')
				{	
					$pdf->Cell(30,6,' SRN',0,0,'L'); 
					$pdf->Cell(3,6,' :  ',0,0,'L');
				}
				else
				{	
					$pdf->Cell(30,6,' Reg. No.',0,0,'L'); 
					$pdf->Cell(3,6,' :  ',0,0,'L');
				}
				//$pdf->Cell(25,6,' Reg. No.',0,0,'L'); $pdf->Cell(3,6,' :  ',0,0,'L');
				$pdf->SetFont('Times','B',9);
				if($FUNIVCODE == '030' || $FUNIVCODE == '031')
					$pdf->Cell(120,6,''.$reg_v['FREGNO'],0,1,'L');				
				else
					$pdf->Cell(120,6,''.$reg_v['FREGNO']. '      Student Id.: '.$reg_v['fstudid'],0,1,'L'); 
				$pdf->SetFont('Times','B',9); 
				$pdf->Cell(30,6," Student Name",0,0,'L'); $pdf->Cell(3,6,' :  ',0,0,'L');
				$pdf->SetFont('Times','',9); 
				$pdf->Cell(120,6,''.$reg_v['FNAME'],0,1,'L'); 
				
				$pdf->Ln(1);
				$pdf->SetFont('Times','B',10);
				$pdf->Cell(0,5,'Subject Appearing',0,1,'C');
				$pdf->SetFont('Times','B',8);
				if($FUNIVCODE == '030' || $FUNIVCODE == '031')
				{
					$pdf->Cell(8,6,"Sl.","LRT",0,"C");
					$pdf->Cell(15,6,"Sub","LRT",0,"C");
					$pdf->Cell(80,6,"Subject","LRT",0,"C");
					if($FUNIVCODE == '030')
						$pdf->Cell(15,6,"Course","LRT",0,"C");
					$pdf->Cell(16,6,"Date","LRT",0,"C");
					$pdf->Cell(29,6,"Time","LRT",0,"C");
					$pdf->Cell(35,6,"Inv. Sign","LRT",1,"C");				
					$pdf->Cell(8,6,"No.","LRB",0,"C");
					$pdf->Cell(15,6,"Code","LRB",0,"C");
					$pdf->Cell(80,6,"","LRB",0,"C");
					if($FUNIVCODE == '030')
					$pdf->Cell(15,6,"","LRB",0,"C");
					$pdf->Cell(16,6,"","LRB",0,"C");
					$pdf->Cell(29,6,"","LRB",0,"C");
					$pdf->Cell(35,6,"","LRB",1,"C");
					
				}else
				{
					$pdf->Cell(7,4,"Sl. ","LTR",0,"C");
					$pdf->Cell(10,4,"Sub.","LTR",0,"C");
					$pdf->Cell(70,4,"Subject Title","LTR",0,"C");
					if($FUNIVCODE == '005')
						$pdf->Cell(45,4,"Date and Time","LTR",1,"C");
					else if($FUNIVCODE != '016' && $FUNIVCODE != '008' && $FUNIVCODE != '032' && $FUNIVCODE != '003' && $FUNIVCODE != '003U' && $FUNIVCODE != '003D')
						$pdf->Cell(45,4,"Date and Time","LTR",0,"C");
					if($FUNIVCODE != '005')
					{
						$pdf->Cell(14,4,"QP","LTR",0,"C");
						if($FUNIVCODE == '016' || $FUNIVCODE == '008' || $FUNIVCODE == '032' || $FUNIVCODE == '003' || $FUNIVCODE == '003U' || $FUNIVCODE == '003D')
							$pdf->Cell(43,4,"Date and Time","LTR",0,"C");
						$pdf->Cell(20,4,"Answer","LTR",0,"C");
						$pdf->Cell(20,4,"Invigilator","LTR",1,"C");
					}
					$pdf->Cell(7,4,"No. ","BLR",0,"C");
					$pdf->Cell(10,4,"Code","BLR",0,"C");
					$pdf->Cell(70,4,"","BLR",0,"C");
					if($FUNIVCODE == '005')
						$pdf->Cell(45,4,"","BLR",1,"C");
					else
						$pdf->Cell(14,4,"Code","BLR",0,"C");
						$pdf->Cell(43,4,"","BLR",0,"C");
					if($FUNIVCODE != '005')
					{
						if($FUNIVCODE != '016' && $FUNIVCODE != '008' && $FUNIVCODE != '032'  && $FUNIVCODE != '003' && $FUNIVCODE != '003U' && $FUNIVCODE != '003D')
							$pdf->Cell(14,4,"Code","BLR",0,"C");
						$pdf->Cell(20,4,"Book No.","BLR",0,"C");			
						$pdf->Cell(20,4,"Signature","BLR",1,"C");
					}
					$pdf->SetFont('Times','',9);	
				}
				$header = array("Sl. No", "Sub.", "Subject Title", "QP.","Date and Time","Answer","Signature");
				// Headers and widths
		
				$w = array(7,10,80,14,45,20,20);
				
				$pdf->SetFont('Times','',8);
				// Mark start coords

				$x = $pdf->GetX();
				$y = $pdf->GetY();


				$sub_arr = $reg_v[SUBCODE];
				
				$subj_arr = explode("~",$sub_arr);
				$sl_no=1;
				foreach($subj_arr as $ek)
				{	
					if($FUNIVCODE == '005')
					{
						$explode_arr=explode("->",$ek);
						//var_dump($explode_arr); die();
						$nb =0;
						$nb=max($nb,NbLines(70,$explode_arr[1],''));
						$yH = 6*$nb;
						$pdf->Cell(7,$yH, $sl_no,"1",0,"C");
						$pdf->Cell(10,$yH, $explode_arr[0],"1",0,"C");
						
						$sub_short=$explode_arr[4];
						$x=$pdf->GetX();
						$y=$pdf->GetY();
						//Draw the border
						$pdf->Rect($x,$y,70,$yH);
						$pdf->MultiCell(70,6,$explode_arr[1],0,'L');
						$pdf->SetXY($x+70,$y);
						$pdf->Cell(45, $yH, $explode_arr[3], 'LRB', 1, 'C');		 				 
						$sl_no++;
						
					}else if($FUNIVCODE == '030' || $FUNIVCODE == '031'  )
					{
						$explode_arr=explode("->",$ek);
						$nbH =0;
						$nbH=max($nbH,NbLines(80,$explode_arr[1],''));
						$yHD = 5*$nbH;
						$pdf->Cell(8,$yHD, $sl_no,"1",0,"C");
						$pdf->Cell(15,$yHD, $explode_arr[0],"1",0,"C");
						$x=$pdf->GetX();
						$y=$pdf->GetY();
						//Draw the border
						$sub_short=$explode_arr[5];
						 $explode_date = explode("-",$explode_arr[3]);
						
						$pdf->Rect($x,$y,80,$yHD);
						$pdf->MultiCell(80,5,$explode_arr[1],0,'L');
						$pdf->SetXY($x+80,$y);
						if($FUNIVCODE == '030')
						$pdf->Cell(15,$yHD,$explode_arr[4],"1",0,"C"); 
						$pdf->Cell(16,$yHD, $explode_date[0],"1",0,"C"); 
						$pdf->Cell(29,$yHD,$explode_date[1].'-'.$explode_date[2],"1",0,"C"); 
						$pdf->Cell(35,$yHD,'',"1",1,"C"); 
													
						$sl_no++;
						
					}else if($FUNIVCODE == '016')
					{
						$explode_arr=explode("->",$ek);
						$pdf->Cell(7,6, $sl_no,"1",0,"C");
						$pdf->Cell(10,6, $explode_arr[0],"1",0,"C");
						$pdf->Cell(70,6,$explode_arr[1],"1",0,"L");
						$sub_short=$explode_arr[4];
						$pdf->Cell(14,6,$sub_short,"1",0,"C"); 
						$pdf->Cell(45,6,$explode_arr[3],"1",0,"C"); 
						$pdf->Cell(20,6,"","1",0,"C"); 
						$pdf->Cell(20,6,'',"1",1,"C"); 
						$sl_no++;
						
					}
					else
					{
						$explode_arr = explode("->",$ek);
						$nb =0;
						$nb=max($nb,NbLines(70,$explode_arr[1],''));
						$yH = 7*$nb;
						$pdf->Cell(7,$yH, $sl_no,"1",0,"C");
						$pdf->Cell(10,$yH, $explode_arr[0],"1",0,"C");
						
						$sub_short=$explode_arr[4];
						$x=$pdf->GetX();
						$y=$pdf->GetY();
						$pdf->Rect($x,$y,70,$yH);
						$pdf->MultiCell(70,$yH,$explode_arr[1],0,'L');
						$pdf->SetXY($x+70,$y);
						$pdf->Cell(14, $yH, $sub_short, 'LRB', 1, 'C');
						$pdf->SetXY($x+70,$y);
						$pdf->Cell(70, $yH, $explode_arr[3], 'LB', 1, 'C');
						$pdf->SetXY($x+127,$y);
						$pdf->Cell(20, $yH,'', 'LRB', 1, 'C');
						$pdf->SetXY($x+147,$y);
						$pdf->Cell(20, $yH,'', 'LRB', 1, 'C');
						$sl_no++;
					}
				}

				$pdf->Ln(4);
				$pdf->SetFont('Times','',10);
				$date_str = $class_obj->std_FHTTEXT;
				$text1 = str_replace("<br>","\n",$class_obj->std_FHTTEXT);
				$text = str_replace("<r>","\t",$text1);
				
				$pdf->writeHTML($date_str, $ln=true, $fill=false, $reseth=true, $cell=true, $align='L');
				
				$pdf->SetFont('Times','',9);	
				$pdf->Ln(15);
				$img_x=($pdf->getX()+140);;
				$img_y=$pdf->getY()-10;
				$img_path=$aobj_context->main_src."/img/controler_sign.jpg";
				if(file_exists($img_path)) 
					$pdf->Image($img_path,$img_x,$img_y,15);
				$pdf->Ln(4);
				$pdf->Cell(140,5,'','0',0,'L');
				IF($class_obj->std_FUNIVCODE=='021' || $FUNIVCODE == '005' || $FUNIVCODE == '021' || $FUNIVCODE == '032' || $FUNIVCODE == '016' || $FUNIVCODE == '018')
					$pdf->Cell(36,6,'Controller of Examinations','0',0,'L');
				ELSE
					$pdf->Cell(36,6,'Registrar (Evaluation)','0',0,'L');
				if($FUNIVCODE == '005')
				{
					$pdf->Ln(4);
					$pdf->Cell(140,5,'Student Signature','0',0,'L');
			
					//$pdf->Cell(36,6,'Controller of Examinations','0',0,'L');
					
					$pdf->Ln(15);
					$pdf->MultiCell(80,5,'I certify that this candidate is eligible to appear for the current examination as per the details mentioned above	',0,'L');
					$pdf->Ln(10);
					$pdf->Cell(110,5,'Principal	Signature','0',1,'L');
					
				}else
				{
					$pdf->Ln(15);
					$pdf->Cell(110,5,'Student Signature	','0',0,'L');
					$pdf->Cell(36,5,'I certify that this candidate is eligible to appear for the','0',0,'L');			
					$pdf->Ln(4);
					$pdf->Cell(36,5,'                                                                                                                                           current examination as per the details mentioned above','0',1,'L');			
					$pdf->Ln(8);
					if($FUNIVCODE == '030') 
						$pdf->Cell(36,5,'                                                                                                                                           HOS Signature with seal','0',1,'L');
					else
					{	if($FUNIVCODE == '003U')
							$pdf->Cell(36,5,'                                                                                                                                           Principal / Coordinator Signature with seal','0',1,'L');			
						else if($FUNIVCODE == '003D')
							$pdf->Cell(36,5,'                                                                                                                                           Co-ordinator Signature with seal','0',1,'L');			
						else
							$pdf->Cell(36,5,'                                                                                                                                           Principal / H.O.D. Signature with seal','0',1,'L');			
				
					}
				}
				$date = date("F j, Y, g:i a"); 
				if($FUNIVCODE == '003' || $FUNIVCODE == '008' || $FUNIVCODE == '003U' || $FUNIVCODE == '003D')
					$pdf->Cell(140,5,"Date: ",'0',0,'L');
				else
					$pdf->Cell(140,5,"Date: {$date}",'0',0,'L');
				//$pdf->Ln(10);
				//$pdf->Cell(140,5,'','0',0,'L');
				//$pdf->Cell(36,5,'','0',1,'L');
				//$pdf->Ln(8); 
				
				if($page_cnt!=count($class_obj->std_arr))
				{
					$pdf->AddPage();
					$pdf->Rect(02,03,200,280);
				}$page_cnt++;
				
		} 
		
	}else
	{
	foreach($class_obj->std_arr as $reg_k=>$reg_v)
	{
		//var_dump($reg_v['FREGNO']);
		if(!array_key_exists($reg_v['FREGNO'],$class_obj->receipt_date_arr))
		continue;
		$full_photo_path="";
		$full_photo_path=trim($aobj_context->main_src."/".$reg_v[photo_path]);	
		  
			$pdf->Ln(3);	
			//$pdf->SetLineWidth(0.01);
			 $pdf->SetLineWidth(0.01);
			 $pdf->SetFont('Times','B',16);	
				$img_path=$aobj_context->main_src."/img/report_uni_logo.jpg";
				if(file_exists($img_path)) 
					$pdf->Image($img_path,15,12,22);
				$pdf->Ln(5);
			if($FUNIVCODE == '018')
			{
				$pdf->SetFont('Times','B',13);
				$pdf->Cell(0,4,$class_obj->std_FUNIVNAME,0,1,'C');
				$pdf->SetFont('Times','B',10);
				$pdf->Cell(0,4,$class_obj->std_FTOWN,0,1,'C');
			}
			 else
				$pdf->Cell(0,4,$class_obj->std_FUNIVNAME.', '.$class_obj->std_FTOWN,0,1,'C');
			 //$pdf->Cell(0,4,$class_obj->std_FUNIVNAME,0,1,'C');
				$pdf->SetFont('Times','',10);
			 $pdf->Cell(0,4,'' ,'0',1,'C'); 
			 	$pdf->SetFont('Times','B',13);
			 $pdf->Ln(1);
			 $pdf->Cell(0,5,'HALL TICKET.' ,'0',1,'C'); 
			 $pdf->SetFont('Times','B',10);
			 $pdf->Cell(0,5,$reg_v['EXAMDATE'].' EXAMINATION ' ,'0',1,'C'); 
			  	$pdf->SetFont('Times','',12);
			 $pdf->Ln(6);
			  $pdf->SetFont('Times','',12);	
				 
			 	if(file_exists($full_photo_path) && !empty($reg_v[photo_path]))  //$pdf->Image($img_path,15,12,22);
				{
					$pdf->Image($full_photo_path,165,$pdf->GetY(),27,27);				
				}
				else
				{
					$pdf->Image($aobj_context->main_src."/img/nophoto.jpg",165,$pdf->GetY(),27,27);				
				}
				$pdf->SetFont('Times','B',11); 
				$pdf->Cell(30,6,' Course',0,0,'L');	$pdf->Cell(6,6,' :  ',0,0,'L');	
				$pdf->SetFont('Times','',11);				
				$pdf->Cell(120,6,''.$reg_v['COURSE'],0,1,'L'); 
				
				$pdf->SetFont('Times','B',11); 
				$pdf->Cell(30,6,' Exam Center',0,0,'L'); $pdf->Cell(6,6,' :  ',0,0,'L');
				$pdf->SetFont('Times','',11); 
				$pdf->MultiCell(90,6,'Examination Hall, 3rd Floor, KSHEMA',0,"L");

				$pdf->SetFont('Times','B',11); 
				$pdf->Cell(30,6,' College',0,0,'L'); $pdf->Cell(6,6,' :  ',0,0,'L');
				$pdf->SetFont('Times','',11); 
				$pdf->MultiCell(90,6,''.$reg_v['CollDetails'],0,"L");
				
				
				$pdf->SetFont('Times','B',11); 
				$pdf->Cell(30,6,' Reg. No.',0,0,'L'); $pdf->Cell(6,6,' :  ',0,0,'L');
				$pdf->SetFont('Times','',11);
				if($FUNIVCODE == '029')
					 $pdf->Cell(120,6,'NU'.$reg_v['FREGNO'],0,1,'L');
				else
					$pdf->Cell(120,6,$reg_v['FREGNO'],0,1,'L'); 
				$pdf->SetFont('Times','B',11); 
				$pdf->Cell(30,6," Student's Name",0,0,'L'); $pdf->Cell(6,6,' :  ',0,0,'L');
				$pdf->SetFont('Times','',11); 
				$pdf->Cell(120,6,''.$reg_v['FNAME'],0,1,'L'); 
			
				 
			$pdf->Ln(1);
			$pdf->SetFont('Times','B',11);
			$pdf->Cell(0,5,'Subject Appearing',0,1,'C');				
			$pdf->Cell(15,6,"Sl. No.","1",0,"C");
			$pdf->Cell(20,6,"Sub. Code","1",0,"C");
			$pdf->Cell(100,6,"Subject Title","1",0,"C");
			if($class_obj->bth_flag==1)
				$pdf->Cell(30,6,"Date and Session","1",1,"C");
			else
			{
				if($FUNIVCODE == '018')
					$pdf->Cell(30,6,"Short Name","1",1,"C");
				else
					$pdf->Cell(30,6,"Inv. Sign","1",1,"C");
			}
			$pdf->SetFont('Times','',11);	
			
		 	  
				$sub_arr=$reg_v[SUBCODE];
			
				 
				$subj_arr = explode("~",$sub_arr);
				
				$sl_no=1;
				foreach($subj_arr as $ek)
				{	
					if($FUNIVCODE == '018')
					{
						$explode_arr=explode("->",$ek);
						
						$pdf->Cell(15,6, $sl_no,"1",0,"C");
						$pdf->Cell(20,6, $explode_arr[0],"1",0,"C");

						$sub_short=$explode_arr[4];
						if($class_obj->bth_flag==1)
						{	
							$pdf->Cell(100,6,$explode_arr[1]." [{$sub_short}]","1",0,"L");
							$pdf->Cell(30,6,$explode_arr[3],"1",1,"C"); 
						}
						else
						{
							$pdf->Cell(100,6,$explode_arr[1],"1",0,"L");
							$pdf->Cell(30,6,$sub_short,"1",1,"C"); 
						}				 				 
						$sl_no++;
						
					}else
					{
						$explode_arr=explode("->",$ek);
						$sub_short=$explode_arr[4];
						if($class_obj->bth_flag==1)
						{	
							$pdf->Cell(100,6,$explode_arr[1]." [{$sub_short}]","1",0,"L");
							$pdf->Cell(20,6,$explode_arr[3],"1",1,"C"); 
						}
						else
						{
							$get_x1=$pdf->GetX();
							$get_y1=$pdf->GetY();
							//$pdf->Cell(80,6,$explode_arr[1],"1",0,"L");
							$width=15+20+100;
							$pdf->SetXY($get_x1+15+20,$get_y1);
							$pdf->MultiCell(100,6,$explode_arr[1],1,"L");
							$get_x2=$pdf->GetX();
							$get_y2=$pdf->GetY();
							$height=$get_y2-$get_y1;
							$pdf->SetXY($get_x1+15+20+100,$get_y1);
							
							//echo $height;die();
							 //$pdf->Cell(20,$height,$sub_short,"1",0,"C"); 
							 $pdf->Cell(30,$height,'',"1",1,"C"); 
						}
						
						 $pdf->SetXY($get_x1,$get_y1);
						 $pdf->Cell(15,$height, $sl_no,"1",0,"C");
						 $pdf->Cell(20,$height, $sub_short,"1",1,"C");
									 
						$sl_no++;
					}
				}
			
     			
				 
			$pdf->Ln(15);
			$img_x=($pdf->getX()+100);;
			$img_y=$pdf->getY()-10;
			$img_path=$aobj_context->main_src."/img/controler_sign.jpg";
			if(file_exists($img_path)) 
				$pdf->Image($img_path,$img_x,$img_y,30);
			//$pdf->Cell(90,5,'Student Signature	','0',0,'L');
			//$pdf->Cell(36,5,'Controller of Examinations','0',1,'L');
	
				$pdf->Cell(90,5,'','0',0,'L');
				$pdf->Cell(46,6,'Controller of Examinations','0',0,'R');
				$pdf->Ln(10);
				$pdf->Cell(90,5,'Student Signature	','0',0,'L');
				$pdf->Cell(46,5,'Principal Signature and Seal','0',1,'R');			
				$date=date("F j. Y");  
				$pdf->Cell(90,5,"Date: ".$date,'0',0,'L');
				$pdf->Ln(2);
				$pdf->SetFont('Times','',9);
				$date_str = $class_obj->std_FHTTEXT;
				$text1 = str_replace("<br>","\n",$class_obj->std_FHTTEXT);
				$text = str_replace("<r>","\t",$text1);

				$pdf->MultiCell(0,5,$text);
				
			if($page_cnt!=count($class_obj->std_arr))
			{
				$pdf->AddPage();
				$pdf->Rect(2,08,200,280);
			}$page_cnt++;
			
		}
	}	
		$pdf->Output("report_adm_ticket.pdf","D");	 
	
}
function NbLines($w,$txt,$pdf)
{
    //Computes the number of lines a MultiCell of width w will take
    $cw=&$pdf->CurrentFont['cw'];
    if($w==0)
        $w=$pdf->w-$pdf->rMargin-$pdf->x;
    $wmax=($w-2*$pdf->cMargin)*1000/$pdf->FontSize;
    $s=str_replace("\r",'',$txt);
    $nb=strlen($s);
    if($nb>0 and $s[$nb-1]=="\n")
        $nb--;
    $sep=-1;
    $i=0;
    $j=0;
    $l=0;
    $nl=1;
    while($i<$nb){
        $c=$s[$i];
        if($c=="\n"){
            $i++;
            $sep=-1;
            $j=$i;
            $l=0;
            $nl++;
            continue;
        }
        if($c==' ')
            $sep=$i;
        $l+=$cw[$c];
        if($l>$wmax){
            if($sep==-1){
                if($i==$j)
                    $i++;
            } else
                $i=$sep+1;
            $sep=-1;
            $j=$i;
            $l=0;
            $nl++;
        } else
            $i++;
    }
    return $nl;
 }
?>