mirror of
https://github.com/Lastorder-DC/rhymix.git
synced 2026-05-03 01:03:28 +09:00
virtual site + homepage package 추가. 아직 미완성 버전이므로 서비스 반영하지 말아주세요. 테스트중
git-svn-id: http://xe-core.googlecode.com/svn/sandbox@4871 201d5d3c-b55e-5fd7-737f-ddc643e51545
This commit is contained in:
parent
c5dbc3405c
commit
e745b70268
171 changed files with 5243 additions and 274 deletions
|
|
@ -10,7 +10,6 @@
|
|||
/**
|
||||
* @brief 자주 호출될거라 예상되는 데이터는 내부적으로 가지고 있자...
|
||||
**/
|
||||
var $member_groups = NULL;
|
||||
var $join_form_list = NULL;
|
||||
|
||||
/**
|
||||
|
|
@ -117,7 +116,37 @@
|
|||
**/
|
||||
function getLoggedInfo() {
|
||||
// 로그인 되어 있고 세션 정보를 요청하면 세션 정보를 return
|
||||
if($this->isLogged()) return $_SESSION['logged_info'];
|
||||
if($this->isLogged()) {
|
||||
$logged_info = $_SESSION['logged_info'];
|
||||
|
||||
// site_module_info에 따라서 관리자/ 그룹 목록을 매번 재지정
|
||||
$site_module_info = Context::get('site_module_info');
|
||||
if($site_module_info) {
|
||||
unset($logged_info->group_list);
|
||||
$site_srl = $site_module_info->site_srl;
|
||||
$groups = $this->getMemberGroups($logged_info->member_srl, $site_srl);
|
||||
|
||||
// 만약 현재 접속된 사이트의 그룹이 없으면 기본 그룹을 지정
|
||||
if(!count($groups)) {
|
||||
$default_group = $this->getDefaultGroup($site_module_info->site_srl);
|
||||
$oMemberController = &getController('member');
|
||||
$oMemberController->addMemberToGroup($logged_info->member_srl, $default_group->group_srl, $site_srl);
|
||||
$groups[$default_group->group_srl] = $default_group->title;
|
||||
}
|
||||
|
||||
$logged_info->group_list = $groups;
|
||||
|
||||
$oModuleModel = &getModel('module');
|
||||
if($oModuleModel->isSiteAdmin()) $logged_info->is_site_admin = true;
|
||||
else $logged_info->is_site_admin = false;
|
||||
} else {
|
||||
$logged_info->is_site_admin = false;
|
||||
}
|
||||
|
||||
$_SESSION['logged_info'] = $logged_info;
|
||||
|
||||
return $logged_info;
|
||||
}
|
||||
return NULL;
|
||||
}
|
||||
|
||||
|
|
@ -216,9 +245,11 @@
|
|||
/**
|
||||
* @brief member_srl이 속한 group 목록을 가져옴
|
||||
**/
|
||||
function getMemberGroups($member_srl) {
|
||||
if(!$this->member_groups[$member_srl]) {
|
||||
function getMemberGroups($member_srl, $site_srl = 0) {
|
||||
static $member_groups = array();
|
||||
if(!$member_groups[$member_srl][$site_srl]) {
|
||||
$args->member_srl = $member_srl;
|
||||
$args->site_srl = $site_srl;
|
||||
$output = executeQuery('member.getMemberGroups', $args);
|
||||
if(!$output->data) return array();
|
||||
|
||||
|
|
@ -228,16 +259,33 @@
|
|||
foreach($group_list as $group) {
|
||||
$result[$group->group_srl] = $group->title;
|
||||
}
|
||||
$this->member_groups[$member_srl] = $result;
|
||||
$member_groups[$member_srl][$site_srl] = $result;
|
||||
}
|
||||
return $this->member_groups[$member_srl];
|
||||
return $member_groups[$member_srl][$site_srl];
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief member_srl들이 속한 group 목록을 가져옴
|
||||
**/
|
||||
function getMembersGroups($member_srls, $site_srl = 0) {
|
||||
$args->member_srls = implode(',',$member_srls);
|
||||
$args->site_srl = $site_srl;
|
||||
$output = executeQuery('member.getMembersGroups', $args);
|
||||
if(!$output->data) return array();
|
||||
|
||||
$result = array();
|
||||
foreach($output->data as $key=>$val) {
|
||||
$result[$val->member_srl][] = $val->title;
|
||||
}
|
||||
return $result;
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief 기본 그룹을 가져옴
|
||||
**/
|
||||
function getDefaultGroup() {
|
||||
$output = executeQuery('member.getDefaultGroup');
|
||||
function getDefaultGroup($site_srl = 0) {
|
||||
$args->site_srl = $site_srl;
|
||||
$output = executeQuery('member.getDefaultGroup', $args);
|
||||
return $output->data;
|
||||
}
|
||||
|
||||
|
|
@ -261,8 +309,9 @@
|
|||
/**
|
||||
* @brief 그룹 목록을 가져옴
|
||||
**/
|
||||
function getGroups() {
|
||||
$output = executeQuery('member.getGroups');
|
||||
function getGroups($site_srl = 0) {
|
||||
$args->site_srl = $site_srl;
|
||||
$output = executeQuery('member.getGroups', $args);
|
||||
if(!$output->data) return;
|
||||
|
||||
$group_list = $output->data;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue