초기소스

This commit is contained in:
jazz
2025-10-29 17:08:05 +09:00
parent e531aa9540
commit 439a379a02
7551 changed files with 1234427 additions and 3 deletions

View File

@@ -0,0 +1,296 @@
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>
<footer class="footer">
<ul class="footer__first">
<c:if test="${!empty sopmallInfo}">
<c:forEach var="topMenuList" items="${sopmallInfo.menuList}" varStatus="status">
<c:if test="${ topBarInfo.topbar.gnbTyCd eq '04'}">
<li>
<a href='<c:out value="${topMenuList.url}"/>' onclick="setTopMenuCode()">
<c:choose>
<c:when test = "${fn:contains(topMenuList.url,'/sopmal/main/selectClause?stplatDvCd=02')}">
<strong><c:out value="${topMenuList.ctgryNm}"/></strong>
</c:when>
<c:otherwise>
<c:out value="${topMenuList.ctgryNm}"/>
</c:otherwise>
</c:choose>
</a>
</li>
</c:if>
</c:forEach>
</c:if>
</ul>
<div class="footer__second">
<button type="button" class="footer__second__detailBtn">사업자 정보 확인</button>
<c:if test = "${not empty footerInfo.footerInfo.familySite}">
<select class="family-site-link" title="해당 셀렉트에 대한 설명">
<option value="" disabled selected>FAMILY SITE</option>
<c:forEach var = "familySite" items = "${footerInfo.footerInfo.familySite}">
<option value="<c:out value="${familySite.familySiteUrl}"/>"><c:out value="${familySite.familySiteNm}"/></option>
</c:forEach>
</select>
</c:if>
</div>
<div class="footerHide">
<c:set var="operBsnmInfo" value="${footerInfo.footerInfo.operBsnmInfo}"/>
<c:set var="sleBsnmInfo" value="${footerInfo.footerInfo.sleBsnmInfo}"/>
<c:set var="sopmalInfo" value="${footerInfo.footerInfo.sopmalInfo}"/>
<c:set var="scriptSetup" value="${footerInfo.footerInfo.scriptSetup}"/>
<ul class="footer__third">
<c:choose>
<c:when test="${operBsnmInfo.bsnmInnb ne sleBsnmInfo.bsnmInnb}">
<li>
<span class="footer__third__th">판매사업자</span>
<span class="footer__third__td">
<c:out value="${sleBsnmInfo.bsnmNm}"/>
</span>
</li>
<li><span class="footer__third__th">대표자</span><span class="footer__third__td"><c:out value="${sleBsnmInfo.reprsntvnm}"/></span></li>
<li><span class="footer__third__th">주소</span><span class="footer__third__td">
<c:choose>
<c:when test = "${not empty sleBsnmInfo.rnmAdres && not empty sleBsnmInfo.lnbAdres}">
<c:out value="${sleBsnmInfo.lnbAdres}"/>
</c:when>
<c:when test = "${empty operBsnmInfo.rnmAdres && not empty sleBsnmInfo.lnbAdres}">
<c:out value="${sleBsnmInfo.lnbAdres}"/>
</c:when>
<c:when test = "${not empty sleBsnmInfo.rnmAdres && empty sleBsnmInfo.lnbAdres}">
<c:out value="${sleBsnmInfo.rnmAdres}"/>
</c:when>
</c:choose> <c:out value="${sleBsnmInfo.dtlAdres}"/></span></li>
<li><span class="footer__third__th">대표전화</span><span class="footer__third__td"><c:out value="${sopmalInfo.reprsntTelnb}"/></span>
</li>
<li><span class="footer__third__th">대표이메일</span>
<a href="mailto:<c:out value='${sopmalInfo.reprsntEmail}'/>" class="footer__third__td"><strong><c:out value="${sopmalInfo.reprsntEmail}"/></strong></a>
</li>
<li><span class="footer__third__th">사업자 등록번호</span><span
class="footer__third__td"><c:out value="${sleBsnmInfo.bizrnb}"/></span>
[ <a href="javascript:;" onclick="window.open('https://www.ftc.go.kr/bizCommPop.do?wrkr_no=<c:out value="${sleBsnmInfo.replaceBizrnb}"/>','communicationViewPopup','width=750,height=700,scrollbars=yes')" class="footer__underLine">사업자정보확인</a> ]
</li>
<li><span class="footer__third__th">개인정보관리책임자</span><span class="footer__third__td"><c:out value="${sleBsnmInfo.indvdlinfoPrtcRspnberNm}"/></span>
</li>
<li><span class="footer__third__th">통신판매업 신고번호</span><span class="footer__third__td"><c:out value="${sleBsnmInfo.mobDclNb}"/></span></li>
<li>[ <a onclick="openModal('selerInfo');" class="footer__underLine">판매자 정보</a> ]
[ <a onclick="fn_get_indvdlInfoPorcsCn();" class="footer__underLine">판매자 개인정보 처리방침</a> ]</li>
</ul>
<div class="footer__logo">
</div>
<ul class="footer__third" style="font-size:12px; color:#888888;">
<li>
통신판매중개사업자 &nbsp; | &nbsp; <c:out value="${operBsnmInfo.bsnmNm}"/>
</li>
<li>대표자 &nbsp; | &nbsp; <c:out value="${operBsnmInfo.reprsntvnm}"/></li>
<li>주소 &nbsp; | &nbsp;
<c:choose>
<c:when test = "${not empty operBsnmInfo.rnmAdres && not empty operBsnmInfo.lnbAdres}">
<c:out value="${operBsnmInfo.lnbAdres}"/>
</c:when>
<c:when test = "${empty operBsnmInfo.rnmAdres && not empty operBsnmInfo.lnbAdres}">
<c:out value="${operBsnmInfo.lnbAdres}"/>
</c:when>
<c:when test = "${not empty operBsnmInfo.rnmAdres && empty operBsnmInfo.lnbAdres}">
<c:out value="${operBsnmInfo.rnmAdres}"/>
</c:when>
</c:choose> <c:out value="${operBsnmInfo.dtlAdres}"/></span></li>
<li>대표전화 &nbsp; | &nbsp; <c:out value="${operBsnmInfo.telnb}"/>
</li>
<li>대표이메일 &nbsp; | &nbsp;
<a href="mailto:<c:out value='${operBsnmInfo.email}'/>"><c:out value="${operBsnmInfo.email}"/></a>
</li>
<li>사업자 등록번호 &nbsp; | &nbsp; <c:out value="${operBsnmInfo.bizrnb}"/> &nbsp;
[ <a href="javascript:;" onclick="window.open('https://www.ftc.go.kr/bizCommPop.do?wrkr_no=<c:out value="${operBsnmInfo.replaceBizrnb}"/>','communicationViewPopup','width=750,height=700,scrollbars=yes')">사업자정보확인</a> ]
</li>
<li>개인정보관리책임자 &nbsp; | &nbsp; <c:out value="${operBsnmInfo.indvdlinfoPrtcRspnberNm}"/>
</li>
<li>통신판매업 신고번호 &nbsp; | &nbsp; <c:out value="${operBsnmInfo.mobDclNb}"/></li>
</ul>
<br/>
<p class="footer__description">
<c:out value="${operBsnmInfo.bsnmNm}"/>는 통신판매중계자이며, 통신판매의 당사자가
아닙니다. 상품 및 거래와 관련한 의무와 책임은 판매자에게 있습니다.</p>
<p class="footer__copyright">ⓒ<c:out value="${operBsnmInfo.bsnmNm}"/> All rights reserved.</p>
<%--로딩이미지--%>
<img src="/mobile/images/loading.svg" style = "display:none" class = "loadingImg">
</c:when>
<c:otherwise>
<li>
<span class="footer__third__th">사업자명</span>
<span class="footer__third__td">
<c:out value="${operBsnmInfo.bsnmNm}"/>
</span>
</li>
<li><span class="footer__third__th">대표자</span><span class="footer__third__td"><c:out value="${operBsnmInfo.reprsntvnm}"/></span></li>
<li><span class="footer__third__th">주소</span><span class="footer__third__td">
<c:choose>
<c:when test = "${not empty operBsnmInfo.rnmAdres && not empty operBsnmInfo.lnbAdres}">
<c:out value="${operBsnmInfo.lnbAdres}"/>
</c:when>
<c:when test = "${empty operBsnmInfo.rnmAdres && not empty operBsnmInfo.lnbAdres}">
<c:out value="${operBsnmInfo.lnbAdres}"/>
</c:when>
<c:when test = "${not empty operBsnmInfo.rnmAdres && empty operBsnmInfo.lnbAdres}">
<c:out value="${operBsnmInfo.rnmAdres}"/>
</c:when>
</c:choose> <c:out value="${operBsnmInfo.dtlAdres}"/></span></li>
<li><span class="footer__third__th">대표전화</span><span class="footer__third__td"><c:out value="${sopmalInfo.reprsntTelnb}"/></span>
</li>
<li><span class="footer__third__th">대표이메일</span>
<a href="mailto:<c:out value='${sopmalInfo.reprsntEmail}'/>" class="footer__third__td"><strong><c:out value="${sopmalInfo.reprsntEmail}"/></strong></a>
</li>
<li><span class="footer__third__th">사업자 등록번호</span><span
class="footer__third__td"><c:out value="${operBsnmInfo.bizrnb}"/></span>
<a href="javascript:;" onclick="window.open('https://www.ftc.go.kr/bizCommPop.do?wrkr_no=<c:out value="${operBsnmInfo.replaceBizrnb}"/>','communicationViewPopup','width=750,height=700,scrollbars=yes')" class="footer__underLine">사업자정보확인</a>
</li>
<li><span class="footer__third__th">개인정보관리책임자</span><span class="footer__third__td"><c:out value="${operBsnmInfo.indvdlinfoPrtcRspnberNm}"/></span>
</li>
<li><span class="footer__third__th">통신판매업 신고번호</span><span class="footer__third__td"><c:out value="${sleBsnmInfo.mobDclNb}"/></span></li>
</ul>
<div class="footer__logo">
</div>
<p class="footer__copyright">ⓒ<c:out value="${sleBsnmInfo.bsnmNm}"/> All rights reserved.</p>
<%--로딩이미지--%>
<img src="/mobile/images/loading.svg" style = "display:none" class = "loadingImg">
</c:otherwise>
</c:choose>
</footer>
<div class="microModal microBottomSheet" id="selerInfo" aria-hidden="true">
<div class="microModal__overlay" tabindex="-1">
<div class="microModal__container" role="dialog" aria-modal="true">
<div class="microModal__body">
<div class="microModal__top">
<button class="microModal__close" aria-label="창 닫기" data-micromodal-close></button>
</div>
<div class="microModal__content">
<div class="deliveryFeeInfo">
<div class="deliveryFeeInfo__item">
<div class="deliveryFeeInfo__controls">
<em>판매자 정보</em>
</div>
<table>
<colgroup>
<col style="width: 40%;">
<col style="width: 60%;">
</colgroup>
<tbody>
<tr>
<th>상호명</th>
<td><c:out value="${sleBsnmInfo.bsnmNm}"/></td>
</tr>
<tr>
<th>대표자</th>
<td><c:out value="${sleBsnmInfo.reprsntvnm}"/></td>
</tr>
<tr>
<th>사업자등록번호</th>
<td><c:out value="${sleBsnmInfo.bizrnb}"/></td>
</tr>
<tr>
<th>통신판매업번호</th>
<td><c:out value="${sleBsnmInfo.mobDclNb}"/></td>
</tr>
<c:if test="${not empty sleBsnmInfo.bsnDclNb}">
<tr>
<th>영업신고번호</th>
<td><c:out value="${sleBsnmInfo.bsnDclNb}"/></td>
</tr>
</c:if>
<tr>
<th>사업장 소재지</th>
<td><c:choose>
<c:when test = "${not empty sleBsnmInfo.rnmAdres && not empty sleBsnmInfo.lnbAdres}">
<c:out value="${sleBsnmInfo.lnbAdres}"/>
</c:when>
<c:when test = "${empty sleBsnmInfo.rnmAdres && not empty sleBsnmInfo.lnbAdres}">
<c:out value="${sleBsnmInfo.lnbAdres}"/>
</c:when>
<c:when test = "${not empty sleBsnmInfo.rnmAdres && empty sleBsnmInfo.lnbAdres}">
<c:out value="${sleBsnmInfo.rnmAdres}"/>
</c:when>
</c:choose><c:out value="${sleBsnmInfo.dtlAdres}"/></td>
</tr>
<c:if test="${footerInfo.footerInfo.sopmalInfo.cscTelnbOrdrPosblAt eq 'Y' && not empty footerInfo.footerInfo.sopmalInfo.cscTelnb}">
<tr>
<th>고객센터</th>
<td><c:out value="${footerInfo.footerInfo.sopmalInfo.cscTelnb}"/></td>
</tr>
</c:if>
<tr>
<th>email</th>
<td><c:out value="${sleBsnmInfo.email}"/></td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<c:if test="${scriptSetup.scriptCnUseAt eq 'Y'}">
${scriptSetup.scriptCn}
</c:if>
<div class="microModal microFullScreen" id="indvdlInfoProcsModal" aria-hidden="true">
<div class="microModal__overlay" tabindex="-1">
<div class="microModal__container" role="dialog" aria-modal="true">
<div class="microModal__body">
<div class="microModal__top">
<h4 class="microModal__title" style="width:105%;">
판매자 개인정보 처리방침
</h4>
<button class="microModal__close" aria-label="창 닫기" data-micromodal-close></button>
</div>
<div class="microModal__content ck-content" id = "indvdlInfoProcsContent">
<input type = "hidden" value = "N" id = "indvdlInfoProcsAjaxAt"/>
</div>
</div>
</div>
</div>
</div>
<script>
/*판매자 개인정보 처리방침 조회*/
const fn_get_indvdlInfoPorcsCn = () => {
const indvdlInfoProcsAjaxAt = $("#indvdlInfoProcsAjaxAt").val();
if (indvdlInfoProcsAjaxAt === 'N') {
$.ajax({
type: 'post',
url: "/sopmal/main/selectIndvdlInfoProcsCn",
data : {stplatDvCd : '08'},
success: function (data) {
data = data.resBody.result;
data = JSON.parse(data);
let clauseList = data.clauseList;
if (clauseList) {
let i = 0;
clauseList.forEach(function (item) {
if (i === 0) {
$("#indvdlInfoProcsAjaxAt").after(item.stplatCn);
return false;
}
});
}
$("#indvdlInfoProcsAjaxAt").val("Y");
}
});
}
openModal('indvdlInfoProcsModal');
};
</script>
<c:if test="${sopmallInfo.shopInfo.sopmalCd eq 'DL'}">
<script>
(function(){var w=window;if(w.ChannelIO){return w.console.error("ChannelIO script included twice.");}var ch=function(){ch.c(arguments);};ch.q=[];ch.c=function(args){ch.q.push(args);};w.ChannelIO=ch;function l(){if(w.ChannelIOInitialized){return;}w.ChannelIOInitialized=true;var s=document.createElement("script");s.type="text/javascript";s.async=true;s.src="https://cdn.channel.io/plugin/ch-plugin-web.js";var x=document.getElementsByTagName("script")[0];if(x.parentNode){x.parentNode.insertBefore(s,x);}}if(document.readyState==="complete"){l();}else{w.addEventListener("DOMContentLoaded",l);w.addEventListener("load",l);}})();
ChannelIO('boot', {
"pluginKey": "f73ed102-2f9c-44ff-ab17-dc18045401a2" // fill your plugin key
});
</script>
</c:if>

