From 0665b7848cac5ebcb48c5a03c9087e5594ced20c Mon Sep 17 00:00:00 2001 From: zero Date: Tue, 3 Apr 2007 09:44:53 +0000 Subject: [PATCH] git-svn-id: http://xe-core.googlecode.com/svn/trunk@932 201d5d3c-b55e-5fd7-737f-ddc643e51545 --- modules/member/conf/module.xml | 1 + modules/member/lang/ko.lang.php | 3 ++ modules/member/member.class.php | 1 + modules/member/member.controller.php | 42 ++++++++++++++++++- modules/member/queries/deleteMessages.xml | 11 +++++ .../default/filter/delete_checked_message.xml | 1 + .../member/skins/default/member_messages.html | 11 +++-- 7 files changed, 63 insertions(+), 7 deletions(-) create mode 100644 modules/member/queries/deleteMessages.xml create mode 100644 modules/member/skins/default/filter/delete_checked_message.xml diff --git a/modules/member/conf/module.xml b/modules/member/conf/module.xml index 82e08734e..549c2bb61 100644 --- a/modules/member/conf/module.xml +++ b/modules/member/conf/module.xml @@ -41,6 +41,7 @@ + diff --git a/modules/member/lang/ko.lang.php b/modules/member/lang/ko.lang.php index 954446ba0..d8d6cbbcf 100644 --- a/modules/member/lang/ko.lang.php +++ b/modules/member/lang/ko.lang.php @@ -73,6 +73,9 @@ $lang->cmd_view_message_box = '쪽지함 보기'; $lang->cmd_store = "보관"; + $lang->msg_cart_is_null = '삭제할 쪽지를 선택해주세요'; + $lang->msg_checked_file_is_deleted = '%d개의 첨부파일이 삭제되었습니다'; + $lang->msg_new_member = '회원 추가'; $lang->msg_update_member = '회원 정보 수정'; $lang->msg_group_is_null = '등록된 그룹이 없습니다'; diff --git a/modules/member/member.class.php b/modules/member/member.class.php index b4c5df11f..13f862551 100644 --- a/modules/member/member.class.php +++ b/modules/member/member.class.php @@ -51,6 +51,7 @@ $oModuleController->insertActionForward('member', 'controller', 'procMemberSendMessage'); $oModuleController->insertActionForward('member', 'controller', 'procMemberDeleteMessage'); + $oModuleController->insertActionForward('member', 'controller', 'procMemberDeleteMessages'); $oModuleController->insertActionForward('member', 'controller', 'procMemberAddFriend'); $oModuleController->insertActionForward('member', 'controller', 'procMemberDeleteFriend'); diff --git a/modules/member/member.controller.php b/modules/member/member.controller.php index 47f1055ae..1537f5399 100644 --- a/modules/member/member.controller.php +++ b/modules/member/member.controller.php @@ -121,7 +121,6 @@ $this->setMessage('success_registed'); } - /** * @brief 쪽지 삭제 **/ @@ -155,6 +154,47 @@ $this->setMessage('success_deleted'); } + /** + * @brief 선택된 다수의 쪽지 삭제 + **/ + function procMemberDeleteMessages() { + // 로그인 정보 체크 + if(!Context::get('is_logged')) return new Object(-1, 'msg_not_logged'); + $logged_info = Context::get('logged_info'); + $member_srl = $logged_info->member_srl; + + // 변수 체크 + $message_srl_list = trim(Context::get('message_srl_list')); + if(!$message_srl_list) return new Object(-1, 'msg_cart_is_null'); + + $message_srl_list = explode('|@|', $message_srl_list); + if(!count($message_srl_list)) return new Object(-1, 'msg_cart_is_null'); + + $message_type = Context::get('message_type'); + if(!$message_type || !in_array($message_type, array('R','S','T'))) return new Object(-1, 'msg_invalid_request'); + + $message_count = count($message_srl_list); + $target = array(); + for($i=0;$i<$message_count;$i++) { + $message_srl = (int)trim($message_srl_list[$i]); + if(!$message_srl) continue; + $target[] = $message_srl; + } + if(!count($target)) return new Object(-1,'msg_cart_is_null'); + + // 삭제 + $args->message_srls = implode(',',$target); + $args->message_type = $message_type; + + if($message_type == 'S') $args->sender_srl = $member_srl; + else $args->receiver_srl = $member_srl; + + $output = executeQuery('member.deleteMessages', $args); + if(!$output->toBool()) return $output; + + $this->setMessage('success_deleted'); + } + /** * @brief 친구 추가 **/ diff --git a/modules/member/queries/deleteMessages.xml b/modules/member/queries/deleteMessages.xml new file mode 100644 index 000000000..579d0c329 --- /dev/null +++ b/modules/member/queries/deleteMessages.xml @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/modules/member/skins/default/filter/delete_checked_message.xml b/modules/member/skins/default/filter/delete_checked_message.xml new file mode 100644 index 000000000..93c79a67c --- /dev/null +++ b/modules/member/skins/default/filter/delete_checked_message.xml @@ -0,0 +1 @@ + diff --git a/modules/member/skins/default/member_messages.html b/modules/member/skins/default/member_messages.html index 7c1114b82..0a13a20fc 100644 --- a/modules/member/skins/default/member_messages.html +++ b/modules/member/skins/default/member_messages.html @@ -1,3 +1,4 @@ + @@ -47,7 +48,8 @@ -
+ +
@@ -66,7 +68,7 @@
- +
{$val->nick_name} ({$val->user_id})
@@ -88,10 +90,7 @@
- - - - +