2024-02-27 11:09 공지 게시판 추가 생성

This commit is contained in:
myname 2024-02-27 11:09:39 +09:00
parent 553ee57424
commit a4d706ad52
8 changed files with 1611 additions and 2 deletions

View File

@ -1311,6 +1311,143 @@ public class EgovBBSManageController {
return "/web/cop/bbs/EgovNoticeList";
}
/**
* (사용자)게시물에 대한 목록을 조회한다.
*
* @param boardVO
* @param sessionVO
* @param model
* @return
* @throws Exception
*/
@RequestMapping(value= {"/web/cop/bbs/selectBoardList2024.do" , "/web/cop/bbsWeb/selectMoreList2024Ajax.do"})
public String selectBoardArticlesWeb2024(HttpServletRequest request, @ModelAttribute("searchVO") BoardVO boardVO, ModelMap model
,RedirectAttributes redirectAttributes) throws Exception {
System.out.println("/web/cop/bbs/selectBoardList2024.do");
BoardMasterVO bmVO = new BoardMasterVO();
bmVO.setBbsId(boardVO.getBbsId());
bmVO = bbsAttrbService.selectBBSMasterInf(bmVO);
UserVO userVO = (UserVO)request.getSession().getAttribute("userVO"); // 사용자 정보
SsoLoginVO ssoLoginVO = (SsoLoginVO) request.getSession().getAttribute("SSOLoginVO");
if (bmVO == null || ("N").equals(bmVO.getUseAt())) {
redirectAttributes.addFlashAttribute("message", egovMessageSource.getMessage("fail.common.imposbl"));
return "redirect:/web/main/mainPage.do";
}
boardVO.setPageUnit(Integer.parseInt(bmVO.getListNum()));
boardVO.setPageSize(Integer.parseInt(bmVO.getPageNum()));
PaginationInfo paginationInfo = new PaginationInfo();
paginationInfo.setCurrentPageNo(boardVO.getPageIndex());
paginationInfo.setRecordCountPerPage(boardVO.getPageUnit());
paginationInfo.setPageSize(boardVO.getPageSize());
boardVO.setFirstIndex(paginationInfo.getFirstRecordIndex());
boardVO.setLastIndex(paginationInfo.getLastRecordIndex());
boardVO.setRecordCountPerPage(paginationInfo.getRecordCountPerPage());
if (("BBST05").equals(bmVO.getBbsTyCode())){ //사진게시판 8개씩 9개조회후 9개면 더보기
boardVO.setRecordCountPerPage(8); //리스트
boardVO.setFirstIndex( (boardVO.getPageIndex()-1)*8); //offset
paginationInfo.setRecordCountPerPage(boardVO.getRecordCountPerPage()); // 접근성 획득 롤백
}
if(!"9410000".equals(bmVO.getMenuNo())) {
boardVO.setParntScttNo("0"); //질문글만 가져오기(데이터 이관 숫자 틀려서 질문도 가져옴:공지사항)
}
// 공지사항
if (("Y").equals(bmVO.getNoticeYn())) {
List<BoardVO> notifyList = bbsMngService.selectBoardNotifyArticles(boardVO, null);
model.addAttribute("notifyList", notifyList);
boardVO.setNoticeAt("N"); //다음에 공지사항 아닌것만 검색
}
if("BBST05".equals(bmVO.getBbsTyCode())){ //재단소식
boardVO.setSearchSortCnd("FRST_REGIST_PNTTM");
boardVO.setSearchSortOrd("desc");
}
if("9620000".equals(bmVO.getMenuNo())) {
LoginVO loginVO = EgovUserDetailsHelper.isAuthenticated() ? (LoginVO) EgovUserDetailsHelper.getAuthenticatedUser() : null;
String userId = loginVO == null ? "" : EgovStringUtil.isNullToString(loginVO.getUniqId());
boardVO.setFrstRegisterId(userId);
}
if("BBSMSTR_000000000711".equals(bmVO.getBbsId())) { //청소년강사공지사항
boardVO.setSearchSortCnd("FRST_REGIST_PNTTM");
boardVO.setSearchSortOrd("desc");
}
if("BBSMSTR_000000000725".equals(bmVO.getBbsId())) { //zoom 신청 게시판
System.out.println("zoom 신청 게시판");
LoginVO loginVO = EgovUserDetailsHelper.isAuthenticated() ? (LoginVO) EgovUserDetailsHelper.getAuthenticatedUser() : null;
String userId = loginVO == null ? "" : EgovStringUtil.isNullToString(loginVO.getUniqId());
boardVO.setFrstRegisterId(userId);
}
System.out.println("bmVO.getBbsTyCode()");
System.out.println(bmVO.getBbsTyCode());
System.out.println(bmVO.getBbsId());
Map<String, Object> map = bbsMngService.selectBoardArticlesWeb(boardVO, null);
int totCnt = Integer.parseInt((String) map.get("resultCnt"));
paginationInfo.setTotalRecordCount(totCnt);
List<BoardVO> resultList = (List<BoardVO>)map.get("resultList");
/*Calendar cal = Calendar.getInstance();
int year = cal.get(Calendar.YEAR);
int month = cal.get(Calendar.MONTH) + 1;
int day = cal.get(Calendar.DAY_OF_MONTH);
SimpleDateFormat t1 = new SimpleDateFormat("yyyyMMdd");
String nowTime = t1.format(cal.getTime());*/
for (BoardVO bvo: resultList) {
Document doc = Jsoup.parse(bvo.getNttCn());
String text = doc.text();
bvo.setNttCn2(text);
}
PaginationInfo paginationInfoMobile = new PaginationInfo();
paginationInfoMobile.setCurrentPageNo(paginationInfo.getCurrentPageNo());
paginationInfoMobile.setTotalRecordCount(paginationInfo.getTotalRecordCount());
paginationInfoMobile.setPageSize(5);
paginationInfoMobile.setRecordCountPerPage(paginationInfo.getRecordCountPerPage());
model.addAttribute("resultList", resultList);
model.addAttribute("resultCnt", map.get("resultCnt"));
model.addAttribute("boardVO", boardVO);
model.addAttribute("brdMstrVO", bmVO);
model.addAttribute("paginationInfo", paginationInfo);
model.addAttribute("paginationInfoMobile", paginationInfoMobile);
if("BBST05".equals(bmVO.getBbsTyCode())){
if(resultList.size()>8) { //더보기 더튼 추가
model.addAttribute("more", true);
}else {
model.addAttribute("more", false);
}
if("/web/cop/bbsWeb/selectMoreListAjax.do".equals(request.getRequestURI())) { //더보기
return "/web/cop/bbs/EgovNoticePhotoList2024Ajax";
}
return "/web/cop/bbs/EgovNoticePhotoList2024"; //메인
}
/*FAQ*/
if("BBST09".equals(bmVO.getBbsTyCode())){
return "/web/cop/bbs/FaqList2024Ajax";
}
return "/web/cop/bbs/EgovNoticeList2024";
}
/*nice체크 오프너로 이용*/
@RequestMapping("/web/cop/bbs/niceCheckAjax.do")
public String niceCheckWeb(HttpServletRequest request,
@ -1652,6 +1789,121 @@ public class EgovBBSManageController {
return "web/cop/bbs/EgovNoticeInqire";
}
/**
* (사용자)게시물에 대한 상세 정보를 조회한다.
*
* @param boardVO
* @param sessionVO
* @param model
* @return
* @throws Exception
*/
@RequestMapping(value= {
"/web/cop/bbs/selectBoardDetail2024.do"
} )
public String selectBoardArticleWeb2024(HttpServletRequest request, @ModelAttribute("searchVO") BoardVO boardVO,
BoardMasterVO masterVO,
ModelMap model ,
@RequestParam Map<String, Object> commandMap,
RedirectAttributes redirectAttributes) throws Exception {
LoginVO loginVO = EgovUserDetailsHelper.isAuthenticated() ? (LoginVO) EgovUserDetailsHelper.getAuthenticatedUser() : null;
String userId = loginVO == null ? "" : EgovStringUtil.isNullToString(loginVO.getUniqId());
model.addAttribute("userId", userId);
BoardMasterVO bmVO = new BoardMasterVO();
if("".equals(boardVO.getBbsId())) { //검색에서 조회시 nttid로 마스터 조회
bmVO = bbsAttrbService.selectBbsIdByNttId(boardVO);
if (bmVO == null) {
redirectAttributes.addFlashAttribute("message", egovMessageSource.getMessage("fail.common.imposbl"));
return "redirect:/web/main/mainPage.do";
}
boardVO.setBbsId(bmVO.getBbsId());
}else {
bmVO.setBbsId(boardVO.getBbsId());
}
bmVO = bbsAttrbService.selectBBSMasterInf(bmVO);
if("/web/cop/bbs/NewsDetail.do".equals(request.getRequestURI()) || "/web/contentBbsDetail.do".equals(request.getRequestURI())) { //원자력소식 수정삭제등록 없음.
bmVO.setWebChgYn("N");
model.addAttribute("masterVO", masterVO);
}
BoardVO bdVO = bbsMngService.selectBoardArticleWeb(boardVO);
if (bmVO == null || ("N").equals(bmVO.getUseAt())) {
redirectAttributes.addFlashAttribute("message", egovMessageSource.getMessage("fail.common.imposbl"));
return "redirect:/web/main/mainPage.do";
}
//비밀글 체크 - zoom게시판은 본인만 확인 가능
if ("Y".equals(bdVO.getSecretYn()) && !userId.equals(bdVO.getFrstRegisterId())) {
redirectAttributes.addAttribute("bbsId", bdVO.getBbsId());
redirectAttributes.addFlashAttribute("message", "본인 글만 조회 가능합니다.");
return "redirect:/web/cop/bbs/selectBoardList2024.do";
}
/*{//묻고답하기 권한체크
if("9620000".equals(bmVO.getMenuNo())) {
LoginVO loginVO = EgovUserDetailsHelper.isAuthenticated() ? (LoginVO) EgovUserDetailsHelper.getAuthenticatedUser() : null;
String userId = loginVO == null ? "" : EgovStringUtil.isNullToString(loginVO.getUniqId());
//본인 댓글만 수정,삭제를 위한 로그인 ID 전달
model.addAttribute("userId", userId);
if(!bdVO.getFrstRegisterId().equals(userId)){
return "redirect:/web/cop/bbsWeb/selectBoardList.do?bbsId=BBSMSTR_000000000654";
}
}
}
{//오류게시판 본인글만 삭제,수정버튼 생성
if("9650000".equals(bmVO.getMenuNo())) {
LoginVO loginVO = EgovUserDetailsHelper.isAuthenticated() ? (LoginVO) EgovUserDetailsHelper.getAuthenticatedUser() : null;
String userId = loginVO == null ? "" : EgovStringUtil.isNullToString(loginVO.getUniqId());
//본인 댓글만 수정,삭제를 위한 로그인 ID 전달
model.addAttribute("errorUserId", userId);
}
} */
// 조회수 증가 여부 지정
boardVO.setPlusCount(true);
bbsMngService.updateBoardArticleInqireCo(boardVO);
boardVO.setMblDn(bdVO.getMblDn());
// /아래 게시글 번호, 제목 조회
EgovMap upDownNttid = bbsMngService.getUpDownNttIdNSj(boardVO);
//게시판 마스터 옵션 정보
BoardMasterVO searchVO = new BoardMasterVO();
searchVO.setBbsId(boardVO.getBbsId());
BoardMasterVO resultBbsMsInfo = bbsAttrbService.selectBBSMasterInf(searchVO);
//답변글 리스트
if(bdVO.getAnswerCnt() > 0) {
List<BoardVO> answerList = bbsMngService.selectBoardAnswerList(bdVO);
model.addAttribute("answerList", answerList);
}
model.addAttribute("nextNttIdNSj", upDownNttid.get("nextNttIdNSj"));
model.addAttribute("prevNttIdNSj", upDownNttid.get("prevNttIdNSj"));
model.addAttribute("result", bdVO);
model.addAttribute("brdMstrVO", bmVO);
model.addAttribute("resultBbsMsInfo", resultBbsMsInfo);
if("BBST05".equals(bmVO.getBbsTyCode())){ //재단소식 포토게시판
if(bdVO.getAtchFileCnt() > 0 ) {
FileVO fileVO = new FileVO();
fileVO.setAtchFileId(bdVO.getAtchFileId());
List<FileVO> result = fileService.selectImageFileList(fileVO);
model.addAttribute("fileList", result);
}
return "web/cop/bbs/EgovNoticePhotoInqire2024";
}
if("Y".equals(masterVO.getTabBbsId())){
model.addAttribute("PubDetail", true);
}
return "web/cop/bbs/EgovNoticeInqire2024";
}
/**
* (사용자)게시물에 대한 상세 정보를 조회한다.
*

View File

@ -0,0 +1,226 @@
<%--
Class Name : EgovNoticeInqire.jsp
Description : (사용자)게시물 조회 화면
Modification Information
수정일 수정자 수정내용
---------- -------- ---------------------------
2009.03.23 이삼섭 최초 생성
2009.06.26 한성곤 2단계 기능 추가 (댓글관리, 만족도조사)
2011.08.31 JJY 경량환경 버전 생성
2013.05.23 이기하 상세보기 오류수정
author : 공통서비스 개발팀 이삼섭
since : 2009.03.23
--%>
<%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn"%>
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%>
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form"%>
<%@ taglib prefix="validator" uri="http://www.springmodules.org/tags/commons-validator"%>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
<%pageContext.setAttribute("crlf", "\r\n"); %>
<head>
<script type="text/javascript">
$(document).ready(function(){
});
var listPage = $(location).attr('href').split($(location).attr('host'))[1].split('Detail.do')[0]+'List.do'+"?bbsId=<c:out value='${brdMstrVO.bbsId}' />" ;
var detailPage = $(location).attr('href').split($(location).attr('host'))[1].split('?')[0] ;
function fn_egov_select_noticeList(pageNo) {
//history.back(-1);
document.searchForm.mblDn.value = "";
//공통사용위해 detail > list로 변경
if(listPage.indexOf("contentBbsList.do") > 0){ //컨텐츠 bbs 페이지경우
listPage = "/web/content.do?proFn="+$('#menuNo').val();
location.href = listPage ;
return;
}
document.searchForm.action = "<c:url value='/web/cop/bbs/selectBoardList2024.do'/>";
document.searchForm.submit();
}
function fn_egov_select_detail(bbsId , nttId) { //이전/다음글 상세
if(listPage.indexOf("contentBbsList.do") > 0){ //컨텐츠 bbs 페이지경우
location.href=detailPage+"?bbsId="+bbsId + "&nttId="+nttId+"&menuNo="+$('#menuNo').val() ;
return
}
location.href=detailPage+"?bbsId="+bbsId + "&nttId="+nttId ;
}
function fn_egov_delete_notice() {
if (confirm('<spring:message code="common.delete.msg" />')) {
document.searchForm.action = "<c:url value='/web/cop/bbs/deleteBoardArticle.do'/>";
document.searchForm.submit();
}
}
function fn_egov_moveUpdt_notice(){
document.searchForm.action = "<c:url value='/web/cop/bbs/forUpdateBoardArticle.do'/>";
document.searchForm.method = "get";
document.searchForm.submit();
}
</script>
<!-- 댓글 작성 스크립트 -->
<c:if test="${brdMstrVO.addYn == 'Y'}">
<script type="text/javascript" src="<c:url value="/validator.do"/>"></script>
<validator:javascript formName="articleComment" staticJavascript="false" xhtml="true" cdata="false" />
<script type="text/javascript">
// 댓글 등록
function fn_egov_insert_commentList() {
var form = document.getElementById("articleCommentVO");
if (!validateArticleComment(form)){
return;
}
if (confirm('<spring:message code="common.regist.msg" />')) {
form.submit();
}
}
// 댓글 수정
function fn_egov_updt_commentList() {
var form = document.getElementById("articleCommentVO");
if (!validateArticleComment(form)){
return;
}
if (confirm('<spring:message code="common.update.msg" />')) {
form.modified.value = "true";
form.action = "<c:url value='/web/cop/cmt/updateArticleComment.do'/>";
form.submit();
}
}
// 댓글 수정 화면
function fn_egov_selectCommentForupdt(commentNo) {
var form = document.getElementById("articleCommentVO");
//form.subPageIndex.value = pageNo;
form.commentNo.value = commentNo;
form.action = "<c:url value='/web/cop/bbsWeb/selectBoardArticle.do'/>";
form.submit();
}
// 댓글 삭제
function fn_egov_deleteCommentList(commentNo) {
var form = document.getElementById("articleCommentVO");
if (confirm('<spring:message code="common.delete.msg" />')) {
form.modified.value = "true";
form.commentNo.value = commentNo;
form.action = "<c:url value='/web/cop/cmt/deleteArticleComment.do'/>";
form.submit();
}
}
/* 댓글페이징 */
function fn_egov_select_commentList(pageNo) {
var form = document.getElementById("articleCommentVO");
// form.subPageIndex.value = pageNo;
form.commentNo.value = '';
form.action = "<c:url value='/${siteId}/web/cop/bbsWeb/selectBoardArticle.do'/>";
form.submit();
}
</script>
</c:if>
</head>
<body>
<!-- contents 영역 -->
<form:form commandName="searchForm" name="searchForm" method="get" action="<c:url value='/web/cop/bbs/selectBoardList2024.do'/>">
<input name="pageIndex" type="hidden" value="<c:out value='${searchVO.pageIndex}'/>"/>
<input name="searchCnd" type="hidden" value="<c:out value='${searchVO.searchCnd}'/>"/>
<input name="searchWrd" type="hidden" value="<c:out value='${searchVO.searchWrd}'/>"/>
<input name="password" type="hidden" value="<c:out value='${searchVO.password}'/>"/>
<input name="bbsId" type="hidden" value="<c:out value='${result.bbsId}'/>" />
<input name="nttId" type="hidden" value="<c:out value='${result.nttId}'/>" />
<input type="hidden" id= "mblDn" name="mblDn" value="<c:out value='${usrMblDn}' />"/>
<input type="hidden" id= "ntcrNm" name="ntcrNm" value=""/>
<input type="hidden" id= "menuNo" name="menuNo" value="<c:out value='${masterVO.menuNo}'/>" />
</form:form>
<!-- cont -->
<div class="cont_wrap" id="sub">
<div class="cont_tit">
<h2><c:out value="${brdMstrVO.bbsNm}"/></h2>
<div class="sns_go">
<!-- <button type="button" title="새창열림"><img src="/offedu/visitEdu/usr/publish/images/content/facebook_icon.png" alt="페이스북 바로가기"></button>
<button type="button" title="새창열림"><img src="/offedu/visitEdu/usr/publish/images/content/twitter_icon.png" alt="트위터 바로가기"></button> -->
</div>
</div>
<div class="list_view">
<div class="view_top">
<p class="view_title"><c:out value="${result.nttSj}" /></p>
<div class="view_info">
<p>날짜 <span><c:out value="${result.frstRegisterPnttm}" /></span></p>
<p>작성자 <span><c:out value="${result.ntcrNm}"/></span></p>
<%-- <c:if test="${'9620000' ne brdMstrVO.menuNo && '9650000' ne brdMstrVO.menuNo}">
<p>담당부서 <span><c:out value="${result.pubLoc}"/></span></p>
</c:if> --%>
<p>조회수 <span><c:out value="${result.inqireCo}" /></span></p>
</div>
</div>
<div class="view_cont">
<p>
<c:if test="${'9620000' eq brdMstrVO.menuNo || '9650000' eq brdMstrVO.menuNo}">
<c:out value="${result.nttCn}" />
</c:if>
<c:if test="${'9620000' ne brdMstrVO.menuNo && '9650000' ne brdMstrVO.menuNo}">
<c:out value="${result.nttCn}" escapeXml="false"/>
</c:if>
</p>
</div>
<c:if test="${not empty result.atchFileId}">
<div class="file_list">
<%-- <tr>
<td>
<c:import url="/cmm/fms/selectBBSFileInfs.do" charEncoding="utf-8">
<c:param name="param_atchFileId" value="${result.atchFileId}" />
<c:param name="pdf_view" value="Y" />
</c:import>
</td>
</tr> --%>
<c:import url="/cmm/fms/selectBBSFileInfs.do" charEncoding="utf-8">
<c:param name="param_atchFileId" value="${result.atchFileId}" />
<c:param name="pdf_view" value="Y" />
</c:import>
</div>
</c:if>
</div>
<div class="btn_wrap btn_layout01">
<div class="btn_left">
</div>
<div class="btn_center">
</div>
<div class="btn_right">
<%-- <c:choose>
<c:when test="${'9620000' eq brdMstrVO.menuNo}">
<button type="button" class="btnType08" onclick="javascript:fn_egov_delete_notice(); return false;">삭제</button>
<button type="button" class="btnType09" onclick="javascript:fn_egov_moveUpdt_notice(); return false;">수정</button>
</c:when>
<c:when test="${'9650000' eq brdMstrVO.menuNo && result.frstRegisterId eq errorUserId}">
<button type="button" class="btnType08" onclick="javascript:fn_egov_delete_notice(); return false;">삭제</button>
<button type="button" class="btnType09" onclick="javascript:fn_egov_moveUpdt_notice(); return false;">수정</button>
</c:when>
</c:choose> --%>
<c:if test="${result.frstRegisterId eq userId}">
<button type="button" class="btnType03" onclick="javascript:fn_egov_delete_notice(); return false;">삭제</button>
<button type="button" class="btnType06" onclick="javascript:fn_egov_moveUpdt_notice(); return false;">수정</button>
</c:if>
<button type="button" class="btnType02 m_btn_block" onclick="javascript:fn_egov_select_noticeList(); return false;">목록</button>
</div>
</div>
<!-- 댓글 -->
<c:if test="${brdMstrVO.addYn == 'Y'}">
<c:import url="/web/cop/cmt/selectArticleCommentList.do" charEncoding="utf-8">
<c:param name="siteId" value="${brdMstrVO.siteId}" />
</c:import>
</c:if>
</div>
<!-- //cont -->
</body>

View File

@ -0,0 +1,487 @@
<%--
Class Name : EgovNoticeList.jsp
Description : (사용자)게시물 목록화면
Modification Information
수정일 수정자 수정내용
------- -------- ---------------------------
2009.03.19 이삼섭 최초 생성
2011.08.31 JJY 경량환경 버전 생성
author : 공통서비스 개발팀 이삼섭
since : 2009.03.19
--%>
<%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn"%>
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
<head>
<script type="text/javascript">
$(document).ready(function(){
//$(".btnSearch").keyup(function(e){if(e.keyCode == 13) linkPage('1');});
});
function fn_egov_addNotice(){
document.frm.method = "post";
document.frm.action = "<c:url value='/web/cop/bbs/addBoardArticle.do'/>";
//document.frm.action = "<c:url value='/web/cop/selfauth/authentication.do'/>";
document.frm.submit();
}
function linkPage(pageNo) {
if(pageNo != 1){
document.frm.searchWrd.value = "";
document.frm.searchCnd.value = "";
}
var searchWrd = $.trim(document.frm.searchWrd.value);
var searchCnd = $.trim(document.frm.searchCnd.value);
document.frm.pageIndex.value = pageNo;
document.frm.method = "get";
document.frm.action = "<c:url value='/web/cop/bbs/selectBoardList2024.do'/>";
document.frm.submit();
}
/* function fn_chk_inqire_notice(bbsId, nttId){
document.frm.nttId.value = nttId;
document.frm.bbsId.value = bbsId;
var form = document.frm ;
var data = new FormData(form);
$.ajax({
type: "POST",
url: "/web/cop/bbsWeb/selectBoardChkDetailAjax.do",
async:false,
data: data,
dataType:'json',
processData: false,
contentType: false,
cache: false,
timeout: 600000,
success: function (returnData, status) {
if(status == 'success'){
if(returnData.mblDnFlag){
fn_egov_inqire_notice(returnData.searchVO.bbsId , returnData.searchVO.nttId);
}else{
var passck = prompt("비밀번호를 넣어주세요");
if(null == passck){
return;
}
$('#password').val(passck) ;
fn_egov_inqire_notice(returnData.searchVO.bbsId , returnData.searchVO.nttId);
}
}else{
}
},
error: function (e) {
}
});
} */
function fn_egov_inqire_notice(bbsId, nttId) {
document.frm.nttId.value = nttId;
document.frm.bbsId.value = bbsId;
document.frm.method = "get";
document.frm.action = "<c:url value='/web/cop/bbs/selectBoardDetail2024.do'/>?pubDetail=Y";
document.frm.submit();
}
function fn_egov_pdfView(atchFileId, fileSn){
window.open("/cmm/fms/pdfView.do?atchFileId="+atchFileId+"&fileSn="+fileSn+"");
}
function fn_egov_downFile(atchFileId, fileSn){
window.open("/cmm/fms/FileDown.do?atchFileId="+atchFileId+"&fileSn="+fileSn+"");
}
var _bbsId = "${boardVO.bbsId}";
var _searchYear = "${boardVO.searchYear}";
</script>
</head>
<body>
<!-- content -->
<input type="hidden" name="pageType" id="pageType" value="bbs"/>
<div class="cont_wrap" id="sub">
<div class="cont_tit">
<h2>${brdMstrVO.bbsNm}</h2>
<div class="sns_go">
<button type="button" title="새창열림"><img src="<c:url value='/visitEdu/usr/publish/images/content/facebook_icon.png' />" alt="페이스북 바로가기"></button>
<button type="button" title="새창열림"><img src="<c:url value='/visitEdu/usr/publish/images/content/twitter_icon.png' />" alt="트위터 바로가기"></button>
</div>
</div>
<c:if test="${
brdMstrVO.bbsId ne 'BBSMSTR_000000000711'
and brdMstrVO.bbsId ne 'BBSMSTR_000000000701'
and brdMstrVO.bbsId ne 'BBSMSTR_000000000725'
}">
<!-- 231110 삭제 요청 -->
<%-- <div class="tit_box type2">
<i class="tit_box_icon2"></i>
<div>
<c:choose>
<c:when test="${brdMstrVO.bbsId eq 'BBSMSTR_000000000653'}">
<!-- 공지사항일 경우 -->
<span>
ㆍ저작권 교육 시스템과 관련하여 공지사항을 전해드립니다.
<br>ㆍ공지사항과 관련하여 궁금한 점은 담당자에게 문의해주십시오.
</span>
</c:when>
<c:when test="${brdMstrVO.bbsId eq 'BBSMSTR_000000000681'}">
<!-- 교육자료실일 경우 -->
<span>
ㆍ저작권 교육 시스템과 관련한 자료실입니다.
<br>ㆍ담당자에게 문의해주십시오.
</span>
</c:when>
<c:when test="${brdMstrVO.bbsId eq 'BBSMSTR_000000000701'}">
<!-- 청소년게시판 경우 -->
<span>
ㆍ저작권 교육 시스템 청소년 강사 게시판입니다.
</span>
</c:when>
<c:when test="${brdMstrVO.bbsId eq 'BBSMSTR_000000000711'}">
<!-- 청소년강사 공지사항 경우 -->
<span>
ㆍ저작권 교육 시스템 청소년 강사 공지사항입니다.
</span>
</c:when>
<c:when test="${brdMstrVO.bbsId eq 'BBSMSTR_000000000721'}">
<!-- 청소년강사 ZOOM 신청게시판 경우 -->
<span>
ㆍ저작권 교육 시스템 청소년 ZOOM 신청 게시판입니다.
</span>
</c:when>
<c:otherwise>
<span>
ㆍ저작권 교육 시스템과 관련된 사항을 전해드립니다.
<br>ㆍ궁금한 점은 담당자에게 문의해주십시오.
</span>
</c:otherwise>
</c:choose>
</div>
</div> --%>
</c:if>
<form name="frm" action="<c:url value='/web/cop/bbs/selectBoardList2024.do'/>" method="post">
<input type="hidden" name="menuNo" class="hiddenMenuNo" />
<c:if test="${not empty searchVO.seCd}"><%-- 구분값. 공모/결과 탭화면을 위한 --%>
<input type="hidden" name="seCd" value="<c:out value='${searchVO.seCd}'/>" />
</c:if>
<input type="hidden" name="bbsId" value="<c:out value='${boardVO.bbsId}'/>" />
<input type="hidden" name="nttId" value="0" />
<input type="hidden" name="nttIds" value="0" />
<input type="hidden" name="searchYear" value="<c:out value='${boardVO.searchYear}'/>" />
<input name="pageIndex" type="hidden" value="<c:out value='${searchVO.pageIndex}'/>" />
<input type="hidden" id= "mblDn" name="mblDn" value=""/>
<input type="hidden" id= "failRtnUrl" name="failRtnUrl" value="<c:out value='${failRtnUrl}'/>"/><!-- 인증체크 후 실패 url -->
<input type="hidden" id= "password" name="password" value=""/>
<div class="list_top">
<div class="list_top_left">
<label for="subSearch" class="label">검색조건 선택</label>
<select name="searchCnd" id="subSearch" class="selType1">
<option value="" <c:if test="${searchVO.searchCnd == ''}">selected="selected"</c:if>>전체</option>
<option value="0" <c:if test="${searchVO.searchCnd == '0'}">selected="selected"</c:if>>제목</option>
<option value="1" <c:if test="${searchVO.searchCnd == '1'}">selected="selected"</c:if>>내용</option>
</select>
</div>
<div class="btn_wrap">
<label for="subsearchTxt" class="label">검색어 입력</label>
<input type="text" id="subsearchTxt" name="searchWrd" placeholder="검색어를 입력해주세요" title="검색어 입력" size="30" value="<c:out value='${searchVO.searchWrd}'/>" >
<button type="button" class="btnType01" onclick="javascript:linkPage('1'); return false;">검색</button>
</div>
</div>
</form>
<div class="tb_list01">
<table>
<caption>공지사항 : 번호, 제목, 첨부, 작성일, 작성자, 조회수 등의 정보제공</caption>
<colgroup>
<col style="width:5%;">
<col style="width:auto;">
<c:choose>
<c:when test="${brdMstrVO.menuNo eq '9620000'}">
<col style="width:10%;"> <!-- 묻고답하기 -->
<col style="width:10%;">
<c:if test="${brdMstrVO.viewsYn ne 'N'}">
<col style="width:10%;">
</c:if>
</c:when>
<c:otherwise>
<c:if test="${brdMstrVO.fileAtchPosblAt == 'Y'}">
<col style="width:10%;">
</c:if>
<col style="width:10%;">
<col style="width:10%;">
<c:if test="${brdMstrVO.viewsYn ne 'N'}">
<col style="width:10%;">
</c:if>
</c:otherwise>
</c:choose>
</colgroup>
<thead>
<tr>
<th scrope="col">번호</th>
<th scrope="col">제목</th>
<c:choose>
<c:when test="${brdMstrVO.menuNo eq '9620000'}">
<th scope="col">작성일</th> <!-- 묻고답하기 -->
<th scope="col">처리현황</th>
<c:if test="${brdMstrVO.viewsYn ne 'N'}">
<th scope="col">조회수</th>
</c:if>
</c:when>
<c:otherwise>
<c:if test="${brdMstrVO.fileAtchPosblAt == 'Y'}">
<th scope="col">첨부</th>
</c:if>
<th scope="col">작성일</th>
<th scope="col">작성자</th>
<c:if test="${brdMstrVO.viewsYn ne 'N'}">
<th scope="col">조회수</th>
</c:if>
</c:otherwise>
</c:choose>
</tr>
</thead>
<tbody>
<c:if test="${'1' eq searchVO.pageIndex}">
<c:forEach var="result" items="${notifyList}" varStatus="status">
<tr>
<th scope="row" class="has_notice">
<p>
<span class="list_notice">공지</span>
</p>
</th>
<td class="t_left">
<a href="#none" onclick="javascript:fn_egov_inqire_notice('<c:out value="${result.bbsId}"/>', '<c:out value="${result.nttId}"/>');">
<c:out value="${result.nttSj}" />
</a>
</td>
<c:if test="${brdMstrVO.fileAtchPosblAt == 'Y'}"> <!-- 첨부파일 -->
<td>
<c:if test="${result.atchFileCnt > 0}">
<img src="<c:url value='/visitEdu/usr/publish/images/content/file_img.png'/>" alt="첨부파일 있음">
</c:if>
</td>
</c:if>
<td>
<p><c:out value="${result.frstRegisterPnttm}" /></p>
</td>
<td>
<p><c:out value="${result.frstRegisterNm}" /></p>
</td>
<c:if test="${brdMstrVO.viewsYn ne 'N'}">
<td>
<p><c:out value="${result.inqireCo}" /></p>
</td>
</c:if>
</tr>
</c:forEach>
</c:if>
<c:forEach var="result" items="${resultList}" varStatus="status">
<tr>
<th scope="row">
<p><c:out value="${paginationInfo.totalRecordCount+1 - ((searchVO.pageIndex-1) * searchVO.pageUnit + status.count)}" /></p>
</th>
<c:choose>
<c:when test="${brdMstrVO.menuNo eq '9620000'}">
<td class="t_left"><!-- 묻고답하기 -->
<a href="#none" onclick="javascript:fn_egov_inqire_notice('<c:out value="${result.bbsId}"/>', '<c:out value="${result.nttId}"/>');">
<c:out value="${result.nttSj}" />
</a>
</td>
<td>
<c:out value="${result.frstRegisterPnttm}" />
</td>
<c:if test="${brdMstrVO.viewsYn ne 'N'}">
<td><c:out value="${result.inqireCo}" /></td>
</c:if>
</c:when>
<c:otherwise>
<td class="t_left">
<a href="#none" onclick="javascript:fn_egov_inqire_notice('<c:out value="${result.bbsId}"/>', '<c:out value="${result.nttId}"/>');">
<c:out value="${result.nttSj}" />
</a>
</td>
<c:if test="${brdMstrVO.fileAtchPosblAt == 'Y'}"> <!-- 첨부파일 -->
<td>
<c:if test="${result.atchFileCnt > 0}">
<img src="<c:url value='/visitEdu/usr/publish/images/content/file_img.png'/>" alt="첨부파일 있음">
</c:if>
</td>
</c:if>
<td><c:out value="${result.frstRegisterPnttm}" /></td>
<td><c:out value="${result.frstRegisterNm}" /></td>
<c:if test="${brdMstrVO.viewsYn ne 'N'}">
<td><c:out value="${result.inqireCo}" /></td>
</c:if>
</c:otherwise>
</c:choose>
</tr>
</c:forEach>
<c:if test="${empty resultList}">
<tr class="row">
<c:choose>
<c:when test="${brdMstrVO.bbsId eq 'BBSMSTR_000000000721'}">
<td colspan="5">
검색된 내용이 없습니다.
</td>
</c:when>
<c:otherwise>
<td colspan="6">
검색된 내용이 없습니다.
</td>
</c:otherwise>
</c:choose>
</tr>
</c:if>
</tbody>
</table>
</div>
<div class="tb_list01_m">
<c:if test="${'1' eq searchVO.pageIndex}">
<c:forEach var="result" items="${notifyList}" varStatus="status">
<ul>
<li>
<span>번호</span>
<span><span class="list_notice">공지</span></span>
</li>
<li>
<span>제목</span>
<span>
<a href="#none" title="현재창 상세이동" onclick="javascript:fn_egov_inqire_notice('<c:out value="${result.bbsId}"/>', '<c:out value="${result.nttId}"/>');">
<c:out value="${result.nttSj}" />
</a>
</span>
</li>
<c:if test="${brdMstrVO.fileAtchPosblAt == 'Y'}"> <!-- 첨부파일 -->
<li>
<span>첨부</span>
<span>
<c:if test="${result.atchFileCnt > 0}">
<img src="<c:url value='/visitEdu/usr/publish/images/content/file_img.png'/>" alt="첨부파일 있음">
</c:if>
</span>
</li>
</c:if>
<li>
<span>작성일</span>
<span><c:out value="${result.frstRegisterPnttm}" /></span>
</li>
<li>
<span>작성자</span>
<span><c:out value="${result.frstRegisterNm}" /></span>
</li>
<li>
<span>조회</span>
<span><c:out value="${result.inqireCo}" /></span>
</li>
</ul>
</c:forEach>
</c:if>
<c:forEach var="result" items="${resultList}" varStatus="status">
<ul>
<li>
<span>번호</span>
<span>
<c:out value="${paginationInfo.totalRecordCount+1 - ((searchVO.pageIndex-1) * searchVO.pageUnit + status.count)}" />
</span>
</li>
<c:choose>
<c:when test="${brdMstrVO.menuNo eq '9620000'}">
<li>
<span>제목</span>
<span>
<a href="#none" title="현재창 상세이동" onclick="javascript:fn_egov_inqire_notice('<c:out value="${result.bbsId}"/>', '<c:out value="${result.nttId}"/>');">
<c:out value="${result.nttSj}" />
</a>
</span>
</li>
<li>
<span>작성일</span>
<span><c:out value="${result.frstRegisterPnttm}" /></span>
</li>
<c:if test="${brdMstrVO.viewsYn ne 'N'}">
<li>
<c:out value="${result.inqireCo}" />
</li>
</c:if>
</c:when>
<c:otherwise>
<li>
<span>제목</span>
<span>
<a href="#none" title="현재창 상세이동" onclick="javascript:fn_egov_inqire_notice('<c:out value="${result.bbsId}"/>', '<c:out value="${result.nttId}"/>');">
<c:out value="${result.nttSj}" />
</a>
</span>
</li>
<c:if test="${brdMstrVO.fileAtchPosblAt == 'Y'}"> <!-- 첨부파일 -->
<li>
<c:if test="${result.atchFileCnt > 0}">
<span>첨부</span>
<span><img src="<c:url value='/visitEdu/usr/publish/images/content/file_img.png'/>" alt="첨부파일 있음"></span>
</c:if>
</li>
</c:if>
<li>
<span>작성일</span>
<span><c:out value="${result.frstRegisterPnttm}" /></span>
</li>
<li>
<span>작성자</span>
<span><c:out value="${result.frstRegisterNm}" /></span>
</li>
<c:if test="${brdMstrVO.viewsYn ne 'N'}">
<li>
<span>조회수</span>
<span><c:out value="${result.inqireCo}" /></span>
</li>
</c:if>
</c:otherwise>
</c:choose>
</ul>
</c:forEach>
<%-- 게시물이 없을때 --%>
<c:if test="${empty resultList}">
</c:if>
</div>
<div class="btn_wrap btn_layout01">
<div class="btn_left">
</div>
<div class="btn_center">
</div>
<div class="btn_right">
<c:if test="${brdMstrVO.menuNo eq '9620000' || brdMstrVO.menuNo eq '9650000'|| brdMstrVO.menuNo eq '99923100' || brdMstrVO.menuNo eq '99923700'}">
<button type="button" class="btnType01" onclick="javascript:fn_egov_addNotice(); return false;">글쓰기</button>
</c:if>
</div>
</div>
<c:if test="${!empty resultList}">
<div class="page">
<ui:pagination paginationInfo = "${paginationInfo}" type="imageWeb" jsFunction="linkPage" />
</div>
</c:if>
</div>
<!--// content -->
</body>

