diff --git a/modules/member/conf/module.xml b/modules/member/conf/module.xml
index 3a828bc44..39bb3bd74 100644
--- a/modules/member/conf/module.xml
+++ b/modules/member/conf/module.xml
@@ -33,6 +33,7 @@
+
@@ -82,6 +83,7 @@
+
diff --git a/modules/member/member.admin.controller.php b/modules/member/member.admin.controller.php
index 1920e245c..57e55bceb 100644
--- a/modules/member/member.admin.controller.php
+++ b/modules/member/member.admin.controller.php
@@ -202,6 +202,27 @@
$this->setMessage($msg_code);
}
+ /**
+ * @brief 선택된 회원들을 일괄 삭제
+ */
+ function procMemberAdminDeleteMembers() {
+ $member_srl = Context::get('member_srl');
+ if(!$member_srl) return new Object(-1,'msg_invalid_request');
+ $member_srls = explode(',',$member_srl);
+ $oMemberController = &getController('member');
+ foreach($member_srls as $member)
+ {
+ $output = $oMemberController->deleteMember($member);
+ if(!$output->toBool())
+ {
+ $this->setMessage('failed_deleted');
+ return $output;
+ }
+ }
+
+ $this->setMessage('success_deleted');
+ }
+
/**
* @brief 선택된 회원들의 그룹을 일괄 변경
**/
diff --git a/modules/member/member.admin.view.php b/modules/member/member.admin.view.php
index 453d23cc4..bf03a1cd9 100644
--- a/modules/member/member.admin.view.php
+++ b/modules/member/member.admin.view.php
@@ -155,7 +155,7 @@
* @brief 회원 삭제 화면 출력
**/
function dispMemberAdminDeleteForm() {
- if(!Context::get('member_srl')) return $this->dispContent();
+ if(!Context::get('member_srl')) return $this->dispMemberAdminList();
$this->setTemplateFile('delete_form');
}
@@ -238,5 +238,17 @@
$this->setTemplateFile('manage_member_group');
}
+ /**
+ * @brief 회원 일괄 삭제
+ **/
+ function dispMemberAdminDeleteMembers() {
+ // 선택된 회원 목록을 구함
+ $args->member_srl = trim(Context::get('member_srls'));
+ $output = executeQueryArray('member.getMembers', $args);
+ Context::set('member_list', $output->data);
+
+ $this->setLayoutFile('popup_layout');
+ $this->setTemplateFile('delete_members');
+ }
}
?>
diff --git a/modules/member/tpl/delete_members.html b/modules/member/tpl/delete_members.html
new file mode 100644
index 000000000..8b3e26c2a
--- /dev/null
+++ b/modules/member/tpl/delete_members.html
@@ -0,0 +1,37 @@
+
+
+
+
+
{$lang->cmd_delete} ({$lang->target} : {count($member_list)})
+
+
+
diff --git a/modules/member/tpl/filter/delete_members.xml b/modules/member/tpl/filter/delete_members.xml
new file mode 100644
index 000000000..7b8f69a67
--- /dev/null
+++ b/modules/member/tpl/filter/delete_members.xml
@@ -0,0 +1,8 @@
+
+
+
+
+
+
+
+
diff --git a/modules/member/tpl/js/member_admin.js b/modules/member/tpl/js/member_admin.js
index ca2824af7..d21c133c6 100644
--- a/modules/member/tpl/js/member_admin.js
+++ b/modules/member/tpl/js/member_admin.js
@@ -308,3 +308,31 @@ function completeUpdateMemberGroup(ret_obj) {
alert(ret_obj['message']);
window.close();
}
+
+
+/* 일괄 삭제 */
+function doDeleteMembers() {
+ var fo_obj = xGetElementById("member_fo");
+ var member_srl = new Array();
+
+ if(typeof(fo_obj.cart.length)=='undefined') {
+ if(fo_obj.cart.checked) member_srl[member_srl.length] = fo_obj.cart.value;
+ } else {
+ var length = fo_obj.cart.length;
+ for(var i=0;i