Index: arms/css/searchEngine.css
===================================================================
diff -u -r043164e1fffeabc4c5c41360acc61dcecb07e0a9 -r41640882c735930926fe551d4bef62e4ab8cd7e2
--- arms/css/searchEngine.css (.../searchEngine.css) (revision 043164e1fffeabc4c5c41360acc61dcecb07e0a9)
+++ arms/css/searchEngine.css (.../searchEngine.css) (revision 41640882c735930926fe551d4bef62e4ab8cd7e2)
@@ -79,4 +79,12 @@
.modal-content .modal-body .hljs{
background: rgba(51,51,51,0.425) !important;
+}
+
+.modal-content .modal-body .hljs em{
+ font-weight: bold;
+ color: #E49400;
+ text-decoration: underline;
+ font-style: normal;
+ background-color: #00008b;
}
\ No newline at end of file
Index: arms/html/jiraConnection/content-container.html
===================================================================
diff -u -r1a8211415ed1c3e2edd1f002d251d4d2cd9e96e1 -r41640882c735930926fe551d4bef62e4ab8cd7e2
--- arms/html/jiraConnection/content-container.html (.../content-container.html) (revision 1a8211415ed1c3e2edd1f002d251d4d2cd9e96e1)
+++ arms/html/jiraConnection/content-container.html (.../content-container.html) (revision 41640882c735930926fe551d4bef62e4ab8cd7e2)
@@ -74,7 +74,7 @@
Index: arms/html/searchEngine/content-container.html
===================================================================
diff -u -r0b9e024224f1095325dc206ed4df374e75628021 -r41640882c735930926fe551d4bef62e4ab8cd7e2
--- arms/html/searchEngine/content-container.html (.../content-container.html) (revision 0b9e024224f1095325dc206ed4df374e75628021)
+++ arms/html/searchEngine/content-container.html (.../content-container.html) (revision 41640882c735930926fe551d4bef62e4ab8cd7e2)
@@ -148,10 +148,6 @@
@@ -225,19 +221,15 @@
Index: arms/js/searchEngine/searchApiModule.js
===================================================================
diff -u -r0b9e024224f1095325dc206ed4df374e75628021 -r41640882c735930926fe551d4bef62e4ab8cd7e2
--- arms/js/searchEngine/searchApiModule.js (.../searchApiModule.js) (revision 0b9e024224f1095325dc206ed4df374e75628021)
+++ arms/js/searchEngine/searchApiModule.js (.../searchApiModule.js) (revision 41640882c735930926fe551d4bef62e4ab8cd7e2)
@@ -109,11 +109,14 @@
if(search_result_arr && search_result_arr.length !== 0) {
search_result_arr.forEach(function (content, index) {
var highlight_stringify = "";
+ var issue_key = (content["content"]["key"] !== null ? content["content"]["key"] : " - " );
+ var jiraproject_name = (content["content"]["project"] !== null ? content["content"]["project"]["project_name"] : " - ");
if(content["highlightFields"]) {
highlight_stringify = JSON.stringify(content["highlightFields"], undefined, 4);
}
// highlightFields ES 자체 도출 필드
let highlightFields_string = (highlight_stringify === "" ? " - " : highlight_stringify);
+
$("#jiraissue_section .search_result_group .search_result_items").append(
`
@@ -140,7 +143,7 @@
${highlightFields_string}
- 이슈: ${content["content"]["key"]} 지라프로젝트: ${content["content"]["project"]["project_name"]}
+ 이슈 : ${issue_key} 지라프로젝트: ${jiraproject_name}
타임스탬프: ${content["content"]["timestamp"]}
@@ -154,7 +157,6 @@
else if (search_section === 'log') {
$("#log_section .search_result_group .search_result_items").html("");
console.log("[searchApiModule :: appendSearchResultSections_fluentd] :: search_result_arr길이 =>" +search_result_arr.length);
- console.log(search_result_arr);
if(search_result_arr && search_result_arr.length !== 0) {
search_result_arr.forEach(function (content, index) {
@@ -251,7 +253,7 @@
if(search_section === "jiraissue") {
$("#search_detail_modal_jiraissue #detail_id_jiraissue").text(targetData["id"]);
$("#search_detail_modal_jiraissue #detail_index_jiraissue").text(targetData["index"]);
- $("#search_detail_modal_jiraissue #detail_score_jiraissue").text(targetData["score"] === null ? " - " : (targetData["score"] !== NaN ? " - " : targetData["score"]));
+ $("#search_detail_modal_jiraissue #detail_score_jiraissue").text(targetData["score"] === null ? " - " : (targetData["score"] !== NaN ? targetData["score"]: " - " ));
$("#search_detail_modal_jiraissue #detail_type_jiraissue").text(targetData["type"] === undefined ? " - " : targetData["type"]);
$("#search_detail_modal_jiraissue #detail_modal_summary_jiraissue").text(targetData["content"]["summary"]);
$("#search_detail_modal_jiraissue #detail_modal_key_jiraissue").text(targetData["content"]["key"]);
@@ -264,15 +266,25 @@
}
$("#search_detail_modal_jiraissue #modal_detail_log_jiraissue").html("");
+
+ let highlightFieldsObject = targetData["highlightFields"];
+ let unique_key_array = result_of_highlightFileds(highlightFieldsObject);
+
var stringify = JSON.stringify(targetData, undefined, 4);
var prettify = hljs.highlight(stringify,{language : "JSON" }).value;
- $("#search_detail_modal_jiraissue #modal_detail_log_jiraissue").html(prettify);
+ if(unique_key_array.length > 0) {
+ let replacedResult = replacedText(prettify, unique_key_array);
+ $("#search_detail_modal_jiraissue #modal_detail_log_jiraissue").html(replacedResult);
+ } else {
+ $("#search_detail_modal_jiraissue #modal_detail_log_jiraissue").html(prettify);
+ }
+
}
else if (search_section === "log") {
$("#search_detail_modal_log #detail_id_log").text(targetData["id"]);
$("#search_detail_modal_log #detail_index_log").text(targetData["index"]);
- $("#search_detail_modal_log #detail_score_log").text(targetData["score"] === null ? " - " : (targetData["score"] !== NaN ? " - " : targetData["score"]));
+ $("#search_detail_modal_log #detail_score_log").text(targetData["score"] === null ? " - " : (targetData["score"] !== NaN ? targetData["score"]: " - " ));
$("#search_detail_modal_log #detail_type_log").text(targetData["type"] === undefined ? " - " : targetData["type"]);
$("#search_detail_modal_log #detail_modal_logname_log").text(targetData["content"]["logName"]);
@@ -282,13 +294,58 @@
$("#search_detail_modal_log #detail_modal_container_name_log").text(targetData["content"]["container_name"]);
$("#search_detail_modal_log #modal_detail_log_log").html("");
+
+ let highlightFieldsObject = targetData["highlightFields"];
+ let unique_key_array = result_of_highlightFileds(highlightFieldsObject);
+
var stringify = JSON.stringify(targetData["content"], undefined, 4);
var prettify = hljs.highlight(stringify,{language : "JSON" }).value;
- $("#search_detail_modal_log #modal_detail_log_log").html(prettify);
+ if(unique_key_array.length > 0) {
+ let replacedResult = replacedText(prettify, unique_key_array);
+ $("#search_detail_modal_log #modal_detail_log_log").html(replacedResult);
+ } else {
+ $("#search_detail_modal_log #modal_detail_log_log").html(prettify);
+ }
+
}
};
+
+ var result_of_highlightFileds = function (highlightFieldsObject) {
+ let uniqueValues = new Set();
+ if(highlightFieldsObject) {
+ for (let key in highlightFieldsObject) {
+ highlightFieldsObject[key].forEach(value => uniqueValues.add(extractValue_in_em(value)));
+ }
+ }
+ return uniqueValues.size > 0 ? Array.from(uniqueValues) : [];
+ }
+
+ // 정규표현식으로 사이 값 추출
+ function extractValue_in_em(str) {
+ var regex = /(.*?)<\/em>/;
+ var match = regex.exec(str);
+
+ if(match) {
+ return match[1];
+ }
+ }
+
+ // 원본 코드에서 target_text를 만나면 target_text의 형태로 교체
+ var replacedText = function (original_text, target_text_arr) {
+ console.log("[searchApiModule :: replacedText] :: target_text_arr");
+ console.log(target_text_arr);
+ for (let i = 0; i " + target_text);
+ let regex = new RegExp(target_text, 'g');
+ original_text = original_text.replace(regex,`${target_text}`);
+ }
+ return original_text;
+ }
+
+
return {
setSearchResult, getSearchResult, getHitsTotal,
updateButtons,