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.119.124.204
<?php
session_start();
function replaceChars($name)
{
$spl_char = array("*","/","~","!","@","#","$","%","^","&",":",";","?","/","\\","_","-","'"," ","");
$link_name = strtolower(str_replace($spl_char,"_",$name));
return str_ireplace("__","_",$link_name);
}
function viewStudInfoToupload($aobj_context)
{
session_start();
$aobj_context->mobj_db->SetFetchMode(ADODB_FETCH_ASSOC);
$college_code = $_SESSION['collcode'];
$degree_code = $aobj_context->mobj_data['degreeCode'];
$_SESSION['degree_codeImgUp']=$degree_code;
$RegNo_start = substr("00000000".$aobj_context->mobj_data["regStart"],-8);
$RegNo_end = substr("ZZZZZZZZ".$aobj_context->mobj_data["regEnd"],-8);
if(strtolower($college_code) === 'lsys')
{
$get_studentInfo = "select * from student where fdegree ='{$degree_code}' and fregno between '{$RegNo_start}' and '{$RegNo_end}' limit 2000";
}
else
{
$get_studentInfo = "select * from student where fcollcode = '{$college_code}' and fdegree ='{$degree_code}' and fregno between '{$RegNo_start}' and '{$RegNo_end}'";
}
$lobj_get_studentInfo = $aobj_context->mobj_db->getAll($get_studentInfo);
$get_currentDate="select DATE_FORMAT(NOW(),'%Y%m%d%H%i%s') as currentDate";
$lobj_get_currentDate=$aobj_context->mobj_db->getRow($get_currentDate);
$currentDate = $lobj_get_currentDate[currentDate];
if($lobj_get_studentInfo)
{
$e_data.="<table align = 'center' width='100%' cellspacing='0' cellpadding='1' border='0' >";
$e_data.="<th align='left' colspan='6' class='ui-jqgrid-titlebar ui-widget-header ui-corner-tl ui-corner-tr ui-helper' style='font-size:12px; padding-left:6px; height:24px;'>Photo Upload List</th>";
$e_data.="<tr class='ui-state-default ui-jqgrid-hdiv'>";
$e_data.="<td align='center' style='width:55px; font-size:12px; border-left:1px solid #C5DBEC;border-right:1px solid #C5DBEC; border-bottom:1px solid #C5DBEC;'>Sl.No.</td>";
$e_data.="<td align='center' style='width:105px; font-size:12px; border-right:1px solid #C5DBEC; border-bottom:1px solid #C5DBEC;'>Register No.</td>";
$e_data.="<td align='center' style='width:205px; font-size:12px; border-right:1px solid #C5DBEC; border-bottom:1px solid #C5DBEC;'>Name</td>";
$e_data.="<td align='center' style='width:105px; font-size:12px; border-right:1px solid #C5DBEC; border-bottom:1px solid #C5DBEC;'>Degree Code</td>";
$e_data.="<td align='center' style='width:155px; font-size:12px; border-right:1px solid #C5DBEC; border-bottom:1px solid #C5DBEC;'>Photo</td>";
$e_data.="</tr>";
$element_id=0;
$k=0;
$m=0;
//var_dump($lobj_get_moudle_names); die();
$counter_degree = 1;
foreach($lobj_get_studentInfo as $key=>$value)
{
$image_src='';
$photo_path=$value[FPHOTOPATH];
if(!empty($photo_path) && file_exists($photo_path))
{
$image_src=$photo_path.'?'.$currentDate;
}
else
{
$image_src="images/default_photo.jpg";
}
$f_regno = $value[FREGNO];
//$fileId='stud_uploadfile_'.$element_id;
$e_data.="<tr class='ui-widget-content jqgrow'>";
$e_data.="<td class='tbl_row_new' style='border-left:1px solid #C5DBEC; border-right:1px solid #C5DBEC; padding:2px; font-size:12px;text-align:center; ' id='it_cnt_{$element_id}' >{$counter_degree}</td>";
$e_data.="<td class='tbl_row_new' style='border-right:1px solid #C5DBEC; padding:2px; font-size:12px;text-align:center; ' id='it_fregno_{$element_id}' >{$value[FREGNO]}</td>";
$e_data.="<td class='tbl_row_new' style=' border-right:1px solid #C5DBEC; padding:2px; font-size:12px; ' id='it_candtname_{$element_id}' >{$value[FNAME]}</td>";
$e_data.="<td class='tbl_row_new' style='border-right:1px solid #C5DBEC; padding:2px; font-size:12px; text-align:center;' id='it_dname_{$element_id}' >{$value[FDEGREE]}</td>";
$e_data.="<td class='tbl_row_new' style='border-right:1px solid #C5DBEC; padding:2px; font-size:12px;height:120px;width:200px;' id='it_mname_{$element_id}' ><span style='margin-left:20px;background:#EEEEE;'><img src='{$image_src}' id='student_entry_photo_{$element_id}' class='loading' width='100px' height='70px'/></span><div><span ><input type='hidden' id='hd_regno_{$element_id}' value='{$f_regno}'><input type='file' id='stud_uploadfile_{$element_id}' name='stud_uploadfileName[]' onchange='UserSelectedPhotoDisplay(this,{$element_id});' style='width:75px'></sapn><span style='padding:5px 5px;'><span onclick='UserSelectedPhotoUpload({$element_id})' style='color:#fff;font-size:14px;width:70px;padding:2px 5px;background-color:green;border:solid 1px #0000;cursor:default'>Upload</span></span></div></td>";
$e_data.="</tr>";
++$element_id;
$m++;
$counter_degree++;
}
$e_data.="</table>";
$arr['total_count']= $m;
$arr['html']=$e_data;
$arr['error']=0;
echo $aobj_context->mobj_output->ToJSONEnvelope($arr,0,"success");
}
else
{
$error_data = 'No Records Found For a given Reg / Roll No ';
echo $aobj_context->mobj_output->ToJSONEnvelope($error_data,-1,"failure");
return;
}
}
function UserSelectedPhotoDisplay($aobj_context)
{
$aobj_context->mobj_db->SetFetchMode(ADODB_FETCH_ASSOC);
session_start();
$collcode = $_SESSION['collcode'];
$fileId = $aobj_context->mobj_data['index'];
$img_regno = $aobj_context->mobj_data['regno'];
$file_name=replaceChars(basename($_FILES['stud_uploadfileName']['name'][$fileId]));
$path_arr=pathinfo($_FILES['stud_uploadfileName']['tmp_name'][$fileId]);
$file_ext=$path_arr['path'];
$temp_path=$aobj_context->main_src."/student_photos/temp";
if(!file_exists($temp_path))
{
mkdir($temp_path);
}
$file_path="/{$collcode}_{$img_regno}_{$file_name}";
$temp_path.=$file_path;
if(isset($_FILES['stud_uploadfileName']['name'][$fileId]) && ($_FILES['stud_uploadfileName']['name'][$fileId] != ''))
{
$size=($_FILES['stud_uploadfileName']['size'][$fileId]/1024);
if($size>1024)
{
$data="Please Upload the Photo of size less than 1 MB";
echo $aobj_context->mobj_output->ToJSONEnvelope($data,-2,"success");
return;
}
if(move_uploaded_file($_FILES['stud_uploadfileName']['tmp_name'][$fileId],$temp_path))
{
$path="student_photos/temp/{$file_path}";
$arr['path']=$path;
$arr['index']=$fileId;
echo $aobj_context->mobj_output->ToJSONEnvelope($arr,0,"success");
return;
}
}
$data="Please Upload the Photo";
echo $aobj_context->mobj_output->ToJSONEnvelope($data,-1,"failure");
return;
}
function saveUserSelectedPhotoUpload($aobj_context)
{
$aobj_context->mobj_db->SetFetchMode(ADODB_FETCH_ASSOC);
session_start();
$degree_code = $_SESSION['degree_codeImgUp'];
$college_code = $_SESSION['collcode'];
$img_index = $aobj_context->mobj_data['index'];
//$filePath = $aobj_context->mobj_data['filepath'];
$regno_index = $aobj_context->mobj_data['regno'];
$college_path=$aobj_context->main_src."/student_photos/{$college_code}";
$folder_path=$aobj_context->main_src."/student_photos/{$college_code}/".replaceChars(strtolower($degree_code));
$file_name=basename($_FILES['stud_uploadfileName']['name'][$img_index]);
$ext = pathinfo($file_name, PATHINFO_EXTENSION);
$full_file_path= $folder_path.'/'.$regno_index.".".$ext;
$image_path="student_photos/{$college_code}/".replaceChars(strtolower($degree_code)).'/'.$regno_index.".".$ext;
$photo_path="";
//student_entry_upload
if(!file_exists($college_path))
{
mkdir($college_path);
}
if(!file_exists($folder_path))
{
mkdir($folder_path);
}
if(isset($_FILES['stud_uploadfileName']['name'][$img_index]) && ($_FILES['stud_uploadfileName']['name'][$img_index] != ''))
{
if(move_uploaded_file($_FILES['stud_uploadfileName']['tmp_name'][$img_index],$full_file_path))
{
$update_qry = "update student set FPHOTOPATH='{$image_path}' where FREGNO='{$regno_index}' and FDEGREE='{$degree_code}' and FCOLLCODE='{$college_code}'";
$lobj_rs = $aobj_context->mobj_db->Execute($update_qry);
}
}
if($lobj_rs)
{
$arr='Photo Uploaded Successfully';
echo $aobj_context->mobj_output->ToJSONEnvelope($arr,0,"success");
}
else
{
$arr='Photo Uploaded Failed';
echo $aobj_context->mobj_output->ToJSONEnvelope($arr,-1,"failure");
}
}
function downloadAllStudentPhotos($aobj_context)
{
$aobj_context->mobj_db->SetFetchMode(ADODB_FETCH_ASSOC);
$college_code = $_SESSION['collcode'];
$degree_code = $aobj_context->mobj_data['degreeCode'];
$_SESSION['degree_codeImgUp']=$degree_code;
$RegNo_start = substr("00000000".$aobj_context->mobj_data["regStart"],-8);
$RegNo_end = substr("ZZZZZZZZ".$aobj_context->mobj_data["regEnd"],-8);
$desDirectry = $aobj_context->main_src."/tmpPhotos/".$degree_code.'/';
$get_studentInfo = "select * from student where fdegree ='{$degree_code}' and fregno between '{$RegNo_start}' and '{$RegNo_end}'";
$lobj_get_studentInfo = $aobj_context->mobj_db->getAll($get_studentInfo);
$photoDownloadCnt=0;
foreach($lobj_get_studentInfo as $key=>$value)
{
$fURI ='';
$photo_path=$value[FPHOTOPATH];
$file_name=replaceChars(basename($photo_path));
if(!empty($photo_path) && file_exists($photo_path))
{
$fURI=$photo_path;
}
if(!is_dir($desDirectry))
{
mkdir($desDirectry);
chmod($desDirectry,0777);
}
$regno_index = $value[FREGNO];
$ext = pathinfo($file_name, PATHINFO_EXTENSION);
$full_file_path= $desDirectry.$regno_index.".".$ext;
if (file_exists($fURI))
{
$target_file=$full_file_path;// Path to a local file
if ( file_exists( $target_file ) ) {
$ifmodhdr = 'If-Modified-Since: '.date( "r", filemtime( $target_file ) )."\r\n";
}
else {
$ifmodhdr = '';
}
// set request header for GET with referrer for modified files, that follows redirects
$arrRequestHeaders = array(
'http'=>array(
'method' =>'GET',
'protocol_version' =>1.1,
'follow_location' =>1,
'header'=> "User-Agent: Anamera-Feed/1.0\r\n" .
"Referer: $source\r\n" .
$ifmodhdr
)
);
$rc = copy( $fURI, $target_file, stream_context_create($arrRequestHeaders) );
// HTTP request completed, preserve system error, if any
if( $rc )
{
$photoDownloadCnt++;
if ( fclose( $rc ) )
{
unset( $err );
}
else
{
$err = error_get_last();
}
}
else
{
$err = error_get_last();
}
}
}
$the_folder = $desDirectry;
$zip_file_name = "tmpPhotos/"."{$degree_code}.zip";
$download_file= true;
//$delete_file_after_download= true; doesnt work!!
$za = new FlxZipArchive;
$res = $za->open($zip_file_name, ZipArchive::CREATE);
if($res === TRUE)
{
$za->addDir($the_folder, basename($the_folder));
$za->close();
}
else { echo 'Could not create a zip archive';}
if ($download_file)
{
ob_get_clean();
header("Pragma: public");
header("Expires: 0");
header("Cache-Control: must-revalidate, post-check=0, pre-check=0");
header("Cache-Control: private", false);
header("Content-Type: application/zip");
header("Content-Disposition: attachment; filename=" . basename($zip_file_name) . ";" );
header("Content-Transfer-Encoding: binary");
header("Content-Length: " . filesize($zip_file_name));
readfile($zip_file_name);
//deletes file when its done...
//if ($delete_file_after_download)
//{ unlink($zip_file_name); }
}
}
class FlxZipArchive extends ZipArchive {
//$location=$aobj_context->main_src;
public function addDir($location, $name) {
//$this->addEmptyDir($name);
$this->addDirDo($location, $name);
} // EO addDir;
private function addDirDo($location, $name) {
$name .= '/';
$location .= '/';
// Read all Files in Dir
$dir = opendir ($location);
while ($file = readdir($dir))
{
if ($file == '.' || $file == '..') continue;
// Rekursiv, If dir: FlxZipArchive::addDir(), else ::File();
$do = (filetype( $location . $file) == 'dir') ? 'addDir' : 'addFile';
$this->$do($location . $file, $name . $file);
}
} // EO addDirDo();
}
?>
|