1(function () { 2 'use strict' 3 function getPhotoFromHTML(thisPhoto) { 4 try { 5 if (thisPhoto.indexOf('src=') > -1) { 6 thisPhoto = thisPhoto.split('src=')[1]; 7 } 8 if (thisPhoto.indexOf('"') > -1) { 9 thisPhoto = thisPhoto.split('"')[1]; 10 } 11 if (thisPhoto.indexOf("'") > -1) { 12 thisPhoto = thisPhoto.split("'")[1]; 13 } 14 if (thisPhoto.slice(-1) == '\\') { 15 thisPhoto = thisPhoto.substring(0, thisPhoto.length - 1); 16 } 17 return encodeURIComponent(thisPhoto); 18 } catch (e) { 19 return ''; 20 } 21 } 22 function lookForMinnitChatTags() { 23 if (typeof (document.getElementsByTagName("iframe")) !== 'undefined' && document.getElementsByTagName("iframe") !== null && typeof (document.getElementsByTagName("iframe")[0]) !== 'undefined' && document.getElementsByTagName("iframe")[0] !== null) { 24 //iterate through all iframes and see if any of them are chats; if so, convert them over... 25 document.querySelectorAll('iframe').forEach((IframeTag) => { 26 if (typeof (IframeTag) !== 'undefined' && IframeTag && typeof (IframeTag.src) !== 'undefined' && IframeTag.src) { 27 //valid source, check if this is a Minnit URL 28 if ((IframeTag.src.indexOf('minnit.chat') > -1 || IframeTag.src.indexOf('.minnit.org') > -1 || IframeTag.getAttribute("data-minnitchatembed")) && IframeTag.src.indexOf('nec=') == -1) { 29 var thisTagChatName = IframeTag.src; 30 IframeTag.src = 'about:blank'; //blanks out the iframe until we're done grabbing SSO token and similar checks 31 var urlparams = ''; 32 if (thisTagChatName.indexOf('?') > -1) { 33 urlparams = thisTagChatName.split('?')[1].split('nickname').join(''); 34 thisTagChatName = thisTagChatName.split('?')[0]; 35 } 36 if (thisTagChatName.indexOf('?') > -1) { 37 thisTagChatName = thisTagChatName.split('?')[0]; 38 } 39 if (thisTagChatName.length === 0) { thisTagChatName = 'Demo' } 40 var minnitNickname = ''; 41 if (typeof (minnitChatOptions.minnitwpusername) !== 'undefined') { 42 minnitNickname = minnitChatOptions.minnitwpusername; 43 } 44 var newEmbedKey = Math.floor(Math.random() * 10000000) + 1; 45 var minnitPhoto = ''; 46 if (typeof (minnitChatOptions.minnitwpphoto) !== 'undefined' && minnitChatOptions.minnitwpphoto !== null) { 47 minnitPhoto = getPhotoFromHTML(minnitChatOptions.minnitwpphoto); 48 if (minnitPhoto.indexOf("'") !== -1) { 49 minnitPhoto = minnitPhoto.split("'")[0]; 50 } 51 try { 52 minnitPhoto = encodeURIComponent(minnitPhoto); 53 } catch (e) { 54 minnitPhoto = ''; 55 } 56 } 57 try { 58 //Attempt to get the user's "actual" photo from navigational bar; this allows us to support buddypress or similar plugins 59 if (((typeof (minnitChatOptions.minnitchatssooauth2) !== 'undefined' && minnitChatOptions.minnitchatssooauth2 == "1") || (typeof (minnitChatOptions.minnitchatpopulateprofilepicture) === 'undefined' || minnitChatOptions.minnitchatpopulateprofilepicture == '1')) && typeof (document.getElementById('wpadminbar') !== 'undefined' && document.getElementById('wpadminbar'))) { 60 var wpAvatars = document.getElementById('wpadminbar').getElementsByClassName('avatar'); 61 if (typeof (wpAvatars) !== 'undefined' && wpAvatars !== null && wpAvatars.hasOwnProperty('0') && wpAvatars[0] !== null && wpAvatars[0].src !== null) { 62 minnitPhoto = encodeURIComponent(wpAvatars[0].src); 63 } 64 } 65 } catch (e) { 66 //Invalid or unknown error as it relates to site's HTML. Safe to ignore, we'll just use what's in the default WordPress account. 67 } 68 var xhttp = new XMLHttpRequest(); 69 xhttp.onload = function () { 70 if (typeof (this.responseText) !== 'undefined') { 71 try { 72 var responseData = JSON.parse(this.responseText); 73 var ssoToken = ''; 74 if (typeof (responseData.ssotoken) !== 'undefined' && responseData.ssotoken !== null && responseData.ssotoken.length > 0) { 75 ssoToken = responseData.ssotoken; 76 } 77 IframeTag.src = thisTagChatName + '?embed&nec=' + newEmbedKey + '&nickname=' + minnitNickname + '&photo=' + minnitPhoto + '&ssotoken=' + ssoToken + '&' + urlparams; 78 IframeTag.dataset.nec = newEmbedKey; 79 } catch (e) { 80 IframeTag.src = thisTagChatName + '?embed&nec=' + newEmbedKey + '&nickname=' + minnitNickname + '&photo=' + minnitPhoto + '&' + urlparams; 81 IframeTag.dataset.nec = newEmbedKey; 82 } 83 } 84 } 85 xhttp.open("GET", minnitChatOptions.wpurl + '/?minnitpage=minnit-chat-sso-custom-get-token-v1&photourl=' + decodeURIComponent(minnitPhoto)); 86 xhttp.send(); 87 } 88 } 89 }); 90 } 91 if ((typeof (document.getElementsByTagName("minnit-chat")) !== 'undefined' && document.getElementsByTagName("minnit-chat") !== null && typeof (document.getElementsByTagName("minnit-chat")[0]) !== 'undefined' && document.getElementsByTagName("minnit-chat")[0] !== null) || (typeof (document.getElementsByClassName("minnit-chat-sembed")) !== 'undefined' && document.getElementsByClassName("minnit-chat-sembed") !== null && typeof (document.getElementsByClassName("minnit-chat-sembed")[0]) !== 'undefined' && document.getElementsByClassName("minnit-chat-sembed")[0] !== null)) { 92 //an existing tag is present, draw chat here! 93 const chatElements = document.querySelectorAll('minnit-chat, .minnit-chat-sembed'); 94 if (chatElements.length > 0) {
95 chatElements.forEach((MinnitChatTag) => { 96 if (!MinnitChatTag.getAttribute('data-minnit-wp-chat-rendered')) { 97 MinnitChatTag.setAttribute('data-minnit-wp-chat-rendered', 'true'); 98 var thisTagChatName = MinnitChatTag.getAttribute('data-chatname'); 99 var iframeHeight = '70vh'; 100 if (typeof (MinnitChatTag.getAttribute('data-height')) !== 'undefined' && MinnitChatTag.getAttribute('data-height') !== null && MinnitChatTag.getAttribute('data-height')) { 101 iframeHeight = MinnitChatTag.getAttribute('data-height'); 102 } 103 var iframeWidth = '100%'; 104 if (typeof (MinnitChatTag.getAttribute('data-width')) !== 'undefined' && MinnitChatTag.getAttribute('data-width') !== null && MinnitChatTag.getAttribute('data-width')) { 105 iframeWidth = MinnitChatTag.getAttribute('data-width'); 106 } 107 if (thisTagChatName.indexOf('script') > -1) { 108 if (thisTagChatName.indexOf('data-chatname="') > -1) { 109 thisTagChatName = thisTagChatName.split('data-chatname="')[1]; 110 } 111 if (thisTagChatName.indexOf('"')) { 112 thisTagChatName = thisTagChatName.split('"')[0]; 113 } 114 } 115 if (thisTagChatName.indexOf('/') == -1) { 116 //user is not providing full URL -- automatically craft the default minnit.chat setup (for legacy users) 117 thisTagChatName = 'https://minnit.chat/' + thisTagChatName; 118 } 119 thisTagChatName = thisTagChatName.split(' ').join('').split('<').join('').split('"').join('').split("'").join(''); 120 var urlparams = ''; 121 if (thisTagChatName.indexOf('?') > -1) { 122 urlparams = thisTagChatName.split('?')[1].split('nickname').join(''); 123 thisTagChatName = thisTagChatName.split('?')[0]; 124 } 125 if (thisTagChatName.indexOf('?') > -1) { 126 thisTagChatName = thisTagChatName.split('?')[0]; 127 } 128 if (thisTagChatName.length === 0) { thisTagChatName = 'Demo' } 129 var minnitNickname = ''; 130 if (typeof (minnitChatOptions.minnitwpusername) !== 'undefined') { 131 minnitNickname = minnitChatOptions.minnitwpusername; 132 } 133 var newEmbedKey = Math.floor(Math.random() * 10000000) + 1; 134 var minnitPhoto = ''; 135 if (typeof (minnitChatOptions.minnitwpphoto) !== 'undefined' && minnitChatOptions.minnitwpphoto !== null) { 136 minnitPhoto = getPhotoFromHTML(minnitChatOptions.minnitwpphoto); 137 if (minnitPhoto.indexOf("'") !== -1) { 138 minnitPhoto = minnitPhoto.split("'")[0]; 139 } 140 try { 141 minnitPhoto = encodeURIComponent(minnitPhoto); 142 } catch (e) { 143 minnitPhoto = ''; 144 } 145 } 146 try { 147 //Attempt to get the user's "actual" photo from navigational bar; this allows us to support buddypress or similar plugins 148 if (1 == 2 && typeof (minnitChatOptions.minnitwpusername) !== 'undefined' && typeof (document.getElementById('wpadminbar') !== 'undefined' && document.getElementById('wpadminbar'))) { 149 var wpAvatars = document.getElementById('wpadminbar').getElementsByClassName('avatar'); 150 if (typeof (wpAvatars) !== 'undefined' && wpAvatars !== null && wpAvatars.hasOwnProperty('0') && wpAvatars[0] !== null && wpAvatars[0].src !== null) { 151 minnitPhoto = encodeURIComponent(wpAvatars[0].src); 152 } 153 } 154 } catch (e) { 155 //Invalid or unknown error as it relates to site's HTML. Safe to ignore, we'll just use what's in the default WordPress account. 156 } 157 var xhttp = new XMLHttpRequest(); 158 xhttp.onload = function () { 159 if (typeof (this.responseText) !== 'undefined') { 160 try { 161 var responseData = JSON.parse(this.responseText); 162 var ssoToken = ''; 163 if (typeof (responseData.ssotoken) !== 'undefined' && responseData.ssotoken !== null && responseData.ssotoken.length > 0) { 164 ssoToken = responseData.ssotoken; 165 } 166 MinnitChatTag.innerHTML = '<iframe src="' + thisTagChatName + '?embed&nec=' + newEmbedKey + '&nickname=' + minnitNickname + '&photo=' + minnitPhoto + '&ssotoken=' + ssoToken + '&' + urlparams + '" data-width="' + iframeWidth + '" data-height="' + iframeHeight + '" data-nec="' + newEmbedKey + '" style="border:none;width:' + iframeWidth + ';height:' + iframeHeight + '" class="minnit-chat-iframe-gutenberg-block" allowTransparency="true"></iframe>'; 167 } catch (e) { 168 MinnitChatTag.innerHTML = '<iframe src="' + thisTagChatName + '?embed&nec=' + newEmbedKey + '&nickname=' + minnitNickname + '&photo=' + minnitPhoto + '&' + urlparams + '" data-nec="' + newEmbedKey + '" data-width="' + iframeWidth + '" data-height="' + iframeHeight + '" style="margin:auto;border:none;width:' + iframeWidth + ';height:' + iframeHeight + '" class="minnit-chat-iframe-gutenberg-block" allowTransparency="true"></iframe>'; 169 } 170 if (MinnitChatTag.tagName.toLowerCase() !== "minnit-chat") { 171 MinnitChatTag.style = 'all: unset; display: inline; width: auto; height: auto; background: transparent; color: inherit; font: inherit; text-align: inherit; margin: 0; padding: 0; border: none; box-shadow: none; outline: none; line-height: inherit; letter-spacing: normal; word-spacing: normal; vertical-align: baseline; overflow: visible; white-space: inherit; position: static; clip: auto; z-index: auto; visibility: inherit; opacity: 1; mix-blend-mode: normal; pointer-events: auto; user-select: text;'; 172 } 173 } 174 } 175 xhttp.open("GET", minnitChatOptions.wpurl + '/?minnitpage=minnit-chat-sso-custom-get-token-v1&photourl=' + decodeURIComponent(minnitPhoto)); 176 xhttp.send(); 177 }; 178 }); 179 } 180 } 181 Array.prototype.forEach.call(document.getElementsByClassName("minnit-chat-iframe-gutenberg-block"), function (thisChatFrame) { 182 thisChatFrame.setAttribute("style", "margin:auto;border:none;
182width:" + thisChatFrame.getAttribute('data-width') + ";height:" + thisChatFrame.getAttribute('data-height')); //this is to prevent some themes, such as Twenty-Twenty, from setting the iframe width to 0 when the page is resized 183 }); 184 } 185 function toggleChat() { 186 if (document.getElementById('minnit-chat-iframe')) { 187 document.getElementById('minnit-chat-iframe').remove(); 188 var minnitContainer = document.getElementById('minnit-container'); 189 minnitContainer.setAttribute('data-size', 'button'); 190 } else { 191 drawChat(); 192 } 193 } 194 function drawChat() { 195 var chatname = minnitChatOptions.minnitchatname; 196 if (chatname.indexOf('script') > -1) { 197 if (chatname.indexOf('data-chatname=') > -1) { 198 chatname = chatname.split('data-chatname=')[1]; 199 } 200 if (chatname.indexOf(' ')) { 201 chatname = chatname.split(' ')[0]; 202 } 203 } 204 if (chatname.indexOf('/') == -1) { 205 //user is not providing full URL -- automatically craft the default minnit.chat setup (for legacy users) 206 chatname = 'https://minnit.chat/' + chatname; 207 } 208 var urlparams = ''; 209 chatname = chatname.split(' ').join('').split('<').join(''); 210 if (chatname.indexOf('?') > -1) { 211 urlparams = chatname.split('?')[1].split('nickname').join(''); 212 chatname = chatname.split('?')[0]; 213 } 214 if (chatname.length === 0) { chatname = 'Demo' } 215 var minnitNickname = ''; 216 if (typeof (minnitChatOptions.minnitwpusername) !== 'undefined') { 217 minnitNickname = minnitChatOptions.minnitwpusername; 218 } 219 var minnitPhoto = ''; 220 if (typeof (minnitChatOptions.minnitwpphoto) !== 'undefined' && minnitChatOptions.minnitwpphoto !== null) { 221 minnitPhoto = getPhotoFromHTML(minnitChatOptions.minnitwpphoto); 222 if (minnitPhoto.indexOf("'") !== -1) { 223 minnitPhoto = minnitPhoto.split("'")[0]; 224 } 225 try { 226 minnitPhoto = encodeURIComponent(minnitPhoto); 227 } catch (e) { 228 minnitPhoto = ''; 229 } 230 } 231 try { 232 if (typeof (document.getElementById('wpadminbar') !== 'undefined' && document.getElementById('wpadminbar'))) { 233 //Attempt to get the user's "actual" photo from navigational bar; this allows us to support buddypress or similar plugins 234 var wpAvatars = document.getElementById('wpadminbar').getElementsByClassName('avatar'); 235 if (typeof (wpAvatars) !== 'undefined' && wpAvatars !== null && wpAvatars.hasOwnProperty('0') && wpAvatars[0] !== null && wpAvatars[0].src !== null) { 236 minnitPhoto = encodeURIComponent(wpAvatars[0].src); 237 } 238 } 239 } catch (e) { 240 //Invalid or unknown error as it relates to site's HTML. Safe to ignore, we'll just use what's in the default WordPress account. 241 } 242 var vendorIframe = document.createElement('iframe'); 243 vendorIframe.width = '100%'; 244 vendorIframe.className = 'minnit-chat-iframe'; 245 vendorIframe.id = 'minnit-chat-iframe'; 246 var minnitContainer = document.getElementById('minnit-container'); 247 minnitContainer.setAttribute('data-size', minnitChatOptions.minnitchatsize); 248 var xhttp = new XMLHttpRequest(); 249 var newEmbedKey = Math.floor(Math.random() * 10000000) + 1; 250 xhttp.onload = function () { 251 if (typeof (this.responseText) !== 'undefined') { 252 try { 253 var responseData = JSON.parse(this.responseText); 254 var ssoToken = ''; 255 if (typeof (responseData.ssotoken) !== 'undefined' && responseData.ssotoken !== null && responseData.ssotoken.length > 0) { 256 ssoToken = responseData.ssotoken; 257 } 258 vendorIframe.src = chatname + '?embed&nec=' + newEmbedKey + '&nickname=' + minnitNickname + '&photo=' + minnitPhoto + '&ssotoken=' + ssoToken + '&' + urlparams; 259 } catch (e) { 260 vendorIframe.src = chatname + '?embed&nec=' + newEmbedKey + '&nickname=' + minnitNickname + '&photo=' + minnitPhoto + '&' + urlparams; 261 } 262 vendorIframe.setAttribute('data-nec', newEmbedKey); 263 minnitContainer.prepend(vendorIframe); 264 } 265 } 266 xhttp.open("GET", minnitChatOptions.wpurl + '/?minnitpage=minnit-chat-sso-custom-get-token-v1&photourl=' + decodeURIComponent(minnitPhoto)); 267 xhttp.send(); 268 } 269 function drawButton() { 270 var buttoncol = '#aaaaaa'; 271 var buttonstrokecol = '#ffffff'; 272 if (minnitChatOptions.minnitchatcolor) { 273 // figure out if the outline should be white, or black, for the logo 274 buttoncol = minnitChatOptions.minnitchatcolor.substr(1); 275 var redCol = parseInt(buttoncol.substr(1, 2), 16); 276 var greenCol = parseInt(buttoncol.substr(3, 2), 16); 277 var blueCol = parseInt(buttoncol.substr(4), 16); 278 if (redCol > 200 && greenCol > 200 && blueCol > 200) { 279 buttonstrokecol = '#000000'; 280 } 281 buttoncol = '#' + buttoncol; 282 } 283 var minnitSvg = '<?xml version="1.0" encoding="UTF-8" standalone="no"?>
283 <svg class="minnit-emoji" viewBox="-50 40 300 300" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:svg="http://www.w3.org/2000/svg"><rect width="400%" height="400%" x="-100%" y="-100%" style="fill:' + buttoncol + ';" /><ellipse style="fill:' + buttonstrokecol + ';fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1.03318;stroke-opacity:0.231111;paint-order:markers stroke fill" cx="100" cy="181" rx="112.38248" ry="98.500359" /><path style="fill:' + buttonstrokecol + ';fill-rule:evenodd;stroke:none;stroke-opacity:0.231111;paint-order:markers stroke fill" d="m 148.06965,260.97505 c 2.33053,5.29714 2.33053,11.65307 6.14405,17.37288 3.81352,5.71981 11.44049,10.80446 15.678,14.40651 4.23752,3.60205 5.08496,5.72066 1.90632,6.77972 -3.17864,1.05906 -10.38189,1.05906 -18.22052,-2.33089 -7.83863,-3.38995 -16.31304,-10.16947 -23.51647,-16.10171 -7.20342,-5.93224 -13.13551,-11.01689 -11.86477,-16.52498 1.27074,-5.5081 9.74515,-11.44019 16.31354,-12.28803 6.56839,-0.84783 11.22932,3.38937 13.55985,8.6865 z" /></svg> '; 284 var chatButton = document.createElement('minnit-button'); 285 chatButton.innerHTML = minnitSvg; 286 chatButton.onclick = toggleChat; 287 if (typeof (minnitChatOptions.minnitchatname) !== 'undefined' && minnitChatOptions.minnitchatname !== null && minnitChatOptions.minnitchatname.length > 0) { 288 var minnitContainer = document.getElementById('minnit-container'); 289 minnitContainer.setAttribute('data-size', 'button'); 290 minnitContainer.innerHTML = ''; 291 minnitContainer.appendChild(chatButton); 292 } 293 } 294 function updateMinnitOptions() { 295 if (!document.getElementById('minnit-container')) { 296 var minnitContainer = document.createElement('minnit-container'); 297 minnitContainer.id = 'minnit-container'; 298 document.body.appendChild(minnitContainer); 299 } 300 var container = document.getElementById('minnit-container'); 301 container.setAttribute('data-placement', minnitChatOptions.minnitplacement); 302 drawButton(); 303 lookForMinnitChatTags(); 304 setInterval(function () { 305 lookForMinnitChatTags(); 306 }, 1000); 307 } 308 if (document.readyState === 'loading') { 309 document.addEventListener('DOMContentLoaded', updateMinnitOptions); 310 } else { 311 updateMinnitOptions(); 312 } 313 function createMinnitCookie(name, value, hours) { 314 var expires; 315 if (hours) { 316 var date = new Date(); 317 date.setTime(date.getTime() + (hours * 60 * 60 * 1000)); 318 expires = "; expires=" + date.toGMTString(); 319 } else expires = ""; 320 document.cookie = name + "=" + value + expires + "; path=/; SameSite=None; Secure"; 321 } 322 function getMinnitCookie(cname) { 323 var name = cname + "="; 324 var decodedCookie = decodeURIComponent(document.cookie); 325 var ca = decodedCookie.split(';'); 326 for (var i = 0; i < ca.length; i++) { 327 var c = ca[i]; 328 while (c.charAt(0) == ' ') { 329 c = c.substring(1); 330 } 331 if (c.indexOf(name) == 0) { 332 return c.substring(name.length, c.length); 333 } 334 } 335 return ""; 336 } 337 function localStorageSupported() { 338 try { 339 if (typeof (localStorage) == 'object') { 340 localStorage.getItem("test"); 341 return true; 342 } 343 } catch (e) { 344 return false; 345 } 346 return false; 347 } 348 function createMinnitLocalStorage(name, value, orgid) { 349 name = "minnit" + orgid + "_" + name; 350 if (localStorageSupported()) { 351 localStorage.setItem(name, value); 352 } else { 353 createMinnitCookie(name, value); //fallback for older browsers 354 } 355 } 356 function deleteMinnitLocalStorage(name, orgid) { 357 name = "minnit" + orgid + "_" + name; 358 if (localStorageSupported()) { 359 localStorage.removeItem(name); 360 } else { 361 createMinnitCookie(name, "", -1); 362 } 363 } 364 function getMinnitLocalStorage(name, orgid) { 365 name = "minnit" + orgid + "_" + name; 366 if (localStorageSupported()) { 367 return localStorage.getItem(name); 368 } else { 369 return getMinnitCookie(name); //fallback for older browsers 370 } 371 } 372 window.addEventListener("message", function (event) { 373 if (typeof (event) !== 'undefined' && event !== null && typeof (event.data) === 'string' && event.data !== null && event.data.indexOf('"minnitnec"') > -1) { 374 //find the relevant iframe this is from -- owners are allowed to embed more than one chatroom, so we must make sure we send this to the correct frame
374! 375 try { 376 var eventObj = JSON.parse(event.data); 377 document.querySelectorAll('iframe').forEach((thisEmbed) => { 378 if (typeof (thisEmbed.dataset) !== 'undefined' && thisEmbed.dataset.hasOwnProperty('nec') && thisEmbed.dataset.nec == eventObj.minnitnec) { 379 //convert old local storage items (if any) 380 if (getMinnitLocalStorage("rauthv", "") != null || getMinnitLocalStorage("gauthv", "") != null) { 381 //convert those over... 382 createMinnitLocalStorage("rauthv", getMinnitLocalStorage("rauthv", ""), eventObj.orgid); 383 deleteMinnitLocalStorage("rauthv", ""); 384 createMinnitLocalStorage("gauthv", getMinnitLocalStorage("gauthv", ""), eventObj.orgid); 385 deleteMinnitLocalStorage("gauthv", ""); 386 createMinnitLocalStorage("gsto", getMinnitLocalStorage("gsto", ""), eventObj.orgid); 387 deleteMinnitLocalStorage("gsto", ""); 388 createMinnitLocalStorage("sto", getMinnitLocalStorage("sto", ""), eventObj.orgid); 389 deleteMinnitLocalStorage("sto", ""); 390 createMinnitLocalStorage("nickname", getMinnitLocalStorage("nickname", ""), eventObj.orgid); 391 deleteMinnitLocalStorage("nickname", ""); 392 createMinnitLocalStorage("guestid", getMinnitLocalStorage("guestid", ""), eventObj.orgid); 393 deleteMinnitLocalStorage("guestid", ""); 394 } 395 //now, check what this request was for... 396 switch (eventObj.request) { 397 case "getsigninvars": 398 var postMessageData = { 399 'minnitnec': eventObj.minnitnec, 400 'signinvars': true, 401 'v': 1.2 402 } 403 if (getMinnitLocalStorage("rauthv", eventObj.orgid) != null && getMinnitLocalStorage("rauthv", eventObj.orgid).length > 6) { 404 postMessageData.rauthv = getMinnitLocalStorage('rauthv', eventObj.orgid); 405 postMessageData.sto = getMinnitLocalStorage('sto', eventObj.orgid); 406 } else { 407 postMessageData.gauthv = getMinnitLocalStorage('gauthv', eventObj.orgid); 408 postMessageData.gsto = getMinnitLocalStorage('gsto', eventObj.orgid); 409 if (getMinnitLocalStorage('nickname', eventObj.orgid) !== null) { 410 postMessageData.nickname = getMinnitLocalStorage('nickname', eventObj.orgid); 411 } 412 } 413 postMessageData.guestid = getMinnitLocalStorage('guestid', eventObj.orgid); 414 thisEmbed.contentWindow.postMessage(JSON.stringify(postMessageData), '*'); 415 break; 416 case "setcookie": 417 createMinnitLocalStorage(eventObj.cookiename, eventObj.cookievalue, eventObj.orgid); 418 break; 419 case "getcookie": 420 thisEmbed.contentWindow.postMessage('{"minnitnec": ' + eventObj.minnitnec + ', "cookiename": "' + eventObj.cookiename + '", "cookievalue": "' + getMinnitLocalStorage(eventObj.cookiename) + '"}', '*'); 421 break; 422 case "setguest": 423 createMinnitLocalStorage("gsto", eventObj.gsto, eventObj.orgid); 424 createMinnitLocalStorage("gauthv", eventObj.gauthv, eventObj.orgid); 425 if (eventObj.hasOwnProperty('guestid')) { 426 createMinnitLocalStorage("guestid", eventObj.guestid, eventObj.orgid); 427 } 428 break; 429 case "logout": 430 deleteMinnitLocalStorage("gsto", eventObj.orgid); 431 deleteMinnitLocalStorage("sto", eventObj.orgid); 432 deleteMinnitLocalStorage("gauthv", eventObj.orgid); 433 deleteMinnitLocalStorage("rauthv", eventObj.orgid); 434 deleteMinnitLocalStorage("guestid", eventObj.orgid); 435 deleteMinnitLocalStorage("nickname", eventObj.orgid); 436 break; 437 } 438 } 439 }); 440 } catch (err) { 441 //something went amiss 442 } 443 } 444 }); 445 window.INSTALL_SCOPE = { 446 setOptions: function setOptions(nextOptions) { 447 minnitChatOptions = nextOptions 448 updateMinnitOptions(); 449 } 450 } 451}())
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.