if( typeof g_cbebloader_called === 'undefined' ) { var g_cbebloader_called = "defined!" var g_mbk = undefined; var g_mpt = undefined; var g_cbeb_md = undefined; var g_db = undefined; var g_expectCache = false; var g_allow_google_map = undefined; var g_bespoke_google_api_key = undefined; /* var g_cbeb_md = { u: "", m: "" }; */ var read_cookie = (name) => { var match_outcome = document.cookie.match('(^|;)\\s*' + name + '\\s*=\\s*([^;]+)'); if (match_outcome) { return match_outcome.pop() || ''; } else { return ''; } }; (function () { if (typeof UserAccountApi === "object") { if (UserAccountApi.isUserAuthenticated() === true) { const cached_login = read_cookie("logged_in_maybe") if (typeof cached_login === "string" && cached_login.length > 0) { g_cbeb_md = { u: cached_login, m: "member areas" } } } } })(); (function () { if (typeof Thinkific === "object") { if (Thinkific.current_user) { console.log(`Found Thinkific user `, Thinkific.current_user.email) g_cbeb_md = { u: Thinkific.current_user.email, m: "thinkific" } } } })(); function initialise_msp_login_details(member_info) { if (member_info !== undefined && member_info.memberInfo !== undefined) { g_cbeb_md = {} g_cbeb_md.u = member_info.memberInfo.email; g_cbeb_md.f = member_info.memberInfo.firstName; g_cbeb_md.l = member_info.memberInfo.lastName; g_cbeb_md.msp_key = member_info.memberInfo.id; g_cbeb_md.m = "memberspace"; } else { if (member_info !== undefined) { console.log(`Unusual member info:`, member_info) } else { console.log(`Undefined member_info`) } } } (function () { if (typeof MemberSpace !== "undefined" && MemberSpace.ready === true) { console.log(`MemberSpace.ready === true`); if (MemberSpace.getMemberInfo) { const member_info = MemberSpace.getMemberInfo() if (member_info) { initialise_msp_login_details(MemberSpace.getMemberInfo()); } } } else { if (typeof MemberSpace !== "undefined") { console.log(`MemberSpace object exists but ready was false or undefined:`, MemberSpace) if (MemberSpace.User !== undefined && MemberSpace.User.get !== undefined && typeof MemberSpace.User.get === "function") { const member_info = MemberSpace.User.get() if (member_info !== undefined) { g_cbeb_md = {} g_cbeb_md.u = member_info.email; g_cbeb_md.f = member_info.firstName; g_cbeb_md.l = member_info.lastName; g_cbeb_md.msp_key = member_info.id; g_cbeb_md.m = "memberspace"; console.log(`Updated MemberSpace user data the old-fashioned way`) return; } } } document.addEventListener('MemberSpace.member.info', function ({ detail }) { const { memberInfo } = detail; g_cbeb_md = {} g_cbeb_md.u = memberInfo.email; g_cbeb_md.f = memberInfo.firstName; g_cbeb_md.l = memberInfo.lastName; g_cbeb_md.msp_key = memberInfo.id; g_cbeb_md.m = "memberspace" }) } })(); function CbDbCachePrefetch(box, cachecode) { var path = "https://cdn.communitybox.co/directory/" + box + "/" + cachecode + "/db-" + cachecode; var prefetch_xhr = new XMLHttpRequest(); prefetch_xhr.open("GET", path, true); prefetch_xhr.onload = function () { if (prefetch_xhr.readyState === 4 && prefetch_xhr.status === 200) { if (prefetch_xhr.responseText) g_db = JSON.parse(prefetch_xhr.responseText) } else { console.log(`CbDbCachePrefetch - onload - unexpected status ${prefetch_xhr.status}`) } } prefetch_xhr.onerror = function () { console.error(`An error occurred during CbDbCachePrefetch`) } prefetch_xhr.send() } function loadCbResources(boxKey) { var payload = { box: boxKey, origin: window.location.href }, cb_xhr = new XMLHttpRequest(); cb_xhr.open("POST", "https://cfapi.communitybox.co/get/embed/bootstrap/data", true) cb_xhr.setRequestHeader('Content-type', 'application/json; charset=utf-8') cb_xhr.onload = function () { if (cb_xhr.readyState === 4 && cb_xhr.status === 200) { var returnObj = JSON.parse(cb_xhr.responseText); if (returnObj.hasOwnProperty("err")) { console.error(returnObj.err); } else { if (returnObj.cachecode) { g_expectCache = true; CbDbCachePrefetch(boxKey, returnObj.cachecode); } else { console.log("No cache-code for box ", boxKey); } g_allow_google_map = returnObj.allow_google_map; g_mbk = returnObj.mapbox_api_key || atob("cGsuZXlKMUlqb2ljbTlzWVc1a1pqY2lMQ0poSWpvaVkyczRjMnM1Tnpabk1HTjZlRE5sYnpWM1lXVjVNM1Z3YXlKOS5wV0xTR0hMWFBhX3JqVGFpSzlkYW5B"); var revision = returnObj.revision, obj = document.createElement("script"), map = undefined, mapStyle = document.createElement("link"), mapbox_geocoder_style = document.createElement("link"), font = document.createElement("link"), fal = document.createElement("link"); obj.src = /localhost/.test(window.location.href) ? "embed.js" : "https://dashboard.communitybox.co/embed/" + revision + "/embed-" + revision + ".js"; obj.setAttribute('defer', ''); g_bespoke_google_api_key = returnObj.bespoke_google_api_key if (returnObj.gmap_api_key !== undefined || returnObj.bespoke_google_api_key !== undefined) { var key_to_use = returnObj.bespoke_google_api_key || returnObj.gmap_api_key map = document.createElement("script") map.src = "https://maps.googleapis.com/maps/api/js?key=" + key_to_use + "&libraries=places,geometry" map.setAttribute('async', "") } else { } mapStyle.href = "https://api.tiles.mapbox.com/mapbox-gl-js/v2.2.0/mapbox-gl.css"; mapStyle.rel = "stylesheet"; mapbox_geocoder_style.href = "https://api.mapbox.com/mapbox-gl-js/plugins/mapbox-gl-geocoder/v4.7.0/mapbox-gl-geocoder.css" mapbox_geocoder_style.rel = "stylesheet" if (returnObj.font_loader !== undefined) { font.href = returnObj.font_loader; } else { font.href = "https://fonts.googleapis.com/css?family=Quicksand:400,500"; } font.rel = "stylesheet"; fal.rel = "stylesheet"; fal.href = "https://use.fontawesome.com/releases/v5.2.0/css/all.css"; fal.setAttribute('crossorigin', 'anonymous'); fal.setAttribute('integrity', 'sha384-hWVjflwFxL6sNzntih27bfxkr27PmbbK/iSvJ+a4+0owXq79v+lsFkW54bOGbiDQ'); if (returnObj.custom_design_file !== undefined) { var custom_design = document.createElement("link"); custom_design.rel = "stylesheet"; custom_design.href = ["https://cdn.communitybox.co/directory/", boxKey, "/design/", returnObj.custom_design_file, "/design-", returnObj.custom_design_file, ".css" ].join('') document.head.appendChild(custom_design); } document.head.appendChild(font); document.head.appendChild(fal); document.head.appendChild(obj); document.head.appendChild(mapStyle); document.head.appendChild(mapbox_geocoder_style); if (map !== undefined) document.head.appendChild(map); } } else { console.log(`Unexpected network state ${cb_xhr.readyState} and/or status ${cb_xhr.status} during loadCbResources`) console.error(cb_xhr.responseText); } } cb_xhr.onerror = function () { console.log(`Error registered in loadCbResources`) } cb_xhr.send(JSON.stringify(payload)); } function fetchCbBoxKey() { var boxElem = document.getElementById("communitybox-target"); var search_bar_elem = document.querySelector("[cbeb-filter-bar]") || document.querySelector("[communitybox-search-bar]") if (boxElem || search_bar_elem) { var boxKey = (boxElem && boxElem.getAttribute("box")) || search_bar_elem.getAttribute("directory") if (boxKey) { return boxKey; } } return undefined; } function waitForCbDiv(param) { var boxKey = fetchCbBoxKey() if (boxKey === undefined && param.triesLeft > 0) { window.setTimeout(function () { waitForCbDiv({ triesLeft: param.triesLeft - 1 }) }, 500) } else { if (boxKey !== undefined) { loadCbResources(boxKey) } } } ( function () { waitForCbDiv({ triesLeft: 10 }) } )(); } else { console.log( `cbebloader appears to have already been called, skipping` ) }