Merge branch 'jiwoo'

This commit is contained in:
jiwoo 2023-08-31 11:11:46 +09:00
commit 49576dc34c
8 changed files with 0 additions and 4054 deletions

View File

@ -1,389 +0,0 @@
<%--
Class Name : EgovNoticeUpdt.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="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%>
<%@ 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="ckeditor" uri="http://ckeditor.com"%>
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Language" content="ko">
<script type="text/javascript" src="<c:url value='/js/EgovBBSMng.js' />"></script>
<script type="text/javascript" src="<c:url value='/js/EgovMultiFileItn.js'/>"></script> <!-- 파일첨부, 썸네일이미지 있으면 미리보기 -->
<%-- <script type="text/javascript" src="<c:url value='/js/EgovMultiFile.js'/>"></script> --%>
<script type="text/javascript" src="<c:url value="/validator.do"/>"></script>
<validator:javascript formName="board" staticJavascript="false" xhtml="true" cdata="false" />
<script type="text/javascript">
function fn_egov_validateForm(obj) {
return true;
}
function fn_egov_regist_notice() {
CKEDITOR.instances.nttCn.updateElement();
if (!validateBoard(document.board))
return;
/* <c:if test="${bdMstr.bbsTyCode == 'BBST05' or bdMstr.bbsTyCode == 'BBST06'}">
// EgovMultiFile.js - 첨부파일 개수: _base.count default 1 | 수정 시 기첨부파일 개수: _base.update_count default 0
if ((_base.count + _base.update_count) < 2) {
alert("이미지 게시판의 경우 이미지 파일 첨부는 필수 입력값입니다.");
return false;
}
</c:if> */
/* <c:if test="${bdMstr.noticeYn == 'Y' && bdMstr.openYn == 'Y' }">
if (document.board.noticeAt.checked && document.board.secretAt.checked) {
alert("공지 글 등록 시 비밀글로 등록할 수 없습니다.");
//return false;
}
</c:if> */
//금지어 확인
var prohibitCheck = false;
var form = document.board ;
form.checkProhibitCn.value = form.nttSj.value + form.nttCn.value ;
var data = new FormData(form);
$.ajax({
type: "POST",
url: "/uss/ion/cnf/prohibitCheckAjax.do",
async:false,
data: data,
dataType:'json',
processData: false,
contentType: false,
cache: false,
timeout: 600000,
success: function (returnData, status) {
if(status == 'success'){
if(returnData.result == 'fail'){
}else if(returnData.result == 'auth_fail'){
}else if(returnData.result =='success'){
if(null != returnData.prohibitVO.prohibitCn){
alert( returnData.prohibitVO.prohibitCn + " 단어는 금지어로 등록되어 있는 단어입니다." );
prohibitCheck = true;
}
}
}else{
//alert("등록에 실패하였습니다.");
}
},
error: function (e) {
//alert("등록에 실패하였습니다.");
}
});
if(prohibitCheck){
return;
}
if (confirm('<spring:message code="common.update.msg" />')) {
document.board.action = "<c:url value='/cop/bbs/updateBoardArticle.do'/>";
document.board.target = "_self";
document.board.submit();
}
}
function fn_egov_select_noticeList() {
document.searchForm.action = "<c:url value='/cop/bbs/selectBoardList.do'/>";
document.searchForm.submit();
}
function fn_egov_regist_preview() {
var PCC_window = window.open('', 'PCCV3Window', 'width=850, height=570, resizable=1, scrollbars=yes, status=0, titlebar=0, toolbar=0, left=350, top=50' );
var previewImgs = "";
var i = 0;
$("#DIV_IMG_VIEW").find("img").each(function() {
previewImgs += $(this).get(0).src + "^";
i++;
});
document.board.previewImgs.value = previewImgs;
document.board.action = "<c:url value='/cop/bbs/bbsPreview.do'/>";
document.board.target = "PCCV3Window";
document.board.submit();
}
</script>
<title><c:out value='${bdMstr.bbsNm}' /> - 게시글 수정</title>
</head>
<body>
<div class="ad_content">
<div class="ad_con_head">
<div class="ad_head_text">
<p class="today_txt">
<c:out value='${bdMstr.bbsNm}' /> - 글 수정
</p>
<div class="ad_head_ment">
<p class="today_last_txt"><span id="cnt_cate_list"></span></p>
</div>
</div>
</div>
<div class="ad_subcon">
<form:form commandName="searchForm" name="searchForm" method="get" action="">
<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='${searchVO.bbsId}'/>" />
</form:form>
<form:form commandName="board" name="board" method="post" enctype="multipart/form-data">
<input type="hidden" name="pageIndex" value="<c:out value='${searchVO.pageIndex}'/>" />
<input type="hidden" name="searchCnd" value="<c:out value='${searchVO.searchCnd}'/>" />
<input type="hidden" name="searchWrd" value="<c:out value='${searchVO.searchWrd}'/>" />
<input type="hidden" name="bbsId" value="<c:out value='${board.bbsId}'/>" />
<input type="hidden" name="nttId" value="<c:out value='${board.nttId}'/>" />
<input type="hidden" name="atchFileCnt" value="<c:out value='${board.atchFileCnt}'/>" />
<input type="hidden" name="previewImgs" value="" />
<input type="hidden" name="checkProhibitCn" value="" />
<input type="hidden" name="siteId" value="<c:out value='${bdMstr.siteId}'/>" />
<!-- 기 업로드 파일 개수 -->
<div class="main1_div2">
<table class="main1_table">
<tr>
<th>
<spring:message code="cop.nttSj" var="msgNttSj" />
<span class="star_t">* </span>
<c:out value="${msgNttSj}" />
</th>
<td colspan="3">
<form:input path="nttSj" title="${msgNttSj}" />
<form:errors path="nttSj" />
</td>
</tr>
<%-- 비밀번호 사용안함.
<!-- 비밀번호 -->
<c:if test="${brdMstrVO.passwordYn == 'Y' }">
<c:set var="title"></c:set>
<tr>
<th><label for="password">비밀번호 <span class="pilsu"></span></label></th>
<td class="left">
<form:password path="password" title="비밀번호" size="30" maxlength="30" />
<div><form:errors path="password" cssClass="error" /></div>
</td>
<th><label for="password1">비밀번호 확인</label></th>
<td class="left">
<form:password path="password2" title="비밀번호" size="30" maxlength="30" />
<div><form:errors path="password2" cssClass="error" /></div>
</td>
</tr>
</c:if>
<!-- 비밀번호 --> --%>
<tr>
<th>
<span class="star_t">* </span><spring:message code="cop.nttCn" />
</th>
<td colspan="3">
<textarea id="nttCn" name="nttCn" title="<spring:message code="cop.nttCn" />" cols="500" rows="20">
<c:out value="${board.nttCn}" escapeXml="false" />
</textarea>
<ckeditor:replace replace="nttCn" basePath="${pageContext.request.contextPath}/html/egovframework/com/cmm/utl/ckeditor/" />
<form:errors path="nttCn" />
</td>
</tr>
<c:if test="${bdMstr.fileAtchPosblAt == 'Y'}">
<c:set var="isImgView" value="false" />
<c:set var="isImgBbs" value="false" />
<c:if test="${bdMstr.bbsTyCode == 'BBST05' || bdMstr.bbsTyCode == 'BBST06'}">
<c:set var="isImgView" value="true" />
<c:set var="isImgBbs" value="true" />
<tr>
<th>첨부파일 이미지</th>
<td colspan="3">
<div>
<c:import url="/cmm/fms/selectImageFileInfs.do" charEncoding="utf-8">
<c:param name="atchFileId" value="${board.atchFileId}" />
</c:import>
</div>
<div id="DIV_IMG_ATCH"></div>
</td>
</tr>
</c:if>
<c:if test="${not empty board.atchFileId}">
<tr>
<th>첨부파일목록</th>
<td colspan="3">
<c:import url="/cmm/fms/selectBBSFileInfsForUpdate.do" charEncoding="utf-8">
<c:param name="param_atchFileId" value="${board.atchFileId}" />
<c:param name="updateFlag" value="Y" />
<c:param name="isImgView" value="${isImgView}" />
</c:import>
</td>
</tr>
</c:if>
<tr>
<th>
<label for="egovComFileUploader"><spring:message code="cop.atchFile" /></label>
</th>
<td colspan="3">
<div>
<input name="file_1" id="egovComFileUploader" type="file" />
<div id="egovComFileList"></div>
</div>
<%-- <c:if test="${empty board.atchFileId}">
<input type="hidden" name="fileListCnt" value="0" />
</c:if> --%>
</td>
</tr>
</c:if>
<%--
<c:if test="${bdMstr.thumbAtchFileYn == 'Y'}">
<c:set var="isImgView" value="false" />
<c:set var="isImgBbs" value="false" />
<c:if test="${bdMstr.bbsTyCode == 'BBST05' || bdMstr.bbsTyCode == 'BBST06'}">
<c:set var="isImgView" value="true" />
<c:set var="isImgBbs" value="true" />
<tr>
<th>썸네일 이미지</th>
<td colspan="3">
<div>
<c:import url="/cmm/fms/selectImageFileInfs.do" charEncoding="utf-8">
<c:param name="thumbAtchFileId" value="${board.thumbAtchFileId}" />
</c:import>
</div>
<div id="DIV_IMG_THUMB"></div>
</td>
</tr>
</c:if>
<c:if test="${not empty board.thumbAtchFileId}">
<tr>
<th>썸네일파일목록</th>
<td colspan="3">
<c:import url="/cmm/fms/selectBBSFileInfsForUpdate.do" charEncoding="utf-8">
<c:param name="param_atchFileId" value="${board.thumbAtchFileId}" />
<c:param name="updateFlag" value="Y" />
<c:param name="isImgView" value="${isImgView}" />
</c:import>
</td>
</tr>
</c:if>
<tr>
<th>
<label for="thumbFileUploader">썸네일</label>
</th>
<td colspan="3">
<div>
<input name="file_2" id="thumbFileUploader" type="file" />
<div id="thumbFileUploaderList"></div>
</div>
<c:if test="${empty board.atchFileId}">
<input type="hidden" name="fileListCnt" value="0" />
</c:if>
</td>
</tr>
</c:if> --%>
<!-- 공지 여부 -->
<c:choose>
<c:when test="${bdMstr.noticeYn == 'Y'}">
<c:set var="title">공지여부 </c:set>
<tr>
<th>
<label for="noticeAt">${title}</label>
</th>
<td class="left" colspan="3">
<form:checkbox path="noticeAt" class="cb1" value="Y" />
<form:errors path="noticeAt" cssClass="error" />
</td>
</tr>
</c:when>
<c:otherwise>
<form:hidden path="noticeAt" value="N" />
</c:otherwise>
</c:choose>
<!-- 공지 여부 -->
<!-- 공개/비공개 여부 -->
<c:choose>
<c:when test="${bdMstr.openYn == 'Y' && bdMstr.bbsTyCode != 'BBST02' && bdMstr.bbsTyCode != 'BBST03'}">
<c:set var="title">비공개여부</c:set>
<tr>
<th>
<label for="secretAt">${title}</label>
</th>
<td colspan="3">
<form:checkbox path="secretAt" class="cb1" value="Y" />
<form:errors path="secretAt" cssClass="error" />
</td>
</tr>
</c:when>
<c:otherwise>
<form:hidden path="secretAt" value="N" />
</c:otherwise>
</c:choose>
<!-- 공개/비공개 여부 -->
</table>
<c:if test="${bdMstr.fileAtchPosblAt == 'Y'}">
<script type="text/javascript">
var maxFileNum = "<c:out value='${bdMstr.posblAtchFileNumber}'/>";
var maxFileSize = "<c:out value='${bdMstr.posblAtchFileSize}'/>";
if (maxFileNum == null || maxFileNum == "") {
maxFileNum = 0;
}
var multi_selector = new MultiSelector(document.getElementById('egovComFileList'),
maxFileNum, null, <c:out value="${isImgView}" />, maxFileSize, <c:out value="${isImgBbs}" />, 'atchFile' );
/* atchFile 구분자 추가 */
multi_selector.addElement(document.getElementById('egovComFileUploader'));
<c:if test="${not empty board.atchFileId}">
fn_egov_multi_selector_update_setting(multi_selector);
</c:if>
</script>
</c:if>
<%-- <c:if test="${bdMstr.thumbAtchFileYn == 'Y'}">
<script type="text/javascript">
var maxThumbFileSize = "<c:out value='${bdMstr.posblAtchFileSize}'/>";
var maxThumbFileNum = "1";
var multi_selector1 = new MultiSelector(document.getElementById('thumbFileUploaderList'),
maxThumbFileNum, null, <c:out value="${isImgView}" />, maxThumbFileSize, true, 'thumb' );
multi_selector1.addElement(document.getElementById('thumbFileUploader'));
<c:if test="${not empty board.thumbAtchFileId}">
fn_egov_multi_selector_update_setting(multi_selector);
</c:if>
</script>
</c:if> --%>
</div>
<!-- 버튼 시작(상세지정 style로 div에 지정) -->
<div class="main1_btn_div">
<button class="main1_btn" onclick="javascript:history.go(-1); return false;">취 소</button>
<button class="main1_btn" onclick="javascript:fn_egov_select_noticeList(); return false;">목 록</button>
<button class="main1_btn" onclick="javascript:fn_egov_regist_preview(); return false;">미리보기</button>
<button class="main1_btn main1_save_btn" id="main1_save_btn" onclick="javascript:fn_egov_regist_notice(); return false;">수 정 </button>
</div>
<!-- 버튼 끝 -->
</form:form>
</div>
</div>
</body>
</html>