View File

@ -0,0 +1,284 @@
<%--
Class Name : EgovNoticeInqire.jsp
Description : (사용자)게시물 조회 화면
Modification Information
수정일 수정자 수정내용
---------- -------- ---------------------------
2009.03.23 이삼섭 최초 생성
2009.06.26 한성곤 2단계 기능 추가 (댓글관리, 만족도조사)
2011.08.31 JJY 경량환경 버전 생성
2013.05.23 이기하 상세보기 오류수정
author : 공통서비스 개발팀 이삼섭
since : 2009.03.23
--%>
<%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn"%>
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%>
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form"%>
<%@ taglib prefix="validator" uri="http://www.springmodules.org/tags/commons-validator"%>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
<%pageContext.setAttribute("crlf", "\r\n"); %>
<head>
<script type="text/javascript">
$(document).ready(function(){
$(".btnType1").keyup(function(e){if(e.keyCode == 13) fn_egov_select_noticeList('1');});
});
function fnPopup(acType){
var mblDn = "";
var userNm = "";
var form = document.searchForm;
//temp Data
mblDn = "USRCNFRM_00000000320";
userNm = "우영두";
form.mblDn.value = mblDn;
form.ntcrNm.value = userNm;
if(acType == "delete"){
if (confirm('<spring:message code="common.delete.msg" />')) {
document.searchForm.action = "<c:url value='/web/cop/bbs/deleteBoardArticle.do'/>";
document.searchForm.submit();
}
}else{
document.searchForm.action = "<c:url value='/web/cop/bbs/forUpdateBoardArticle.do'/>";
document.searchForm.method = "get";
document.searchForm.submit();
}
}
var listPage = $(location).attr('href').split($(location).attr('host'))[1].split('Detail.do')[0]+'List.do'+'?bbsId=${brdMstrVO.bbsId}' ;
var detailPage = $(location).attr('href').split($(location).attr('host'))[1].split('?')[0] ;
function fn_egov_select_noticeList(pageNo) {
document.searchForm.action = listPage ;
document.searchForm.submit();
}
function fn_egov_select_detail(bbsId , nttId) { //이전/다음글 상세
if(listPage.indexOf("contentBbsList.do") > 0){ //컨텐츠 bbs 페이지경우
location.href=detailPage+"?bbsId="+bbsId + "&nttId="+nttId+"&menuNo="+$('#menuNo').val() ;
return
}
location.href=detailPage+"?bbsId="+bbsId + "&nttId="+nttId ;
}
function fn_egov_delete_notice() {
if (confirm('<spring:message code="common.delete.msg" />')) {
document.searchForm.action = "<c:url value='/web/cop/bbs/deleteBoardArticle.do'/>";
document.searchForm.submit();
}
}
function fn_egov_moveUpdt_notice(){
document.searchForm.action = "<c:url value='/web/cop/bbs/forUpdateBoardArticle.do'/>";
document.searchForm.method = "get";
document.searchForm.submit();
}
</script>
<!-- 댓글 작성 스크립트 -->
<c:if test="${brdMstrVO.addYn == 'Y'}">
<script type="text/javascript" src="<c:url value="/validator.do"/>"></script>
<validator:javascript formName="articleComment" staticJavascript="false" xhtml="true" cdata="false" />
<script type="text/javascript">
// 댓글 등록
function fn_egov_insert_commentList() {
var form = document.getElementById("articleCommentVO");
if (!validateArticleComment(form)){
return;
}
if (confirm('<spring:message code="common.regist.msg" />')) {
form.submit();
}
}
// 댓글 수정
function fn_egov_updt_commentList() {
var form = document.getElementById("articleCommentVO");
if (!validateArticleComment(form)){
return;
}
if (confirm('<spring:message code="common.update.msg" />')) {
form.modified.value = "true";
form.action = "<c:url value='/${siteId}/web/cop/cmt/updateArticleComment.do'/>";
form.submit();
}
}
// 댓글 수정 화면
function fn_egov_selectCommentForupdt(commentNo) {
var form = document.getElementById("articleCommentVO");
//form.subPageIndex.value = pageNo;
form.commentNo.value = commentNo;
form.action = "<c:url value='/web/cop/bbsWeb/selectBoardArticle.do'/>";
form.submit();
}
// 댓글 삭제
function fn_egov_deleteCommentList(commentNo) {
var form = document.getElementById("articleCommentVO");
if (confirm('<spring:message code="common.delete.msg" />')) {
form.modified.value = "true";
form.commentNo.value = commentNo;
form.action = "<c:url value='/${siteId}/web/cop/cmt/deleteArticleComment.do'/>";
form.submit();
}
}
/* 댓글페이징 */
function fn_egov_select_commentList(pageNo) {
var form = document.getElementById("articleCommentVO");
// form.subPageIndex.value = pageNo;
form.commentNo.value = '';
form.action = "<c:url value='/${siteId}/web/cop/bbsWeb/selectBoardArticle.do'/>";
form.submit();
}
</script>
</c:if>
</head>
<body>
<!-- contents 영역 -->
<form:form commandName="searchForm" name="searchForm" method="get" action="<c:url value='/web/cop/bbs/selectBoardList2024.do'/>">
<input name="pageIndex" type="hidden" value="<c:out value='${searchVO.pageIndex}'/>"/>
<input name="searchCnd" type="hidden" value="<c:out value='${searchVO.searchCnd}'/>"/>
<input name="searchWrd" type="hidden" value="<c:out value='${searchVO.searchWrd}'/>"/>
<input name="bbsId" type="hidden" value="<c:out value='${result.bbsId}'/>" />
<input name="nttId" type="hidden" value="<c:out value='${result.nttId}'/>" />
<input type="hidden" id= "ntcrNm" name="ntcrNm" value=""/>
<input type="hidden" id= "menuNo" name="menuNo" value="<c:out value='${masterVO.menuNo}'/>" />
</form:form>
<!-- contents 영역 -->
<c:set var="nttSj" value="${result.nttSj}"></c:set>
<div class="subCont">
<h3 class="contTit"><c:out value='${brdMstrVO.bbsNm}' /></h3>
<!-- view 영역 -->
<div class="contentWrap board">
<div class="viewWrap">
<div class="viewHead">
<h4 class="fwBold"><c:out value="${result.nttSj}" /></h4>
<ul class="infor">
<li>
<span >작성일 : <c:out value="${result.frstRegisterPnttm}" /></span>
<span class="inforLine">조회수 : <c:out value="${result.inqireCo}" /></span>
</li>
</ul>
</div>
<div class="viewCont c_222222 fs18">
<div class="contWrap">
<%-- <div class="tabCont">
<c:if test="${not empty fileList}">
<c:forEach var="result" items="${fileList}" varStatus="status">
<img src='<c:url value='/cmm/fms/getImage.do'/>?atchFileId=<c:out value="${result.atchFileId}"/>&fileSn=<c:out value="${result.fileSn}"/>' alt="">
</c:forEach>
</c:if>
</div>
<div class="tabNav">
<ul class="clearfix">
<li><button class="beforeBtn bxBefore3"><img src="/publish/image/main/sec3BeforeBtn.png" alt=""></button></li>
<li><button class="nextBtn bxNext3"><img src="/publish/image/main/sec3NextBtn.png" alt=""></button></li>
</ul>
</div> --%>
<ul class="imgView">
<c:if test="${not empty fileList}">
<c:forEach var="result" items="${fileList}" varStatus="status">
<li>
<img src='<c:url value='/cmm/fms/getImage.do'/>?atchFileId=<c:out value="${result.atchFileId}"/>&fileSn=<c:out value="${result.fileSn}"/>' alt="<c:out value='${nttSj}' />_<c:out value='${status.index+1}' />">
</li>
</c:forEach>
</c:if>
</ul>
<ul class="imgList">
<c:if test="${not empty fileList}">
<c:forEach var="result" items="${fileList}" varStatus="status">
<li>
<button type="button">
<img src='<c:url value='/cmm/fms/getImage.do'/>?atchFileId=<c:out value="${result.atchFileId}"/>&fileSn=<c:out value="${result.fileSn}"/>' alt="<c:out value='${nttSj}' />_<c:out value='${status.index+1}' />">
</button>
</li>
</c:forEach>
</c:if>
</ul>
<ul class="imgBtn">
<li><button class="imgPrev" title="이전 이미지로 이동"><img src="/publish/image/board/arrowLeft.png" alt="이전"></button></li>
<li><button class="imgNext" title="다음 이미지로 이동"><img src="/publish/image/board/arrowRight.png" alt="다음"></button></li>
</ul>
</div>
<p><c:out value="${result.nttCn}" escapeXml="false" /></p>
</div>
<c:if test="${not empty result.atchFileId}">
</c:if>
<ul class="attach">
<!-- <li><img src="/publish/image/board/fileIcon.png" alt="첨부파일 이미지">첨부파일 없음</li> -->
<c:import url="/cmm/fms/selectBBSFileInfs.do" charEncoding="utf-8">
<c:param name="param_atchFileId" value="${result.atchFileId}" />
<c:param name="pdf_view" value="Y" />
</c:import>
</ul>
<!-- btnWrap -->
<div class="btnWrap center">
<button type="button" class="btnType btnType1 w80" onclick="javascript:fn_egov_select_noticeList('1'); return false;">목록</button>
</div><!-- //btnWrap -->
<table class="listNav">
<caption>이전 다음 글보기</caption>
<colgroup>
<col data-veiw="th" style="width:140px">
<col data-veiw="td" style="width:auto">
</colgroup>
<tbody>
<tr>
<th scope="row" class="listNavNext">이전글</th>
<td>
<c:choose>
<c:when test="${empty prevNttIdNSj}">
이전글이 없습니다.
</c:when>
<c:otherwise>
<c:set var="prevNttId" value="${fn:split(prevNttIdNSj, '|')[0]}" />
<c:set var="prevNttSj" value="${fn:split(prevNttIdNSj, '|')[1]}" />
<c:set var="prevNttDate" value="${fn:split(prevNttIdNSj, '|')[2]}" />
<a href="#" onclick="fn_egov_select_detail('<c:out value='${result.bbsId}'/>' , '<c:out value='${prevNttId}'/>'); return false;" title="현재창 이전글이동">
<c:out value="${prevNttSj}" />
</a>
<span class="nb_date"><c:out value="${prevNttDate}" /></span>
</c:otherwise>
</c:choose>
</td>
</tr>
<tr>
<th scope="row" class="listNavPrev">다음글</th>
<td>
<c:choose>
<c:when test="${empty nextNttIdNSj}">
다음글이 없습니다.
</c:when>
<c:otherwise>
<c:set var="nextNttId" value="${fn:split(nextNttIdNSj, '|')[0]}" />
<c:set var="nextNttSj" value="${fn:split(nextNttIdNSj, '|')[1]}" />
<c:set var="nextNttDate" value="${fn:split(nextNttIdNSj, '|')[2]}" />
<a href="#" onclick="fn_egov_select_detail('<c:out value='${result.bbsId}'/>' , '<c:out value='${nextNttId}'/>'); return false;" title="현재창 다음글이동">
<c:out value="${nextNttSj}" />
</a>
<span class="nb_date"><c:out value="${nextNttDate}" /></span>
</c:otherwise>
</c:choose>
</td>
</tr>
</tbody>
</table>
</div>
</div><!-- // view 영역 -->
</div>
<!--//contents 영역 -->
</body>

