0xV3NOMx
Linux ip-172-26-7-228 5.4.0-1103-aws #111~18.04.1-Ubuntu SMP Tue May 23 20:04:10 UTC 2023 x86_64



Your IP : 52.15.109.209


Current Path : /var/www/oasis/Report_details/
Upload File :
Current File : /var/www/oasis/Report_details/qrcodeGeneratePostAdmissionTicket_bf_srun.php

<?php

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

class AdmissionTicket
{
	
	public $aobj_context;
	public $degree_code;
	public $examfrom;
	public $examto;
	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 distinct 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 cs.frecptdate is not null 
		and ifnull(S.FPHOTOPATH,'') <> ''
		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'";
		} */
		
		if($FUNIVCODE == '026')
		{
			$order = "ORDER BY s.FTHEORY desc, s.FCSUBCODE";
		}
		else
		{
			$order = "ORDER BY s.FTHEORY desc,s.FDOE,s.FSESSION,s.FCSUBCODE,d.FEXAMNO";
		}
		$get_subject_appearing = "SELECT c.FDEGREE, cs.FREGNO AS FREGNO , 
		GROUP_CONCAT(d.FEXAMNAME ORDER BY s.FTHEORY desc, s.FDOE, s.FSESSION,d.FEXAMNO) EXAMNAME,
		GROUP_CONCAT(c.FEXAMNO ORDER BY c.FEXAMNO,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, s.FCSUBCODE  SEPARATOR '~'),
		GROUP_CONCAT(c.FEXAMNO,'->',s.FCSUBCODE ,'->',s.FSUBNAME,'->', 
		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 , 
		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 c.fpresent = 'P'
		and c.FREGNO >= '{$this->registor_no_starts}' 
		AND c.FREGNO <='{$this->registor_no_ends}' 
		and cs.frecptdate is not null  is not null
		GROUP BY c.FREGNO, c.FDEGREE";				
		$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();
		//var_dump($get_subject_appearing);
		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 qrcodeGeneratePostAdmissionTicket($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',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"]; 

		$class_obj->registor_no_starts= $aobj_context->mobj_data["regstarts"];
		
		$class_obj->registor_no_ends= $aobj_context->mobj_data["regends"]; 
		$class_obj->college_code = $aobj_context->mobj_data["fcollcode"];
		$class_obj->FUNIVCODE = $aobj_context->mobj_data["FUNIVCODE"];
		$FUNIVCODE = $aobj_context->mobj_data["FUNIVCODE"];
				
		$class_obj->rptype = $aobj_context->mobj_data["rptype"];  
		$class_obj->exam = $aobj_context->mobj_data["exam"]; 
		

		$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(9,3,15);	
		$pdf->aobj_context =$aobj_context ;
		$pdf->WhichReport = 'AdmissionTicket';
		$pdf->SetFillColor(248, 248 ,255);		
		$pdf->SetFont('Times','',10);
		$pdf->AddPage();
		$pdf->SetMargins(9,3,15);
		if($FUNIVCODE != '027')
			$pdf->Rect(2,05,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']);	
		 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."/".$aobj_context->mobj_data["db"]."/img/report_uni_logo.jpg";
				 if(file_exists($img_path)) 
					 $pdf->Image($img_path,10,6,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."/".$aobj_context->mobj_data["db"]."/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,'HALL 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://college.universitysolutions.in/app.php?db=kus&a=qrcodeGeneratePostAdmissionTicket.demo&degree_code=".$class_obj->degree_code."&fcollcode=".$reg_v['FCOLLCODE']."&regstarts=".$reg_v['FREGNO']."&regends=".$reg_v['FREGNO']."&FUNIVCODE=".$FUNIVCODE;
			 //$url = "http://universitysolutions.in/kus/app.php?a=qrcodeGeneratePostAdmissionTicket.demo&degree_code=".$class_obj->degree_code."&fcollcode=".$reg_v['FCOLLCODE']."&regstarts=".$reg_v['FREGNO']."&regends=".$reg_v['FREGNO']."&FUNIVCODE=".$FUNIVCODE;
			 //var_dump($url);
			 $pdf->write2DBarcode("{$url}", 'QRCODE,L', 175, 8, 25, 25, $style, 'N');

			 $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(file_exists($full_photo_path) && !empty($reg_v['photo_path']))
			 {
				 $pdf->Image($full_photo_path,165,31,30,32);				
			 }
			 else
			 {
				 $pdf->Image($aobj_context->main_src."/".$aobj_context->mobj_data["db"]."/img/nophotoborder.jpg",170,31,25,27);				
			 }
			 $pdf->Ln(4);
			 if($FUNIVCODE == '027')
			 {
				 $pdf->SetFont('Times','B',9); 
				 $pdf->Cell(27,6,' Course',1,0,'L');	//$pdf->Cell(3,6,' :  ',0,0,'L');	
				 $pdf->SetFont('Times','',9);				
				 $pdf->Cell(128.5,6,''.$reg_v['COURSE'],1,0,'L');
				 $pdf->Cell(28.5,6,'','TR',1,'L');
				 
				 $pdf->SetFont('Times','B',9);
				 $pdf->Cell(27,6,' Reg. No.',1,0,'L');
				 $pdf->SetFont('Times','',9);
				 $pdf->Cell(46,6,$reg_v['FREGNO'],1,0,'L');
				 $pdf->SetFont('Times','B',9);
				 $pdf->Cell(40,6,"Student Id.",1,0,'L');
				 $pdf->Cell(42.5,6,$reg_v['fstudid'],1,0,'L');
				 $pdf->Cell(28.5,6,'','R',1,'L');
				 
				 $pdf->SetFont('Times','B',9); 
				 $pdf->Cell(27,6," Student Name",1,0,'L'); 
				 $pdf->SetFont('Times','',9); 
				 $pdf->Cell(128.5,6,''.$reg_v['FNAME'],1,0,'L');
				 $pdf->Cell(28.5,6,'','R',1,'L');
				 
				 $pdf->SetFont('Times','B',9); 
				 $pdf->Cell(27,6," Father's Name",1,0,'L'); 
				 $pdf->SetFont('Times','',9); 
				 $pdf->Cell(128.5,6,''.$reg_v['FFATNAME'],1,0,'L');
				 $pdf->Cell(28.5,6,'','R',1,'L');
				 
				 
				 $pdf->SetFont('Times','B',9); 
				 $pdf->Cell(27,6," Mother's Name",1,0,'L'); 
				 $pdf->SetFont('Times','',9); 
				 $pdf->Cell(128.5,6,''.$reg_v['FMOTNAME'],1,0,'L');
				 $pdf->Cell(28.5,6,'','R',1,'L');
				 
				 $pdf->SetFont('Times','B',9); 
				 $pdf->Cell(27,8,' College',1,0,'L'); 
				 $pdf->SetFont('Times','',9); 
				 $pdf->MultiCell(157,8,''. $reg_v['FCOLLCODE']." - ".$reg_v['CollDetails'],1,"L");
				 $pdf->SetFont('Times','B',9); 
				 $pdf->Cell(27,8,' Exam Center',1,0,'L'); 
				 $pdf->SetFont('Times','',9); 
				 $pdf->MultiCell(157,8,''. $reg_v['FEXAMCNTR']." - ".$reg_v['exam_center_name'],1,'L'); 
				 
				 
			 }
			 else if($FUNIVCODE == '016' || $FUNIVCODE == '033' || $FUNIVCODE == '017' || $FUNIVCODE == '034' ||$FUNIVCODE == '008' ||$FUNIVCODE == '003' ||$FUNIVCODE == '098')
			 {
				 $pdf->SetFont('Times','B',10); 
				 $pdf->Cell(32,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(32,6,' College / Dept.',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(32,6,' Examination Center',0,0,'L'); $pdf->Cell(3,6,' :  ',0,0,'L');
				 $pdf->SetFont('Times','',10); 
				 $pdf->MultiCell(120,6,''. $reg_v['FEXAMCNTR']." - ".$reg_v['exam_center_name'],0,'L'); 
				 

				$pdf->SetLineStyle(array('width' => 0.01, 'cap' => 'butt', 'join' => 'miter', 'dash' => 0, 'color' => array(91, 91, 91)));	
				$pdf->ln(2);
				$pdf->SetFont('Times','B',12); 
				$pdf->Cell(35,6,' Reg. No.',1,0,'L'); 
				$pdf->SetFont('Times','B',12);

				$pdf->Cell(5,6,substr($reg_v['FREGNO'],0,1),1,0,'C');
				$pdf->Cell(5,6,substr($reg_v['FREGNO'],1,1),1,0,'C');
				$pdf->Cell(5,6,substr($reg_v['FREGNO'],2,1),1,0,'C');
				$pdf->Cell(5,6,substr($reg_v['FREGNO'],3,1),1,0,'C');
				$pdf->Cell(5,6,substr($reg_v['FREGNO'],4,1),1,0,'C');
				$pdf->Cell(5,6,substr($reg_v['FREGNO'],5,1),1,0,'C');
				$pdf->Cell(5,6,substr($reg_v['FREGNO'],6,1),1,0,'C');
				$pdf->Cell(5,6,substr($reg_v['FREGNO'],7,1),1,0,'C');
				
				$pdf->Cell(5,6,'',0,0,'C');
				
				$pdf->Cell(24,6,"Student Id. ",1,0,'L');
				$pdf->Cell(5,6,substr($reg_v['fstudid'],0,1),1,0,'L'); 
				$pdf->Cell(5,6,substr($reg_v['fstudid'],1,1),1,0,'L'); 
				$pdf->Cell(5,6,substr($reg_v['fstudid'],2,1),1,0,'L'); 
				$pdf->Cell(5,6,substr($reg_v['fstudid'],3,1),1,0,'L'); 
				$pdf->Cell(5,6,substr($reg_v['fstudid'],4,1),1,0,'L'); 
				$pdf->Cell(5,6,substr($reg_v['fstudid'],5,1),1,0,'L'); 
				$pdf->Cell(5,6,substr($reg_v['fstudid'],6,1),1,0,'L'); 
				$pdf->Cell(5,6,substr($reg_v['fstudid'],7,1),1,1,'L');
				$pdf->ln(2);
							 
				//  $pdf->SetFont('Times','B',10); 
				//  $pdf->Cell(32,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(32,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'); 
			 
			 }
			
			$style = array(
				'position' => 'right',
				'align' => 'C',
				'stretch' => false,
				'fitwidth' => true,
				'cellfitalign' => '',
				'border' => false,
				'hpadding' => 'auto',
				'vpadding' => 'auto',
				'fgcolor' => array(0,0,0),
				'bgcolor' => false, //array(255,255,255),
				'text' => true,
				'font' => 'helvetica',
				'fontsize' => 8,
				'stretchtext' => 4
			);
	
			$pdf->write1DBarcode($reg_v['FREGNO'], 'C39', '145', '65','130', 16, 0.3, $style, 'R');

			 if($FUNIVCODE == '026' || $FUNIVCODE == '027')
			 {
				 $title1 = array('Sl.','Sem /','Sub','Subject / Paper Title','QP','Answer','Invigilator');
				 $title2 = array('No.','Year','Code','','Code','Book No.','Signature');
				 $w = array('7','7','10','105','15','20','20');
			 }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','8','75','10','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,5,'SUBJECTS / PAPERS APPEARING',0,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",true);
				 else
					 $pdf->Cell($w[$i],6,$title1[$i],"LRT",0,"C",true);
				 
			 }
			 
			 for($i = 0;$i<count($w);$i++)
			 {
				 if($i == $length)
					 $pdf->Cell($w[$i],4,$title2[$i],"LRB",1,"C",true);
				 else
				 $pdf->Cell($w[$i],4,$title2[$i],"LRB",0,"C",true);
				 
			 } 
			 
			 $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);
				 //var_dump($explode_arr[4]);die();
				 /* $examname = explode(",",$reg_v['EXAMNAME']);
				 if($curexam != $examname[$j])
				 {
					 $length = $w[6]+$w[5]+$w[0]+$w[1]+$w[2]+$w[3]+$w[4];
					 $pdf->SetFont('Times','B',9);
					 $pdf->Cell($length,4,$examname[$j],'1',1,"C");						
				 }	
				 $curexam = $examname[$j]; */
				 
				 $sem = '';
				 //var_dump($explode_arr[0]);
				 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','',8);
				 $nb=max($nb,NbLines($w[2],$explode_arr[2],''));
				 $yH = 7*$nb;
				 $pdf->Cell($w[0],$yH, $sl_no,"1",0,"C");
				 $pdf->Cell($w[1],$yH,$sem,"1",0,"C");
				 $pdf->Cell($w[2],$yH, $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->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], $yH, $sub_short, 'LRB', 1, 'C');
					 $pdf->SetXY($x+$w[3]+$w[4],$y);
					 $pdf->Cell($w[5], $yH,'', 'LRB', 1, 'C');
					 $pdf->SetXY($x+$w[4]+$w[3]+$w[5],$y);
					 $pdf->Cell($w[6], $yH,'', '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(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');
			 }
			 $img_x=($pdf->getX()+159);;
			 $img_y=$pdf->getY();
			 $img_path=$aobj_context->main_src."/".$aobj_context->mobj_data["db"]."/img/controler_sign.jpg";
			 if(file_exists($img_path)) 
				 $pdf->Image($img_path,$img_x,$img_y,30);
			 if($FUNIVCODE == '027')
			 {
				 $pdf->SetFont('Times','B',10);
				 $pdf->Cell(130,5,'Student Signature	','0',0,'L');
				 $pdf->Cell(55,6,'Registrar(Evaluation)','0',1,'R');
				 $pdf->Ln(2);
				 $x=$pdf->GetX();
				 $y=$pdf->GetY();
				 $pdf->Rect($x,$y,185,25);
				 $pdf->Ln(3);
				 $pdf->SetFont('Times','',9);
				 $pdf->Cell(36,5,'	I certify that, this candidate is eligible to appear for the current examination as per the details mentioned above.','0',1,'L');			
				 $pdf->Ln(07);
				 $pdf->SetFont('Times','',10);
				 $date=date("F j, Y, g:i a");  
				 $pdf->Cell(130,5,"Date: ".$date,'0',0,'L');
				 $pdf->Cell(36,5,'Principal Sign. (with seal)','0',1,'L');
			 }else
			 {
				 $pdf->Ln(9);
				 $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(3);
					 $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');			
					 */
					 $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 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(5);
					 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->Ln(5);
							 $pdf->Cell(36,5,'( Digitally Approved by Principal / Chairman / HOD )','0',0,'L');			
						 }
					 }
				 }
				 $pdf->Cell(0,5,'Signature of the Student','0',1,'R');
				 $date = date("F j, Y, g:i a"); 
				 
				 //$pdf->Cell(160,5,"Date: ",'0',0,'R');
				 
				 $pdf->Cell(0,5,"Date: {$date}",'0',1,'R');

			 }
			 if($FUNIVCODE != '016' && $FUNIVCODE != '008' && $FUNIVCODE != '034' && $FUNIVCODE != '033' && $FUNIVCODE != '017' && $FUNIVCODE != '003' && $FUNIVCODE != '098')
			 {
				 $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();
				 if($FUNIVCODE != '027')
					 $pdf->Rect(02,03,200,280);
			 }$page_cnt++;
			 //var_dump($main_src);
			 $pdf->Output($main_src."halltickets/HT_".$FUNIVCODE."_".$reg_v['FREGNO'].".pdf","I");
			 
	 }  
		
		//$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;
 }
?>