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


Current Path : /var/www/html/rcub/Report_details/
Upload File :
Current File : /var/www/html/rcub/Report_details/report_admission_ticket_rcub_problem.php

<?php

require_once(__DIR__."/../../aws/aws-autoloader.php");
use Aws\S3\S3Client;
use Aws\S3\Exception\S3Exception;

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";
		}
		

		$query = "update candsum set FHTSTATUS = 'C', fhttime = now()
		where fcollcode = '{$this->college_code}' 
		and fregno between '{$this->registor_no_starts}'  and '{$this->registor_no_ends}'
		and fdegree = '{$this->degree_code}' and ifnull(FHTSTATUS,'') = '' 
		and ifnull(frecptdate,'') <> ''";
		$result = $this->aobj_context->mobj_db->execute($query);


		$get_student_data = "SELECT distinct S.FDEGREE,S.FREGNO,S.FCOLLCODE,ifnull(S.FPHOTOPATH,'') as photo_path,
		concat(col.FCOLLNAME,', ',col.FTOWN) as CollDetails  ,
		concat(ec.FCOLLNAME,', ',ec.ftown) AS exam_center_name,col.FCOLLNAME as FCOLLNAME,
		col.FEXAMCNTR 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
		and S.fcollcode = cs.fcollcode
		LEFT JOIN college ec ON ec.FCOLLCODE=col.FEXAMCNTR
		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 cs.frecptdate is not null 
		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'";
		} */
		
		$canddettmp = "canddet";
		$candsumttmp = "candsum"; 
/*
		$query = "CREATE TEMPORARY TABLE IF NOT EXISTS {$candsumttmp} AS
					select * from candsum where fcollcode = '{$this->college_code}' and fdegree = '{$this->degree_code}'";
		$this->aobj_context->mobj_db->execute($query);

		$query = "CREATE INDEX tmpcansum
		ON {$candsumttmp} (fcollcode, fdergee, fregno)";	
		$this->aobj_context->mobj_db->execute($query);

		$query = "CREATE TEMPORARY TABLE IF NOT EXISTS {$canddettmp} AS
					select * from canddet where fcollcode = '{$this->college_code}' and fdegree = '{$this->degree_code}'";
		$this->aobj_context->mobj_db->execute($query);	
		
		$query = "CREATE INDEX tmpcanddet
		ON {$canddettmp} (fcollcode, fdergee, fregno, fsubcode)";	
		$this->aobj_context->mobj_db->execute($query);
						
*/
						

		if($FUNIVCODE == '026')
		{
			$order = "ORDER BY s.FTHEORY desc, s.FCSUBCODE";
		}
		else
		{
			$order = "ORDER BY s.FTHEORY desc,s.FCSUBCODE";
		}
		$get_subject_appearing = "SELECT c.FDEGREE, cs.FREGNO AS FREGNO ,  c.FREGNO,
	GROUP_CONCAT(c.FEXAMNO,'->',s.FCSUBCODE ,'->',left(s.FSUBNAME,45),' ',
	concat('[',left(s.FSSUBNAME,15),']'),'->', 
		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}  SEPARATOR '~') AS SUBCODE , 
		ifnull(FRECPTDATE,'') as receipt_date FROM {$canddettmp} 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
		inner join {$candsumttmp} 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)
		left outer join reason rs on s.fsession = rs.freasoncd
		WHERE c.FDEGREE='{$this->degree_code}' 
		AND c.FCOLLCODE='{$this->college_code}' 
		AND ifnull(c.FPASSMTH,'') = '' AND c.fpresent = 'P'
		and c.FREGNO >= '{$this->registor_no_starts}' 
		AND c.FREGNO <='{$this->registor_no_ends}' 
		and cs.frecptdate 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)
		{		
			//var_dump($suv['SUBCODE']);
			$this->std_arr[$suv['FREGNO']]['SUBCODE']=$suv['SUBCODE'];
			$this->std_arr[$suv['FREGNO']]['FEXAMNO']=$suv['FEXAMNO'];
			//$this->std_arr[$suv[FREGNO]]['EXAMNAME']=$suv['EXAMNAME'];
			if(!empty($suv['receipt_date']))
			$this->receipt_date_arr[$suv['FREGNO']]=$suv['receipt_date'];	

		} 
			
	}	
}

