#17920829 : 사용자 플래닛 접근 권한 등을 플래닛 홈의 권한 설정을 가져오도록 수정

git-svn-id: http://xe-core.googlecode.com/svn/sandbox@6093 201d5d3c-b55e-5fd7-737f-ddc643e51545
This commit is contained in:
mooo 2009-04-12 14:08:13 +00:00
parent 437b0092f5
commit abf366c474
2 changed files with 29 additions and 5 deletions

View file

@ -90,7 +90,7 @@
Context::set('vid', $output->data->domain, true);
if($mid==$output->data->domain) Context::set('mid',$output->data->mid,true);
}
}
}
}
if(!$output->data) {
@ -172,7 +172,7 @@
if(!is_array($module_info)) $target_module_info = array($module_info);
else $target_module_info = $module_info;
// 모듈 번호를 구함
// 모듈 번호를 구함
$module_srls = array();
foreach($target_module_info as $key => $val) {
$module_srl = $val->module_srl;
@ -988,7 +988,7 @@
}
/**
* @brief 특정 모듈의 추가 변수를 구함
* @brief 특정 모듈의 추가 변수를 구함
* modules 테이블의 기본 정보 이외의
**/
function getModuleExtraVars($module_srl) {
@ -1075,8 +1075,15 @@
// 관리자가 아니면 직접 DB에서 정보를 구해서 권한 설정
if(!$grant->manager) {
$args = null;
$args->module_srl = $module_srl;
$output = executeQueryArray('module.getModuleGrants', $args);
// 플래닛인 경우 planet home의 권한 설정을 가져온다
if ($module_info->module == 'planet') {
$output = executeQueryArray('module.getPlanetGrants', $args);
}
else {
$args->module_srl = $module_srl;
$output = executeQueryArray('module.getModuleGrants', $args);
}
$grant_exists = $granted = array();

View file

@ -0,0 +1,17 @@
<query id="getPlanetGrants" action="select">
<tables>
<table name="modules" alias="modules" />
<table name="module_grants" alias="module_grants" />
</tables>
<columns>
<column name="module_grants.*" />
</columns>
<conditions>
<condition operation="equal" column="modules.module" default="planet" notnull="notnull" />
<condition operation="notnull" column="modules.skin" default="notnull" pipe="and" />
<condition operation="equal" column="modules.module_srl" default="module_grants.module_srl" pipe="and" />
</conditions>
<navigation>
<index var="sort_index" default="module_grants.group_srl" order="asc" />
</navigation>
</query>