request = $request = \Config\Services::request(); //define('WRENCHBOARD_UPLOAD_PATH', '/opt/wrenchboard/TEST/'); $this->savePath= '/opt/wrenchboard/TEST/'; } public function index() { $envID = getenv('ENV_ID'); } public function endPointList(){ $endpoints = [ 'getmedia' => ['POST'], ]; return $endpoints; } const WRENCH_FILE_PROFILE = 100; const WRENCH_FILE_MYFILE = 200; const WRENCH_FILE_CONTRACTS = 300; const WRENCH_FILE_FAMILY = 400; const WRENCH_FILE_JOBS = 500; public function apigate(){ log_message('critical', "Media gate Path GATE 001"); $call_backend = false; $uriSegments = explode("/", parse_url($_SERVER['REQUEST_URI'], PHP_URL_PATH)); $segLen = count($uriSegments); if ( $segLen < 4 ){ return; } log_message('critical', "Media gate Path GATE 002 - Segemtn Found"); $sessionId = $uriSegments[$segLen-3]; $fileSection = $uriSegments[$segLen-2]; $fileUID = $uriSegments[$segLen-1]; $supportedSections = ['profile'=>100,'myfile'=>200,'contracts'=>300,'family'=>400,'jobs'=>500]; if (!array_key_exists($fileSection, $supportedSections)) { log_message('critical', "Media gate Path GATE 003 - Fail Segment Types"); $file = FCPATH.'/assets/images/error.png'; header('Content-Type: image/png'); readfile($file); exit(); } else{ // echo "all good"; log_message('critical', "Media gate Path GATE 003 - Pass Segment Types"); } /* * * VERIFY ALL PARAMETERS ARE GOOD #define WRENCH_FILE_PROFILE 100 #define WRENCH_FILE_MYFILE 200 #define WRENCH_FILE_CONTRACTS 300 #define WRENCH_FILE_FAMILY 400 #define WRENCH_FILE_JOBS 500 */ /* if( $this->sessionCheckString($sessionId)== PHP_API_OK ){ log_message('critical', "Media gate Path GATE 004 - Pass Session Test"); } else{ // return 0; for now - no session log_message('critical', "Media gate Path GATE 004 - Fail Session Test"); } */ log_message('critical', "Media gate Path GATE 005 - Ready to File File ****"); // $file = FCPATH.'/assets/images/books.png'; // // header('Content-Type: image/jpeg'); // header('Content-Type: image/png'); // readfile($file); // // exit(); $data = [ 'action' => WRENCHBOARD_GET_MEDIA, 'sessionid' => $sessionId, 'file_section' => $supportedSections[$fileSection], 'file_uid' => $fileUID, 'file_section_no' =>$supportedSections[$fileSection] ]; if ($data["action"] !=''){ $wrenchboard = new \App\Models\BackendModel(); $ret = $wrenchboard->wrenchboard_api($data, $out); $out['internal_return'] = $ret; } $selectedFile=""; switch($supportedSections[$fileSection]){ case WRENCH_FILE_PROFILE: ///opt/wrenchboard/TEST/PROFILE/3119b744-42ad-4834-bb83-b737588754ca/PORTRAIT $selectedFile = $this->savePath.'PROFILE/'.$out["member_uid"]."/PORTRAIT/". $out["saved_file_name"]; break; case WRENCH_FILE_FAMILY: ///opt/wrenchboard/TEST/PROFILE/3119b744-42ad-4834-bb83-b737588754ca/FAMILY/3119b744-42ad-4834-bb83-b737588754ca/ $selectedFile = $this->savePath.'PROFILE/'.$out["member_uid"]."/FAMILY/".$out["family_uid"]."/". $out["saved_file_name"]; break; case WRENCH_FILE_MYFILE: $selectedFile = $this->savePath.'PROFILE/'.$out["member_uid"]."/MYFILES/". $out["saved_file_name"]; break; } // MAKE SURE FOLDER AS PER PROCESS IS AVAILABLE log_message('critical', "wrenchboard_api-CALL MEDIA selectedFile DATA ---> ".$selectedFile ); if ( $out["saved_file_name"] =='' || !file_exists( $selectedFile) ){ log_message('critical', "wrenchboard_api-CALL MEDIA selectedFile DATA ERROR NO FOUND---> ".$selectedFile ); } else { } $file = FCPATH.'/assets/images/books.png'; // header('Content-Type: image/jpeg'); header('Content-Type: image/png'); readfile($file); exit(); // // $file = $selectedFile; // 'books.png'; // // if (file_exists($file)) { // header('Content-Description: File Transfer'); // header('Content-Type: application/octet-stream'); // header('Content-Disposition: attachment; filename="'.basename($file).'"'); // header('Expires: 0'); // header('Cache-Control: must-revalidate'); // header('Pragma: public'); // header('Content-Length: ' . filesize($file)); // readfile($file); // exit; // } } }