function generateAdmissionTicket($aobj_context)
{
		include_once("stringspliter.php");
		session_start();
		$FUNIVCODE = $_SESSION['FUNIVCODE'];
		
		
		$class_obj=new AdmissionTicket($aobj_context);		
		ini_set("memory_limit",-1);
		ini_set('max_execution_time',5000);
		$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=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(13,5,15);	
		$pdf->aobj_context =$aobj_context ;
		//$pdf->WhichReport = 'AdmissionTicket';
		$pdf->SetFillColor(248, 248 ,255);		
		$pdf->SetFont('Times','',10);
		$pdf->AddPage();
		$pdf->SetMargins(13,5,15);
		$pdf->Rect(5,5,200,280,'D');
		$adm_details=$class_obj->getUniversityDetails();
		$adm_details=$class_obj->getCollegeDetails();
		$adm_details=$class_obj->getStudentDetails();
		$adm_details=$class_obj->getSubjectAppearing();
		
	 $page_cnt=1;

		foreach($class_obj->std_arr as $reg_k=>$reg_v)
		{		
			$curexamtitle = '';

			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']);	

			$keyname = $FUNIVCODE."/".$reg_v['photo_path'];
						$s3 = S3Client::factory(
							array(
								'credentials' => array(
									'key' => IAM_KEY,
									'secret' => IAM_SECRET
								),
								'version' => "latest",
								'region'  => 'ap-south-1'
							)
						);
					$filePath = tempnam(sys_get_temp_dir(), rand(10,15));
					try{
					$result = $s3->getObject([
						'Bucket' => STUDENT_PHOTOS_BUCKET,
						'Key'    => $keyname,
						'SaveAs' => $filePath
					]);}
					catch(S3Exception $e){
					}
						
			$full_photo_path = $filePath;	

			if($FUNIVCODE == '027')
					$funivname = $class_obj->std_FUNIVNAME.', '.$class_obj->std_FTOWN;
			else 
				$funivname = $class_obj->std_FUNIVNAME;
				if($FUNIVCODE != '030' && $FUNIVCODE != '031')
				{	
					$pdf->Ln(2);
					$pdf->SetLineWidth(0.01);
					$pdf->SetFont('Times','B',14);
					$img_path = $aobj_context->main_src."/img/report_uni_logo.jpg";
					if(file_exists($img_path)) 
						$pdf->Image($img_path,10,10,25);
					$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,$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->SetFont('Times','B',10);
						$pdf->Cell(0,5,'ADMISSION TICKET ' ,'0',1,'C');							
					}	
					else
						$pdf->Cell(0,5,'HALL TICKET ' ,'0',1,'C'); 
				}
				$pdf->SetFont('Times','',10);
				$pdf->Cell(0,5,$reg_v['EXAMDATE'].' EXAMINATION ' ,'0',1,'C'); 
				$pdf->SetFont('Times','',10);
				$pdf->Ln(4);
				$width = 124;	
				////////////////////////////////////
				$nb =0;
				$pdf->SetFont('Times','',8);
				$value = $reg_v['FCOLLCODE']." - ".$reg_v['CollDetails'];
				$nb=max($nb,NbLines(50,$value,''));
				$yH = 8*$nb;
				
				

				// $url = "https://university-student-photos.s3.ap-south-1.amazonaws.com/".$FUNIVCODE."/".urlencode($reg_v['photo_path']);
				// $img_photo = file_get_contents($url);
				// //var_dump($img_photo);
				// $pdf->Image('@'.$img_photo,169,33,27,28);

				if(file_exists($full_photo_path) && !empty($reg_v['photo_path']))
				{
					$pdf->Image($full_photo_path,169,33,27,28);				
				}
				else
				{
					$pdf->Image($aobj_context->main_src."/img/nophotoborder.jpg",165.5,31,27,28);				
				}

				$pdf->Ln(4);
				if($FUNIVCODE == '027')
				{

					
					$pdf->SetFont('Times','B',10); 
					$pdf->Cell(27,6,' Course',0,0,'L');	//$pdf->Cell(3,6,' :  ',0,0,'L');	
					$pdf->SetFont('Times','',9);				
					$pdf->Cell(128.5,6,': '.$reg_v['COURSE'],0,0,'L');
					$pdf->Cell(28.5,6,'','TRL',1,'L');
					
					$pdf->SetFont('Times','B',9);
					$pdf->Cell(27,6,' Reg. No.',0,0,'L');
					$pdf->SetFont('Times','',9);
					$pdf->Cell(46,6,': '.$reg_v['FREGNO'],0,0,'L');

					$pdf->SetFont('Times','B',9);
					$pdf->Cell(40,6,"Student Id.",0,0,'R');
					$pdf->SetFont('Times','',9);
					$pdf->Cell(42.5,6,': '.$reg_v['fstudid'],0,0,'L');
					$pdf->Cell(28.5,6,'','RL',1,'C');
					
					$pdf->SetFont('Times','B',9); 
					$pdf->Cell(27,6," Student Name",0,0,'L'); 
					$pdf->SetFont('Times','',9); 
					$pdf->Cell(128.5,6,': '.$reg_v['FNAME'],0,0,'L');
					$pdf->Cell(28.5,6,'','RL',1,'C');
					
					$pdf->SetFont('Times','B',9); 
					$pdf->Cell(27,6," Father's Name",0,0,'L'); 
					$pdf->SetFont('Times','',9); 
					$pdf->Cell(128.5,6,': '.$reg_v['FFATNAME'],0,0,'L');
					$pdf->Cell(28.5,6,'','RL',1,'L');
					
					
					$pdf->SetFont('Times','B',9); 
					$pdf->Cell(27,6," Mother's Name",0,0,'L'); 
					$pdf->SetFont('Times','',9); 
					$pdf->Cell(128.5,6,': '.$reg_v['FMOTNAME'],0,0,'L');
					$pdf->Cell(28.5,6,'','RLB',1,'L');
					
					$pdf->SetFont('Times','B',9); 
					$pdf->Cell(27,6,' College',0,0,'L'); 
					$pdf->SetFont('Times','',9); 
					$pdf->Cell(157,6,': '. $reg_v['FCOLLCODE']." - ".$reg_v['CollDetails'],0,'1',"L");

					$pdf->SetFont('Times','B',9); 
					$pdf->Cell(27,6,' Exam Center',0,0,'L'); 
					$pdf->SetFont('Times','',9); 
					$pdf->Cell(157,6,': '. $reg_v['FEXAMCNTR']." - ".$reg_v['exam_center_name'],0,'1','L'); 
					
					
				}
				else if($FUNIVCODE == '016' || $FUNIVCODE == '033' || $FUNIVCODE == '017' || $FUNIVCODE == '034' ||$FUNIVCODE == '008' ||$FUNIVCODE == '003')
				{
					$pdf->SetFont('Times','B',10); 
					$pdf->Cell(25,6,' Course',0,0,'L');	$pdf->Cell(3,6,' :  ',0,0,'L');	
					$pdf->SetFont('Times','',10);				
					$pdf->Cell(120,6,''.$reg_v['COURSE'],0,1,'L'); 
				 
					 
					$pdf->SetFont('Times','B',10); 
					$pdf->Cell(25,6,' College',0,0,'L'); $pdf->Cell(3,6,' :  ',0,0,'L');
					$pdf->SetFont('Times','',10); 
					$pdf->MultiCell(96,6,''. $reg_v['FCOLLCODE']." - ".$reg_v['CollDetails'],0,"L");
					$pdf->SetFont('Times','B',10); 
					$pdf->Cell(25,6,' Exam Center',0,0,'L'); $pdf->Cell(3,6,' :  ',0,0,'L');
					$pdf->SetFont('Times','',10); 
					$pdf->Cell(120,6,''. $reg_v['FEXAMCNTR']." - ".$reg_v['exam_center_name'],0,1,'L'); 
					
					
					$pdf->SetFont('Times','B',10); 
					$pdf->Cell(25,6,' Reg. No.',0,0,'L'); $pdf->Cell(3,6,' :  ',0,0,'L');
					$pdf->SetFont('Times','B',10); 
					$pdf->Cell(120,6,''.$reg_v['FREGNO']. '      Student Id.: '.$reg_v['fstudid'],0,1,'L'); 
					$pdf->SetFont('Times','B',10); 
					$pdf->Cell(25,6," Student's Name",0,0,'L'); $pdf->Cell(3,6,' :  ',0,0,'L');
					$pdf->SetFont('Times','',10); 
					$pdf->Cell(120,6,''.$reg_v['FNAME'],0,1,'L'); 
					if($FUNIVCODE == '008')
					{
						$pdf->SetFont('Times','B',10);
						$pdf->Cell(25,6," Father's Name",0,0,'L'); $pdf->Cell(3,6,' :  ',0,0,'L');
						$pdf->SetFont('Times','',10); 
						$pdf->Cell(120,6,''.$reg_v['FFATNAME'],0,1,'L');
						
						$pdf->SetFont('Times','B',10);
						$pdf->Cell(25,6," Mother's Name",0,0,'L'); $pdf->Cell(3,6,' :  ',0,0,'L');
						$pdf->SetFont('Times','',9); 
						$pdf->Cell(120,6,''.$reg_v['FMOTNAME'],0,1,'L');
					}
				}
				else
				{
					$pdf->SetFont('Times','B',9); 
					$pdf->Cell(36,6,' Course',1,0,'L');	//$pdf->Cell(3,6,' :  ',0,0,'L');	
					$pdf->SetFont('Times','',9);				
					$pdf->Cell(124,6,''.$reg_v['COURSE'],1,1,'L'); 
					
					$pdf->SetFont('Times','B',9);
					if($FUNIVCODE == '031')
					{
						$pdf->Cell(36,6,' Department',1,0,'L'); 
						//$pdf->Cell(3,6,' :  ',0,0,'L');
					}
					else
					{
						$pdf->Cell(36,$yH,' College',1,0,'L');
						//$pdf->Cell(3,6,' :  ',0,0,'L');
					}
					$pdf->SetFont('Times','',9); 
					$pdf->MultiCell(124,$yH,''. $reg_v['FCOLLCODE']." - ".$reg_v['CollDetails'],1,"L");
					$pdf->SetFont('Times','B',9); 
					if($FUNIVCODE == '030' || $FUNIVCODE == '003U' || $FUNIVCODE == '003D' || $FUNIVCODE == '026')
					{
						$width = '152';
						$pdf->Cell(36,6,' Exam Center',1,0,'L'); //$pdf->Cell(3,6,' :  ',0,0,'L');
						$pdf->SetFont('Times','',9); 
						if($FUNIVCODE == '003U' || $FUNIVCODE == '003D')
							$pdf->Cell(124,6,'As per the notification',1,1,'L');
						else
							$pdf->Cell(124,6,''. $reg_v['FEXAMCNTR']." - ".$reg_v['exam_center_name'],1,1,'L'); 
					}
					if($FUNIVCODE == '003')
					{
						$pdf->Cell(36,6,'Cluster Exam Center',1,0,'L');// $pdf->Cell(3,6,' :  ',0,0,'L');
						$pdf->SetFont('Times','',9); 
						$pdf->Cell(124,6,''. $reg_v['FEXAMCNTR']." - ".$reg_v['exam_center_name'],1,1,'L');
						$width = '152';
					}
					
					$pdf->SetFont('Times','B',9); 
					if($FUNIVCODE == '030')
					{	
						$pdf->Cell(36,6,' SRN',1,0,'L'); 
						//$pdf->Cell(3,6,' :  ',1,0,'L');
					}
					else
					{	
						$pdf->Cell(36,6,' Reg. No.',1,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(124,6,''.$reg_v['FREGNO'],1,1,'L');				
					else
					{	
						//$pdf->Cell(124,6,''.$reg_v['FREGNO']. '      Student Id.: '.$reg_v['fstudid'],1,1,'L'); 
						$pdf->Cell(44,6,$reg_v['FREGNO'],1,0,'L');
						$pdf->Cell(40,6,"Student Id.",1,0,'L');
						$pdf->Cell(40,6,$reg_v['fstudid'],1,1,'L');
					}
					$pdf->SetFont('Times','B',9); 
					$pdf->Cell(36,6," Student Name",1,0,'L'); //$pdf->Cell(3,6,' :  ',0,0,'L');
					$pdf->SetFont('Times','',9); 
					$pdf->Cell($width,6,''.$reg_v['FNAME'],1,1,'L'); 
				
				}
					
				if($FUNIVCODE == '026' || $FUNIVCODE == '027')
				{
					$title1 = array('Sl.','Exam','Sub','Subject / Paper Name','QP','Answer','Invigilator');
					$title2 = array('No.','','Code','','Code','Book No.','Signature');
					$w = array('7','9','10','110','15','15','18');
				}else if($FUNIVCODE == '005')
				{
					$title1 = array('Sl.','Sem /','Sub','Subject Title','Date and Time');
					$title2 = array('No.','Year','Code','','');
					$w = array('10','7','15','70','45');
				}else if($FUNIVCODE == '029')
				{
					$title1 = array('Sl.','Sem /','Sub','Subject Title','DATE AND SESSION','Invigilator');
					$title2 = array('No.','Year','Code','','','Signature');
					$w = array('15','7','20','80','30','30');
				}else if($FUNIVCODE == '018')
				{
					$title1 = array('Sl.','Sem /','Sub','Subject Title','DATE AND SESSION');
					$title2 = array('No.','Year','Code','','');
					$w = array('15','7','20','90','30');
				}else if($FUNIVCODE == '030')
				{
					$title1 = array('Sl.','Sem /','Sub','Subject Title','Date','Time','Invigilator');
					$title2 = array('No.','Year','Code','','','','Signature');
					$w = array('8','7','15','70','16','29','30');
				}else
				{
					$title1 = array('Sl.','Sem /','Sub','Subject Title','QP','Date and Time','Answer','Invigilator');
					$title2 = array('No.','Year','Code','','Code','','Book No.','Signature');
					$w = array('7','7','10','70','14','41','20','18');
				} 
				$length = $w[6]+$w[5]+$w[0]+$w[1]+$w[2]+$w[3]+$w[4];
				$pdf->Ln(1);
				$pdf->SetFont('Times','B',10);
				$pdf->Cell($length,6,'SUBJECTS / PAPERS APPEARING',1,1,'C');
				$pdf->SetFont('Times','B',9);
				
				$length = (count($w) -1);
				for($i = 0;$i<count($w);$i++)
				{
					if($i == $length)
						$pdf->Cell($w[$i],6,$title1[$i],"LRT",1,"C");
					else
						$pdf->Cell($w[$i],6,$title1[$i],"LRT",0,"C");
					
				}
				
				for($i = 0;$i<count($w);$i++)
				{
					if($i == $length)
						$pdf->Cell($w[$i],4,$title2[$i],"LRB",1,"C");
					else
					$pdf->Cell($w[$i],4,$title2[$i],"LRB",0,"C");
					
				} 
				
				$pdf->SetFont('Times','',9);
				// Mark start coords

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


				$sub_arr = $reg_v['SUBCODE'];
				//var_dump($sub_arr);
				$subj_arr = explode("~",$sub_arr);
				$sl_no=1;
				$j = 0;
				$curexam = '';
				foreach($subj_arr as $ek)
				{								
					$explode_arr = explode("->",$ek);
					$sem = '';
					if($explode_arr[0] == 'A')
					{
						$sem = 'I';
						
					}else if($explode_arr[0] == 'B')
					{
						$sem = 'II';
					}else if($explode_arr[0] == 'C')
					{
						$sem = 'III';
					}else if($explode_arr[0] == 'D')
					{
						$sem = 'IV';
					}else if($explode_arr[0] == 'E')
					{
						$sem = 'V';
					}else if($explode_arr[0] == 'F')
					{
						$sem = 'VI';
					}else if($explode_arr[0] == 'G')
					{
						$sem = 'VII';
					}else if($explode_arr[0] == 'H')
					{
						$sem = 'VIII';
					}else if($explode_arr[0] == 'I')
					{
						$sem = 'IX';
					}else if($explode_arr[0] == 'J')
					{
						$sem = 'X';
					}
					
				
					$nb =0;
					$pdf->SetFont('Times','',9);
					$nb=max($nb,NbLines($w[2],$explode_arr[2],''));
					$yH = 7*$nb;
					$pdf->Cell($w[0],6, $sl_no,"1",0,"C");
					$pdf->Cell($w[1],6,$sem,"1",0,"C");
					$pdf->Cell($w[2],6, $explode_arr[1],"1",0,"C");
					$sub_short=$explode_arr[5];
					$x=$pdf->GetX();
					$y=$pdf->GetY();
					$subjectname = str_splitf($explode_arr[2],49);
					$pdf->Rect($x,$y,$w[3],$yH);
					
					//$pdf->MultiCell($w[3],$yH,$explode_arr[2],0,'L', 0, 0, '', '', true);
					$pdf->Cell($w[3],6,$explode_arr[2],'1','0','L');
					$pdf->SetXY($x+$w[3],$y);	
					//var_dump($explode_arr[2]);
					if($FUNIVCODE == '005' || $FUNIVCODE == '018')
					{
						$pdf->Cell($w[4], $yH, $explode_arr[4], 'LBR', 1, 'C');
						
					}
					else if($FUNIVCODE == '026' || $FUNIVCODE == '027')
					{
						$pdf->Cell($w[4], 6, $sub_short, 'LRB', 1, 'C');
						$pdf->SetXY($x+$w[3]+$w[4],$y);
						$pdf->Cell($w[5], 6,'', 'LRB', 1, 'C');
						$pdf->SetXY($x+$w[4]+$w[3]+$w[5],$y);
						$pdf->Cell($w[6], 6,'', 'LRB', 1, 'C');
					}
					else if($FUNIVCODE == '029')
					{
						$pdf->Cell($w[4], $yH, $explode_arr[4], 'LB', 1, 'C');
						$pdf->SetXY($x+$w[3]+$w[4],$y);
						$pdf->Cell($w[5], $yH,'', 'LRB', 1, 'C');							
					}
					else
					{
						$pdf->SetFont('Times','B',8);
						$pdf->Cell($w[4], $yH, $sub_short, 'LRB', 1, 'C');
						$pdf->SetFont('Times','',8);
						$pdf->SetXY($x+$w[3]+$w[4],$y);
						$pdf->Cell($w[5], $yH, $explode_arr[4], 'LB', 1, 'C');
						$pdf->SetXY($x+$w[4]+$w[3]+$w[5],$y);
						$pdf->Cell($w[6], $yH,'', 'LRB', 1, 'C');
						$pdf->SetXY($x+$w[5]+$w[4]+$w[3]+$w[6],$y);
						$pdf->Cell($w[7], $yH,'', 'LRB', 1, 'C');
					}
					$sl_no++;	
					$j++;
				}
				
				
				if($FUNIVCODE == '016' || $FUNIVCODE == '033' || $FUNIVCODE == '017' || $FUNIVCODE == '034' || $FUNIVCODE == '008' || $FUNIVCODE == '003')
				{
					$pdf->SetFont('Times','',9);	
					$pdf->Ln(10);
					$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');
				}
				
				if($FUNIVCODE == '027')
				{
					$pdf->SetFont('Times','B',10);
					$pdf->Ln(6); 
					$pdf->SetFont('Times','',9);
					$pdf->Cell(184,6,'I certify that, the details mentioned above are correct and the candidate is eligible to appear for the examination.','LTR',1,'L');			
					$pdf->Cell(184,6,'','LR',1,'L');			
					$pdf->Cell(184,6,'','LR',1,'L');			
					
					$date=date("F j, Y, g:i a");  
					$pdf->Cell(148,6,"Date: ".$date,'LB',0,'L');
					$pdf->Cell(36,6,'Principal / H.O.D. / Chairman Sign. (with seal)','BR',1,'R');
					$x=$pdf->GetX();
					$y=$pdf->GetY();
					//$pdf->Line($x,$y,$x+184,$y);
				
					$pdf->Ln(16);
					$img_x=($pdf->getX()+152);;
					$img_y=$pdf->getY()-10;

				}
				else
				{
					$img_x=($pdf->getX()+159);;
					$img_y=$pdf->getY()-1;
				}
				$img_path=$aobj_context->main_src."/img/controler_sign.jpg";
				if(file_exists($img_path)) 
					$pdf->Image($img_path,$img_x,$img_y,35);
				$pdf->Cell(130,5,'Student Signature','0',0,'L');
				$pdf->Cell(55,6,'Registrar (Evaluation)','0',1,'R');
				// if($FUNIVCODE == '027')
				// {
				// 	$x=$pdf->GetX();
				// 	$y=$pdf->GetY();
				// 	$pdf->Line($x,$y,$x+184,$y);
				// }
				$pdf->Ln(1);
				if($FUNIVCODE != '027')
				{
					$pdf->Ln(12);
					$pdf->Cell(140,5,'','0',0,'L');
					IF($class_obj->std_FUNIVCODE=='021' || $FUNIVCODE == '005' || $FUNIVCODE == '021' || $FUNIVCODE == '032' || $FUNIVCODE == '016' || $FUNIVCODE == '018' || $FUNIVCODE == '033' || $FUNIVCODE == '017' || $FUNIVCODE == '034')
						$pdf->Cell(50,6,'Controller of Examinations','0',0,'R');
					ELSE
						$pdf->Cell(50,6,'Registrar (Evaluation)','0',0,'R');
					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(7);
						$pdf->SetFont('Times','B',10);
						$pdf->Cell(36,6,'I certify that this candidate is eligible to appear for the current examination','0',1,'L');				
						$pdf->SetFont('Times','',8);
						/* $pdf->Cell(110,4,'','0',0,'L');
						$pdf->Cell(30,4,'1. He / She has satisfactory attendance (>=75%).','0',1,'L');
						$pdf->Cell(110,4,'','0',0,'L');
						$pdf->Cell(30,4,'2. He / She has passed in lower semester examination as per ','0',1,'L');
						$pdf->Cell(110,2,'','0',0,'L');
						$pdf->Cell(30,2,'    University Regulation (Min. 40% subjects).','0',1,'L'); 
						$pdf->Cell(110,4,'','0',0,'L');
						$pdf->Cell(30,4,'3. His / Her admission has been approved by the University.','0',1,'L');
						$pdf->Cell(110,4,'','0',0,'L');
						$pdf->Cell(30,4,"4. He / She is not belongs to 'Double the Duration' period.",'0',1,'L');			
						 
						$pdf->SetFont('Times','B',10);
						$pdf->Cell(36,6,'I certify that this candidate is eligible to appear for','0',0,'L');			
						$pdf->Ln(4);
						$pdf->Cell(36,5,'                                                                                                                            the current examination ','0',1,'L');			
						*/
						if($FUNIVCODE == '003')
						{
							$pdf->Cell(30,4,'1. He / She has satisfactory attendance (>=75%).','0',1,'L');						
							$pdf->Cell(30,4,'2. He / She has passed in lower semester examination as per University Regulation (Min. 40% subjects).','0',1,'L'); 					
							$pdf->Cell(30,4,'3. His / Her admission has been approved by the University.','0',1,'L');					
							$pdf->Cell(30,4,"4. He / She is not belongs to 'Double the Duration' period.",'0',1,'L');			
							$pdf->SetFont('Times','',10);
							$pdf->Ln(9);
						}
						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
							{
								if($FUNIVCODE == '033')
								{
									$img_x=($pdf->getX()+140);;
									$img_y=$pdf->getY()-5;
									$img_path=$aobj_context->main_src."/img/Sign Principal.jpg";
									if(file_exists($img_path)) 
										$pdf->Image($img_path,$img_x,$img_y,25);
								}
								$pdf->Cell(36,5,'Principal / H.O.D. Signature with seal','0',1,'L');			
							}
						}
					}
					$pdf->Cell(0,5,'Signature of the Student','0',1,'R');
					$date = date("F j, Y, g:i a"); 
					if($FUNIVCODE == '003' || $FUNIVCODE == '008' || $FUNIVCODE == '003U' || $FUNIVCODE == '003D')
					{	
						$pdf->Cell(160,5,"Date: ",'0',0,'R');
					}	
					else
						$pdf->Cell(0,5,"Date: {$date}",'0',1,'R');

				}
				if($FUNIVCODE != '016' && $FUNIVCODE != '008' && $FUNIVCODE != '034' && $FUNIVCODE != '033' && $FUNIVCODE != '017' && $FUNIVCODE != '003')
				{
					$pdf->Ln(8);
					$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');
				}
				if($page_cnt!=count($class_obj->std_arr))
				{
					$pdf->AddPage();
					$pdf->Rect(5,5,200,280,'D');
				}$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; */
 }
?>