View File

@@ -0,0 +1,44 @@
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%>
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>
<spring:eval expression="@environment.getProperty('sopmalfo.common.fileupload.cdnurl')" var="cdnurl"/>
<div class="header__wrapper">
<div class="header__controls-wrapper">
<div class="header__controls">
<div class="header__toBack">
<c:if test = "${!(fn:contains('/sopmal/ordr/selectOrdrCompt',accessUri)||fn:contains('/sopmal/ordr/selectOrdrFailr',accessUri))}"><%--주문완료와 주문실패는 뒤로가기 버튼 미노출--%>
<button type="button" class="header__toBack__btn" >
<span class="visually-hidden">뒤로가기</span>
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" fill="none"
viewBox="0 0 24 24">
<path fill="#1A1A1A"
d="M16.598 3.338a.75.75 0 0 0-1.061 0l-8.132 8.131a.75.75 0 0 0 0 1.061l8.132 8.132a.75.75 0 0 0 1.06-1.06L8.998 12l7.6-7.602a.75.75 0 0 0 0-1.06Z">
</path>
</svg>
</button>
</c:if>
</div>
<h1 class="header__title" id="headerTitle"></h1><%--각자 페이지에 맞게 set해야함--%>
<div class="header__btn-container">
<button class="header__btn" onclick="fn_search_open();" type="button"><i class="icon icon_nav-search"></i><span
class="visually-hidden">검색</span></button>
<button type="button" class="header__btn" onclick="location.href='/sopmal/ordr/selectSpbk';">
<span class="number-badge headerCartCnt"><c:out value="${topBarInfo.cartCnt}"/></span>
<i class="icon icon_nav-cart"></i>
<span class="visually-hidden">장바구니</span>
</button>
<button type="button" class="header__btn" onclick="fn_select_mbrInfo('<c:out value="${cdnurl}"/>',${isAuthenticated}); openModal('hamburger-menu');">
<i class="icon icon_nav-menu"></i>
<span class="visually-hidden">메뉴</span>
</button>
</div>
</div>
</div>
</div>
<script>
//뒤로가기 이벤트 부여, 각 페이지 마다 이벤트 삭제 후 다른 이벤트 사용 가능
$(".header__toBack__btn").on("click",function (){
fn_go_back();
});
</script>

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,93 @@
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions"%>
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%>
<spring:eval expression="@environment.getProperty('sopmalfo.common.fileupload.cdnurl')" var="cdnurl"/>
<!-- 헤더 영역 -->
<header class="header">
<c:choose>
<c:when test = "${not empty topBarInfo.case15}">
<!-- 최상단 띠배너 -->
<div class="top-banner">
<div class="swiper top-banner-swiper">
<div class="swiper-wrapper">
<c:forEach items="${ topBarInfo.case15 }" var="case15" varStatus="status">
<div class="swiper-slide top-banner__image">
<a href="${ case15.itmeCnncUrl }">
<img src="${cdnurl}${ case15.filCours }/${ case15.sysFilNm }"
alt="해당 이미지에 대한 설명">
</a>
</div>
</c:forEach>
</div>
</div>
<div class=" top-banner__btn-container">
<button class="top-banner__close">
<span class="visually-hidden">닫기</span>
</button>
</div>
</div>
</c:when>
<c:otherwise>
<!-- 최상단 띠배너 -->
<div class="top-banner" style="display: none;">
</div>
</c:otherwise>
</c:choose>
<div class="header__wrapper">
<div class="header__controls-wrapper">
<div class="header__controls">
<a class="header__home-link" href="">
<img src="${ cdnurl }${ topBarInfo.topbar.topFilCours }/${ topBarInfo.topbar.topSysFilNm }" alt="<c:out value="${sopmallInfo.shopInfo.sopmalNm}"/>">
</a>
<div class="header__btn-container">
<button class="header__btn" onclick="fn_search_open();" type="button">
<i class="icon icon_nav-search"></i>
<span class="visually-hidden">검색</span>
</button>
<!-- <button class="header__btn" onclick="setTopMenuCode(); location.href='/sopmal/ordr/selectSpbk';"> -->
<button class="header__btn" onclick="location.href='/sopmal/ordr/selectSpbk';">
<span class="number-badge headerCartCnt">${ topBarInfo.cartCnt }</span>
<i class="icon icon_nav-cart"></i><span class="visually-hidden">장바구니</span></button>
<button class="header__btn" onclick="fn_select_mbrInfo('<c:out value="${cdnurl}"/>',${isAuthenticated}); openModal('hamburger-menu');">
<i class="icon icon_nav-menu"></i>
<span class="visually-hidden">메뉴</span>
</button>
</div>
</div>
</div>
<nav class="home-category">
<div class="home-category__content">
<ul class="home-category__list">
<c:if test="${!empty sopmallInfo}">
<c:forEach var="topMenuList" items="${sopmallInfo.menuList}" varStatus="status">
<c:if test="${topMenuList.ctgryDvCd eq '01' && topMenuList.menuExpsrAt eq 'Y'}">
<c:if test="${topMenuList.rnum eq '2'}">
<li class="home-category__item">
<a href="<c:out value="${topMenuList.url}"/>" onclick="setTopMenuCode()" <c:if test="${not empty topMenuList.menuChrColor}"> style="color:${topMenuList.menuChrColor};"</c:if>><c:out value ="${topMenuList.ctgryNm}"/></a>
</li>
</c:if>
</c:if>
</c:forEach>
</c:if>
</ul>
</div>
</nav>
</div>
</header>
<script>
// 상단 띠 배너 스크립트
const topBannerSwiper = new Swiper(".top-banner-swiper", {
loop: true,
autoplay: {
delay: 4000,
},
});
// 상단 띠 배너 닫기 버튼
$(".top-banner__close").click(function () {
$(".top-banner").remove();
});
</script>

