Merge branch 'sub'

This commit is contained in:
subsub 2024-12-18 12:48:54 +09:00
commit ef4a0370f0
5 changed files with 187 additions and 274 deletions

View File

@ -1,30 +1,15 @@
<%--
Class Name : EgovPopupList.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"%> <%@ page contentType="text/html; charset=utf-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui"%> <%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui"%>
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions"%> <%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions"%>
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%> <%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%> <%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%>
<c:set var="ImgUrl" value="${pageContext.request.contextPath}/images/egovframework/com/cmm/" /> <%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %>
<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> <!DOCTYPE html>
<html lang="ko"> <html lang="ko">
<head> <head>
<title>팝업창관리 관리</title> <title>팝업창관리</title>
<meta http-equiv="content-type" content="text/html; charset=utf-8"> <meta http-equiv="content-type" content="text/html; charset=utf-8">
<script type="text/javaScript" language="javascript"> <script type="text/javaScript" language="javascript">
/* ******************************************************** /* ********************************************************
@ -38,12 +23,14 @@ function linkPage(pageNo){
} }
listForm.submit(); listForm.submit();
} }
/* ******************************************************** /* ********************************************************
* 등록 처리 함수 * 등록 처리 함수
******************************************************** */ ******************************************************** */
function fn_egov_regist_PopupManage(){ function fn_egov_regist_PopupManage(){
location.href = "<c:url value='/uss/ion/pwm/registPopup.do' />"; location.href = "<c:url value='/uss/ion/pwm/registPopup.do' />";
} }
/* ******************************************************** /* ********************************************************
* 상세회면 처리 함수 * 상세회면 처리 함수
******************************************************** */ ******************************************************** */
@ -59,94 +46,47 @@ function fn_egov_detail_PopupManage(popupId){
* 검색 함수 * 검색 함수
******************************************************** */ ******************************************************** */
function fn_egov_search_PopupManage(){ function fn_egov_search_PopupManage(){
<%--<c:if test="${!empty loginId}">
if(""!= document.listForm.searchKeyword.value){
updateRecentSearch();//최근검색어 등록
}
</c:if>--%>
linkPage(1); linkPage(1);
} }
/* ******************************************************** /* ********************************************************
* 체크 박스 선택 함수 * 체크 박스 선택 함수
******************************************************** */ ******************************************************** */
function fn_egov_checkAll_PopupManage(){ function fn_egov_checkAll_PopupManage(){
var FLength = document.getElementsByName("checkList").length; var FLength = document.getElementsByName("checkList").length;
var checkAllValue = document.getElementById('checkAll').checked; var checkAllValue = document.getElementById('checkAll').checked;
//undefined if(FLength == 1){
if( FLength == 1){
document.getElementById("checkList").checked = checkAllValue; document.getElementById("checkList").checked = checkAllValue;
}{ } else {
for(var i=0; i < FLength; i++) for(var i=0; i < FLength; i++) {
{ document.getElementsByName("checkList")[i].checked = checkAllValue;
document.getElementsByName("checkList")[i].checked = checkAllValue;
}
} }
}
} }
/* ******************************************************** /* ********************************************************
* 팝업창 미리보기 * 팝업창 미리보기
******************************************************** */ ******************************************************** */
function fn_egov_view_PopupManage(){ function fn_egov_view_PopupManage(){
if($("input:checkbox[name='checkList']").is(":checked")==false) if($("input:checkbox[name='checkList']").is(":checked")==false) {
{
alert("선택된 항목이 없습니다."); alert("선택된 항목이 없습니다.");
return false; return false;
} }
var FLength = document.getElementsByName("checkList").length; var FLength = document.getElementsByName("checkList").length;
if(FLength == 1){
if( FLength == 1){
if(document.getElementById("checkList").checked == true){ if(document.getElementById("checkList").checked == true){
fn_egov_ajaxPopupInfo_PopupManage( document.getElementById("checkList").value ); fn_egov_ajaxPopupInfo_PopupManage(document.getElementById("checkList").value);
} }
}{ } else {
for(var i=0; i < FLength; i++) for(var i=0; i < FLength; i++) {
{
if(document.getElementsByName("checkList")[i].checked == true){ if(document.getElementsByName("checkList")[i].checked == true){
fn_egov_ajaxPopupInfo_PopupManage( document.getElementsByName("checkList")[i].value ); fn_egov_ajaxPopupInfo_PopupManage(document.getElementsByName("checkList")[i].value);
} }
} }
} }
return;
} }
/* ********************************************************
* 팝업창 정보 Ajax통신으로 정보 획득
******************************************************** */
function fn_egov_ajaxPopupInfo_PopupManage_back(popupIds){
var url = "<c:url value='/uss/ion/pwm/ajaxPopupManageInfo.do' />";
var param = {
popupId: popupIds
};
new Ajax.Request(url,
{
asynchronous:true,
method:"post",
parameters: param ,
evalJSON: false,
evalJS: false,
onLoading : function() {/*로딩중*/ },
onSuccess : function(returnValue)
{
var returnValueArr = returnValue.responseText.split("||");
fn_egov_popupOpen_PopupManage(popupIds,
returnValueArr[0],
returnValueArr[1],
returnValueArr[2],
returnValueArr[3],
returnValueArr[4],
returnValueArr[5],
returnValueArr[6]
);
},
onFailure: function() {/*불러오기 실패*/},
onComplete : function() {/*모든 것을 완료*/}
});
}
function fn_egov_ajaxPopupInfo_PopupManage(popupIds){ function fn_egov_ajaxPopupInfo_PopupManage(popupIds){
$.ajax({ $.ajax({
@ -165,28 +105,6 @@ function fn_egov_ajaxPopupInfo_PopupManage(popupIds){
}); });
} }
/* ********************************************************
* 팝업창 오픈
******************************************************** */
function fn_egov_popupOpen_PopupManage1(popupId,fileUrl,width,height,top,left,stopVewAt,popupType){
var url = "<c:url value='/uss/ion/pwm/openPopupManage.do' />?";
//url = url + "fileUrl=" + fileUrl;
fileUrl = " /uss/ion/pwm/sample/EgovPopupSample"; //샘플파일
url = url + "fileUrl=" + fileUrl;
url = url + "&stopVewAt=" + stopVewAt;
url = url + "&popupId=" + popupId;
var name = popupId;
if(popupType == "W"){ //윈도우
var openWindows = window.open(url,name,"width="+width+",height="+height+",top="+top+",left="+left+",toolbar=no,status=no,location=no,scrollbars=yes,menubar=no,resizable=yes");
if (window.focus) {openWindows.focus()}
}else if(popupType == "L"){ //레이어
$("#layer_pop").fadeIn();
}
}
function fn_egov_popupOpen_PopupManage(popupVo){ function fn_egov_popupOpen_PopupManage(popupVo){
if(popupVo.popupType == "W"){ //윈도우 if(popupVo.popupType == "W"){ //윈도우
var url = "<c:url value='/uss/ion/pwm/openPopupManage.do' />?"; var url = "<c:url value='/uss/ion/pwm/openPopupManage.do' />?";
@ -199,7 +117,6 @@ function fn_egov_popupOpen_PopupManage(popupVo){
if(scrollbars == 'A' || scrollbars == 'Y') scrollbars= "yes"; if(scrollbars == 'A' || scrollbars == 'Y') scrollbars= "yes";
else scrollbars = "no"; else scrollbars = "no";
var openWindows = window.open(url,name,"width="+popupVo.popupWSize+",height="+popupVo.popupHSize+",top="+popupVo.popupHlc+",left="+popupVo.popupWlc+",toolbar=no,status=no,location=no,scrollbars="+scrollbars+",menubar=no,resizable=yes"); var openWindows = window.open(url,name,"width="+popupVo.popupWSize+",height="+popupVo.popupHSize+",top="+popupVo.popupHlc+",left="+popupVo.popupWlc+",toolbar=no,status=no,location=no,scrollbars="+scrollbars+",menubar=no,resizable=yes");
//if (window.focus) {openWindows.focus()}
}else if(popupVo.popupType == "L"){ //레이어 }else if(popupVo.popupType == "L"){ //레이어
var layer_clone = $("#layer_pop").clone().prop('id', 'layer_pop_'+popupVo.popupId); var layer_clone = $("#layer_pop").clone().prop('id', 'layer_pop_'+popupVo.popupId);
layer_clone.css("position" , "absolute") ; layer_clone.css("position" , "absolute") ;
@ -213,26 +130,11 @@ function fn_egov_popupOpen_PopupManage(popupVo){
} }
} }
/* ********************************************************
* 팝업창 오픈 쿠키 정보 OPEN
******************************************************** */
function fnGetCookie(name) {
var prefix = name + "=";
var cookieStartIndex = document.cookie.indexOf(prefix);
if (cookieStartIndex == -1) return null;
var cookieEndIndex = document.cookie.indexOf(";", cookieStartIndex + prefix.length);
if (cookieEndIndex == -1) cookieEndIndex = document.cookie.length;
return unescape(document.cookie.substring(cookieStartIndex + prefix.length, cookieEndIndex));
}
function fn_layerClose(obj){ function fn_layerClose(obj){
var tempLayer = obj.parentElement.parentElement.parentElement.parentElement; var tempLayer = obj.parentElement.parentElement.parentElement.parentElement;
if(tempLayer != null){ if(tempLayer != null){
tempLayer.remove(); tempLayer.remove();
} }
} }
function fncPopupListDelete() { function fncPopupListDelete() {
@ -248,69 +150,64 @@ function fncPopupListDelete() {
} }
</script> </script>
<style type="text/css"> <style type="text/css">
.pop-layer .pop-container { .pop-layer .pop-container {
/* padding: 20px 25px; */ }
} .pop-layer p.ctxt {
.pop-layer p.ctxt { color: #666;
color: #666; line-height: 25px;
line-height: 25px; }
} .pop-layer .btn-r {
.pop-layer .btn-r { width: 100%;
width: 100%; border-top: 1px solid #DDD;
/* margin: 10px 0 20px; */ text-align: center;
/* padding-top: 10px; */ }
border-top: 1px solid #DDD; .pop-layer {
text-align: center; display: none;
} position: absolute;
.pop-layer { background-color: #fff;
display: none; z-index: 10;
position: absolute; }
background-color: #fff;
/* border: 5px solid #3571B5; */
z-index: 10;
}
</style> </style>
</head> </head>
<body> <body>
<form name="listForm" action="<c:url value='/uss/ion/pwm/listPopup.do'/>" method="post"> <form:form id="listForm" name="listForm" action="<c:url value='/uss/ion/pwm/listPopup.do'/>" method="post">
<input name="pageIndex" type="hidden" value="<c:out value='${popupManageVO.pageIndex}'/>"/> <input type="hidden" name="popupId"/>
<input type="hidden" name="pageIndex" value="<c:out value='${popupManageVO.pageIndex}' default='1' />"/>
<input type="hidden" name="searchSortCnd" value="<c:out value="${popupManageVO.searchSortCnd}" />" /> <input type="hidden" name="searchSortCnd" value="<c:out value="${popupManageVO.searchSortCnd}" />" />
<input type="hidden" name="searchSortOrd" value="<c:out value="${popupManageVO.searchSortOrd}" />" /> <input type="hidden" name="searchSortOrd" value="<c:out value="${popupManageVO.searchSortOrd}" />" />
<!-- cont -->
<div class="cont_wrap"> <div class="cont_wrap">
<div class="box"> <div class="box">
<div class="cont_tit"> <div class="cont_tit">
<h2>팝업관리</h2> <h2>팝업관리</h2>
<!-- <ul class="cont_nav">
<li class="home"><a href="/"><i></i></a></li>
<li><span class="cur_nav">관리자 관리</span></li>
</ul> -->
</div> </div>
<!-- cont --> <!-- cont -->
<div class="cont"> <div class="cont">
<!-- list_top --> <!-- list_top -->
<div class="list_top"> <div class="list_top table_top">
<p>총 건수 : <span><c:out value="${paginationInfo.totalRecordCount}" /></span>건</p> <p class="table_total_text">총 건수 : <span class="color_blue fw_bold"><c:out value="${paginationInfo.totalRecordCount}" /></span>건</p>
<div class="list_util"> <div class="list_util search_wrap">
<select class="sel2 searchSel" id="searchCondition" name="searchCondition" title="조회조건"> <select class="sel2 searchSel" id="searchCondition" name="searchCondition" title="조회조건">
<option value="" >전체</option> <option value="" >전체</option>
<option value="POPUP_SJ_NM" <c:if test="${searchCondition == 'POPUP_SJ_NM'}">selected="selected"</c:if> >제목</option> <option value="POPUP_SJ_NM" <c:if test="${searchCondition == 'POPUP_SJ_NM'}">selected="selected"</c:if> >제목</option>
<option value="FILE_URL" <c:if test="${searchCondition == 'FILE_URL'}">selected="selected"</c:if> >링크URL</option> <option value="FILE_URL" <c:if test="${searchCondition == 'FILE_URL'}">selected="selected"</c:if> >링크URL</option>
</select> </select>
<input type="text" id="searchKeyword" name="searchKeyword" value="<c:out value='${popupManageVO.searchKeyword}'/>" class="search_input" placeholder="검색어를 입력하세요" maxlength="255"> <input type="text" id="searchKeyword" name="searchKeyword" value="<c:out value='${popupManageVO.searchKeyword}'/>" class="search_input" placeholder="검색어를 입력하세요">
<button class="btn_search" onclick="fn_egov_search_PopupManage(); return false;">검색</button> <button class="btn btn_text blue_border" onclick="fn_egov_search_PopupManage(); return false;">검색</button>
<select class="sel2" name="pageUnit" id="pageUnit" onchange="linkPage(1);" title="줄 선택" style="width: 140px"> <select class="sel2" name="pageUnit" id="pageUnit" onchange="linkPage(1);" title="줄 선택" style="width: 140px">
<option value='10' <c:if test="${popupManageVO.pageUnit == '10' or popupManageVO.pageUnit == ''}">selected</c:if>>10줄</option> <option value='10' <c:if test="${popupManageVO.pageUnit == '10' or popupManageVO.pageUnit == ''}">selected</c:if>>10줄</option>
<option value='20' <c:if test="${popupManageVO.pageUnit == '20'}">selected</c:if>>20줄</option> <option value='20' <c:if test="${popupManageVO.pageUnit == '20'}">selected</c:if>>20줄</option>
<option value='30' <c:if test="${popupManageVO.pageUnit == '30'}">selected</c:if>>30줄</option> <option value='30' <c:if test="${popupManageVO.pageUnit == '30'}">selected</c:if>>30줄</option>
</select> </select>
</div> </div>
</div> </div>
<!-- //list_top --> <!-- //list_top -->
<!-- list --> <!-- list -->
<div class="list tbType01"> <div class="list tbType01 table-layout mt15">
<table> <table>
<colgroup> <colgroup>
<col style="width: 3%"> <col style="width: 3%">
@ -328,12 +225,10 @@ function fncPopupListDelete() {
<th scope="col">번호<button class="sort sortBtn" id="sort_POPUP_ID">▲</button></th> <th scope="col">번호<button class="sort sortBtn" id="sort_POPUP_ID">▲</button></th>
<th scope="col">제목<button class="sort sortBtn" id="sort_POPUP_TITLE_NM">▲</button></th> <th scope="col">제목<button class="sort sortBtn" id="sort_POPUP_TITLE_NM">▲</button></th>
<th scope="col">시작일/종료일<button class="sort sortBtn" id="sort_NTCE_BGNDE">▲</button></th> <th scope="col">시작일/종료일<button class="sort sortBtn" id="sort_NTCE_BGNDE">▲</button></th>
<!-- <th scope="col">링크URL<button class="sort sortBtn" id="sort_FILE_URL">▲</button></th> -->
<th scope="col">팝업 위치<button class="sort sortBtn" id="sort_FILE_URL">▲</button></th> <th scope="col">팝업 위치<button class="sort sortBtn" id="sort_FILE_URL">▲</button></th>
<th scope="col">이미지크기<button class="sort sortBtn" id="sort_FRST_REGIST_PNTTM">▲</button></th> <th scope="col">이미지크기<button class="sort sortBtn" id="sort_FRST_REGIST_PNTTM">▲</button></th>
<th scope="col">링크사용여부<button class="sort sortBtn" id="sort_NTCE_AT">▲</button></th> <th scope="col">링크사용여부<button class="sort sortBtn" id="sort_NTCE_AT">▲</button></th>
<th scope="col">등록일<button class="sort sortBtn" id="sort_FRST_REGIST_PNTTM">▲</button></th> <th scope="col">등록일<button class="sort sortBtn" id="sort_FRST_REGIST_PNTTM">▲</button></th>
</tr> </tr>
</thead> </thead>
<tbody> <tbody>
@ -354,35 +249,34 @@ function fncPopupListDelete() {
<a href="#" onclick="fn_egov_detail_PopupManage('${result.popupId}'); return false;">${result.popupTitleNm}</a> <a href="#" onclick="fn_egov_detail_PopupManage('${result.popupId}'); return false;">${result.popupTitleNm}</a>
</td> </td>
<td> <td>
<c:set var="ntceBgnde" value="${fn:trim(result.ntceBgnde)}"/> <c:set var="ntceBgnde" value="${fn:trim(result.ntceBgnde)}"/>
<c:set var="ntceEndde" value="${fn:trim(result.ntceEndde)}"/> <c:set var="ntceEndde" value="${fn:trim(result.ntceEndde)}"/>
<fmt:parseDate value='${ntceBgnde}' var='ntceBgnde' pattern="yyyyMMddHHmm" scope="page" /> <fmt:parseDate value='${ntceBgnde}' var='ntceBgnde' pattern="yyyyMMddHHmm" scope="page" />
<fmt:parseDate value='${ntceEndde}' var='ntceEndde' pattern="yyyyMMddHHmm" scope="page" /> <fmt:parseDate value='${ntceEndde}' var='ntceEndde' pattern="yyyyMMddHHmm" scope="page" />
<fmt:formatDate value="${ntceBgnde}" pattern="yyyy-MM-dd HH:mm"/><br/> ~ <fmt:formatDate value="${ntceEndde}" pattern="yyyy-MM-dd HH:mm"/> <fmt:formatDate value="${ntceBgnde}" pattern="yyyy-MM-dd HH:mm"/><br/> ~ <fmt:formatDate value="${ntceEndde}" pattern="yyyy-MM-dd HH:mm"/>
</td> </td>
<td> <td>
<%-- <c:out value="${result.fileUrl}"/> --%> 화면 상단으로 부터 : <c:out value="${result.popupVrticlLc}"/>
화면 상단으로 부터 : <c:out value="${result.popupVrticlLc}"/> </br>
</br> 화면 좌측으로 부터 : <c:out value="${result.popupWidthLc}"/>
화면 좌측으로 부터 : <c:out value="${result.popupWidthLc}"/> </td>
</td> <td>
<td> <c:if test="${!empty result.width}">
<c:if test="${!empty result.width}">
높이 : <c:out value="${result.height}"/> 높이 : <c:out value="${result.height}"/>
</br> </br>
너비 : <c:out value="${result.width}"/> 너비 : <c:out value="${result.width}"/>
</c:if> </c:if>
</td> </td>
<td> <td>
<c:out value="${result.ntceAt}"/> <c:out value="${result.ntceAt}"/>
</td> </td>
<td> <td>
<c:out value="${result.frstRegistPnttm}"/> <c:out value="${result.frstRegistPnttm}"/>
</td> </td>
</tr> </tr>
</c:forEach> </c:forEach>
<c:if test="${empty resultList}"> <c:if test="${empty resultList}">
<tr><td colspan="7"><spring:message code="common.nodata.msg" /></td></tr> <tr><td colspan="8"><spring:message code="common.nodata.msg" /></td></tr>
</c:if> </c:if>
</tbody> </tbody>
</table> </table>
@ -390,17 +284,13 @@ function fncPopupListDelete() {
<!-- //list --> <!-- //list -->
<!-- btn_wrap --> <!-- btn_wrap -->
<div class="btn_wrap btn_layout01"> <div class="btn_wrap">
<div class="area_left"> <button type="button" class="btn btn_text btn_46 red_border" onclick="fncPopupListDelete(); return false;">삭제</button>
<button type="button" class="btnType03" onclick="fncPopupListDelete(); return false;">삭제</button> <button type="button" class="btn btn_text btn_46 blue_fill" onclick="location.href='/uss/ion/pwm/egovPopupRegist.do'; return false;">등록</button>
</div>
<div class="area_right">
<button type="button" class="btnType02" onclick="location.href='/uss/ion/pwm/egovPopupRegist.do'; return false;">등록</button>
</div>
</div> </div>
<!-- //btn_wrap --> <!-- //btn_wrap -->
<!-- page --> <!-- 페이지 네비게이션 시작 -->
<c:if test="${!empty resultList}"> <c:if test="${!empty resultList}">
<div class="page"> <div class="page">
<ul class="inline"> <ul class="inline">
@ -408,28 +298,19 @@ function fncPopupListDelete() {
</ul> </ul>
</div> </div>
</c:if> </c:if>
<!-- //페이지 네비게이션 끝 -->
</div> </div>
<!-- //cont --> <!-- //cont -->
</div> </div>
</div> </div>
</form> <!-- //cont -->
</form:form>
<form name="subForm" method="get" action="<c:url value='/uss/ion/pwm/detailPopup.do'/>"> <form name="subForm" method="get" action="<c:url value='/uss/ion/pwm/detailPopup.do'/>">
<input name="popupId" type="hidden" value="" /> <input name="popupId" type="hidden" value="" />
<input name="pageIndex" type="hidden" value="<c:out value='${popupManageVO.pageIndex}'/>"/> <input name="pageIndex" type="hidden" value="<c:out value='${popupManageVO.pageIndex}'/>"/>
<input name="cmd" type="hidden" value="<c:out value=''/>"/> <input name="cmd" type="hidden" value="<c:out value=''/>"/>
</form> </form>
<form name="modiForm" method="get" action="<c:url value='/sym/ccm/cde/EgovCcmCmmnDetailCodeModify.do'/>" >
<input name="codeId" type="hidden" />
<input name="cmd" type="hidden" />
<input name="code" type="hidden" />
</form>
<form name="searchForm" method="get" action="<c:url value='/uss/ion/pwm/listPopup.do'/>">
<input name="pageIndex" type="hidden" value="1" />
<input name="searchCondition" type="hidden" />
<input name="searchKeyword" type="hidden" />
<input name="delSttus" type="hidden" />
<input name="searchConditionSite" type="hidden" />
</form>
<div id="layer_pop" class="pop-layer"> <div id="layer_pop" class="pop-layer">
<div class="pop-container"> <div class="pop-container">
@ -437,11 +318,9 @@ function fncPopupListDelete() {
<div class="btn-r"> <div class="btn-r">
<a href="#" onclick="fn_layerClose(this); return false;" class="btn-layerClose">Close</a><br/> <a href="#" onclick="fn_layerClose(this); return false;" class="btn-layerClose">Close</a><br/>
</div> </div>
<!--// content-->
</div> </div>
</div> </div>
</div> </div>
</body> </body>
</html> </html>

View File

@ -39,7 +39,7 @@
function fn_egov_save_PopupManage(){ function fn_egov_save_PopupManage(){
var varFrom = document.popupManageVO; var varFrom = document.popupManageVO;
CKEDITOR.instances.nttCn.updateElement(); CKEDITOR.instances.nttCn.updateElement();
if(confirm("<spring:message code="common.save.msg" />")){ if(confirm("<spring:message code="common.save.msg" />")){
@ -132,12 +132,12 @@ function fn_egov_delete_PopupManage(){
} }
</script> </script>
<style> <!-- <style>
.date_format{width:91px !important;} .date_format{width:91px !important;}
.main1_table input{ .main1_table input{
width: unset; width: unset;
} }
</style> </style> -->
</head> </head>
<body> <body>
<form:form commandName="popupManageVO" name="popupManageVO" action="${pageContext.request.contextPath}/uss/ion/pwm/updtPopup.do" method="post" > <form:form commandName="popupManageVO" name="popupManageVO" action="${pageContext.request.contextPath}/uss/ion/pwm/updtPopup.do" method="post" >
@ -158,7 +158,7 @@ function fn_egov_delete_PopupManage(){
<div class="cont"> <div class="cont">
<!-- list_상세 --> <!-- list_상세 -->
<div class="tbType02"> <div class="tbType02 col-table data-table">
<table> <table>
<colgroup> <colgroup>
<col style="width: 20%"> <col style="width: 20%">
@ -168,14 +168,14 @@ function fn_egov_delete_PopupManage(){
<tbody> <tbody>
<tr> <tr>
<th><span class="reqArea">팝업명</span></th> <th><span class="reqArea">팝업명</span></th>
<td colspan="3"> <td>
<form:input path="popupTitleNm" size="50" title="팝업명" maxlength="255"/> <form:input path="popupTitleNm" size="50" title="팝업명" maxlength="255" cssClass="w100per"/>
<form:errors path="popupTitleNm" /> <form:errors path="popupTitleNm" />
</td> </td>
</tr> </tr>
<tr> <tr>
<th><span class="reqArea">게시기간</span></th> <th><span class="reqArea">게시기간</span></th>
<td colspan="3"> <td>
<%-- <input type="hidden" name="cal_url" id="cal_url" value="<c:url value='/sym/cmm/EgovNormalCalPopup.do'/>" > <%-- <input type="hidden" name="cal_url" id="cal_url" value="<c:url value='/sym/cmm/EgovNormalCalPopup.do'/>" >
<input type="text" class="date_format" name="ntceBgndeYYYMMDD" id="ntceBgndeYYYMMDD" size="10" maxlength="10" class="readOnlyClass" readonly> <input type="text" class="date_format" name="ntceBgndeYYYMMDD" id="ntceBgndeYYYMMDD" size="10" maxlength="10" class="readOnlyClass" readonly>
@ -203,13 +203,13 @@ function fn_egov_delete_PopupManage(){
</form:select>분 --%> </form:select>분 --%>
<div id="sel_date" class="sel_date"> <div id="sel_date" class="sel_date calendar">
<input type="hidden" name="cal_url" id="cal_url" value="<c:url value='/sym/cmm/EgovNormalCalPopup.do'/>" > <input type="hidden" name="cal_url" id="cal_url" value="<c:url value='/sym/cmm/EgovNormalCalPopup.do'/>" >
<input type="text" class="date_format" name="ntceBgndeYYYMMDD" id="ntceBgndeYYYMMDD" maxlength="10" title="게시시작일" value="<c:out value="${fn:substring(popupManageVO.ntceBgnde, 0, 4)}"/>-<c:out value="${fn:substring(popupManageVO.ntceBgnde, 4, 6)}"/>-<c:out value="${fn:substring(popupManageVO.ntceBgnde, 6, 8)}"/>" readonly> <input type="text" class="date_format" name="ntceBgndeYYYMMDD" id="ntceBgndeYYYMMDD" maxlength="10" title="게시시작일" value="<c:out value="${fn:substring(popupManageVO.ntceBgnde, 0, 4)}"/>-<c:out value="${fn:substring(popupManageVO.ntceBgnde, 4, 6)}"/>-<c:out value="${fn:substring(popupManageVO.ntceBgnde, 6, 8)}"/>" readonly>
<div class="calendar_in" id="calendarName_startDate" style="z-index: 9;"> <div class="calendar_in" id="calendarName_startDate" style="z-index: 9;">
<a href="#" onClick="javascript:fn_egov_NormalCalendar(document.forms.popupManageVO, document.forms.popupManageVO.ntceBgndeYYYMMDD);"> <a href="#" onClick="javascript:fn_egov_NormalCalendar(document.forms.popupManageVO, document.forms.popupManageVO.ntceBgndeYYYMMDD);">
<input type="button" class="calBtn"> <input type="button" class="calBtn">
<img src="<c:url value='/images/egovframework/com/cmm/icon/bu_icon_carlendar.gif' />" align="middle" style="border:0px" alt="달력창팝업버튼이미지"> <%-- <img src="<c:url value='/images/egovframework/com/cmm/icon/bu_icon_carlendar.gif' />" align="middle" style="border:0px" alt="달력창팝업버튼이미지"> --%>
</a> </a>
</div> </div>
<form:select path="ntceBgndeHH" class="date_format"> <form:select path="ntceBgndeHH" class="date_format">
@ -223,7 +223,7 @@ function fn_egov_delete_PopupManage(){
<div class="calendar_in" id="calendarName_endDate" style="z-index: 9;"> <div class="calendar_in" id="calendarName_endDate" style="z-index: 9;">
<a href="#" onClick="javascript:fn_egov_NormalCalendar(document.forms.popupManageVO, document.forms.popupManageVO.ntceEnddeYYYMMDD);"> <a href="#" onClick="javascript:fn_egov_NormalCalendar(document.forms.popupManageVO, document.forms.popupManageVO.ntceEnddeYYYMMDD);">
<input type="button" class="calBtn"> <input type="button" class="calBtn">
<img src="<c:url value='/images/egovframework/com/cmm/icon/bu_icon_carlendar.gif' />" align="middle" style="border:0px" alt="달력창팝업버튼이미지"> <%-- <img src="<c:url value='/images/egovframework/com/cmm/icon/bu_icon_carlendar.gif' />" align="middle" style="border:0px" alt="달력창팝업버튼이미지"> --%>
</a> </a>
</div> </div>
<form:select path="ntceEnddeHH" class="date_format"> <form:select path="ntceEnddeHH" class="date_format">
@ -237,14 +237,14 @@ function fn_egov_delete_PopupManage(){
</tr> </tr>
<tr> <tr>
<th>링크 URL</th> <th>링크 URL</th>
<td colspan="3"> <td>
<form:input path="fileUrl" size="50" title="링크 URL" maxlength="255"/> <form:input path="fileUrl" size="50" title="링크 URL" maxlength="255" cssClass="w100per"/>
<form:errors path="fileUrl" /> <form:errors path="fileUrl" />
</td> </td>
</tr> </tr>
<tr style="display:none;"> <tr style="display:none;">
<th>팝업사이즈</th> <th>팝업사이즈</th>
<td colspan="3"> <td>
가로<form:input path="popupWSize" class="dateInput" maxlength="10" value="100"/>px 세로<form:input path="popupHSize" class="dateInput" maxlength="10" value="100"/>px 가로<form:input path="popupWSize" class="dateInput" maxlength="10" value="100"/>px 세로<form:input path="popupHSize" class="dateInput" maxlength="10" value="100"/>px
<form:errors path="popupWSize" /> <form:errors path="popupWSize" />
<form:errors path="popupHSize" /> <form:errors path="popupHSize" />
@ -252,15 +252,16 @@ function fn_egov_delete_PopupManage(){
</tr> </tr>
<tr> <tr>
<th>위치</th> <th>위치</th>
<td colspan="3"> <td class="td_position">
왼쪽 <form:input path="popupWlc" class="dateInput" maxlength="10"/>px 상단<form:input path="popupHlc" class="dateInput" maxlength="10"/>px <p>왼쪽 <form:input path="popupWlc" class="dateInput" maxlength="10"/>px</p>
<p>상단<form:input path="popupHlc" class="dateInput" maxlength="10"/>px</p>
<form:errors path="popupWlc" /> <form:errors path="popupWlc" />
<form:errors path="popupHlc" /> <form:errors path="popupHlc" />
</td> </td>
</tr> </tr>
<tr> <tr>
<th>내용</th> <th>내용</th>
<td colspan="3"> <td>
<form:textarea path="nttCn" title="${title} ${inputTxt}" cols="300" rows="20" /> <form:textarea path="nttCn" title="${title} ${inputTxt}" cols="300" rows="20" />
<ckeditor:replace replace="nttCn" basePath="${pageContext.request.contextPath}/html/egovframework/com/cmm/utl/ckeditor/" /> <ckeditor:replace replace="nttCn" basePath="${pageContext.request.contextPath}/html/egovframework/com/cmm/utl/ckeditor/" />
</td> </td>
@ -291,11 +292,12 @@ function fn_egov_delete_PopupManage(){
<!-- btn_wrap --> <!-- btn_wrap -->
<div class="btn_wrap btn_layout01"> <div class="btn_wrap btn_layout01">
<div class="area_left"> <div class="area_left">
<button class="btnType04 btn btn_text btn_46 red_border" onclick="fn_egov_delete_PopupManage(); return false;">삭 제</button>
</div> </div>
<div class="area_right"> <div class="area_right">
<button class="btnType04" onclick="fn_egov_delete_PopupManage(); return false;">삭 제</button>
<button class="btnType06" onclick="fn_egov_save_PopupManage(); return false;">저 장</button> <button class="btnType06 btn btn_text btn_46 blue_fill" onclick="fn_egov_save_PopupManage(); return false;">저 장</button>
<button class="btnType04" onclick="fnList(); return false;">목 록</button> <button class="btnType04 btn btn_text btn_46 gray_fill" onclick="fnList(); return false;">목 록</button>
</div> </div>
</div> </div>
<!-- //btn_wrap --> <!-- //btn_wrap -->

View File

@ -31,16 +31,36 @@ $(document).ready(function (){
</c:forEach> </c:forEach>
// 팝업 위치 조정 // 팝업 위치 조정
let offset = 0; let offset = 30;
$(".popup").each(function() {
$(this).css({ var bodyWidth = $("body").width();
top: '10%', // 화면 중앙에 위치
left: offset + 'px', // 각 팝업을 가로로 정렬 if(bodyWidth>1199){
transform: 'translateY(-50%)', // 세로 중앙 정렬 $(".popup").each(function(idx,itm) {
position: 'absolute' // 부모 요소 기준으로 위치 설정 $(this).css({
}); top: '10%', // 화면 중앙에 위치
offset += $(this).outerWidth(true); // 다음 팝업의 위치를 현재 팝업의 너비만큼 이동 left: offset + 'px', // 각 팝업을 가로로 정렬
}); /* transform: 'translateY(-50%)', // 세로 중앙 정렬 */
position: 'absolute' // 부모 요소 기준으로 위치 설정
});
offset += $(this).outerWidth(true)+30; // 다음 팝업의 위치를 현재 팝업의 너비만큼 이동
});
}else{
$(".popup").each(function(idx,itm) {
var zIndex = 1000 - idx;
var topPosi = idx * 45;
$(this).css({
top: 'calc(10% + '+topPosi+'px)', // 화면 중앙에 위치
left: '30px', // 각 팝업을 가로로 정렬
/* transform: 'translateY(-50%)', // 세로 중앙 정렬 */
position: 'absolute', // 부모 요소 기준으로 위치 설정
"z-index":zIndex
});
offset += $(this).outerWidth(true)+30; // 다음 팝업의 위치를 현재 팝업의 너비만큼 이동
});
}
}); });
@ -345,55 +365,62 @@ function commonPopWindowopenForm(surl, popupwidth, popupheight, name, frm) {
<c:if test="${fn:length(popupList) > 0}" > <c:if test="${fn:length(popupList) > 0}" >
<style> <style>
.popup { .popup {
display: none; /* 처음에는 보이지 않도록 설정 */ display: none; /* 처음에는 보이지 않도록 설정 */
position: fixed; /* 화면에 고정 */ position: fixed; /* 화면에 고정 */
left: 0; /* 초기 위치 설정 */ left: 0; /* 초기 위치 설정 */
top: 50%; /* 화면 중앙에 위치 */ top: 50%; /* 화면 중앙에 위치 */
transform: translateY(-50%); /* 세로 중앙 정렬 */ min-width: 300px; /* 팝업 너비 */
width: 300px; /* 팝업 너비 */
height: auto; /* 높이를 내용에 맞게 자동 조정 */ height: auto; /* 높이를 내용에 맞게 자동 조정 */
border: 1px solid #ccc; border: 1px solid #e5e5e5;
background-color: #f9f9f9; background-color: #f4f5f6;
text-align: center; text-align: center;
z-index: 1000; /* 다른 요소들 위에 표시되도록 설정 */ z-index: 1000; /* 다른 요소들 위에 표시되도록 설정 */
box-shadow: 0 0 10px rgba(0, 0, 0, 0.5); /* 그림자 효과 */ box-shadow: 0 0 5px rgba(0, 0, 0, 0.3); /* 그림자 효과 */
padding: 20px; /* 내용과 경계 사이의 여백 */
}
.pop-container {
text-align: left; /* 내용 정렬 */
}
.btn-r {
margin-top: 10px; /* 버튼과 내용 사이의 여백 */
} }
.popup_wrap{position:fixed;width:100%;height:100%;padding:30px;left:0;top:0;z-index:999;}
.pop-conts{display:flex;background:#fff;min-height:250px;font-size:1.4rem;justify-content:center;align-items:center;}
.btn-r{display:flex;height:45px;padding:0 15px;justify-content:space-between;align-items:center;}
.today_close{display:flex;font-size:1.5rem;color:#222;gap:6px;}
.today_close [type="checkbox"]{width:16px;height:16px;}
.btn-layerClose{width:16px;height:16px;margin:2px 0 0 0;}
.icon.popup_close{width:16px;height:16px;background:url(/kofair_case_seed/usr/images/component/icon_popup_close.png) no-repeat center center;background-size:100% auto;}
@media screen and (max-width: 1199px){
.popup_wrap{width:95%;}
.pop-conts{min-height:auto;}
.popup_wrap img{height:auto !important;object-fit:contain;}
}
</style> </style>
<c:forEach var="popupListData" items="${popupList}" varStatus="status" end="4"> <div class="popup_wrap">
<div id="layer_pop_<c:out value='${popupListData.popupId}' />" class="popup"> <c:forEach var="popupListData" items="${popupList}" varStatus="status" end="4">
<div class="pop-container"> <div id="layer_pop_<c:out value='${popupListData.popupId}' />" class="popup">
<div class="pop-conts"> <div class="pop-container">
<c:choose> <div class="pop-conts">
<c:when test="${not empty popupListData.fileUrl}"> <c:choose>
<a href="<c:out value='${popupListData.fileUrl}' />" target="_blank"> <c:when test="${not empty popupListData.fileUrl}">
${popupListData.nttCn} <a href="<c:out value='${popupListData.fileUrl}' />" target="_blank">
</a> ${popupListData.nttCn}
</c:when> </a>
<c:otherwise> </c:when>
<a href="#"> <c:otherwise>
${popupListData.nttCn} <a href="#">
</a> ${popupListData.nttCn}
</c:otherwise> </a>
</c:choose> </c:otherwise>
</div> </c:choose>
<div class="btn-r"> </div>
<div class="today_close"> <div class="btn-r">
<c:if test="${popupListData.stopvewSetupAt eq 'Y' }"> <div class="today_close">
<label for="chkPupup_${status.count}">하루동안 창을 열지 않음</label> <c:if test="${popupListData.stopvewSetupAt eq 'Y' }">
<input type="checkbox" id="chkPupup_${status.count}" name="chkPopup" tabindex="1" onClick="fnPopupCheck('<c:out value='${popupListData.popupId}' />' , 'layer')" onkeypress="fnPopupCheck('<c:out value='${popupListData.popupId}' />' , 'layer')" style="display:inline"> <input type="checkbox" id="chkPupup_${status.count}" name="chkPopup" tabindex="1" onClick="fnPopupCheck('<c:out value='${popupListData.popupId}' />' , 'layer')" onkeypress="fnPopupCheck('<c:out value='${popupListData.popupId}' />' , 'layer')" style="display:inline">
</c:if> <label for="chkPupup_${status.count}">하루동안 창을 열지 않음</label>
</div> </c:if>
<a href="#" tabindex="1" onclick="fn_layerClose('<c:out value='${popupListData.popupId}' />'); return false;" class="btn-layerClose" title="팝업 닫기"></a> </div>
</div> <a href="#" tabindex="1" onclick="fn_layerClose('<c:out value='${popupListData.popupId}' />'); return false;" class="btn-layerClose" title="팝업 닫기"><i class="icon popup_close"></i></a>
</div> </div>
</div> </div>
</c:forEach> </div>
</c:forEach>
</div>
</c:if> </c:if>

View File

@ -44,6 +44,7 @@ form h3,.title.depth02{font-size:20px;font-weight:bold;}
.calendar input[type="text"]{width:120px;font-size:14px;font-weight:400;color:#666;} .calendar input[type="text"]{width:120px;font-size:14px;font-weight:400;color:#666;}
.calendar input[type="text"]+img{margin:0 0 0 -32px;} .calendar input[type="text"]+img{margin:0 0 0 -32px;}
.calendar input[type="text"]:first-child+img{margin:0 13px 0 -32px;} .calendar input[type="text"]:first-child+img{margin:0 13px 0 -32px;}
.calendar .calBtn{width:36px;height:36px;margin:0 0 0 -40px;border:0 !important;border-radius:5px;background:transparent url(/kofair_case_seed/adm/images/component/icon_calendar.png) no-repeat calc(100% - 10px) 50% !important;}
.wrap .form-group.calendar{display:flex;align-items:center;} .wrap .form-group.calendar{display:flex;align-items:center;}
.wrap .form-group.calendar input[type="text"],.wrap .hasDatepicker{width:150px !important;height:36px;} .wrap .form-group.calendar input[type="text"],.wrap .hasDatepicker{width:150px !important;height:36px;}
@ -147,6 +148,9 @@ form h3,.title.depth02{font-size:20px;font-weight:bold;}
.wrap .col-table.data-table table td:last-child{border-right:0;} .wrap .col-table.data-table table td:last-child{border-right:0;}
.wrap .col-table.data-table textarea{max-width:100%;} .wrap .col-table.data-table textarea{max-width:100%;}
.wrap .col-table.data-table .td_position p{display:flex;align-items:center;gap:8px;}
.wrap .col-table.data-table .td_position p:first-child{margin:0 0 8px 0;}
.wrap .radio_wrap,.wrap .radio_wrap span{display:flex;align-items:center;} .wrap .radio_wrap,.wrap .radio_wrap span{display:flex;align-items:center;}
.wrap .radio_wrap{gap:20px;} .wrap .radio_wrap{gap:20px;}
.wrap .radio_wrap input[type="radio"]{margin:0;} .wrap .radio_wrap input[type="radio"]{margin:0;}

View File

@ -325,6 +325,7 @@
.cmmt_wrap li:last-child{width:80px;} .cmmt_wrap li:last-child{width:80px;}
.cmmt_wrap .btn_add_cmmt{width:100%;height:80px;border-radius:5px;background:#2e40ba;border:0;color:#fff;margin:0 0 0 5px;font-size:1.8rem;transition:background 0.2s linear;} .cmmt_wrap .btn_add_cmmt{width:100%;height:80px;border-radius:5px;background:#2e40ba;border:0;color:#fff;margin:0 0 0 5px;font-size:1.8rem;transition:background 0.2s linear;}
/* .popup{position:fixed;min-width:300px;height:auto;background:#fff;border:1px solid #e5e5e5;box-shadow:0 0 10px rgba(0,0,0,0.5);left:0;top:0;transform: translateY(-50%);} */
/* ==================== 테블릿 ==================== */ /* ==================== 테블릿 ==================== */
@media screen and (max-width: 1199px){ @media screen and (max-width: 1199px){