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


Current Path : /proc/thread-self/root/var/www/html/reva/Report_details03.05.2016/
Upload File :
Current File : //proc/thread-self/root/var/www/html/reva/Report_details03.05.2016/report_admission_ticket.php

<?php
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_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;	
	
	
	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 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}' AND c.FDELETED='F'";
		$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'];
	
	}//and ifnull(col.FDELETED,'F')='F'
	function getStudentDetails()
	{
		$get_student_data= " 	SELECT S.FDEGREE,S.FREGNO,S.FCOLLCODE,ifnull(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,
								col.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 AND S.FEXAMNO=D.FEXAMNO
								INNER JOIN college col ON S.FCOLLCODE=col.FCOLLCODE
								LEFT JOIN college ec ON ec.FCOLLCODE=col.FEXAMCNTR
								inner join candsum cs on S.fdegree = cs.fdegree
								and S.fregno = cs.fregno
								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 S.FCOLLCODE='{$this->college_code}'
								and cs.frecptdate is not null and ifnull(colldeg.fhtstop,'F') <> 'T'
							";						
							 //echo $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']]['fstudid'] = $rev['fstudid'];
			$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']]['FEXAMCNTR'] = $rev['FEXAMCNTR'];
			$this->std_arr[$rev['FREGNO']]['exam_center_name'] = $rev['exam_center_name'];
			$this->std_arr[$rev['FREGNO']]['FCOLLCODE'] = $rev['FCOLLCODE'];
		 } 	
		 
	}
	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,'->',if(date_format(s.FDOE,'%d/%m/%Y')!='00/00/0000',date_format(s.FDOE,'%d/%m/%Y'),''),'->',ifnull(r.FDESCPN,''),'->',ifnull(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 ,ifnull(FSESSION,'') as sub_exsession ,
									if(date_format(FDOE,'%d/%m/%Y')!='00/00/0000',date_format(FDOE,'%d/%m/%Y'),'') as sub_exdate
									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
									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)
									left outer join reason r
									on
									r.FREASONCD = s.FSESSION 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";
			//echo $get_subject_appearing;		die();
									
 	    $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)
{
	$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))
	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";

	include($pdf_writer_class);		
	$pdf= new FPDF(); 	
	$pdf->SetMargins(15,5,15);	
	$pdf->aobj_context =$aobj_context ;
	$pdf->WhichReport = 'AdmissionTicket';
	$pdf->SetFillColor(248, 248 ,255);		
	$pdf->SetFont('Times','',10);
	$pdf->AddPage();
	
	$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)
	{
	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);
			 
				$img_path=$aobj_context->main_src."/img/report_uni_logo.jpg";
				if(file_exists($img_path)) 
				$pdf->Image($img_path,80,4,52);
				$pdf->Ln(14);
				$pdf->SetFont('Times','',12);	
			 $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','',12);
			 $pdf->Ln(1);
			 $pdf->Cell(0,5,$reg_v['EXAMDATE'].' EXAMINATION ' ,'0',1,'C'); 
			 $pdf->SetFont('Times','',10);
			$pdf->Ln(6);
			$pdf->SetFont('Times','',10);	
			$stud_regphotopath =trim($aobj_context->main_src."/student_photos/reva/".$reg_v['FREGNO'].'.jpg');
				
			 	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,165,$pdf->GetY(),27,27);				
					//$pdf->Cell(120,6,'  '.$class_obj->sub_arr[$p]['ADMNUM'],0,1,'L'); 				  	
				}
				else if(file_exists($stud_regphotopath))
				{
					$pdf->Image($stud_regphotopath,165,$pdf->GetY(),27,27);
				}
		
				$pdf->SetFont('Times','B',9); 
				$pdf->Cell(25,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); 
				$pdf->Cell(25,6,' Faculty',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->Cell(120,6,'  '.$reg_v['CollDetails'],0,1,'L'); 
				$pdf->SetFont('Times','B',9); 
				$pdf->Cell(25,6,' 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); 
				$pdf->Cell(25,6,' SRN',0,0,'L'); $pdf->Cell(3,6,' :  ',0,0,'L');
				$pdf->SetFont('Times','B',9); 
				$pdf->Cell(120,6,''.$reg_v['FREGNO'],0,1,'L'); 
				$pdf->SetFont('Times','B',9); 
				$pdf->Cell(25,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',9);
			$pdf->Cell(0,5,'Subject Appearing',0,1,'C');				
			$pdf->Cell(8,6,"Sl.","LRT",0,"C");
			$pdf->Cell(15,6,"Sub","LRT",0,"C");
			$pdf->Cell(70,6,"Subject","LRT",0,"C");
			$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(30,6,"Inv. Sign","LRT",1,"C");				
			$pdf->Cell(8,6,"No.","LRB",0,"C");
			$pdf->Cell(15,6,"Code","LRB",0,"C");
			$pdf->Cell(70,6,"","LRB",0,"C");
			$pdf->Cell(15,6,"","LRB",0,"C");
			$pdf->Cell(16,6,"","LRB",0,"C");
			$pdf->Cell(29,6,"","LRB",0,"C");
			$pdf->Cell(30,6,"","LRB",1,"C");
			
			$pdf->SetFont('Times','',9);	
			
		 	  
				$sub_arr=$reg_v[SUBCODE];
				
				$subj_arr=explode("~",$sub_arr);
				$sl_no=1;
				foreach($subj_arr as $ek)
				{
					$explode_arr=explode("->",$ek);
					$nbH =0;
					$nbH=max($nbH,NbLines(70,$explode_arr[1],$pdf));
					$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];
					$pdf->Rect($x,$y,70,$yHD);
					$pdf->MultiCell(70,5,$explode_arr[1],0,'L');
					$pdf->SetXY($x+70,$y);
					$pdf->Cell(15,$yHD,$sub_short,"1",0,"C"); 
					$pdf->Cell(16,$yHD,$explode_arr[3],"1",0,"C"); 
					$pdf->Cell(29,$yHD,$explode_arr[4],"1",0,"C"); 
					$pdf->Cell(30,$yHD,'',"1",1,"C"); 
								 				 
					$sl_no++;
				}
			
     			
				 
			$pdf->Cell(25,6,'Note : 1. Candidate is advised to check the Subject Code before answering.','0',0,'L');
			$pdf->Ln(4);
			$pdf->Cell(25,6,'           2. Supervisor should verify the Subject code before signing.','0',0,'L');
			$pdf->Ln(4);
			$pdf->Cell(25,6,'           3. Before answering, please read the instructions given in the Answer Booklet.','0',0,'L');
			$pdf->Ln(4);
			$pdf->Cell(25,6,'           4. Time table printed in the Admission ticket is tentative and is given for the information purpose only.','0',0,'L');
			$pdf->Ln(18);
			$img_x=($pdf->getX()+130);;
			$img_y=$pdf->getY()-13;
			$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(130,5,'	','0',0,'L');
			$pdf->Cell(36,5,'Registrar (Evaluation)','0',1,'L');
			
//			$pdf->Cell(90,5,'','0',0,'L');
//			$pdf->Cell(36,6,'Registrar(Evaluation)','0',0,'L');
			$pdf->Ln(5);
			$pdf->Cell(110,5,'Signature of the Candidate','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(110,5,'','0',0,'L');
			$pdf->Cell(36,5,'current examination as per the details mentioned above','0',1,'L');			
			$pdf->Ln(10);
			$date=date("F j, Y, g:i a");  
			$pdf->Cell(130,5,"Date: ".$date,'0',0,'L');
			$pdf->Cell(36,5,'HOS Signature with seal','0',1,'L');
			$pdf->Ln(10);
			$pdf->Ln(8);
			if($page_cnt!=count($class_obj->std_arr))
			{
			$pdf->AddPage();
			}$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;
 }
?>