98 lines
3.0 KiB
PHP
98 lines
3.0 KiB
PHP
<?php
|
|
|
|
class photo_zip_creator
|
|
{
|
|
protected $CI = '';
|
|
function __construct()
|
|
{
|
|
//$CI =&get_instance();
|
|
}
|
|
|
|
public function covertImgs2ZIP($pdid,$random_string,$pd_master_details = array(),$regenerate = 0)
|
|
{
|
|
//echo 'this is from daiu';
|
|
$CI =&get_instance();
|
|
$CI->load->model('PD_Model');
|
|
|
|
if(!count($pd_master_details))
|
|
{
|
|
$pd_master_details = $CI->PD_Model->getPDMasterDetails($pdid,$random_string,$pd_master_details);
|
|
}
|
|
|
|
if(!file_exists($CI->external_path.'/pd_reports/'.$pdid))
|
|
{
|
|
mkdir($CI->external_path.'/pd_reports/'.$pdid,0777);
|
|
}
|
|
|
|
|
|
$bucketname = LENDER_BUCKET_NAME_PREFIX.$pd_master_details[0]['fk_lender_id'];
|
|
$main_applicant_name = $pd_master_details[0]['main_applicant'];
|
|
|
|
//get zip url from s3 if any
|
|
|
|
$key = 'pd'.$pdid.'/'.$main_applicant_name.'_'.$pdid.'_'.'pd_images.zip';
|
|
|
|
//$singed_uri = $CI->aws_s3->getSingleObjectInaBucketAsSignedURI($bucketname,$key,'+30 minutes');
|
|
if($pd_master_details[0]['is_zip_created'] && ($regenerate == 0))
|
|
{
|
|
return $singed_uri = $CI->aws_s3->getSingleObjectInaBucketAsSignedURI($bucketname,$key,'+30 minutes');
|
|
|
|
// $response_data['dataStatus'] = true;
|
|
// $response_data['status'] = REST_Controller::HTTP_OK;
|
|
// $response_data['records'] = $singed_uri;
|
|
// $CI->response($response_data,REST_Controller::HTTP_OK);
|
|
}
|
|
else
|
|
{
|
|
|
|
// echo 'here...';
|
|
$all_pd_images = $CI->PD_Model->getSignedPDDocsURL($pdid,null,null,null,null,'report');
|
|
|
|
$all_form_names = $CI->PD_Model->selectCustomRecords(array('pd_form_id','pd_form_name'),array(),PDFORMS);
|
|
$form_name = array();
|
|
foreach($all_form_names as $form)
|
|
{
|
|
$form_name[ $form['pd_form_id'] ] = $form['pd_form_name'];
|
|
}
|
|
//print_r($form_name);die();
|
|
//Generate zip file
|
|
|
|
$CI->load->library('zip');
|
|
|
|
$CI->zip->add_dir('pdimages');
|
|
|
|
foreach($all_pd_images as $image)
|
|
{
|
|
$temp_dir_name = isset($form_name[ $image['fk_form_id'] ]) ? $form_name[ $image['fk_form_id'] ] : 'Common';
|
|
//replace colon with hyphen in doc name
|
|
$doc_name = str_replace(':', '-', $image['pd_document_name']);
|
|
$CI->zip->add_data('pdimages/'.$doc_name,file_get_contents($image['doc_url']));
|
|
}
|
|
|
|
$temp_path = $main_applicant_name.'_'.$pdid.'_'.'pd_images.zip';
|
|
|
|
$CI->zip->archive($CI->external_path.'/pd_reports/'.$pdid.'/'.$temp_path);
|
|
|
|
$bucket_data = array('bucket_name'=>$bucketname,'key'=>$key,'sourcefile'=>($CI->external_path.'/pd_reports/'.$pdid.'/'.$temp_path));
|
|
|
|
$s3result= $CI->aws_s3->uploadFileToS3Bucket($bucket_data);
|
|
//print_r($s3result);
|
|
if(is_object($s3result) && $s3result['ObjectURL'] != '' && $s3result['@metadata']['statusCode'] == 200)
|
|
{
|
|
//$result_array[0]['content']
|
|
$where_condition_array = array("pd_id" => $pdid);
|
|
$temp_array['is_zip_created'] = 1;
|
|
$id = $CI->PD_Model->updateRecords($temp_array,PDTRIGGER,$where_condition_array);
|
|
unlink($CI->external_path.'/pd_reports/'.$pdid.'/'.$temp_path);
|
|
}
|
|
|
|
|
|
|
|
return $singed_uri = $CI->aws_s3->getSingleObjectInaBucketAsSignedURI($bucketname,$key,'+30 minutes');
|
|
|
|
}
|
|
}
|
|
|
|
|
|
}
|
|
?>
|