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


Current Path : /var/www/html/suk_discontinued/src/
Upload File :
Current File : /var/www/html/suk_discontinued/src/printexamform.php

<?php
class ExamApplicationform
{
	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_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 $FAPPDATE;
	public $ADMNUM;	
	public $bth_flag;	
	
	
	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  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];
	}	
	
	function getCollegeDetails()
	{
		$page_header_college = "select FCOLLCODE, FCOLLNAME, 
		CONCAT(FCOLLADD1,SPACE(2), FTOWN) AS COLLEGE_ADRS FROM college
		WHERE 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->college_name = $lobj_page_header_college['FCOLLNAME'];
		$this->college_address = $lobj_page_header_college['COLLEGE_ADRS'];
	
	}//and ifnull(col.FDELETED,'F')='F'
	function getStudentDetails()
	{
		$get_student_data= " 	SELECT S.FDEGREE,upper(S.FREGNO) as FREGNO,S.FCOLLCODE,ifnull(S.FPHOTOPATH,'') as photo_path,
		concat(col.FCOLLNAME,',',space(2), col.FTOWN) as CollDetails,
		D.FDESCPN AS COURSE, D.FEXAMDATE,S.FNAME,S.FFATNAME,S.FMOTNAME, FTOTALFEE,
		DATE_FORMAT(S.FDOB,'%d/%m/%Y') AS FDOB,DATE_FORMAT(cs.FRECPTDATE,'%d/%m/%Y') AS FAPPDATE
		FROM student S INNER JOIN degree D ON S.FDEGREE=D.FDEGREE AND S.FEXAMNO=D.FEXAMNO
		INNER JOIN college col ON S.FCOLLCODE=col.FCOLLCODE
		inner join candsum cs on S.fdegree = cs.fdegree
		and S.fregno = cs.fregno
		where S.fcollcode = '{$this->college_code}' and  S.FREGNO = '{$this->registor_no_starts}' 
		AND S.FDEGREE='{$this->degree_code}' 							
		#and cs.flogdate is not null";						
		$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']]['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']]['FAPPDATE'] = $rev['FAPPDATE'];
			$this->std_arr[$rev['FREGNO']]['EXAMDATE'] = $rev['FEXAMDATE'];
			$this->std_arr[$rev['FREGNO']]['CollDetails'] = $rev['CollDetails'];
			$this->std_arr[$rev['FREGNO']]['photo_path'] = $rev['photo_path'];
			$this->std_arr[$rev['FREGNO']]['FTOTALFEE']+= $rev['FTOTALFEE'];
		 } 	
		
	}
	function getSubjectAppearing()
	{
		$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,
		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 '~') AS SUBCODE , 
		GROUP_CONCAT(s.FSUBNAME,' ',s.FSSUBNAME,' [',FSUBSHORT,']' ORDER BY s.FCSUBCODE) AS SUBDECPN,
		ifnull(FRECPTDATE,'') as receipt_date,cs.FTOTALFEE
		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'
		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.FREGNO ='{$this->registor_no_starts}' 
		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();
		foreach($this->lobj_get_subject_appearing as $suk=>$suv)
		{		
			$FREGNO=strtoupper($suv[FREGNO]);
			$this->std_arr[$FREGNO]['SUBCODE']=$suv['SUBCODE'];
			if(!empty($suv['receipt_date']))
			$this->receipt_date_arr[$FREGNO]=$suv['receipt_date'];
		} 		 	
	}	
}

