From cc1a00e923bd380a746584a650a9614920783fef Mon Sep 17 00:00:00 2001 From: Kijin Sung Date: Mon, 30 Nov 2020 21:41:49 +0900 Subject: [PATCH] Fix incorrect title for document pages in integration search module MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit page 모듈의 문서페이지가 통합검색에 노출될 경우 제목 대신 내용의 일부분이 짤려서 표시되는 문제가 있는데, 해당 모듈의 제목을 표시하도록 변경함. --- .../integration_search.model.php | 21 +++++++++++++------ 1 file changed, 15 insertions(+), 6 deletions(-) diff --git a/modules/integration_search/integration_search.model.php b/modules/integration_search/integration_search.model.php index edbfdd987..ded109df7 100644 --- a/modules/integration_search/integration_search.model.php +++ b/modules/integration_search/integration_search.model.php @@ -32,20 +32,20 @@ class integration_searchModel extends module { if(!is_array($module_srls_list)) { - $module_srls_list = $module_srl_list ? explode(',', $module_srls_list) : array(); + $module_srls_list = $module_srls_list ? explode(',', $module_srls_list) : array(); } $module_srls_list = array_map('intval', $module_srls_list); - $accessible_modules = array_keys(getModel('module')->getAccessibleModuleList()); + $accessible_modules = getModel('module')->getAccessibleModuleList(); $args = new stdClass(); if($target == 'exclude') { - $args->module_srl = $accessible_modules; + $args->module_srl = array_keys($accessible_modules); $args->exclude_module_srl = $module_srls_list; } else { - $args->module_srl = array_intersect($module_srls_list, $accessible_modules); + $args->module_srl = array_intersect($module_srls_list, array_keys($accessible_modules)); $args->exclude_module_srl = array(0); // exclude 'trash' } $args->module_srl[] = 0; @@ -62,8 +62,17 @@ class integration_searchModel extends module if(!$args->exclude_module_srl) unset($args->exclude_module_srl); // Get a list of documents - $oDocumentModel = getModel('document'); - return $oDocumentModel->getDocumentList($args); + $document_list = DocumentModel::getDocumentList($args); + + // Replace title with module title if it belongs to a page + foreach ($document_list->data as $document) + { + if (isset($accessible_modules[$document->get('module_srl')]) && $accessible_modules[$document->get('module_srl')]->module === 'page') + { + $document->add('title', $accessible_modules[$document->get('module_srl')]->browser_title); + } + } + return $document_list; } /**