View File

@ -0,0 +1,213 @@
<%--
Class Name : EgovNoticeList.jsp
Description : (사용자)게시물 목록화면
Modification Information
수정일 수정자 수정내용
------- -------- ---------------------------
2009.03.19 이삼섭 최초 생성
2011.08.31 JJY 경량환경 버전 생성
author : 공통서비스 개발팀 이삼섭
since : 2009.03.19
--%>
<%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn"%>
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
<head>
<script type="text/javascript">
function listLoad(){
$("#pageIndex").val($("#pageIndex").val()*1+1);
var sendData = $(document.frm).serializeArray();
$(".bbsList").append( $("#bbsLoad").load("/web/cop/bbs/selectMoreList2024Ajax.do", sendData ,function(response, status, xhr){
if ( status == "success" ) {
$("#bbsLoad").attr("id" , "bbsLoad_append")
$(".bbsList").append('<span id="bbsLoad" />') ;
$("#bbsLoad_append li").eq(0).find("a").focus();
}
}));
//$(".bbsList").append( $(".bbsList").load("/web/cop/bbsWeb/selectMoreListAjax.do", sendData ,function(response, status, xhr){ }) );
}
function press(event) {
if (event.keyCode == 13) {
linkPage('1');
}
}
function fn_egov_addNotice(){
document.frm.method = "post";
document.frm.action = "<c:url value='/web/cop/bbs/addBoardArticle.do'/>";
//document.frm.action = "<c:url value='/web/cop/selfauth/authentication.do'/>";
document.frm.submit();
}
function linkPage(pageNo) {
if(pageNo != 1){
document.frm.searchWrd.value = "";
document.frm.searchCnd.value = "";
}
var searchWrd = $.trim(document.frm.searchWrd.value);
var searchCnd = $.trim(document.frm.searchCnd.value);
// 정기간행물 키워드 검색 시. 년도 제거. 전체 년도 조회
if (_bbsId == "BBSMSTR_000000000006" && searchWrd != "") {
document.frm.searchYear.value = "";
}
document.frm.pageIndex.value = pageNo;
document.frm.method = "get";
document.frm.action = "<c:url value='/web/cop/bbs/selectBoardList2024.do'/>";
document.frm.submit();
}
function fn_chk_inqire_notice(bbsId, nttId){
document.frm.nttId.value = nttId;
document.frm.bbsId.value = bbsId;
var form = document.frm ;
var data = new FormData(form);
$.ajax({
type: "POST",
url: "/web/cop/bbsWeb/selectBoardChkDetailAjax.do",
async:false,
data: data,
dataType:'json',
processData: false,
contentType: false,
cache: false,
timeout: 600000,
success: function (returnData, status) {
if(status == 'success'){
if(returnData.mblDnFlag){
fn_egov_inqire_notice(returnData.searchVO.bbsId , returnData.searchVO.nttId);
}else{
var passck = prompt("비밀번호를 넣어주세요");
$('#password').val(passck) ;
fn_egov_inqire_notice(returnData.searchVO.bbsId , returnData.searchVO.nttId);
}
}else{
}
},
error: function (e) {
}
});
}
function fn_egov_inqire_notice(bbsId, nttId) {
document.frm.nttId.value = nttId;
document.frm.bbsId.value = bbsId;
document.frm.method = "get";
document.frm.action = "<c:url value='/web/cop/bbsWeb/selectBoardDetail.do'/>";
document.frm.submit();
}
function fn_egov_pdfView(atchFileId, fileSn){
window.open("/cmm/fms/pdfView.do?atchFileId="+atchFileId+"&fileSn="+fileSn+"");
}
function fn_egov_downFile(atchFileId, fileSn){
window.open("/cmm/fms/FileDown.do?atchFileId="+atchFileId+"&fileSn="+fileSn+"");
}
//이메일 선택 관련 설정 및 옵션 수정
function moreBbsList(){
}
var _bbsId = "${boardVO.bbsId}";
var _searchYear = "${boardVO.searchYear}";
</script>
</head>
<body>
<!-- contents 영역 -->
<div class="subCont">
<h3 class="contTit">${brdMstrVO.menuNm}</h3>
<!-- sub4_01 영역 -->
<div class="contentWrap board">
<div class="listTop clearfix">
<form name="frm" action="<c:url value='/web/cop/bbs/selectBoardList2024.do'/>" method="post">
<input type="hidden" name="menuNo" class="hiddenMenuNo" />
<input type="hidden" name="bbsId" value="<c:out value='${boardVO.bbsId}'/>" />
<input type="hidden" name="nttId" value="0" />
<input name="pageIndex" id="pageIndex" type="hidden" value="<c:out value='${searchVO.pageIndex}'/>" />
<!-- listSearch -->
<div class="listSearch">
<label for="subSearchPt">검색조건 선택</label>
<select name="searchCnd" class="selTxt search" id="subSearchPt">
<option value="" <c:if test="${searchVO.searchCnd == ''}">selected="selected"</c:if>>전체</option>
<option value="0" <c:if test="${searchVO.searchCnd == '0'}">selected="selected"</c:if>>제목</option>
<option value="1" <c:if test="${searchVO.searchCnd == '1'}">selected="selected"</c:if>>내용</option>
<!-- <option>제목+내용</option>
<option>작성자</option> -->
</select>
<label for="subsearchTxtPt">검색어 입력</label>
<input type="text" name="searchWrd" class="inpTxt search" id="subsearchTxtPt" placeholder="검색어를 입력해주세요." onfocus="this.placeholder=''" value='<c:out value="${searchVO.searchWrd}"/>'>
<button type="button" class="btnSearch" onclick="javascript:linkPage('1'); return false;">검색</button>
</div><!-- //listSearch -->
<p class="listTotal">총 <span>${resultCnt}</span> 건</p>
</form>
</div><!-- //listTop -->
<div class="galleryList">
<ul class="clearfix bbsList">
<c:forEach var="result" items="${resultList}" varStatus="status">
<c:if test="${status.count < 9 }">
<li>
<article>
<div class="imgBoxWrap">
<a href="javascript:fn_egov_inqire_notice('<c:out value="${result.bbsId}"/>', '<c:out value="${result.nttId}"/>');" title="현재창 상세이동">
<p class="mask">
<span>자세히보기</span>
</p>
<c:choose>
<c:when test="${result.atchFileCnt > 0}">
<img alt="${result.nttSj}" onerror="this.src='/img/post/no-img.png'" src='<c:url value='/cmm/fms/getImage.do'/>?atchFileId=<c:out value="${result.atchFileId}"/>&fileSn=<c:out value="${result.fileSn}"/>'/>
</c:when>
<c:otherwise>
<img alt="이미지없음" src='<c:url value='/img/post/no-img.png'/>' onerror="this.src='/img/post/no-img.png'" />
</c:otherwise>
</c:choose>
</a>
</div>
<div class="txtBox">
<a href="javascript:fn_egov_inqire_notice('<c:out value="${result.bbsId}"/>', '<c:out value="${result.nttId}"/>');" title="현재창 상세이동">
<h4><c:out value="${result.nttSj}" /></h4>
</a>
<div class="infor clearfix">
<span class="date"><c:out value="${result.inqireCo}" /> view</span>
<span class="date"><c:out value="${result.frstRegisterPnttm}" /></span>
</div>
</div>
</article>
</li>
</c:if>
</c:forEach>
<span id="bbsLoad" />
</ul>
</div><!-- //listCont -->
<!-- btnWrap -->
<c:if test="${!empty resultList}">
<!-- pageWrap -->
<ul class="pageWrap">
<ui:pagination paginationInfo = "${paginationInfo}" type="imageWeb" jsFunction="linkPage" />
</ul><!-- //pageWrap -->
</c:if>
<%-- <c:if test="${more}">
<div class="btnWrap">
<button type="button" class="btnType btnType4" onclick="listLoad(); return false;">더보기<i class="arrowDown"></i></button>
</div><!-- //btnWrap -->
</c:if> --%>
</div><!-- // sub4_01 영역 -->
</div>
<!--//contents 영역 -->
</body>

