From 55258ddb54ef32657fe3e458b13584260a89972a Mon Sep 17 00:00:00 2001 From: zero Date: Mon, 7 Jan 2008 11:56:28 +0000 Subject: [PATCH] =?UTF-8?q?#288=20=EA=B4=80=EB=A6=AC=EC=9E=90=20=ED=8E=98?= =?UTF-8?q?=EC=9D=B4=EC=A7=80=EC=97=90=EC=84=9C=20=EA=B4=80=EB=A6=AC?= =?UTF-8?q?=EC=9E=90=EA=B0=80=20=EC=9D=B4=EB=AF=B8=EC=A7=80=EC=9D=B4?= =?UTF-8?q?=EB=A6=84/=EB=A7=88=ED=81=AC/=ED=94=84=EB=A1=9C=ED=95=84=20?= =?UTF-8?q?=EC=82=AC=EC=A7=84=EB=93=B1=EC=9D=84=20=EC=82=AD=EC=A0=9C?= =?UTF-8?q?=ED=95=A0=20=EC=88=98=20=EC=9E=88=EB=8F=84=EB=A1=9D=20=EC=BD=94?= =?UTF-8?q?=EB=93=9C=20=EC=88=98=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit git-svn-id: http://xe-core.googlecode.com/svn/sandbox@3487 201d5d3c-b55e-5fd7-737f-ddc643e51545 --- modules/member/member.controller.php | 31 ++++++++++++------- modules/member/member.model.php | 21 ++++++++----- modules/member/skins/default/member_info.html | 6 ++++ 3 files changed, 39 insertions(+), 19 deletions(-) diff --git a/modules/member/member.controller.php b/modules/member/member.controller.php index 64260fc49..288e97e9d 100644 --- a/modules/member/member.controller.php +++ b/modules/member/member.controller.php @@ -898,13 +898,16 @@ $target_path = sprintf('files/member_extra_info/profile_image/%s/', getNumberingPath($member_srl)); FileHandler::makeDir($target_path); - $target_filename = sprintf('%s%d.gif', $target_path, $member_srl); - // 파일 정보 구함 list($width, $height, $type, $attrs) = @getimagesize($target_file); + if($type == 3) $ext = 'png'; + elseif($type == 2) $ext = 'jpg'; + else $ext = 'gif'; + + $target_filename = sprintf('%s%d.%s', $target_path, $member_srl, $ext); // 지정된 사이즈보다 크거나 gif가 아니면 변환 - if($width > $max_width || $height > $max_height || $type!=1) FileHandler::createImageFile($target_file, $target_filename, $max_width, $max_height, 'gif'); + if($width > $max_width || $height > $max_height || $type!=1) FileHandler::createImageFile($target_file, $target_filename, $max_width, $max_height, $ext); else @copy($target_file, $target_filename); } @@ -965,11 +968,14 @@ $member_srl = Context::get('member_srl'); if(!$member_srl) return new Object(0,'success'); - $oModuleModel = &getModel('module'); - $config = $oModuleModel->getModuleConfig('member'); - if($config->profile_image == 'N') return new Object(0,'success'); - $logged_info = Context::get('logged_info'); + + if($logged_info->is_admin != 'Y') { + $oModuleModel = &getModel('module'); + $config = $oModuleModel->getModuleConfig('member'); + if($config->profile_image == 'N') return new Object(0,'success'); + } + if($logged_info->is_admin == 'Y' || $logged_info->member_srl == $member_srl) { $oMemberModel = &getModel('member'); $profile_image = $oMemberModel->getProfileImage($member_srl); @@ -985,11 +991,14 @@ $member_srl = Context::get('member_srl'); if(!$member_srl) return new Object(0,'success'); - $oModuleModel = &getModel('module'); - $config = $oModuleModel->getModuleConfig('member'); - if($config->image_name == 'N') return new Object(0,'success'); - $logged_info = Context::get('logged_info'); + + if($logged_info->is_admin != 'Y') { + $oModuleModel = &getModel('module'); + $config = $oModuleModel->getModuleConfig('member'); + if($config->image_name == 'N') return new Object(0,'success'); + } + if($logged_info->is_admin == 'Y' || $logged_info->member_srl == $member_srl) { $oMemberModel = &getModel('member'); $image_name = $oMemberModel->getImageName($member_srl); diff --git a/modules/member/member.model.php b/modules/member/member.model.php index c5bc26a15..66f4ee6de 100644 --- a/modules/member/member.model.php +++ b/modules/member/member.model.php @@ -406,14 +406,19 @@ * @brief 프로필 이미지의 정보를 구함 **/ function getProfileImage($member_srl) { - $image_name_file = sprintf('files/member_extra_info/profile_image/%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; - $info->height = $height; - $info->src = Context::getRequestUri().$image_name_file; - $info->file = './'.$image_name_file; - return $info; + $exts = array('gif','jpg','png'); + for($i=0;$i<3;$i++) { + $image_name_file = sprintf('files/member_extra_info/profile_image/%s%d.%s', getNumberingPath($member_srl), $member_srl, $exts[$i]); + if(file_exists($image_name_file)) { + list($width, $height, $type, $attrs) = getimagesize($image_name_file); + $info->width = $width; + $info->height = $height; + $info->src = Context::getRequestUri().$image_name_file; + $info->file = './'.$image_name_file; + return $info; + } + } + return; } /** diff --git a/modules/member/skins/default/member_info.html b/modules/member/skins/default/member_info.html index 98bdd844c..d10bf90d1 100644 --- a/modules/member/skins/default/member_info.html +++ b/modules/member/skins/default/member_info.html @@ -22,6 +22,12 @@ {$lang->nick_name} {htmlspecialchars($member_info->nick_name)} + + + {$lang->profile_image} + profile_image + + {$lang->image_name}