myLogger = \Config\Services::mylogger(); $this->addImgModel = new AddImgModel(); $this->feContentModel = new FEContentModel(); } public function add_image_index() { $this->myLogger->logme('error','Addvertisement Image list function called'); $headerData['tab_name'] = 'Addvertisement Images'; $headerData['page_name'] = 'Addvertisement Images'; $data['addImageList'] = $this->addImgModel->findAll(); // dd($data); echo view('layout/header', $headerData); echo view('add_image_list', $data); echo view('layout/footer'); // $this->loadLayout('client_onboarding', $data); } public function add_advertise_image() { try { $file = $this->request->getFile('advertise_image'); //1) original file name for vaildations $fileName = $file->getClientName(); //original file name for vaildations $existing = $this->addImgModel->where('name', $fileName)->where('is_active', 1)->first(); if($existing){ return $this->respond(['status' => false, 'message' => 'This file has already been uploaded in active state.'], 400); } //skip 1) and use this // $fileName = $file->getRandomName(); // Same Name Multiple time upload means different name if (!$file || !$file->isValid()) { return $this->respond(['status' => false, 'message' => 'No file uploaded or invalid file.'], 400); } $uploadPath = WRITEPATH . 'uploads/advertiseImage/'; if (!is_dir($uploadPath)) mkdir($uploadPath, 0755, true); $file->move($uploadPath, $fileName); $id = $this->request->getPost('add_image_id'); $data = ['name' => $fileName]; if ($id == 0) { $this->addImgModel->insert($data); } else { $this->addImgModel->update($id, $data); } return $this->respond(['status' => true, 'message' => 'Image saved successfully.']); } catch (\Exception $e) { return $this->respond(['status' => false, 'message' => $e->getMessage()], 500); } } public function showAdvertiseImage($fileName) { $filePath = WRITEPATH . 'uploads/advertiseImage/' . $fileName; if (!file_exists($filePath)) { return $this->response->setStatusCode(404, 'File not found'); } $mimeType = mime_content_type($filePath); header('Content-Type: ' . $mimeType); readfile($filePath); exit; } public function getAdvertiseImage($image_id){ $image_data = $this->addImgModel->select('name')->where(['id' => $image_id])->first(); if($image_data){ return $image_data['name']; }else{ return ; } } // Front End Content Area public function frontend_content(){ $data['test'] = $this->feContentModel->findAll(); $headerData['tab_name'] = 'Front-End Content'; $headerData['page_name'] = 'Front-End Content'; echo view('layout/header', $headerData); echo view('frontend_content_list', $data); echo view('layout/footer'); } }