View File

@ -0,0 +1,61 @@
<%--
Class Name : EgovNoticeList.jsp
Description : (사용자)게시물 목록화면
Modification Information
수정일 수정자 수정내용
------- -------- ---------------------------
2009.03.19 이삼섭 최초 생성
2011.08.31 JJY 경량환경 버전 생성
author : 공통서비스 개발팀 이삼섭
since : 2009.03.19
--%>
<%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn"%>
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
<head>
<script>
$(document).ready(function(){
<c:if test="${!more}">
$('.btnWrap').remove();
</c:if>
});
</script>
</head>
<body>
<c:forEach var="result" items="${resultList}" varStatus="status">
<c:if test="${status.count < 9 }">
<li>
<article>
<a href="javascript:fn_egov_inqire_notice('<c:out value="${result.bbsId}"/>', '<c:out value="${result.nttId}"/>');" title="현재창 상세이동">
<div class="imgBoxWrap">
<div class="mask">
<p>자세히보기</p>
</div>
<c:choose>
<c:when test="${result.atchFileCnt > 0}">
<img onerror="this.src='/img/post/no-img.png'" alt="첨부파일" src='<c:url value='/cmm/fms/getImage.do'/>?atchFileId=<c:out value="${result.atchFileId}"/>&fileSn=<c:out value="${result.fileSn}"/>'/>
</c:when>
<c:otherwise>
<img alt="이미지 없음" src='<c:url value='/img/post/no-img.png'/>' onerror="this.src='/img/post/no-img.png'" />
</c:otherwise>
</c:choose>
</div>
<div class="txtBox">
<h4><c:out value="${result.nttSj}" /></h4>
<div class="infor clearfix">
<span class="date"><c:out value="${result.inqireCo}" /> view</span>
<span class="date"><c:out value="${result.frstRegisterPnttm}" /></span>
</div>
</div>
</a>
</article>
</li>
</c:if>
</c:forEach>
</body>

