var hbl_hostname="hab.la/rpc";var hbl_static_hostname="static.hab.la/js";var hbl={'util':{},'pipelines':{},'themes':{},'hwindow_util':{},'plugins':{},'hwindow':{'config':function(){this.vars={};this.palette={};this.style_id={};this.style={};this.style_classes={};this.style_classes_map={};}},jsoncallback_norv:function(){}};hbl.util.eventmanager=function(){this.registered_events={};this.register=function(event_name,handler,priority){if(this.registered_events[event_name]==undefined){this.registered_events[event_name]=new Array();}if(priority==undefined){priority=999;}this.registered_events[event_name].push({"handler":handler,"priority":priority});this.registered_events[event_name]=this.registered_events[event_name].sort(function(a,b){return(a["priority"]-b["priority"]);});};this.handle=function(event_name,arg){if(this.registered_events[event_name]==undefined)return;if(arg==undefined){arg={};}arg["window"]=this.win;arg["event_name"]=event_name;hbl.util.debug("handling:"+event_name);var buf="";for(var ii in arg){buf+=ii+"="+arg[ii]+"|";}hbl.util.debug("args"+buf);for(var i in this.registered_events[event_name]){if(this.registered_events[event_name][i]&&typeof(this.registered_events[event_name][i]["handler"])=="function"){this.registered_events[event_name][i]["handler"](arg);}}};this.unregister_all=function(event_name){this.registered_events[event_name]=[];};this.setWindow=function(win){this.win=win;};};var hblrpcTrick=1;var hblDEBUG=0;var hblnoconsole=1;var hblHideUnsupported=1;var hblJavaScriptVersion="0.5i";var hblBegincall="begin_2";hbl.eventmgr=new hbl.util.eventmanager();habla_window=undefined;//-->
hbl.hconfig=function(){this.vars={poll:false,input_width_offset_normal:48,input_width_offset_ie:45,'theme_url':'../theme.js'};this.palette={};this.style={};this.plugins=new hbl.util.pluginlist();this.style_id={};this.style_classes={};this.style_classes_map={};this.merge=function(config_obj,overwrite){this.copy_hash(this.vars,config_obj.vars,overwrite);this.copy_hash(this.style,config_obj.style,overwrite);this.copy_hash(this.palette,config_obj.palette,overwrite);this.copy_hash(this.style_id,config_obj.style_id,overwrite);this.copy_hash(this.style_classes,config_obj.style_classes,overwrite);this.copy_hash(this.style_classes_map,config_obj.style_classes_map,overwrite);if(config_obj.plugins&&config_obj.plugins.todo){for(i in config_obj.plugins.todo){this.plugins.add(config_obj.plugins.todo['handler'],config_obj.plugins.todo['priority']);}}};this.copy_hash=function(arr1,arr2,overwrite){if(!arr2)return;for(i in arr2){if(overwrite||arr1[i]==undefined){arr1[i]=arr2[i];}}};this.up=function(config_obj){this.merge(config_obj,true);};};hbl.hconfig.prototype.setMargin=function(val){this.setMargins(val,val,val,val);};hbl.hconfig.prototype.setMargins=function(left,top,right,bottom){this.vars["bottom_margin"]=bottom;this.vars["right_margin"]=right;this.vars["left_margin"]=left;this.vars["top_margin"]=top;this.vars["bottom_margin_px"]=bottom+"px";this.vars["right_margin_px"]=right+"px";this.vars["left_margin_px"]=left+"px";this.vars["top_margin_px"]=top+"px";};hbl.hconfig.prototype.setPosition=function(val){this.vars['corner_position']=val;if(val=="BR"||val=="BottomRight"){this.vars["xcorner"]="right";this.vars["ycorner"]="bottom";this.style_classes['habla_window_div_position_floating']='position: $vars["position"]; bottom: $vars["bottom_margin_px"]; right: $vars["right_margin_px"];';this.style_classes['habla_window_div_position_floating_ie']='position: $vars["position_ie6"]; bottom: $vars["bottom_margin_px"]; right: $vars["right_margin_px"];';}else if(val=="BL"||val=="BottomLeft"){this.vars["xcorner"]="left";this.vars["ycorner"]="bottom";this.style_classes['habla_window_div_position_floating']='position: $vars["position"]; bottom: $vars["bottom_margin_px"]; left: $vars["left_margin_px"];';this.style_classes['habla_window_div_position_floating_ie']='position: $vars["position_ie6"]; bottom: $vars["bottom_margin_px"]; left: $vars["left_margin_px"];';}else if(val=="TR"||val=="TopRight"){this.vars["xcorner"]="right";this.vars["ycorner"]="top";this.style_classes['habla_window_div_position_floating']='position: $vars["position"]; top: $vars["top_margin_px"]; right: $vars["right_margin_px"];';this.style_classes['habla_window_div_position_floating_ie']='position: $vars["position_ie6"]; top: $vars["top_margin_px"]; right: $vars["right_margin_px"];';}else if(val=="TL"||val=="TopLeft"){this.vars["xcorner"]="left";this.vars["ycorner"]="top";this.style_classes['habla_window_div_position_floating']='position: $vars["position"]; top: $vars["top_margin_px"]; left: $vars["left_margin_px"];';this.style_classes['habla_window_div_position_floating_ie']='position: $vars["position_ie6"]; top: $vars["top_margin_px"]; left: $vars["left_margin_px"];';}if(hbl.util.BrowserDetect.backwards_position){this.style_classes['habla_window_div_position']=this.style_classes['habla_window_div_position_floating_ie'];}else{this.style_classes['habla_window_div_position']=this.style_classes['habla_window_div_position_floating'];}};hbl.hconfig.prototype.setInline=function(val){if(val){this.vars["is_inline"]=1;this.style_classes['habla_window_div_position']=this.style_classes['habla_window_div_position_inline'];}else{this.vars["is_inline"]=0;if(hbl.util.BrowserDetect.backwards_position){this.style_classes['habla_window_div_position']=this.style_classes['habla_window_div_position_floating_ie'];}else{this.style_classes['habla_window_div_position']=this.style_classes['habla_window_div_position_floating'];}}};hbl.hconfig.prototype.setHeight=function(val){this.vars["convo_height"]=val;this.vars["convo_height_px"]=val+"px";};hbl.hconfig.prototype.setWidth=function(val){this.vars["width"]=val;this.vars["width_px"]=val+"px";if(hbl.util.BrowserDetect.backwards_dimension){hbl.util.debug("212/24");this.vars["input_width_px"]=(this.vars["width"]-this.vars["input_width_offset_ie"])+"px";this.vars["input_height_px"]="24px";}else{hbl.util.debug("202/18");this.vars["input_width_px"]=(this.vars["width"]-this.vars["input_width_offset_normal"])+"px";this.vars["input_height_px"]="18px";}};hbl.hconfig.prototype.render_all_styles=function(htheme){var div_id;for(div_id in this.style_classes_map){this.render_element_classes(htheme,div_id);}for(div_id in this.style_id){this.render_element_id(htheme,div_id);}};hbl.hconfig.prototype.render_element_classes=function(htheme,div_id){var style_class;if(this.style_classes_map[div_id]){for(style_class in this.style_classes_map[div_id]){this.render_class(htheme[div_id],this.style_classes_map[div_id][style_class]);}}};hbl.hconfig.prototype.render_element_id=function(htheme,div_id){this.render_style(htheme[div_id],this.style_id[div_id]);};hbl.hconfig.prototype.render_element=function(htheme,div_id){this.render_element_classes(htheme,div_id);this.render_element_id(htheme,div_id);};hbl.hconfig.prototype.render_class=function(obj,class_id){this.render_style(obj,this.style_classes[class_id]);};hbl.hconfig.prototype.render_part=function(part){var buffer="";if(part==undefined)return "";part=part+"";for(var i=0;i<part.length;i++){if(part.substr(i,1)=='$'){var done=0;var to_check="";var j;for(j=i+1;((j<part.length)&& !done);j++){if(part.substr(j,1)!=' '&&part.substr(j,1)!='$'&&part.substr(j,1)!="]"){to_check+=part.substr(j,1);}else if(part.substr(j,1)==']'){done=1;to_check+=part.substr(j,1);i=j;}else{done=1;i=j-1;}}if(j==part.length){i=part.length;}try{buffer+=this.render_part(eval("this."+to_check));}catch(e){debug("Error rendering:"+to_check+" "+e.name+" "+e.message);}}else{buffer+=part.substr(i,1);}}return buffer;};hbl.hconfig.prototype.render_js_class_style=function(obj,css_class,class_style_name){var list=hbl.util.getElementsByClass(obj,css_class);for(var i=0;i<list.length;i++){this.render_style(list[i],this.style_classes[class_style_name]);hbl.util.debug("rendered style"+this.style_classes[class_style_name]);}};hbl.hconfig.prototype.render_js_style=function(obj,css_name){hbl.util.debug("render"+obj);return hbl.util.css.set_css(obj,this.render_part(this.style[css_name]));};hbl.hconfig.prototype.render_style=function(obj,css_value){hbl.util.debug("render style"+obj);return hbl.util.css.set_css(obj,this.render_part(css_value));};hbl.hconfig.prototype.style_to_css=function(css_name,css_val,render_it){var output='';output=css_name+"{"+"\n";var parts=css_val.split(";");for(var p in parts){if(parts[p].length>1){var va=parts[p].match(/\$[^\]]+\]/);if(va){if(render_it){parts[p]=this.render_part(parts[p]);}parts[p]=parts[p]+";\t /* "+va+" */";}else{parts[p]+=";"}output+="\t"+hbl.util.clean_whitespace(parts[p])+"\n";}}output+="}\n";return output;};hbl.hconfig.prototype.render_ie_hacks=function(){if((hbl.util.BrowserDetect.backwards_position&& !this.vars["is_inline"])||this.vars["yahoo_ui"]){hbl.oldonresize=false;if(window.onresize&&typeof(window.onresize)=="function")hbl.oldonresize=window.onresize;window.onresize=function(e){hbl.util.debug("resized");if(window.event)e=window.event;habla_window.eventmgr.handle("document_resized",{"event":e});if(hbl.oldonresize)hbl.oldonresize();};hbl.oldonscroll=false;if(window.onscroll&&typeof(window.onscroll)=="function")hbl.oldonscroll=window.onscroll;window.onscroll=function(e){hbl.util.debug("scrolled");if(window.event)e=window.event;hbl.eventmgr.handle("document_scrolled",{"event":e});if(hbl.oldonscroll)hbl.oldonscroll();};hbl.eventmgr.register("document_scrolled",function(arg){arg["window"].config.ie_position_fix(arg["event"],arg["window"]);});hbl.eventmgr.register("document_resized",function(arg){arg["window"].config.ie_position_fix(arg["event"],arg["window"]);});hbl.eventmgr.register("habla_window_changed",function(arg){if(!arg["window"])return;arg["window"].config.ie_position_fix(arg["event"],arg["window"]);});hbl.util.debug("set hacks for IE.. now much cleaner");}};hbl.hconfig.prototype.ie_position_fix=function(e,hwindow){var newx=0;var newy=0;if(this.vars["xcorner"]=="right"){newx= -this.vars["right_margin"]-hwindow.theme.habla_window_div.offsetWidth+(document.documentElement.clientWidth?document.documentElement.clientWidth:document.body.clientWidth)+(document.documentElement.scrollLeft?document.documentElement.scrollLeft:document.body.scrollLeft);}else{newx=this.vars["left_margin"]+(document.documentElement.scrollRight?document.documentElement.scrollRight:document.body.scrollRight);}if(this.vars["ycorner"]=="bottom"){newy= -this.vars["bottom_margin"]-hwindow.theme.habla_window_div.offsetHeight+(document.documentElement.clientHeight?document.documentElement.clientHeight:document.body.clientHeight)+(document.documentElement.scrollTop?document.documentElement.scrollTop:document.body.scrollTop);}else{newy=this.vars["top_margin"]+(document.documentElement.scrollTop?document.documentElement.scrollTop:document.body.scrollTop);}hbl.util.debug("right:"+this.vars["right_margin"]);hbl.util.debug("offset:"+hwindow.offsetWidth);hbl.util.debug("width1:"+document.documentElement.clientWidth);hbl.util.debug("scroll1:"+document.documentElement.scrollLeft);hbl.util.debug("scroll:"+document.body.scrollLeft);hbl.util.debug("width:"+document.body.clientWidth);hbl.util.debug("x:"+newx);hbl.util.debug("y:"+newy);hwindow.theme.setXY(newx,newy);};hbl.hconfig.prototype.remap_palette=function(){var map={mainbg:'main_bg',mainfg:'main_fg',titlebg:'title_bg',titlefg:'title_fg',buttonbg:'button_bg',buttonfg:'button_fg',buttonhi:'button_bg_highlight',titlebg_highlight:'title_bg_highlight',titlefg_highlight:'title_fg_highlight'};for(var i in map){if(this.palette[i]){this.palette[map[i]]=this.palette[i];}}if(this.palette['buttonfg']){this.palette['button_fg_highlight']=this.palette['buttonfg'];}};hbl.hconfig.prototype.init_from_config=function(){this.setWidth(this.vars["width"]);this.setHeight(this.vars["height"]);if(!this.vars["is_inline"]){this.setPosition(this.vars["corner_position"]);}else{this.setInline(this.vars["is_inline"]);}};hbl.hconfig.prototype.load_defaults=function(){this.plugins=new hbl.util.pluginlist();this.palette=new Array();this.palette['main_bg']='#ffffff';this.palette['main_fg']='#000000';this.palette['title_bg']='#333333';this.palette['title_fg']='#ffffff';this.palette['title_fg_hover']='#ffffff';this.palette['button_bg']='#333333';this.palette['button_fg']='#ffffff';this.palette['button_fg_highlight']='#ffffff';this.palette['button_bg_highlight']='#666666';this.palette['control']='#cccccc';this.palette['link']='#990000';this.palette['link_highlight']='#ff0000';this.palette['local']='#ff0000';this.palette['remote']='#0000ff';this.palette['title_bg_highlight']='red';this.palette['title_fg_highlight']='#00ffff';this.vars=new Array();this.vars["bottom_margin"]=10;this.vars["right_margin"]=10;this.vars["left_margin"]=10;this.vars["top_margin"]=10;this.vars["bottom_margin_px"]="10px";this.vars["right_margin_px"]="10px";this.vars["left_margin_px"]="10px";this.vars["top_margin_px"]="10px";this.vars["myname"]="you";this.vars["corner_position"]="BR";this.vars["position"]="fixed";this.vars["position_ie6"]="absolute";this.vars["width"]=250;this.vars["width_px"]="250px";this.vars["input_width_offset_normal"]=48;this.vars["input_width_offset_ie"]=45;this.vars["say_text"]="Mensaje: ";this.vars["input_box_size"]="40";this.vars["check_for_status"]="Iniciando www.debianware.com chat";this.vars["disableGoogleAnalytics"]=0;this.vars["expandOnMessageReceived"]=0;this.vars["plugin_path"]="http://static.hab.la/js/plugins/";this.vars["divid"]="habla_window_div";this.vars["poll"]=false;if(hbl.util.BrowserDetect.browser=="Opera"){this.vars["poll"]=true;}this.vars["xcorner"]="right";this.vars["ycorner"]="bottom";hbl.util.debug("bd is "+hbl.util.BrowserDetect.backwards_dimension);this.setWidth(this.vars["width"]);this.vars["convo_height_px"]="155px";this.vars["convo_height"]=155;this.vars["height"]=155;this.vars["panel_offset"]=20;this.vars["in_chat_text"]="En conversaci&#243;n";this.vars["before_chat_text"]="Click aqu&#237; para consulta Online";this.vars["not_available_text"]="No disponible";this.vars["busy_text"]="Ocupado";this.vars["away_text"]="Sin actividad";this.vars["offline_message"]="<em>No estamos disponibles.&nbsp; Por favor intente luego.</em>";this.vars['welcome_msg']='';this.vars["busy_message"]="<em>No estamos disponibles.&nbsp; Por favor intente luego.</em>";this.vars["enable_buttons"]=1;this.vars["hide_min_max_buttons"]=0;this.vars["local_name_override"]=undefined;this.vars["url_handler_target_window"]="_top";this.vars["url_handler"]="http://static.hab.la/js/html/url_handler.html";this.vars["url_local_pattern"]=document.domain;this.vars["parse_links"]=1;this.vars["is_inline"]=0;this.vars["start_expanded"]=0;this.vars["start_hidden"]=0;this.vars["hide_not_available"]=0;this.vars["append_to_body"]=1;this.vars["show_away"]=0;this.vars["hide_when_away"]=0;this.vars["show_away_as_header"]=0;this.vars['habla_special_div_show_type']="block";this.vars["flash_icons"]=1;this.vars["default_flash_off_icon"]="http://static.hab.la/js/images/white.ico";this.vars["default_flash_on_icon"]="http://static.hab.la/js/images/orange.ico";this.style_classes_map={};this.style_id={};this.style_classes={};this.style=new Array();this.style["habla_link_a"]='font-family: verdana, sans-serif; text-transform: uppercase; font-size: 9px; letter-spacing: 2px; font-weight: bold; color: $palette["link"]';};hbl.util.pluginlist=function(){this.todo=new Array();this.defined={};this.add=function(handler,priority){if(priority==undefined){priority=999;}if(handler==undefined)return;if(this.defined[handler.name])return;this.defined[handler.name]=1;this.todo.push({"handler":handler,"priority":priority});this.todo=this.todo.sort(function(a,b){return(a["priority"]-b["priority"]);});};this.load=function(arg){var ret=arg;for(var i=0;i<this.todo.length;i++){hbl.util.debug("plugin list running");if(this.todo[i]&&this.todo[i]["handler"]&&typeof(this.todo[i]["handler"]["load"])=="function"&&this.defined[this.todo[i]["handler"].name]==1){hbl.util.debug("pluginlist loaded"+this.todo[i]["handler"].load.toString());this.todo[i]["handler"].load(arg);this.defined[this.todo[i]["handler"].name]=2;}}return ret;};};hbl.util.debug=function(x){if(hblDEBUG==undefined|| !hblDEBUG)return;if(document.getElementById("hbl_debug")){d=document.getElementById("hbl_debug");d.innerHTML=x+'<br />'+d.innerHTML;}else if(window.console){window.console.log(x);}else if(!hblnoconsole&&console!=undefined&&console.log){console.log(x);}else{alert(x);}};hbl.util.get_body=function(){var tmp=document.getElementsByTagName("html");var html=null;if(tmp.length<1){html=document.createElement("html");document.appendChild(html);}else{html=tmp[0];}tmp=document.getElementsByTagName('body');var html_doc=null;if(tmp.length>0){html_doc=document.getElementsByTagName('body').item(0);}else{html_doc=document.createElement('body');html.appendChild(html_doc);}return html_doc;};hbl.util.simple_load_js_async=function(url){html_doc=hbl.util.get_body();var js=document.createElement('script');js.setAttribute('language','javascript');js.setAttribute('type','text/javascript');js.setAttribute('src',url);hbl.util.debug("docall: hitting "+url);html_doc.appendChild(js);};hbl.util.last_js_id=0;hbl.util.pipeline=function(hosto){this.todo=new Array();this.host_obj=hosto;this.add=function(handler,priority){if(priority==undefined){priority=999;}this.todo.push({"handler":handler,"priority":priority});this.todo=this.todo.sort(function(a,b){return(a["priority"]-b["priority"]);});};this.run=function(arg){var ret=arg;for(var i=0;i<this.todo.length;i++){if(this.todo[i]&&typeof(this.todo[i]["handler"])=="function"){hbl.util.debug("pipeline"+this.todo[i]["handler"].toString());ret=this.todo[i]["handler"](arg,this.host_obj);if(ret==undefined)return undefined;arg=ret;}}return ret;};this.setTarget=function(tt){this.host_obj=tt;};};hbl.util.pluginloader=function(conf,client,hwindow){HABLA_PLUGIN_ARGS={"conf":conf,"client":client,"hwindow":hwindow};conf.plugins.load({"conf":conf,"client":client,"hwindow":hwindow});};hbl.util.timestamp=function(){var now=new Date();return now.toUTCString();};hbl.util.reportException=function(e){};hbl.util.set_cookie=function(name,value,expire,extra){var d=new Date();if(expire==undefined)expire=24*60*60*1000;d.setTime(d.getTime()+expire);var expires=d.toGMTString();var value=escape(value);var cook=name+"="+value+"; expires="+expires+"; path=/";if(extra!=undefined){cook+=extra;}document.cookie=cook;};hbl.util.get_cookie=function(name){var nameEQ=name+"=";var ca=document.cookie.split(';');for(var i=0;i<ca.length;i++){var c=ca[i];while(c.charAt(0)==' ')c=c.substring(1,c.length);if(c.indexOf(nameEQ)==0)return c.substring(nameEQ.length,c.length);}return null;};hbl.util.load_js_async=function(url){hbl.util.last_js_id+=1;var scriptid="jscript"+hbl.util.last_js_id;if(url.indexOf("?")> -1){url+="&"+scriptid;}else{url+="?"+scriptid;}html_doc=hbl.util.get_body();var js=document.createElement('script');js.setAttribute('language','javascript');js.setAttribute('id',scriptid);js.setAttribute('type','text/javascript');js.setAttribute('src',url);hbl.util.debug("docall: hitting "+url);html_doc.appendChild(js);};hbl.util.remove_element=function(element_id){var el=document.getElementById(element_id);if(el!=undefined&&el.parentNode!=undefined)el.parentNode.removeChild(el);};hbl.util.as_dom=function(element){var ret;if(typeof(element)=="object"){return element;}ret=document.createElement("span");ret.innerHTML=element;return ret;};hbl.util.find_or_create_el=function(elid,el_type,append_to){var ret=document.getElementById(elid);if(!ret||ret.length<0){if(el_type==undefined)el_type="div";ret=document.createElement(el_type);ret.setAttribute("id",elid);if(append_to!=undefined){append_to.appendChild(ret);}}return ret;};hbl.util.find_or_create_div=function(divid,append_to){return hbl.util.find_or_create_el(divid,"div",append_to);};hbl.util.hide_div=function(div){if(typeof(div)!="object"){div=document.getElementById(div);}if(div!=undefined){div.style.display="none";return true;}return false;};hbl.util.show_div=function(div,show_val){if(show_val==undefined)show_val="block";if(typeof(div)!="object"){div=document.getElementById(div);}if(div!=undefined){div.style.display=show_val;return true;}return false;};hbl.util.clean_whitespace=function(val){val=val.replace(/^\s*/,"");val=val.replace(/\s*$/,"");val=val.replace("'","");return val;};hbl.util.throttle_length=700;hbl.util.throttle_ts=null;hbl.util.doThrottle=function(){var ts=(new Date()).getTime();var doThr=false;if(hbl.util.throttle_ts&&(ts-hbl.util.throttle_ts)<hbl.util.throttle_length)doThr=true;hbl.util.throttle_ts=ts;return doThr;};hbl.util.BrowserDetect={_initialized:false,init:function(){if(this._initialized)return;this.browser=this.searchString(this.dataBrowser,1)||"An unknown browser";this.version=this.searchVersion(navigator.userAgent)||this.searchVersion(navigator.appVersion)||"an unknown version";this.OS=this.searchString(this.dataOS)||"an unknown OS";this.backwards_position=false;this.backwards_dimension=false;if(document.compatMode=="BackCompat"){this.backwards_dimension=true;}hbl.util.debug(document.compatMode+" "+this.backwards_dimension);if(this.browser=="Explorer"){this.backwards_position=true;if((this.version>=7||(document.body&&typeof document.body.style.maxHeight!="undefined"))&&document.compatMode!="BackCompat"){hbl.util.debug("IE7 compat mode");this.backwards_position=false;}}this._initialized=true;},searchString:function(data,browser){for(var i=0;i<data.length;i++){var dataString=data[i].string;var dataProp=data[i].prop;this.versionSearchString=data[i].versionSearch||data[i].identity;if(dataString){if(dataString.indexOf(data[i].subString)!= -1){if(browser!=undefined)this.supported=data[i].supported;return data[i].identity;}}else if(dataProp){if(data[i].identity)this.supported=data[i].supported;return data[i].identity;}}},searchVersion:function(dataString){var index=dataString.indexOf(this.versionSearchString);if(index== -1)return;return parseFloat(dataString.substring(index+this.versionSearchString.length+1));},dataBrowser:[{string:navigator.userAgent,subString:"OmniWeb",versionSearch:"OmniWeb/",identity:"OmniWeb"},{string:navigator.vendor,subString:"Apple",identity:"Safari",supported:"1"},{prop:window.opera,identity:"Opera",supported:"1"},{string:navigator.vendor,subString:"iCab",identity:"iCab"},{string:navigator.vendor,subString:"KDE",identity:"Konqueror"},{string:navigator.userAgent,subString:"Firefox",identity:"Firefox",supported:"1"},{string:navigator.vendor,subString:"Camino",identity:"Camino",supported:"1"},{string:navigator.userAgent,subString:"Netscape",identity:"Netscape",supported:"1"},{string:navigator.userAgent,subString:"MSIE",identity:"Explorer",versionSearch:"MSIE",supported:"1"},{string:navigator.userAgent,subString:"Gecko",identity:"Mozilla",versionSearch:"rv",supported:"1"},{string:navigator.userAgent,subString:"Mozilla",identity:"Netscape",versionSearch:"Mozilla",supported:"1"}],dataOS:[{string:navigator.platform,subString:"Win",identity:"Windows"},{string:navigator.platform,subString:"Mac",identity:"Mac"},{string:navigator.platform,subString:"Linux",identity:"Linux"}]};hbl.util.decode_base64=function(input,eval_it){var output="";if(window.atob){output=window.atob(input);}else{var keyStr="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";var chr1,chr2,chr3;var enc1,enc2,enc3,enc4;var i=0;input=input.replace(/[^A-Za-z0-9\+\/\=]/g,"");do{enc1=keyStr.indexOf(input.charAt(i++));enc2=keyStr.indexOf(input.charAt(i++));enc3=keyStr.indexOf(input.charAt(i++));enc4=keyStr.indexOf(input.charAt(i++));chr1=(enc1<<2)|(enc2>>4);chr2=((enc2&15)<<4)|(enc3>>2);chr3=((enc3&3)<<6)|enc4;output=output+String.fromCharCode(chr1);if(enc3!=64){output=output+String.fromCharCode(chr2);}if(enc4!=64){output=output+String.fromCharCode(chr3);}}while(i<input.length);}if(eval_it){var output1;eval("output1 = "+output);return output1;}return output;};hbl.util.css={set_css:function(objj,css){hbl.util.debug("setting:  "+objj+" "+css);var parts=css.split(";");for(var i=0;i<parts.length;i++){namval=parts[i].split(":");try{if(namval.length==2){name=hbl.util.css.map_css_to_js(namval[0]);if(name.indexOf("|")>0){names=name.split("|");for(var j=0;j<names.length;j++){eval("objj.style."+names[j]+"= "+"'"+hbl.util.clean_whitespace(namval[1])+"'");}}else{eval("objj.style."+name+"= "+"'"+hbl.util.clean_whitespace(namval[1])+"'");}}}catch(e){hbl.util.debug("objj.style."+hbl.util.css.map_css_to_js(namval[0])+"= "+"'"+hbl.util.clean_whitespace(namval[1])+"'");hbl.util.debug("error css Rendering:"+e.message);}}},css_to_js:{"float":"cssFloat|styleFloat"},map_css_to_js:function(name){name=hbl.util.clean_whitespace(name);if(hbl.util.css.css_to_js[name]&&hbl.util.css.css_to_js[name].length>0)return hbl.util.css.css_to_js[name];var parts=name.split("-");name="";for(var i=0;i<parts.length;i++){tn=parts[i].toLowerCase();if(i>0)tn=tn.substr(0,1).toUpperCase()+tn.slice(1);name+=tn;}return name;}};hbl.util.getElementsByClass=function(node,classname){if(!node)node=document.getElementsByTagName("body")[0];var a=[];var re=new RegExp('\\b'+classname+'\\b');var els=node.getElementsByTagName("*");for(var i=0,j=els.length;i<j;i++){if(re.test(els[i].className))a.push(els[i]);hbl.util.debug("Got "+els[i].className);}return a;};hbl.client={incoming_pipeline:new hbl.util.pipeline(),pollingmanager:{LAG_CONSTANT:25*1000,GET_MESSAGES_TIMEOUT:55*1000,ACTIVE_CHAT:70*1000,RECENTLY_ACTIVE_CHAT:120*1000,FIRST_POLL_TIME:0.8*1000,RECENTLY_ACTIVE_CHAT_TIMEOUT:25*1000,IGNORE_LAG_TIME:10*1000,MAX_POLL_TIME:120*60*1000,check_failed_polling_rate:20*1000,THROTTLE_THRESHOLD_MESSAGE:5*60*1000,LAST_ACTION_THROTTLE_THRESHOLD:1*1000,LAST_ACTION_THROTTLE_MIN:2*1000,last_poll_start_time:0,last_poll_end_time:0,first_poll_time:0,last_action_time:0,last_sent_message_time:0,next_poll_time:0,current_poll_rate:0,check_for_failed_timer:false,last_poll_timer:false,event_driven:false,expected_finish:0,rate_array:false,build_rates:function(){if(hbl.client.pollingmanager.rate_array!=false)return;hbl.client.pollingmanager.rate_array=[{last_action:0,time_on_page:4*60*1000,timeout:45*1000,opavailable:false},{last_action:0,time_on_page:2*60*60*1000,timeout:25*60*1000,opavailable:false},{polling:false,last_action:70*1000,time_on_page:0,timeout:0,opavailable:true},{polling:true,last_action:5*1000,time_on_page:0,timeout:600,opavailable:true},{polling:true,last_action:15*1000,time_on_page:0,timeout:800,opavailable:true},{polling:true,last_action:30*1000,time_on_page:0,timeout:1500,opavailable:true},{polling:true,last_action:60*1000,time_on_page:0,timeout:3*1000,opavailable:true},{polling:true,last_action:90*1000,time_on_page:0,timeout:10*1000,opavailable:true},{last_action:0,time_on_page:2*60*1000,timeout:20*1000,opavailable:true},{last_action:0,time_on_page:5*60*1000,timeout:25*1000,opavailable:true},{last_action:0,time_on_page:15*60*1000,timeout:30*1000,opavailable:true},{last_action:0,time_on_page:45*60*1000,timeout:45*1000,opavailable:true},{last_action:0,time_on_page:2*60*60*1000,timeout:2*60*1000,opavailable:true},{last_action:0,time_on_page:8*60*60*1000,timeout:15*60*1000,opavailable:true},{last_action:0,time_on_page:24*60*60*1000,timeout:30*60*1000,opavailable:true}];},get_rate:function(opavailable,opbusy,passive_mode,force_poll){var now=new Date();var rate= -1;if(hbl.client.pollingmanager.first_poll_time==0&&hbl.client.pollingmanager.rate_array==false){hbl.client.pollingmanager.build_rates();return hbl.client.pollingmanager.FIRST_POLL_TIME;}if(passive_mode)return hbl.client.pollingmanager.MAX_POLL_TIME;var time_on_page=now.getTime()-hbl.client.pollingmanager.first_poll_time;var last_action=now.getTime()-hbl.client.pollingmanager.last_action_time;if(last_action<hbl.client.pollingmanager.LAST_ACTION_THROTTLE_THRESHOLD&&now.getTime()-hbl.client.pollingmanager.last_sent_message_time>hbl.client.pollingmanager.THROTTLE_THRESHOLD_MESSAGE){last_action=hbl.client.pollingmanager.LAST_ACTION_THROTTLE_MIN;}hbl.util.debug(" time on page: "+time_on_page);hbl.util.debug(" last_action: "+last_action);var ar=hbl.client.pollingmanager.rate_array;for(i in ar){hbl.util.debug("RUNNING HERE");hbl.util.debug(ar[i]);if((ar[i]['polling']==force_poll||ar[i]['polling']==undefined)&&ar[i]['opavailable']==opavailable&&(ar[i]['passive_mode']==undefined||ar[i]['passive_mode']==passive_mode)&&(ar[i]['time_on_page']>time_on_page||ar[i]['last_action']>last_action)){return ar[i]['timeout'];}}return hbl.client.pollingmanager.MAX_POLL_TIME;},start_next_poll:function(opavailable,opbusy,force_poll,force_passive,poll_mode){if(hbl.client.pollingmanager.check_for_failed_timer==false){hbl.client.pollingmanager.check_for_failed_timer=setTimeout("hbl.client.pollingmanager.check_failed_polling()",hbl.client.pollingmanager.check_failed_polling_rate);}var rate=hbl.client.pollingmanager.get_rate(opavailable,opbusy,force_passive,force_poll);hbl.util.debug("Opavailable : "+opavailable+" busy:"+opbusy+" -- "+force_poll);hbl.util.debug("CURRENT RATE IS: "+rate);hbl.util.debug("PASSIVE: "+force_passive);hbl.client.pollingmanager.current_poll_rate=rate;var now=new Date();if(hbl.client.pollingmanager.next_poll_time>now.getTime()&&hbl.client.pollingmanager.next_poll_time<now.getTime()+rate){}else{if(hbl.client.pollingmanager.last_poll_timer!=false){window.clearTimeout(hbl.client.pollingmanager.last_poll_timer);}hbl.client.pollingmanager.next_poll_time=now.getTime()+rate;if(rate==0){hbl.client.pollingmanager.expected_finish=hbl.client.pollingmanager.GET_MESSAGES_TIMEOUT+now.getTime();}else{hbl.client.pollingmanager.expected_finish=hbl.client.pollingmanager.next_poll_time+hbl.client.pollingmanager.LAG_CONSTANT;}hbl.client.pollingmanager.last_poll_timer=window.setTimeout("hbl.client.pollingmanager.pollfunc("+(poll_mode==true?"true":"")+")",rate);}},pollfunc:function(arg){var now=new Date();hbl.client.pollingmanager.last_poll_start_time=now.getTime();if(hbl.client.pollingmanager.first_poll_time==0){hbl.client.pollingmanager.first_poll_time=now.getTime();}hbl.client.get_messages(arg);},finished_last_poll:function(){var now=new Date();hbl.client.pollingmanager.last_poll_end_time=now.getTime();},saction:function(){var now=new Date();hbl.client.pollingmanager.last_sent_message_time=now.getTime();},raction:function(){var now=new Date();hbl.client.pollingmanager.last_action_time=now.getTime();},set_expected_finish:function(val){var now=new Date();hbl.client.pollingmanager.expected_finish=val+now.getTime();},check_failed_polling:function(){var now=new Date();if(hbl.client.pollingmanager.last_poll_start_time>hbl.client.pollingmanager.last_poll_end_time&&now.getTime()>hbl.client.pollingmanager.expected_finish&&hbl.client.pollingmanager.current_poll_rate>hbl.client.pollingmanager.IGNORE_LAG_TIME){window.clearTimeout(hbl.client.pollingmanager.last_poll_timer);hbl.client.jsoncallback({},null);if(hbl.client.last_getmessages.getTime()-now<0){hbl.client.get_messages();}}hbl.client.pollingmanager.check_for_failed_timer=setTimeout("hbl.client.pollingmanager.check_failed_polling()",hbl.client.pollingmanager.check_failed_polling_rate);}},callbacks:{begin:function(r){hbl.client.jsoncallback(r,hbl.client.begin_call_back);},sendmessage:function(r){hbl.client.msg_callback(r);},getmessages:function(r){hbl.client.pollingmanager.finished_last_poll();hbl.client.jsoncallback(r,hbl.client.callbacks.pollmessages1);},pollmessages:function(r){hbl.client.pollingmanager.finished_last_poll();hbl.client.jsoncallback(r,hbl.client.callbacks.pollmessages1);},pollmessages1:function(r){try{if(r.opavailable!=hbl.client.opavailable||hbl.client.opmessage!=r.opmessage||hbl.client.opstatus!=r.opstatus||hbl.client.opbusy!=r.opbusy){hbl.client.opavailable=r.opavailable;hbl.client.opmessage=r.opmessage;hbl.client.opstatus=r.opstatus;hbl.client.opbusy=r.opbusy;hbl.client.eventmgr.handle("operator_status_change",{"available":r.opavailable,"status":r.opstatus,"message":r.opmessage,"busy":r.opbusy});}hbl.client.append1(r.buffer);hbl.client.pollingmanager.start_next_poll(r.opavailable,r.opbusy,hbl.client.config.vars["poll"],(hbl.client.config.vars["start_passive"]&&r['passive_mode']));}catch(e){throw e;}},setnickname:function(r){}},siteid:"",wc_sid:"",sid:"",proxy:null,offline_timeout:55*1000,offline_timeout_default:55*1000,offline_timeout_slow:150*1000,online_timeout:20*1000,chatting_timeout:700,current_timeout:20*1000,first_timeout:800,no_chat_timeout:40*1000,last_msg_time:new Date(),check_get_message_timeout:20*1000,fast_polling:false,no_chat_timeout_slow:5*60*1000,online_poll_slow:120*1000,myname:"you",opstatus:null,opavailable:null,opmessage:null,chatting:false,buffer:new Array(),the_count:0,newlinecount:0,lastindex:0,last_getmessages:new Date(),jsondata:null,jsonthrottle_locked:false,datareadycallback:null,getmsgcallback:null,jsoncallback:function(data,callback){if(data["error"]){}if(callback!=null){hbl.util.debug(" => returned drcb to null");callback(data);}hbl.client.jsonthrottle_locked=false;if(hbl.client.proxy.callq.length>0){var tmp2=hbl.client.proxy.callq.shift();hbl.client.proxy.docall(tmp2[0],tmp2[1],tmp2[2],true);}},begin_call_back:function(r){if(r!=null){hbl.client.sid=r.sid;hbl.client.wcsid=r.sid;hbl.client.hblid=r.hblid;hbl.client.eventmgr.handle("chat_started",{"chatting":(r.chatting=="on"),"box_open":(r.box_open=="on"),"nick":r.nick,"box_visible":(r.box_visible=="on"),"opstatus":r['opstatus'],"opavailable":r['opavailable'],"opmessage":r['opmessage'],"opbusy":r['opbusy'],"config":r['config'],"dconfig":r['dconfig']});if(r.context){hbl.client.setContents(r.context);}hbl.util.set_cookie("wcsid",hbl.client.sid);hbl.util.set_cookie("hblid",hbl.client.hblid,24*60*60*1000*356);hbl.client.pollingmanager.start_next_poll(r.opavailable,r.opbusy,hbl.client.config.vars["poll"],(hbl.client.config.vars["start_passive"]&&(r.chatting!="on")),true);}else{}if(r.opavailable){for(i=0;i<hbl.client.messageq.length;++i){hbl.client.proxy.sendmessage(hbl.client.sid,hbl.client.messageq[i],hbl.client.msg_callback);}}},start:function(wc_sid,hbl_id,site_id,eventmgr,config){hbl.client.siteid=site_id;hbl.client.wcsid=wc_sid;if(hbl.client.hblid==undefined)hbl.client.hblid=hbl_id;hbl.client.eventmgr=eventmgr;hbl.client.config=config;hbl.client.event_driven=false;hbl.client.incoming_pipeline.setTarget(this);try{if(hblrpcTrick){hbl.client.proxy=new hbl.client.jsonproxy("aync."+hbl_hostname,true);var first_part=parseInt(Math.random()*1000).toString()+".event.";hbl.client.proxy2=new hbl.client.jsonproxy(first_part+hbl_hostname);}else{hbl.client.proxy=new hbl.client.jsonproxy(hbl_hostname);hbl.client.proxy2=hbl.client.proxy;}if(!hbl.config.vars['local_mode']){hbl.client.proxy.begin(hbl.client.wcsid,hbl.client.hblid,hbl.client.siteid,document.URL,document.referrer,config.vars["start_passive"],config.vars["force_nickname"],hbl.client.begin_call_back);}}catch(e){hbl.client.chatting=false;hbl.util.reportException(e);throw e;}},get_messages:function(force_poll){var r;hbl.util.debug("Got to get_messages");try{if(force_poll!=undefined||hbl.client.config.vars["poll"]||hbl.client.pollingmanager.current_poll_rate!=0){hbl.client.proxy.pollmessages(hbl.client.sid,hbl.client.lastindex,hbl.client.callbacks.pollmessages);}else{hbl.client.proxy2.getmessages(hbl.client.sid,hbl.client.lastindex,hbl.client.callbacks.getmessages);}}catch(e){hbl.util.reportException(e);hbl.client.chatting=false;throw e;throw "getmessage failed";}return false;},jsoncallback_norv:function(data){},jsonproxy:function(uri,rnd){this.uri=uri;this.callq=new Array();this.rnd=rnd;},check_getmsg:function(){},setContents:function(cont){if(!cont||cont.length==0)return;hbl.client.lastindex=0;for(i=0;i<cont.length;++i){hbl.client.buffer[hbl.client.buffer.length]=new Array(cont[i][0],cont[i][1]);if(cont[i][2]>hbl.client.lastindex)hbl.client.lastindex=cont[i][2];}hbl.client.newlinecount=1;hbl.client.pollingmanager.raction();hbl.client.eventmgr.handle("receive_message",{"type":"start",'msg':cont});},append:function(buf){if(!buf|| !(buf.length>0))return;for(i=0;i<buf.length;++i){hbl.client.buffer[hbl.client.buffer.length]=new Array(buf[i][0],buf[i][1]);}hbl.client.newlinecount+=buf.length;hbl.client.pollingmanager.raction();hbl.client.pollingmanager.saction();hbl.client.pollingmanager.start_next_poll(hbl.client.opavailable,hbl.client.opbusy,hbl.client.config.vars["poll"],false);hbl.client.eventmgr.handle("send_message",{"type":"local_update","msg":buf});},append1:function(buf){if(!buf|| !(buf.length>0))return;var message_array=[];var added=0;for(i=0;i<buf.length;++i){if(buf[i][2]>hbl.client.lastindex){var msg=hbl.client.incoming_pipeline.run(buf[i]);if(msg!=undefined){hbl.client.buffer[hbl.client.buffer.length]=msg;hbl.client.lastindex=msg[2];message_array.push(buf[i]);}if(buf[i])added+=1;}else{hbl.util.debug("GOT A DUPLICATE MESSAGE ID BACK:");}}hbl.client.newlinecount+=buf.length;if(added>0){hbl.client.pollingmanager.raction();}hbl.client.eventmgr.handle("receive_message",{"type":"remote_update","msg":message_array});},messageq:[],msg_callback:function(data){hbl.util.debug("Send message got:"+data);if(data["error"]=="no_site_id"){hbl.util.debug("Got an error");hbl.client.proxy.begin(hbl.client.wcsid,hbl.client.hblid,hbl.client.siteid,document.URL,document.referrer,hbl.client.config.vars["start_passive"],hbl.client.config.vars["force_nickname"],hbl.client.begin_call_back,false);}else{hbl.client.messageq.shift();}},sendmessage:function(msg){hbl.util.debug("chatclient.send "+msg);var r;try{hbl.client.messageq.push(msg);var tmp=new Array(new Array(hbl.client.myname,msg));hbl.client.append(tmp);hbl.client.proxy.sendmessage(hbl.client.sid,tmp[0][1],hbl.client.msg_callback);}catch(e){hbl.util.debug("EXCEPTION:"+e);throw e;}},setnickname:function(nick){hbl.util.debug("chatclient.setnickname "+nick);var r;try{hbl.client.proxy.setnickname(hbl.client.sid,nick);}catch(e){hbl.util.debug("EXCEPTION:"+e);throw e;}},sendexpand:function(){if(!hbl.client.proxy)return;hbl.client.proxy.expandchat(hbl.client.sid);},sendcompress:function(){if(!hbl.client.proxy)return;hbl.client.proxy.compresschat(hbl.client.sid);},sendend:function(){if(!hbl.client.proxy)return;hbl.client.proxy.endchat(hbl.client.sid);},sendhide:function(){if(!hbl.client.proxy)return;hbl.client.proxy.hidechat(hbl.client.sid);},sendshow:function(){if(!hbl.client.proxy)return;hbl.client.proxy.showchat(hbl.client.sid);}};hbl.client.jsonproxy.prototype.docall=function(fn,args,cb,throttle){if(hbl&&hbl.config&&hbl.config.vars['local_mode'])return;if(throttle){if(hbl.client.jsonthrottle_locked){if(this.callq.length<2)this.callq[this.callq.length]=new Array(fn,args,cb);return;}}var oururi='';var ret='';if(this.rnd)oururi=parseInt(Math.random()*10).toString()+".";oururi+=this.uri+"/"+fn+"?";for(i=0;i<args.length;++i){if(i>0)oururi+="&";ret='';if(args[i]){ret=encodeURI(args[i]+"").replace(/\#/g,"%23").replace(/\&/g,"%26");if(i==0)ret="HBLSID="+ret;oururi+=ret;}}if(throttle){hbl.client.jsonthrottle_locked=true;}hbl.util.load_js_async("http://"+oururi);return null;};hbl.client.jsonproxy.prototype.begin=function(sid,hblid,siteid,page,ref,start_passive,nickname,cb,throttle){if(throttle==undefined){throttle=true;}hbl.util.debug("Throttle is: "+throttle);var rnd=hblJavaScriptVersion+"-"+Math.random().toString();if(nickname){return this.docall(hblBegincall,new Array(sid,hblid,siteid,page,rnd,ref,start_passive,nickname),cb,throttle);}else{return this.docall(hblBegincall,new Array(sid,hblid,siteid,page,rnd,ref,start_passive),cb,throttle);}};hbl.client.jsonproxy.prototype.sendmessage=function(sid,msg,cb){var rnd=hblJavaScriptVersion+"-"+Math.random().toString();return this.docall("sendmessage",new Array(sid,msg,rnd),cb,false);};hbl.client.jsonproxy.prototype.setnickname=function(sid,nick,cb){return this.docall("setnickname",new Array(sid,nick),cb,false);};hbl.client.jsonproxy.prototype.getmessages=function(sid,idx,cb){hbl.client.the_count++;hbl.client.last_getmessages=new Date();return this.docall("getmessages",new Array(sid,idx.toString(),hblJavaScriptVersion+"-"+(hbl.client.the_count+Math.random()).toString()),cb,true);};hbl.client.jsonproxy.prototype.pollmessages=function(sid,idx,cb){hbl.client.the_count++;return this.docall("pollmessages",new Array(sid,idx.toString(),hblJavaScriptVersion+"-"+(hbl.client.the_count+Math.random()).toString()),cb,true);};hbl.client.jsonproxy.prototype.expandchat=function(sid,cb){return this.docall("expandchat",new Array(sid,hblJavaScriptVersion+"-"+Math.random().toString()),cb);};hbl.client.jsonproxy.prototype.compresschat=function(sid,cb){return this.docall("compresschat",new Array(sid,hblJavaScriptVersion+"-"+Math.random().toString()),cb);};hbl.client.jsonproxy.prototype.endchat=function(sid,cb){return this.docall("endchat",new Array(sid,hblJavaScriptVersion+"-"+Math.random().toString()),cb);};hbl.client.jsonproxy.prototype.showchat=function(sid,cb){return this.docall("showchat",new Array(sid,hblJavaScriptVersion+"-"+Math.random().toString()),cb);};hbl.client.jsonproxy.prototype.hidechat=function(sid,cb){return this.docall("hidechat",new Array(sid,hblJavaScriptVersion+"-"+Math.random().toString()),cb);};hbl._hwindow=function(client,config,eventmgr){this.config=config;this.client=client;this.handlers=false;this.theme=undefined;this.eventmgr=eventmgr;this.loaded=false;this.setTheme=function(theme){if(this.theme)this.theme.remove();this.theme=theme;this.theme.build(this.config,this.client);if(!this.loaded){this.loaded=true;if(hbl.util.BrowserDetect.backwards_position){hbl.config.render_ie_hacks();}}hbl.util.pluginloader(this.config,this.client,this);};this.register_handlers=function(){if(this.handlers)return;this.handlers=true;this.eventmgr.register("window_focus",this.events.onWindowFocus,0);this.eventmgr.register("window_click",this.events.onWindowFocus,0);this.eventmgr.register("window_submit",this.events.onWindowSubmit,0);this.eventmgr.register("window_form_submit",this.events.onWindowFormSubmit,0);this.eventmgr.register("window_topbar_clicked",this.events.topBarClicked,0);this.eventmgr.register("window_closebutt_clicked",this.events.closeClicked,0);this.eventmgr.register("window_sizebutt_clicked",this.events.topBarClicked,0);this.eventmgr.register("window_oplink_clicked",this.events.topBarClicked,0);this.eventmgr.register("operator_status_change",this.events.onOpstatusStatusChanged,0);this.eventmgr.register("receive_message",this.events.onChatUpdated,0);this.eventmgr.register("send_message",this.events.onChatUpdated,0);this.eventmgr.register("chat_started",this.events.onChatStarted,0);this.eventmgr.register("theme_loaded",this.events.onThemeLoaded,0);};this.get_operator_state=function(){if(this.config.vars["local_mode"]){return(this.config.vars["local_operator_state"]||"available");}if(this.opavailable){if(this.opbusy){return "busy";}else{if(this.opstatus=="chat"|| !this.opstatus||this.opstatus==""){return "available";}else{return "away";}}}else{return "notavailable";}};this.determine_window_status=function(arg){if(arg["chatting"])return true;if(arg["box_open"]||arg["window"].config.vars["start_expanded"]){return true;}if(arg["window"].config.vars["start_hidden"]){return false;}if(arg["window"].config.vars["hide_not_available"]&& !arg["opavailable"]){return false;}if(arg["window"].config.vars["hide_when_away"]&&(arg["opstatus"]!="chat"&&arg["opstatus"]!=undefined&&arg["opstatus"]!="")){return false;}return true;};this.setWindowText=function(){var opstate=this.get_operator_state();if(opstate=="notavailable"){this.setHeader(this.config.vars["not_available_text"]);this.setBody(this.config.vars["offline_message"]);return;}if(opstate=="away"){if(this.config.vars["show_away_as_header"]&&this.opmessage){this.setHeader(this.opmessage,true);}else{this.setHeader(this.config.vars["away_text"]);}if(this.client.buffer.length==0){this.setBody(this.config.vars["away_message"]||this.config.vars["offline_message"]);}}if(opstate=="busy"){this.setHeader(this.config.vars["busy_text"]);this.setBody(this.config.vars["busy_message"]);return;}if(this.client.buffer.length==0){this.setBody(this.config.vars["welcome_msg"]);if(this.expanded){this.setHeader(this.config.vars["in_chat_text"]);}else{this.setHeader(this.config.vars["before_chat_text"]);}}else{this.setHeader(this.config.vars["in_chat_text"]);}};this.appendFromBuffer=function(buffer){if(!this.theme){hbl.hwindow_last_buffer=buffer;this.eventmgr.register("theme_loaded",function(arg){arg["window"].appendFromBuffer(hbl.hwindow_last_buffer);hbl.hwindow_last_buffer="";},100);}else{for(i in buffer){this.theme.appendNiceMessage(buffer[i][0],buffer[i][1],true);}}};this.setHeader=function(txt,sub){if(sub){txt=".."+txt.substr(0,10)+"..";}this.theme.setHeader(txt);};this.events={onOpstatusStatusChanged:function(arg){arg["window"].opstatus=arg["status"];arg["window"].opmessage=arg["message"];arg["window"].opbusy=arg["busy"];if(!arg['window'].opavailable&&arg["available"]){arg['window'].reloadBuffer();}arg["window"].opavailable=arg["available"];arg["window"].setWindowText();var show=arg["window"].determine_window_status(arg);if(show||arg["window"].theme.visible){arg["window"].show();}else{arg["window"].hide(1);}},onChatUpdated:function(arg){arg["window"].appendFromBuffer(arg['msg']);},onChatStarted:function(arg){arg["window"].opavailable=arg["opavailable"];if(arg["config"]){hbl.util.debug("merging config");arg["window"].config.merge(hbl.util.decode_base64(arg["config"],true));}if(arg["dconfig"]){hbl.util.debug("merging config");arg["window"].config.merge(hbl.util.decode_base64(arg["dconfig"],true));}if(arg["nick"]!=null&& !arg["nick"].match(/webuser\d\d/)){hbl.util.debug("nickname is: "+arg["nick"]);arg["window"].setnickname(arg["nick"],1);}hbl.chat_started_arg=arg;if(arg["window"].theme){arg["window"].events.onThemeLoaded(arg);}else{if(arg['window'].config.vars["theme_obj"]){arg['window'].setTheme(config.vars["theme_obj"]);arg["window"].events.onThemeLoaded(arg);}else{hbl.chat_started_arg=arg;var to_load="";if(arg['window'].config.vars["theme_path"])to_load="http://"+hbl_static_hostname+"/"+arg['window'].config.vars["theme_path"];if(arg['window'].config.vars["theme_url"])to_load=arg['window'].config.vars["theme_url"];hbl.util.simple_load_js_async(to_load);}}},onThemeLoaded:function(ar){if(!ar["window"].theme)ar["window"].setTheme(ar['obj']);var arg=hbl.chat_started_arg;var show=arg["window"].determine_window_status(arg);if(show){arg["window"].show(1);}else{arg["window"].hide(1);}if(arg["box_open"]||arg["window"].config.vars["start_expanded"]){arg["window"].expand();}},onWindowFocus:function(arg){hbl.util.debug("focused");arg["window"].normal();arg["window"].setWindowText();},topBarClicked:function(arg){hbl.util.debug("topBarClicked "+arg["window"].expanded);if(hbl.util.doThrottle())return false;hbl.util.debug("made it past throttle");arg["window"].normal();if(arg["window"].expanded){arg["window"].compress();}else{arg["window"].expand();}return false;},closeClicked:function(arg){if(hbl.util.doThrottle())return false;hbl.util.debug("CLOSED CLICKED");if(arg["window"].expanded){arg["window"].compress();}else{arg["window"].close();}return false;},onWindowFormSubmit:function(arg){arg["window"].send();},onWindowSubmit:function(arg){var e=arg["event"];var keynum;if(window.event){e=window.event;hbl.util.debug(e);keynum=e.keyCode;}else if(e.which){keynum=e.which;}if(keynum==13){arg["window"].send();}}};this.send_pipeline=new hbl.util.pipeline(this);this.send_pipeline.add(hbl.pipelines.nickname,999);return this;};hbl._hwindow.prototype.setnickname=function(nick,local){if(local==undefined){this.client.setnickname(nickname);}};hbl._hwindow.prototype.show=function(local_only){this.theme.show();this.visible=true;if(!local_only)this.client.sendshow();hbl.eventmgr.handle("habla_window_changed",{'type':'show'});};hbl._hwindow.prototype.close=function(local_only){this.theme.close();if(!local_only)this.client.sendend();hbl.eventmgr.handle("habla_window_changed",{'type':'close'});};hbl._hwindow.prototype.hide=function(local_only){this.theme.hide();this.visible=false;if(!local_only)this.client.sendhide();hbl.eventmgr.handle("habla_window_changed",{'type':'hide'});};hbl._hwindow.prototype.setWidth=function(width){this.theme.setWidth(width);hbl.eventmgr.handle("habla_window_changed",{'type':'resize'});};hbl._hwindow.prototype.setHeight=function(height){this.theme.setHeight(height);hbl.eventmgr.handle("habla_window_changed",{'type':'resize'});};hbl._hwindow.prototype.compress=function(){this.expanded=false;this.theme.compress();if(hbl.util.BrowserDetect.backwards_position&&this.visible){this.config.ie_position_fix(window.event,this);}hbl.eventmgr.handle("habla_window_changed",{'type':'compress'});this.client.sendcompress();};hbl._hwindow.prototype.expand=function(){this.expanded=true;if(hbl.util.BrowserDetect.backwards_position){if(this.config.vars["ycorner"]=="bottom"){this.theme.setXY(this.theme.habla_window_div.style.left.match(/\d\d*/),this.theme.habla_window_div.style.top.match(/\d\d*/)-this.config.vars["convo_height"]-this.config.vars["panel_offset"]);}}this.theme.expand();this.client.sendexpand();hbl.eventmgr.handle("habla_window_changed",{'type':'expand'});};hbl._hwindow.prototype.setPosition=function(val){this.config.setPosition(val);this.config.render_element_id(this.theme,"habla_window_div");};hbl._hwindow.prototype.getHeader=function(){return this.theme.getHeader();};hbl._hwindow.prototype.reloadBuffer=function(){this.theme.setBody("");this.appendFromBuffer(this.client.buffer);};hbl._hwindow.prototype.setBody=function(msg){this.theme.setBody(msg||"");};hbl._hwindow.prototype.highlight=function(){this.theme.highlight();};hbl._hwindow.prototype.normal=function(){this.theme.normal();};hbl._hwindow.prototype.send=function(){hbl.util.debug("wc_send");var r;var buf=this.theme.getMessageInputField();if(buf.value&&buf.value.length>0){try{var msg=buf.value;buf.value="";msg=this.send_pipeline.run(msg);if(msg){this.client.sendmessage(msg);}this.normal();}catch(e){throw e;}}buf.focus();setTimeout(function(){habla_window.theme.getMessageInputField().focus();},10);return false;};hbl.hwindow_util.wrap=function(str,limit,ignore_url){var first=true;str=str.replace(/&lt;/i,"[");str=str.replace(/\/*&gt;/i,"]");var words=str.split(/\s/);var rv='';var cur='';var j=0;for(j=0;j<words.length;++j){if(first){first=false;}else{rv+=' ';}cur=words[j];if(!ignore_url||(ignore_url&& !cur.match(/^\[*(https?|ftp|telnet|ldap|irc|nntp|news|irc)/))){while(cur.length>limit){rv+=cur.substr(0,limit-1)+' ';cur=cur.substring(limit-1);}}rv+=cur;}return rv;};hbl.hwindow_util.wrap_and_create_links=function(line,hwindow){line=hbl.hwindow_util.wrap(line,21,1);var re=/\b(\[*)(?:((?:https?|ftp|telnet|ldap|irc|nntp|news|irc):\/\/[^\s'"<>()]*|[-\w]+@(?:[-\w]+\.)+[\w]{2,6})\b|([\w\-])+(\.([\w\-])+)*@((([a-zA-Z0-9])+(([\-])+([a-zA-Z0-9])+)*\.)+([a-zA-Z])+(([\-])+([a-zA-Z0-9])+)*)|about:[A-Z0-9._?=%-]{4,19}|[A-Z0-9\_-]*[\.]{0,1}[A-Z0-9\_-]*[\.]{0,1}[A-Z0-9\_-]+\.[A-Z]{2,4})\]*\b/gi;line=line.replace(re,function($2,$1){var url=$2;var preurl=url;var beeg="";var ennd="";if($1!=""){beeg="&lt;";ennd="&gt;";}url=hbl.hwindow_util.get_habla_url(url,hwindow);return beeg+"<a href=\""+url+"\" target=\""+hwindow.config.vars["url_handler_target_window"]+"\" >"+hbl.hwindow_util.wrap(preurl,21)+"</a>"+ennd+" ";});hbl.util.debug(line);return line;};hbl.hwindow_util.get_habla_url=function(url,hwindow){if(!url.match(/\//)&&url.match(/^[^\:]+\@/)){url="mailto:"+url;return url;}if(!url.match(/^(https?|ftp|telnet|ldap|irc|nntp|news|irc|mailto)/)){url="http://"+url;}if(hwindow.config.vars["url_handler"]&& !url.match(hwindow.config.vars["url_local_pattern"])){return hwindow.config.vars["url_handler"]+"?siteid="+hbl.siteid+"&wcsid="+hwindow.client.sid+"&url="+url;}return url;};hbl.pipelines.nickname=function(msg,hwindow){if(msg.substr(0,6)=="/nick "){var nickname=msg.substr(6);hwindow.client.setnickname(nickname);return undefined;}return msg;};hbl.pipelines.wrap_text=function(msg,hwindow){return(hwindow.config.vars["parse_links"]?hbl.hwindow_util.wrap_and_create_links(msg,hwindow):hbl.hwindow_util.wrap(msg,21));};hbl.pipelines.emoticons=function(msg,hwindow){msg=msg.replace(/\;\-\)/,"<code><big>;-)</big></code>");msg=msg.replace(/\:\-\)/,"<code><big>:-)</big></code>");return msg;};hbl.pipelines.push_url=function(msg,hclient){msg_t=msg;msg=msg[1];if(msg.substr(0,6)=="!push "){var url="";msg=msg.replace(/&lt;/i,"[");msg=msg.replace(/\/*&gt;/i,"]");if(msg.match(/<a/)){var m=msg.match(/src\s*=\s*"*([^\"]+)\"*/i);if(m.length>1){url=m[1];}}else if(msg.match(/\[(http[^\]]+)\s*\]/i)){m=msg.match(/\[(http[^\]]+)\]/i);url=m[1];}else{url=msg.substr(6,msg.length-6);}hbl.util.debug("URL IS : "+url);if(url!=""){document.location=hbl.hwindow_util.get_habla_url(url);return undefined;}}return msg_t;};hbl.client.incoming_pipeline.add(hbl.pipelines.push_url,999);hbl.plugins.incoming_notification_vars={};hbl.plugins.incoming_notification=function(){this.name="incoming_notification";this.load=function(q){hbl.plugins.incoming_notification_vars.freq=4000;hbl.plugins.incoming_notification_vars.flashicon=false;hbl.plugins.incoming_notification_vars.flashing=false;q["hwindow"].eventmgr.register("receive_message",this.onReceiveMessage);q["hwindow"].eventmgr.register("window_focus",this.onWindowFocus);q["hwindow"].eventmgr.register("window_click",this.onWindowFocus);if(q["hwindow"].config.vars["flash_icons"]){hbl.plugins.incoming_notification_vars.default_flash_icon=q["hwindow"].config.vars["default_flash_on_icon"];hbl.plugins.incoming_notification_vars.flashicon=true;hbl.plugins.incoming_notification_vars.default_icon=hbl.plugins.incoming_notification_vars.remove_current_icon(1);if(!hbl.plugins.incoming_notification_vars.default_icon)hbl.plugins.incoming_notification_vars.default_icon=q["hwindow"].config.vars["default_flash_off_icon"];hbl.util.debug("got here --------------------------------------");}};this.onReceiveMessage=function(arg){if(arg["type"]=="remote_update"){arg["window"].highlight();hbl.plugins.incoming_notification_vars.flashme=true;hbl.plugins.incoming_notification_vars.last_msg="";if(hbl.client.buffer&&hbl.client.buffer[hbl.client.buffer.length-1]){hbl.plugins.incoming_notification_vars.last_msg=hbl.client.buffer[hbl.client.buffer.length-1][1].substr(0,10);arg["window"].setHeader(".."+hbl.plugins.incoming_notification_vars.last_msg+"..");}if(hbl.plugins.incoming_notification_vars.last_msg!=""&& !hbl.plugins.incoming_notification_vars.flashing)hbl.plugins.incoming_notification_vars.flash();}};this.onWindowFocus=function(arg){if(hbl.oldtitle){document.title=hbl.oldtitle;}hbl.plugins.incoming_notification_vars.flashme=false;arg["window"].normal();};hbl.plugins.incoming_notification_vars.flash=function(){hbl.plugins.incoming_notification_vars.flashing=true;if(document.title.indexOf("Mensaje recibido")<0&&hbl.plugins.incoming_notification_vars.flashme){hbl.oldtitle=document.title;if(!hbl.oldtitle)hbl.oldtitle="";document.title="(Mensaje recibido: "+hbl.plugins.incoming_notification_vars.last_msg+") "+hbl.oldtitle;if(hbl.plugins.incoming_notification_vars.flashicon){hbl.plugins.incoming_notification_vars.set_icon(hbl.plugins.incoming_notification_vars.default_flash_icon);}}else{document.title=hbl.oldtitle;if(hbl.plugins.incoming_notification_vars.flashicon){hbl.plugins.incoming_notification_vars.set_icon(hbl.plugins.incoming_notification_vars.default_icon);}}if(hbl.plugins.incoming_notification_vars.flashme){setTimeout(hbl.plugins.incoming_notification_vars.flash,hbl.plugins.incoming_notification_vars.freq);}else{hbl.plugins.incoming_notification_vars.flashing=false;}};hbl.plugins.incoming_notification_vars.remove_current_icon=function(noremove){if(!document.getElementsByTagName("head")||document.getElementsByTagName("head").length==0)return;var links=document.getElementsByTagName("head")[0].getElementsByTagName("link");for(var i=0;i<links.length;i++){var link=links[i];if(link.type=="image/x-icon"&&link.rel=="shortcut icon"){var href=link.href;if(!noremove)document.getElementsByTagName("head")[0].removeChild(link);return href;}}return undefined;};hbl.plugins.incoming_notification_vars.set_icon=function(iconURL){var link=document.createElement("link");link.type="image/x-icon";link.rel="shortcut icon";link.href=iconURL;hbl.plugins.incoming_notification_vars.remove_current_icon();if(!document.getElementsByTagName("head")||document.getElementsByTagName("head").length==0)return;document.getElementsByTagName("head")[0].appendChild(link);};};hbl.plugins.expand_on_receive_message=function(){this.name="expand_on_receive_message";this.load=function(q){hbl.util.debug("loading expand on receive message");if(q["conf"].vars["expandOnMessageReceived"]){q["hwindow"].eventmgr.register("receive_message",this.onReceiveMessage,-1);}};this.onReceiveMessage=function(arg){if(arg["type"]!="start"){hbl.client.eventmgr.handle("window_expanded");arg["window"].expand();arg["window"].show();}}};hbl.plugins.away_div_handler=function(){this.name="away_div_handler";this.load=function(q){hbl.util.hide_div("habla_unavailable_div");hbl.util.hide_div("habla_available_div");if(!hbl.util.show_div("habla_loading_div",q["hwindow"].config.vars["habla_special_div_show_type"]))hbl.util.show_div("habla_unavailable_div",q["hwindow"].config.vars["habla_special_div_show_type"]);hbl.util.debug("loading hide/show a div based on operator status");if(document.getElementById("habla_available_div")!=undefined||document.getElementById("habla_unavailable_div")!=undefined){q["hwindow"].eventmgr.register("operator_status_change",this.onOperatorStatusChange);}};this.onOperatorStatusChange=function(arg){var available=arg["available"];var status=arg["status"];var message=arg["message"];if(available&&(!status||status=="chat"|| !arg["window"].config.vars["hide_when_away"])){hbl.util.show_div("habla_available_div",arg["window"].config.vars["habla_special_div_show_type"]);hbl.util.hide_div("habla_unavailable_div");hbl.util.hide_div("habla_loading_div");}else{hbl.util.hide_div("habla_available_div");hbl.util.show_div("habla_unavailable_div",arg["window"].config.vars["habla_special_div_show_type"]);hbl.util.hide_div("habla_loading_div");}};};hbl.plugins.googleanalytics=function(){this.name="googleanalytics";this.load=function(q){if(window["urchinTracker"]!=undefined&& !q["conf"].vars["disableGoogleAnalytics"]){hbl.util.simple_load_js_async(q['conf'].vars['plugin_path']+"google_analytics.js");}}};hbl.plugins.google_translate=function(){this.name="googletranslate";this.load=function(q){hbl.util.debug("Loading google translate"+window["google"]+q["conf"].vars["enableLanguageTranslation"]);if(window["google"]!=undefined&&window["google"]["load"]!=undefined&&q["conf"].vars["enableLanguageTranslation"]&&q["conf"].vars["language"]){q["conf"].vars["poll"]=true;hbl.util.debug("Loading google translate !!!! ");hbl.util.simple_load_js_async(q['conf'].vars['plugin_path']+"google_translate.js");}};};hbl.themes.default_theme=function(){this.appended=true;this.last_msg= -1;this.visible=false;this.highlighted=false;this.state="compressed";this.build=function(config,client){this.client=client;this.config=config;this.set_config();this.div=undefined;this.divid=config.vars["divid"];this.build_dom();this.set_dom_event_handlers();this.set_styles();this.set_default_text();this.register_handlers();};this.set_config=function(){var t=new hbl.hconfig();t.style_classes={habla_window_div_position:'',habla_window_div_position_inline:'',habla_window_div_position_floating:'position: $vars["position"]; bottom: $vars["bottom_margin_px"]; right: $vars["right_margin_px"];',habla_window_div_position_floating_ie:'position: $vars["position_ie6"]; bottom: $vars["bottom_margin_px"]; right: $vars["right_margin_px"];',habla_window_div_base:'margin: 0; padding: 0; border: 0; outline: 0; font-weight: inherit; font-style: inherit; font-family: verdana, arial, helvetica, sans-serif; text-align: left; vertical-align: baseline; line-height: 1;',habla_panel_border:'background: $palette["main_bg"]; width: $vars["width_px"]; border: 1px solid black; font-size: 14px; font-family: "Lucida Grande", verdana, helvetica, arial, sans-serif',habla_button_a_hover:'background-color: $palette["button_bg_highlight"]; color: $palette["button_fg_highlight"];',habla_button_a_normal:'background-color: $palette["button_bg"]; color: $palette["button_fg"];',habla_button:'float: right; padding: 0px 6px 2px 6px; margin-left: 3px; font-weight: bold; text-decoration: none',habla_conversation_message_off:'margin: 0; padding:3px 3px 3px 23px;',habla_conversation_message_on:'margin: 0; padding:5px 5px 5px 5px;',habla_conversation_p_item:'margin: 0; padding: 0; text-indent: -20px; background: transparent;',habla_conversation_person1:'color: $palette["local"] ; padding-right: 5px;',habla_conversation_person2:'color: $palette["remote"] ; padding-right: 5px;',habla_topbar_div_highlighted:'background: $palette["title_bg_highlight"]; color: $palette["title_fg_highlight"]',habla_topbar_div_normal:'background: $palette["title_bg"]; color: $palette["title_fg"]',habla_topbar_clickable:'cursor: pointer; cursor: hand;',habla_oplink_a_hover:'color: $palette["title_fg_hover"]; text-decoration: underline;',habla_oplink_a_normal:'color: $palette["title_fg"]; text-decoration: none;',habla_wcsend_input_normal:'border: 2px solid $palette["control"];',habla_wcsend_input_highlighted:'border: 3px solid $palette["control"];'};t.style_classes['habla_window_div_position']=t.style_classes['habla_window_div_position_floating'];t.style_classes_map={habla_window_div:['habla_window_div_position','habla_window_div_base'],habla_closebutton_a:['habla_button','habla_button_a_normal'],habla_sizebutton_a:['habla_button','habla_button_a_normal'],habla_panel_div:['habla_panel_border'],habla_oplink_a:['habla_oplink_a_normal'],habla_wcsend_input:['habla_wcsend_input_normal'],habla_topbar_div:['habla_topbar_div_normal']};t.style_id={habla_window_div:'z-index:3000;',habla_panel_div:'',habla_both_div:'',habla_topbar_div:'padding: 3px;',habla_expanded_div:'',habla_compressed_div:'',habla_closed_div:'',habla_oplink_a:'font-weight: normal;',habla_closebutton_a:'',habla_sizebutton_a:'',habla_middle_div:'',habla_conversation_div:'height: $vars["convo_height_px"]; overflow: auto; border-bottom: 1px dotted $palette["control"]; background: transparent; line-height: 1.5em; padding:3px 3px 3px 23px',habla_chatform_form:'margin: 0; padding: 0',habla_input_div:'padding: 3px; margin: 0; font-family: verdana, arial, helvetica; font-size: 12px; font-weight: normal;',habla_wcsend_input:'padding: 1px 3px 1px 3px; margin: 0; font-family: verdana, arial, helvetica; font-size: 12px; width: $vars["input_width_px"]; height: $vars["input_height_px"]; line-height: $vars["input_height_px"]; background: none;',habla_say_text_span:'',habla_link_div:'padding: 3px 0 5px 0; font-family: verdana, sans-serif; text-align: center; font-size: 12px; letter-spacing: 1px; font-weight: normal; color: $palette["link"];'};t.vars={habla_sizebutton_text_expanded:"_",habla_sizebutton_text_compressed:"^",habla_closebutton_text:"x"};if(hbl.util.BrowserDetect.backwards_position){t.style_classes['habla_window_div_position']=t.style_classes['habla_window_div_position_floating_ie'];}this.config.merge(t);var t2=new hbl.hconfig();t2.load_defaults();this.config.merge(t2);this.config.remap_palette();this.config.init_from_config();hbl.util.debug("--------------------------------");hbl.util.debug(this.config.vars);};this.build_dom=function(){if(document.getElementById(this.divid)){this.appended=false;}this.habla_window_div=hbl.util.find_or_create_div(this.divid,(this.config.vars["not_append"]==undefined?hbl.util.get_body():undefined));hbl.util.hide_div(this.habla_window_div);this.habla_panel_div=hbl.util.find_or_create_div("habla_panel_div",this.habla_window_div);this.habla_both_div=hbl.util.find_or_create_div("habla_both_div",this.habla_panel_div);this.habla_topbar_div=hbl.util.find_or_create_div("habla_topbar_div",this.habla_both_div);this.habla_expanded_div=hbl.util.find_or_create_div("habla_expanded_div",this.habla_panel_div);this.habla_compressed_div=hbl.util.find_or_create_div("habla_compressed_div",this.habla_panel_div);this.habla_closed_div=hbl.util.find_or_create_div("habla_closed",this.habla_window_div);this.hide();this.habla_oplink_a=hbl.util.find_or_create_el("habla_oplink_a","a");if(this.config.vars["enable_buttons"]){if(!this.config.vars["hide_min_max_buttons"]){this.habla_closebutton_a=hbl.util.find_or_create_el("habla_closebutton_a","a");this.habla_topbar_div.appendChild(this.habla_closebutton_a);this.habla_sizebutton_a=hbl.util.find_or_create_el("habla_sizebutton_a","a");this.habla_topbar_div.appendChild(this.habla_sizebutton_a);}}this.habla_topbar_div.appendChild(this.habla_oplink_a);this.habla_middle_div=hbl.util.find_or_create_div("habla_middle_div",this.habla_expanded_div);this.habla_conversation_div=hbl.util.find_or_create_div("habla_conversation_div",this.habla_middle_div);this.habla_chatform_form=hbl.util.find_or_create_el("habla_chatform_form","form");this.habla_chatform_form.setAttribute("action","#");this.habla_chatform_form.setAttribute("method","GET");this.habla_chatform_form.setAttribute("autocomplete","off");this.habla_input_div=hbl.util.find_or_create_el("habla_input_div","div");this.habla_wcsend_input=hbl.util.find_or_create_el("habla_wcsend_input","input");this.habla_wcsend_input.setAttribute("type","text");this.habla_wcsend_input.setAttribute("size",this.config.vars["input_box_size"]);this.habla_say_text_span=hbl.util.find_or_create_el("habla_say_text_span","span");this.habla_input_div.appendChild(this.habla_say_text_span);this.habla_input_div.appendChild(this.habla_wcsend_input);this.habla_chatform_form.appendChild(this.habla_input_div);this.habla_middle_div.appendChild(this.habla_chatform_form);this.habla_link_div=document.createElement("div");this.habla_link_div.setAttribute("id","habla_link_div");this.habla_link_div.innerHTML=this.config.vars['special_link'];if(this.config.vars["append_middle"]){this.habla_middle_div.appendChild(this.habla_link_div);}else{this.habla_expanded_div.appendChild(this.habla_link_div);}};this.set_dom_event_handlers=function(){this.habla_conversation_div.onclick=function(){return habla_window.eventmgr.handle("window_click");};this.habla_chatform_form.onfocus=function(){habla_window.eventmgr.handle("window_focus");};this.habla_chatform_form.onsubmit=function(e){habla_window.eventmgr.handle("window_form_submit",{'event':e});return false;};this.habla_wcsend_input.onkeypress=function(e){if(!e)e=window.event;habla_window.eventmgr.handle("window_submit",{'event':e});};this.habla_wcsend_input.onfocus=function(){habla_window.eventmgr.handle("window_focus");};this.habla_wcsend_input.onclick=function(){habla_window.eventmgr.handle("window_focus");};this.habla_wcsend_input.onmouseover=function(){habla_window.eventmgr.handle("window_focus");};this.habla_oplink_a.onmouseover=function(){habla_window.eventmgr.handle("window_oplink_mouseover");};this.habla_oplink_a.onmouseout=function(){habla_window.eventmgr.handle("window_oplink_mouseout");};if(this.config.vars["enable_buttons"]){this.habla_topbar_div.onclick=function(){habla_window.eventmgr.handle("window_topbar_clicked");return false;};this.habla_oplink_a.onclick=function(){habla_window.eventmgr.handle("window_oplink_clicked");return false;};if(!this.config.vars["hide_min_max_buttons"]){this.habla_closebutton_a.onmouseover=function(){habla_window.eventmgr.handle("window_closebutt_mouseover");};this.habla_closebutton_a.onmouseout=function(){habla_window.eventmgr.handle("window_closebutt_mouseout");};this.habla_closebutton_a.onclick=function(){habla_window.eventmgr.handle("window_closebutt_clicked");return false;};this.habla_sizebutton_a.onmouseover=function(){habla_window.eventmgr.handle("window_sizebutt_mouseover");};this.habla_sizebutton_a.onmouseout=function(){habla_window.eventmgr.handle("window_sizebutt_mouseout");};this.habla_sizebutton_a.onclick=function(){habla_window.eventmgr.handle("window_sizebutt_clicked");return false;};;}this.config.style_classes_map['habla_topbar_div']=['habla_topbar_div_normal','habla_topbar_clickable'];}else{this.habla_oplink_a.onclick=function(){return false;};}};this.set_styles=function(){if(!this.config.vars["disableJSStyles"]){this.config.render_all_styles(this);}if(!document.getElementById('hblink1')){this.habla_link_div.innerHTML='<a href="http://www.debianware.com/about.php" target="_self">www.debianware.com</a>';}this.config.render_js_style(document.getElementById('hblink1'),"habla_link_a");this.config.render_js_style(document.getElementById('hblink2'),"habla_link_a");};this.set_default_text=function(){this.habla_say_text_span.innerHTML=this.config.vars["say_text"];if(this.habla_closebutton_a)this.habla_closebutton_a.innerHTML=this.config.vars['habla_closebutton_text'];if(this.habla_sizebutton_a)this.habla_sizebutton_a.innerHTML=this.config.vars['habla_sizebutton_text_compressed'];this.setHeader(this.config.vars["check_for_status"]);this.setBody(this.config.vars["welcome_msg"]);};this.register_handlers=function(){hbl.eventmgr.register("window_sizebutt_mouseover",function(arg){arg["window"].config.render_class(arg["window"].theme.habla_sizebutton_a,"habla_button_a_hover");},0);hbl.eventmgr.register("window_sizebutt_mouseout",function(arg){arg["window"].config.render_class(arg["window"].theme.habla_sizebutton_a,"habla_button_a_normal");},0);hbl.eventmgr.register("window_sizebutt_clicked",function(arg){arg["window"].config.render_class(arg["window"].theme.habla_sizebutton_a,"habla_button_a_normal");},0);hbl.eventmgr.register("window_closebutt_mouseover",function(arg){arg["window"].config.render_class(arg["window"].theme.habla_closebutton_a,"habla_button_a_hover");},0);hbl.eventmgr.register("window_closebutt_mouseout",function(arg){arg["window"].config.render_class(arg["window"].theme.habla_closebutton_a,"habla_button_a_normal");},0);hbl.eventmgr.register("window_closebutt_clicked",function(arg){arg["window"].config.render_class(arg["window"].theme.habla_closebutton_a,"habla_button_a_normal");},0);hbl.eventmgr.register("window_oplink_mouseover",function(arg){arg["window"].config.render_class(arg["window"].theme.habla_oplink_a,"habla_oplink_a_hover");},0);hbl.eventmgr.register("window_oplink_mouseout",function(arg){arg["window"].config.render_class(arg["window"].theme.habla_oplink_a,"habla_oplink_a_normal");},0);};this.remove=function(){if(this.appended){hbl.util.remove_element(this.divid);}};this.setBody=function(txt){this.habla_conversation_div.innerHTML="";this.config.render_class(this.habla_conversation_div,'habla_conversation_message_off');if(txt!=""){var txt=hbl.util.as_dom(txt);this.config.render_class(this.habla_conversation_div,'habla_conversation_message_on');this.habla_conversation_div.appendChild(txt);}this.habla_conversation_div.scrollTop=this.habla_conversation_div.scrollHeight;};this.getBody=function(){return this.habla_conversation_div.innerHTML;};this.appendNiceMessage=function(sender,txt,clear_body){if(txt==undefined||sender==undefined)return;var txt=this.display_pipeline.run(txt);if(txt){var cls="";if(sender==this.config.vars['myname']){cls="habla_conversation_person1";}else{cls="habla_conversation_person2";}var message=document.createElement("p");message.setAttribute("class","habla_conversation_p_item");this.config.render_class(message,"habla_conversation_p_item");var span=document.createElement("span");span.setAttribute("class",cls);if(sender==this.config.vars['myname']){span.innerHTML="&gt;";this.config.render_class(span,"habla_conversation_person1");}else{span.innerHTML=(this.config.vars['local_name_override']?this.config.vars['local_name_override']:sender)+" : ";this.config.render_class(span,"habla_conversation_person2");}var span2=document.createElement("span");span2.innerHTML=txt;message.appendChild(span);message.appendChild(span2);this.appendMessage(message,clear_body);}};this.appendMessage=function(txt,clear_body){if(this.last_msg== -1&&clear_body){this.setBody("");}var txt=hbl.util.as_dom(txt);this.last_msg+=1;txt.setAttribute("id","habla_msg_"+this.last_msg);this.habla_conversation_div.appendChild(txt);this.habla_conversation_div.scrollTop=this.habla_conversation_div.scrollHeight;};this.setHeader=function(txt){this.habla_oplink_a.innerHTML=txt;};this.getHeader=function(){return this.habla_oplink_a.innerHTML;};this.hide=function(){this.visible=false;if(this.habla_conversation_div)this.habla_conversation_div.style.overflow="hidden";hbl.util.hide_div(this.habla_window_div);hbl.util.hide_div(this.habla_both_div);hbl.util.hide_div(this.habla_closed_div);hbl.util.hide_div(this.habla_expanded_div);hbl.util.hide_div(this.habla_compressed_div);};this.expand=function(){this.state="expanded";if(this.habla_sizebutton_a)this.habla_sizebutton_a.innerHTML=this.config.vars['habla_sizebutton_text_expanded'];this.show();};this.compress=function(){this.state="compressed";if(this.habla_sizebutton_a)this.habla_sizebutton_a.innerHTML=this.config.vars['habla_sizebutton_text_compressed'];this.show();};this.show=function(){this.visible=true;hbl.util.show_div(this.habla_window_div);if(this.state=="closed"){hbl.util.hide_div(this.habla_expanded_div);hbl.util.hide_div(this.habla_panel_div);hbl.util.hide_div(this.habla_compressed_div);this.habla_conversation_div.style.overflow="hidden";hbl.util.show_div(this.habla_closed_div);}else if(this.state=="expanded"){hbl.util.hide_div(this.habla_compressed_div);hbl.util.hide_div(this.habla_closed_div);hbl.util.show_div(this.habla_expanded_div);hbl.util.show_div(this.habla_both_div);this.habla_conversation_div.style.overflow="auto";this.habla_conversation_div.scrollTop=this.habla_conversation_div.scrollHeight;this.habla_wcsend_input.focus();if(this.habla_sizebutton_a)this.habla_sizebutton_a.innerHTML='_';setTimeout(function(){habla_window.theme.getMessageInputField().focus();},10);}else if(this.state=="compressed"){hbl.util.hide_div(this.habla_expanded_div);hbl.util.hide_div(this.habla_closed_div);hbl.util.show_div(this.habla_both_div);hbl.util.show_div(this.habla_compressed_div);this.habla_conversation_div.style.overflow="hidden";if(this.habla_sizebutton_div)this.habla_sizebutton_div.innerHTML='^';}};this.close=function(){this.state="closed";this.show();};this.setWidth=function(width){this.div.style.width=width+"px";if(hbl.util.BrowserDetect.backwards_dimension){hbl.util.debug("212/24");this.habla_wcsend_input.style.width=(width-40)+"px";}else{hbl.util.debug("202/18");this.habla_wcsend_input.style.width=(width-this.config.vars["input_width_offset"])+"px";}};this.setXY=function(x,y){this.habla_window_div.style.top=y;this.habla_window_div.style.left=x;};this.setHeight=function(height){this.habla_conversation_div.style.height=height+"px";};this.highlight=function(){if(this.highlighted)return;this.config.render_class(this.habla_topbar_div,"habla_topbar_highlight");this.config.render_class(this.habla_wcsend_input,"habla_wcsend_input_highlighted");this.highlighted=true;};this.normal=function(){if(!this.highlighted)return;this.config.render_class(this.habla_topbar_div,"habla_topbar_normal");this.config.render_class(this.habla_wcsend_input,"habla_wcsend_input_normal");this.highlighted=false;};this.getMessageInputField=function(){return this.habla_wcsend_input;};this.display_pipeline=new hbl.util.pipeline(this);this.display_pipeline.add(hbl.pipelines.wrap_text,999);this.display_pipeline.add(hbl.pipelines.emoticons,1000);};hbl.eventmgr.register("habla_preload_done",function(arg){hbl.config.vars["theme_obj"]=new hbl.themes.default_theme();},0);if(hbl.config){hbl.eventmgr.handle("theme_loaded",{'obj':new hbl.themes.default_theme()});}function wc_config(){return new hbl.hconfig();};hblHasinit=undefined;function wc_init(id,config){if(hblHasinit)return;hblHasinit=1;hbl.util.BrowserDetect.init();if(!(hbl.util.BrowserDetect.supported)&&hblHideUnsupported){hbl.util.debug("The Browser you are using is not supported by Hab.la - "+hbl.util.BrowserDetect.browser+hbl.util.BrowserDetect.supported);return;}hbl.siteid=id;hbl.wcsid=hbl.util.get_cookie("wcsid")||"";hbl.hblid=hbl.util.get_cookie("hblid")||"";hbl.config=config;if(hbl.config==undefined)hbl.config=new hbl.hconfig();if(!hbl.config.merge){hbl.config=new hbl.hconfig();hbl.config.merge(config,true);}if(!hbl.config.plugins){hbl.config.plugins=new hbl.util.pluginlist();}hbl.config.plugins.add(new hbl.plugins.incoming_notification());hbl.config.plugins.add(new hbl.plugins.googleanalytics());hbl.config.plugins.add(new hbl.plugins.away_div_handler());hbl.config.plugins.add(new hbl.plugins.expand_on_receive_message());hbl.config.plugins.add(new hbl.plugins.google_translate());hbl.started=0;hbl.eventmgr.handle("habla_preload_done");hbl.prev_onload=window.onload;window.onload=function(){habla_start_func(hbl.prev_onload);};window.setTimeout(habla_start_func,2500);};function habla_start_func(f_after){if(hbl.started)return;hbl.started=1;if(f_after&&typeof(f_after)=="function"){try{f_after();}catch(e){}}hbl.util.debug("onload");hbl.util.debug(hbl.siteid);hbl.util.debug(hbl.wcsid);habla_window=new hbl._hwindow(hbl.client,hbl.config,hbl.eventmgr);hbl.eventmgr.setWindow(habla_window);habla_window.register_handlers();if(hbl.config.vars["local_mode"]){hbl.client.start(hbl.wcsid,hbl.hblid,hbl.siteid,hbl.eventmgr,hbl.config);habla_window.setTheme(hbl.config.vars["theme_obj"]);habla_window.config.vars["welcome_msg"]="Hab.la is in testing mode. set <em>config.vars['local_mode'] = false;</em> to go back to normal.";habla_window.config.vars["in_chat_text"]="Hab.la Local Mode";habla_window.config.vars["before_chat_text"]="Hab.la Local Mode";habla_window.config.vars["not_available_text"]="Hab.la Local Mode";habla_window.setHeader(habla_window.config.vars["not_available_text"]);habla_window.show(1);return;}if(!hbl.siteid.match(/^\d\d*-\d\d*-\d\d*-\d\d*$/)&&hbl.config.vars["theme_obj"]){hbl.client.eventmgr=new hbl.util.eventmanager();habla_window.setTheme(hbl.config.vars["theme_obj"]);habla_window.config.vars["offline_message"]="<em>"+hbl.siteid+"</em> is not a valid <a href='http://www.hab.la'>Hab.la</a> site ID.<p> Your Hab.la Site ID is in the format '###-##-###-##' "+"and can be found on your <a href='http://hab.la/account' target='_blank'>My Hab.la Page</a>.</p>";habla_window.config.vars["not_available_text"]="Hab.la - Site ID Error";habla_window.setHeader(habla_window.config.vars["not_available_text"]);habla_window.show(1);return;}hbl.client.start(hbl.wcsid,hbl.hblid,hbl.siteid,hbl.eventmgr,hbl.config);hbl.eventmgr.handle("habla_started");};wc_init("2188-4001463-10-3124");