var APP_KEY = "jt"; var ENCID_KEY = "raklu-" + APP_KEY + "-encid"; var CUST_ID = ""; var IS_SMOKING = false; var IS_VERIFIED = false; var QueryString = function () { var query_string = {}; var query = window.location.search.substring(1); var vars = query.split("&"); for (var i = 0; i < vars.length; i++) { var pair = vars[i].split("="); // If first entry with this name if (typeof query_string[pair[0]] === "undefined") { query_string[pair[0]] = decodeURIComponent(pair[1]); // If second entry with this name } else if (typeof query_string[pair[0]] === "string") { var arr = [query_string[pair[0]], decodeURIComponent(pair[1])]; query_string[pair[0]] = arr; // If third or later entry with this name } else { query_string[pair[0]].push(decodeURIComponent(pair[1])); } } return query_string; }(); function rakluIdInit(snslogin, successCallback, errorCallback) { if (getFromStorage(ENCID_KEY) === undefined) { if (QueryString.id === undefined) { if(snslogin){ clearFromStorage(ENCID_KEY); //alert("Raklu IDがない"); errorCallback(); }else{ $.get("https://raklu.jp/id/n/?key=" + APP_KEY, function (r) { setToStorage(ENCID_KEY, r); CUST_ID = r; successCallback(); } ); } } else { CUST_ID = QueryString.id; setToStorage(ENCID_KEY, CUST_ID); window.location.href = window.location.pathname; } } else { CUST_ID = getFromStorage(ENCID_KEY); $.get("https://app.raklu.jp/theme/jt/api/getProfile/?id=" + CUST_ID, function(r){ //alert(JSON.stringify(r)); if(r == ""){ clearFromStorage(ENCID_KEY); //alert("profileが空"); errorCallback(); }else{ var profile = JSON.parse(r); console.log(profile); if(profile.sns){ if(profile.age == "0"){ IS_SMOKING = false; }else{ if(profile.smoking == "yes"){ IS_SMOKING = true; }else{ IS_SMOKING = false; } } if(profile.verified == "yes"){ IS_VERIFIED = true; }else{ IS_VERIFIED = false; } //alert("ログインOK"); successCallback(); }else{ clearFromStorage(ENCID_KEY); //alert("snsエントリがない"); errorCallback(); } } } ); } } function storageAvailable(type) { try { var storage = window[type], x = '__storage_test__'; storage.setItem(x, x); storage.removeItem(x); return true; } catch (e) { return e instanceof DOMException && ( // everything except Firefox e.code === 22 || // Firefox e.code === 1014 || // test name field too, because code might not be present // everything except Firefox e.name === 'QuotaExceededError' || // Firefox e.name === 'NS_ERROR_DOM_QUOTA_REACHED') && // acknowledge QuotaExceededError only if there's something already stored storage.length !== 0; } } function setToStorage(key, value) { if (storageAvailable("localStorage")) { localStorage[key] = value; } else { Cookies.set(key, value, { expires: 365 }); } } function getFromStorage(key) { if (storageAvailable("localStorage")) { if (typeof localStorage[key] === "undefined") { return undefined; } else { return localStorage[key]; } } else { if (typeof Cookies.get(key) === "undefined") { return undefined; } else { return Cookies.get(key); } } } function clearFromStorage(key){ //alert("Clear:" + key); if (storageAvailable("localStorage")) { localStorage.removeItem(key); }else{ Cookies.remove(key); } } function cookieToStorage(key) { if (typeof Cookies.get(key) === "undefined") { return; } else { if (storageAvailable("localStorage")) { setToStorage(key, Cookies.get(key)); Cookies.remove(key); } } }