View File

@ -0,0 +1,86 @@
<%--
Class Name : FaqListAjax.jsp
Description : (사용자)자주하는 질문 Ajax
Modification Information
수정일 수정자 수정내용
------- -------- ---------------------------
2009.03.19 이삼섭 최초 생성
2011.08.31 JJY 경량환경 버전 생성
author : 공통서비스 개발팀 이삼섭
since : 2009.03.19
--%>
<%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn"%>
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
<head>
<script type="text/javascript">
$( document ).ready(function() {
});
//FAQ 답변 open&close
function faqOpen(item) {
if($(item).is(".slide_open") == true) {
$(item).removeClass("slide_open");
$(item).next(".answer").slideUp(300);
$(item).attr("title","답변 열기");
} else {
$(item).addClass("slide_open");
$(item).next(".answer").slideDown(300);
$(item).attr("title","답변 닫기");
$(item).closest("li").siblings("li").children(".question").removeClass("slide_open");
$(item).closest("li").siblings("li").children(".answer").slideUp(300);
$(item).closest("li").siblings("li").children(".question").attr("title","답변 열기");
}
}
</script>
</head>
<body>
<div class="cont_wrap" id="sub">
<div class="cont_tit">
<h2>${brdMstrVO.bbsNm}</h2>
<div class="sns_go">
<button type="button" title="새창열림"><img src="/visitEdu/usr/publish/images/content/facebook_icon.png" alt="페이스북 바로가기"></button>
<button type="button" title="새창열림"><img src="/visitEdu/usr/publish/images/content/twitter_icon.png" alt="트위터 바로가기"></button>
</div>
</div>
<div class="tit_box type2">
<i class="tit_box_icon2"></i>
<div>
<span>ㆍ각 영역별 자주하는 질문들을 모았습니다.<br>
ㆍ원하시는 질문과 대답이 없을 경우 문의하기 게시판을 이용해 주시기 바랍니다.</span>
</div>
</div>
<div class="faq_Wrap full_faq">
<ul class="faq">
<c:forEach var="result" items="${resultList}" varStatus="status">
<li>
<button type="button" title="답변 열기" class="question" onclick="faqOpen(this);">
<p class="qst_text"><span>질문</span>Q</p>
<p class="qst_cont"><c:out value="${result.nttSj}" /></p>
</button>
<div class="answer">
<div class="answer_in">
<p class="qst_text"><span>답변</span>A</p>
<p class="awr_cont">
<c:out value="${result.nttCn}" escapeXml="false"/>
</p>
</div>
</div>
</li>
</c:forEach>
</ul>
</div>
<div class="page">
<ui:pagination paginationInfo = "${paginationInfo}" type="imageWeb" jsFunction="linkPage" />
</div>
</div>
</body>

View File

@ -79,7 +79,7 @@ function fn_egov_inqire_notice(bbsId, nttId) {
document.frm.nttId.value = nttId;
document.frm.bbsId.value = bbsId;
document.frm.method = "post";
document.frm.action = "<c:url value='/web/cop/bbsWeb/selectBoardDetail.do'/>?pubDetail=Y";
document.frm.action = "<c:url value='/web/cop/bbs/selectBoardDetail2024.do'/>?pubDetail=Y";
document.frm.submit();
}
@ -347,7 +347,7 @@ function instrChk(){
-->
</ul>
</div>
<a href="<c:url value='/web/cop/bbsWeb/selectBoardList.do?bbsId=BBSMSTR_000000000653'/>" class="btn_plus">더보기</a>
<a href="<c:url value='/web/cop/bbs/selectBoardList2024.do?bbsId=BBSMSTR_000000000653'/>" class="btn_plus">더보기</a>
</div>
<!-- 교육자료실 -->