var log=typeof console!="undefined"&&console!=undefined&&console.log&&console.log!=undefined?function(n){console.log(n)}:function(){},OnlineChat=function(){function n(n,t){this.options={height:150},this.initialized=!1,this.windowTitle=window.document.title,this.containerElement=$("#"+n),this.containerElement.hide(),this.options=this.Extend(this.options,t)}return n.prototype.Extend=function(n,t){for(var i in t)n[i]=t[i];return n},n.prototype.sendMessage=function(n,t){log("sending message "+n+" with data: "+t);var i=document.getElementById("onlinechat_frame"),r=n+(t?"#"+t:"");i.contentWindow.postMessage(r,this.options.onlineChatDomain)},n.prototype.resize=function(){var n=this;return this.sizingDeferred=$.Deferred(),this.sendMessage("sizing?"),this.sizingDeferred.then(function(t){n.frame.height(t),n.containerElement.height(t)})},n.prototype.recieveMessage=function(n){var t,i,r,u;if(n.origin==this.options.onlineChatDomain&&typeof n.data=="string"){if(t=n.data.split("#")[0],i=n.data.split("#")[1],t=="messageReceived"&&(log("received messageReceived message"),!this.interval||(clearInterval(this.interval),window.document.title=this.windowTitle),r=10,u=this,this.interval=setInterval(function(){window.document.title=r%2==0?"*** Новое сообщение ***":u.windowTitle,--r<=0&&clearInterval(u.interval)},500)),t=="feedback"){log("received feedback message"),this.options.feedbackFormCallback&&this.options.feedbackFormCallback();return}if(t=="ready"){log("received ready message"),this.appReadyDeferred.resolve();return}if(t=="sizing"){log("received sizing message data: "+i),this.sizingDeferred.resolve(i);return}if(t=="resizing"){log("received resizing message data: "+i),this.frame.height(i),this.containerElement.height(i);return}log("Unknown message: "+n.data)}},n.prototype.ensureFrameInitialized=function(){var n=this,t;return this.frameInitDeferred=$.Deferred(),this.initialized?this.frameInitDeferred.resolve():(this.initialized=!0,t=this.options.onlineChatFrameUrl+"?siteRegion="+encodeURIComponent(this.options.siteRegion)+"&region="+encodeURIComponent(this.options.region)+"&topicType="+encodeURIComponent(this.options.topicType)+"&_="+ +new Date,this.frame=$("<iframe />").attr("src",t).attr("id","onlinechat_frame").attr("scrolling","no").attr("width","100%").attr("height",this.options.height).attr("style","margin-left:-10px; margin-top:-10px").attr("frameborder",0).attr("marginheight",0).attr("marginwidth",0).appendTo(this.containerElement).load(function(){n.frameInitDeferred.resolve()}),this.frame[0].contentWindow.location.replace(t),window.addEventListener?window.addEventListener("message",function(t){return n.recieveMessage(t)},!1):window.attachEvent("onmessage",function(t){return n.recieveMessage(t)})),this.frameInitDeferred.promise()},n.prototype.waitForAppReadyMessage=function(){var n=this,t;return this.appReadyDeferred=$.Deferred(),t=window.setInterval(function(){log("sending ready? message"),n.sendMessage("ready?",JSON.stringify(n.options))},50),this.appReadyDeferred.promise().then(function(){log("clearing ready? interval"),window.clearInterval(t)})},n.prototype.show=function(){var n=this;this.ensureFrameInitialized().then(function(){return n.waitForAppReadyMessage().then(function(){n.resize().then(function(){return n.containerElement.show()})})})},n.prototype.hide=function(){(this.options.closeOnHide===undefined||this.options.closeOnHide)&&this.sendMessage("close"),this.containerElement.hide()},n.prototype.close=function(){this.sendMessage("close"),this.containerElement.hide()},n}()