View File

@@ -0,0 +1,273 @@
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags" %>
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions"%>
<spring:eval expression="@environment.getProperty('sopmalfo.common.fileupload.cdnurl')" var="cdnurl"/>
<aside class="tab-bar">
<nav class="tab-bar__nav">
<a class="tab-bar__link" onclick="fn_select_mbrInfo('<c:out value="${cdnurl}"/>',${isAuthenticated}); openModal('hamburger-menu');">
<i class="icon icon_tab-bar-category"></i>
카테고리</a>
<a class="tab-bar__link" href="/sopmal/mpage/ordr/selectWslistInqireForm" id="tabBarWishOrBnft" data-sopmalcd="${sopmallInfo.shopInfo.sopmalCd}">
<i class="icon icon_tab-bar-wishlist"></i>
위시리스트</a>
<div class="tab-bar__home-wrapper">
<div class="tab-bar__home">
<a href="/" class="hide-text">
<i class="icon icon_tab-bar-home"></i>
<span class="visually-hidden">홈</span>
</a>
</div>
</div>
<a class="tab-bar__link" href="/sopmal/ordr/selectSpbk">
<i class="icon icon_tab-bar-cart"></i>
장바구니</a>
<a class="tab-bar__link active" href="/sopmal/mpage/mbr/selectMpageMainInqire">
<i class="icon icon_tab-bar-mypage"></i>
마이페이지
</a>
</nav>
<div class="tab-bar__bg">
<div class="tab-bar__bg-fraction"></div>
</div>
</aside>
<!-- 햄버거 메뉴 모달 -->
<div class="microModal microFullMenu" id="hamburger-menu" aria-hidden="true">
<div class="microModal__overlay" tabindex="-1">
<div class="microModal__container" role="dialog" aria-modal="true">
<div class="microModal__body" id = "hambergerModal">
<div class="microModal__top">
<h2 class="microModal__title">
전체메뉴
</h2>
<button type="button" class="microModal__close" onclick="closeModal('hamburger-menu');"></button>
</div>
<div class="microModal__content">
<div class="fullMenu">
<c:if test="${not isAuthenticated}">
<div class="sub-box">
<div class="fullMenu__top">
<button type="button" class="btn md outline" onclick="fn_move_login();">로그인</button>
<button type="button" class="btn md theme" onclick="location.href='/sopmal/mbr/selectJoinGuidance'; setTopMenuCode(); ">회원가입</button>
</div>
</div>
</c:if>
<div class="sub-box">
<div class="fullMenu__top">
<div class="member-rank-summary">
<div class="textBtns">
<a href="/sopmal/ordr/selectSpbk" class="textBtns__btn">장바구니</a>
<c:choose>
<c:when test="${isAuthenticated}"><%--회원일시--%>
<a href="/sopmal/mpage/mbr/selectMpageMainInqire" class="textBtns__btn">마이페이지</a>
<a href="/logout" class="textBtns__btn">로그아웃</a>
</c:when>
<c:otherwise><%--비회원일시--%>
<a href="/sopmal/mpage/ordr/selectMbrOrdrListInqire" class="textBtns__btn">주문조회</a>
</c:otherwise>
</c:choose>
</div>
<c:if test = "${isAuthenticated}">
<div class="member-rank-summary__top">
<div class="member-rank-summary__icon" id = "hambergerGradImg"></div>
<a href="/sopmal/mpage/mbr/selectMpageMainInqire" class="member-rank-summary__user">
<span class="member-rank-summary__rank" id = "hambergerGradNm"></span>
<span class="member-rank-summary__name" id = "hambergermbrNm"></span>
</a>
<a class="member-rank-summary__benefit-link" href="/sopmal/mpage/bnef/selectMbrGradInqire">등급별 혜택</a>
</div>
<div class="member-rank-summary__bottom">
<div class="member-rank-summary__summary">
<a href="/sopmal/mpage/bnef/selectMlgDtlsInqireForm" class="member-rank-summary__summary-item">
<img src="/mobile/images/icon_member-rank-mileage.png"
alt="">
<div class="member-rank-summary__summary-description">
<span class="member-rank-summary__summary-name">마일리지</span>
<p class="member-rank-summary__summary-numberContainer">
<span
class="member-rank-summary__summary-number comma"
id = "hambergerMbrMlgAmt"></span>
<span
class="member-rank-summary__summary-numberUnit">원</span>
</p>
</div>
</a>
<a href="/sopmal/mpage/bnef/selectCouponDtlsForm" class="member-rank-summary__summary-item">
<img src="/mobile/images/icon_member-rank-coupon.png" alt="">
<div class="member-rank-summary__summary-description">
<span class="member-rank-summary__summary-name">쿠폰</span>
<p class="member-rank-summary__summary-numberContainer">
<span class="member-rank-summary__summary-number comma" id = "hambergerCoupnCnt"></span>
<span
class="member-rank-summary__summary-numberUnit">장</span>
</p>
</div>
</a>
<a href="/sopmal/mpage/ordr/selectWslistInqireForm" class="member-rank-summary__summary-item">
<img src="/mobile/images/icon_member-rank-wishlist.png" alt="">
<div class="member-rank-summary__summary-description">
<span class="member-rank-summary__summary-name">위시리스트</span>
<p class="member-rank-summary__summary-numberContainer">
<span class="member-rank-summary__summary-number comma"
id = "hambergerWslistCnt"></span>
<span
class="member-rank-summary__summary-numberUnit">개</span>
</p>
</div>
</a>
</div>
</div>
</c:if>
</div>
</div>
</div>
<div class="sub-box">
<div class="menu_navigation_wrap">
<!-- 카테고리 -->
<ul class="side_menu accordion">
<c:if test="${!empty sopmallInfo}">
<c:forEach var="topMenuList" items="${sopmallInfo.menuList}" varStatus="status">
<c:if test="${topMenuList.ctgryDvCd eq '01' && topMenuList.gnbExpsrAt eq 'Y'}">
<c:if test="${topMenuList.rnum eq '2'}">
<li class="isSub list">
<div class="isSubDv">
<a href="<c:out value="${topMenuList.url}"/>" class="depth"><c:out value ="${topMenuList.ctgryNm}"/><em class="visually-hidden">상세내용닫기</em></a>
<a href="<c:out value="${topMenuList.url}"/>" class="moer"></a>
</div>
</c:if>
<c:if test="${'3' eq topMenuList.rnum}">
<!-- 메뉴 하위가 메뉴인 경우-->
<c:if test="${chkUpperMenuCd ne topMenuList.upperCtgryId}">
<ul class="view">
</c:if>
<li><a href='<c:out value="${topMenuList.url}"/>'><c:out value ="${topMenuList.ctgryNm}"/></a></li>
<c:if test="${'0' eq topMenuList.nextDepth3 && '0' eq topMenuList.nextDepth2}">
</ul>
</li>
</c:if>
</c:if>
<c:if test="${topMenuList.rnum < 4}">
<c:set var="chkUpperMenuCd" value="${ topMenuList.upperCtgryId }"/>
</c:if>
</c:if>
</c:forEach>
</c:if>
</ul>
<!-- 최근 본 상품(SIDE) -->
<div class="recently_side" id="recentlySite">
<!-- <div class="swiper recentlySide-swiper"> -->
<!-- <div class="swiper-wrapper" id="recentlySite"> -->
<!-- <div class="swiper-slide recentlySide__image"> -->
<!-- <a href=""> -->
<!-- <img src="/mobile/images/상품이미지01.png" alt="해당 이미지에 대한 설명"> -->
<!-- </a> -->
<!-- </div> -->
<!-- <div class="swiper-slide recentlySide__image"> -->
<!-- <a href=""> -->
<!-- <img src="/mobile/images/상품이미지01.png" alt="해당 이미지에 대한 설명"> -->
<!-- </a> -->
<!-- </div> -->
<!-- <div class="swiper-slide recentlySide__image"> -->
<!-- <a href=""> -->
<!-- <img src="/mobile/images/상품이미지01.png" alt="해당 이미지에 대한 설명"> -->
<!-- </a> -->
<!-- </div> -->
<!-- <div class="swiper-slide recentlySide__image"> -->
<!-- <a href=""> -->
<!-- <img src="/mobile/images/상품이미지01.png" alt="해당 이미지에 대한 설명"> -->
<!-- </a> -->
<!-- </div> -->
<!-- <div class="swiper-slide recentlySide__image"> -->
<!-- <a href=""> -->
<!-- <img src="/mobile/images/상품이미지01.png" alt="해당 이미지에 대한 설명"> -->
<!-- </a> -->
<!-- </div> -->
<!-- </div> -->
<!-- <div class="swiper-pagination theme-pagination"></div> -->
<!-- </div> -->
</div>
</div>
</div>
<div class="sub-box">
<div class="fullMenu__miscLinks">
<h5 class="fullMenu__miscLinks__title">서비스</h5>
<ul class="fullMenu__miscLinks__list">
<li>
<a href="/sopmal/csc/selectCscMainForm" class="fullMenu__miscLinks__link">고객센터</a>
</li>
</ul>
</div>
</div>
<c:if test = "${sopmallInfo.shopInfo.cscTelnbOrdrPosblAt eq 'Y'}">
<div class="sub-box">
<div class="mainNotice__customerContact mainNotice__customerContact--moreInfo">
<i class="icon icon_notice03"></i>
<div class="mainNotice__customerContact__right">
<h4 class="notice__title customer-service">고객센터</h4>
<span class="notice__number"><c:out value="${sopmallInfo.shopInfo.cscTelnb}"/></span>
<p class="notice__paragraph">
<span class="notice__text01"><c:out value="${sopmallInfo.shopInfo.cscWkdayWorkTme}"/></span>
<span class="notice__text02">(<c:out value="${sopmallInfo.shopInfo.cscLunchTme}"/>)</span>
<br>
<span class="notice__text03"><c:out value="${sopmallInfo.shopInfo.cscRstde}"/></span>
</p>
</div>
</div>
</div>
</c:if>
</div>
</div>
</div>
</div>
</div>
</div>
<script>
////햄버거 메뉴 관련 스크립트
// 좌측 메뉴 클릭시 해당 메뉴 보여주기
$('.fullMenu__menu__btn').on('click', function () {
$(this).addClass('current');
$(this).closest('li').siblings().find('.fullMenu__menu__btn').removeClass('current');
var index = $(this).closest('li').index() - 1; // 전체 메뉴 버튼을 뺀 나머지 버튼의 인덱스
$(this).closest('.fullMenu__content').find('.fullMenu__itemSection').eq(index).siblings().hide();
$(this).closest('.fullMenu__content').find('.fullMenu__itemSection').eq(index).show();
});
// 전체 메뉴 클릭시 전체 메뉴 보여주기
$('.fullMenuAll').on('click', function () {
$(this).addClass('current');
$(this).closest('li').siblings().find('.fullMenu__menu__btn').removeClass('current');
$(this).closest('.fullMenu__content').find('.fullMenu__itemSection').show();
});
//
$('.hamburgerTabBtn').on('click', function () {
$('.hamburgerTabBtn').removeClass('active');
$(this).addClass('active');
var index = $(this).closest('li').index();
$('.fullMenu__content').removeClass('active');
$('.fullMenu__content').eq(index).addClass('active');
});
$(document).ready(function(){
MicroModal.init({
disableScroll: true,
awaitCloseAnimation: true,
});
$(".menu_navigation_wrap .depth").on('click', function () {
/*하위레벨 없을 시 페이지 이동*/
if ($(this).closest(".isSub").find(".view").length === 0) {
const href = $(this).attr("href");
location.href = href;
}
});
});
</script>