최초커밋(나머지)
@ -0,0 +1,3 @@
|
||||
Manifest-Version: 1.0
|
||||
Class-Path:
|
||||
|
||||
@ -0,0 +1,202 @@
|
||||
|
||||
Apache License
|
||||
Version 2.0, January 2004
|
||||
http://www.apache.org/licenses/
|
||||
|
||||
TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
|
||||
|
||||
1. Definitions.
|
||||
|
||||
"License" shall mean the terms and conditions for use, reproduction,
|
||||
and distribution as defined by Sections 1 through 9 of this document.
|
||||
|
||||
"Licensor" shall mean the copyright owner or entity authorized by
|
||||
the copyright owner that is granting the License.
|
||||
|
||||
"Legal Entity" shall mean the union of the acting entity and all
|
||||
other entities that control, are controlled by, or are under common
|
||||
control with that entity. For the purposes of this definition,
|
||||
"control" means (i) the power, direct or indirect, to cause the
|
||||
direction or management of such entity, whether by contract or
|
||||
otherwise, or (ii) ownership of fifty percent (50%) or more of the
|
||||
outstanding shares, or (iii) beneficial ownership of such entity.
|
||||
|
||||
"You" (or "Your") shall mean an individual or Legal Entity
|
||||
exercising permissions granted by this License.
|
||||
|
||||
"Source" form shall mean the preferred form for making modifications,
|
||||
including but not limited to software source code, documentation
|
||||
source, and configuration files.
|
||||
|
||||
"Object" form shall mean any form resulting from mechanical
|
||||
transformation or translation of a Source form, including but
|
||||
not limited to compiled object code, generated documentation,
|
||||
and conversions to other media types.
|
||||
|
||||
"Work" shall mean the work of authorship, whether in Source or
|
||||
Object form, made available under the License, as indicated by a
|
||||
copyright notice that is included in or attached to the work
|
||||
(an example is provided in the Appendix below).
|
||||
|
||||
"Derivative Works" shall mean any work, whether in Source or Object
|
||||
form, that is based on (or derived from) the Work and for which the
|
||||
editorial revisions, annotations, elaborations, or other modifications
|
||||
represent, as a whole, an original work of authorship. For the purposes
|
||||
of this License, Derivative Works shall not include works that remain
|
||||
separable from, or merely link (or bind by name) to the interfaces of,
|
||||
the Work and Derivative Works thereof.
|
||||
|
||||
"Contribution" shall mean any work of authorship, including
|
||||
the original version of the Work and any modifications or additions
|
||||
to that Work or Derivative Works thereof, that is intentionally
|
||||
submitted to Licensor for inclusion in the Work by the copyright owner
|
||||
or by an individual or Legal Entity authorized to submit on behalf of
|
||||
the copyright owner. For the purposes of this definition, "submitted"
|
||||
means any form of electronic, verbal, or written communication sent
|
||||
to the Licensor or its representatives, including but not limited to
|
||||
communication on electronic mailing lists, source code control systems,
|
||||
and issue tracking systems that are managed by, or on behalf of, the
|
||||
Licensor for the purpose of discussing and improving the Work, but
|
||||
excluding communication that is conspicuously marked or otherwise
|
||||
designated in writing by the copyright owner as "Not a Contribution."
|
||||
|
||||
"Contributor" shall mean Licensor and any individual or Legal Entity
|
||||
on behalf of whom a Contribution has been received by Licensor and
|
||||
subsequently incorporated within the Work.
|
||||
|
||||
2. Grant of Copyright License. Subject to the terms and conditions of
|
||||
this License, each Contributor hereby grants to You a perpetual,
|
||||
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
|
||||
copyright license to reproduce, prepare Derivative Works of,
|
||||
publicly display, publicly perform, sublicense, and distribute the
|
||||
Work and such Derivative Works in Source or Object form.
|
||||
|
||||
3. Grant of Patent License. Subject to the terms and conditions of
|
||||
this License, each Contributor hereby grants to You a perpetual,
|
||||
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
|
||||
(except as stated in this section) patent license to make, have made,
|
||||
use, offer to sell, sell, import, and otherwise transfer the Work,
|
||||
where such license applies only to those patent claims licensable
|
||||
by such Contributor that are necessarily infringed by their
|
||||
Contribution(s) alone or by combination of their Contribution(s)
|
||||
with the Work to which such Contribution(s) was submitted. If You
|
||||
institute patent litigation against any entity (including a
|
||||
cross-claim or counterclaim in a lawsuit) alleging that the Work
|
||||
or a Contribution incorporated within the Work constitutes direct
|
||||
or contributory patent infringement, then any patent licenses
|
||||
granted to You under this License for that Work shall terminate
|
||||
as of the date such litigation is filed.
|
||||
|
||||
4. Redistribution. You may reproduce and distribute copies of the
|
||||
Work or Derivative Works thereof in any medium, with or without
|
||||
modifications, and in Source or Object form, provided that You
|
||||
meet the following conditions:
|
||||
|
||||
(a) You must give any other recipients of the Work or
|
||||
Derivative Works a copy of this License; and
|
||||
|
||||
(b) You must cause any modified files to carry prominent notices
|
||||
stating that You changed the files; and
|
||||
|
||||
(c) You must retain, in the Source form of any Derivative Works
|
||||
that You distribute, all copyright, patent, trademark, and
|
||||
attribution notices from the Source form of the Work,
|
||||
excluding those notices that do not pertain to any part of
|
||||
the Derivative Works; and
|
||||
|
||||
(d) If the Work includes a "NOTICE" text file as part of its
|
||||
distribution, then any Derivative Works that You distribute must
|
||||
include a readable copy of the attribution notices contained
|
||||
within such NOTICE file, excluding those notices that do not
|
||||
pertain to any part of the Derivative Works, in at least one
|
||||
of the following places: within a NOTICE text file distributed
|
||||
as part of the Derivative Works; within the Source form or
|
||||
documentation, if provided along with the Derivative Works; or,
|
||||
within a display generated by the Derivative Works, if and
|
||||
wherever such third-party notices normally appear. The contents
|
||||
of the NOTICE file are for informational purposes only and
|
||||
do not modify the License. You may add Your own attribution
|
||||
notices within Derivative Works that You distribute, alongside
|
||||
or as an addendum to the NOTICE text from the Work, provided
|
||||
that such additional attribution notices cannot be construed
|
||||
as modifying the License.
|
||||
|
||||
You may add Your own copyright statement to Your modifications and
|
||||
may provide additional or different license terms and conditions
|
||||
for use, reproduction, or distribution of Your modifications, or
|
||||
for any such Derivative Works as a whole, provided Your use,
|
||||
reproduction, and distribution of the Work otherwise complies with
|
||||
the conditions stated in this License.
|
||||
|
||||
5. Submission of Contributions. Unless You explicitly state otherwise,
|
||||
any Contribution intentionally submitted for inclusion in the Work
|
||||
by You to the Licensor shall be under the terms and conditions of
|
||||
this License, without any additional terms or conditions.
|
||||
Notwithstanding the above, nothing herein shall supersede or modify
|
||||
the terms of any separate license agreement you may have executed
|
||||
with Licensor regarding such Contributions.
|
||||
|
||||
6. Trademarks. This License does not grant permission to use the trade
|
||||
names, trademarks, service marks, or product names of the Licensor,
|
||||
except as required for reasonable and customary use in describing the
|
||||
origin of the Work and reproducing the content of the NOTICE file.
|
||||
|
||||
7. Disclaimer of Warranty. Unless required by applicable law or
|
||||
agreed to in writing, Licensor provides the Work (and each
|
||||
Contributor provides its Contributions) on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
|
||||
implied, including, without limitation, any warranties or conditions
|
||||
of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
|
||||
PARTICULAR PURPOSE. You are solely responsible for determining the
|
||||
appropriateness of using or redistributing the Work and assume any
|
||||
risks associated with Your exercise of permissions under this License.
|
||||
|
||||
8. Limitation of Liability. In no event and under no legal theory,
|
||||
whether in tort (including negligence), contract, or otherwise,
|
||||
unless required by applicable law (such as deliberate and grossly
|
||||
negligent acts) or agreed to in writing, shall any Contributor be
|
||||
liable to You for damages, including any direct, indirect, special,
|
||||
incidental, or consequential damages of any character arising as a
|
||||
result of this License or out of the use or inability to use the
|
||||
Work (including but not limited to damages for loss of goodwill,
|
||||
work stoppage, computer failure or malfunction, or any and all
|
||||
other commercial damages or losses), even if such Contributor
|
||||
has been advised of the possibility of such damages.
|
||||
|
||||
9. Accepting Warranty or Additional Liability. While redistributing
|
||||
the Work or Derivative Works thereof, You may choose to offer,
|
||||
and charge a fee for, acceptance of support, warranty, indemnity,
|
||||
or other liability obligations and/or rights consistent with this
|
||||
License. However, in accepting such obligations, You may act only
|
||||
on Your own behalf and on Your sole responsibility, not on behalf
|
||||
of any other Contributor, and only if You agree to indemnify,
|
||||
defend, and hold each Contributor harmless for any liability
|
||||
incurred by, or claims asserted against, such Contributor by reason
|
||||
of your accepting any such warranty or additional liability.
|
||||
|
||||
END OF TERMS AND CONDITIONS
|
||||
|
||||
APPENDIX: How to apply the Apache License to your work.
|
||||
|
||||
To apply the Apache License to your work, attach the following
|
||||
boilerplate notice, with the fields enclosed by brackets "[]"
|
||||
replaced with your own identifying information. (Don't include
|
||||
the brackets!) The text should be enclosed in the appropriate
|
||||
comment syntax for the file format. We also recommend that a
|
||||
file or class name and description of purpose be included on the
|
||||
same "printed page" as the copyright notice for easier
|
||||
identification within third-party archives.
|
||||
|
||||
Copyright [yyyy] [name of copyright owner]
|
||||
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
@ -0,0 +1,18 @@
|
||||
Copyright <2014> "전자정부 표준프레임워크"
|
||||
|
||||
전자정부 표준프레임워크 공통컴포넌트는
|
||||
아래와 같은 라이선스를 적용받는 오픈소스 소프트웨어를 기반으로 만들어졌습니다.
|
||||
|
||||
Apache License 2.0
|
||||
BSD 3-clause "New" or "Revised" License
|
||||
GNU Lesser General Public License v2.1 or later
|
||||
htmlArea License
|
||||
JSON License
|
||||
MIT License
|
||||
Oracle Technology Network Development and Distribution License
|
||||
|
||||
|
||||
전자정부 표준프레임워크 공통컴포넌트를 수정 혹은 확장한 2차적 저작물을 사용하거나 배포하여 발생하는 모든 손해나 법적 문제에 대해
|
||||
전자정부 표준프레임워크의 저작권자는 일체의 책임을 지지 않습니다.
|
||||
|
||||
전자정부 표준프레임워크 공통컴포넌트에 사용된 오픈 소스소프트웨어의 라이선스는 OSSLicenses 파일을 참조하십시오
|
||||
@ -0,0 +1,97 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<beans xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:p="http://www.springframework.org/schema/p"
|
||||
xmlns:context="http://www.springframework.org/schema/context"
|
||||
xmlns:mvc="http://www.springframework.org/schema/mvc"
|
||||
xmlns:tx="http://www.springframework.org/schema/tx"
|
||||
xmlns:task="http://www.springframework.org/schema/task"
|
||||
xmlns="http://www.springframework.org/schema/beans"
|
||||
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-4.0.xsd
|
||||
http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-4.0.xsd
|
||||
http://www.springframework.org/schema/task http://www.springframework.org/schema/task/spring-task-4.0.xsd
|
||||
http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-4.0.xsd
|
||||
http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-4.0.xsd">
|
||||
|
||||
<!-- <task:scheduler id="scheduler" pool-size="10"/>
|
||||
<task:executor id="executor" pool-size="10"/>
|
||||
<task:annotation-driven executor="executor" scheduler="scheduler"/> -->
|
||||
<!-- 패키지 내 Controller, Service, Repository 클래스의 auto detect를 위한 mvc 설정 -->
|
||||
<mvc:annotation-driven/>
|
||||
<tx:annotation-driven proxy-target-class="true"/>
|
||||
<context:component-scan base-package="gtpa.icsmw.*"/>
|
||||
|
||||
<mvc:resources mapping="/websquare/**" location="/websquare/"/>
|
||||
<mvc:resources mapping="/resource/**" location="/resource/"/>
|
||||
<mvc:resources mapping="/cm/**" location="/cm/"/>
|
||||
<mvc:resources mapping="/ui/**" location="/ui/"/>
|
||||
<mvc:resources mapping="/pub/**" location="/pub/"/>
|
||||
<mvc:resources mapping="/dev/**" location="/dev/"/>
|
||||
<mvc:resources mapping="/ClipReport4/**" location="/ClipReport4/"/>
|
||||
<mvc:resources mapping="/favicon.ico" location="/cm/images/favicon.ico"/>
|
||||
<mvc:resources mapping="/robots.txt" location="/robots.txt" order="0"/>
|
||||
|
||||
<!-- 서블릿컨네이너상의 exception에 대한 오류 페이지를 연결하는 mvc 설정-->
|
||||
<bean class="org.springframework.web.servlet.handler.SimpleMappingExceptionResolver">
|
||||
<property name="defaultErrorView" value="cmm/error/egovError"/>
|
||||
<property name="exceptionMappings">
|
||||
<props>
|
||||
<prop key="org.springframework.dao.DataAccessException">cmm/error/dataAccessFailure</prop>
|
||||
<prop key="org.springframework.transaction.TransactionException">cmm/error/transactionFailure</prop>
|
||||
<prop key="org.springframework.security.AccessDeniedException">cmm/error/accessDenied</prop>
|
||||
</props>
|
||||
</property>
|
||||
</bean>
|
||||
|
||||
<bean id="jsonView" class="org.springframework.web.servlet.view.json.MappingJackson2JsonView"
|
||||
p:contentType="application/json;charset=UTF-8"
|
||||
/>
|
||||
|
||||
<!-- 화면처리용 JSP 파일명의 prefix, suffix 처리에 대한 mvc 설정 -->
|
||||
|
||||
<bean class="org.springframework.web.servlet.view.UrlBasedViewResolver" p:order="1"
|
||||
p:viewClass="org.springframework.web.servlet.view.JstlView"
|
||||
p:prefix="/WEB-INF/views/" p:suffix=".jsp" p:exposePathVariables="false"/>
|
||||
|
||||
<!-- Resolves views selected for rendering by @Controllers to .jsp resources in the /WEB-INF/views directory -->
|
||||
|
||||
|
||||
<bean id="sessionCheckInterceptor" name="sessionCheckInterceptor"
|
||||
class="gtpa.icsmw.interceptor.SessionCheckInterceptor"/>
|
||||
<!--<bean id="authenticInterceptor" name="authenticInterceptor"
|
||||
class="egovframework.com.cmm.interceptor.AuthenticInterceptor"/>-->
|
||||
<bean id="authenticInterceptor" name="authenticInterceptor"
|
||||
class="gtpa.icsmw.interceptor.AuthenticInterceptor"/>
|
||||
<bean id="accessStaticInterceptor" name="accessStaticInterceptor"
|
||||
class="gtpa.icsmw.interceptor.AccessStaticInterceptor"/>
|
||||
<!-- 로그인 체크가 필요한 URL과 로그인 여부를 체크해
|
||||
준다 -->
|
||||
|
||||
<mvc:interceptors>
|
||||
<mvc:interceptor>
|
||||
<mvc:mapping path="/ws.do"/>
|
||||
<mvc:mapping path="/"/>
|
||||
<ref bean="accessStaticInterceptor"/>
|
||||
</mvc:interceptor>
|
||||
<mvc:interceptor>
|
||||
<mvc:mapping path="/manager/*"/>
|
||||
<mvc:exclude-mapping path="/login/*"/>
|
||||
<mvc:exclude-mapping path="/common/*"/>
|
||||
<ref bean="authenticInterceptor"/>
|
||||
</mvc:interceptor>
|
||||
<mvc:interceptor>
|
||||
<!--<mvc:mapping path="/**" />-->
|
||||
<mvc:mapping path="/ws.do"/>
|
||||
<mvc:exclude-mapping path="/websquare/**"/>
|
||||
<mvc:exclude-mapping path="/resource/**"/>
|
||||
<mvc:exclude-mapping path="/cm/**"/>
|
||||
<mvc:exclude-mapping path="/common/wqErrorMsg"/>
|
||||
<ref bean="sessionCheckInterceptor"/>
|
||||
</mvc:interceptor>
|
||||
</mvc:interceptors>
|
||||
|
||||
<!-- Annotation 을 사용하지 않는 경우에 대한 MVC 처리 설정 -->
|
||||
<!-- <mvc:view-controller path="/cmmn/validator.do" view-name="cmmn/validator"/> -->
|
||||
<!--<mvc:view-controller path="/check/phone/main.do" view-name="nice/phone/checkplus_main" />
|
||||
<mvc:view-controller path="/check/credit/main.do" view-name="nice/credit/checkplus_main" />-->
|
||||
<!-- <mvc:annotation-driven/> -->
|
||||
|
||||
</beans>
|
||||
@ -0,0 +1,93 @@
|
||||
<%@ page language="java" contentType="text/html; charset=UTF-8"
|
||||
pageEncoding="UTF-8"%>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||
<script language="javascript">
|
||||
// opener관련 오류가 발생하는 경우 아래 주석을 해지하고, 사용자의 도메인정보를 입력합니다. ("팝업API 호출 소스"도 동일하게 적용시켜야 합니다.)
|
||||
//document.domain = "abc.go.kr";
|
||||
|
||||
function goPopup(){
|
||||
// 주소검색을 수행할 팝업 페이지를 호출합니다.
|
||||
// 호출된 페이지(jusopopup.jsp)에서 실제 주소검색URL(http://www.juso.go.kr/addrlink/addrLinkUrl.do)를 호출하게 됩니다.
|
||||
var pop = window.open("/pc/juso/jusoPopup.jsp","pop","width=570,height=420, scrollbars=yes, resizable=yes");
|
||||
|
||||
// 모바일 웹인 경우, 호출된 페이지(jusopopup.jsp)에서 실제 주소검색URL(http://www.juso.go.kr/addrlink/addrMobileLinkUrl.do)를 호출하게 됩니다.
|
||||
//var pop = window.open("/popup/jusoPopup.jsp","pop","scrollbars=yes, resizable=yes");
|
||||
}
|
||||
|
||||
|
||||
function jusoCallBack(roadFullAddr,roadAddrPart1,addrDetail,roadAddrPart2,engAddr, jibunAddr, zipNo, admCd, rnMgtSn, bdMgtSn,detBdNmList,bdNm,bdKdcd,siNm,sggNm,emdNm,liNm,rn,udrtYn,buldMnnm,buldSlno,mtYn,lnbrMnnm,lnbrSlno,emdNo){
|
||||
// 팝업페이지에서 주소입력한 정보를 받아서, 현 페이지에 정보를 등록합니다.
|
||||
document.form.roadFullAddr.value = roadFullAddr;
|
||||
document.form.roadAddrPart1.value = roadAddrPart1;
|
||||
document.form.roadAddrPart2.value = roadAddrPart2;
|
||||
document.form.addrDetail.value = addrDetail;
|
||||
document.form.engAddr.value = engAddr;
|
||||
document.form.jibunAddr.value = jibunAddr;
|
||||
document.form.zipNo.value = zipNo;
|
||||
document.form.admCd.value = admCd;
|
||||
document.form.rnMgtSn.value = rnMgtSn;
|
||||
document.form.bdMgtSn.value = bdMgtSn;
|
||||
document.form.detBdNmList.value = detBdNmList;
|
||||
/** 2017년 2월 추가제공 **/
|
||||
document.form.bdNm.value = bdNm;
|
||||
document.form.bdKdcd.value = bdKdcd;
|
||||
document.form.siNm.value = siNm;
|
||||
document.form.sggNm.value = sggNm;
|
||||
document.form.emdNm.value = emdNm;
|
||||
document.form.liNm.value = liNm;
|
||||
document.form.rn.value = rn;
|
||||
document.form.udrtYn.value = udrtYn;
|
||||
document.form.buldMnnm.value = buldMnnm;
|
||||
document.form.buldSlno.value = buldSlno;
|
||||
document.form.mtYn.value = mtYn;
|
||||
document.form.lnbrMnnm.value = lnbrMnnm;
|
||||
document.form.lnbrSlno.value = lnbrSlno;
|
||||
/** 2017년 3월 추가제공 **/
|
||||
document.form.emdNo.value = emdNo;
|
||||
|
||||
}
|
||||
|
||||
</script>
|
||||
<title>주소 입력 샘플</title>
|
||||
</head>
|
||||
<body>
|
||||
<form name="form" id="form" method="post">
|
||||
|
||||
<input type="button" onClick="goPopup();" value="팝업_domainChk"/>
|
||||
<div id="list"></div>
|
||||
<div id="callBackDiv">
|
||||
<table>
|
||||
<tr><td>도로명주소 전체(포멧)</td><td><input type="text" style="width:500px;" id="roadFullAddr" name="roadFullAddr" /></td></tr>
|
||||
<tr><td>도로명주소 </td><td><input type="text" style="width:500px;" id="roadAddrPart1" name="roadAddrPart1" /></td></tr>
|
||||
<tr><td>고객입력 상세주소 </td><td><input type="text" style="width:500px;" id="addrDetail" name="addrDetail" /></td></tr>
|
||||
<tr><td>참고주소 </td><td><input type="text" style="width:500px;" id="roadAddrPart2" name="roadAddrPart2" /></td></tr>
|
||||
<tr><td>영문 도로명주소 </td><td><input type="text" style="width:500px;" id="engAddr" name="engAddr" /></td></tr>
|
||||
<tr><td>지번 </td><td><input type="text" style="width:500px;" id="jibunAddr" name="jibunAddr" /></td></tr>
|
||||
<tr><td>우편번호 </td><td><input type="text" style="width:500px;" id="zipNo" name="zipNo" /></td></tr>
|
||||
<tr><td>행정구역코드 </td><td><input type="text" style="width:500px;" id="admCd" name="admCd" /></td></tr>
|
||||
<tr><td>도로명코드 </td><td><input type="text" style="width:500px;" id="rnMgtSn" name="rnMgtSn" /></td></tr>
|
||||
<tr><td>건물관리번호 </td><td><input type="text" style="width:500px;" id="bdMgtSn" name="bdMgtSn" /></td></tr>
|
||||
<tr><td>상세번물명 </td><td><input type="text" style="width:500px;" id="detBdNmList" name="detBdNmList" /></td></tr>
|
||||
<tr><td>건물명 </td><td><input type="text" style="width:500px;" id="bdNm" name="bdNm" /></td></tr>
|
||||
<tr><td>공동주택여부 </td><td><input type="text" style="width:500px;" id="bdKdcd" name="bdKdcd" /></td></tr>
|
||||
<tr><td>시도명 </td><td><input type="text" style="width:500px;" id="siNm" name="siNm" /></td></tr>
|
||||
<tr><td>시군구명 </td><td><input type="text" style="width:500px;" id="sggNm" name="sggNm" /></td></tr>
|
||||
<tr><td>읍면동명 </td><td><input type="text" style="width:500px;" id="emdNm" name="emdNm" /></td></tr>
|
||||
<tr><td>법정리명 </td><td><input type="text" style="width:500px;" id="liNm" name="liNm" /></td></tr>
|
||||
<tr><td>도로명 </td><td><input type="text" style="width:500px;" id="rn" name="rn" /></td></tr>
|
||||
<tr><td>지하여부 </td><td><input type="text" style="width:500px;" id="udrtYn" name="udrtYn" /></td></tr>
|
||||
<tr><td>건물본번 </td><td><input type="text" style="width:500px;" id="buldMnnm" name="buldMnnm" /></td></tr>
|
||||
<tr><td>건물부번 </td><td><input type="text" style="width:500px;" id="buldSlno" name="buldSlno" /></td></tr>
|
||||
<tr><td>산여부 </td><td><input type="text" style="width:500px;" id="mtYn" name="mtYn" /></td></tr>
|
||||
<tr><td>지번본번(번지) </td><td><input type="text" style="width:500px;" id="lnbrMnnm" name="lnbrMnnm" /></td></tr>
|
||||
<tr><td>지번부번(호) </td><td><input type="text" style="width:500px;" id="lnbrSlno" name="lnbrSlno" /></td></tr>
|
||||
<tr><td>읍면동일련번호 </td><td><input type="text" style="width:500px;" id="emdNo" name="emdNo" /></td></tr>
|
||||
</table>
|
||||
</div>
|
||||
|
||||
</form>
|
||||
</body>
|
||||
</html>
|
||||
@ -0,0 +1,79 @@
|
||||
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %>
|
||||
<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||
<title>주소찾기</title>
|
||||
<%--<%
|
||||
//request.setCharacterEncoding("UTF-8"); //한글깨지면 주석제거
|
||||
//request.setCharacterEncoding("EUC-KR"); //해당시스템의 인코딩타입이 EUC-KR일경우에
|
||||
String inputYn = request.getParameter("inputYn");
|
||||
String roadFullAddr = request.getParameter("roadFullAddr");
|
||||
String roadAddrPart1 = request.getParameter("roadAddrPart1");
|
||||
String roadAddrPart2 = request.getParameter("roadAddrPart2");
|
||||
String engAddr = request.getParameter("engAddr");
|
||||
String jibunAddr = request.getParameter("jibunAddr");
|
||||
String zipNo = request.getParameter("zipNo");
|
||||
String addrDetail = request.getParameter("addrDetail");
|
||||
String admCd = request.getParameter("admCd");
|
||||
String rnMgtSn = request.getParameter("rnMgtSn");
|
||||
String bdMgtSn = request.getParameter("bdMgtSn");
|
||||
String detBdNmList = request.getParameter("detBdNmList");
|
||||
/** 2017년 2월 추가제공 **/
|
||||
String bdNm = request.getParameter("bdNm");
|
||||
String bdKdcd = request.getParameter("bdKdcd");
|
||||
String siNm = request.getParameter("siNm");
|
||||
String sggNm = request.getParameter("sggNm");
|
||||
String emdNm = request.getParameter("emdNm");
|
||||
String liNm = request.getParameter("liNm");
|
||||
String rn = request.getParameter("rn");
|
||||
String udrtYn = request.getParameter("udrtYn");
|
||||
String buldMnnm = request.getParameter("buldMnnm");
|
||||
String buldSlno = request.getParameter("buldSlno");
|
||||
String mtYn = request.getParameter("mtYn");
|
||||
String lnbrMnnm = request.getParameter("lnbrMnnm");
|
||||
String lnbrSlno = request.getParameter("lnbrSlno");
|
||||
/** 2017년 3월 추가제공 **/
|
||||
String emdNo = request.getParameter("emdNo");
|
||||
%>--%>
|
||||
</head>
|
||||
<script language="javascript">
|
||||
// opener관련 오류가 발생하는 경우 아래 주석을 해지하고, 사용자의 도메인정보를 입력합니다. ("주소입력화면 소스"도 동일하게 적용시켜야 합니다.)
|
||||
//document.domain = "abc.go.kr";
|
||||
|
||||
function init() {
|
||||
var url = location.href;
|
||||
var confmKey = "<c:out value="${confmKey }" escapeXml="false" />";
|
||||
var deviceType = "<c:out value="${deviceType }" escapeXml="false" />";
|
||||
var resultType = "4"; // 도로명주소 검색결과 화면 출력내용, 1 : 도로명, 2 : 도로명+지번, 3 : 도로명+상세건물명, 4 : 도로명+지번+상세건물명
|
||||
var inputYn = "${param.inputYn}";
|
||||
if (inputYn != "Y") {
|
||||
document.form.confmKey.value = confmKey;
|
||||
document.form.returnUrl.value = url;
|
||||
document.form.resultType.value = resultType;
|
||||
if (deviceType === 'mobile') {
|
||||
document.form.action = "http://www.juso.go.kr/addrlink/addrMobileLinkUrl.do"; //모바일 웹인 경우, 인터넷망
|
||||
} else {
|
||||
document.form.action = "http://www.juso.go.kr/addrlink/addrLinkUrl.do"; //인터넷망
|
||||
}
|
||||
document.form.submit();
|
||||
} else {
|
||||
opener.mf_container_scwin.jusoCallBack("${param.roadFullAddr}", "${param.roadAddrPart1}", "${param.addrDetail}", "${param.roadAddrPart2}", "${param.engAddr}", "${param.jibunAddr}", "${param.zipNo}", "${param.admCd}", "${param.rnMgtSn}", "${param.bdMgtSn}", "${param.detBdNmList}", "${param.bdNm}", "${param.bdKdcd}", "${param.siNm}", "${param.sggNm}", "${param.emdNm}", "${param.liNm}", "${param.rn}", "${param.udrtYn}", "${param.buldMnnm}", "${param.buldSlno}", "${param.mtYn}", "${param.lnbrMnnm}", "${param.lnbrSlno}", "${param.emdNo}");
|
||||
window.close();
|
||||
}
|
||||
}
|
||||
</script>
|
||||
<body onload="init();">
|
||||
<form id="form" name="form" method="post">
|
||||
<input type="hidden" id="confmKey" name="confmKey" value=""/>
|
||||
<input type="hidden" id="returnUrl" name="returnUrl" value=""/>
|
||||
<input type="hidden" id="resultType" name="resultType" value=""/>
|
||||
<!-- 해당시스템의 인코딩타입이 EUC-KR일경우에만 추가 START-->
|
||||
<!--
|
||||
<input type="hidden" id="encodingType" name="encodingType" value="EUC-KR"/>
|
||||
-->
|
||||
<!-- 해당시스템의 인코딩타입이 EUC-KR일경우에만 추가 END-->
|
||||
</form>
|
||||
</body>
|
||||
</html>
|
||||
@ -0,0 +1,132 @@
|
||||
<%@ page language="java" contentType="text/html;charset=euc-kr" %>
|
||||
|
||||
<%
|
||||
NiceID.Check.CPClient niceCheck = new NiceID.Check.CPClient();
|
||||
|
||||
String sEncodeData = requestReplace(request.getParameter("EncodeData"), "encodeData");
|
||||
|
||||
String sSiteCode = "BO815"; // NICE로부터 부여받은 사이트 코드
|
||||
String sSitePassword = "aSs33dfqwXFY"; // NICE로부터 부여받은 사이트 패스워드
|
||||
|
||||
String sCipherTime = ""; // 복호화한 시간
|
||||
String sRequestNumber = ""; // 요청 번호
|
||||
String sErrorCode = ""; // 인증 결과코드
|
||||
String sAuthType = ""; // 인증 수단
|
||||
String sMessage = "";
|
||||
String sPlainData = "";
|
||||
|
||||
int iReturn = niceCheck.fnDecode(sSiteCode, sSitePassword, sEncodeData);
|
||||
|
||||
if( iReturn == 0 )
|
||||
{
|
||||
sPlainData = niceCheck.getPlainData();
|
||||
sCipherTime = niceCheck.getCipherDateTime();
|
||||
|
||||
// 데이타를 추출합니다.
|
||||
java.util.HashMap mapresult = niceCheck.fnParse(sPlainData);
|
||||
|
||||
sRequestNumber = (String)mapresult.get("REQ_SEQ");
|
||||
sErrorCode = (String)mapresult.get("ERR_CODE");
|
||||
sAuthType = (String)mapresult.get("AUTH_TYPE");
|
||||
}
|
||||
else if( iReturn == -1)
|
||||
{
|
||||
sMessage = "복호화 시스템 에러입니다.";
|
||||
}
|
||||
else if( iReturn == -4)
|
||||
{
|
||||
sMessage = "복호화 처리오류입니다.";
|
||||
}
|
||||
else if( iReturn == -5)
|
||||
{
|
||||
sMessage = "복호화 해쉬 오류입니다.";
|
||||
}
|
||||
else if( iReturn == -6)
|
||||
{
|
||||
sMessage = "복호화 데이터 오류입니다.";
|
||||
}
|
||||
else if( iReturn == -9)
|
||||
{
|
||||
sMessage = "입력 데이터 오류입니다.";
|
||||
}
|
||||
else if( iReturn == -12)
|
||||
{
|
||||
sMessage = "사이트 패스워드 오류입니다.";
|
||||
}
|
||||
else
|
||||
{
|
||||
sMessage = "알수 없는 에러 입니다. iReturn : " + iReturn;
|
||||
}
|
||||
|
||||
%>
|
||||
<%!
|
||||
public String requestReplace (String paramValue, String gubun) {
|
||||
String result = "";
|
||||
|
||||
if (paramValue != null) {
|
||||
|
||||
paramValue = paramValue.replaceAll("<", "<").replaceAll(">", ">");
|
||||
|
||||
paramValue = paramValue.replaceAll("\\*", "");
|
||||
paramValue = paramValue.replaceAll("\\?", "");
|
||||
paramValue = paramValue.replaceAll("\\[", "");
|
||||
paramValue = paramValue.replaceAll("\\{", "");
|
||||
paramValue = paramValue.replaceAll("\\(", "");
|
||||
paramValue = paramValue.replaceAll("\\)", "");
|
||||
paramValue = paramValue.replaceAll("\\^", "");
|
||||
paramValue = paramValue.replaceAll("\\$", "");
|
||||
paramValue = paramValue.replaceAll("'", "");
|
||||
paramValue = paramValue.replaceAll("@", "");
|
||||
paramValue = paramValue.replaceAll("%", "");
|
||||
paramValue = paramValue.replaceAll(";", "");
|
||||
paramValue = paramValue.replaceAll(":", "");
|
||||
paramValue = paramValue.replaceAll("-", "");
|
||||
paramValue = paramValue.replaceAll("#", "");
|
||||
paramValue = paramValue.replaceAll("--", "");
|
||||
paramValue = paramValue.replaceAll("-", "");
|
||||
paramValue = paramValue.replaceAll(",", "");
|
||||
|
||||
if(gubun != "encodeData"){
|
||||
paramValue = paramValue.replaceAll("\\+", "");
|
||||
paramValue = paramValue.replaceAll("/", "");
|
||||
paramValue = paramValue.replaceAll("=", "");
|
||||
}
|
||||
|
||||
result = paramValue;
|
||||
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
%>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<title>NICE평가정보 - CheckPlus 안심본인인증 테스트</title>
|
||||
</head>
|
||||
<body>
|
||||
<center>
|
||||
<p><p><p><p>
|
||||
본인인증이 실패하였습니다.<br>
|
||||
<table border=1>
|
||||
<tr>
|
||||
<td>복호화한 시간</td>
|
||||
<td><%= sCipherTime %> (YYMMDDHHMMSS)</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>요청 번호</td>
|
||||
<td><%= sRequestNumber %></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>본인인증 실패 코드</td>
|
||||
<td><%= sErrorCode %></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>인증수단</td>
|
||||
<td><%= sAuthType %></td>
|
||||
</tr>
|
||||
</table><br><br>
|
||||
<%= sMessage %><br>
|
||||
</center>
|
||||
</body>
|
||||
</html>
|
||||
@ -0,0 +1,94 @@
|
||||
<%@ page language="java" contentType="text/html;charset=euc-kr" %>
|
||||
|
||||
<%
|
||||
NiceID.Check.CPClient niceCheck = new NiceID.Check.CPClient();
|
||||
|
||||
String sSiteCode = "BO815"; // NICE로부터 부여받은 사이트 코드
|
||||
String sSitePassword = "aSs33dfqwXFY"; // NICE로부터 부여받은 사이트 패스워드
|
||||
|
||||
String sRequestNumber = "REQ0000000001"; // 요청 번호, 이는 성공/실패후에 같은 값으로 되돌려주게 되므로
|
||||
// 업체에서 적절하게 변경하여 쓰거나, 아래와 같이 생성한다.
|
||||
sRequestNumber = niceCheck.getRequestNO(sSiteCode);
|
||||
session.setAttribute("REQ_SEQ" , sRequestNumber); // 해킹등의 방지를 위하여 세션을 쓴다면, 세션에 요청번호를 넣는다.
|
||||
|
||||
String sAuthType = "C"; // 없으면 기본 선택화면, 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
|
||||
String sReturnUrl = "http://localhost:8080/check/credit/success.do"; // 성공시 이동될 URL
|
||||
String sErrorUrl = "http://localhost:8080/check/credit/fail.do"; // 실패시 이동될 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;
|
||||
}
|
||||
%>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<title>NICE평가정보 - CheckPlus 안심본인인증 테스트</title>
|
||||
|
||||
<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();
|
||||
}
|
||||
</script>
|
||||
</head>
|
||||
<body>
|
||||
<%= sMessage %><br><br>
|
||||
업체정보 암호화 데이타 : [<%= sEncData %>]<br><br>
|
||||
|
||||
<!-- 본인인증 서비스 팝업을 호출하기 위해서는 다음과 같은 form이 필요합니다. -->
|
||||
<form name="form_chk" method="post">
|
||||
<input type="hidden" name="m" value="checkplusSerivce"> <!-- 필수 데이타로, 누락하시면 안됩니다. -->
|
||||
<input type="hidden" name="EncodeData" value="<%= sEncData %>"> <!-- 위에서 업체정보를 암호화 한 데이타입니다. -->
|
||||
|
||||
<a href="javascript:fnPopup();"> CheckPlus 안심본인인증 Click</a>
|
||||
</form>
|
||||
</body>
|
||||
</html>
|
||||
@ -0,0 +1,194 @@
|
||||
<%@ page language="java" contentType="text/html;charset=euc-kr" %>
|
||||
|
||||
<% //인증 후 결과값이 null로 나오는 부분은 관리담당자에게 문의 바랍니다.
|
||||
NiceID.Check.CPClient niceCheck = new NiceID.Check.CPClient();
|
||||
|
||||
String sEncodeData = requestReplace(request.getParameter("EncodeData"), "encodeData");
|
||||
|
||||
String sSiteCode = "BO815"; // NICE로부터 부여받은 사이트 코드
|
||||
String sSitePassword = "aSs33dfqwXFY"; // NICE로부터 부여받은 사이트 패스워드
|
||||
|
||||
String sCipherTime = ""; // 복호화한 시간
|
||||
String sRequestNumber = ""; // 요청 번호
|
||||
String sResponseNumber = ""; // 인증 고유번호
|
||||
String sAuthType = ""; // 인증 수단
|
||||
String sName = ""; // 성명
|
||||
String sDupInfo = ""; // 중복가입 확인값 (DI_64 byte)
|
||||
String sConnInfo = ""; // 연계정보 확인값 (CI_88 byte)
|
||||
String sBirthDate = ""; // 생년월일(YYYYMMDD)
|
||||
String sGender = ""; // 성별
|
||||
String sNationalInfo = ""; // 내/외국인정보 (개발가이드 참조)
|
||||
String sMobileNo = ""; // 휴대폰번호
|
||||
String sMobileCo = ""; // 통신사
|
||||
String sMessage = "";
|
||||
String sPlainData = "";
|
||||
|
||||
int iReturn = niceCheck.fnDecode(sSiteCode, sSitePassword, sEncodeData);
|
||||
|
||||
if( iReturn == 0 )
|
||||
{
|
||||
sPlainData = niceCheck.getPlainData();
|
||||
sCipherTime = niceCheck.getCipherDateTime();
|
||||
|
||||
// 데이타를 추출합니다.
|
||||
java.util.HashMap mapresult = niceCheck.fnParse(sPlainData);
|
||||
|
||||
sRequestNumber = (String)mapresult.get("REQ_SEQ");
|
||||
sResponseNumber = (String)mapresult.get("RES_SEQ");
|
||||
sAuthType = (String)mapresult.get("AUTH_TYPE");
|
||||
sName = (String)mapresult.get("NAME");
|
||||
//sName = (String)mapresult.get("UTF8_NAME"); //charset utf8 사용시 주석 해제 후 사용
|
||||
sBirthDate = (String)mapresult.get("BIRTHDATE");
|
||||
sGender = (String)mapresult.get("GENDER");
|
||||
sNationalInfo = (String)mapresult.get("NATIONALINFO");
|
||||
sDupInfo = (String)mapresult.get("DI");
|
||||
sConnInfo = (String)mapresult.get("CI");
|
||||
sMobileNo = (String)mapresult.get("MOBILE_NO");
|
||||
sMobileCo = (String)mapresult.get("MOBILE_CO");
|
||||
|
||||
String session_sRequestNumber = (String)session.getAttribute("REQ_SEQ");
|
||||
if(!sRequestNumber.equals(session_sRequestNumber))
|
||||
{
|
||||
sMessage = "세션값이 다릅니다. 올바른 경로로 접근하시기 바랍니다.";
|
||||
sResponseNumber = "";
|
||||
sAuthType = "";
|
||||
}
|
||||
}
|
||||
else if( iReturn == -1)
|
||||
{
|
||||
sMessage = "복호화 시스템 에러입니다.";
|
||||
}
|
||||
else if( iReturn == -4)
|
||||
{
|
||||
sMessage = "복호화 처리오류입니다.";
|
||||
}
|
||||
else if( iReturn == -5)
|
||||
{
|
||||
sMessage = "복호화 해쉬 오류입니다.";
|
||||
}
|
||||
else if( iReturn == -6)
|
||||
{
|
||||
sMessage = "복호화 데이터 오류입니다.";
|
||||
}
|
||||
else if( iReturn == -9)
|
||||
{
|
||||
sMessage = "입력 데이터 오류입니다.";
|
||||
}
|
||||
else if( iReturn == -12)
|
||||
{
|
||||
sMessage = "사이트 패스워드 오류입니다.";
|
||||
}
|
||||
else
|
||||
{
|
||||
sMessage = "알수 없는 에러 입니다. iReturn : " + iReturn;
|
||||
}
|
||||
|
||||
%>
|
||||
<%!
|
||||
|
||||
public String requestReplace (String paramValue, String gubun) {
|
||||
|
||||
String result = "";
|
||||
|
||||
if (paramValue != null) {
|
||||
|
||||
paramValue = paramValue.replaceAll("<", "<").replaceAll(">", ">");
|
||||
|
||||
paramValue = paramValue.replaceAll("\\*", "");
|
||||
paramValue = paramValue.replaceAll("\\?", "");
|
||||
paramValue = paramValue.replaceAll("\\[", "");
|
||||
paramValue = paramValue.replaceAll("\\{", "");
|
||||
paramValue = paramValue.replaceAll("\\(", "");
|
||||
paramValue = paramValue.replaceAll("\\)", "");
|
||||
paramValue = paramValue.replaceAll("\\^", "");
|
||||
paramValue = paramValue.replaceAll("\\$", "");
|
||||
paramValue = paramValue.replaceAll("'", "");
|
||||
paramValue = paramValue.replaceAll("@", "");
|
||||
paramValue = paramValue.replaceAll("%", "");
|
||||
paramValue = paramValue.replaceAll(";", "");
|
||||
paramValue = paramValue.replaceAll(":", "");
|
||||
paramValue = paramValue.replaceAll("-", "");
|
||||
paramValue = paramValue.replaceAll("#", "");
|
||||
paramValue = paramValue.replaceAll("--", "");
|
||||
paramValue = paramValue.replaceAll("-", "");
|
||||
paramValue = paramValue.replaceAll(",", "");
|
||||
|
||||
if(gubun != "encodeData"){
|
||||
paramValue = paramValue.replaceAll("\\+", "");
|
||||
paramValue = paramValue.replaceAll("/", "");
|
||||
paramValue = paramValue.replaceAll("=", "");
|
||||
}
|
||||
|
||||
result = paramValue;
|
||||
|
||||
}
|
||||
return result;
|
||||
}
|
||||
%>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<title>NICE평가정보 - CheckPlus 안심본인인증 테스트</title>
|
||||
</head>
|
||||
<body>
|
||||
<center>
|
||||
<p><p><p><p>
|
||||
본인인증이 완료 되었습니다.<br>
|
||||
<table border=1>
|
||||
<tr>
|
||||
<td>복호화한 시간</td>
|
||||
<td><%= sCipherTime %> (YYMMDDHHMMSS)</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>요청 번호</td>
|
||||
<td><%= sRequestNumber %></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>NICE응답 번호</td>
|
||||
<td><%= sResponseNumber %></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>인증수단</td>
|
||||
<td><%= sAuthType %></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>성명</td>
|
||||
<td><%= sName %></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>중복가입 확인값(DI)</td>
|
||||
<td><%= sDupInfo %></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>연계정보 확인값(CI)</td>
|
||||
<td><%= sConnInfo %></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>생년월일(YYYYMMDD)</td>
|
||||
<td><%= sBirthDate %></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>성별</td>
|
||||
<td><%= sGender %></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>내/외국인정보</td>
|
||||
<td><%= sNationalInfo %></td>
|
||||
</tr>
|
||||
</tr>
|
||||
<td>휴대폰번호</td>
|
||||
<td><%= sMobileNo %></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>통신사</td>
|
||||
<td><%= sMobileCo %></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td colspan="2">인증 후 결과값은 내부 설정에 따른 값만 리턴받으실 수 있습니다. <br>
|
||||
일부 결과값이 null로 리턴되는 경우 관리담당자 또는 계약부서(02-2122-4615)로 문의바랍니다.</td>
|
||||
</tr>
|
||||
</table><br><br>
|
||||
<%= sMessage %><br>
|
||||
</center>
|
||||
</body>
|
||||
</html>
|
||||
@ -0,0 +1,132 @@
|
||||
<%@ page language="java" contentType="text/html;charset=euc-kr" %>
|
||||
|
||||
<%
|
||||
NiceID.Check.CPClient niceCheck = new NiceID.Check.CPClient();
|
||||
|
||||
String sEncodeData = requestReplace(request.getParameter("EncodeData"), "encodeData");
|
||||
|
||||
String sSiteCode = "BO814"; // NICE로부터 부여받은 사이트 코드
|
||||
String sSitePassword = "V61T17LvnrxW"; // NICE로부터 부여받은 사이트 패스워드
|
||||
|
||||
String sCipherTime = ""; // 복호화한 시간
|
||||
String sRequestNumber = ""; // 요청 번호
|
||||
String sErrorCode = ""; // 인증 결과코드
|
||||
String sAuthType = ""; // 인증 수단
|
||||
String sMessage = "";
|
||||
String sPlainData = "";
|
||||
|
||||
int iReturn = niceCheck.fnDecode(sSiteCode, sSitePassword, sEncodeData);
|
||||
|
||||
if( iReturn == 0 )
|
||||
{
|
||||
sPlainData = niceCheck.getPlainData();
|
||||
sCipherTime = niceCheck.getCipherDateTime();
|
||||
|
||||
// 데이타를 추출합니다.
|
||||
java.util.HashMap mapresult = niceCheck.fnParse(sPlainData);
|
||||
|
||||
sRequestNumber = (String)mapresult.get("REQ_SEQ");
|
||||
sErrorCode = (String)mapresult.get("ERR_CODE");
|
||||
sAuthType = (String)mapresult.get("AUTH_TYPE");
|
||||
}
|
||||
else if( iReturn == -1)
|
||||
{
|
||||
sMessage = "복호화 시스템 에러입니다.";
|
||||
}
|
||||
else if( iReturn == -4)
|
||||
{
|
||||
sMessage = "복호화 처리오류입니다.";
|
||||
}
|
||||
else if( iReturn == -5)
|
||||
{
|
||||
sMessage = "복호화 해쉬 오류입니다.";
|
||||
}
|
||||
else if( iReturn == -6)
|
||||
{
|
||||
sMessage = "복호화 데이터 오류입니다.";
|
||||
}
|
||||
else if( iReturn == -9)
|
||||
{
|
||||
sMessage = "입력 데이터 오류입니다.";
|
||||
}
|
||||
else if( iReturn == -12)
|
||||
{
|
||||
sMessage = "사이트 패스워드 오류입니다.";
|
||||
}
|
||||
else
|
||||
{
|
||||
sMessage = "알수 없는 에러 입니다. iReturn : " + iReturn;
|
||||
}
|
||||
|
||||
%>
|
||||
<%!
|
||||
public String requestReplace (String paramValue, String gubun) {
|
||||
String result = "";
|
||||
|
||||
if (paramValue != null) {
|
||||
|
||||
paramValue = paramValue.replaceAll("<", "<").replaceAll(">", ">");
|
||||
|
||||
paramValue = paramValue.replaceAll("\\*", "");
|
||||
paramValue = paramValue.replaceAll("\\?", "");
|
||||
paramValue = paramValue.replaceAll("\\[", "");
|
||||
paramValue = paramValue.replaceAll("\\{", "");
|
||||
paramValue = paramValue.replaceAll("\\(", "");
|
||||
paramValue = paramValue.replaceAll("\\)", "");
|
||||
paramValue = paramValue.replaceAll("\\^", "");
|
||||
paramValue = paramValue.replaceAll("\\$", "");
|
||||
paramValue = paramValue.replaceAll("'", "");
|
||||
paramValue = paramValue.replaceAll("@", "");
|
||||
paramValue = paramValue.replaceAll("%", "");
|
||||
paramValue = paramValue.replaceAll(";", "");
|
||||
paramValue = paramValue.replaceAll(":", "");
|
||||
paramValue = paramValue.replaceAll("-", "");
|
||||
paramValue = paramValue.replaceAll("#", "");
|
||||
paramValue = paramValue.replaceAll("--", "");
|
||||
paramValue = paramValue.replaceAll("-", "");
|
||||
paramValue = paramValue.replaceAll(",", "");
|
||||
|
||||
if(gubun != "encodeData"){
|
||||
paramValue = paramValue.replaceAll("\\+", "");
|
||||
paramValue = paramValue.replaceAll("/", "");
|
||||
paramValue = paramValue.replaceAll("=", "");
|
||||
}
|
||||
|
||||
result = paramValue;
|
||||
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
%>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<title>NICE평가정보 - CheckPlus 안심본인인증 테스트</title>
|
||||
</head>
|
||||
<body>
|
||||
<center>
|
||||
<p><p><p><p>
|
||||
본인인증이 실패하였습니다.<br>
|
||||
<table border=1>
|
||||
<tr>
|
||||
<td>복호화한 시간</td>
|
||||
<td><%= sCipherTime %> (YYMMDDHHMMSS)</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>요청 번호</td>
|
||||
<td><%= sRequestNumber %></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>본인인증 실패 코드</td>
|
||||
<td><%= sErrorCode %></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>인증수단</td>
|
||||
<td><%= sAuthType %></td>
|
||||
</tr>
|
||||
</table><br><br>
|
||||
<%= sMessage %><br>
|
||||
</center>
|
||||
</body>
|
||||
</html>
|
||||
@ -0,0 +1,94 @@
|
||||
<%@ page language="java" contentType="text/html;charset=euc-kr" %>
|
||||
|
||||
<%
|
||||
NiceID.Check.CPClient niceCheck = new NiceID.Check.CPClient();
|
||||
|
||||
String sSiteCode = "BO814"; // NICE로부터 부여받은 사이트 코드
|
||||
String sSitePassword = "V61T17LvnrxW"; // NICE로부터 부여받은 사이트 패스워드
|
||||
|
||||
String sRequestNumber = "REQ0000000001"; // 요청 번호, 이는 성공/실패후에 같은 값으로 되돌려주게 되므로
|
||||
// 업체에서 적절하게 변경하여 쓰거나, 아래와 같이 생성한다.
|
||||
sRequestNumber = niceCheck.getRequestNO(sSiteCode);
|
||||
session.setAttribute("REQ_SEQ" , sRequestNumber); // 해킹등의 방지를 위하여 세션을 쓴다면, 세션에 요청번호를 넣는다.
|
||||
|
||||
String sAuthType = "M"; // 없으면 기본 선택화면, 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
|
||||
String sReturnUrl = "http://localhost:8080/check/phone/success.do"; // 성공시 이동될 URL
|
||||
String sErrorUrl = "http://localhost:8080/check/phone/fail.do"; // 실패시 이동될 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;
|
||||
}
|
||||
%>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<title>NICE평가정보 - CheckPlus 안심본인인증 테스트</title>
|
||||
|
||||
<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();
|
||||
}
|
||||
</script>
|
||||
</head>
|
||||
<body>
|
||||
<%= sMessage %><br><br>
|
||||
업체정보 암호화 데이타 : [<%= sEncData %>]<br><br>
|
||||
|
||||
<!-- 본인인증 서비스 팝업을 호출하기 위해서는 다음과 같은 form이 필요합니다. -->
|
||||
<form name="form_chk" method="post">
|
||||
<input type="hidden" name="m" value="checkplusSerivce"> <!-- 필수 데이타로, 누락하시면 안됩니다. -->
|
||||
<input type="hidden" name="EncodeData" value="<%= sEncData %>"> <!-- 위에서 업체정보를 암호화 한 데이타입니다. -->
|
||||
|
||||
<a href="javascript:fnPopup();"> CheckPlus 안심본인인증 Click</a>
|
||||
</form>
|
||||
</body>
|
||||
</html>
|
||||
@ -0,0 +1,194 @@
|
||||
<%@ page language="java" contentType="text/html;charset=euc-kr" %>
|
||||
|
||||
<% //인증 후 결과값이 null로 나오는 부분은 관리담당자에게 문의 바랍니다.
|
||||
NiceID.Check.CPClient niceCheck = new NiceID.Check.CPClient();
|
||||
|
||||
String sEncodeData = requestReplace(request.getParameter("EncodeData"), "encodeData");
|
||||
|
||||
String sSiteCode = "BO814"; // NICE로부터 부여받은 사이트 코드
|
||||
String sSitePassword = "V61T17LvnrxW"; // NICE로부터 부여받은 사이트 패스워드
|
||||
|
||||
String sCipherTime = ""; // 복호화한 시간
|
||||
String sRequestNumber = ""; // 요청 번호
|
||||
String sResponseNumber = ""; // 인증 고유번호
|
||||
String sAuthType = ""; // 인증 수단
|
||||
String sName = ""; // 성명
|
||||
String sDupInfo = ""; // 중복가입 확인값 (DI_64 byte)
|
||||
String sConnInfo = ""; // 연계정보 확인값 (CI_88 byte)
|
||||
String sBirthDate = ""; // 생년월일(YYYYMMDD)
|
||||
String sGender = ""; // 성별
|
||||
String sNationalInfo = ""; // 내/외국인정보 (개발가이드 참조)
|
||||
String sMobileNo = ""; // 휴대폰번호
|
||||
String sMobileCo = ""; // 통신사
|
||||
String sMessage = "";
|
||||
String sPlainData = "";
|
||||
|
||||
int iReturn = niceCheck.fnDecode(sSiteCode, sSitePassword, sEncodeData);
|
||||
|
||||
if( iReturn == 0 )
|
||||
{
|
||||
sPlainData = niceCheck.getPlainData();
|
||||
sCipherTime = niceCheck.getCipherDateTime();
|
||||
|
||||
// 데이타를 추출합니다.
|
||||
java.util.HashMap mapresult = niceCheck.fnParse(sPlainData);
|
||||
|
||||
sRequestNumber = (String)mapresult.get("REQ_SEQ");
|
||||
sResponseNumber = (String)mapresult.get("RES_SEQ");
|
||||
sAuthType = (String)mapresult.get("AUTH_TYPE");
|
||||
sName = (String)mapresult.get("NAME");
|
||||
//sName = (String)mapresult.get("UTF8_NAME"); //charset utf8 사용시 주석 해제 후 사용
|
||||
sBirthDate = (String)mapresult.get("BIRTHDATE");
|
||||
sGender = (String)mapresult.get("GENDER");
|
||||
sNationalInfo = (String)mapresult.get("NATIONALINFO");
|
||||
sDupInfo = (String)mapresult.get("DI");
|
||||
sConnInfo = (String)mapresult.get("CI");
|
||||
sMobileNo = (String)mapresult.get("MOBILE_NO");
|
||||
sMobileCo = (String)mapresult.get("MOBILE_CO");
|
||||
|
||||
String session_sRequestNumber = (String)session.getAttribute("REQ_SEQ");
|
||||
if(!sRequestNumber.equals(session_sRequestNumber))
|
||||
{
|
||||
sMessage = "세션값이 다릅니다. 올바른 경로로 접근하시기 바랍니다.";
|
||||
sResponseNumber = "";
|
||||
sAuthType = "";
|
||||
}
|
||||
}
|
||||
else if( iReturn == -1)
|
||||
{
|
||||
sMessage = "복호화 시스템 에러입니다.";
|
||||
}
|
||||
else if( iReturn == -4)
|
||||
{
|
||||
sMessage = "복호화 처리오류입니다.";
|
||||
}
|
||||
else if( iReturn == -5)
|
||||
{
|
||||
sMessage = "복호화 해쉬 오류입니다.";
|
||||
}
|
||||
else if( iReturn == -6)
|
||||
{
|
||||
sMessage = "복호화 데이터 오류입니다.";
|
||||
}
|
||||
else if( iReturn == -9)
|
||||
{
|
||||
sMessage = "입력 데이터 오류입니다.";
|
||||
}
|
||||
else if( iReturn == -12)
|
||||
{
|
||||
sMessage = "사이트 패스워드 오류입니다.";
|
||||
}
|
||||
else
|
||||
{
|
||||
sMessage = "알수 없는 에러 입니다. iReturn : " + iReturn;
|
||||
}
|
||||
|
||||
%>
|
||||
<%!
|
||||
|
||||
public String requestReplace (String paramValue, String gubun) {
|
||||
|
||||
String result = "";
|
||||
|
||||
if (paramValue != null) {
|
||||
|
||||
paramValue = paramValue.replaceAll("<", "<").replaceAll(">", ">");
|
||||
|
||||
paramValue = paramValue.replaceAll("\\*", "");
|
||||
paramValue = paramValue.replaceAll("\\?", "");
|
||||
paramValue = paramValue.replaceAll("\\[", "");
|
||||
paramValue = paramValue.replaceAll("\\{", "");
|
||||
paramValue = paramValue.replaceAll("\\(", "");
|
||||
paramValue = paramValue.replaceAll("\\)", "");
|
||||
paramValue = paramValue.replaceAll("\\^", "");
|
||||
paramValue = paramValue.replaceAll("\\$", "");
|
||||
paramValue = paramValue.replaceAll("'", "");
|
||||
paramValue = paramValue.replaceAll("@", "");
|
||||
paramValue = paramValue.replaceAll("%", "");
|
||||
paramValue = paramValue.replaceAll(";", "");
|
||||
paramValue = paramValue.replaceAll(":", "");
|
||||
paramValue = paramValue.replaceAll("-", "");
|
||||
paramValue = paramValue.replaceAll("#", "");
|
||||
paramValue = paramValue.replaceAll("--", "");
|
||||
paramValue = paramValue.replaceAll("-", "");
|
||||
paramValue = paramValue.replaceAll(",", "");
|
||||
|
||||
if(gubun != "encodeData"){
|
||||
paramValue = paramValue.replaceAll("\\+", "");
|
||||
paramValue = paramValue.replaceAll("/", "");
|
||||
paramValue = paramValue.replaceAll("=", "");
|
||||
}
|
||||
|
||||
result = paramValue;
|
||||
|
||||
}
|
||||
return result;
|
||||
}
|
||||
%>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<title>NICE평가정보 - CheckPlus 안심본인인증 테스트</title>
|
||||
</head>
|
||||
<body>
|
||||
<center>
|
||||
<p><p><p><p>
|
||||
본인인증이 완료 되었습니다.<br>
|
||||
<table border=1>
|
||||
<tr>
|
||||
<td>복호화한 시간</td>
|
||||
<td><%= sCipherTime %> (YYMMDDHHMMSS)</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>요청 번호</td>
|
||||
<td><%= sRequestNumber %></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>NICE응답 번호</td>
|
||||
<td><%= sResponseNumber %></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>인증수단</td>
|
||||
<td><%= sAuthType %></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>성명</td>
|
||||
<td><%= sName %></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>중복가입 확인값(DI)</td>
|
||||
<td><%= sDupInfo %></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>연계정보 확인값(CI)</td>
|
||||
<td><%= sConnInfo %></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>생년월일(YYYYMMDD)</td>
|
||||
<td><%= sBirthDate %></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>성별</td>
|
||||
<td><%= sGender %></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>내/외국인정보</td>
|
||||
<td><%= sNationalInfo %></td>
|
||||
</tr>
|
||||
</tr>
|
||||
<td>휴대폰번호</td>
|
||||
<td><%= sMobileNo %></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>통신사</td>
|
||||
<td><%= sMobileCo %></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td colspan="2">인증 후 결과값은 내부 설정에 따른 값만 리턴받으실 수 있습니다. <br>
|
||||
일부 결과값이 null로 리턴되는 경우 관리담당자 또는 계약부서(02-2122-4615)로 문의바랍니다.</td>
|
||||
</tr>
|
||||
</table><br><br>
|
||||
<%= sMessage %><br>
|
||||
</center>
|
||||
</body>
|
||||
</html>
|
||||
@ -0,0 +1,108 @@
|
||||
<%@ page contentType="text/xml; charset=UTF-8" language="java" errorPage="" import="java.io.*,java.math.*,java.net.*,java.security.*,java.text.*,java.util.*,java.util.zip.*,javax.servlet.http.*,org.w3c.dom.*,websquare.i18n.*,websquare.logging.*,websquare.util.*,websquare.logging.util.LogUtil"
|
||||
%><%
|
||||
HTTPContext frameworkContext = null;
|
||||
|
||||
try {
|
||||
frameworkContext = HTTPContext.getContext();
|
||||
frameworkContext.setWebInfo(request, response, null, null );
|
||||
String w2xPath = HttpUtil.getParameter( request, "w2xPath" );
|
||||
|
||||
if( FileValidUtil.getInstance().isValidFullPath( w2xPath ) ) { //경로 유효성 검사
|
||||
//컨텍스트가 /인 경우 blank.xml만 baseURI 참조를 하고 있지 않아 코드 추가
|
||||
String result = null;
|
||||
try{
|
||||
result = Web2FileCache.getInstance().getXML(request);
|
||||
}catch(ParseException ffe){
|
||||
result = "<?xml version=\"1.0\" encoding=\"UTF-8\"?><html xmlns=\"http://www.w3.org/1999/xhtml\" xmlns:ev=\"http://www.w3.org/2001/xml-events\" xmlns:w2=\"http://www.inswave.com/websquare\" xmlns:xf=\"http://www.w3.org/2002/xforms\"><head><w2:buildDate/><xf:model><xf:instance><data xmlns=\"\"/></xf:instance></xf:model><script type=\"javascript\"><![CDATA[ ]]></script></head><body></body></html>";
|
||||
}
|
||||
if ( w2xPath != null && !w2xPath.equals("") && result != null && !result.equals("") ) {
|
||||
OutputStream os = null;
|
||||
try {
|
||||
byte[] bytes = result.getBytes("UTF-8");
|
||||
MessageDigest md = null;
|
||||
try {
|
||||
md = MessageDigest.getInstance("SHA-256");
|
||||
md.update(result.getBytes());
|
||||
byte[] messageDigest = md.digest(bytes);
|
||||
BigInteger number = new BigInteger(1, messageDigest);
|
||||
StringBuffer sb = new StringBuffer('0');
|
||||
sb.append("\"");
|
||||
sb.append(number.toString(16));
|
||||
sb.append("\"");
|
||||
String ETAG = sb.toString();
|
||||
String previousETAG = request.getHeader("If-None-Match");
|
||||
|
||||
if (previousETAG != null && ETAG != null) {
|
||||
if (ETAG.equals(previousETAG)) {
|
||||
response.setStatus(HttpServletResponse.SC_NOT_MODIFIED);
|
||||
return;
|
||||
}
|
||||
}
|
||||
response.setHeader("ETag", sb.toString() );
|
||||
} catch (NoSuchAlgorithmException e) {
|
||||
LogUtil.exception("[I18N.jsp] MessageDigest Exception.", e);
|
||||
}
|
||||
|
||||
boolean compressed = true;
|
||||
String ae = request.getHeader("Accept-Encoding");
|
||||
if (ae != null && ae.indexOf("gzip") != -1) { // 압축 가능 여부 판단
|
||||
compressed = true;
|
||||
}
|
||||
|
||||
if (compressed) {
|
||||
ByteArrayOutputStream byteOut = new ByteArrayOutputStream();
|
||||
OutputStream zipOut = new GZIPOutputStream(byteOut);
|
||||
try{
|
||||
zipOut.write(bytes, 0, bytes.length);
|
||||
zipOut.flush();
|
||||
}catch(IOException e){
|
||||
Logger.exception("[I18N.jsp] IOException.", e);
|
||||
}finally{
|
||||
zipOut.close();
|
||||
}
|
||||
|
||||
byteOut.flush();
|
||||
bytes = byteOut.toByteArray();
|
||||
response.setHeader("Content-Encoding", "gzip");
|
||||
}
|
||||
|
||||
SimpleDateFormat formatter = new SimpleDateFormat("EEE, dd MMM yyyy HH:mm:ss z", Locale.US);
|
||||
Calendar cal = Calendar.getInstance();
|
||||
cal.add(Calendar.YEAR, 1);
|
||||
cal.add(Calendar.DATE, -1);
|
||||
formatter.setTimeZone(TimeZone.getTimeZone("GMT"));
|
||||
String expires = formatter.format(cal.getTime());
|
||||
response.setHeader("Expires", expires);
|
||||
response.setHeader("Last-Modified", expires);
|
||||
response.setHeader("Cache-Control", "public, max-age=31449600"); // 31449600
|
||||
|
||||
response.setContentLength(bytes.length);
|
||||
os = response.getOutputStream();
|
||||
os.write(bytes,0,bytes.length);
|
||||
} catch (IOException e) {
|
||||
throw e;
|
||||
} finally {
|
||||
try {
|
||||
os.flush();
|
||||
} catch( IOException e ) {
|
||||
LogUtil.exception("[I18N.jsp] OutputStream flush Exception.", e);
|
||||
}
|
||||
try {
|
||||
os.close();
|
||||
} catch( IOException e ) {
|
||||
LogUtil.exception("[I18N.jsp] OutputStream close Exception.", e);
|
||||
}
|
||||
}
|
||||
} else {
|
||||
response.setStatus(HttpServletResponse.SC_NOT_FOUND);
|
||||
return;
|
||||
}
|
||||
}
|
||||
} catch (FileNotFoundException e1) {
|
||||
LogUtil.exception("[I18N.jsp] FileNotFoundException Exception.", e1);
|
||||
} catch (IOException e) {
|
||||
LogUtil.exception("[I18N.jsp] IOException.", e);
|
||||
} finally {
|
||||
frameworkContext.setWebInfo(null,null,null,null);
|
||||
}
|
||||
%>
|
||||
@ -0,0 +1,18 @@
|
||||
<%@page contentType="text/html; charset=utf-8" language="java"%><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<html xmlns="http://www.w3.org/1999/xhtml"
|
||||
xmlns:ev="http://www.w3.org/2001/xml-events"
|
||||
xmlns:w2="http://www.inswave.com/websquare" xmlns:xf="http://www.w3.org/2002/xforms">
|
||||
<head>
|
||||
<w2:buildDate/>
|
||||
<xf:model>
|
||||
<xf:instance>
|
||||
<data xmlns=""/>
|
||||
</xf:instance>
|
||||
</xf:model>
|
||||
<script type="javascript"><![CDATA[
|
||||
]]></script>
|
||||
</head>
|
||||
<body>
|
||||
</body>
|
||||
</html>
|
||||
@ -0,0 +1,58 @@
|
||||
<%@page contentType="text/html; charset=utf-8" language="java" %>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns='http://www.w3.org/1999/xhtml' xmlns:ev='http://www.w3.org/2001/xml-events'
|
||||
xmlns:w2='http://www.inswave.com/websquare' xmlns:xf='http://www.w3.org/2002/xforms' lang="ko" xml:lang="ko">
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=Edge"/>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=no"/>
|
||||
<meta name="description" content="현장장비관리">
|
||||
<meta property="og:type" content="website">
|
||||
<meta property="og:title" content="현장장비관리">
|
||||
<meta property="og:description" content="현장장비관리">
|
||||
<meta property="og:image" content="http://oksign.seoul.go.kr/cm/images/img_info_01.png">
|
||||
<meta property="og:url" content="http://oksign.seoul.go.kr">
|
||||
<%--<link rel="shortcut icon" href="/cm/images/inc/favicon.ico"/>--%>
|
||||
<title>현장장비관리</title>
|
||||
<script type="text/javascript">
|
||||
//history.replaceState(null, null, location.pathname);
|
||||
var WebSquareExternal = {
|
||||
"baseURI": "${pageContext.request.contextPath}/websquare/"
|
||||
, "w2xPath": "<%=(String)request.getAttribute("movePage")%>"
|
||||
};
|
||||
|
||||
var optionalLink = {"link":"<%=(String)request.getAttribute("link")%>"};
|
||||
|
||||
if (WebSquareExternal.w2xPath === "") {
|
||||
WebSquareExternal.w2xPath = "${pageContext.request.contextPath}/websquare/blank.xml";
|
||||
}else{
|
||||
WebSquareExternal.w2xPath = "${pageContext.request.contextPath}" + WebSquareExternal.w2xPath;
|
||||
}
|
||||
|
||||
console.log("%c" + '현장장비관리::'+location.href, "color:" + 'Green');
|
||||
console.log("%c" + '접속브라우저::'+navigator.userAgent, "color:" + 'Blue');
|
||||
</script>
|
||||
<script type="text/javascript" src="${pageContext.request.contextPath}/websquare/javascript.wq?q=/bootloader"></script>
|
||||
<script type="text/javascript">
|
||||
window.onload = init;
|
||||
window.onbeforeunload = refreshLink;
|
||||
|
||||
function init() {
|
||||
try {
|
||||
gcm.CONTEXT_PATH = "${pageContext.request.contextPath}";
|
||||
WebSquare.startApplication(WebSquareExternal.w2xPath);
|
||||
} catch (e) {
|
||||
alert(e.message);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
function refreshLink() {
|
||||
com.refreshPage();
|
||||
}
|
||||
|
||||
//window.onunload = refreshLink;
|
||||
</script>
|
||||
</head>
|
||||
<body></body>
|
||||
</html>
|
||||
@ -0,0 +1,138 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="WebApp_ID"
|
||||
version="2.5"
|
||||
xmlns="http://java.sun.com/xml/ns/javaee"
|
||||
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
|
||||
<display-name>현장장비관리</display-name>
|
||||
<filter>
|
||||
<filter-name>encodingFilter</filter-name>
|
||||
<filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
|
||||
<init-param>
|
||||
<param-name>encoding</param-name>
|
||||
<param-value>utf-8</param-value>
|
||||
</init-param>
|
||||
</filter>
|
||||
<filter-mapping>
|
||||
<filter-name>encodingFilter</filter-name>
|
||||
<url-pattern>*.do</url-pattern>
|
||||
</filter-mapping>
|
||||
<!-- 템플릿 소스에서는 아래의 필터사용 대신 JSP 출력시 <c:out> 태그를 사용하는 것을 기본정책으로 한다 -->
|
||||
<!-- egovframework.rte.ptl.mvc.filter.HTMLTagFilter egovframework.com.cmm.filter.HTMLTagFilter-->
|
||||
<filter>
|
||||
<filter-name>HTMLTagFilter</filter-name>
|
||||
<filter-class>egovframework.rte.ptl.mvc.filter.HTMLTagFilter</filter-class>
|
||||
</filter>
|
||||
<filter-mapping>
|
||||
<filter-name>HTMLTagFilter</filter-name>
|
||||
<url-pattern>*.do</url-pattern>
|
||||
</filter-mapping>
|
||||
<!-- Adapter Filter -->
|
||||
<!--<filter>
|
||||
<filter-name>AdapterFilter</filter-name>
|
||||
<filter-class>websquare.system.adapter.filter.AdapterFilter</filter-class>
|
||||
</filter>
|
||||
<filter-mapping>
|
||||
<filter-name>AdapterFilter</filter-name>
|
||||
<url-pattern>*/</url-pattern><!– 모든 url pattern에 filter 적용 –>
|
||||
</filter-mapping>-->
|
||||
|
||||
<context-param>
|
||||
<param-name>contextConfigLocation</param-name>
|
||||
<param-value>
|
||||
classpath*:egovframework/spring/com/context-*.xml
|
||||
</param-value>
|
||||
</context-param>
|
||||
|
||||
<listener>
|
||||
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
|
||||
</listener>
|
||||
<listener>
|
||||
<listener-class>org.springframework.web.context.request.RequestContextListener</listener-class>
|
||||
</listener>
|
||||
<listener>
|
||||
<listener-class>gtpa.icsmw.util.HttpSessionRenew</listener-class>
|
||||
</listener>
|
||||
<!--<servlet>
|
||||
<servlet-name>action</servlet-name>
|
||||
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
|
||||
<home-param>
|
||||
<param-name>contextConfigLocation</param-name>
|
||||
<param-value>/WEB-INF/config/egovframework/springmvc/*.xml</param-value>
|
||||
</home-param>
|
||||
<load-on-startup>1</load-on-startup>
|
||||
</servlet>
|
||||
<servlet-mapping>
|
||||
<servlet-name>action</servlet-name>
|
||||
<url-pattern>/</url-pattern>
|
||||
</servlet-mapping>-->
|
||||
|
||||
<servlet>
|
||||
<servlet-name>appServlet</servlet-name>
|
||||
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
|
||||
<init-param>
|
||||
<param-name>contextConfigLocation</param-name>
|
||||
<param-value>
|
||||
/WEB-INF/config/egovframework/springmvc/*.xml
|
||||
</param-value>
|
||||
</init-param>
|
||||
<load-on-startup>1</load-on-startup>
|
||||
</servlet>
|
||||
|
||||
<servlet-mapping>
|
||||
<servlet-name>appServlet</servlet-name>
|
||||
<url-pattern>*.do</url-pattern>
|
||||
</servlet-mapping>
|
||||
|
||||
<!-- 운영
|
||||
<servlet>
|
||||
<servlet-name>websquareDispatcher</servlet-name>
|
||||
<servlet-class>websquare.http.DefaultRequestDispatcher</servlet-class>
|
||||
</servlet>
|
||||
-->
|
||||
|
||||
<servlet>
|
||||
<servlet-name>websquareDispatcher</servlet-name>
|
||||
<servlet-class>websquare.http.DefaultRequestDispatcher</servlet-class>
|
||||
<init-param>
|
||||
<param-name>WEBSQUARE_HOME</param-name>
|
||||
<param-value>C:\egov\WORKSPACES\ICSMW\src\main\webapp\WEB-INF\websquare_home</param-value>
|
||||
</init-param>
|
||||
</servlet>
|
||||
|
||||
<!--<servlet>
|
||||
<servlet-name>websquareDispatcher</servlet-name>
|
||||
<servlet-class>websquare.http.DefaultRequestDispatcher</servlet-class>
|
||||
</servlet>-->
|
||||
|
||||
<servlet-mapping>
|
||||
<servlet-name>websquareDispatcher</servlet-name>
|
||||
<url-pattern>*.wq</url-pattern>
|
||||
</servlet-mapping>
|
||||
|
||||
|
||||
<welcome-file-list>
|
||||
<welcome-file>/ws.do</welcome-file>
|
||||
</welcome-file-list>
|
||||
<login-config>
|
||||
<auth-method>BASIC</auth-method>
|
||||
</login-config>
|
||||
|
||||
<session-config>
|
||||
<session-timeout>60</session-timeout>
|
||||
</session-config>
|
||||
|
||||
<!-- <error-page>
|
||||
<exception-type>java.lang.Throwable</exception-type>
|
||||
<location>/?w2xPath=/cm/main/auth_check.xml</location>
|
||||
</error-page>
|
||||
<error-page>
|
||||
<error-code>404</error-code>
|
||||
<location>/?w2xPath=/cm/main/auth_check.xml</location>
|
||||
</error-page>
|
||||
<error-page>
|
||||
<error-code>500</error-code>
|
||||
<location>/?w2xPath=/cm/main/auth_check.xml</location>
|
||||
</error-page>
|
||||
-->
|
||||
|
||||
</web-app>
|
||||
@ -0,0 +1,95 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<websquare>
|
||||
<upload support="true">
|
||||
<baseDir value="/app/data"><!--실제 파일이 업로드되는 경로는 {baseDir}/{folderName} -->
|
||||
<sub1 value="/app/upload/sub1" />
|
||||
<sub2 value="/app/upload/sub2" />
|
||||
</baseDir>
|
||||
<encoding value="UTF-8" />
|
||||
<duplicatedFilePostFix value="yyyyMMdd.HHmmss.SSS" />
|
||||
<firstFilePostFix value="false" />
|
||||
<maxUploadSize value="10485760">
|
||||
<subSize1 value="100000" />
|
||||
<subSize2 value="1000000" />
|
||||
</maxUploadSize><!--10MB로 세팅, 단위는 byte -->
|
||||
<uploadMode value="random" />
|
||||
<folderName value="upload" /><!--파일업로드시에 baseDir(or subDir)경로 뒤에 append됨, 빈값일 경우 uploadMode설정에 따라 baseDir뒤에 postfix값이 append됨, baseDir경로를
|
||||
그대로 사용하고자 할 경우에는 value="/" 로 설정, 이미지업로드와는 관련 없음 -->
|
||||
<imgUpload>
|
||||
<baseDir value="/app/imgUpload" />
|
||||
<subDir value="" />
|
||||
<allowedExtension>
|
||||
gif, jpg
|
||||
</allowedExtension>
|
||||
</imgUpload>
|
||||
<!--파일업로드 커스터마이징이 필요할 경우
|
||||
<fileDefiner value="com.inswave.test.sampleUploadFileDefinerImpl" />
|
||||
-->
|
||||
<allowedExtension></allowedExtension><!--확장자는 쉼표로 구분, 모든 확장자를 허용하고자 할 경우는 공백없이 내용을 지웁니다 ex) <allowedExtension></allowedExtension>, 확장자가 없는
|
||||
파일에 대한 제어는 none 으로 합니다 -->
|
||||
<deniedExtension>
|
||||
exe, none, jsp
|
||||
</deniedExtension><!-- 업로드를 제외할 파일의 확장자를 설정합니다. allowedExtension 보다 우선순위가 높습니다.(2011-08-12일자 엔진 이후 적용) -->
|
||||
<callback>
|
||||
<removeKeyPath value="false" /><!--파일업로드 후 응답값에서 서버저장경로를 클라이언트로 내려보내지 않고자할경우 true로 세팅 -->
|
||||
</callback>
|
||||
<decrypt value="" />
|
||||
</upload>
|
||||
<engineType value="5" />
|
||||
<dispatcher>
|
||||
<post>
|
||||
<encoding value="ISO_8859_1"></encoding>
|
||||
</post>
|
||||
</dispatcher>
|
||||
<excel>
|
||||
<encoding value="ISO_8859_1" /><!--ISO_8859_1 / UTF8 -->
|
||||
<upload>
|
||||
<!--maxUploadSize value="3145728" / -->
|
||||
<!--maxRowCount value="" -->
|
||||
<!--decrypt value="com.inswave.test.ExcelUploadDecrypter" tempDir="/Users/songmingu/Documents/websquare_home" / -->
|
||||
<allowedExtension>xls,xlsx</allowedExtension>
|
||||
</upload>
|
||||
<download>
|
||||
<allowedExtension>xls,xlsx</allowedExtension>
|
||||
<!--encrypt value="com.inswave.test.DownwithFasoo"/ -->
|
||||
</download>
|
||||
</excel>
|
||||
<!-- Logger 설정
|
||||
# level : Log Level 설정.
|
||||
# OFF, SEVERE (highest value), WARNING, INFO, CONFIG, FINE, FINER, FINEST (lowest value), ALL
|
||||
# console : STDOUT 로그 출력 여부 설정.
|
||||
# true : 출력함
|
||||
# false : 출력안함
|
||||
# dir : Log Directory 설정. -Dcom.inswave.logSpace에 지정된 이름에서 .을 /로 치환한 값이 dir과 subDir사이에 폴더명으로 들어간다. (dir + System.getProperty("com.hanabank.logSpace").replace('.','/')
|
||||
+ subDir)
|
||||
# thread : Log출력 시 Thread이름 출력 여부 설정.
|
||||
# true : 출력함
|
||||
# false(*) : 출력안함
|
||||
# lineNumber : Log출력 시 에러LineNumber 출력 여부 설정.
|
||||
# true : 출력함
|
||||
# false(*) : 출력안함
|
||||
# retentionPeriod : Log 보관 주기 설정. 보관주기가 넘어선 파일은 자동으로 삭제된다. 지정되지 않으면 모든 Log를 보관한다.
|
||||
# pattern="%d{ISO8601} [%t/%c/%p] [%l] %m"
|
||||
# logSize
|
||||
# - Log의 Size를 설정하고 Size는 MB단위로 설정된다.
|
||||
# - logSize가 설정되지 않을 때 무제한으로 설정된다.
|
||||
# - logSize가 설정되면 Log파일명에 순서가 포함된다.
|
||||
# logCount
|
||||
# - logSize이상 생겼을 때 로테이트 되는 파일의 갯수를 설정한다.
|
||||
# - logCount는 1이상이어야 한다.
|
||||
# - logSize가 설정되고 logCount가 없을 때 기본값으로 1로 설정된다.
|
||||
# - logSize가 설정되지 않고 logCount가 설정되어 있을 때 무시된다.
|
||||
# package : Package Log Level 설정.
|
||||
# level : Log Level 설정.
|
||||
# value : Package 설정.
|
||||
-->
|
||||
|
||||
<!--
|
||||
<log>
|
||||
<target console="false" description="basic log" dir="/log/websquare_log/websquare" filename="websquare" level="INFO" lineNumber="true" name="websquare"
|
||||
retentionPeriod="10" thread="true"/>
|
||||
<target console="false" description="error log" dir="/log/websquare_log/exception" filename="exception" level="INFO" lineNumber="true" name="exception"
|
||||
retentionPeriod="10" thread="true"/>
|
||||
</log>
|
||||
-->
|
||||
</websquare>
|
||||
@ -0,0 +1,3 @@
|
||||
XGtyyTTI1MDNQMT1FQlY7PjNRQDJYQUc=
|
||||
ukPiaRLGv4+8RZzrRfjifeK1elkKh+TrEN29V+xkoPJfiuH4bsFLaWlWrdn32Ohd50qf4ko
|
||||
Ua7c5hxsjhCJ55yRqXBKpOHPaZueBOE=
|
||||
@ -0,0 +1,381 @@
|
||||
@charset "utf-8";
|
||||
|
||||
@font-face {
|
||||
font-family: 'NanumBarunGothic';
|
||||
font-style: normal;
|
||||
font-weight: normal;
|
||||
src:local(Nanum Barun Gothic Regular),
|
||||
local(Nanum Barun Gothic-Regular),
|
||||
local(NanumBarunGothic Regular),
|
||||
local(NanumBarunGothic),
|
||||
url(../font/NanumBarunGothic.woff) format('woff');
|
||||
}
|
||||
|
||||
@font-face {
|
||||
font-family: 'NanumSquareR';
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
src: url(../font/NanumSquareR.eot);
|
||||
src: local('Nanum Square Regular'),
|
||||
local('NanumSquareR'),
|
||||
url(../font/NanumSquareR.eot?#iefix) format('embedded-opentype'),
|
||||
url(../font/NanumSquareR.woff2) format('woff2'),
|
||||
url(../font/NanumSquareR.woff) format('woff'),
|
||||
url(../font/NanumSquareR.ttf) format('truetype');
|
||||
}
|
||||
|
||||
@font-face {
|
||||
font-family: 'NanumSquareB';
|
||||
font-style: bold;
|
||||
font-weight: 700;
|
||||
src: url(../font/NanumSquareB.eot);
|
||||
src: local('Nanum Square Bold'),
|
||||
local('NanumSquareB'),
|
||||
url(../font/NanumSquareB.eot?#iefix) format('embedded-opentype'),
|
||||
url(../font/NanumSquareB.woff2) format('woff2'),
|
||||
url(../font/NanumSquareB.woff) format('woff'),
|
||||
url(../font/NanumSquareB.ttf) format('truetype');
|
||||
}
|
||||
|
||||
|
||||
input:-ms-input-placeholder{color:#888888;}
|
||||
input::-moz-input-placeholder{color:#888888;}
|
||||
input::-webkit-input-placeholder {color:#888888;}
|
||||
input[type=text]::-ms-clear {display: none;}
|
||||
|
||||
|
||||
/* Common */
|
||||
html,body{/* overscroll-behavior-y:contain; *//* overflow:hidden; */ /* -webkit-overflow-scrolling:auto; */}
|
||||
html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,font,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,input,select,table,caption,tbody,tfoot,thead,tr,th,td{margin:0;padding:0;}
|
||||
html,body{width:100%; height:100%; color:#575757; -webkit-text-size-adjust:none; -webkit-touch-callout: none !important; -webkit-user-select: none;}
|
||||
html,body,pre,select,textarea,input,h1,h2,h3,h4,h5,h6,.w2input{font-size:12px; font-family:Nanum Barun Gothic Regular,NanumBarunGothic,Noto Sans Regular,Verdana,Dotum,Helvetica;}
|
||||
h1,h2,h3,h4,h5,h6{font-weight:normal;}
|
||||
img,fieldset{border:0 !important;}
|
||||
img .inputBtn{vertical-align:middle;}
|
||||
ul,ol{list-style:none}
|
||||
em,address{font-style:normal}
|
||||
em{color:#000;}
|
||||
table{border-collapse:collapse}
|
||||
caption, legend{overflow:hidden; width:0; height:0; font-size:0; line-height:0; visibility:hidden;}
|
||||
pre, .pre{white-space:pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;}
|
||||
input,input[type=button]{/* -webkit-appearance:none; border-radius:0; */}
|
||||
input:-webkit-autofill,
|
||||
input:-webkit-autofill:hover,
|
||||
input:-webkit-autofill:focus,
|
||||
input:-webkit-autofill:active{box-shadow:0 0 0 30px white inset !important;-webkit-box-shadow:0 0 0 30px white inset !important;-moz-box-shadow:0 0 0 30px white inset !important;}
|
||||
.w2anchor2, a{color:inherit;text-decoration:none}
|
||||
.clear:after{content:""; display:block; clear:both;}
|
||||
/* .w2modalopenedbody body, .w2modalopenedbody{overflow:hidden;} */
|
||||
|
||||
/* float버그 높이값 사라짐 처리 */
|
||||
.cb:after{display:block;visibility:hidden;clear:both;height:0;font-size:0;line-height:0;content: '.'}
|
||||
|
||||
/* websquare common */
|
||||
:focus{outline:none}
|
||||
.w2group{background:transparent}
|
||||
.w2textarea{display:block;margin:0}/* 브라우저 margin */
|
||||
.w2textarea.resize_auto{resize:auto}
|
||||
.w2trigger{display:-moz-inline-stack;overflow:visible}/* firefox padding 버그 및 ie padding 버그 */
|
||||
.w2selectbox_label{padding-top:0}
|
||||
.w2radio .w2radio_main, .w2checkbox .w2checkbox_main{width:auto}
|
||||
/* .w2inputCalendar, .w2inputCalendar_div{position:relative;}
|
||||
.w2inputCalendar_div{width:100%} */
|
||||
/* .w2selectbox_native_select option{text-align:right;}
|
||||
.w2balloonTip{z-index:1000;}
|
||||
.w2input_focus{background:transparent} */
|
||||
|
||||
/* cke_reset cke_chrome cke_editor_wq_uuid_66_ cke_ltr cke_browser_webkit */
|
||||
|
||||
/* layout - START */
|
||||
|
||||
|
||||
.wrap{width:100%;height:100%;min-width:1000px;}
|
||||
|
||||
.header{width:100%;height:139px; background:url(../../cm/images/temp_header_bg.png) repeat-x;}
|
||||
.header .header_inner{width:100%;height:139px;min-width:1000px;max-width:1200px;margin:0 auto; background:url(../../cm/images/temp_header.png) no-repeat;}
|
||||
.container{width:100%;min-width:1000px;max-width:1200px;min-height:450px;margin:0 auto;}
|
||||
.container .content{padding:20px 0 120px 0;}
|
||||
.footer{width:100%;height:144px; background:url(../../cm/images/temp_footer_bg.png) repeat-x;}
|
||||
.footer .footer_inner{min-width:1000px;max-width:1200px;height:144px;margin:0 auto; background:url(../../cm/images/temp_footer.png) no-repeat;}
|
||||
|
||||
.content{padding:20px 10px 120px 10px;/* position:relative;width:100%;height:100%; */}
|
||||
.content:before, .content:after{display:block;visibility:hidden;clear:both;height:0px;font-size:0;line-height:0;content: '.'}
|
||||
.content .contarea{margin-top:70px;}
|
||||
.content .contarea:before, .content .contarea:after{display:block;visibility:hidden;clear:both;height:0px;font-size:0;line-height:0;content: '.'}
|
||||
/* .content > .contarea:first-child{margin-top:0px;} */
|
||||
.overlay{display:none;position:fixed;top:0px;left:0px;right:0px;bottom:0px;z-index:999;opacity:0.7;background-color:#000;}
|
||||
.overlay.on{display:block;}
|
||||
/* layout - END */
|
||||
|
||||
|
||||
|
||||
/* MOBILE layout - START */
|
||||
.m_wrap{width:100%;height:100%;min-width:320px;}
|
||||
.m_header{width:100%;height:50px;background-color:#0065b2;}
|
||||
.m_header_inner{position:relative;height:50px;padding:0 50px;z-index:1;background-color:#0065b2;}
|
||||
.m_header_inner h1{display:block;width:100%;height:100%;font-size:17px;color:#fff;text-align:center;line-height:50px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;background:url(../../cm/images/m_ico_logo.png) no-repeat center center;background-size:auto 30px;}
|
||||
/* .m_header_inner .btnback{display:none;position:absolute;top:0;left:0;font-size:0;line-height:0;width:50px;height:50px;background:url(../../cm/images/btn_back.png) no-repeat center center;background-size:50% auto;} */
|
||||
.m_header_inner .btnback{display:none;}
|
||||
.m_header_inner .btnallmenu{position:absolute;top:0;right:0;font-size:0;line-height:0;width:50px;height:50px;background:url(../../cm/images/btn_allmenu.png) no-repeat right 18px center;background-size:18px 12px;}
|
||||
|
||||
.m_container{width:100%;/*min-height:200px;*/min-height:600px;}
|
||||
|
||||
/*모바일 해상도에 따라 컨텐츠 높이 안전 영역 설정*/
|
||||
@media all and (max-height:568px){
|
||||
/* .main_wrap .main_autofixed{position:fixed;left:0;right:0;bottom:0;top:inherit;} */
|
||||
.m_container {min-height:380px;}
|
||||
}
|
||||
|
||||
@media all and (min-height: 569px) and (max-height:640px){
|
||||
.m_container {min-height:450px}
|
||||
}
|
||||
|
||||
@media all and (min-height: 641px) and (max-height:667px){
|
||||
.m_container {min-height:470px}
|
||||
}
|
||||
|
||||
@media all and (min-height: 668px) and (max-height:736px){
|
||||
.m_container {min-height:550px}
|
||||
}
|
||||
|
||||
|
||||
.m_content{position:relative;width:100%;height:auto;}
|
||||
.m_content .contarea{padding:20px 18px 20px 18px;}
|
||||
.m_content .contarea + .contarea {padding-top:0;}
|
||||
.m_content .contarea.bg_gray{padding:18px;}
|
||||
.m_content .contarea.bg_gray .member_joinbox{margin-top:0px !important;}
|
||||
|
||||
.m_footer{}
|
||||
.m_fagree{border:1px solid #e0e0e0;border-left:0;border-right:0;box-sizing:border-box;}
|
||||
.m_fagree .btn_fagree{position:relative;display:inline-block;width:50%;height:42px;line-height:42px;color:#000;text-align:center;}
|
||||
.m_fagree .btn_fagree:before{content:"";display:block;position:absolute;top:50%;left:0;width:1px;height:18px;margin-top:-9px;background-color:#e0e0e0;}
|
||||
.m_fagree .btn_fagree:first-child:before{display:none;}
|
||||
.m_fagree .btn_fagree:first-child{font-weight:bold;border-left:0;}
|
||||
.m_copyright{text-align:center;padding:20px;font-size:11px;line-height:14px;}
|
||||
/* MOBILE layout - END */
|
||||
|
||||
/* allmenu - START */
|
||||
.grp_allmenu{z-index:1000;display:none;position:fixed;top:0;right:-260px;width:260px;height:100%;background-color:#fff;}
|
||||
.grp_allmenu .allmenu_top{height:50px;padding:0 18px;background-color:#0065b2;}
|
||||
.grp_allmenu .allmenu_top .grp_loginout{float:left;margin-top:18px;}
|
||||
.grp_allmenu .allmenu_top .grp_loginout a{position:relative;display:inline-block;float:left;margin-left:20px;font-size:13px;color:#fff;}
|
||||
.grp_allmenu .allmenu_top .grp_loginout a:before{content:"";position:absolute;top:0;left:-10px;display:block;width:1px;height:12px;background-color:#fff;}
|
||||
.grp_allmenu .allmenu_top .grp_loginout a:first-child{margin-left:0;}
|
||||
.grp_allmenu .allmenu_top .grp_loginout a:first-child:before{display:none;}
|
||||
.grp_allmenu .allmenu_top .grp_loginout a:hover{text-decoration:underline;}
|
||||
|
||||
.grp_allmenu .allmenu_top .rightarea{float:right;margin-top:9px;}
|
||||
.grp_allmenu .allmenu_top .btn_allmenu_home{float:left;width:28px;height:28px;font-size:0;line-height:0;background:url(../../cm/images/btn_allmenu_home.png) no-repeat center center;background-size:20px;}
|
||||
.grp_allmenu .allmenu_top .btn_allmenu_close{float:left;width:28px;height:28px;margin-left:5px;font-size:0;line-height:0;background:url(../../cm/images/btn_allmenu_close.png) no-repeat center center;background-size:18px;}
|
||||
.grp_allmenu .allmenu{width:100%;}
|
||||
|
||||
.grp_allmenu .allmenu > li >a{display:block;height:40px;line-height:40px;font-size:13px;font-weight:bold;color:#000;padding:0 18px;border-bottom:1px solid #e0e0e0;box-sizing:border-box;background:url(../../cm/images/ico_allmenu_open.png) no-repeat right 18px center;background-size:5px 8px;}
|
||||
.grp_allmenu .allmenu > li.selected >a{background:url(../../cm/images/ico_allmenu_close.png) no-repeat right 18px center;background-size:6px 1px;}
|
||||
|
||||
/* .grp_allmenu .allmenu > li >a.selected + ul{display:block !important;} */
|
||||
.grp_allmenu .allmenu > li > ul{display:none;border-bottom:1px solid #e0e0e0;box-sizing:border-box;background-color:#f3f3f5;}
|
||||
.grp_allmenu .allmenu > li > ul > li{}
|
||||
.grp_allmenu .allmenu > li > ul > li > a{display:block;height:34px;line-height:34px;font-size:12px;color:#000;padding:0 18px;}
|
||||
|
||||
/* allmenu - END */
|
||||
|
||||
|
||||
/* openpop - START */
|
||||
.w2modal, .w2modal_popup{background-color:#000;opacity:0.7;/* z-index:8000; */}
|
||||
.w2window.w2popup_window{border:none;/* z-index:10000; *//* border:1px solid #2f3947;_box-sizing:border-box; */}
|
||||
.w2window.w2popup_window .w2window_wframe{overflow:hidden;}
|
||||
.w2window.w2popup_window .w2window_header{height:50px;padding:0px;overflow:visible;border-bottom:1px solid #e0e0e0;/* border-bottom:0; */box-sizing:border-box;background:#fff;}
|
||||
.w2window.w2popup_window .w2window_header .w2window_header_icon{display:none;}
|
||||
.w2window.w2popup_window .w2window_header .w2window_header_title{top:15px;left:15px;right:15px;width:auto;height:auto;padding:0;color:#000;/* font-weight:normal; */font-size:16px;text-align:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
|
||||
.w2window.w2popup_window .w2window_header .w2window_header_control{width:40px;height:40px;}
|
||||
.w2window.w2popup_window .w2window_header .w2window_close,
|
||||
.w2window.w2popup_window .w2window_header .w2window_close_user{display:block;width:20px;height:20px;top:-30px;left:auto;right:0;font-size:0;line-height:0;background:url(../../cm/images/btn_popup_close_white.png) no-repeat center center;background-size:100% auto;}
|
||||
.w2window.w2popup_window .w2window_body{top:50px;padding:0px;background-color:#fff;}
|
||||
.w2window.w2popup_window .w2window_body .w2window_content{border:none;left:0px;right:0px;bottom:0px;}
|
||||
.w2window.w2popup_window .w2window_body .poparea > .content{overflow:hidden;overflow-y:auto;width:100%;/* height:100%; */height:auto;padding-bottom:45px;}
|
||||
.w2window.w2popup_window{}
|
||||
/* openpop - END */
|
||||
|
||||
|
||||
|
||||
/* text decoration - START */
|
||||
.tdu{text-decoration:underline !important}
|
||||
.ellip{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
|
||||
.tal{text-align:left !important;}
|
||||
.tar{text-align:right !important;}
|
||||
.tac{text-align:center !important;}
|
||||
.fs10{font-size:10px !important;}
|
||||
.fs11{font-size:11px !important;}
|
||||
.fs12{font-size:12px !important;}
|
||||
.fs13{font-size:13px !important;}
|
||||
.fs14{font-size:14px !important;}
|
||||
.fs15{font-size:15px !important;}
|
||||
.fs16{font-size:16px !important;}
|
||||
.fs17{font-size:17px !important;}
|
||||
.fs18{font-size:18px !important;}
|
||||
.fs19{font-size:19px !important;}
|
||||
.fs20{font-size:20px !important;}
|
||||
.fs21{font-size:21px !important;}
|
||||
.fs22{font-size:22px !important;}
|
||||
.fs23{font-size:23px !important;}
|
||||
.fs24{font-size:24px !important;}
|
||||
.fs25{font-size:25px !important;}
|
||||
.fs26{font-size:26px !important;}
|
||||
.fs27{font-size:27px !important;}
|
||||
.fs28{font-size:28px !important;}
|
||||
.fs29{font-size:29px !important;}
|
||||
.fs30{font-size:30px !important;}
|
||||
.fc_green{color:#0065b2 !important;}
|
||||
.fc_black{color:#000 !important;}
|
||||
.fc_red{color:#c42012 !important;}
|
||||
.fc_blue{color:#0065b2 !important;}
|
||||
.fwb{font-weight:bold !important;}
|
||||
.fwn{font-weight:normal !important;}
|
||||
.f_vd{font-family:verdana;}
|
||||
/* text decoration - END */
|
||||
|
||||
/* form deco - START */
|
||||
.fl{float:left !important}
|
||||
.fr{float:right !important}
|
||||
.nofl *{float:none !important;}
|
||||
.fln{float:none !important;}
|
||||
.dib{display:inline-block !important;}
|
||||
.din{display:inline !important;}
|
||||
.dbl{display:block !important;}
|
||||
.bdno{border:none !important;}
|
||||
.blno{border-left:none !important;}
|
||||
.brno{border-right:none !important;}
|
||||
.bbno{border-bottom:none !important;}
|
||||
.btno{border-top:none !important;}
|
||||
.bt{border-top:1px solid #e5e8eb;}
|
||||
.bb{border-bottom:1px solid #e5e8eb;}
|
||||
.bl{border-left:1px solid #e5e8eb;}
|
||||
.br{border-right:1px solid #e5e8eb;}
|
||||
.rel{display:relative;}
|
||||
.tablecell{display:table;width:100%;}
|
||||
.tablecell .cell{vertical-align:middle;display:table-cell;}
|
||||
.vat{vertical-align:top !important;}
|
||||
.vam{vertical-align:middle !important;}
|
||||
.vab{vertical-align:bottom !important;}
|
||||
.bgnon{background:none !important;}
|
||||
.blind{position:absolute;left:0;top:0;visibility:hidden;overflow:hidden;height:0;width:0;margin:0;padding:0;line-height:0;font-size:0;}
|
||||
.abs{position:absolute !important;display:block !important;}
|
||||
.rel{position:relative !important;}
|
||||
.bg_gray{background-color:#f3f3f5;}
|
||||
.bg_green{background-color:#00a05f;}
|
||||
|
||||
.per100{width:100% !important;}
|
||||
.per95{width:95% !important;}
|
||||
.per90{width:90% !important;}
|
||||
.per85{width:85% !important;}
|
||||
.per80{width:80% !important;}
|
||||
.per75{width:75% !important;}
|
||||
.per70{width:70% !important;}
|
||||
.per65{width:65% !important;}
|
||||
.per60{width:60% !important;}
|
||||
.per55{width:55% !important;}
|
||||
.per50{width:50% !important;}
|
||||
.per45{width:45% !important;}
|
||||
.per40{width:40% !important;}
|
||||
.per35{width:35% !important;}
|
||||
.per30{width:30% !important;}
|
||||
.per25{width:25% !important;}
|
||||
.per20{width:20% !important;}
|
||||
.per15{width:15% !important;}
|
||||
.per10{width:10% !important;}
|
||||
.per5{width:5% !important;}
|
||||
.lh12{line-height:12px !important;}
|
||||
.lh13{line-height:13px !important;}
|
||||
.lh14{line-height:14px !important;}
|
||||
.lh15{line-height:15px !important;}
|
||||
.lh16{line-height:16px !important;}
|
||||
.lh17{line-height:17px !important;}
|
||||
.lh18{line-height:18px !important;}
|
||||
.lh19{line-height:19px !important;}
|
||||
.lh20{line-height:20px !important;}
|
||||
/* form deco - END */
|
||||
|
||||
/* padding, margin - START */
|
||||
.pt0 {padding-top: 0px !important;} .pr0 {padding-right: 0px !important;} .pb0 {padding-bottom: 0px !important;} .pl0 {padding-left: 0px !important;}
|
||||
.pt5 {padding-top: 5px !important;} .pr5 {padding-right: 5px !important;} .pb5 {padding-bottom: 5px !important;} .pl5 {padding-left: 5px !important;}
|
||||
.pt10{padding-top:10px !important;} .pr10{padding-right:10px !important;} .pb10{padding-bottom:10px !important;} .pl10{padding-left:10px !important;}
|
||||
.pt15{padding-top:15px !important;} .pr15{padding-right:15px !important;} .pb15{padding-bottom:15px !important;} .pl15{padding-left:15px !important;}
|
||||
.pt20{padding-top:20px !important;} .pr20{padding-right:20px !important;} .pb20{padding-bottom:20px !important;} .pl20{padding-left:20px !important;}
|
||||
.pt25{padding-top:25px !important;} .pr25{padding-right:25px !important;} .pb25{padding-bottom:25px !important;} .pl25{padding-left:25px !important;}
|
||||
.pt30{padding-top:30px !important;} .pr30{padding-right:30px !important;} .pb30{padding-bottom:30px !important;} .pl30{padding-left:30px !important;}
|
||||
.pt35{padding-top:35px !important;} .pr35{padding-right:35px !important;} .pb35{padding-bottom:35px !important;} .pl35{padding-left:35px !important;}
|
||||
.pt40{padding-top:40px !important;} .pr40{padding-right:40px !important;} .pb40{padding-bottom:40px !important;} .pl40{padding-left:40px !important;}
|
||||
.pt45{padding-top:45px !important;} .pr45{padding-right:45px !important;} .pb45{padding-bottom:45px !important;} .pl45{padding-left:45px !important;}
|
||||
.pt50{padding-top:50px !important;} .pr50{padding-right:50px !important;} .pb50{padding-bottom:50px !important;} .pl50{padding-left:50px !important;}
|
||||
.pt55{padding-top:55px !important;} .pr55{padding-right:55px !important;} .pb55{padding-bottom:55px !important;} .pl55{padding-left:55px !important;}
|
||||
.pt60{padding-top:60px !important;} .pr60{padding-right:60px !important;} .pb60{padding-bottom:60px !important;} .pl60{padding-left:60px !important;}
|
||||
|
||||
.mt0 {margin-top: 0px !important;} .mr0 {margin-right: 0px !important;} .mb0 {margin-bottom: 0px !important;} .ml0 {margin-left: 0px !important;}
|
||||
.mt2 {margin-top: 2px !important;} .mr2 {margin-right: 2px !important;} .mb2 {margin-bottom: 2px !important;} .ml2 {margin-left: 2px !important;}
|
||||
.mt5 {margin-top: 5px !important;} .mr5 {margin-right: 5px !important;} .mb5 {margin-bottom: 5px !important;} .ml5 {margin-left: 5px !important;}
|
||||
.mt10{margin-top:10px !important;} .mr10{margin-right:10px !important;} .mb10{margin-bottom:10px !important;} .ml10{margin-left:10px !important;}
|
||||
.mt15{margin-top:15px !important;} .mr15{margin-right:15px !important;} .mb15{margin-bottom:15px !important;} .ml15{margin-left:15px !important;}
|
||||
.mt20{margin-top:20px !important;} .mr20{margin-right:20px !important;} .mb20{margin-bottom:20px !important;} .ml20{margin-left:20px !important;}
|
||||
.mt25{margin-top:25px !important;} .mr25{margin-right:25px !important;} .mb25{margin-bottom:25px !important;} .ml25{margin-left:25px !important;}
|
||||
.mt30{margin-top:30px !important;} .mr30{margin-right:30px !important;} .mb30{margin-bottom:30px !important;} .ml30{margin-left:30px !important;}
|
||||
.mt35{margin-top:35px !important;} .mr35{margin-right:35px !important;} .mb35{margin-bottom:35px !important;} .ml35{margin-left:35px !important;}
|
||||
.mt40{margin-top:40px !important;} .mr40{margin-right:40px !important;} .mb40{margin-bottom:40px !important;} .ml40{margin-left:40px !important;}
|
||||
.mt45{margin-top:45px !important;} .mr45{margin-right:45px !important;} .mb45{margin-bottom:45px !important;} .ml45{margin-left:45px !important;}
|
||||
.mt50{margin-top:50px !important;} .mr50{margin-right:50px !important;} .mb50{margin-bottom:50px !important;} .ml50{margin-left:50px !important;}
|
||||
.mt55{margin-top:55px !important;} .mr55{margin-right:55px !important;} .mb55{margin-bottom:55px !important;} .ml55{margin-left:55px !important;}
|
||||
.mt60{margin-top:60px !important;} .mr60{margin-right:60px !important;} .mb60{margin-bottom:60px !important;} .ml60{margin-left:60px !important;}
|
||||
.mt65{margin-top:65px !important;} .mr65{margin-right:65px !important;} .mb65{margin-bottom:65px !important;} .ml65{margin-left:65px !important;}
|
||||
.mt70{margin-top:70px !important;} .mr70{margin-right:70px !important;} .mb70{margin-bottom:70px !important;} .ml70{margin-left:70px !important;}
|
||||
/* padding, margin - END */
|
||||
|
||||
/* width - START */
|
||||
.w10 {width:10px !important;} .w15 {width:15px !important;} .w20 {width:20px !important;} .w25 {width:25px !important;} .w30 {width:30px !important;}
|
||||
.w35 {width:35px !important;} .w40 {width:40px !important;} .w45 {width:45px !important;} .w50 {width:50px !important;} .w55 {width:55px !important;}
|
||||
.w60 {width:60px !important;} .w65 {width:65px !important;} .w70 {width:70px !important;} .w75 {width:75px !important;} .w80 {width:80px !important;}
|
||||
.w85 {width:85px !important;} .w90 {width:90px !important;} .w95 {width:95px !important;} .w100 {width:100px !important;} .w105 {width:105px !important;}
|
||||
.w110 {width:110px !important;} .w115 {width:115px !important;} .w120 {width:120px !important;} .w125 {width:125px !important;} .w130 {width:130px !important;}
|
||||
.w135 {width:135px !important;} .w140 {width:140px !important;} .w145 {width:145px !important;} .w150 {width:150px !important;} .w155 {width:155px !important;}
|
||||
.w160 {width:160px !important;} .w165 {width:165px !important;} .w170 {width:170px !important;} .w175 {width:175px !important;} .w180 {width:180px !important;}
|
||||
.w185 {width:185px !important;} .w190 {width:190px !important;} .w195 {width:195px !important;} .w200 {width:200px !important;} .w205 {width:205px !important;}
|
||||
.w210 {width:210px !important;} .w215 {width:215px !important;} .w220 {width:220px !important;} .w225 {width:225px !important;} .w230 {width:230px !important;}
|
||||
.w235 {width:235px !important;} .w240 {width:240px !important;} .w245 {width:245px !important;} .w250 {width:250px !important;} .w255 {width:255px !important;}
|
||||
.w260 {width:260px !important;} .w265 {width:265px !important;} .w270 {width:270px !important;} .w275 {width:275px !important;} .w280 {width:280px !important;}
|
||||
.w285 {width:285px !important;} .w290 {width:290px !important;} .w295 {width:295px !important;} .w300 {width:300px !important;} .w305 {width:305px !important;}
|
||||
.w310 {width:310px !important;} .w315 {width:315px !important;} .w320 {width:320px !important;} .w325 {width:325px !important;} .w330 {width:330px !important;}
|
||||
.w335 {width:335px !important;} .w340 {width:340px !important;} .w345 {width:345px !important;} .w350 {width:350px !important;} .w355 {width:355px !important;}
|
||||
.w360 {width:360px !important;} .w365 {width:365px !important;} .w370 {width:370px !important;} .w375 {width:375px !important;} .w380 {width:380px !important;}
|
||||
.w385 {width:385px !important;} .w390 {width:390px !important;} .w395 {width:395px !important;} .w400 {width:400px !important;} .w405 {width:405px !important;}
|
||||
.w410 {width:410px !important;} .w415 {width:415px !important;} .w420 {width:420px !important;} .w425 {width:425px !important;} .w430 {width:430px !important;}
|
||||
.w435 {width:435px !important;} .w440 {width:440px !important;} .w445 {width:445px !important;} .w450 {width:450px !important;} .w455 {width:455px !important;}
|
||||
.w460 {width:460px !important;} .w465 {width:465px !important;} .w470 {width:470px !important;} .w475 {width:475px !important;} .w480 {width:480px !important;}
|
||||
.w485 {width:485px !important;} .w490 {width:490px !important;} .w495 {width:495px !important;} .w500 {width:500px !important;}
|
||||
/* width - END */
|
||||
|
||||
/* height - START */
|
||||
.h10 {height:10px !important;} .h15 {height:15px !important;} .h20 {height:20px !important;} .h25 {height:25px !important;} .h30 {height:30px !important;}
|
||||
.h35 {height:35px !important;} .h40 {height:40px !important;} .h45 {height:45px !important;} .h50 {height:50px !important;} .h55 {height:55px !important;}
|
||||
.h60 {height:60px !important;} .h65 {height:65px !important;} .h70 {height:70px !important;} .h75 {height:75px !important;} .h80 {height:80px !important;}
|
||||
.h85 {height:85px !important;} .h90 {height:90px !important;} .h95 {height:95px !important;} .h100 {height:100px !important;} .h105 {height:105px !important;}
|
||||
.h110 {height:110px !important;} .h115 {height:115px !important;} .h120 {height:120px !important;} .h125 {height:125px !important;} .h130 {height:130px !important;}
|
||||
.h135 {height:135px !important;} .h140 {height:140px !important;} .h145 {height:145px !important;} .h150 {height:150px !important;} .h155 {height:155px !important;}
|
||||
.h160 {height:160px !important;} .h165 {height:165px !important;} .h170 {height:170px !important;} .h175 {height:175px !important;} .h180 {height:180px !important;}
|
||||
.h185 {height:185px !important;} .h190 {height:190px !important;} .h195 {height:195px !important;} .h200 {height:200px !important;} .h205 {height:205px !important;}
|
||||
.h210 {height:210px !important;} .h215 {height:215px !important;} .h220 {height:220px !important;} .h225 {height:225px !important;} .h230 {height:230px !important;}
|
||||
.h235 {height:235px !important;} .h240 {height:240px !important;} .h245 {height:245px !important;} .h250 {height:250px !important;} .h255 {height:255px !important;}
|
||||
.h260 {height:260px !important;} .h265 {height:265px !important;} .h270 {height:270px !important;} .h275 {height:275px !important;} .h280 {height:280px !important;}
|
||||
.h285 {height:285px !important;} .h290 {height:290px !important;} .h295 {height:295px !important;} .h300 {height:300px !important;} .h305 {height:305px !important;}
|
||||
.h310 {height:310px !important;} .h315 {height:315px !important;} .h320 {height:320px !important;} .h325 {height:325px !important;} .h330 {height:330px !important;}
|
||||
.h335 {height:335px !important;} .h340 {height:340px !important;} .h345 {height:345px !important;} .h350 {height:350px !important;} .h355 {height:355px !important;}
|
||||
.h360 {height:360px !important;} .h365 {height:365px !important;} .h370 {height:370px !important;} .h375 {height:375px !important;} .h380 {height:380px !important;}
|
||||
.h385 {height:385px !important;} .h390 {height:390px !important;} .h395 {height:395px !important;} .h400 {height:400px !important;} .h405 {height:405px !important;}
|
||||
.h410 {height:410px !important;} .h415 {height:415px !important;} .h420 {height:420px !important;} .h425 {height:425px !important;} .h430 {height:430px !important;}
|
||||
.h435 {height:435px !important;} .h440 {height:440px !important;} .h445 {height:445px !important;} .h450 {height:450px !important;} .h455 {height:455px !important;}
|
||||
.h460 {height:460px !important;} .h465 {height:465px !important;} .h470 {height:470px !important;} .h475 {height:475px !important;} .h480 {height:480px !important;}
|
||||
.h485 {height:485px !important;} .h490 {height:490px !important;} .h495 {height:495px !important;} .h500 {height:500px !important;}
|
||||
/* height - END */
|
||||
|
||||
.pop_a_x {left:50%; transform:translateX(-50%);}
|
||||
.pop_a_y {top:50%; transform:translateY(-50%);}
|
||||
|
||||
|
||||
|
||||
|
After Width: | Height: | Size: 22 KiB |
|
After Width: | Height: | Size: 135 KiB |
|
After Width: | Height: | Size: 16 KiB |
|
After Width: | Height: | Size: 33 KiB |
|
After Width: | Height: | Size: 266 KiB |
|
After Width: | Height: | Size: 273 KiB |
|
After Width: | Height: | Size: 2.8 KiB |
|
After Width: | Height: | Size: 7.0 KiB |
|
After Width: | Height: | Size: 1.1 KiB |
|
After Width: | Height: | Size: 5.5 KiB |
|
After Width: | Height: | Size: 1.1 KiB |
|
After Width: | Height: | Size: 967 B |
|
After Width: | Height: | Size: 1.5 KiB |
|
After Width: | Height: | Size: 1013 B |
|
After Width: | Height: | Size: 345 B |
|
After Width: | Height: | Size: 480 B |
|
After Width: | Height: | Size: 1.1 KiB |
|
After Width: | Height: | Size: 230 B |
|
After Width: | Height: | Size: 1.0 KiB |
|
After Width: | Height: | Size: 1.0 KiB |
|
After Width: | Height: | Size: 1.0 KiB |
|
After Width: | Height: | Size: 360 B |
|
After Width: | Height: | Size: 316 B |
|
After Width: | Height: | Size: 1.7 KiB |
|
After Width: | Height: | Size: 1.7 KiB |
|
After Width: | Height: | Size: 979 B |
|
After Width: | Height: | Size: 988 B |
|
After Width: | Height: | Size: 980 B |
|
After Width: | Height: | Size: 973 B |
|
After Width: | Height: | Size: 225 B |
|
After Width: | Height: | Size: 345 B |
|
After Width: | Height: | Size: 1.2 KiB |
|
After Width: | Height: | Size: 1.1 KiB |
|
After Width: | Height: | Size: 1.1 KiB |
|
After Width: | Height: | Size: 1.1 KiB |
|
After Width: | Height: | Size: 1.0 KiB |
|
After Width: | Height: | Size: 1.0 KiB |
|
After Width: | Height: | Size: 2.9 KiB |
|
After Width: | Height: | Size: 3.0 KiB |
|
After Width: | Height: | Size: 2.0 KiB |
|
After Width: | Height: | Size: 1.7 KiB |
|
After Width: | Height: | Size: 2.0 KiB |
|
After Width: | Height: | Size: 2.2 KiB |
|
After Width: | Height: | Size: 2.7 KiB |
|
After Width: | Height: | Size: 3.3 KiB |
|
After Width: | Height: | Size: 2.9 KiB |
|
After Width: | Height: | Size: 2.0 KiB |
|
After Width: | Height: | Size: 2.2 KiB |
|
After Width: | Height: | Size: 3.4 KiB |
|
After Width: | Height: | Size: 2.1 KiB |
|
After Width: | Height: | Size: 2.0 KiB |
|
After Width: | Height: | Size: 2.4 KiB |
|
After Width: | Height: | Size: 1.6 KiB |
|
After Width: | Height: | Size: 2.5 KiB |
|
After Width: | Height: | Size: 2.1 KiB |