File name
Commit message
Commit date
File name
Commit message
Commit date
File name
Commit message
Commit date
File name
Commit message
Commit date
File name
Commit message
Commit date
File name
Commit message
Commit date
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@page import="itn.let.solr.search.service.SearchService.SOLR_CORE"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn" %>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
<%@ taglib prefix="sec" uri="http://www.springframework.org/security/tags"%>
<c:set var="solrCores" value="<%=SOLR_CORE.values()%>"/>
<c:set var="FILE" value="<%=SOLR_CORE.FILE%>"/>
<c:set var="WEBPAGE" value="<%=SOLR_CORE.WEBPAGE%>"/>
<c:set var="BOARD" value="<%=SOLR_CORE.BOARD%>"/>
<jsp:useBean id="now" class="java.util.Date" />
<script type="text/javascript">
$(function() {
var coreName = '';
<c:forEach var="core" items="${solrCores}" varStatus="status">
<c:if test="${core.value eq param.rangeView}">
coreName = '${core.name}';
</c:if>
</c:forEach>
var title = '통합검색('+coreName+'목록) | 통합검색 ';
document.title = title;
});
var rangeView = '${param.rangeView}';
function initForm(core){
var frmNm = core+'Frm';
console.log(frmNm);
$('#'+frmNm)[0].reset();
$('#'+frmNm+' :radio').each(function(){
this.checked = false;
});
$('#'+frmNm+' :checkbox').each(function(){
this.checked = false;
});
$('#'+frmNm+' :text').each(function(){
this.value = '';
});
}
function detail(range){
$(":input[name=range]").each(function(){
if( $(this).val() == range ){
$(this).attr("checked", true);
}
else{
$(this).attr("checked", false);
}
});
document.frmSearch2.submit();
}
function detailView(core){
if( !checkForm(document.frmSearch2) ){
return;
}
var frmNm = core+'Frm';
$('#'+core+'Q').val($('#q').val());
$('#'+frmNm)[0].submit();
}
function search(q){
$("#q").val(q);
$("#q2").val(q);
$("#rangeView").val('');
document.frmSearch2.submit();
}
function searchTab(q, rv){
$("#q").val(q);
$("#q2").val(q);
$("#rangeView").val(rv);
$('#pageIndex').val("1");
document.frmSearch2.submit();
}
function paging(pageIndex){
if (rangeView) {
$('#'+rangeView+'PageIndex').val(pageIndex);
}
else {
$('#pageIndex').val(pageIndex);
}
var frmNm = rangeView == '' ? frmSearch2 : rangeView+'Frm';
$('#'+frmNm)[0].submit();
}
function checkForm(form){
$('#pageIndex').val("1");
if(!form.q.value){
alert("검색어를 입력하세요.");
$("#q1").focus();
return false;
}
return true;
}
</script>
<div class="box totalsh posr">
<form name="frmSearch1" id="frmSearch1" method="post" action="/kopost/search/search.do" class="totalsh" onsubmit="return checkForm(this);">
<div class="set">
<select name="rangeView" id="rangeView1" title="검색어 구분">
<option value="">통합검색</option>
<c:forEach var="core" items="${solrCores}" varStatus="status">
<option value="${core.value}">${core.name}</option>
</c:forEach>
</select>
<input name="q" id="q1" value="${param.q}" title="검색어" type="text">
<input type="hidden" name="prevQ" value="${param.q}" />
<button class="b-sh" type="submit">검색</button>
</div>
<label><input type="checkbox" name="re" id="re" value="Y" ${param.re eq 'Y' ? 'checked="checked"' : ''}><i></i> 결과 내 재검색</label>
<div class="shKeywordRank">
<h1>인기검색어</h1>
<div class="area">
<ul class="bxslider">
<c:forEach var="r" items="${rankingList}" varStatus="status">
<c:if test="${status.count <= 5}">
<c:choose>
<c:when test="${r.prevRanking eq 0}"><c:set var="arr" value="new" /><c:set var="stsNm" value="new" /></c:when>
<c:when test="${r.ranking - r.prevRanking eq 0}"><c:set var="arr" value="normal" /><c:set var="stsNm" value="변동없음" /></c:when>
<c:when test="${r.ranking - r.prevRanking > 0}"><c:set var="arr" value="down" /><c:set var="stsNm" value="하락" /></c:when>
<c:when test="${r.ranking - r.prevRanking < 0}"><c:set var="arr" value="up" /><c:set var="stsNm" value="상승" /></c:when>
</c:choose>
<li class="n${status.count} active">
<a href="javascript:search('${r.srchwrd}')">
<span class="num">${status.count}</span>
<span class="txt">${r.srchwrd}</span>
</a>
</li>
</c:if>
</c:forEach>
</ul>
</div>
</div>
</form>
<form name="frmSearch2" id="frmSearch2" method="post" action="/kopost/search/search.do">
<input type="hidden" id="rangeView" name="rangeView" value="${param.rangeView}" />
<input name="q" id="q" value="${param.q}" type="hidden">
<input name="re" id="re" value="${param.re}" type="hidden">
<input type="hidden" name="prevQ" value="${param.q}" />
</form>
<script>
$(function() {
var list = $('.bxslider li').clone()
$('.shKeywordRank').append('<ul class="area2">').end().find('.area2').append(list)
$('.shKeywordRank a').bind('keyup mouseenter', function(event) {
ranklist.stopAuto();
$('.shKeywordRank').addClass('hover')
});
$('.shKeywordRank').bind('mouseleave', function(event) {
ranklist.startAuto();
$('.shKeywordRank').removeClass('hover');
});
$('.shKeywordRank a:last').focusout(function(event) {
ranklist.startAuto();
$('.shKeywordRank').removeClass('hover');
});
var ranklist = $('.bxslider').bxSlider({
mode: 'vertical',
slideMargin: 5,
controls:false,
auto:true,
pager:false
});
});
</script>
</div>
<div class="totalsh">
<div class="tab typebrown">
<ul>
<li ${empty param.rangeView ? 'class="active"' : ''}><a href="javascript:search('${param.q}')">통합검색(${totalCount})</a></li>
<c:forEach var="core" items="${solrCores}" varStatus="status">
<li ${core.value eq param.rangeView ? 'class="active"' : ''}><a href="javascript:searchTab('${param.q}', '${core.value}')">${core.name}(${resultCntMap[core.value]})</a></li>
</c:forEach>
</ul>
</div>
<div class="totalCount">검색어 “<span class="mark">${param.q}</span>”에 대한 전체 “<strong>${totalCount}</strong>”개의 검색 결과를 찾았습니다.</div>
<c:forEach var="core" items="${solrCores}" varStatus="status">
<c:if test="${empty param.rangeView or param.rangeView eq core.value}">
<c:set var="resultList" value="${resultMap[core.value]}" />
<c:set var="set" value="" />
<c:choose>
<c:when test="${core.value eq 'recruitment'}"><c:set var="set" value="recruitment" /></c:when>
<c:when test="${core.value eq 'cluster'}"><c:set var="set" value="cluster" /></c:when>
<c:otherwise><c:set var="set" value="${core.value}" /></c:otherwise>
</c:choose>
<form id="${core.value}Frm" name="${core.value}Frm" method="post" action="/kopost/search/search.do">
<input type="hidden" id="${core.value}Q" name="q" value="${param.q}" />
<input type="hidden" name="prevQ" value="${param.q}" />
<input type="hidden" id="${core.value}PageIndex" name="pageIndex" value="${param.pageIndex}" />
<input type="hidden" name="rangeView" value="${core.value}" />
<c:choose>
<c:when test="${core.value eq FILE.value}">
<h2>${core.name} (검색결과 ${resultCntMap[core.value]}건)</h2>
<c:if test="${empty param.rangeView and fn:length(resultList) > 0}">
<button type="button" class="tmore" onclick="detailView('${core.value}')">더보기 <i></i></button>
</c:if>
<c:if test="${param.rangeView eq FILE.value}">
<div class="tDetailsh">
<dl>
<dt class="p">조회기간</dt>
<dd>
<input id="sdate" name="sdate" class="sdate" title="조회기간 시작일" value="${param.sdate}" type="text">
~
<input id="edate" name="edate" class="edate" title="조회기간 종료일" value="${param.edate}" type="text">
<button class="b-sh">상세검색</button>
</dd>
</dl>
</div>
</c:if>
<c:if test="${fn:length(resultList) eq 0}">
<div class="nodata">검색 결과가 없습니다.</div>
</c:if>
<div class="doclist">
<ul>
<c:forEach var="result" items="${resultList}" varStatus="sts">
<c:set var="viewYn" value="${empty param.rangeView and sts.count > 10 ? 'N' : 'Y'}"/>
<c:if test="${viewYn eq 'Y'}">
<li>
<a href="${result.url}" target="_blank">${result.orignlFileNm}
<span class="date"><fmt:formatDate value="${result.frstRegistPnttm}" pattern="yyyy-MM-dd"/></span></a>
<p>
<c:if test="${empty result.hl}">
<c:set var="text">${result.text}</c:set>
<c:out value="${text}" escapeXml="true" />
</c:if>
<c:if test="${not empty result.hl}">${result.hl}</c:if>
</p>
</li>
</c:if>
</c:forEach>
</ul>
</div>
</c:when>
<c:when test="${core.value eq WEBPAGE.value}">
<h2>${core.name} (검색결과 ${resultCntMap[core.value]}건)</h2>
<c:if test="${empty param.rangeView and fn:length(resultList) > 0}">
<button type="button" class="tmore" onclick="detailView('${core.value}')">더보기 <i></i></button>
</c:if>
<c:if test="${param.rangeView eq WEBPAGE.value}">
<div class="tDetailsh">
<dl>
<dt class="p">조회기간</dt>
<dd>
<input id="sdate" name="sdate" class="sdate" title="조회기간 시작일" value="${param.sdate}" type="text">
~
<input id="edate" name="edate" class="edate" title="조회기간 종료일" value="${param.edate}" type="text">
<button class="b-sh">상세검색</button>
</dd>
</dl>
</div>
</c:if>
<c:if test="${fn:length(resultList) eq 0}">
<div class="nodata">검색 결과가 없습니다.</div>
</c:if>
<div class="doclist">
<ul>
<c:forEach var="result" items="${resultList}" varStatus="sts">
<c:set var="viewYn" value="${empty param.rangeView and sts.count > 10 ? 'N' : 'Y'}"/>
<c:if test="${viewYn eq 'Y'}">
<li>
<a href="${result.url}" target="_blank">${fn:replace(result.relateMenuNmList, '|', ' > ')}
<span class="date"><fmt:formatDate value="${result.frstRegistPnttm}" pattern="yyyy-MM-dd"/></span></a>
<p>
<c:if test="${empty result.hl}">
<c:set var="text">${result.text}</c:set>
<c:out value="${text}" escapeXml="true" />
</c:if>
<c:if test="${not empty result.hl}">${result.hl}</c:if>
</p>
</li>
</c:if>
</c:forEach>
</ul>
</div>
</c:when>
<c:otherwise>
<h2>${core.name} (검색결과 ${resultCntMap[core.value]}건)</h2>
<c:if test="${empty param.rangeView and fn:length(resultList) > 0}">
<button type="button" class="tmore" onclick="detailView('${core.value}')">더보기 <i></i></button>
</c:if>
<c:if test="${param.rangeView eq BOARD.value}">
<div class="tDetailsh">
<dl>
<dt class="p">조회기간</dt>
<dd>
<input id="sdate" name="sdate" class="sdate" title="조회기간 시작일" value="${param.sdate}" type="text">
~
<input id="edate" name="edate" class="edate" title="조회기간 종료일" value="${param.edate}" type="text">
<button class="b-sh">상세검색</button>
</dd>
</dl>
</div>
</c:if>
<c:if test="${fn:length(resultList) eq 0}">
<div class="nodata">검색 결과가 없습니다.</div>
</c:if>
<div class="doclist">
<ul>
<c:forEach var="result" items="${resultList}" varStatus="sts">
<c:set var="viewYn" value="${empty param.rangeView and sts.count > 10 ? 'N' : 'Y'}"/>
<c:if test="${viewYn eq 'Y'}">
<li>
<a href="${result.url}" target="_blank"><c:out value="${empty result.nttSjHl ? result.nttSj : result.nttSjHl}" escapeXml="false"/>
<span class="date"><fmt:formatDate value="${result.frstRegistPnttm}" pattern="yyyy-MM-dd"/></span></a>
<p>
<c:if test="${empty result.hl}">
<c:set var="text">${result.text}</c:set>
<c:out value="${text}" escapeXml="true" />
</c:if>
<c:if test="${not empty result.hl}">${result.hl}</c:if>
</p>
</li>
</c:if>
</c:forEach>
</ul>
</div>
</c:otherwise>
</c:choose>
</form>
</c:if>
</c:forEach>
</div>
<c:if test="${not empty param.rangeView}">
<c:if test="${fn:length(resultList) > 0}">
${pageNav}
</c:if>
</c:if>