Files
egbim_homepage/eng/skin/member/basic/forbim.skin.php
T
2026-07-27 17:23:52 +09:00

489 lines
19 KiB
PHP
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<?php include_once __DIR__ . '/asset_urls.php'; ?>
<!DOCTYPE html>
<html lang="en">
<head>
<!-- Google tag (gtag.js) -->
<script async src="https://www.googletagmanager.com/gtag/js?id=G-STZ2R5Q7HG"></script>
<script>
window.dataLayer = window.dataLayer || [];
function gtag() {
dataLayer.push(arguments);
}
gtag('js', new Date());
gtag('config', 'G-STZ2R5Q7HG');
</script>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>for BIM</title>
<link rel="stylesheet" href="../css/reset.css" />
<link rel="stylesheet" href="../css/font.css" />
<link rel="stylesheet" href="../css/style.css" />
<link rel="stylesheet" href="https://unpkg.com/aos@2.3.1/dist/aos.css" type="text/css" />
<script src="https://unpkg.com/aos@2.3.1/dist/aos.js"></script>
<script src="https://unpkg.com/lenis@1.1.9/dist/lenis.min.js"></script>
<link rel="stylesheet" href="https://unpkg.com/lenis@1.1.9/dist/lenis.css">
<script type="text/javascript" src="../js/jquery-3.6.1.min.js"></script>
<script type="text/javascript" src="../js/jquery.mousewheel.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/gsap@3.12.5/dist/gsap.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/gsap@3.12.5/dist/ScrollTrigger.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/gsap@3.12.5/dist/ScrollToPlugin.min.js"></script>
<script type="text/javascript" src="../js/common.js"></script>
<script type="text/javascript" src="../js/popup.js"></script>
<script type="text/javascript" src="../js/forbim.js"></script>
</head>
<body>
<!-- "js__"로 시작하는 클래스는 only 자바스크립트용입니다. -->
<!-- XXXX js__넣어서 css 작성 금지 XXXX -->
<div class="wrapper">
<input id="hid_mb_id" type="hidden" value="<?echo $_SESSION['session_id'];?>"></input>
<!-- HEADER -->
<?php include_once($member_skin_path.'/main_header.skin.php'); ?>
<!-- //Header -->
<!-- 모든 팝업페이지 경로 -->
<?php
include_once($member_skin_path.'/login.skin.php');
include_once($member_skin_path.'/mypage01.skin.php');
include_once($member_skin_path.'/register.skin.php');
include_once($member_skin_path.'/register_form.skin.php');
include_once($member_skin_path.'/mypage02.skin.php');
include_once($member_skin_path.'/mypage03.skin.php');
include_once($member_skin_path.'/sitemap.skin.php');
include_once($member_skin_path.'/privacy.skin.php');
include_once($member_skin_path.'/password_lost.skin.php');
?>
<!-- 컨텐츠 시작 -->
<div class="container forbim">
<section class="intro">
<div class="top js__dark">
<h2 data-aos="fade-down" data-aos-duration="1000">for BIM</h2>
<span>In the Digital Transformation Era, View Drawings and BIM Models Together</span>
</div>
<div class="keyword">
<i class="egbim_obj k"></i>
<span>View 3D BIM Models<br> Alongside Drawings with a Double Click</span>
<p>EG-BIM provides a feature that allows users to easily view complex design information<br> that is difficult to check from drawings alone together with BIM models through the 3D Viewer.</p>
</div>
<div class="visual" data-aos="fade-up" data-aos-duration="1000">
<img src="<?php echo eng_img_url('forbim_visual.png'); ?>" alt="">
</div>
</section>
<section class="theorys js__dark full_screen">
<span class="mid_tit" data-aos="fade-down" data-aos-duration="1000">
“ Cross Checking Between<br class="brk"><b class="gr_txt">BIM Model Data</b> & <b class="og_txt">Drawings</b> ”
</span>
<div class="diagram_wrap" data-aos="fade-up" data-aos-duration="1000">
<div class="dia_elements_wrap">
<div class="dia_element">
<ul class="dia_text">
<li>Location Data</li>
<li>Shape Data</li>
<li>Property Information</li>
</ul>
<div class="line"></div>
</div>
<div class="dia_element">
<ul class="dia_text">
<li>Longitudinal Section</li>
<li>General Drawing</li>
<li>Detail Drawing</li>
</ul>
<div class="line"></div>
</div>
</div>
<div class="dia_circles_wrap">
<div class="circle_bim">
<div class="circle_belt"></div>
<div class="circle_core">
<span>BIM Model</span>
<i></i>
</div>
<div class="circle_dots move">
<div class="dot"></div>
</div>
<div class="circle_dots">
<div class="dot"></div>
</div>
</div>
<div class="circle_floorplan">
<div class="circle_belt"></div>
<div class="circle_core">
<span>Drawing</span>
<i></i>
</div>
<div class="circle_dots move">
<div class="dot"></div>
</div>
<div class="circle_dots">
<div class="dot"></div>
</div>
</div>
</div>
</div>
</section>
<section class="layout_fix_left process">
<div class="left" data-aos="fade-right" data-aos-duration="1000">
<div class="bg js__fixLeft_bg on"></div>
<div class="bg js__fixLeft_bg"></div>
<span class="mid_tit js__fixLeft_tit on">
<font class="num">01. </font>Simultaneous<br> <em>Drawing & BIM View</em>
</span>
<span class="mid_tit js__fixLeft_tit">
<font class="num">02. </font><em>Detailed<br> </em>BIM Model View</em>
</span>
</div>
<div class="right js__fixLeft_secs">
<span class="mid_tit m" style="display:none;">
<font class="num">01. </font>Simultaneous Drawing & BIM View
</span>
<div id="content1" class="link">
<span class="sub_tit">
<img src="<?php echo eng_img_url('ico_forbim_link.svg'); ?>" alt="">
Data Linkage Between Drawings and BIM Models
</span>
<div class="sub_text">
With data linkage between drawings and BIM models, selected components are displayed in real time, enabling users to view both simultaneously and check their location, shape, and property information.
</div>
<div class="sub_figs">
<div class="fig01"><span>Drawings</span></div>
<div class="fig02"><span>BIM Models</span></div>
<div class="fig03"><span>Property Information</span></div>
<div class="fig04"><span>Real-time display of selected components</span></div>
</div>
</div>
<span class="mid_tit m" style="display:none;">
<font class="num">02. </font>Detailed BIM Model View
</span>
<div id="content2" class="info">
<span class="sub_tit">
<img src="<?php echo eng_img_url('ico_forbim_check.svg'); ?>" alt="">
Check BIM Model Property Information and Geometry
</span>
<div class="sub_text">
<span>
Through the various visualization features of the 3D Viewer, users can closely examine the models geometry and the interference relationships between each component.
</span>
</div>
<div class="sub_figs">
<div><span>Displays component-specific property information, toggles layers On/Off, applies clipping and transparency, and adjusts scale</span></div>
</div>
</div>
</div>
</section>
</div>
<!-- FOOTER -->
<?php include_once($member_skin_path.'/main_footer.skin.php'); ?>
<!-- //FOOTER -->
</div>
<script>
AOS.init();
const lenis = new Lenis()
lenis.on('scroll', (e) => {
// console.log(e)
})
lenis.on('scroll', ScrollTrigger.update)
gsap.ticker.add((time) => {
lenis.raf(time * 1000)
})
gsap.ticker.lagSmoothing(0)
</script>
</body>
<script>
// 회원 탈퇴
function member_leave() {
if (confirm("회원에서 탈퇴 하시겠습니까?"))
location.href = '<?php echo G5_BBS_URL ?>/member_leave.php';
}
// 회원 탈퇴
let x = document.cookie;
if(x.includes("tmp_1=John")){
deleteCookie("tmp_1");
$('#pop_mypage02').show();
}
function deleteCookie(name) {
document.cookie = name + "=; expires=Thu, 01 Jan 1970 00:00:00 UTC; path=/eng;";
document.cookie = name + "=; expires=Thu, 01 Jan 1970 00:00:00 UTC; path=/eng/bbs;";
document.cookie = name + "=; expires=Thu, 01 Jan 1970 00:00:00 UTC; path=/eng/faq;";
document.cookie = name + "=; expires=Thu, 01 Jan 1970 00:00:00 UTC; path=/eng/qa;";
}
function getCookie(cname) {
let name = cname + "=";
let decodedCookie = decodeURIComponent(document.cookie);
let ca = decodedCookie.split(';');
for(let i = 0; i <ca.length; i++) {
let c = ca[i];
while (c.charAt(0) == ' ') {
c = c.substring(1);
}
if (c.indexOf(name) == 0) {
return c.substring(name.length, c.length);
}
}
return "";
}
//descope 로그인, 로그아웃 js
function updateHeaderMenu() {
var isLoggedIn = !!sessionStorage.getItem("sessionJwt");
// role 체크 예시 (로그인 시 저장해놓은 값)
var isAdmin = sessionStorage.getItem('userRole') === 'super';
if (isLoggedIn) {
$('.my_join2, .my_login2').show();
$('.my_join, .my_login').hide();
// 마이페이지/관리자 메뉴 동적 출력
if (isAdmin) {
$('#my_join2').html("<a href='http://eg-bim.com/eng/adm/index.php' target='_blank'>관리페이지</a>");
} else {
$('#my_join2').html("<a href='javascript:mypage03();'>My Page</a>");
}
} else {
$('.my_join2, .my_login2').hide();
$('.my_join, .my_login').show();
$('#my_join2').html(""); // 혹시모를 내용 초기화
}
}
function descopeLogout() {
fetch('/eng/skin/member/basic/descope_logout.php', {
method: 'POST',
credentials: 'include' // PHPSESSID 쿠키 전송
})
.then(res => {
if (!res.ok) throw new Error('서버 로그아웃 실패');
// 1) 로컬 저장소 정리
// sessionStorage.removeItem("refreshJwt");
// sessionStorage.removeItem("sessionJwt");
// sessionStorage.removeItem("userRole");
// sessionStorage.removeItem("userName");
// sessionStorage.removeItem("loginId");
sessionStorage.clear();
localStorage.clear();
// 2) UI 갱신
updateHeaderMenu();
// 3) 로그인 페이지로 이동
window.location.href = '/eng/index.php';
})
.catch(err => {
console.error(err);
alert('로그아웃 중 오류가 발생했습니다.');
});
}
$(document).ready(function() {
// 기존에 있던 updateHeaderMenu() 호출 뒤에
$('#my_login2 a').off('click').on('click', function(e){
e.preventDefault();
descopeLogout();
});
});
$(document).ready(function() {
updateHeaderMenu();
// (필요하다면, 로그인 성공 후에도 항상 updateHeaderMenu(); 호출)
});
//descope login
$('#flogin button[type=submit]').click(function(e){
e.preventDefault();
let mb_id = $('#login_id').val();
let mb_password = $('#login_pw').val();
$.ajax({
url : '/eng/skin/member/basic/descope_login.php',
data : {
'mb_id' : mb_id,
'mb_password' : mb_password
},
type : "POST",
dataType : "json",
success : function(res){
if(res.status === "ok") {
// 토큰 저장
// sessionStorage.setItem("refreshJwt", res.refreshJwt);
sessionStorage.setItem("sessionJwt", res.sessionJwt);
// ✅ 사용자 정보 저장
if (res.user) {
sessionStorage.setItem("loginId", res.user.loginIds?.[0] || '');
sessionStorage.setItem("userName", res.user.name || '');
sessionStorage.setItem("company", res.user.customAttributes?.company || '');
sessionStorage.setItem("familyCompany", res.user.customAttributes?.familyCompany || '');
sessionStorage.setItem("position", res.user.customAttributes?.position || '');
sessionStorage.setItem("team", res.user.customAttributes?.team || '');
sessionStorage.setItem("familyUniqueKey", res.user.customAttributes?.familyUniqueKey || '');
sessionStorage.setItem("phone", res.user.phone || '');
}
// ✅ 추가: 관리자 등 정보 저장
if(res.user && res.user.roleNames && res.user.roleNames[0])
sessionStorage.setItem("userRole", res.user.roleNames[0]);
else
sessionStorage.removeItem("userRole");
// ✅ 로그인 후 메뉴 갱신
updateHeaderMenu();
// UI 처리
$('.popup_wrap').hide();
$('body').css('overflow', '');
lenis.start();
// alert('로그인 하셨습니다.');
} else {
alert(res.message || "로그인 실패");
// 🔴 실패 횟수에 따라 안내 배너 교체
if (res.failCount && res.failCount >= 8) {
updateLoginBanner("fail");
}
}
},
error : function(err){
alert(err.statusText || "통신 오류");
}
});
});
// ✅ 배너 교체 함수
function updateLoginBanner(type = "default") {
const $banner = $('#login_notice_banner');
if (!$banner.length) return;
if (type === "default") {
$banner.css({ background: "#063e01ff", color: "#fff" });
$banner.find("strong").text("[로그인 시스템 변경 안내]");
$banner.find("p.left").html(`
더 나은 보안을 위해 2025년 8월 8일부터 로그인 시스템이 변경되었습니다.<br>
기존 회원 또한 신규 시스템에 맞춰 재가입을 진행해주시기 바랍니다.
`);
$banner.find("p:last").html(`※ 로그인 및 가입 관련 문의: <strong>010-8721-7453</strong>`);
}
if (type === "fail") {
$banner.css({ background: "#6a0202ff", color: "#faf6f6ff" });
$banner.find("strong").text("[로그인 시도 제한 안내]");
$banner.find("p.left").html(`
비밀번호 입력을 <strong>7회 이상 연속 실패</strong>하셨습니다.<br>
<strong>8번째 시도부터 3분 대기</strong>가 적용됩니다.<br>
10회 이상 실패 시 계정이 잠금 처리됩니다.
`);
$banner.find("p:last").text("");
}
}
//회원가입 약관동의
// $('#fregister button[type=submit]').click(function(e){
// e.preventDefault();
// let agree11 = $('#agree11').val();
// let agree21 = $('#agree21').val();
// $.ajax({
// url : '<?php echo G5_URL ?>/bbs/register_form.php',
// type : "POST",
// datatype : "json",
// contentType: 'application/json; charset=utf-8',
// data : {
// 'agree11' : agree11,
// 'agree21' : agree21
// },
// success : function(data){
// var ss='';
// for(i=0; i<data.length; i++){
// ss=ss + data[i];
// }
// },
// error : function(err){
// alert(err);
// }
// });
// });
// 이지빔 프로그램 회원가입 url 쿼리스트링 파싱 함수
function getQueryString(name) {
const intro = document.querySelector('.intro_wrap');
const mainMask = document.querySelector('.main_mask');
if (intro) {
intro.style.display = "none";
}
if (mainMask) {
mainMask.classList.add('skip');
}
// mainMask.style.aimation = 'none';
const urlParams = new URLSearchParams(window.location.search);
return urlParams.get(name);
}
$(document).ready(function() {
const popupParam = getQueryString('popup');
if (popupParam === 'signup') {
console.log('쿼리 감지: signup → 회원가입 팝업 자동 오픈 시도');
$('#pop_agreement').show(); // 팝업 보여주기
// 스크롤 잠금 (사용 중이면)
$('body').css('overflow', 'hidden');
if (typeof lenis !== 'undefined') {
lenis.stop();
}
}
// 팝업 닫기 버튼 이벤트 연결
$('#pop_agreement .btn_close').on('click', function() {
$('#pop_agreement').hide();
$('body').css('overflow', '');
if (typeof lenis !== 'undefined') {
lenis.start();
}
});
});
//이지빔 프로그램 비밀번호 재설정 url 쿼리스트링 파싱 함수
$(document).ready(function() {
const urlParams = new URLSearchParams(window.location.search);
const popup = urlParams.get('popup');
const token = urlParams.get('t');
if (popup === 'pwreset') {
// 팝업 전체 열기
$('#pop_search').show();
$('body').css('overflow', 'hidden');
// 내부 컨텐츠 모두 숨기기
$('#pop_search .popup_contents_wrap').hide();
if (token) {
// 토큰이 있으면 비밀번호 재설정 단계
if (!sessionStorage.getItem('pwreset_shown')) {
$('#password_reset').show();
sessionStorage.setItem('pwreset_shown', '1');
}
} else {
// 토큰이 없으면 아이디 입력 단계 (첫 번째 .popup_contents_wrap)
$('#pop_search .popup_contents_wrap').first().show();
}
}
// 닫기 버튼
$('#pop_search .btn_close').on('click', function() {
$('#pop_search').hide();
$('body').css('overflow', '');
});
});
</script>