View File

@ -1,322 +0,0 @@
<%--
Class Name : EgovIndvdlSchdulManageRegist.jsp
Description : 일정관리 등록 페이지
Modification Information
수정일 수정자 수정내용
------- -------- ---------------------------
2008.03.09 장동한 최초 생성
2011.08.31 JJY 경량환경 버전 생성
author : 공통서비스 개발팀 장동한
since : 2009.03.09
--%>
<%@ page contentType="text/html; charset=utf-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui"%>
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%>
<%@ 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" %>
<c:set var="ImgUrl" value="/images/egovframework/cop/smt/sim/"/>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>일정 등록</title>
<style type="text/css">
h1 {font-size:12px;}
caption {visibility:hidden; font-size:0; height:0; margin:0; padding:0; line-height:0;}
</style>
<meta http-equiv="Content-Language" content="ko" >
<link href="<c:url value='/'/>css/common.css" rel="stylesheet" type="text/css" >
<script type="text/javascript" src="<c:url value='/js/EgovCalPopup.js' />"></script>
<script type="text/javascript" src="<c:url value='/js/EgovMultiFile.js'/>" ></script>
<script type="text/javascript" src="<c:url value="/validator.do"/>"></script>
<validator:javascript formName="indvdlSchdulManageVO" staticJavascript="false" xhtml="true" cdata="false"/>
<script type="text/javaScript" language="javascript">
/* ********************************************************
* 초기화
******************************************************** */
function fn_egov_init_IndvdlSchdulManage(){
var maxFileNum = document.getElementById('posblAtchFileNumber').value;
if(maxFileNum==null || maxFileNum==""){
maxFileNum = 3;
}
var multi_selector = new MultiSelector( document.getElementById( 'egovComFileList' ), maxFileNum );
multi_selector.addElement( document.getElementById( 'egovComFileUploader' ) );
document.getElementsByName('reptitSeCode')[0].checked = true;
if("${indvdlSchdulManageVO.schdulBgnde}".length > 0){
var schdulBgnde = "${indvdlSchdulManageVO.schdulBgnde}";
document.getElementById("schdulBgndeYYYMMDD").value = schdulBgnde.substring(0,4) + "-" + schdulBgnde.substring(4,6) + "-" + schdulBgnde.substring(6,8);
}
if("${indvdlSchdulManageVO.schdulEndde}".length > 0){
var schdulEndde = "${indvdlSchdulManageVO.schdulEndde}";
document.getElementById("schdulEnddeYYYMMDD").value = schdulEndde.substring(0,4) + "-" + schdulEndde.substring(4,6) + "-" + schdulEndde.substring(6,8);
}
}
/* ********************************************************
* 목록 으로 가기
******************************************************** */
function fn_egov_list_IndvdlSchdulManage(){
location.href = "${pageContext.request.contextPath}/cop/smt/sim/EgovIndvdlSchdulManageMonthList.do";
}
/* ********************************************************
* 저장처리화면
******************************************************** */
function fn_egov_save_IndvdlSchdulManage(){
//form.submit();return;
var form = document.getElementById("indvdlSchdulManageVO");
if(confirm("<spring:message code="common.save.msg" />")){
if(!validateIndvdlSchdulManageVO(document.indvdlSchdulManageVO)){
return;
}else{
var schdulBgndeYYYMMDD = document.getElementById('schdulBgndeYYYMMDD').value;
var schdulEnddeYYYMMDD = document.getElementById('schdulEnddeYYYMMDD').value;
schdulBgndeYYYMMDD = schdulBgndeYYYMMDD.replaceAll('-','');
schdulEnddeYYYMMDD = schdulEnddeYYYMMDD.replaceAll('-','');
if(schdulBgndeYYYMMDD > schdulEnddeYYYMMDD) { alert("일정종료일자가 일정시작일자보다 작을수 없습니다"); return false; }
form.schdulBgnde.value = schdulBgndeYYYMMDD.replaceAll('-','') + fn_egov_SelectBoxValue('schdulBgndeHH') + fn_egov_SelectBoxValue('schdulBgndeMM') + '00';
form.schdulEndde.value = schdulEnddeYYYMMDD.replaceAll('-','') + fn_egov_SelectBoxValue('schdulEnddeHH') + fn_egov_SelectBoxValue('schdulEnddeMM') + '00';
form.submit();
}
}
}
/* ********************************************************
* RADIO BOX VALUE FUNCTION
******************************************************** */
function fn_egov_RadioBoxValue(sbName)
{
var FLength = document.getElementsByName(sbName).length;
var FValue = "";
for(var i=0; i < FLength; i++)
{
if(document.getElementsByName(sbName)[i].checked == true){
FValue = document.getElementsByName(sbName)[i].value;
}
}
return FValue;
}
/* ********************************************************
* SELECT BOX VALUE FUNCTION
******************************************************** */
function fn_egov_SelectBoxValue(sbName)
{
var FValue = "";
for(var i=0; i < document.getElementById(sbName).length; i++)
{
if(document.getElementById(sbName).options[i].selected == true){
FValue=document.getElementById(sbName).options[i].value;
}
}
return FValue;
}
/* ********************************************************
* PROTOTYPE JS FUNCTION
******************************************************** */
String.prototype.trim = function(){
return this.replace(/^\s+|\s+$/g, "");
}
String.prototype.replaceAll = function(src, repl){
var str = this;
if(src == repl){return str;}
while(str.indexOf(src) != -1) {
str = str.replace(src, repl);
}
return str;
}
</script>
</head>
<body onLoad="fn_egov_init_IndvdlSchdulManage()">
<noscript>자바스크립트를 지원하지 않는 브라우저에서는 일부 기능을 사용하실 수 없습니다.</noscript>
<!-- 전체 레이어 시작 -->
<div id="wrap">
<!-- header 시작 -->
<div id="header_mainsize"><c:import url="/EgovPageLink.do?link=main/inc/EgovIncHeader" /></div>
<div id="topnavi"><c:import url="/EgovPageLink.do?link=main/inc/EgovIncTopnav" /></div>
<!-- //header 끝 -->
<!-- container 시작 -->
<div id="container">
<!-- 좌측메뉴 시작 -->
<div id="leftmenu"><c:import url="/EgovPageLink.do?link=main/inc/EgovIncLeftmenu" /></div>
<!-- //좌측메뉴 끝 -->
<!-- 현재위치 네비게이션 시작 -->
<div id="content">
<div id="cur_loc">
<div id="cur_loc_align">
<ul>
<li>HOME</li>
<li>&gt;</li>
<li>사용자관리</li>
<li>&gt;</li>
<li><strong>일정관리 등록</strong></li>
</ul>
</div>
</div>
<!-- 검색 필드 박스 시작 -->
<div id="search_field">
<div id="search_field_loc"><h2><strong>일정관리 등록</strong></h2></div>
</div>
<form:form commandName="indvdlSchdulManageVO" action="${pageContext.request.contextPath}/cop/smt/sim/EgovIndvdlSchdulManageRegistActor.do" name="indvdlSchdulManageVO" method="post" enctype="multipart/form-data">
<div class="modify_user" >
<table>
<tr>
<th width="20%" height="23" class="required_text" >일정구분<img alt="required" src="<c:url value="/images/required.gif"/>" width="15" height="15" ></th>
<td width="80%" >
<form:select path="schdulSe">
<form:option value="" label="선택"/>
<form:options items="${schdulSe}" itemValue="code" itemLabel="codeNm"/>
</form:select>
<form:errors path="schdulSe" cssClass="error"/>
</td>
</tr>
<tr>
<th width="20%" height="23" class="required_text" >중요도<img alt="required" src="<c:url value="/images/required.gif"/>" width="15" height="15" ></th>
<td width="80%" >
<form:select path="schdulIpcrCode">
<form:option value="" label="선택"/>
<form:options items="${schdulIpcrCode}" itemValue="code" itemLabel="codeNm"/>
</form:select>
<form:errors path="schdulIpcrCode" cssClass="error"/>
</td>
</tr>
<tr>
<th width="20%" height="23" class="required_text" >부서<img alt="required" src="<c:url value="/images/required.gif"/>" width="15" height="15" ></th>
<td width="80%" >
<form:input path="schdulDeptName" size="73" cssClass="txaIpt" readonly="true" maxlength="1000" />
<form:hidden path="schdulDeptId" />
<form:errors path="schdulDeptName" cssClass="error"/>
</td>
</tr>
<tr>
<th width="20%" height="23" class="required_text" >일정명<img alt="required" src="<c:url value="/images/required.gif"/>" width="15" height="15" ></th>
<td width="80%" >
<form:input path="schdulNm" size="73" cssClass="txaIpt" />
<form:errors path="schdulNm" cssClass="error"/>
</td>
</tr>
<tr>
<th height="23" class="required_text" >일정 내용<img alt="required" src="<c:url value="/images/required.gif"/>" width="15" height="15" ></th>
<td>
<form:textarea path="schdulCn" rows="3" cols="80" />
<form:errors path="schdulCn" cssClass="error"/>
</td>
</tr>
<tr>
<th width="20%" height="23" class="required_text" >반복구분<img alt="required" src="<c:url value="/images/required.gif"/>" width="15" height="15" ></th>
<td width="80%">
<form:radiobutton path="reptitSeCode" value="1" />당일
<form:radiobutton path="reptitSeCode" value="2"/>반복
<form:radiobutton path="reptitSeCode" value="3"/>연속
<form:errors path="reptitSeCode" cssClass="error"/>
</td>
</tr>
<tr>
<th width="20%" height="23" class="required_text" >날짜/시간<img alt="required" src="<c:url value="/images/required.gif"/>" width="15" height="15" ></th>
<td width="80%" >
<form:input path="schdulBgndeYYYMMDD" size="11" readonly="true" maxlength="10" />
<a href="#LINK" onClick="javascript:fn_egov_NormalCalendar(document.indvdlSchdulManageVO, document.indvdlSchdulManageVO.schdulBgndeYYYMMDD,'','<c:url value='/sym/cmm/EgovselectNormalCalendar.do'/>');">
<img src="<c:url value='/images/calendar.gif' />" align="middle" style="border:0px" alt="일정시작달력" title="일정시작달력">
</a>
&nbsp;&nbsp;~&nbsp;&nbsp;
<form:input path="schdulEnddeYYYMMDD" size="11" readonly="true" maxlength="10" />
<a href="#LINK" onClick="javascript:fn_egov_NormalCalendar(document.indvdlSchdulManageVO, document.indvdlSchdulManageVO.schdulEnddeYYYMMDD,'','<c:url value='/sym/cmm/EgovselectNormalCalendar.do'/>');">
<img src="<c:url value='/images/calendar.gif' />" align="middle" style="border:0px" alt="일정종료달력" title="일정종료달력">
</a>&nbsp;&nbsp;
<form:select path="schdulBgndeHH">
<form:options items="${schdulBgndeHH}" itemValue="code" itemLabel="codeNm"/>
</form:select>시
<form:select path="schdulBgndeMM">
<form:options items="${schdulBgndeMM}" itemValue="code" itemLabel="codeNm"/>
</form:select>분
~
<form:select path="schdulEnddeHH">
<form:options items="${schdulEnddeHH}" itemValue="code" itemLabel="codeNm"/>
</form:select>시
<form:select path="schdulEnddeMM">
<form:options items="${schdulEnddeMM}" itemValue="code" itemLabel="codeNm"/>
</form:select>분
</td>
</tr>
<tr>
<th width="20%" height="23" class="required_text" >담당자<img alt="required" src="<c:url value="/images/required.gif"/>" width="15" height="15" ></th>
<td width="80%" >
<form:input path="schdulChargerName" size="73" cssClass="txaIpt" readonly="true" maxlength="10" />
<form:errors path="schdulChargerName" cssClass="error"/>
<form:hidden path="schdulChargerId" />
</td>
</tr>
<!-- 첨부파일 테이블 레이아웃 설정 Start.. -->
<tr>
<th height="23" class="required_text" >파일첨부</th>
<td>
<input name="file_1" id="egovComFileUploader" title="파일첨부" type="file" />
<div id="egovComFileList"></div>
</td>
</tr>
<!-- 첨부파일 테이블 레이아웃 End. -->
</table>
</div>
<!-- 버튼 시작(상세지정 style로 div에 지정) -->
<div class="buttons" style="padding-top:10px;padding-bottom:10px;">
<!-- 목록/저장버튼 -->
<table border="0" cellspacing="0" cellpadding="0" align="center">
<tr>
<td>
<a href="${pageContext.request.contextPath}/cop/smt/sim/EgovIndvdlSchdulManageMonthList.do" onclick="JavaScript:fn_egov_list_IndvdlSchdulManage(); return false;"><spring:message code="button.list" /></a>
</td>
<td>
<a href="#LINK" onclick="JavaScript:fn_egov_save_IndvdlSchdulManage();"><spring:message code="button.save" /></a>
</td>
</tr>
</table>
</div>
<!-- 버튼 끝 -->
<input name="cmd" id="cmd"type="hidden" value="<c:out value='save'/>"/>
<input type="hidden" name="schdulKindCode" id="schdulKindCode" value="2" />
<input type="hidden" name="cal_url" id="cal_url" value="<c:url value='/sym/cmm/EgovselectNormalCalendar.do'/>" />
<input type="hidden" name="schdulBgnde" id="schdulBgnde" value="" />
<input type="hidden" name="schdulEndde" id="schdulEndde" value="" />
<!-- 첨부파일 갯수를 위한 hidden -->
<input type="hidden" name="posblAtchFileNumber" id="posblAtchFileNumber" value="3" />
</form:form>
</div>
<!-- //content 끝 -->
</div>
<!-- //container 끝 -->
<!-- footer 시작 -->
<div id="footer"><c:import url="/EgovPageLink.do?link=main/inc/EgovIncFooter" /></div>
<!-- //footer 끝 -->
</div>
<!-- //전체 레이어 끝 -->
</body>
</html>

