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",n="POST",o={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(n,t,!0):"undefined"!=typeof XDomainRequest&&(r=new XDomainRequest,r.open(n,t)),r.setRequestHeader("Content-Type","application/json"),r.send(JSON.stringify(o))}catch(e){}},function(){function e(e,t,n,o){function r(e){if(Q("Loading config from",e),T())return void ne.error("This widget is permanently removed");var n=new XMLHttpRequest;n.onreadystatechange=function(){if(4===n.readyState)if(200===n.status){var e,o=R(n);try{e=JSON.parse(o)}catch(e){Q("Config is loaded as JSONP");var r=t.getElementsByTagName("script"),a=r[0],l=t.createElement("script");M(l),l.innerHTML=o,a.parentNode.insertBefore(l,a)}e&&(Q("Config is loaded",e),i(e))}else 0!==n.status&&B()},n.open("GET",e+"?rnd="+Math.random(),!0),n.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(n){e[n]=t[n]}),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=oe=t,x())throw Q("Host is blacklisted",e.location.host),new Error("Placing widget is forbidden on "+e.top.location.host);if(fe&&oe.disable_mobile)return void Q("Mobile widget is disabled");d()}function d(){"complete"==t.readyState?s():Ne.bundleLoaded&&Ne.buildNumber==oe.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 n=t.createEvent("Event");n.initEvent("jBeforeunload",!0,!0),e.dispatchEvent(n),c()},e.atob&&"complete"!==t.readyState?z(e,"load",c):c(),z(e,"message",function(n){if(!n)return void(ne&&ne.log&&ne.log("Error receive postMessage, window message event is empty."));var o,r,i=n.data;if("in_node_webkit"==i.name&&(o||(o=n.source,r=n.origin),o&&r)){e.jivo_cobrowse={source:o,origin:r};var a="jv_"+encodeURIComponent("langpack")+"_"+oe.widget_id+"="+encodeURIComponent(JSON.stringify(i.langpack));oe.cookie_domain&&(a+="; domain="+oe.cookie_domain),a+="; path=/",t.cookie=a,o.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),oe.build_number!==Ne.buildNumber&&e!==oe.base_url?void f(e):void(D()||e===oe.base_url?g(e):f(e))}function f(e){var t=new XMLHttpRequest,n=U(!0)+"/ping?rand="+(new Date).getTime();Q("Pinging host",n),t.onreadystatechange=function(){if(4===t.readyState)if(204===t.status){clearTimeout(le),Q("Host is available",e);var n={type:Ne.availableHostInfo.type,retriesCount:_e,host:e};w("availableHostInfo",n),w("buildNumber",oe.build_number),g(e)}else 0!==t.status&&(Q("Ping host error",e),q("error",e,t.status))},t.open("GET",n,!0),t.send(null),X()}function g(e){Q("Insertion of bundle code from",e);var n=t.getElementsByTagName("head")[0],o=t.createElement("script"),r=J(e);ue=ue||(new Date).getTime(),M(o),o.className="js-jivo-bundle",o.src=r,ce.bundleSrc=r,o.onerror=function(){q("error",e)},n.appendChild(o)}function v(e){clearTimeout(le),de=e;var t=((new Date).getTime()-ue)/1e3;t>6&&w("loadTime",t),w("bundleLoaded",!0),w("buildNumber",oe.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="",n='',o="",r=""+n+o+"",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 n={};h(Ne,n),localStorage.setItem("jv_loader_info",JSON.stringify(n))}}function h(e,t){var n=Object.keys(e);n.forEach(function(n){_(e[n])||(t[n]=e[n])})}function _(e){if(y(e))return!0;if("object"==typeof e){for(var t=Object.keys(e),n=0;n=(new Date).getTime())}function L(e,t,n){return{widgetId:e,region:t,clientLocation:n}}function O(e){var t,n,o=e.regions,r=H(e.geoip);if(o){for(var i=Object.keys(o),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!==oe.host_blacklist&&oe.host_blacklist.indexOf(e.location.host)>=0}function W(){if("string"==typeof oe.geoip&&""!==oe.geoip){var e=oe.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 n=oe.static_host?oe.static_host.split("/"):[];Ce=n[1]?"/"+n[1]:"";var o=Ne.availableHostInfo;_e=o.retriesCount?o.retriesCount:_e,_e>4&&(_e=4),se=P(Ie)}function P(e){var t=Object.keys(Se),n=null;return t.forEach(function(t){if(!n){var o=Se[t];o.indexOf(e)!==-1&&(n=t)}}),n}function D(){var e=Ne.availableHostInfo;return Ne.buildNumber===oe.build_number&&e.host}function U(e){var t,n=e?"":Ce;return D()?t=Ne.availableHostInfo.host:0===_e?(se=P(Ie),t=je[se]+n):1===_e?(se=V(Se,se),t=je[se]+n):t=oe.base_url,t}function V(e,t){var n=Object.keys(e),o=G(n);return o===t?V(e,t):o}function G(e){return e[Math.floor(Math.random()*e.length)]}function J(e){var t=oe.bundle_folder?oe.bundle_folder:"";return e+t+"/js/bundle_"+oe.locale+".js?rand="+oe.build_number}function q(t,n,o){if(clearTimeout(le),++_e>=be){Q("Bundle load retries count is exceeded");var r="Bundle not loaded. Type: "+t,i=n?". Host: "+n:"",a=o?". Status code: "+o:"",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,n,o){t.addEventListener?t.addEventListener(n,o,!1):t.attachEvent&&(t.attachEvent("on"+n,function(t){return function(){o.call(t,e.event)}}(t)),t=null)}function F(){oe.cp_tracker_id&&oe.cp_tracker_url&&(e._cp={trackerId:oe.cp_tracker_id},Z(oe.cp_tracker_url))}function Z(e,n){var o=n||t,r=o.getElementsByTagName("script"),i=r[0],a=o.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],n=e.getElementsByClassName("js-jivo-bundle"),o=0;ot&&(n=new Function("window","document","broswerCacheLoaderVersion","currentLoaderVersionCache","("+o.code+")(window, document, broswerCacheLoaderVersion, currentLoaderVersionCache)"))}try{n(window,document,t,o?o.version:t)}catch(o){o.message=o.message?"Loader error. "+o.message:"Loader error",window.__jivoOnError(o),delete window.jivo_magic_var,n=e,n(window,document,t,t)}}();