Files
WrenchBoradWeb/www-api/app/Models/UploadManager.php
T
CHIEFSOFT\ameye a304eb1e43 removed file data
2023-12-16 13:50:09 -05:00

285 lines
13 KiB
PHP

<?php
namespace App\Models;
use CodeIgniter\Model;
class UploadManager extends Model
{
public $savePath = WRENCHBOARD_UPLOAD_PATH; //"/opt/wrenchboard/TEST/";
public function reciveUpload($in,$out){
$this->savePath = $in["system_primary_uploads"];
$action = $in["action"];
//DECIDE IF PARENT FOLDERS ARE PRESENT
if (!file_exists($this->savePath.'CONTRACTS')) {
mkdir($this->savePath.'CONTRACTS', 0777, true);
}
if (!file_exists($this->savePath.'PROFILE')) {
mkdir($this->savePath.'PROFILE', 0777, true);
}
if (!file_exists($this->savePath.'FAMILY')) {
mkdir($this->savePath.'FAMILY', 0777, true);
}
if (!file_exists($this->savePath.'JOBS')) {
mkdir($this->savePath.'JOBS', 0777, true);
}
log_message('critical', "UploadManager ********** UPLOAD-> " );
$out= $in;
switch ($action){
case WRENCHBOARD_PICTURE_FAMBANNER:
if ( trim($in["uid"]) == ''){
$out["error_msg"] = "invalid_upload_call";
$out["call_backend"] = false; // something went bad
return -1;
}
// MAKE SURE FOLDER AS PER PROCESS IS AVAILABLE
$thisProfileFolder = $this->savePath.'PROFILE/'.$in["uid"];
if (!file_exists($thisProfileFolder)) {
mkdir($thisProfileFolder, 0777, true);
}
if (!file_exists($thisProfileFolder."/FAMBANNER")) {
mkdir($thisProfileFolder."/FAMBANNER", 0777, true);
}
$myFilesFolder = $thisProfileFolder."/FAMBANNER";
if (file_exists($myFilesFolder)) {
//$tt_d = date('hisjmy');
$out["message"] = "completed";
$pieces = explode(".", $in['file_name']);
$in['profile'] = "profile.".$pieces[1];
$myFilesFolderFileName = $myFilesFolder.'/'. $in['profile'];
$myfile = fopen($myFilesFolderFileName, "w") or die("Unable to open file!");
$file_data = base64_decode($in["file_data"]);
fwrite($myfile, $file_data);
fclose($myfile);
$out["call_backend"] = false; // flag ready to save data entry
$data['uid'] =$in["uid"];
$data['sessionid'] =$in["sessionid"];
$data['profile'] = $in["profile"];
$data['member_id'] = $in["member_id"];
$data['file_section'] = WRENCH_FILE_FAMILYBANNER;
$out['upload_result'] = $this->specififBackendCall(WRENCHBOARD_SAVE_MEDIA,$data);
/*
* public function specififBackendCall($action,$data){
$in["action"] = $action;
$wrenchboard = new \App\Models\BackendModel();
$ret = $wrenchboard->wrenchboard_api($data, $out);
return $ret;
}
*/
}
break;
case WRENCHBOARD_PICTURE_PROFILE:
if ( trim($in["uid"]) == ''){
$out["error_msg"] = "invalid_upload_call";
$out["call_backend"] = false; // something went bad
return -1;
}
// MAKE SURE FOLDER AS PER PROCESS IS AVAILABLE
$thisProfileFolder = $this->savePath.'PROFILE/'.$in["uid"];
if (!file_exists($thisProfileFolder)) {
mkdir($thisProfileFolder, 0777, true);
}
if (!file_exists($thisProfileFolder."/PORTRAIT")) {
mkdir($thisProfileFolder."/PORTRAIT", 0777, true);
}
$myFilesFolder = $thisProfileFolder."/PORTRAIT";
if (file_exists($myFilesFolder)) {
//$tt_d = date('hisjmy');
$out["message"] = "completed";
$pieces = explode(".", $in['file_name']);
$in['profile'] = "profile.".$pieces[1];
$out['profile_file_name'] = $in['profile']; // this is the final filename
$myFilesFolderFileName = $myFilesFolder.'/'. $in['profile'];
$myfile = fopen($myFilesFolderFileName, "w") or die("Unable to open file!");
$file_data = base64_decode($in["file_data"]);
fwrite($myfile, $file_data);
fclose($myfile);
$out["call_backend"] = false; // flag ready to save data entry
$data['uid'] =$in["uid"];
$data['sessionid'] =$in["sessionid"];
$data['profile'] = $in["profile"];
$data['member_id'] = $in["member_id"];
$data['file_section'] = WRENCH_FILE_PROFILE;
$out['upload_result'] = $this->specififBackendCall(WRENCHBOARD_SAVE_MEDIA,$data);
}
break;
case WRENCHBOARD_PICTURE_JOB:
if ( trim($in["uid"]) == ''){
$out["error_msg"] = "invalid_upload_call";
$out["call_backend"] = false; // something went bad
return -1;
}
// MAKE SURE FOLDER AS PER PROCESS IS AVAILABLE
$thisProfileFolder = $this->savePath.'PROFILE/'.$in["uid"];
if (!file_exists($thisProfileFolder)) {
mkdir($thisProfileFolder, 0777, true);
}
if (!file_exists($thisProfileFolder."/JOBS")) {
mkdir($thisProfileFolder."/JOBS", 0777, true);
}
$myFilesFolder = $thisProfileFolder."/JOBS";
if (file_exists($myFilesFolder)) {
//$tt_d = date('hisjmy');
$out["message"] = "completed";
// $pieces = explode(".", $in['file_name']);
$tt_d = date('hisjmy');
$in['profile'] = $tt_d ."-". $in['file_name'];
$myFilesFolderFileName = $myFilesFolder.'/'. $in['profile'];
$myfile = fopen($myFilesFolderFileName, "w") or die("Unable to open file!");
$file_data = base64_decode($in["file_data"]);
fwrite($myfile, $file_data);
fclose($myfile);
$out["call_backend"] = false; // flag ready to save data entry
$data['uid'] =$in["uid"];
$data['job_uid'] =$in["job_uid"];
$data['sessionid'] =$in["sessionid"];
$data['profile'] = $in["profile"];
$data['member_id'] = $in["member_id"];
$data['file_section'] = WRENCH_FILE_JOB;
$out['upload_result'] = $this->specififBackendCall(WRENCHBOARD_SAVE_MEDIA,$data);
}
break;
case WRENCHBOARD_PICTURE_FAMMEMBER:
if ( trim($in["uid"]) == '' && trim($in["family_uid"]) == ''){
$out["error_msg"] = "invalid_upload_call";
$out["call_backend"] = false; // something went bad
return -1;
}
// MAKE SURE FOLDER AS PER PROCESS IS AVAILABLE
$thisProfileFolder = $this->savePath.'PROFILE/'.$in["uid"];
if (!file_exists($thisProfileFolder)) {
mkdir($thisProfileFolder, 0777, true);
}
if (!file_exists($thisProfileFolder."/FAMILY")) {
mkdir($thisProfileFolder."/FAMILY", 0777, true);
}
if (!file_exists($thisProfileFolder."/FAMILY/".$in["family_uid"] )) {
mkdir($thisProfileFolder."/FAMILY/".$in["family_uid"], 0777, true);
}
$myFilesFolder = $thisProfileFolder."/FAMILY/".$in["family_uid"];
if (file_exists($myFilesFolder)) {
$out["message"] = "completed";
$pieces = explode(".", $in['file_name']);
$in['profile'] = "profile." . $pieces[1];
$myFilesFolderFileName = $myFilesFolder . '/' . $in['profile'];
$myfile = fopen($myFilesFolderFileName, "w") or die("Unable to open file!");
$file_data = base64_decode($in["file_data"]);
fwrite($myfile, $file_data);
fclose($myfile);
$out["call_backend"] = false; // flag ready to save data entry
$data['uid'] = $in["uid"];
$data['profile'] = $in["profile"];
$data['family_uid'] =$in["family_uid"];
$data['sessionid'] =$in["sessionid"];
$data['member_id'] = $in["member_id"];
$data['file_section'] = WRENCH_FILE_FAMILY;
$out['upload_result'] = $this->specififBackendCall(WRENCHBOARD_SAVE_MEDIA, $data);
}
break;
case WRENCHBOARD_RESOURCE_MYFILES:
if ( trim($in["uid"]) == ''){
$out["error_msg"] = "invalid_upload_call";
$out["call_backend"] = false; // something went bad
return -1;
}
// MAKE SURE FOLDER AS PER PROCESS IS AVAILABLE
$thisProfileFolder = $this->savePath.'PROFILE/'.$in["uid"];
if (!file_exists($thisProfileFolder)) {
mkdir($thisProfileFolder, 0777, true);
}
if (!file_exists($thisProfileFolder."/MYFILES")) {
mkdir($thisProfileFolder."/MYFILES", 0777, true);
}
$myFilesFolder = $thisProfileFolder."/MYFILES";
if (file_exists($myFilesFolder)) {
$tt_d = date('hisjmy');
$out["message"] = $tt_d."-".$in['file_name'];
$myFilesFolderFileName = $myFilesFolder.'/'.$out["message"];
$myfile = fopen($myFilesFolderFileName, "w") or die("Unable to open file!");
$file_data = base64_decode($in["file_data"]);
fwrite($myfile, $file_data);
fclose($myfile);
$out["call_backend"] = true; // flag ready to save data entry
}
break;
case WRENCHBOARD_CONTRACT_MESSAGE:
// MAKE SURE FOLDER AS PER PROCESS IS AVAILABLE
$thisContactFolder = $this->savePath.'CONTRACTS/'.$in["contract"];
if (!file_exists($thisContactFolder)) {
mkdir($thisContactFolder, 0777, true);
}
if (file_exists($thisContactFolder)) {
$tt_d = date('hisjmy');
$out["message"] = $tt_d."-".$in['file_name'];
$thisContactFolderFileName = $thisContactFolder.'/'.$out["message"];
$myfile = fopen($thisContactFolderFileName, "w") or die("Unable to open file!");
$file_data = base64_decode($in["file_data"]);
fwrite($myfile, $file_data);
fclose($myfile);
$out["call_backend"] = true; // flag ready to save data entry
}
break;
}
return $out;
}
public function specififBackendCall($action,$data){
log_message('critical', "UploadManager specififBackendCall ********** UPLOAD-> " );
$data["action"] = $action;
$data["file_data"] =''; // dont send file data ever
$wrenchboard = new \App\Models\BackendModel();
$ret = $wrenchboard->wrenchboard_api($data, $out);
return $ret;
}
}
/*
*
* 'message' => string 'Lorem Ipsum comes from a latin text written in 45BC by Roman statesman, lawyer, scholar, and philosopher, Marcus Tullius Cicero' (length=127)
'msg_type' => string
* 'member_id' => int 1
'sessionid' => string '9739747631A235F6C316F1BC8C7D823D873B5DAEB7922750AECFE1E887E4D3A9' (length=64)
'uid' => string '3119b744-42ad-4834-bb83-b737588754ca' (length=36)
'file_name' => string 'international-user.svg' (length=22)
'file_size' => int 1421
'file_type' => string 'image/svg+xml' (length=13)
'file_data' => string 'PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA0OCA0OCIgaWQ9IkludGVybmF0aW9uYWxVc2VyIj48cGF0aCBmaWxsPSIjZTZlN2Y5IiBkPSJNMzguNSAzMS4xYzIuMS0xLjEgMy45LTIuNSA1LjQtNC40aC0zLjJjLS42IDEuNi0xLjMgMy4xLTIuMiA0LjR6bS01LjggMS40YzItLjcgMy43LTIuOCA0LjktNS44aC00Ljl2NS44em04LjgtOC42aDQuMmMuOS0xLjggMS41LTMuNyAxLjctNS44aC01LjFjLS4xIDItLjQgNC0uOCA1Ljh6bTIuNC0xNy4zYy0xLjUtMS44LTMuMy0zLjMtNS40LTQuNC44IDEuMiAxLjYgMi43IDIuMiA0LjRoMy4yem0tNS4zIDIuOWgtNS45djUuOGg2LjdjLS4xLTIuMS0uNC00LjEtLjgtNS44em0zLjcgNS44'... (length=1896)
'msg_type' => string 'FILE' (length=4)
'contract' => string '49BWBRW738' (length=10)
'action' => int 14010
/var/www/html/public/wrenchboard/uploads.php:48:null
*/