View File

@ -1,237 +0,0 @@
<%--
Class Name : FmsFileModify.jsp
Description : 첨부파일 수정 페이지
Modification Information
수정일 수정자 수정내용
------- -------- ---------------------------
2009.09.16 장동한 최초 생성
author : 공통서비스 개발팀 장동한
since : 2009.09.16
Copyright (C) 2009 by MOPAS All right reserved.
--%>
<%@ page contentType="text/html; charset=utf-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui"%>
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions"%>
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%>
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%>
<%
response.setHeader("Cache-Control","no-store");
response.setHeader("Pragma","no-cache");
response.setDateHeader("Expires",0);
if (request.getProtocol().equals("HTTP/1.1")) response.setHeader("Cache-Control", "no-cache");
%>
<c:set var="ImgUrl" value="${pageContext.request.contextPath}/images/egovframework/com/cmm/" />
<c:set var="CssUrl" value="${pageContext.request.contextPath}/css/egovframework/com/" />
<c:set var="JsUrl" value="${pageContext.request.contextPath}/js/egovframework/com/uss/ion/pwm/"/>
<!DOCTYPE html>
<html lang="ko">
<head>
<title>팝업창관리 관리</title>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<script type="text/javascript" src="<c:url value='/js/EgovMultiFile.js'/>"></script>
<script type="text/javaScript" language="javascript">
/* pagination 페이지 링크 function */
function fn_mainzone_link_page(){
document.searchForm.submit();
}
/* 등록시 값 확인 */
function fn_checkForm(flag) {
frm = document.writeForm;
if(frm.fmsNm.value=="") {
alert("제목을 입력해 주십시오");
frm.fmsNm.focus();
return false;
}
if(frm.content.value=="") {
alert("내용을 입력해 주십시오");
frm.content.focus();
return false;
}
if(flag==1){
if($('.input2').length == 0){
alert("첨부파일을 추가해 주십시오");
return false;
}
}
return true;
}
/* 글 등록 function */
function fn_mainzone_insert() {
frm = document.writeForm;
frm.action = "<c:url value='/uss/ion/fms/fmsFileInsert.do'/>";
if(fn_checkForm(1)){
frm.submit();
}
}
/* 글 수정 function */
function fn_mainzone_update() {
if($('.input2').length == 0){
alert("첨부파일을 추가해 주십시오");
return false;
}
var msg;
msg = "해당 첨부파일을 수정하시겠습니까?";
if (confirm(msg)) {
frm = document.writeForm;
frm.action = "<c:url value='/uss/ion/fms/fmsFileUpdate.do'/>";
if(fn_checkForm(2))
frm.submit();
}
}
/* 배너 삭제 function */
function fn_fmsfile_delete() {
var msg;
msg = "해당 첨부파일을 삭제하시겠습니까?";
if (confirm(msg)) {
frm = document.writeForm;
frm.del.value = frm.fmsId.value ;
frm.action = "<c:url value='/uss/ion/fms/fmsFileListDelete.do'/>";
frm.submit();
}
}
</script>
</head>
<body>
<form name="writeForm" enctype="multipart/form-data" method="post">
<input type="hidden" name="selectedId" />
<input type="hidden" name="del" />
<input type="hidden" name="fmsId" value="${fmsFileList[0].fmsId}" />
<input type="hidden" name="fmsImageFile" value="${fmsFileList[0].fmsImageFile}" />
<div class="ad_content">
<div class="ad_con_head">
<div class="ad_head_text">
<p class="today_txt">첨부파일 관리</p>
<div class="ad_head_ment">
<p class="today_last_txt"><span id="cnt_cate_list"></span></p>
</div>
</div>
</div>
<div class="ad_subcon">
<div class="main1_div2">
<table class="main1_table">
<c:if test="${siteId eq 'super'}">
<tr>
<th><span class="star_t">* </span>사이트</th><td colspan="3">
<select name="siteId" title="권한">
<c:forEach var="resultList" items="${siteManageList}" varStatus="status">
<option value="<c:out value="${resultList.siteId}"/>"
<c:if test="${fmsFileList[0].siteId eq resultList.siteId}"> selected='selected' </c:if>>
<c:out value="${resultList.siteNm}"/>
</option>
</c:forEach>
</select>
</td>
</tr>
</c:if>
<tr>
<th class="td_title1"><span class="star_t">*</span>제목</th>
<td colspan="3">
<input name="fmsNm" value="${fmsFileList[0].fmsNm}" title="fmsNm" maxlength="100" />
<%-- <form:input path="fmsNm" maxlength="200" /> --%>
</td>
</tr>
<tr>
<th class="td_title1"><span class="star_t">*</span>내용</th>
<td colspan="3">
<%-- <form:input path="content" maxlength="100" /> --%>
<input name="content" value="${fmsFileList[0].content}" title="content" maxlength="100" />
</td>
</tr>
<tr>
<th class="td_title1"><span class="star_t">*</span>파일 첨부</th>
<td colspan="3" class="td_txt_exist">
<input name="file_1" id="egovComFileUploader" type="file" />
<div id="egovComFileList"></div>
<c:import url="/cmm/fms/selectBBSFileInfsForUpdate.do" charEncoding="utf-8">
<c:param name="param_atchFileId" value="${fmsFileList[0].fmsImageFile}" />
<c:param name="updateFlag" value="Y" />
<c:param name="isImgView" value="false" />
</c:import>
</td>
</tr>
<c:if test="${!empty fmsFileList[0].fmsId }">
<tr>
<th class="td_title1"><span class="star_t"></span>첨부이미지 링크</th>
<td colspan="3">
<c:forEach var="result" items="${fmsFileList}" varStatus="status">
<c:if test="${result.fileExtsn eq 'jpg' ||
result.fileExtsn eq 'jpeg' ||
result.fileExtsn eq 'png' ||
result.fileExtsn eq 'bmp' ||
result.fileExtsn eq 'gif' ||
result.fileExtsn eq 'img' }">
<a href='${result.fmsLink}' target="_blank">${result.fmsLink}</a> (${result.orignlFileNm})</br>
</c:if>
</c:forEach>
</td>
</tr>
<tr>
<th class="td_title1"><span class="star_t"></span>첨부다운로드 링크</th>
<td colspan="3">
<c:forEach var="result" items="${fmsFileList}" varStatus="status">
<a href='${result.fmsDownLink}'>${result.fmsDownLink}</a> (${result.orignlFileNm})</br>
</c:forEach>
</td>
</tr>
<tr>
<th class="td_title1"><span class="star_t"></span>최종수정일</th>
<td colspan="3">
${fmsFileList[0].moddt }
</td>
</tr>
<tr>
<th class="td_title1"><span class="star_t"></span>작성자</th>
<td colspan="3">
${fmsFileList[0].registerId }
</td>
</tr>
</c:if>
</table>
</div>
<div class="main1_btn_div">
<button class="main1_btn" onclick="fn_mainzone_link_page(); return false;" >목 록</button>
<c:if test="${!empty fmsFileList[0].fmsId }">
<button class="main1_btn main1_delete_btn" id="main1_auth_delete_btn" onclick="fn_fmsfile_delete(); return false;" >삭 제 </button>
<button class="main1_btn main1_save_btn" id="main1_save_btn" onclick="fn_mainzone_update(); return false;" >수 정 </button>
</c:if>
<c:if test="${empty fmsFileList[0].fmsId }">
<button class="main1_btn main1_save_btn" id="main1_save_btn" onclick="fn_mainzone_insert(); return false;">저 장</button>
</c:if>
</div>
</div>
</div>
<script type="text/javascript">
var maxFileNum = "5";
var maxFileSize = "10";
if (maxFileNum == null || maxFileNum == "") {
maxFileNum = 0;
}
var multi_selector = new MultiSelector(document.getElementById('egovComFileList'),
maxFileNum, null,false, maxFileSize, false);
multi_selector.addElement(document.getElementById('egovComFileUploader'));
<c:if test="${not empty fmsFileList[0].fmsImageFile}">
fn_egov_multi_selector_update_setting(multi_selector);
</c:if>
</script>
</form>
<form name="searchForm" id="searchForm" method="get" action="<c:url value='/uss/ion/fms/fmsFileList.do'/>" ></form>
</body>
</html>

View File

