2020-11-24 17:11:51 +09:00
|
|
|
@{
|
|
|
|
|
Layout = null;
|
2020-11-27 09:31:40 +09:00
|
|
|
var naverClientId = ViewBag.naverClientID;
|
|
|
|
|
var kakaoClientId = ViewBag.kakaoClientID;
|
|
|
|
|
var googleClientId = ViewBag.googleClientID;
|
2020-11-24 17:11:51 +09:00
|
|
|
}
|
|
|
|
|
<head>
|
|
|
|
|
<!-- SNS -->
|
|
|
|
|
@Html.Partial("./Partial/JS")
|
|
|
|
|
<script type="text/javascript" src="/js/naveridlogin_js_sdk_2.0.0.js"></script>
|
|
|
|
|
</head>
|
|
|
|
|
<script>
|
|
|
|
|
/*(1) 네이버 Javscript 설정 정보 및 초기화*/
|
|
|
|
|
var snsid;
|
|
|
|
|
var naverLogin = new naver.LoginWithNaverId(
|
|
|
|
|
{
|
2020-11-25 16:04:00 +09:00
|
|
|
clientId: "@naverClientId", //개발자센터에 등록한 ClientID
|
2020-12-21 08:37:18 +09:00
|
|
|
callbackUrl: "https://cte.nptc.kr/Account/NaverCallback",//개발자센터에 등록한 callback Url
|
2020-11-24 17:11:51 +09:00
|
|
|
isPopup: false, /* 팝업을 통한 연동처리 여부 */
|
|
|
|
|
callbackHandle: true
|
|
|
|
|
/* callback 페이지가 분리되었을 경우에 callback 페이지에서는 callback처리를 해줄수 있도록 설정합니다. */
|
|
|
|
|
}
|
|
|
|
|
);
|
|
|
|
|
/* (2) 네이버 로그인 정보를 초기화하기 위하여 init을 호출 */
|
|
|
|
|
naverLogin.init();
|
|
|
|
|
|
|
|
|
|
/* (3) Callback의 처리. 정상적으로 Callback 처리가 완료될 경우 main page로 redirect(또는 Popup close) */
|
|
|
|
|
window.addEventListener('load', function () {
|
2020-11-27 11:26:19 +09:00
|
|
|
window.resizeTo("500", "500");
|
|
|
|
|
|
2020-11-24 17:11:51 +09:00
|
|
|
naverLogin.getLoginStatus(function (status) {
|
|
|
|
|
if (status) {
|
|
|
|
|
/* (4) 필수적으로 받아야하는 프로필 정보가 있다면 callback처리 시점에 체크 */
|
|
|
|
|
var email = naverLogin.user.getEmail();
|
|
|
|
|
var name = naverLogin.user.getName();
|
|
|
|
|
var uniqId = naverLogin.user.getId();
|
|
|
|
|
var profileImage = naverLogin.user.getProfileImage();
|
|
|
|
|
var birthday = naverLogin.user.getBirthday();
|
|
|
|
|
var age = naverLogin.user.getAge();
|
|
|
|
|
if (email == undefined || email == null) {
|
|
|
|
|
alert("이메일은 필수정보입니다. 정보제공을 동의해주세요.");
|
|
|
|
|
/* (4-1) 사용자 정보 재동의를 위하여 다시 네이버로그인 동의페이지로 이동함 */
|
|
|
|
|
naverLogin.reprompt();
|
|
|
|
|
return;
|
|
|
|
|
}
|
|
|
|
|
if (name == undefined || name == null) {
|
|
|
|
|
alert("이름은 필수정보입니다. 정보제공을 동의해주세요.");
|
|
|
|
|
naverLogin.reprompt();
|
|
|
|
|
return;
|
|
|
|
|
}
|
|
|
|
|
snsid = uniqId;
|
|
|
|
|
//0:일반회원가입,1:google,2:naver,3:kakao
|
|
|
|
|
capp("/focommon/CheckExistSnsId", { snsid: uniqId, jointype: 2 }, "snslogin");
|
|
|
|
|
} else {
|
2020-11-27 10:29:23 +09:00
|
|
|
alert("네이버 AccessToken이 올바르지 않습니다. 관리자에게 문의하세요. error status[" + status + "]");
|
2020-11-24 17:11:51 +09:00
|
|
|
}
|
|
|
|
|
});
|
|
|
|
|
});
|
|
|
|
|
function snslogin() {
|
|
|
|
|
if (capResult.code > 0) {
|
|
|
|
|
capp("/focommon/SnsLogin", { uid: snsid, isSns: true }, "goHome()");
|
|
|
|
|
}
|
|
|
|
|
else {
|
2020-12-28 14:49:31 +09:00
|
|
|
if (confirm("네이버와 연동된 회원정보가 존재하지 않습니다.\r\n일반 로그인 후 SNS ID와 연동 기능을 이용하세요.")) {
|
2021-01-04 11:00:30 +09:00
|
|
|
goIndex();
|
2020-11-24 17:11:51 +09:00
|
|
|
}
|
|
|
|
|
else {
|
|
|
|
|
goIndex();
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
function goJoin() {
|
2020-12-16 13:39:57 +09:00
|
|
|
opener.location.href = "/Account/Join?jointype=2";
|
2020-11-26 10:39:18 +09:00
|
|
|
self.close();
|
2020-11-24 17:11:51 +09:00
|
|
|
}
|
|
|
|
|
function goHome() {
|
2020-11-27 13:55:01 +09:00
|
|
|
if (capResult.code > 0) {
|
2020-12-21 08:37:18 +09:00
|
|
|
opener.location.href = "https://cte.nptc.kr";
|
2020-11-27 13:55:01 +09:00
|
|
|
self.close();
|
|
|
|
|
}
|
2020-11-24 17:11:51 +09:00
|
|
|
}
|
|
|
|
|
function goIndex() {
|
2020-12-16 13:39:57 +09:00
|
|
|
opener.location.href = "/Account/Index";
|
2020-11-26 10:39:18 +09:00
|
|
|
self.close();
|
2020-11-24 17:11:51 +09:00
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
</script>
|