shoppingmallv2 init...

This commit is contained in:
최준흠git config git config --helpgit config --global user.name 최준흠 2023-08-05 15:52:40 +09:00
parent cebc58ea95
commit 60217c00c2
5 changed files with 32 additions and 22 deletions

View File

@ -49,7 +49,7 @@ class BoardController extends AdminController
$this->_viewDatas['fieldDatas']['confirmpassword'] = $this->request->getVar('confirmpassword'); $this->_viewDatas['fieldDatas']['confirmpassword'] = $this->request->getVar('confirmpassword');
break; break;
case 'board_file': case 'board_file':
$this->_viewDatas['fieldDatas'][$field] = $this->single_upload_procedure($field, $entity); $this->_viewDatas['fieldDatas'][$field] = $this->upload_file_procedure($field);
break; break;
default: default:
return parent::getFieldFormData($field, $entity); return parent::getFieldFormData($field, $entity);

View File

@ -46,7 +46,7 @@ class ProductController extends AdminController
{ {
switch ($field) { switch ($field) {
case 'photo': case 'photo':
$this->_viewDatas['fieldDatas'][$field] = $this->single_upload_procedure($field, $entity); $this->_viewDatas['fieldDatas'][$field] = $this->upload_photo_procedure($field);
break; break;
default: default:
return parent::getFieldFormData($field, $entity); return parent::getFieldFormData($field, $entity);

View File

@ -95,8 +95,11 @@ abstract class BaseController extends Controller
} }
//Upload FIle관련 //Upload FIle관련
protected function upload_file_process(UploadedFile $upfile) private function upload_file_process(UploadedFile $upfile)
{ {
if (!is_dir(WRITEPATH . PATHS['UPLOAD'])) {
mkdir(WRITEPATH . PATHS['UPLOAD'], 0640);
}
$fileName = null; $fileName = null;
if ($upfile->isValid() && !$upfile->hasMoved()) { if ($upfile->isValid() && !$upfile->hasMoved()) {
$originName = $upfile->getName(); $originName = $upfile->getName();
@ -106,13 +109,34 @@ abstract class BaseController extends Controller
} }
return $fileName; return $fileName;
} }
protected function single_upload_procedure(string $field, $entity = null) private function upload_image_process(UploadedFile $upfile, $sizeX = 100, $sizeY = 100)
{ {
if ($upfile = $this->request->getFile($field)) { if (!is_dir(FCPATH . '/upload_images')) {
return $this->upload_file_process($upfile); mkdir(FCPATH . '/upload_images', 0640);
} }
//참고:https://www.positronx.io/codeigniter-resize-image-with-image-manipulation-tutorial/
$fileName = null;
if ($upfile->isValid() && !$upfile->hasMoved()) {
$originName = $upfile->getName();
$fileName = $upfile->getRandomName();
$image = \Config\Services::image();
$image->withFile($upfile)
->resize($sizeX, $sizeY, true, 'height')
->save(FCPATH . '/upload_images/' . $fileName);
$upfile->move(FCPATH . '/upload_images/', $fileName . "_original");
$fileName = $originName . DEFAULTS['DELIMITER_FILE'] . $fileName;
}
return $fileName;
} }
protected function multiple_upload_procedure(string $field, $entity = null): array protected function upload_file_procedure(string $field)
{
return $this->upload_file_process($this->request->getFile($field));
}
protected function upload_photo_procedure(string $field, $sizeX = 100, $sizeY = 100)
{
return $this->upload_image_process($this->request->getFile($field), $sizeX, $sizeY);
}
protected function upload_multiple_file_process(string $field): array
{ {
//Multiple파일의경우 html에서는 필드명[]를 넣어야하며 //Multiple파일의경우 html에서는 필드명[]를 넣어야하며
//rule에서 "uploaded[필드명.0]|is_image[필드명]~~" 이런식으로 넣어야함 //rule에서 "uploaded[필드명.0]|is_image[필드명]~~" 이런식으로 넣어야함

View File

@ -50,7 +50,7 @@ class BoardController extends FrontController
$this->_viewDatas['fieldDatas']['confirmpassword'] = $this->request->getVar('confirmpassword'); $this->_viewDatas['fieldDatas']['confirmpassword'] = $this->request->getVar('confirmpassword');
break; break;
case 'board_file': case 'board_file':
$this->_viewDatas['fieldDatas'][$field] = $this->single_upload_procedure($field, $entity); $this->_viewDatas['fieldDatas'][$field] = $this->upload_file_procedure($field);
break; break;
default: default:
return parent::getFieldFormData($field, $entity); return parent::getFieldFormData($field, $entity);

View File

@ -39,20 +39,6 @@ class ProductController extends FrontController
{ {
return parent::getFieldBatchFilters(); return parent::getFieldBatchFilters();
} }
//Field별 Form Datas 처리용
protected function getFieldFormData(string $field, $entity = null): array
{
switch ($field) {
case 'photo':
$this->_viewDatas['fieldDatas'][$field] = $this->single_upload_procedure($field, $entity);
break;
default:
return parent::getFieldFormData($field, $entity);
break;
}
return $this->_viewDatas['fieldDatas'];
}
//View관련 //View관련
protected function view_process($entity) protected function view_process($entity)
{ {