function EventLib()
{}
EventLib.AddEvent=function(elm,evType,fn)
{if(elm.addEventListener)
{elm.addEventListener(evType,fn,false);return true;}else if(elm.attachEvent){var r=elm.attachEvent('on'+evType,fn);return r;}else{elm['on'+evType]=fn;}}
EventLib.AddEventById=function(id,evType,fn)
{var elem=document.getElementById(id);if(elem!=undefined){EventLib.AddEvent(elem,evType,fn);}}
EventLib.AddEventsById=function(id,eventsDefinition)
{var elem=document.getElementById(id);if(elem!=undefined){for(var eventName in eventsDefinition)
{EventLib.AddEvent(elem,eventName,eventsDefinition[eventName]);}}}
EventLib.AddEventByClassName=function(className,tagName,evType,fn)
{var elems=document.getElementsByClassName(className,tagName);for(var i=0;i<elems.length;i++){EventLib.AddEvent(elems[i],evType,fn);}}
EventLib.AddEventsByClassName=function(className,tagName,eventsDefinition)
{var elems=document.getElementsByClassName(className,tagName);for(var i=0;i<elems.length;i++){for(var eventName in eventsDefinition)
{EventLib.AddEvent(elems[i],eventName,eventsDefinition[eventName]);}}}
EventLib.AddEventOnLoad=function(fn)
{EventLib.AddEvent(window,'load',fn);}
EventLib.GetEventObject=function(e)
{if(e==undefined)
{if(window.event!=undefined){return window.event;}
else{return undefined;}}
return e;}
EventLib.GetEventElement=function(e)
{e=EventLib.GetEventObject(e);if(e!=undefined)
{return(e.target||e.srcElement);}
else
{return undefined;}}
EventLib.StopEvent=function(e)
{e.returnValue=false;if(e.preventDefault!=undefined)
{e.preventDefault();}}
EventLib.CreateMethodReference=function(object,methodName){return function(){object[methodName].apply(object,arguments);}};document.getElementsByClassName=function(className,tagName)
{if(tagName==undefined){tagName='*';}
var elemsByTag=document.getElementsByTagName(tagName);var elemsByClass=[];var classRegexp=new RegExp('\\b'+className+'\\b');for(var i=0;i<elemsByTag.length;i++){var elemClassName=elemsByTag[i].className;if(classRegexp.test(elemClassName)){elemsByClass.push(elemsByTag[i]);}}
return elemsByClass;}
function Actions()
{}
Actions.Hyperlink_OpenNewWin=function(e)
{var e=EventLib.GetEventObject(e);var elem=EventLib.GetEventElement(e);if(e!=undefined&&elem!=undefined)
{var tagName=elem.tagName.toLowerCase();if(tagName!='a'&&tagName!='area'&&elem.parentNode!=undefined)
{elem=elem.parentNode;tagName=elem.tagName.toLowerCase();}
if(elem.href!=undefined&&elem.href.length>0)
{window.open(elem.href,"popupWindow");EventLib.StopEvent(e);}}}
Actions.Hyperlink_StartAVScanner=function(e)
{var e=EventLib.GetEventObject(e);var elem=EventLib.GetEventElement(e);if(elem.tagName.toLowerCase()!='a'&&elem.parentNode!=undefined)
{elem=elem.parentNode;}
if(elem.tagName.toLowerCase()=='a'&&e!=undefined&&elem.href!=undefined&&elem.href.length>0)
{window.open(elem.href,"popupWindow","location=0,toolbar=0,status=0,menubar=0,scrollbars=0,directories=0,resizable=0,dialog=1,minimizable=0,width=600,height=500,top=100,left=100");EventLib.StopEvent(e);}}
Actions.ShowPrintDialog=function(e)
{var e=EventLib.GetEventObject(e);if(e!=undefined&&window.print!=undefined)
{window.print();}}
Actions.SetCursorOnEvent=function(e,style)
{var elem=EventLib.GetEventElement(e);if(elem!=undefined&&elem.style.cursor!=undefined)
elem.style.cursor=style;}
Actions.CursorPointer=function(e)
{Actions.SetCursorOnEvent(e,'pointer');}
Actions.CursorDefault=function(e)
{Actions.SetCursorOnEvent(e,'default');}
Actions.ElemHighlight=function(e)
{var elem=EventLib.GetEventElement(e);if(elem!=undefined)elem.className+=" sffocus";}
Actions.ElemUnhighlight=function(e)
{var elem=EventLib.GetEventElement(e);if(elem!=undefined){elem.className=elem.className.replace(new RegExp("[\s]{0,1}sffocus\\b"),"");}}
function NumbersOnly(e)
{var e=EventLib.GetEventObject(e);var charCode=undefined;if(e!=undefined){charCode=(e.which)?e.which:e.keyCode?e.keyCode:undefined;if(charCode!=undefined&&charCode>37&&(charCode<48||charCode>57))
{EventLib.StopEvent(e);}}}
Actions.GoToChildHyperLinkHref=function(e)
{var elem=EventLib.GetEventElement(e);if(elem.className=="buynow")
{return;}
if(elem!=undefined){var classRegexp=new RegExp('\\b'+'jsElementLink'+'\\b');while(elem!=undefined&&!classRegexp.test(elem.className)){elem=elem.parentNode;}
if(elem!=undefined){for(var i=elem.childNodes.length-1;i>-1;i--){var child=elem.childNodes[i];if(child.tagName!=undefined&&child.tagName.toLowerCase()=='a'){if(child.className!="buynowlinerental"&&child.className!="buynowbusinessbroadband")
{window.location.href=child.href;return;}}}}}}
Actions.Hyperlink_SiteCatalystDownloadTracking=function(e)
{var e=EventLib.GetEventObject(e);var elem=EventLib.GetEventElement(e);if(e!=undefined&&elem!=undefined)
{var tagName=elem.tagName.toLowerCase();if(tagName!='a'&&tagName!='area'&&elem.parentNode!=undefined)
{elem=elem.parentNode;tagName=elem.tagName.toLowerCase();}
if(elem.href!=undefined&&elem.href.length>0)
{if(typeof(s_account)!="undefined")
{var s=s_gi(s_account);s.linkTrackVars='eVar7,events,prop8,prop7';s.linkTrackEvents='event4';s.events='event4';s.eVar7=elem.href.substring(elem.href.lastIndexOf('/')+1);s.prop7=s.eVar7;s.prop8=s.pageName;s.tl(elem,'d',s.eVar7);}
EventLib.StopEvent(e);}}}
EventAssigner=function()
{}
EventAssigner.PrintWindow=function(tag)
{EventLib.AddEventOnLoad(function(){EventLib.AddEventsByClassName('jsPrintWindow',tag,{'click':Actions.ShowPrintDialog,'mouseover':Actions.CursorPointer,'mouseout':Actions.CursorDefault})});}
EventAssigner.Hyperlink_OpenNewWin=function()
{EventLib.AddEventOnLoad(function(){EventLib.AddEventByClassName('jsClick_OpenNewWin','a','click',Actions.Hyperlink_OpenNewWin);EventLib.AddEventByClassName('jsClick_OpenNewWin','area','click',Actions.Hyperlink_OpenNewWin);});}
EventAssigner.Hyperlink_SiteCatalystDownloadTracking=function()
{EventLib.AddEventOnLoad(function(){EventLib.AddEventByClassName('jsClick_SiteCatalystDownloadTracking','a','click',Actions.Hyperlink_SiteCatalystDownloadTracking);});}
EventAssigner.ElementLink=function(tag)
{EventLib.AddEventOnLoad(function(){EventLib.AddEventsByClassName('jsElementLink',tag,{'click':Actions.GoToChildHyperLinkHref})});}
EventAssigner.Hyperlink_OpenNewWin();EventAssigner.ElementLink('div');