function PrintExamForm($aobj_context)
{
	session_start();
	$college_code = $_SESSION['collcode']; 
	$class_obj = new ExamApplicationform($aobj_context);		
	ini_set("memory_limit",-1);
    ini_set('max_execution_time',3300);
	$roll_no_from =$aobj_context->mobj_data['roll_no_from'];
	$roll_no_to =$aobj_context->mobj_data['roll_no_to'];
	$degree_from =$aobj_context->mobj_data['degree_from'];
	$degree_to =$aobj_context->mobj_data['degree_to'];
	
	$get_data="SELECT FDEGREE,FREGNO FROM candsum
	WHERE FCOLLCODE = '{$college_code}' and FDEGREE between '{$degree_from}' and '{$degree_to}' 
	and FREGNO between '{$roll_no_from}' and '{$roll_no_to}' order by fregno";
	$obj_get_data = $aobj_context->mobj_db->GetAll($get_data);
 	if(preg_match('[^BTH]', $class_obj->degree_code))
	$class_obj->bth_flag=1;		 		  
	$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";
	include($pdf_writer_class);		
	$pdf= new FPDF(); 	

	foreach($obj_get_data as $key=>$val)
	{

		$class_obj->degree_code		= 	$val['FDEGREE'];
		$class_obj->registor_no_starts		= 	$val['FREGNO'];
		$class_obj->registor_no_ends		= 	$val['FREGNO'];		

		$pdf->SetMargins(35,5,35);	
		$pdf->aobj_context =$aobj_context ;
		$pdf->WhichReport = 'AdmissionTicket';
		$pdf->SetFillColor(248, 248 ,255);		
		$pdf->SetFont('Times','',10);
		$pdf->AddPage();
		$class_obj->std_arr = '';
		$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)
		{
			$full_photo_path="";
			$full_photo_path=trim($aobj_context->main_src."/".$reg_v[photo_path]);	
			$FTOTALFEE=$reg_v[FTOTALFEE];
			$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,12,4,22);
			$pdf->Cell(0,4,$class_obj->std_FUNIVNAME.', '.$class_obj->std_FTOWN,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,'EXAM APPLICATION FORM' ,'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->Cell(25,6,' App. No.',0,0,'L'); $pdf->Cell(3,6,' : ',0,0,'L');
				$pdf->Image($full_photo_path,155,$pdf->GetY(),27,27);				
				//$pdf->Cell(120,6,'  '.$class_obj->sub_arr[$p]['ADMNUM'],0,1,'L'); 				  	
			}
			$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,' 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,' App. No.',0,0,'L'); $pdf->Cell(6,6,' :  ',0,0,'L');
			$pdf->SetFont('Times','',11); 
			$pdf->Cell(120,6,''.$class_obj->app_no,0,1,'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); 
			$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");
			$pdf->Cell(20,6,"Remarks","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)
			{
				$explode_arr=explode("->",$ek);
				$nb =0;
				$yH =0;
				$nb=max($nb,NbLines(100,$explode_arr[1],$pdf));
				$yH = 6*$nb;
				
				$sub_short=$explode_arr[4];
				$pdf->Cell(15,$yH, $sl_no,"1",0,"C");
				$pdf->Cell(20,$yH, $explode_arr[0],"1",0,"C");
				//$pdf->Cell(100,$yH,$explode_arr[1],"1",0,"L");
				//Draw the border
				$x=$pdf->GetX();
				$y=$pdf->GetY();
				$pdf->Rect($x,$y,100,$yH);
				$pdf->MultiCell(100,5,$explode_arr[1],0,'L');
				$pdf->SetXY($x+100,$y);				
				$pdf->Cell(20,$yH,"" ,"1",1,"C"); 
				$sl_no++;
					
			}
			/* $pdf->SetFont('Times','B',11); 
			$pdf->ln(10);
			$pdf->Cell(80,6,"Total Fee : Rs {$FTOTALFEE}/","10",1,"L");  */
			$pdf->SetFont('Times','',9); 
			$pdf->Cell(80,6,"Write NA for Not Appearing against Subject Title in Remarks Column","10",1,"L"); 
			$pdf->Ln(10);
			$pdf->SetFont('Times','B',11);
			$pdf->Cell(70,6,"Fee to be paid Rs. : _______________ ","10",1,"L"); 
			$pdf->Ln(10);
			$pdf->SetFont('Times','B',11);
			$pdf->Cell(70,6,"Student's Signature","10",0,"L"); 
			$pdf->Cell(90,6,"Principal's Signature ","10",1,"R"); 
			if($page_cnt!=count($class_obj->std_arr))
			{
				$pdf->AddPage();
			}
			$page_cnt++;
		} 
	} 
	$pdf->Output("report_examapplication.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;
 }
?>