git-svn-id: http://xe-core.googlecode.com/svn/trunk@387 201d5d3c-b55e-5fd7-737f-ddc643e51545

This commit is contained in:
zero 2007-03-13 03:19:47 +00:00
parent c74bdb90fa
commit 9697d8a0e2
6 changed files with 104 additions and 22 deletions

View file

@ -236,7 +236,7 @@
foreach($group as $key => $val) {
$pipe = key($val);
$cond = array_pop($val);
if($buff) $buff .= $pipe.' '.$cond;
if($buff) $buff .= ' '.$pipe.' '.$cond;
else $buff = $cond;
}

View file

@ -154,11 +154,55 @@
// 등록된 member 모듈을 불러와 세팅
$oDB = &DB::getInstance();
// 검색 옵션 정리
$args->is_admin = Context::get('is_admin')=='Y'?'Y':'';
$args->is_denied = Context::get('is_denied')=='Y'?'Y':'';
$args->selected_group_srl = Context::get('selected_group_srl');
$search_target = trim(Context::get('search_target'));
$search_keyword = trim(Context::get('search_keyword'));
if($search_target && $search_keyword) {
switch($search_target) {
case 'user_id' :
if($search_keyword) $search_keyword = str_replace(' ','%',$search_keyword);
$args->s_user_id = $search_keyword;
break;
case 'user_name' :
if($search_keyword) $search_keyword = str_replace(' ','%',$search_keyword);
$args->s_user_name = $search_keyword;
break;
case 'nick_name' :
if($search_keyword) $search_keyword = str_replace(' ','%',$search_keyword);
$args->s_nick_name = $search_keyword;
break;
case 'email_address' :
if($search_keyword) $search_keyword = str_replace(' ','%',$search_keyword);
$args->s_email_address = $search_keyword;
break;
case 'regdate' :
$args->s_regdate = $search_keyword;
break;
case 'last_login' :
$args->s_last_login = $search_keyword;
break;
}
}
// selected_group_srl이 있으면 query id를 변경 (table join때문에)
if($args->selected_group_srl) {
$query_id = 'member.getMemberListWithinGroup';
$args->sort_index = "member.member_srl";
} else {
$query_id = 'member.getMemberList';
$args->sort_index = "member_srl";
}
// 기타 변수들 정리
$args->page = Context::get('page');
$args->list_count = 40;
$args->page_count = 10;
return $oDB->executeQuery('member.getMemberList', $args);
return $oDB->executeQuery($query_id, $args);
}
/**

View file

@ -5,6 +5,18 @@
<columns>
<column name="*" />
</columns>
<conditions>
<condition operation="equal" column="is_admin" var="is_admin" />
<condition operation="equal" column="denied" var="is_denied" pipe="and" />
<group pipe="and">
<condition operation="like" column="user_id" var="s_user_id" />
<condition operation="like" column="user_name" var="s_user_name" pipe="or" />
<condition operation="like" column="nick_name" var="s_nick_name" pipe="or" />
<condition operation="like" column="email_address" var="s_email_address" pipe="or" />
<condition operation="like_prefix" column="regdate" var="s_regdate" pipe="or" />
<condition operation="like_prefix" column="last_login" var="s_last_login" pipe="or" />
</group>
</conditions>
<navigation>
<index var="sort_index" order="desc" />
<list_count var="list_count" default="20" />

View file

@ -0,0 +1,29 @@
<query id="getMemberListWithinGroup" action="select">
<tables>
<table name="member" alias="member"/>
<table name="member_group_member" alias="member_group"/>
</tables>
<columns />
<conditions>
<condition operation="equal" column="member_group.group_srl" var="selected_group_srl" notnull="notnull" />
<condition operation="equal" column="member.member_srl" var="member_group.member_srl" pipe="and" notnull="notnull" />
<group pipe="and">
<condition operation="equal" column="member.is_admin" var="is_admin" />
<condition operation="equal" column="member.denied" var="is_denied" pipe="and" />
</group>
<group pipe="and">
<condition operation="like" column="member.user_id" var="s_user_id" />
<condition operation="like" column="member.user_name" var="s_user_name" pipe="or" />
<condition operation="like" column="member.nick_name" var="s_nick_name" pipe="or" />
<condition operation="like" column="member.email_address" var="s_email_address" pipe="or" />
<condition operation="like_prefix" column="member.regdate" var="s_regdate" pipe="or" />
<condition operation="like_prefix" column="member.last_login" var="s_last_login" pipe="or" />
</group>
</conditions>
<navigation>
<index var="sort_index" order="desc" />
<list_count var="list_count" default="20" />
<page_count var="page_count" default="10" />
<page var="page" default="1" />
</navigation>
</query>

View file

@ -1,8 +1,5 @@
<filter name="search" module="member">
<form>
<node target="search_target" required="true" />
<node target="search_keyword" minlegnth="2" maxlength="40" required="true" />
</form>
<form />
<parameter />
<response callback_func="completeSearch">
<tag name="error" />

View file

@ -60,10 +60,10 @@
<option value="" <!--@if($is_denied!='Y')-->selected="true"<!--@end-->>{$lang->total}</option>
<option value="Y" <!--@if($is_denied=='Y')-->selected="true"<!--@end-->>{$lang->denied}</option>
</select>
<select name="group_srl">
<select name="selected_group_srl">
<option value="0">{$lang->group}</option>
<!--@foreach($group_list as $key => $val)-->
<option value="{$val->group_srl}" <!--@if($group_srl==$val->group_srl)-->selected="true"<!--@end-->>{$val->title}</option>
<option value="{$val->group_srl}" <!--@if($selected_group_srl==$val->group_srl)-->selected="true"<!--@end-->>{$val->title}</option>
<!--@end-->
</select>
</div>
@ -76,7 +76,7 @@
</select>
<input type="text" name="search_keyword" value="{htmlspecialchars($search_keyword)}" />
<input type="submit" value="{$lang->cmd_search}" />
<input type="button" value="{$lang->cmd_cancel}" onclick="location.href='{getUrl('search_target','','search_keyword','','page','1','member_srl','')}'"/>
<input type="button" value="{$lang->cmd_cancel}" onclick="location.href='{getUrl('','module',$module,'mo',$mo,'act',$act)}'"/>
</div>
</form>
</div>