window.__jivoOnError=function(e){if(navigator.userAgent.search(/google/gi)===-1&&navigator.userAgent.search(/\+http:\/\/yandex\.com\/bots/gi)===-1)try{var t=window.location.protocol+"//err.jivosite.com/widget",o="POST",n={widget:"true",widget_version:window.jivo_version,level:2,url:window.location.href,user_agent:navigator.userAgent,lineNumber:e&&e.lineNumber,fileName:e&&e.fileName,column:e&&e.columnNumber,full_message:e&&e.stack,short_message:e&&e.message},r=new XMLHttpRequest;"withCredentials"in r?r.open(o,t,!0):"undefined"!=typeof XDomainRequest&&(r=new XDomainRequest,r.open(o,t)),r.setRequestHeader("Content-Type","application/json"),r.send(JSON.stringify(n))}catch(e){}},function(){function e(e,t,o,n){function r(e){if(Q("Loading config from",e),T())return void oe.error("This widget is permanently removed");var o=new XMLHttpRequest;o.onreadystatechange=function(){if(4===o.readyState)if(200===o.status){var e,n=R(o);try{e=JSON.parse(n)}catch(e){Q("Config is loaded as JSONP");var r=t.getElementsByTagName("script"),a=r[0],l=t.createElement("script");M(l),l.innerHTML=n,a.parentNode.insertBefore(l,a)}e&&(Q("Config is loaded",e),i(e))}else 0!==o.status&&B()},o.open("GET",e+"?rnd="+Math.random(),!0),o.send(null)}function i(e){if(e.isDeleted)return void k();if(Ee!==e.base_url)return Q("Wrong config host",Ee),Ee=e.base_url,void r(S());if(e.regions&&!Ne.isChatStarted){var t=O(e);if(t.widgetId!==Te)return Q("Wrong geo-widget widgetId",Te),w("geoWidgetInfo",t),Te=t.widgetId,void r(S())}w("configHost",Ee),l(e)}function a(e,t){return[e,t].reduce(function(e,t){return Object.keys(t).forEach(function(o){e[o]=t[o]}),e},{})}function l(t){if(w("log",!!t.logs),"[object Object]"===Object.prototype.toString.call(e.wix_context)&&"[object Object]"===Object.prototype.toString.call(e.jivo_wix)&&(t=a(t,e.jivo_wix)),e.jivo_config=ne=t,x())throw Q("Host is blacklisted",e.location.host),new Error("Placing widget is forbidden on "+e.top.location.host);if(fe&&ne.disable_mobile)return void Q("Mobile widget is disabled");d()}function d(){"complete"==t.readyState?s():Ne.bundleLoaded&&Ne.buildNumber==ne.build_number?"interactive"==t.readyState?s():z(e,"DOMContentLoaded",s):(w("bundleLoaded",!1),z(e,"load",s))}function s(){Q("Widget initialization"),W(),u(),F()}function u(){Q("Iframe initialization"),ge.src="javascript:void(0)",ge.title="",ge.role="presentation",ge.allow="autoplay",ge.setAttribute("name","jivo_container"),ge.setAttribute("id","jivo_container"),ge.setAttribute("frameborder","no"),ve.className+="jivo-no-transition","undefined"==typeof SVGRect&&(ve.className+=" no-svg"),(ge.frameElement||ge).style.cssText="width:100%;height:100%;border:0",e.jivo_init=function(){me=0;var o=t.createEvent("Event");o.initEvent("jBeforeunload",!0,!0),e.dispatchEvent(o),c()},e.atob&&"complete"!==t.readyState?z(e,"load",c):c(),z(e,"message",function(o){if(!o||!o.data||"object"!=typeof o.data)return void(ne&&1===ne.logs&&oe&&oe.log&&oe.log("Error receive postMessage, window message event is empty."));var n,r,i=o.data;if("in_node_webkit"==i.name&&(n||(n=o.source,r=o.origin),n&&r)){e.jivo_cobrowse={source:n,origin:r};var a="jv_"+encodeURIComponent("langpack")+"_"+ne.widget_id+"="+encodeURIComponent(JSON.stringify(i.langpack));ne.cookie_domain&&(a+="; domain="+ne.cookie_domain),a+="; path=/",t.cookie=a,n.postMessage({name:"widget_ready"},r)}"iframe_url_changed"!=i.name&&"iframe_url_changed"!=i||p()},!1)}function c(){var e=U();return Q("startLoadBundle",e),ne.build_number!==Ne.buildNumber&&e!==ne.base_url?void f(e):void(D()||e===ne.base_url?g(e):f(e))}function f(e){var t=new XMLHttpRequest,o=U(!0)+"/ping?rand="+(new Date).getTime();Q("Pinging host",o),t.onreadystatechange=function(){if(4===t.readyState)if(204===t.status){clearTimeout(le),Q("Host is available",e);var o={type:Ne.availableHostInfo.type,retriesCount:_e,host:e};w("availableHostInfo",o),w("buildNumber",ne.build_number),g(e)}else 0!==t.status&&(Q("Ping host error",e),q("error",e,t.status))},t.open("GET",o,!0),t.send(null),X()}function g(e){Q("Insertion of bundle code from",e);var o=t.getElementsByTagName("head")[0],n=t.createElement("script"),r=J(e);ue=ue||(new Date).getTime(),M(n),n.className="js-jivo-bundle",n.src=r,ce.bundleSrc=r,n.onerror=function(){q("error",e)},o.appendChild(n)}function v(e){clearTimeout(le),de=e;var t=((new Date).getTime()-ue)/1e3;t>6&&w("loadTime",t),w("bundleLoaded",!0),w("buildNumber",ne.build_number),Q("Bundle is loaded"),m()}function m(){ae=t.body.lastChild,ve.style&&(ve.style.opacity="0",ve.style.visibility="hidden"),ve.setAttribute("id","jivo-iframe-container"),ve.appendChild(ge),ae?ae.parentNode.insertBefore(ve,ae.nextSibling):t.body.appendChild(ve),p()}function p(){if(!(me++>3)){if(!de)return me--,c();try{ie=ge.contentWindow.document}catch(e){re=t.domain,ge.src="javascript:var d=document.open();d.domain='"+re+"';void(0);",ie=ge.contentWindow.document}var e="",o=' ',n=" ",r=""+o+n+"",i='
';ie.write(e+r+i),ie.close()}}function b(){var e={isChatStarted:null,geoWidgetInfo:{widgetId:null,clientLocation:null,region:null},configHost:null,deletedInfo:{widgetId:null,resolveTime:null},availableHostInfo:{retriesCount:null,type:null,host:null},buildNumber:null,bundleLoaded:null,isNewCode:null,loadTime:null,log:null};if(ce.hasStorage){var t=JSON.parse(localStorage.getItem("jv_loader_info"));t&&h(t,e)}return e}function w(e,t){if(Ne[e]=t,ce.hasStorage){var o={};h(Ne,o),localStorage.setItem("jv_loader_info",JSON.stringify(o))}}function h(e,t){var o=Object.keys(e);o.forEach(function(o){_(e[o])||(t[o]=e[o])})}function _(e){if(y(e))return!0;if("object"==typeof e){for(var t=Object.keys(e),o=0;o=(new Date).getTime())}function L(e,t,o){return{widgetId:e,region:t,clientLocation:o}}function O(e){var t,o,n=e.regions,r=H(e.geoip);if(n){for(var i=Object.keys(n),a=0;awe){Q("Config load retries count is exceeded");var t=new Error("Config not loaded. Responce status code "+xhr.status);e.__jivoOnError(t)}else ye++,w("geoWidgetInfo",L(null,null,null)),w("isChatStarted",null),w("configHost",null),A()}function A(){Te=null,Ee=null,C()}function M(e){return e.type="text/javascript",e.async=!0,e.charset="UTF-8",e}function R(e){var t;return t=e.responseType&&"text"!==e.responseType?"document"===e.responseType?e.responseXML:e.response:e.responseText}function x(){return void 0!==ne.host_blacklist&&ne.host_blacklist.indexOf(e.location.host)>=0}function W(){if("string"==typeof ne.geoip&&""!==ne.geoip){var e=ne.geoip.split(";")[0];null!==P(e)&&(Ie=e)}if(!D()){var t={type:null,retriesCount:null,host:null};w("availableHostInfo",t),w("buildNumber",null)}var o=ne.static_host?ne.static_host.split("/"):[];Ce=o[1]?"/"+o[1]:"";var n=Ne.availableHostInfo;_e=n.retriesCount?n.retriesCount:_e,_e>4&&(_e=4),se=P(Ie)}function P(e){var t=Object.keys(Se),o=null;return t.forEach(function(t){if(!o){var n=Se[t];n.indexOf(e)!==-1&&(o=t)}}),o}function D(){var e=Ne.availableHostInfo;return Ne.buildNumber===ne.build_number&&e.host}function U(e){var t,o=e?"":Ce;return D()?t=Ne.availableHostInfo.host:0===_e?(se=P(Ie),t=je[se]+o):1===_e?(se=V(Se,se),t=je[se]+o):t=ne.base_url,t}function V(e,t){var o=Object.keys(e),n=G(o);return n===t?V(e,t):n}function G(e){return e[Math.floor(Math.random()*e.length)]}function J(e){var t=ne.bundle_folder?ne.bundle_folder:"";return e+t+"/js/bundle_"+ne.locale+".js?rand="+ne.build_number}function q(t,o,n){if(clearTimeout(le),++_e>=be){Q("Bundle load retries count is exceeded");var r="Bundle not loaded. Type: "+t,i=o?". Host: "+o:"",a=n?". Status code: "+n:"",l=new Error(r+i+a);return void e.__jivoOnError(l)}var d={type:t,retriesCount:_e,host:null};Ne.availableHostInfo=d,c()}function X(){le=setTimeout(function(){q("timeout")},pe)}function z(t,o,n){t.addEventListener?t.addEventListener(o,n,!1):t.attachEvent&&(t.attachEvent("on"+o,function(t){return function(){n.call(t,e.event)}}(t)),t=null)}function F(){ne.cp_tracker_id&&ne.cp_tracker_url&&(e._cp={trackerId:ne.cp_tracker_id},Z(ne.cp_tracker_url))}function Z(e,o){var n=o||t,r=n.getElementsByTagName("script"),i=r[0],a=n.createElement("script");M(a),i.parentNode.insertBefore(a,i).src=e}function K(e){e.loaderContext=ce,e.globalStore=ce,Y()}function Y(){de=null;for(var e=t.getElementsByTagName("head")[0],o=e.getElementsByClassName("js-jivo-bundle"),n=0;nt&&(o=new Function("window","document","broswerCacheLoaderVersion","currentLoaderVersionCache","("+n.code+")(window, document, broswerCacheLoaderVersion, currentLoaderVersionCache)"))}try{o(window,document,t,n?n.version:t)}catch(n){n.message=n.message?"Loader error. "+n.message:"Loader error",window.__jivoOnError(n),delete window.jivo_magic_var,o=e,o(window,document,t,t)}}();