문서의 검색, 확장변수와 관련된 비효율적인 코드 정리

- setToAllDocumentExtraVars() 최적화
- 확장변수(-1, -2)를 이용한 문서 다국어 기능 관련 버그 수정 및 개선
- getDocumentList() 최적화 (비효율적인 코드 대거 삭제)
- _setSortIndex(), _setSearchOption() 최적화 (확장 변수 관련 쿼리들 정리)
- 권한자가 아니라면 공개글만 검색되도록 개선 (검색 옵션과 상관없이)
--- 문서 검색(제목+내용,내용,댓글)시 권한자도 비밀글을 검색할 수 없었던 문제 수정
- 'NOTICE Undefined variable' 조차 발생되지 않도록 getGrant() 수정
- '(포인트가 부족한 경우) 글 열람 금지' 옵션 사용시 본문 뿐만 아니라 확장 변수도 볼 수 없도록 숨김
- 기타 버그 수정 (많이 잡은 것 같은 데 정확히 기억안남ㅠ)
This commit is contained in:
conory 2018-06-28 19:59:21 +09:00
parent 6c28f5ac5a
commit 9fb23bd3dd
14 changed files with 544 additions and 603 deletions

View file

@ -145,18 +145,30 @@ class documentItem extends BaseObject
$this->lang_code = $attribute->lang_code;
$this->adds($attribute);
// Tags
// set XE_DOCUMENT_LIST
$GLOBALS['XE_DOCUMENT_LIST'][$this->document_srl] = $this;
// set tags
if($this->get('tags'))
{
$this->add('tag_list', $this->getTags());
}
// set extra vars
if($load_extra_vars)
{
getModel('document')->setToAllDocumentExtraVars();
}
$GLOBALS['XE_DOCUMENT_LIST'][$this->document_srl] = $this;
// set content in user language
if(isset($GLOBALS['RX_DOCUMENT_LANG'][$this->document_srl]['title']))
{
$this->add('title', $GLOBALS['RX_DOCUMENT_LANG'][$this->document_srl]['title']);
}
if(isset($GLOBALS['RX_DOCUMENT_LANG'][$this->document_srl]['content']))
{
$this->add('content', $GLOBALS['RX_DOCUMENT_LANG'][$this->document_srl]['content']);
}
}
function isExists()
@ -824,11 +836,6 @@ class documentItem extends BaseObject
}
$extra_vars = $this->getExtraVars();
if(!is_array($extra_vars))
{
return array();
}
foreach($extra_vars as $idx => $key)
{
$this->extra_eids[$key->eid] = $key;