diff --git a/modules/member/member.class.php b/modules/member/member.class.php index c15df034c..067522101 100644 --- a/modules/member/member.class.php +++ b/modules/member/member.class.php @@ -103,9 +103,9 @@ $oMemberAdminController->insertDeniedID('http',''); // member 에서 사용할 cache디렉토리 생성 - FileHandler::makeDir('./files/member_extra_info/attach/image_name'); - FileHandler::makeDir('./files/member_extra_info/attach/image_mark'); - FileHandler::makeDir('./files/member_extra_info/attach/signature'); + FileHandler::makeDir('./files/member_extra_info/image_name'); + FileHandler::makeDir('./files/member_extra_info/image_mark'); + FileHandler::makeDir('./files/member_extra_info/signature'); FileHandler::makeDir('./files/member_extra_info/new_message_flags'); return new Object(); @@ -125,6 +125,9 @@ $act = $oModuleModel->getActionForward('dispMemberScrappedDocument'); if(!$act) return true; + // member 디렉토리 체크 (2007. 8. 11 추가) + if(!is_dir("./files/member_extra_info")) return true; + return false; } @@ -132,10 +135,17 @@ * @brief 업데이트 실행 **/ function moduleUpdate() { + // act 추가 $oModuleController = &getController('module'); $oModuleController->insertActionForward('member', 'view', 'dispMemberOwnDocument'); $oModuleController->insertActionForward('member', 'view', 'dispMemberScrappedDocument'); + // member 디렉토리 체크 + FileHandler::makeDir('./files/member_extra_info/image_name'); + FileHandler::makeDir('./files/member_extra_info/image_mark'); + FileHandler::makeDir('./files/member_extra_info/signature'); + FileHandler::makeDir('./files/member_extra_info/new_message_flags'); + return new Object(0, 'success_updated'); } } diff --git a/modules/member/member.controller.php b/modules/member/member.controller.php index 5e96cc98a..1349fcd6f 100644 --- a/modules/member/member.controller.php +++ b/modules/member/member.controller.php @@ -729,8 +729,15 @@ $max_height = $config->image_name_max_height; if(!$max_height) $max_height = "20"; - $target_filename = sprintf('files/attach/member_extra_info/image_name/%s%d.gif', getNumberingPath($member_srl), $member_srl); - FileHandler::createImageFile($target_file, $target_filename, $max_width, $max_height, 'gif'); + // 저장할 위치 구함 + $target_filename = sprintf('files/member_extra_info/image_name/%s%d.gif', getNumberingPath($member_srl), $member_srl); + + // 파일 정보 구함 + list($width, $height, $type, $attrs) = @getimagesize($source_file); + + // 지정된 사이즈보다 크거나 gif가 아니면 변환 + if($width > $max_width || $height > $max_height || $type!=1) FileHandler::createImageFile($target_file, $target_filename, $max_width, $max_height, 'gif'); + else @copy($target_file, $target_filename); } /** @@ -789,7 +796,7 @@ $max_height = $config->image_mark_max_height; if(!$max_height) $max_height = "20"; - $target_filename = sprintf('files/attach/member_extra_info/image_mark/%s%d.gif', getNumberingPath($member_srl), $member_srl); + $target_filename = sprintf('files/member_extra_info/image_mark/%s%d.gif', getNumberingPath($member_srl), $member_srl); FileHandler::createImageFile($target_file, $target_filename, $max_width, $max_height, 'gif'); } @@ -815,7 +822,7 @@ **/ function putSignature($member_srl, $signature) { $signature = removeHackTag($signature); - $path = sprintf('files/attach/member_extra_info/signature/%s/', getNumberingPath($member_srl)); + $path = sprintf('files/member_extra_info/signature/%s/', getNumberingPath($member_srl)); $filename = sprintf('%s%d.signature.php', $path, $member_srl); if(!trim($signature) || trim(strtolower($signature))=='
') return @unlink($filename); @@ -828,7 +835,7 @@ * @brief 서명 파일 삭제 **/ function delSignature($member_srl) { - $filename = sprintf('files/attach/member_extra_info/signature/%s%d.gif', getNumberingPath($member_srl), $member_srl); + $filename = sprintf('files/member_extra_info/signature/%s%d.gif', getNumberingPath($member_srl), $member_srl); @unlink($filename); } diff --git a/modules/member/member.model.php b/modules/member/member.model.php index 0f9e56426..efe91c004 100644 --- a/modules/member/member.model.php +++ b/modules/member/member.model.php @@ -399,7 +399,7 @@ * @brief 이미지이름의 정보를 구함 **/ function getImageName($member_srl) { - $image_name_file = sprintf('files/attach/member_extra_info/image_name/%s%d.gif', getNumberingPath($member_srl), $member_srl); + $image_name_file = sprintf('files/member_extra_info/image_name/%s%d.gif', getNumberingPath($member_srl), $member_srl); if(!file_exists($image_name_file)) return; list($width, $height, $type, $attrs) = getimagesize($image_name_file); $info->width = $width; @@ -413,7 +413,7 @@ * @brief 이미지마크의 정보를 구함 **/ function getImageMark($member_srl) { - $image_mark_file = sprintf('files/attach/member_extra_info/image_mark/%s%d.gif', getNumberingPath($member_srl), $member_srl); + $image_mark_file = sprintf('files/member_extra_info/image_mark/%s%d.gif', getNumberingPath($member_srl), $member_srl); if(!file_exists($image_mark_file)) return; list($width, $height, $type, $attrs) = getimagesize($image_mark_file); $info->width = $width; @@ -427,7 +427,7 @@ * @brief 사용자의 signature를 구함 **/ function getSignature($member_srl) { - $filename = sprintf('files/attach/member_extra_info/signature/%s%d.signature.php', getNumberingPath($member_srl), $member_srl); + $filename = sprintf('files/member_extra_info/signature/%s%d.signature.php', getNumberingPath($member_srl), $member_srl); if(!file_exists($filename)) return ''; $buff = FileHandler::readFile($filename);