@ -1,823 +0,0 @@
<%--
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" %>
<%
NiceID.Check.CPClient niceCheck = new NiceID.Check.CPClient();
String sSiteCode = "XC123"; // NICE로부터 부여받은 사이트 코드
String sSitePassword = "000000000000"; // NICE로부터 부여받은 사이트 패스워드
String sRequestNumber = "REQ0000000001"; // 요청 번호, 이는 성공/실패후에 같은 값으로 되돌려주게 되므로
// 업체에서 적절하게 변경하여 쓰거나, 아래와 같이 생성한다.
sRequestNumber = niceCheck.getRequestNO(sSiteCode);
session.setAttribute("REQ_SEQ" , sRequestNumber); // 해킹등의 방지를 위하여 세션을 쓴다면, 세션에 요청번호를 넣는다.
String sAuthType = ""; // 없으면 기본 선택화면, M: 핸드폰, C: 신용카드, X: 공인인증서
String popgubun = "N"; //Y : 취소버튼 있음 / N : 취소버튼 없음
String customize = ""; //없으면 기본 웹페이지 / Mobile : 모바일페이지
String sGender = ""; //없으면 기본 선택 값, 0 : 여자, 1 : 남자
// CheckPlus(본인인증) 처리 후, 결과 데이타를 리턴 받기위해 다음예제와 같이 http부터 입력합니다.
//리턴url은 인증 전 인증페이지를 호출하기 전 url과 동일해야 합니다. ex) 인증 전 url : http://www.~ 리턴 url : http://www.~
String sReturnUrl = "http://www.test.co.kr/checkplus_success.jsp"; // 성공시 이동될 URL
String sErrorUrl = "http://www.test.co.kr/checkplus_fail.jsp"; // 실패시 이동될 URL
// 입력될 plain 데이타를 만든다.
String sPlainData = "7:REQ_SEQ" + sRequestNumber.getBytes().length + ":" + sRequestNumber +
"8:SITECODE" + sSiteCode.getBytes().length + ":" + sSiteCode +
"9:AUTH_TYPE" + sAuthType.getBytes().length + ":" + sAuthType +
"7:RTN_URL" + sReturnUrl.getBytes().length + ":" + sReturnUrl +
"7:ERR_URL" + sErrorUrl.getBytes().length + ":" + sErrorUrl +
"11:POPUP_GUBUN" + popgubun.getBytes().length + ":" + popgubun +
"9:CUSTOMIZE" + customize.getBytes().length + ":" + customize +
"6:GENDER" + sGender.getBytes().length + ":" + sGender;
String sMessage = "";
String sEncData = "";
int iReturn = niceCheck.fnEncode(sSiteCode, sSitePassword, sPlainData);
if( iReturn == 0 )
{
sEncData = niceCheck.getCipherData();
}
else if( iReturn == -1)
{
sMessage = "암호화 시스템 에러입니다.";
}
else if( iReturn == -2)
{
sMessage = "암호화 처리오류입니다.";
}
else if( iReturn == -3)
{
sMessage = "암호화 데이터 오류입니다.";
}
else if( iReturn == -9)
{
sMessage = "입력 데이터 오류입니다.";
}
else
{
sMessage = "알수 없는 에러 입니다. iReturn : " + iReturn;
}
%>
<head>
<!-- lightbox -->
<link type="text/css" rel="stylesheet" href="/css/featherlight.min.css">
<link rel="stylesheet" href="/pb/css/reset.css">
<link rel="stylesheet" href="/pb/css/common.css">
<link rel="stylesheet" href="/pb/css/content.css">
<link rel="stylesheet" href="/pb/css/popup.css">
<script src="/js/featherlight.min.js" type="text/javascript" charset="utf-8"></script>
<script type="text/javascript">
window.name ="Parent_window";
function fnPopup(){
//window.open('', 'popupChk', 'width=500, height=550, top=100, left=100, fullscreen=no, menubar=no, status=no, toolbar=no, titlebar=yes, location=no, scrollbar=no');
//document.form_chk.action = "https://nice.checkplus.co.kr/CheckPlusSafeModel/checkplus.cb";
//document.form_chk.target = "popupChk";
//document.form_chk.submit();
var mblDn = "";
var userNm = "";
var form = document.frm;
//temp Data
mblDn = "USRCNFRM_00000000320";
userNm = "우영두";
form.mblDn.value = mblDn;
form.ntcrNm.value = userNm;
fn_egov_addNotice();
}
function press(event) {
if (event.keyCode == 13) {
fn_egov_select_noticeList('1');
}
}
function fn_egov_addNotice() {
document.frm.method = "get";
document.frm.action = "<c:url value='/web/cop/bbs/addBoardArticle.do'/>";
document.frm.submit();
}
function fn_egov_select_noticeList(pageNo) {
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/bbsWeb/selectBoardList.do'/>";
<c:if test="${!empty loginId}">
if(""!= document.frm.searchWrd.value){
updateRecentSearch();//최근검색어 등록
}
</c:if>
document.frm.submit();
}
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/selectBoardArticle.do'/>";
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 selectEmail(){
var select =$($("select[name=selectEmailAdres_ins] option:selected")[1]).val();
$($("input[name=emailAdres_ins]")[1]).val(select);
if(select ==""){
$($("input[name=emailAdres_ins]")[1]).attr("readonly",false).attr("disabled",false);
}else{
$($("input[name=emailAdres_ins]")[1]).attr("readonly",true).attr("disabled",false);
}
}
function submit(){ //캡차모듈 등록
var answer = $($("input[name=answer]")[1]).val();
if(!answer){
alert('이미지에 보이는 숫자 또는 스피커를 통해 들리는 숫자를 입력해 주세요.');
}else{
$.ajax({
type:"POST",
url:"/captcha/captchaSubmit.do",
data:{
"answer": answer
},
dataType:'json',
success:function(returnData, status){
if(status == "success") {
alert(returnData.message);
if(returnData.answerYN == "Y") {
$($("input[name=answerYN]")[1]).val('Y');// 자동등록 입력값이 맞으면 Y 틀리면 기본값 N 으로 된다.
}
}else{ alert("ERROR!");return;}
},
error:function(request , status, error){
alert("code:"+request.status+"\n"+"message:"+request.responseText+"\n"+"error:"+error);
}
});
}
}
function fn_ajax_noticeInsert(){
if(!$('input:checkbox[id="check"]').is(":checked")){
alert("개인정보수집동의에 동의하여 주세요.");
return;
}
if($($("input[name=userNm_ins]")[1]).val() ==""){
alert("이름을 넣어주세요.");
return ;
};
if(""==$($("input[name=emailId_ins]")[1]).val()){
alert("이메일 주소를 넣어주세요.");
$($("input[name=emailId_ins]")[1]).focus();
return;
}
if(""==$($("input[name=emailAdres_ins]")[1]).val()){
alert("이메일 주소를 넣어주세요.");
$($("input[name=emailAdres_ins]")[1]).focus();
return;
}
var email = $($("input[name=emailId_ins]")[1]).val()+"@"+$($("input[name=emailAdres_ins]")[1]).val();
if(!validateCheck_(email, '이 메일형식이 올바르지 않습니다.')){
return ;
}
var regCall = /^[0-9]+$/;
var msg = '연락처에는 숫자만 입력이 가능합니다.';
if(!validateCheck_($($("input[name=call]")[1]).val(), msg, regCall)){
$($("input[name=call]")[1]).focus();
return;
}
if(!validateCheck_($($("input[name=call_1]")[1]).val(), msg, regCall)){
$($("input[name=call_1]")[1]).focus();
return;
}
if(!validateCheck_($($("input[name=call_2]")[1]).val(), msg, regCall)){
$($("input[name=call_2]")[1]).focus();
return;
}
var callNum = $($("input[name=call]")[1]).val()+"-"+$($("input[name=call_1]")[1]).val()+"-"+$($("input[name=call_2]")[1]).val()
if($($("input[name=zip]")[1]).val() ==""){
alert("주소를 넣어주세요");
$($("input[name=zip]")[1]).focus();
return ;
};
if($($("input[name=detailAdres]")[1]).val() ==""){
alert("상세주소를 넣어주세요");
$($("input[name=detailAdres]")[1]).focus();
return ;
};
var letterForm = document.letterForm;
letterForm.userNm.value = $($("input[name=userNm_ins]")[1]).val() ; // 이름
letterForm.emailAdres.value = $($("input[name=emailId_ins]")[1]).val()+"@"+$($("input[name=emailAdres_ins]")[1]).val();
letterForm.mbtlNum.value = callNum; // 전화번호
letterForm.userZip.value = $($("input[name=zip]")[1]).val(); // 우편번호
letterForm.userAdres.value = $($("input[name=adres]")[1]).val(); // 기본주소
letterForm.userDetailAdres.value = $($("input[name=detailAdres]")[1]).val(); // 상세주소
var params = $(letterForm).serialize();
var url = "<c:url value='/web/cop/bbs/insertSubsrUserAjax.do'/>";
$.ajax({
type:"POST",
"url":url,
data:params,
dataType:'json',
//timeout:(1000*30),
success : function(returnData, status) {
if (returnData.status == "success") {
$('.featherlight-close-icon').trigger("click");
alert("정기간행물을 신청해 주셔서 감사합니다.");
}else if(returnData.status == "dupl"){
$('.featherlight-close-icon').trigger("click");
alert("이미 정기간행물을 신청하시고 계십니다.");
}else if(returnData.status == "authfail"){
$('.featherlight-close-icon').trigger("click");
alert("본인 인증이 필요합니다.");
}else{ alert("ERROR"); return;}
},
error : function(request , status, error) {
alert("정기간행물 저장이 실패되었습니다.");
//alert("code:"+request.status+"\n"+"message:"+request.responseText+"\n"+"error:"+error);
},
complete : function(){
}
});
}
var regExp;
function validateCheck_(checkString, msg, regP) {
regExp = /^[0-9a-zA-Z]([-_\.]?[0-9a-zA-Z])*@[0-9a-zA-Z]([-_\.]?[0-9a-zA-Z])*\.[a-zA-Z]{2,3}$/i;
if(regP !== undefined) regExp = regP;
if(regExp.test(checkString)==false){
alert(msg);
return false;
}else{
return true;
}
}
// 년도 선택 처리
function fnSchduleSearch(mode, cnd) {
var searchYear = document.frm.searchYear.value;
var searchDate = new Date(searchYear, "1", "1");
if (mode == "navi") {
if (cnd == 'prev') searchDate.setYear(searchDate.getFullYear()-1);
else if (cnd == 'next') searchDate.setFullYear(searchDate.getFullYear()+1);
} else if (mode == "year") {
searchDate.setFullYear(cnd);
}
if (searchDate.getFullYear() == "2013"
|| searchDate.getFullYear() == "2020") return;
document.frm.searchYear.value = searchDate.getFullYear();
document.frm.searchWrd.value = "";
document.frm.pageIndex.value = 1;
document.frm.method = "get";
document.frm.action = "<c:url value='/web/cop/bbsWeb/selectBoardList.do'/>";
document.frm.submit();
}
// 정기간행물 정기구독 신청
function fn_add_periodicals() {
// 인증 체크
authCheckAjax("periodicals", '');
// 원대리 자리
}
// 정기간행물 정기구독 신청 팝업
function fn_pop_periodicals(userNm) {
$.featherlight.close(); // 팝업닫기.
//$.featherlight($("#fla1"), {});
// 접근성을 위한 tabindex 부여
$.featherlight( $("#fla1"), {
afterOpen: function() {
var count = 1;
$( '.featherlight' ).find( 'input, select, textarea, button.continue' ).each( function() {
$( this ).attr( 'tabindex', count++ );
});
},
});
$($("input[name=userNm_ins]")[1]).val(userNm);
}
<%--
// test 본인인증 처리
function testAuth() {
var returnType= "/web/cop/bbsWeb/selectBoardList.do?bbsId=BBSMSTR_000000000006";
document.authFrm.returnType.value = returnType;
document.authFrm.action = "<c:url value='/web/cop/selfauth/authenticationResult.do'/>";
document.authFrm.submit();
}
--%>
var _bbsId = "${boardVO.bbsId}";
var _searchYear = "${boardVO.searchYear}";
$(document).ready(function() {
if($(location).attr('host').indexOf("kcdf.or.kr") != -1){
if($(location).attr('host').indexOf("www") == -1){
var strurl = $(location).attr('href');
strurl = strurl.replace("kcdf.or.kr", "www.kcdf.or.kr");
window.location.replace(strurl);
}
}
// 정기간행물 년도 바 or 사업실명제 년도 바
if (_bbsId == "BBSMSTR_000000000006" || _bbsId == "BBSMSTR_000000000103") {
if (_searchYear == "") {
$("#searchYear").attr("class", "current");
} else {
$("#searchYear_"+_searchYear).attr("class", "current");
}
}
});
</script>
<style>
.td_datetimeNotBold {text-align:center; width:100px; color:#222; line-height:22px;}
.td_datetimeNotBold .month {font-size:23px;}
.td_datetimeNotBold .year_day {font-size:15px;}
.td_list .text .subjectNotBold {color:#000; font-size:18px;}
.gal_thum_text_wrNotBold {padding:10px 20px; overflow:hidden;}
.gal_thum_text_wrNotBold .subject {
font-size:17px; color:#000; margin-bottom:7px; border-bottom:1px solid #ddd; width:100%; padding-bottom:7px;
text-overflow:ellipsis;overflow: hidden;white-space: nowrap;
}
.gal_thum_text_wrNotBold .text_list {font-size:14px; color:#000; line-height:20px;}
.gal_thum_text_wrNotBold .text_list span {font-size:14px; color:#000; margin-right:5px;}
.gal_thum_text_wrNotBold .date_list {float:left; font-size:12px; color:#838383; padding-top:7px;}
.gal_thum_text_wrNotBold .date_list li {float:left; margin-right:10px;}
.gal_thum_text_wrNotBold .date_list span {font-size:12px; color:#000; margin-right:5px;}
.gallery_board_wrNotBold .img, .gal_thum_text_wr {cursor:pointer; }
.gal_thum_text_wrNotBold .more_list {float:right; margin-top:5px; }
.gal_thum_text_wrNotBold .more_list li {float:left; margin-left:5px;}
.td_list .text .con_textNotBold {color:#888; font-size:14px; margin-top:5px;line-height:16px}
</style>
</head>
<body>
<div id="container">
<h3 style="display:inline-block;"><span>${brdMstrVO.bbsNm}</span></h3>
<c:if test="${'Y' eq brdMstrVO.writeYn}">
<button class="plus_btn" type="button" value="등록" onclick="javascript:fnPopup(); return false;" style="display:inline-block;margin-left:81%;margin-top:-20px;" >글쓰기</button>
</c:if>
<!--내용s-->
<div class="con_page">
<!-- 탭 구분s -->
<!-- 채용공고/결과 -->
<c:if test="${boardVO.bbsId eq 'BBSMSTR_000000000124'}">
<ul class="board_tab">
<c:if test="${empty boardVO.seCd or boardVO.seCd eq 'SE01'}"><%-- 채용공고 --%>
<li class="current"><a href="#">채용공고</a></li>
<li><a href="/web/cop/bbsWeb/selectBoardList.do?bbsId=BBSMSTR_000000000124&seCd=SE02">채용결과</a></li>
</c:if>
<c:if test="${boardVO.seCd eq 'SE02'}"><%-- 채용결과 --%>
<li><a href="/web/cop/bbsWeb/selectBoardList.do?bbsId=BBSMSTR_000000000124&seCd=SE01">채용공고</a></li>
<li class="current"><a href="#">채용결과</a></li>
</c:if>
</ul>
</c:if>
<!-- 사업공모/결과 -->
<c:if test="${boardVO.bbsId eq 'BBSMSTR_000000000119'}">
<ul class="board_tab">
<c:if test="${empty boardVO.seCd or boardVO.seCd eq 'SE01'}"><%-- 사업공모 --%>
<li class="current"><a href="#">사업공모</a></li>
<li><a href="/web/cop/bbsWeb/selectBoardList.do?bbsId=BBSMSTR_000000000119&seCd=SE02">공모결과</a></li>
</c:if>
<c:if test="${boardVO.seCd eq 'SE02'}"><%-- 사업공모 --%>
<li><a href="/web/cop/bbsWeb/selectBoardList.do?bbsId=BBSMSTR_000000000119&seCd=SE01">사업공모</a></li>
<li class="current"><a href="#">공고결과</a></li>
</c:if>
</ul>
</c:if>
<!-- 탭 구분e -->
<!-- 사업실명제 년도 바s -->
<c:if test="${boardVO.bbsId eq 'BBSMSTR_000000000103'}">
<style lang="text/css">
.tab_wid4 li { width: 20%; }
</style>
<ul class="tab tab_wid4">
<li id="searchYear"><a href="/web/cop/bbsWeb/selectBoardList.do?bbsId=${searchVO.bbsId}">전체</a></li>
<li id="searchYear_2019"><a href="/web/cop/bbsWeb/selectBoardList.do?bbsId=${searchVO.bbsId}&searchYear=2019">2019</a></li>
<li id="searchYear_2018"><a href="/web/cop/bbsWeb/selectBoardList.do?bbsId=${searchVO.bbsId}&searchYear=2018">2018</a></li>
<li id="searchYear_2017"><a href="/web/cop/bbsWeb/selectBoardList.do?bbsId=${searchVO.bbsId}&searchYear=2017">2017</a></li>
<li id="searchYear_2016"><a href="/web/cop/bbsWeb/selectBoardList.do?bbsId=${searchVO.bbsId}&searchYear=2016">2016</a></li>
<c:forEach var="yearResult" items="${yearResult}" varStatus="status">
<li
<c:if test="${yearResult.code eq searchVO.bbsYear}">
class="current"
</c:if>
><a href="/web/cop/bbsWeb/selectBoardList.do?bbsId=${searchVO.bbsId}&searchYear=2018">2018</a></li>
</c:forEach>
</ul>
</c:if>
<!-- 사업실명제 년도 바e -->
<c:if test="${boardVO.bbsId eq 'BBSMSTR_000000000006'}">
<!-- 정기간행물 구독신청 -->
<div class="news_botton_wr">
<div class="news_botton"><a href="javascript:fn_add_periodicals();">정기간행물 신청하기</a></div>
</div>
</c:if>
<div class="board_search">
<form name="frm" action="<c:url value='/cop/bbs/selectBoardList.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= "ntcrNm" name="ntcrNm" value=""/>
<c:if test="${brdMstrVO.bbsTyCode == 'BBST05'}">
<!-- 포토형 목록 개수 -->
<%-- <div class="bo_list_num">
<label class="sound_only" for="listNum">목록수</label>
<select name="listNum" id="listNum" >
<option value="1" <c:if test="${searchVO.listNum == '1'}">selected="selected"</c:if>>12개씩 보기</option>
<option value="2" <c:if test="${searchVO.listNum == '2'}">selected="selected"</c:if>>24개씩 보기</option>
<option value="3" <c:if test="${searchVO.listNum == '3'}">selected="selected"</c:if>>48개씩 보기</option>
</select>
</div> --%>
</c:if>
<div class="bo_list_search">
<label class="sound_only" for="searchCnd">검색대상</label>
<c:choose>
<c:when test="${brdMstrVO.bbsTyCode == 'BBST07'}"> <!-- 자료실(포토형)게시판 검색구분 없음. 내용만 검색 -->
<input type="hidden" name="searchCnd" value="1" />
<c:set var="placeholder" value="목차를 검색하세요" />
</c:when>
<c:otherwise>
<c:set var="placeholder" value="검색어를 입력해주세요" />
<select name="searchCnd" title="검색조건 선택">
<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>
</c:otherwise>
</c:choose>
<label class="sound_only" for="stx">검색어<strong class="sound_only"> 필수</strong></label>
<input type="text" name="searchWrd" class="sch_input recentSearch" maxlength="200" placeholder="${placeholder}" size="35" value='<c:out value="${searchVO.searchWrd}"/>' onkeypress="press(event);" title="검색어 입력">
<button class="sch_btn" type="button" value="검색" onclick="javascript:fn_egov_select_noticeList('1'); return false;" ><i class="fa fa-search" aria-hidden="true"></i>
</div>
</form>
<!-- 정기간행물 년도 바s -->
<c:if test="${boardVO.bbsId eq 'BBSMSTR_000000000006'}">
<div class="news_botton_wr" style="padding-top: 38px;">
<div id="ss1">
<!-- <div class="news_botton"><a href="javascript:fn_add_periodicals();">정기간행물 신청하기</a></div> -->
<c:import url="/WEB-INF/jsp/web/cop/bbs/EgovPopup.jsp">
<c:param name="TEST" value="정기간행물" />
</c:import>
<!-- 본인인증 안내 및 인증 -->
<c:import url="/WEB-INF/jsp/web/cop/selfauth/authInfo.jsp"></c:import>
<%--
테스트 인증
<form name="authFrm" method="post">
<input type="hidden" name="returnType" value="" /> <label for="nameEn">이름</label>
<select name="nameEn" id="nameEn">
<option value="yu1" selected="selected">홍길동</option>
<option value="yu2">김길동</option>
<option value="yu3">박길동</option>
</select>
<button onclick="javascript:testAuth(); return false;">인증처리</button>
</form>
--%>
</div>
</div>
<div class="year21_wrap">
<c:if test="${not empty boardVO.searchYear}">
<button onclick="fnSchduleSearch('navi', 'next'); return false;" class="pre_year">이전년도</button>
<p class="present_year"><c:out value='${boardVO.searchYear}'/></p>
<button onclick="fnSchduleSearch('navi', 'prev'); return false;" class="next_year">다음년도</button>
</c:if>
<ul class="year21_list">
<a href="#Redirect"><li style="width:16%;" onclick="fnSchduleSearch('year', '2019'); return false;" id="searchYear_2019">2019</li></a>
<a href="#Redirect"><li style="width:16%;" onclick="fnSchduleSearch('year', '2018'); return false;" id="searchYear_2018">2018</li></a>
<a href="#Redirect"><li style="width:16%;" onclick="fnSchduleSearch('year', '2017'); return false;" id="searchYear_2017">2017</li></a>
<a href="#Redirect"><li style="width:16%;" onclick="fnSchduleSearch('year', '2016'); return false;" id="searchYear_2016">2016</li></a>
<a href="#Redirect"><li style="width:16%;" onclick="fnSchduleSearch('year', '2015'); return false;" id="searchYear_2015">2015</li></a>
<a href="#Redirect"><li style="width:16%;" onclick="fnSchduleSearch('year', '2014'); return false;" id="searchYear_2014">2014</li></a>
</ul>
</div>
</c:if>
<!-- 정기간행물 년도 바e -->
<div id="bo_list_total">
총 게시글 <span>${resultCnt}건</span>
</div>
</div>
<c:if test="${brdMstrVO.bbsTyCode eq null or brdMstrVO.bbsTyCode == 'BBST01' or brdMstrVO.bbsTyCode == 'BBST02' or brdMstrVO.bbsTyCode == 'BBST03' or brdMstrVO.bbsTyCode == 'BBST08' }">
<!-- 기본형 게시판s -->
<table class="bo_basic_list">
<caption>게시판 목록</caption>
<c:forEach var="result" items="${notifyList}" varStatus="status">
<!-- 상단공지 -->
<tr>
<td class="td_datetime">
<%-- 월(bold)를 일로 변경함. 게시판 전체 190121 --%>
<div class="month">${fn:substring(result.frstRegisterPnttm,8,10)}</div>
<div class="year_day">${fn:substring(result.frstRegisterPnttm, 0,4)}.${fn:substring(result.frstRegisterPnttm, 5,7)}</div>
</td>
<td class="td_list">
<div class="td_list_wr_notice" onclick="javascript:fn_egov_inqire_notice('<c:out value="${result.bbsId}"/>', '<c:out value="${result.nttId}"/>');" >
<div class="text">
<ul>
<li class="number">NO.<c:out value="${paginationInfo.totalRecordCount+1 - ((searchVO.pageIndex-1) * searchVO.pageUnit + status.count)}" /></li>
<li>조회수.<c:out value="${result.inqireCo}" />
<c:if test="${result.atchFileCnt > 0}"><img src="/img/post/atch_file.png"></c:if>
</li>
</ul>
<div class="subject"><c:out value="${result.nttSj}" /></div>
<div class="td_date"></div>
</div>
</div>
</td>
</tr>
</c:forEach>
<c:forEach var="result" items="${resultList}" varStatus="status">
<!-- 게시글 리스트 -->
<tr <c:if test='${result.cookYN == "false"}'>style='font-weight: bold';</c:if>>
<td class="td_datetimeNotBold">
<div class="month">${fn:substring(result.frstRegisterPnttm,8,10)}</div>
<div class="year_day">${fn:substring(result.frstRegisterPnttm, 0,4)}.${fn:substring(result.frstRegisterPnttm, 5,7)}</div>
</td>
<td class="td_list">
<div class="td_list_wr_notice" onclick="javascript:fn_egov_inqire_notice('<c:out value="${result.bbsId}"/>', '<c:out value="${result.nttId}"/>');" >
<div class="text">
<ul>
<li class="number">NO.<c:out value="${paginationInfo.totalRecordCount+1 - ((searchVO.pageIndex-1) * searchVO.pageUnit + status.count)}" /></li>
<c:if test="${brdMstrVO.viewsYn == 'Y'}">
<li>조회수.<c:out value="${result.inqireCo}" />
<c:if test="${result.atchFileCnt > 0}"><img src="/img/post/atch_file.png"></c:if>
</li>
</c:if>
</ul>
<div class="subjectNotBold"><c:out value="${result.nttSj}" /></div>
</div>
<!-- 기간 -->
<c:if test="${brdMstrVO.ntceDateYn == 'Y' && not empty result.ntceBgnde && not empty result.ntceEndde
&& fn:length(result.ntceBgnde) == 10 && fn:length(result.ntceEndde) == 10}">
<div class="td_date">
<jsp:useBean id="now" class="java.util.Date" />
<fmt:parseDate value="${result.ntceBgnde}0000" pattern="yyyy-MM-ddHHmm" var="startDate" />
<fmt:parseDate value="${result.ntceEndde}2359" pattern="yyyy-MM-ddHHmm" var="endDate" />
<fmt:formatDate value="${now}" pattern="yyyy.MM.dd" var="nowDate" />
<fmt:formatDate value="${startDate}" pattern="yyyy.MM.dd" var="openDate"/>
<fmt:formatDate value="${endDate}" pattern="yyyy.MM.dd" var="closeDate"/>
<div class="td_date_day"><c:out value="${openDate}" /> ~ <c:out value="${closeDate}" /></div>
<c:choose>
<c:when test="${now > startDate && now < endDate}">
<div class="step02">접수중</div>
</c:when>
<c:when test="${now < startDate}">
<div class="step01">접수예정</div>
</c:when>
<c:otherwise>
<div class="step03">접수마감</div>
</c:otherwise>
</c:choose>
</div>
</c:if>
<!-- 내용줄인것일듯 -->
<%-- <div class="con_text"><c:out value="${result.nttCn2}" /></div> --%>
</div>
</td>
</tr>
</c:forEach>
<c:if test="${fn:length(resultList) == 0 && fn:length(notifyList) == 0}">
<tr>
<td colspan="10" style="text-align: center;">
<spring:message code="common.nodata.msg" />
</td>
</tr>
</c:if>
</table>
</c:if>
<!-- 기본형 게시판e -->
<c:if test="${brdMstrVO.bbsTyCode == 'BBST05'}">
<!-- 포토형 게시판s -->
<div class="gallery_board_wr">
<ul>
<c:forEach var="result" items="${resultList}" varStatus="status">
<li <c:if test='${result.cookYN == "false"}'>style='font-weight: bold';</c:if>>
<c:choose>
<c:when test="${result.atchFileCnt > 0}">
<div style="background:url('<c:url value='/cmm/fms/getImage.do'/>?atchFileId=<c:out value='${result.atchFileId}'/>&fileSn=<c:out value="${result.fileSn}"/>'), url('/img/post/no-img.png') no-repeat center;
background-size:contain;" class="img" onclick="javascript:fn_egov_inqire_notice('<c:out value="${result.bbsId}"/>', '<c:out value="${result.nttId}"/>');"></div>
</c:when>
<c:otherwise>
<div style="background:url('/img/post/no-img.png') no-repeat center; background-size:contain;"
class="img" onclick="javascript:fn_egov_inqire_notice('<c:out value="${result.bbsId}"/>', '<c:out value="${result.nttId}"/>');"></div>
</c:otherwise>
</c:choose>
<div class="gal_thum_text_wrNotBold" onclick="javascript:fn_egov_inqire_notice('<c:out value="${result.bbsId}"/>', '<c:out value="${result.nttId}"/>');">
<div class="subject"><c:out value="${result.nttSj}" /></div>
<ul class="date_list">
<li><span>게시일 <c:out value="${result.frstRegisterPnttm}" /></span></li>
<li><span>조회수 <c:out value="${result.inqireCo}" /></span></li>
</ul>
</div>
</li>
</c:forEach>
</ul>
<c:if test="${fn:length(resultList) == 0}">
<table class="bo_basic_list">
<tr>
<td colspan="10" style="text-align: center;">
<spring:message code="common.nodata.msg" />
</td>
</tr>
</table>
</c:if>
</div>
<!-- 포토형 게시판e -->
</c:if>
<c:if test="${brdMstrVO.bbsTyCode == 'BBST07'}">
<!-- 자료실(포토형) 게시판s -->
<div class="gallery_board_wr">
<ul>
<c:forEach var="result" items="${resultList}" varStatus="status">
<li>
<c:choose>
<c:when test="${result.thumbAtchFileCnt > 0}">
<div tabindex="0" alt="${result.nttSj} 상세보기" class="img" style="background:url('<c:url value='/cmm/fms/getImage.do'/>?atchFileId=<c:out value='${result.thumbAtchFileId}'/>&fileSn=<c:out value='${result.thumbAtchFileSn}'/>') no-repeat center;
background-size:contain;"
href="<c:url value='/web/cop/bbs/selectBoardArticleAjax.do'/>?bbsId=<c:out value="${result.bbsId}"/>&nttId=<c:out value="${result.nttId}"/> #fla3_ajax"
data-featherlight="ajax"></div>
</c:when>
<c:otherwise>
<div tabindex="0" class="img" alt="${result.nttSj} 상세보기" style="background:url('/img/board/gallery_thumnail.jpg') no-repeat center; background-size:100% 100%;"
href="<c:url value='/web/cop/bbs/selectBoardArticleAjax.do'/>?bbsId=<c:out value="${result.bbsId}"/>&nttId=<c:out value="${result.nttId}"/> #fla3_ajax"
data-featherlight="ajax"></div>
</c:otherwise>
</c:choose>
<div class="gal_thum_text_wr">
<div class="subject" href="<c:url value='/web/cop/bbs/selectBoardArticleAjax.do'/>?bbsId=<c:out value="${result.bbsId}"/>&nttId=<c:out value="${result.nttId}"/> #fla3_ajax"
data-featherlight="ajax">
<c:out value="${result.nttSj}" />
</div>
<ul class="date_list">
<li><span>게시일</span> <c:out value="${result.frstRegisterPnttm}" /></li>
<li><span>조회수</span> <c:out value="${result.inqireCo}" /></li>
</ul>
<ul class="more_list">
<li>
<c:choose>
<c:when test="${brdMstrVO.linkUrlYn == 'Y'}"> <!-- 링크 사용 시 해당 링크 -->
<c:if test="${not empty result.linkUrl}">
<a href="<c:out value="${result.linkUrl}" />" target="_blank">
<img src="/img/board/more_search_btn.png" alt="자세히보기"></a>
</c:if>
<c:if test="${empty result.linkUrl}">
<img src="/img/board/more_search_btn.png" alt="자세히보기" style="visibility: hidden;">
</c:if>
</c:when>
<c:otherwise> <!-- 링크 미사용 시 PDF -->
<c:if test="${result.atchFileCnt > 0}">
<a href="javascript:fn_egov_pdfView('<c:out value="${result.atchFileId}" />', '<c:out value="${result.fileSn}" />');">
<img src="/img/board/more_search_btn.png" alt="자세히보기"></a>
</c:if>
<c:if test="${result.atchFileCnt == 0}">
<img src="/img/board/more_search_btn.png" alt="자세히보기" style="visibility: hidden;">
</c:if>
</c:otherwise>
</c:choose>
</li>
<li>
<c:if test="${result.atchFileCnt > 0}">
<a href="javascript:fn_egov_downFile('<c:out value="${result.atchFileId}" />', '<c:out value="${result.fileSn}" />');">
<img src="/img/board/more_down_btn.png" alt="다운하기"></a>
</c:if>
<c:if test="${result.atchFileCnt == 0}">
<img src="/img/board/more_search_btn.png" alt="자세히보기" style="visibility: hidden;">
</c:if>
</li>
</ul>
</div>
</li>
</c:forEach>
</ul>
<c:if test="${fn:length(resultList) == 0}">
<table class="bo_basic_list">
<tr>
<td colspan="10" style="text-align: center;">
<spring:message code="common.nodata.msg" />
</td>
</tr>
</table>
</c:if>
</div>
<!-- 자료실(포토형) 게시판e -->
</c:if>
<!-- 페이지 네비게이션 시작 -->
<c:if test="${!empty resultList}">
<div class="page">
<ul class="inline">
<ui:pagination paginationInfo = "${paginationInfo}" type="image" jsFunction="linkPage" />
</ul>
</div>
</c:if>
<!-- //페이지 네비게이션 끝 -->
</div>
<!--내용e-->
</div>
<form name="letterForm" method="get" >
<input type="hidden" name="userNm" />
<input type="hidden" name="emailAdres" />
<input type="hidden" name="userZip" />
<input type="hidden" name="userAdres" />
<input type="hidden" name="userDetailAdres" />
<input type="hidden" name="mbtlNum" />
<input type="hidden" name="seCd" value="02" />
</form>
<!-- 본인인증 서비스 팝업을 호출하기 위해서는 다음과 같은 form이 필요합니다. -->
<form name="form_chk" method="post">
<input type="hidden" name="m" value="checkplusService"> <!-- 필수 데이타로, 누락하시면 안됩니다. -->
<input type="hidden" name="EncodeData" value="<%= sEncData %>"> <!-- 위에서 업체정보를 암호화 한 데이타입니다. -->
<a href="javascript:fnPopup();"> CheckPlus 안심본인인증 Click</a>
</form>
</body>

View File

@ -1,142 +0,0 @@
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%
NiceID.Check.CPClient niceCheck = new NiceID.Check.CPClient();
String sSiteCode = "BS933"; // NICE로부터 부여받은 사이트 코드
String sSitePassword = "2CU5kY9wpppk"; // NICE로부터 부여받은 사이트 패스워드
String sRequestNumber = "REQ0000000001"; // 요청 번호, 이는 성공/실패후에 같은 값으로 되돌려주게 되므로
// 업체에서 적절하게 변경하여 쓰거나, 아래와 같이 생성한다.
sRequestNumber = niceCheck.getRequestNO(sSiteCode);
session.setAttribute("REQ_SEQ" , sRequestNumber); // 해킹등의 방지를 위하여 세션을 쓴다면, 세션에 요청번호를 넣는다.
String sAuthType = ""; // 없으면 기본 선택화면, M: 핸드폰, C: 신용카드, X: 공인인증서
String popgubun = "N"; //Y : 취소버튼 있음 / N : 취소버튼 없음
String customize = ""; //없으면 기본 웹페이지 / Mobile : 모바일페이지
String sGender = ""; //없으면 기본 선택 값, 0 : 여자, 1 : 남자
// CheckPlus(본인인증) 처리 후, 결과 데이타를 리턴 받기위해 다음예제와 같이 http부터 입력합니다.
//리턴url은 인증 전 인증페이지를 호출하기 전 url과 동일해야 합니다. ex) 인증 전 url : http://www.~ 리턴 url : http://www.~
String sReturnUrl = "http://kofons-itn.co.kr/web/cop/bbs/addBoardArticle.do"; // 성공시 이동될 URL
sReturnUrl = ((itn.let.cop.bbs.service.BoardVO)request.getAttribute("niceVO")).getNiceSuccUrl();
String sErrorUrl = "http://kofons-itn.co.kr/web/cop/bbsWeb/selectBoardList.do?bbsId=BBSMSTR_000000000490"; // 실패시 이동될 URL
sErrorUrl = "http://kofons-itn.co.kr"+request.getAttribute("failRtnUrl") ;
sErrorUrl = ((itn.let.cop.bbs.service.BoardVO)request.getAttribute("niceVO")).getNiceFailUrl();
// 입력될 plain 데이타를 만든다.
String sPlainData = "7:REQ_SEQ" + sRequestNumber.getBytes().length + ":" + sRequestNumber +
"8:SITECODE" + sSiteCode.getBytes().length + ":" + sSiteCode +
"9:AUTH_TYPE" + sAuthType.getBytes().length + ":" + sAuthType +
"7:RTN_URL" + sReturnUrl.getBytes().length + ":" + sReturnUrl +
"7:ERR_URL" + sErrorUrl.getBytes().length + ":" + sErrorUrl +
"11:POPUP_GUBUN" + popgubun.getBytes().length + ":" + popgubun +
"9:CUSTOMIZE" + customize.getBytes().length + ":" + customize +
"6:GENDER" + sGender.getBytes().length + ":" + sGender;
String sMessage = "";
String sEncData = "";
int iReturn = niceCheck.fnEncode(sSiteCode, sSitePassword, sPlainData);
if( iReturn == 0 )
{
sEncData = niceCheck.getCipherData();
}
else if( iReturn == -1)
{
sMessage = "암호화 시스템 에러입니다.";
}
else if( iReturn == -2)
{
sMessage = "암호화 처리오류입니다.";
}
else if( iReturn == -3)
{
sMessage = "암호화 데이터 오류입니다.";
}
else if( iReturn == -9)
{
sMessage = "입력 데이터 오류입니다.";
}
else
{
sMessage = "알수 없는 에러 입니다. iReturn : " + iReturn;
}
%>
<head>
<script language=javascript>
window.name ="Parent_window";
function fnPopup(){
window.open('', 'popupChk', 'width=500, height=550, top=100, left=100, fullscreen=no, menubar=no, status=no, toolbar=no, titlebar=yes, location=no, scrollbar=no');
document.form_chk.action = "https://nice.checkplus.co.kr/CheckPlusSafeModel/checkplus.cb";
document.form_chk.target = "popupChk";
document.form_chk.submit();
}
function fn_egov_addNotice(){
document.frm.method = "post";
document.frm.action = "<c:url value='/web/cop/bbs/addBoardArticle.do'/>";
document.frm.submit();
}
</script>
</head>
<body>
<form name="form_chk" method="post">
<input type="hidden" name="m" value="checkplusService"> <!-- 필수 데이타로, 누락하시면 안됩니다. -->
<input type="hidden" name="EncodeData" value="<%= sEncData %>"> <!-- 위에서 업체정보를 암호화 한 데이타입니다. -->
</form>
<form name="frm" method="post">
<input type="hidden" name="bbsId" value="<c:out value='${boardVO.bbsId}'/>" />
</form>
<section class="sub">
<div id="wrapper">
<!--내용s-->
<div id="container">
<div class="complain_tt2">
<br>
<p class="title">본인 인증</p>
<p class="text_red">해당 페이지는 본인 인증이 필요한 페이지입니다. 본인인증을 하여주십시오.</p>
<p class="text">
개인정보보호를 위해 회원가입을 받지 않습니다.<br>
로그인이 필요한 서비스는 아래 휴대폰 본인 인증 후에 사용하실 수 있습니다.<br>
<br>
</p>
</div>
<div class="complain_tt3">
<p class="title">휴대폰 본인 인증</p>
<!-- <p class="text">
가상 주민번호가 없거나 확인이 필요하신 분은 아래의 [휴대폰 본인 인증]버튼을 선택하시고 신규발급이나 확인이 가능하오며,<br>
가상 주민번호를 알고 계신 분도 [공공I-PIN 인증] 버튼을 눌러서 본인여부를 확인 하실 수 있습니다.
</p> -->
<p class="text">
아래의 [휴대폰 본인 인증] 버튼을 눌러서 본인여부를 확인 하실 수 있습니다.
</p>
</div>
<br>
<div class="complain_btn">
<button class="complain_btn1" onclick="javascript:openPCCWindow(); return false;" value="본인 인증"><i class="fa fa-trash-o"aria-hidden="true"></i> 휴대폰 본인 인증</button>
</div>
테스트
<!-- <form name="frm" method="post">
<input type="hidden" name="returnType" value="" />
<label for="nameEn">이름</label>
<select name="nameEn" id="nameEn">
<option value="yu1" selected="selected">홍현준</option>
<option value="yu2">김현준</option>
<option value="yu3">박현준</option>
</select>
<a href="#" onclick="javascript:fnAuthResult(); return false;">인증</a>
</form> -->
<a href="javascript:fnPopup();"> CheckPlus 안심본인인증 Click</a>
</div>
<!--내용e-->
</div>
</section>
</body>

View File

@ -1,419 +0,0 @@
<%@ 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 prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%>
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions"%>
<head>
<script type="text/javascript">
$(document).ready(function(){
$("input:text[numberOnly]").on("keyup", function() {
$(this).val($(this).val().replace(/[^0-9]/g,""));
});
$("input[name='customType']").change(function(e){
var customId = "customPay"+$(this).val();
selectPayCalculation(customId);
});
// 제작형태 변경시 이미지 등록된 값 초기화 설정
// $("input[name='customType']").change(function(e){
// var popupType = $("#customPopupType").val();
// if(popupType == "insert"){
// $("[id^='tempImg']").val('');
// $("[data-tempImg]").children("img").remove(); //이미지 테크 제거
// $("[data-tempImg]").children(".img_close").css( 'display', 'none' ); //삭제 이미지 제거
// $("[data-tempImg]").children(".img_add").css( 'display', 'block' ); // 추가 이미지 등록
// $("[data-tempImg]").addClass("no_img"); //li 테그에 클래스 추가
// }
// });
$(".input-image-file").change(function(e){
var id = $(this).attr("id");
var files = $("#"+id)[0].files;
temImg(files);
selectMyImg(this); //파일업로드
});
});
//샘플 이미지 리스트
function popupImgList(pageNo){
var form = document.customPopupImgForm;
var data = new FormData(form);
$.ajax({
cache : false
,url : "<c:url value='/web/mjon/custom/selectCustomPopupImgListAjax.do'/>"
,async:false
,type : 'POST'
,data : data
,dataType:'json'
,processData: false
,contentType: false
,success : function(returnData, status){
if(status == "success") {
$("#scrollPaging").html("");
var html = "";
for(var i=0; i<returnData.resultCustomList.length; i++) {
var strImgPath = returnData.resultCustomList[i].fileStreCours+"/"+returnData.resultCustomList[i].streFileNm + "." +returnData.resultCustomList[i].fileExtsn;
var imgId = returnData.resultCustomList[i].attachFileId;
var fileSn = returnData.resultCustomList[i].fileSn;
html += "<li>";
html += "<a ref='#' onclick='selectAddImg(\""+imgId+"\",\""+fileSn+"\",\"sample\");'>";
html += "<img id='img"+i+"' src='"+strImgPath+"'>";
html += "<input type='hidden' id='"+imgId+"' value='"+strImgPath+"'/>"
html += "</a>";
html += "</li>";
}
$("#scrollPaging").append(html);
scrollbar();
}else{
alert("ERROR!");return;
}
}
,error : function(request , status, error){
alert("code:"+request.status+"\n"+"message:"+request.responseText+"\n"+"error:"+error);
}
});
}
function selectPayCalculation(customId){
var customPay = $("#"+customId).val();
var userMoney = $("#userMoney").val();
var userBalance = (userMoney - customPay);
if(userBalance < 0){
alert("잔액이 부족합니다. 결제 페이지로 이동됩니다.");
return location.href="/web/member/pay/PayView.do";
}
$("#customAmount").val(customPay);
}
//샘플 이미지 조회
function searchSampleImg() {
$("#scrollPaging").html("");
var form = document.customPopupImgForm;
form.searchKeyword.value = $("#sampleSearching").val();
form.categoryCode.value = $("#sampleTemplate option:selected").val();
popupImgList(1);
}
/*파일 드래그앤 드롭*/
/* 파일등록 */
var _fileIdx = 0;
var _fileForm2 = new Array();
function temImg(files){
var fd = new FormData();
fd.append('file', files[0]);
var tmpObj = new Object();
tmpObj.name = "file_" + _fileIdx;
tmpObj.fileObj = files[0];
_fileForm2.push(tmpObj);
_fileIdx++;
}
//이미지 선택 조건 확인
function selectAddImg(id, fileSn, type){
var typeVal = $("input:radio[name='customType']:checked").val(); // 제작형태
var imgLength = $('.no_img').length; // 등록된 첨부파일 수
if(typeVal != '03'){
if(imgLength != "3"){
alert("더이상 첨부파일을 등록할 수 없습니다.");
return;
}
}else if(typeVal == '03'){
}
if(type == "my"){
$('#'+id).click();
}else if(type == "sample"){
selectSampleImg(id,fileSn);
}
};
//샘플파일 이미지 선택
function selectSampleImg(id, fileSn){
var noImgIdx = $('.no_img').length;
if(noImgIdx != 0){
$('.no_img').each(function(idx) {
var tempImg = $(this).attr("data-tempImg");
$("#"+tempImg).val(id);
$("#"+tempImg+"FileSn").val(fileSn);
var html = "<img src='"+$("#"+id).val()+"'>";
$(this).prepend(html);
$(this).children(".img_close").css( 'display', 'block' );
$(this).children(".img_add").css( 'display', 'none' );
$(this).removeClass("no_img");
return false
});
}else{
alert("이미지를 3개 이상 추가할 수 없습니다.")
}
}
//첨부파일 이미지 선택
function selectMyImg(img){
if (img.files && img.files[0]) {
var reader = new FileReader();
reader.onload = function (e) {
imgSrc = e.target.result
$('.no_img').each(function(idx) {
var tempImg = $(this).attr("data-tempImg");
var html = "<img src='"+imgSrc+"'>";
$(this).prepend(html);
$(this).children(".img_close").css( 'display', 'none' );
$(this).children(".img_add").css( 'display', 'none' );
$(this).removeClass("no_img");
return false
});
}
reader.readAsDataURL(img.files[0]);
}
$("#customUploadYn").val("Y");
}
//내보관함 이미지 선택
function selectMyCustomImg(id){
/*
var imgPath = $("#"+id+"_imgPath").val();
var fileId = $("#"+id+"_fileId").val();
var fileSn = $("#"+id+"_fileSn").val();
var noImgIdx = $('.no_img').length;
if(noImgIdx != 0){
$('.no_img').each(function(idx) {
var tempImg = $(this).attr("data-tempImg");
$("#"+tempImg).val(fileId);
$("#"+tempImg+"FileSn").val(fileSn);
var html = "<img src='"+imgPath+"'>";
$(this).prepend(html);
$(this).children(".img_close").css( 'display', 'block' );
$(this).children(".img_add").css( 'display', 'none' );
$(this).removeClass("no_img");
return false
});
}else{
alert("이미지를 3개 이상 추가할 수 없습니다.")
} */
//맞춤제작 완료된 건의 경우 이미지를 추가로 첨부할 수 없도록 수정_220429
$(".custom_put5").hide();
}
// 선택이미지 삭제
function deleteSelectImg(tempId){
$("#"+tempId).val(''); //이미지
$("[data-tempImg="+tempId+"]").children("img").remove(); //이미지 테크 제거
$("[data-tempImg="+tempId+"]").children(".img_close").css( 'display', 'none' ); //삭제 이미지 제거
$("[data-tempImg="+tempId+"]").children(".img_add").css( 'display', 'block' ); // 추가 이미지 등록
$("[data-tempImg="+tempId+"]").addClass("no_img"); //li 테그에 클래스 추가
}
// 맞춤제작 등록
function insertCustomInfo(){
var frm = document.customPopupImgForm;
if(frm.customPhoneNo.value == ''){
alert("연락처를 입력해주세요.");
return;
}
if(frm.customRequest.value == ''){
alert("요청사항을 입력해주세요.");
return;
}
var noImgIdx = $('.no_img').length;
if(noImgIdx == 3){
alert("제작하실 이미지를 등록해 주세요.");
return;
}
var data = new FormData(frm);
_fileForm2.forEach(function(obj, idx) {
if (obj) data.append("file"+idx, obj.fileObj);
});
$.ajax({
type: "POST"
, enctype: 'multipart/form-data'
, url: "/web/mjon/custom/insertCustomImgInfoAjax.do"
, data: data
, dataType:'json'
, async: false
, processData: false
, contentType: false
, cache: false
, success: function (returnData, status) {
if(returnData.result == 'success'){
alert("그림문자 맞춤제작이 접수되었습니다.");
$("body").find(".mask").removeClass("on");
customPopup();
location.href = "/web/mjon/custom/selectMsgCustomView.do";
} else if(returnData.result == 'notMoney'){
alert("보유 잔액이 부족 합니다.");
}
}
,error: function (e) { alert("저장에 실패하였습니다."); console.log("ERROR : ", e); }
});
}
function customProvisionView(obj){
var v=$(obj).val();
if(v == 02 || v == 03){
$('.custom_provision').addClass('active');
}else{
$('.custom_provision').removeClass('active').find('input[type=radio]').prop('checked','');
}
}
</script>
</head>
<body>
<form id="customPopupImgForm" name="customPopupImgForm" method="post">
<input type="hidden" id="userMoney" name="userMoney" value="${userMoney}"/>
<input type="hidden" id="customAmount" name="customAmount" value=""/>
<input type="hidden" id="customPopupType" name="customPopupType" value=""/>
<input type="hidden" id="categoryCode" name="categoryCode" value=""/>
<input type="hidden" id="searchKeyword" name="searchKeyword" value=""/>
<input type="hidden" id="tempImg1" name="tempImg1" value="">
<input type="hidden" id="tempImg1FileSn" name="tempImg1FileSn" value="">
<input type="hidden" id="tempImg2" name="tempImg2" value="">
<input type="hidden" id="tempImg2FileSn" name="tempImg2FileSn" value="">
<input type="hidden" id="tempImg3" name="tempImg3" value="">
<input type="hidden" id="tempImg3FileSn" name="tempImg3FileSn" value="">
<input type="hidden" id="customUploadYn" name="customUploadYn" value="N">
<div class="popup-com custom_layer popup01" tabindex="0" data-tooltip-con="popup01" data-focus="popup01" data-focus-prev="popup01-close">
<div class="popup_heading">
<p>맞춤제작</p>
<button type="button" class="tooltip-close" data-focus="popup01-close">
<img src="/publish/images/content/layerPopup_close.png" alt="팝업 닫기">
</button>
</div>
<div class="layer_in">
<div class="header_cont">
<h3>템플릿 선택</h3>
<div class="search_box">
<label for="" class="label">추천 템플릿 검색 입력</label>
<input type="text" name="sampleSearching" id="sampleSearching" placeholder="템플릿 검색" onfocus="this.placeholder=''" onblur="this.placeholder='템플릿 검색'" onkeyup="searchSampleImg()">
<label for="" class="label">추천 템플릿 검색</label>
<button>
<img src="/publish/images/popup/search.png" alt="검색">
</button>
<label for="" class="label">추천 템플릿 선택</label>
<select name="sampleTemplate" id="sampleTemplate" onchange="searchSampleImg();">
<option value="">All</option>
<c:forEach items="${cateConfList}" var="cateList">
<option value="<c:out value='${cateList.cateCode}'/>"><c:out value="${cateList.cateNm}"/></option>
</c:forEach>
</select>
</div>
<div class="contWrap_scroll" id="scrollPagingWrap">
<ul class="contWrap" id="scrollPaging">
</ul>
</div>
</div>
<div class="body_cont">
<p>
<span class="text_deco3"></span>제작비용
</p>
<table>
<caption>제작비용 형태, 제공방법, 연락처, 요청사항, 이미지 등록 표</caption>
<colgroup>
<col style="width: 105px;">
<col style="width: auto">
</colgroup>
<tbody>
<tr class="custom_put1">
<th>제작형태</th>
<td>
<c:forEach var="code" items="${codeResult}" varStatus="status">
<div id="customType${code.code}">
<input id="radio${status.count}" type="radio" name="customType" value="${code.code}" onclick="customProvisionView(this);">
<label for="radio${status.count}">${code.codeNm}</label><span><fmt:formatNumber value="${code.codeDc}" type="number" pattern="####,###"/>원</span>
<input type="hidden" id="customPay${code.code}" name="customPay${code.code}" value="${code.codeDc}">
</div>
</c:forEach>
</td>
</tr>
<tr class="custom_put2">
<th>제공방법</th>
<td>
<input type="checkbox" id="storage" checked="checked"> <label for="storage">내보관함</label>
<div class="custom_provision">
<input id="radio11" type="radio" name="customProvision" value="1">
<label for="radio11">카카오톡</label>
<input id="radio12" type="radio" name="customProvision" value="2">
<label for="radio12">이메일</label>
</div>
<!-- <span>중복선택 가능(최대2개)</span> -->
</td>
</tr>
<tr class="custom_put3">
<th>연락처</th>
<td>
<label for="" class="label"></label>
<input type="text" name="customPhoneNo" numberOnly placeholder="완료 메세지를 받을 전화번호를 기재 해주세요." onfocus="this.placeholder=''" onblur="this.placeholder='완료 메세지를 받을 전화번호를 기재 해주세요.'">
</td>
</tr>
<tr class="custom_put4">
<th>요청사항</th>
<td>
<label for="" class="label"></label>
<textarea name="customRequest" placeholder="수정사항을 상세히 기입해 주세요.이미지위치, 문구위치, 원하시는 폰트, 색상등을 적어주세요. 미 기입시 기존 이미지의 폰트, 색상이 그대로 사용됩니다.약도를 추가할 경우 지번을 정확히 입력해 주세요" onfocus="this.placeholder=''" onblur="this.placeholder='수정사항을 상세히 기입해 주세요.이미지위치, 문구위치, 원하시는 폰트, 색상등을 적어주세요. 미 기입시 기존 이미지의 폰트, 색상이 그대로 사용됩니다.약도를 추가할 경우 지번을 정확히 입력해 주세요'"></textarea>
</td>
</tr>
<tr class="custom_put5">
<th>이미지 등록</th>
<td>
<ul>
<li class="no_img" data-tempImg="tempImg1">
<button type="button" class="img_add" title="이미지 추가 버튼" style="display: block;" onclick="selectAddImg('input-file1','','my');"><i></i></button>
<button type="button" class="img_close" title="이미지 삭제 버튼" style="display: none;" onclick="deleteSelectImg('tempImg1')"><i></i></button>
<input type="file" accept=".jpg" class="input-image-file" multiple id="input-file1" style="width:0px !important;height:0px !important"/>
</li>
<li class="no_img" data-tempImg="tempImg2">
<button type="button" class="img_add" title="이미지 추가 버튼" style="display: block;" onclick="selectAddImg('input-file2','','my');"><i></i></button>
<button type="button" class="img_close" title="이미지 삭제 버튼" style="display: none;" onclick="deleteSelectImg('tempImg2')"><i></i></button>
<input type="file" accept=".jpg" class="input-image-file" multiple id="input-file2" style="width:0px !important;height:0px !important"/>
</li>
<li class="no_img" data-tempImg="tempImg3">
<button type="button" class="img_add" title="이미지 추가 버튼" style="display: block;" onclick="selectAddImg('input-file3','','my');"><i></i></button>
<button type="button" class="img_close" title="이미지 삭제 버튼" style="display: none;" onclick="deleteSelectImg('tempImg3')"><i></i></button>
<input type="file" accept=".jpg" class="input-image-file" multiple id="input-file3" style="width:0px !important;height:0px !important"/>
</li>
</ul>
</td>
</tr>
</tbody>
</table>
<div class="custom_btn">
<button type="button" onclick="insertCustomInfo()">신청하기</button>
<button type="button" class="tooltip-close" data-focus="popup01-close" data-focus-next="popup01">취소</button>
</div>
</div>
</div>
</div>
</form>
</body>

View File

@ -1,382 +0,0 @@
<%@ 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" %>
<%
NiceID.Check.CPClient niceCheck = new NiceID.Check.CPClient();
String sSiteCode = "BS933"; // NICE로부터 부여받은 사이트 코드
String sSitePassword = "2CU5kY9wpppk"; // NICE로부터 부여받은 사이트 패스워드
String sRequestNumber = "REQ0000000001"; // 요청 번호, 이는 성공/실패후에 같은 값으로 되돌려주게 되므로
// 업체에서 적절하게 변경하여 쓰거나, 아래와 같이 생성한다.
sRequestNumber = niceCheck.getRequestNO(sSiteCode);
session.setAttribute("REQ_SEQ" , sRequestNumber); // 해킹등의 방지를 위하여 세션을 쓴다면, 세션에 요청번호를 넣는다.
String sAuthType = ""; // 없으면 기본 선택화면, M: 핸드폰, C: 신용카드, X: 공인인증서
String popgubun = "N"; //Y : 취소버튼 있음 / N : 취소버튼 없음
String customize = ""; //없으면 기본 웹페이지 / Mobile : 모바일페이지
String sGender = ""; //없으면 기본 선택 값, 0 : 여자, 1 : 남자
// CheckPlus(본인인증) 처리 후, 결과 데이타를 리턴 받기위해 다음예제와 같이 http부터 입력합니다.
//리턴url은 인증 전 인증페이지를 호출하기 전 url과 동일해야 합니다. ex) 인증 전 url : http://www.~ 리턴 url : http://www.~
String sReturnUrl = ""; // 성공시 이동될 URL
/* String sReturnUrl = "http://localhost:8084/uss/umt/user/EgovGnrlUserInsertView.do"; */
sReturnUrl = ((itn.let.uss.umt.service.UserDefaultVO)request.getAttribute("mberManageVO")).getNiceSuccUrl();
String sErrorUrl = ""; // 실패시 이동될 URL
sErrorUrl = ((itn.let.uss.umt.service.UserDefaultVO)request.getAttribute("mberManageVO")).getNiceFailUrl();
// 입력될 plain 데이타를 만든다.
String sPlainData = "7:REQ_SEQ" + sRequestNumber.getBytes().length + ":" + sRequestNumber +
"8:SITECODE" + sSiteCode.getBytes().length + ":" + sSiteCode +
"9:AUTH_TYPE" + sAuthType.getBytes().length + ":" + sAuthType +
"7:RTN_URL" + sReturnUrl.getBytes().length + ":" + sReturnUrl +
"7:ERR_URL" + sErrorUrl.getBytes().length + ":" + sErrorUrl +
"11:POPUP_GUBUN" + popgubun.getBytes().length + ":" + popgubun +
"9:CUSTOMIZE" + customize.getBytes().length + ":" + customize +
"6:GENDER" + sGender.getBytes().length + ":" + sGender;
String sMessage = "";
String sEncData = "";
int iReturn = niceCheck.fnEncode(sSiteCode, sSitePassword, sPlainData);
if( iReturn == 0 )
{
sEncData = niceCheck.getCipherData();
}
else if( iReturn == -1)
{
sMessage = "암호화 시스템 에러입니다.";
}
else if( iReturn == -2)
{
sMessage = "암호화 처리오류입니다.";
}
else if( iReturn == -3)
{
sMessage = "암호화 데이터 오류입니다.";
}
else if( iReturn == -9)
{
sMessage = "입력 데이터 오류입니다.";
}
else
{
sMessage = "알수 없는 에러 입니다. iReturn : " + iReturn;
}
%>
<!DOCTYPE html>
<html lang="ko">
<head>
<link href="https://fonts.googleapis.com/css2?family=Noto+Sans+KR:wght@100;300;400;500;700;900&display=swap" rel="stylesheet">
<link rel="stylesheet" href="/publish/css/mem.css">
<link rel="stylesheet" href="/publish/css/font.css">
<link rel="stylesheet" href="/publish/css/jquery.mCustomScrollbar.css">
<script src="/publish/js/content.js"></script>
<script src="/publish/js/jquery.mCustomScrollbar.concat.min.js"></script>
<script src="/publish/js/popup.js"></script>
<script src="/publish/js/mem.js"></script>
<script type="text/javascript">
$( document ).ready(function() {
var type2 = $(".type2") //필수항목, 광고 상위 체크
var type3 = $(".type3") //선택항목 - 광고 수신
$(".type2").on('change', function(event){
changeCheck();
});
$(".type3").on('change', function(event){
for(var i=0; i<type3.length; i++){
if(type3[i].checked == false){ //광고 수신 한개라도 체크해제라면 상위 체크 해제
$(".ad").prop("checked", false);
}else if(type3.length == $(".type3:checked").length){
$(".ad").prop("checked", true); //광고 수신 모두 체크상태라면 상위 체크
}
}
changeCheck();
});
});
function changeCheck(){
var type2 = $(".type2") //필수항목, 광고 상위 체크
var type3 = $(".type3") //선택항목 - 광고 수신
for(var i=0; i<type2.length; i++){
if(type2[i].checked == false){ //상위 체크 해제 시 전체체크 해제
$(".allCheck").prop("checked", false);
}else if(type2.length == $(".type2:checked").length){
$(".allCheck").prop("checked", true); //상위 항목 모두 체크 시 전체 체크
}
}
}
function agreeAllCheck(){
if($("#agreeAll").is(':checked') ){
$("input[name=agreeCheck]").prop("checked", true);
$("input[name=agreeTwoDeptCheck]").prop("checked", true);
}else{
$("input[name=agreeCheck]").prop("checked", false);
$("input[name=agreeTwoDeptCheck]").prop("checked", false);
}
}
function agreeTwoDeptCheck2(){
if( $("input[name=agreeTwoDeptCheck]").is(':checked') ){
//alert("123");
$("input[id^='agree1_']").prop("checked", true);
}else{
$("input[id^='agree1_']").prop("checked", false);
}
}
//본인인증
function chkAuth(){
var necCheckBoolYn = document.getElementsByClassName("necY");
for(var i=0; i<necCheckBoolYn.length; i++){
if(necCheckBoolYn[i].checked == false){
alert("필수 약관을 확인해주세요.")
return false;
}
}
//선택 항목들 YN 넘겨주기
var checkForm = document.modiForm;
if($("#agree1_TERMS_00000025").is(":checked")){
checkForm.receiveMsg.value = 'Y';
}else{
checkForm.receiveMsg.value = 'N';
}
if($("#agree1_TERMS_00000026").is(":checked")){
checkForm.receiveKakao.value = 'Y';
}else{
checkForm.receiveKakao.value = 'N';
}
if($("#agree1_TERMS_00000027").is(":checked")){
checkForm.receivemail.value = 'Y';
}else{
checkForm.receivemail.value = 'N';
}
if($("#agree_TERMS_00000029").is(":checked")){
checkForm.collectMsg.value = 'Y';
}else{
checkForm.collectMsg.value = 'N';
}
var modiForm = $("form[name=modiForm]").serialize() ;
$.ajax({
url : "<c:url value='/web/user/login/joinInsertAjax.do' />",
type : 'POST',
data : modiForm,
dataType:'json',
success : function(returnData, status){
if(status == "success") {
}else{ alert("세션 생성 실패");return;}
},
error : function(request , status, error){
alert("code:"+request.status+"\n"+"message:"+request.responseText+"\n"+"error:"+error);
}
});
window.open('', 'popupChk', 'width=500, height=550, top=100, left=100, fullscreen=no, menubar=no, status=no, toolbar=no, titlebar=yes, location=no, scrollbar=no');
// document.termsForm.action = "https://nice.checkplus.co.kr/CheckPlusSafeModel/checkplus.cb";
document.termsForm.action = "https://www.kmcert.com/kmcis/web/kmcisReq.jsp";
document.termsForm.target = "popupChk";
document.termsForm.submit();
}
function fnAddUserView() {
document.modiForm.action = "<c:url value='/web/user/login/insertUsrView.do'/>";
document.modiForm.submit();
}
/* function chkAuth() {
document.modiForm.action = "<c:url value='/web/user/login/insertUsrView.do'/>";
document.modiForm.submit();
} */
</script>
</head>
<body>
<form id="termsForm" name="termsForm" method="post">
<input type="hidden" name="m" value="checkplusService"> <!-- 필수 데이타로, 누락하시면 안됩니다. -->
<input type="hidden" name="EncodeData" value="<%= sEncData %>"> <!-- 위에서 업체정보를 암호화 한 데이타입니다. -->
<input type="hidden" name="dept" value="" />
<input type="hidden" name="receiveMsg" value="Y" />
<input type="hidden" name="receiveKakao" value="N" />
<input type="hidden" name="receivemail" value="Y" />
<input type="hidden" name="collectMsg" value="" />
<!-- content 영역 -->
<div class="inner">
<div class="memberIn">
<div class="heading">
<h2>회원가입</h2>
</div>
<!-- 회원가입 약관동의 -->
<div class="mem_cont join2">
<!-- step -->
<p class="welcome"><span>문자온</span>에 오신것을 환영합니다.</p>
<ul class="mem_nav">
<li class="on">
<i></i>
<div>
<p>01</p>
<span>약관동의</span>
</div>
</li>
<li>
<i></i>
<div>
<p>02</p>
<span>정보입력</span>
</div>
</li>
<li>
<i></i>
<div>
<p>03</p>
<span>가입완료</span>
</div>
</li>
</ul><!--// step -->
<!-- cont -->
<div class="mem_cont_in">
<div class="text_top">
<div class="checkbox_wrap">
<input type="checkbox" id="agreeAll" title="회원가입 전체약관에 동의" class="joinCheckbox allCheck" onclick="javascript:agreeAllCheck();" />
<label for="agreeAll"></label>
</div>
<p>회원가입 전체약관에 동의합니다.</p>
</div>
<ul class="clause_list">
<c:forEach var="result" items="${termsList}" varStatus="status">
<!-- 광고성 정보 수신 제외한 약관 -->
<c:if test="${result.termsId ne 'TERMS_00000025' && result.termsId ne 'TERMS_00000026' && result.termsId ne 'TERMS_00000027' && result.termsId ne 'TERMS_00000028'}" >
<c:if test="${status.index eq '0'}">
<li class="list_open on">
</c:if>
<c:if test="${status.index ne '0'}">
<li class="list_open">
</c:if>
<!--필수인지 체크 후 본인인증 화면 전 필수 약관들 체크했는지 확인 -->
<c:set var="necCheck" value="" />
<c:if test="${result.necYn eq 'Y' }">
<c:set var="necCheck" value="necY" />
</c:if>
<div class="clause_list_head">
<div class="list_head_in">
<div class="checkbox_wrap">
<input type="checkbox" name="agreeCheck" id="agree_${result.termsId}" title="${result.termsSj}동의" class="joinCheckbox type2 ${necCheck}" />
<label for="agree_${result.termsId}"></label>
</div>
<!-- 필수/선택 체크 -->
<c:set var="nec" value="" />
<c:if test="${result.necYn eq 'Y'}">
<c:set var="nec" value="필수" />
</c:if>
<c:if test="${result.necYn eq 'N'}">
<c:set var="nec" value="선택" />
</c:if>
<c:set var="colClass" value="" />
<c:if test="${result.necYn eq 'Y'}">
<c:set var="colClass" value="esn" />
</c:if>
<c:if test="${result.necYn eq 'N'}">
<c:set var="colClass" value="sel" />
</c:if>
<span><span class="${colClass}">[${nec}]</span>${result.termsSj}</span>
<button type="button" onclick="clause_list(this);"><i></i></button>
</div>
</div>
<div class="clause_list_body">
<div class="agree_text">
${result.termsCn}
</div>
</div>
</li>
</c:if>
<!-- 광고성 정보 수신 약관 -->
<c:if test="${result.termsId eq 'TERMS_00000028' }" >
<li class="list_open">
<div class="clause_list_head">
<div class="list_head_in">
<div class="checkbox_wrap">
<input type="checkbox" name="agreeTwoDeptCheck" id="agree_${result.termsId}" title="${result.termsSj}동의" class="joinCheckbox type2 ad" onclick="javascript:agreeTwoDeptCheck2();"/>
<label for="agree_${result.termsId}"></label>
</div>
<!-- 필수/선택 체크 -->
<c:set var="nec" value="" />
<c:if test="${result.necYn eq 'Y'}">
<c:set var="nec" value="필수" />
</c:if>
<c:if test="${result.necYn eq 'N'}">
<c:set var="nec" value="선택" />
</c:if>
<c:set var="colClass" value="" />
<c:if test="${result.necYn eq 'Y'}">
<c:set var="colClass" value="esn" />
</c:if>
<c:if test="${result.necYn eq 'N'}">
<c:set var="colClass" value="sel" />
</c:if>
<span><span class="${colClass}">[${nec}]</span>${result.termsSj}</span>
</div>
</div>
<div class="clause_list_body_noneOpen">
<c:forEach var="result" items="${termsList}" varStatus="status">
<c:if test="${result.termsId eq 'TERMS_00000025' || result.termsId eq 'TERMS_00000026' || result.termsId eq 'TERMS_00000027'}" >
<div>
<div class="checkbox_wrap">
<tr id="egov_file_view_table_tr_${status.count}" class="egov_file_view_table_tr_${status.count}">
<input type="checkbox" name="agreeCheck" id="agree1_${result.termsId}" title="${result.termsSj} 동의" class="joinCheckbox type3" />
<label for="agree1_${result.termsId}"></label>
</div>
<span>${result.termsSj}</span>
</div>
</c:if>
</c:forEach>
</div>
</li>
</c:if>
</c:forEach>
</ul>
<p class="reqTxt3">※ 미동의 시 메시지 통계 확인 맞춤 메시지 추천 등 추후 서비스 이용에 제한이 있을 수 있습니다.</p>
<div class="mem_btnWrap">
<button type="button" class="mem_btn1" onclick="javascript:chkAuth(); return false;">동의 및 본인인증</button>
</div>
</div><!--// cont -->
</div><!--// 회원가입 약관동의 -->
</div>
</div>
</div><!--// content 영역 -->
</form>
<form name="modiForm" id="modiForm" method="get">
<input type="hidden" name="dept" value="${mberManageVO.dept}" />
<input type="hidden" name="receiveMsg" value="" />
<input type="hidden" name="receiveKakao" value="" />
<input type="hidden" name="receivemail" value="" />
<input type="hidden" name="collectMsg" value="" />
<input type="hidden" name="niceNm" value="" />
<input type="hidden" name="birthDay" value="" />
<input type="hidden" name="moblphonNo" value="" />
<input type="hidden" name="sexdstnCode" value="" />
</form>
</body></html>

File diff suppressed because it is too large Load Diff