
var DLBOY=DLBOY||{};DLBOY.Util={OnLoad:function(callback)
{if(callback!=null)
{var func=function()
{try
{callback();}
catch(e)
{DLBOY.Util.reportException(e);}};YAHOO.util.Event.onAvailable("JS_Loaded_DIV",func);}},reportException:function(e)
{if(e.msg)
e=e.msg;var newElem=document.createElement("div");newElem.setAttribute("class","errorReport");newElem.innerHTML="<strong>Error:</strong> "+e;document.body.appendChild(newElem);YAHOO.log("Error: "+e);},HookShrinkableBlocks:function()
{YAHOO.log("Binding shrinkable blocks");var blocks=YAHOO.util.Dom.getElementsByClassName("shrinkable","div");if(blocks==undefined||blocks.length==0)
return;for(var i=0;i<blocks.length;i++)
{var block=blocks[i];var shrinked=YAHOO.util.Dom.hasClass(block,"shrinked");}},CreateBlockFirst:function(columnDiv,title)
{var divContainer=document.createElement("div");divContainer.className="PageBlockContainer";var divBlock=document.createElement("div");divBlock.className="PageBlock";divContainer.appendChild(divBlock);var h2=document.createElement("h2");h2.innerHTML=title;divBlock.appendChild(h2);var divBody=document.createElement("div");divBody.className="PageBlockBody";divBlock.appendChild(divBody);var divFooter=document.createElement("div");divFooter.className="PageBlockFooter";divBlock.appendChild(divFooter);if(columnDiv.childNodes.length==0)
columnDiv.appendChild(divContainer);else
columnDiv.insertBefore(divContainer,columnDiv.childNodes[0]);return divBody;},AskConfirmation:function(title,text,defaultToOk,okHandler,cancelHandler)
{mySimpleDialog=new YAHOO.widget.SimpleDialog("cfrm",{width:"20em",effect:{effect:YAHOO.widget.ContainerEffect.FADE,duration:0.25},fixedcenter:true,modal:true,visible:false,draggable:false});mySimpleDialog.setHeader(title);mySimpleDialog.setBody(text);mySimpleDialog.cfg.setProperty("icon",YAHOO.widget.SimpleDialog.ICON_WARN);var handleOk=function()
{this.hide();if(okHandler)
okHandler();}
var handleCancel=function()
{this.hide();if(cancelHandler)
cancelHandler();}
var myButtons=[{text:"Ok",handler:handleOk,isDefault:defaultToOk},{text:"Cancel",handler:handleCancel,isDefault:!defaultToOk}];mySimpleDialog.cfg.queueProperty("buttons",myButtons);mySimpleDialog.render(document.body);mySimpleDialog.show();},GetCommaSeparatedFromArray:function(array)
{var result="";for(var i=0;i<array.length;i++)
{if(i>0)
result+=",";result+=array[i];}
return result;}};var JSON={stringify:function(o)
{var json=YAHOO.lang.JSON.stringify(o);return json;},eval:function(json)
{var o=YAHOO.lang.JSON.parse(json);return o;}};var redrawPageLayoutInit=false;function redrawPageLayout()
{return;YAHOO.log("redrawPageLayout() XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX");var elemSidebar=document.getElementById("SideBar");var elemPageBody=document.getElementById("PageBody");var heightOffset=10;elemPageBody.style.height=null;if(elemSidebar.offsetHeight>elemPageBody.offsetHeight){elemPageBody.style.height=(elemSidebar.offsetHeight+heightOffset)+"px";}
if(!redrawPageLayoutInit)
{YAHOO.util.Event.addListener(elemPageBody,"resize",redrawPageLayout);redrawPageLayoutInit=true;}};var DLBOY=DLBOY||{};DLBOY.LinkManager={BASE_URL:"/MEMBERS/PROFILE/SCRIPT/GetMemberInfo.ashx?",getMemberLinkFromId:function(memberId,domElement)
{if(domElement==null||memberId==null||memberId==0)
return;var url=DLBOY.applicationPath+
DLBOY.LinkManager.BASE_URL+"memberId="+memberId;DLBOY.LinkManager._fetchMemberAndSetLink(url,domElement);},getMemberLinkFromName:function(memberName,domElement)
{if(domElement==null||memberName==null||memberName=="")
return;var url=DLBOY.applicationPath+
DLBOY.LinkManager.BASE_URL+"memberName="+memberName;DLBOY.LinkManager._fetchMemberAndSetLink(url,domElement);},_fetchMemberAndSetLink:function(url,domElement)
{var callback={success:function(o)
{var json=o.responseText;var data=YAHOO.lang.JSON.parse(json);domElement.innerHTML=data.FullLink;},failure:function(o){YAHOO.log(o.responseText);}};YAHOO.util.Connect.asyncRequest("GET",url,callback,"");}};var DLBOY=DLBOY||{};DLBOY.IM={openWindow:function(url,callbackOnSuccess)
{setTimeout(function(){imInternalOpenWindow(url,callbackOnSuccess);});function imInternalOpenWindow(url,callbackOnSuccess)
{try
{var options="menubar=no,location=no,resizable=no,scrollbars=no,status=no,height=450,width=250,alwaysRaised=true";newWindow=window.open(url,"",options);if(newWindow&&callbackOnSuccess)
callbackOnSuccess();}
catch(exception)
{alert("Problem opening the chat.  Do you have a popup blocker?\n"+
exception.name+": "+exception.message);}}},open:function()
{var url=DLBOY.applicationPath+"/MEMBERS/CHAT/InstantMessaging.aspx";DLBOY.IM.openWindow(url);return false;}}
var DLBOY=DLBOY||{};DLBOY.Tags={Control:function(inputField,initialTags)
{this.inputField=inputField;this.initialTags=initialTags;this.container=null;this.dataSource=null;if(this.initialTags==null)
this.initialTags=new Array();}};DLBOY.Tags.Control.prototype={MAX_RESULTS:20,init:function()
{this.initDOM();this.initDataSource();this.addAutoComplete();},initDOM:function()
{var container=document.createElement("div");container.className="tagsAutocomplete";document.body.appendChild(container);this.adjustContainerPosition(this.inputField,container);this.container=container;},initDataSource:function()
{var url=DLBOY.applicationPath+"/MEMBERS/TAGS/SCRIPT/GetTags.ashx";var schema=["tags","TagKeyword","TagID","IsPrimaryTag","ClassName","ClassColor","Description"];var dataSource=new YAHOO.widget.DS_XHR(url,schema);dataSource.queryMatchContains=true;dataSource.scriptQueryAppend="count="+this.MAX_RESULTS;dataSource.scriptQueryParam="search";this.dataSource=dataSource;},adjustContainerPosition:function(textbox,container)
{var pos=YAHOO.util.Dom.getXY(textbox);pos[1]+=YAHOO.util.Dom.get(textbox).offsetHeight+2;YAHOO.util.Dom.setXY(container,pos);YAHOO.util.Dom.addClass(container,"tagAutocompleteContainer");return true;},addAutoComplete:function()
{var autoComplete=new YAHOO.widget.AutoComplete(this.inputField,this.container,this.dataSource);autoComplete.delimChar=";";autoComplete.maxResultsDisplayed=this.MAX_RESULTS;autoComplete.minQueryLength=2;autoComplete.queryDelay=0.25;autoComplete.autoHighlight=true;autoComplete.forceSelection=false;autoComplete.typeAhead=true;autoComplete.allowBrowserAutocomplete=false;autoComplete.doBeforeExpandContainer=this.adjustContainerPosition;autoComplete.formatResult=function(tagData,query)
{var keyword=tagData[0];var tagID=tagData[1];var isPrimaryTag=tagData[2];var tagClass=tagData[3];var color=tagData[4];var description=tagData[5];var key=tagData[0];var keyQuery=key.substr(0,query.length);var keyQueryRemainder=key.substr(query.length);var result=["<div style='color: ",color,";'>",isPrimaryTag?"<u>":"","<b><i>",keyQuery,"</i>",keyQueryRemainder,"</b>",isPrimaryTag?"</u>":""," [",tagClass,"] ",description,"</div>"];return(result.join(""));};}};var DLBOY=DLBOY||{};DLBOY.MembersHooks_CLASS=function()
{}
DLBOY.MembersHooks_CLASS.prototype={init:function()
{this.hookLinks();this.currentTimer=null;this.currentOutTimer=null;this.currentMemberId=0;this.currentPanel=null;this.currentPopup=null;},hookLinks:function(root)
{var links=YAHOO.util.Dom.getElementsByClassName("lnkMember","a",root);if(links==undefined||links.length==0)
return;var me=this;for(i=0;i<links.length;i++)
{var link=links[i];var memberIdStr=link.attributes["memberId"];if(!memberIdStr)
continue;var memberId=parseInt(memberIdStr.value);if(!YAHOO.util.Dom.hasClass(link,"hooked"))
{YAHOO.util.Event.addListener(link,"mouseover",me.mouseHoverMember,{memberId:memberId,me:this,link:link});YAHOO.util.Event.addListener(link,"mouseout",me.mouseOutMember,{memberId:memberId,me:this});}
YAHOO.util.Dom.addClass(link,"hooked");}},mouseHoverMember:function(evt,state)
{var me=state.me;var memberId=state.memberId;YAHOO.log("Hover Member, memberId="+memberId);if(me.currentOutTimer&&me.currentMemberId==memberId)
currentOutTimer=undefined;me.currentTimer=setTimeout(function(){me.startDisplayMember(state);},500);},mouseOutMember:function(evt,state)
{var me=state.me;var memberId=state.memberId;if(me.currentTimer)
{clearTimeout(me.currentTimer);me.currentTimer=undefined;}
YAHOO.log("Out Member, memberId="+memberId);me.currentOutTimer=setTimeout(function(){me.closePanel();},500);},closePanel:function()
{if(this.currentPanel)
{var me=this;var panel=this.currentPopup;var opacityAnimation=new YAHOO.util.Anim(panel,{opacity:{to:0},width:{to:0}},0.35);opacityAnimation.onComplete.subscribe(function(){delete panel.parentNode.removeChild(panel);});opacityAnimation.animate();this.currentMemberId=0;}},startDisplayMember:function(state)
{var me=state.me;var memberId=state.memberId;var link=state.link;if(me.currentMemberId==memberId)
return;me.closePanel();me.currentMemberId=memberId;YAHOO.log("Display Member, memberId="+memberId);var xy=YAHOO.util.Dom.getXY(link);var popupPanel=document.createElement("div");YAHOO.util.Dom.setStyle(popupPanel,"left",xy[0]+"px");YAHOO.util.Dom.setStyle(popupPanel,"top",(xy[1]+link.offsetHeight)+"px");YAHOO.util.Dom.setStyle(popupPanel,"opacity",0);YAHOO.util.Dom.setStyle(popupPanel,"height",0);popupPanel.setAttribute("class","memberPopup");var innerPanel=document.createElement("div");popupPanel.appendChild(innerPanel);innerPanel.innerHTML="<h3>Loading...</h3><p>-please wait-</p>";document.body.appendChild(popupPanel);me.currentPanel=innerPanel;me.currentPopup=popupPanel;var mouseHover=function(evt,state)
{YAHOO.log("POPUP HOVER!!");};var mouseOut=function(evt,state)
{YAHOO.log("POPUP OUT!!");};YAHOO.util.Event.addListener(popupPanel,"mouseover",mouseHover,state);YAHOO.util.Event.addListener(popupPanel,"mouseout",mouseOut,state);var resizePanel=function(evt,popup)
{var newPanelHeight=popupPanel.scrollHeight;YAHOO.log("Resize Panel To "+newPanelHeight);var callback=function()
{if(state.me.currentMemberId==memberId)
setTimeout(function(e,p){resizePanel(e,p);},120);};var opacityAnimation=new YAHOO.util.Anim(popup,{opacity:{to:0.8},height:{to:newPanelHeight}},0.20);opacityAnimation.animate();};resizePanel(null,popupPanel);me.fetchMemberInfo(state);},fetchMemberInfo:function(state)
{YAHOO.log("Fetching member info...");var me=state.me;var memberId=state.memberId;if(me.currentMemberId!=memberId)
return;var callback={success:function(o)
{var json=o.responseText;var data=YAHOO.lang.JSON.parse(json);me.memberData=data;me.displayMember(state);},failure:function(o){YAHOO.log(o.responseText);}};var url=DLBOY.applicationPath+"/MEMBERS/PROFILE/SCRIPT/GetMemberInfo.ashx"+"?memberId="+memberId;YAHOO.util.Connect.asyncRequest("GET",url,callback,"");},displayMember:function(state)
{var me=state.me;var memberId=state.memberId;var data=me.memberData;if(me.currentMemberId!=memberId)
return;var htmlParts=["<img src='"+data.SmallThumbnailURL+"' class='userThumbnail' style='float:left;' />","<h3>"+data.MemberName+" ("+data.Age+")"+"</h3>","<p>","<strong>Location</strong>: ","<img src='"+data.CountryFlagUrl+"' />",data.Location,"<br/>",data.NbrPictures," pictures, last login ",data.LastLoginStrSince,", his local time is ",data.LocalTimeHour,"<br/>","<strong>Your Last Visit</strong>: ",data.YourLastVisitStrSince,"<br/>",data.IsYourFavorite?"<span class='following'>* Your are following this member *</span><br/>":"","</p>"];var html=htmlParts.join("");var currentPanel=me.currentPanel;if(currentPanel==null)
{YAHOO.log("Null panel - error!!!");return;}
currentPanel.innerHTML=html;var innerPanelHeight=currentPanel.scrollHeight;var opacityAnimation=new YAHOO.util.Anim(currentPanel.parentNode,{height:{to:innerPanelHeight}},0.55);opacityAnimation.animate();}};DLBOY.MembersHooks=new DLBOY.MembersHooks_CLASS();var DLBOY=DLBOY||{};DLBOY.NotificationsClass=function()
{this.currentElement=null;};DLBOY.NotificationsClass.prototype={notificationQueue:[],currentNotifications:{},currentNotificationAnimation:null,currentElement:null,addNotification:function(token,html,actions)
{if(actions==null)
actions=[];if(!actions.length)
actions=[actions];this.notificationQueue.push({token:token,html:html,actions:actions});this.refreshDisplay();},removeNotification:function(token)
{this.currentNotifications[token]=undefined;this.refreshDisplay();},refreshDisplay:function()
{if(this.currentNotificationAnimation)
return;var newNotification=this.notificationQueue.pop();if(newNotification)
this.currentNotifications[newNotification.token]=newNotification;var me=this;var nbr=0;for(var token in this.currentNotifications)
{var currentNotification=this.currentNotifications[token];if(currentNotification==undefined)
continue;nbr++;if(nbr==1)
{if(this.currentElement==null)
{this.currentElement=document.createElement("div");this.currentElement.setAttribute("class","notificationsZone");document.body.appendChild(this.currentElement);}
else
{var children=YAHOO.util.Dom.getChildren(this.currentElement);for(var i=0;i<children.length;i++)
this.currentElement.removeChild(children[i]);}}
var elem=document.createElement("div");elem.setAttribute("class","notificationElement");elem.innerHTML=currentNotification.html;this.currentElement.appendChild(elem);var closeElem=document.createElement("a");closeElem.innerHTML="X";closeElem.setAttribute("style","float:right;");closeElem.setAttribute("href","#");var closeCallback=function(e,t)
{YAHOO.util.Event.preventDefault(e);me.removeNotification(t);};YAHOO.util.Event.addListener(closeElem,"click",closeCallback,token);elem.insertBefore(closeElem,elem.childNodes[0]);currentNotification.element=elem;var actionsElem=document.createElement("div");actionsElem.setAttribute("class","actions");if(!currentNotification.initialized)
YAHOO.util.Dom.setStyle(elem,"opacity",0);elem.appendChild(actionsElem);for(var j=0;j<currentNotification.actions.length;j++)
{var action=currentNotification.actions[j];action.token=currentNotification.token;var url=action.url?action.url:"#";var callback=function(evt,actionState)
{if(actionState.autoRemove)
me.removeNotification(actionState.token);if(actionState.callback)
{YAHOO.util.Event.preventDefault(evt);actionState.callback();}};var actionLinkElem=document.createElement("a");actionLinkElem.innerHTML=action.text;actionLinkElem.setAttribute("href",url);if(action.cssClass)
actionLinkElem.setAttribute("class",action.cssClass);actionsElem.appendChild(actionLinkElem);actionsElem.appendChild(document.createTextNode(" "));YAHOO.util.Event.addListener(actionLinkElem,"click",callback,action);}
if(!currentNotification.initialized)
{currentNotification.initialized=true;this.currentNotificationAnimation=new YAHOO.util.Anim(elem,{opacity:{from:0,to:1}},1.5);this.currentNotificationAnimation.onComplete.subscribe(function()
{me.currentNotificationAnimation=null;me.refreshDisplay();});this.currentNotificationAnimation.animate();}}
if(nbr==0&&this.currentElement!=null)
this.currentElement.parentNode.removeChild(this.currentElement);}};DLBOY.Notifications=new DLBOY.NotificationsClass();(function()
{if(window.google&&google.gears)
{return;}
var factory=null;if(typeof GearsFactory!='undefined')
{factory=new GearsFactory();}else
{try
{factory=new ActiveXObject('Gears.Factory');if(factory.getBuildInfo().indexOf('ie_mobile')!=-1)
{factory.privateSetGlobalObject(this);}}catch(e)
{if((typeof navigator.mimeTypes!='undefined')&&navigator.mimeTypes["application/x-googlegears"])
{factory=document.createElement("object");factory.style.display="none";factory.width=0;factory.height=0;factory.type="application/x-googlegears";document.documentElement.appendChild(factory);}}}
if(!factory)
{return;}
if(!window.google)
{google={};}
if(!google.gears)
{google.gears={factory:factory};}})();var DLBOY=DLBOY||{};DLBOY.Storage=DLBOY.Storage||{};DLBOY.Storage.SelectedStorage=DLBOY.Storage.SelectedStorage||{};DLBOY.Storage.GetStorage=function(databaseName)
{if(!databaseName)
databaseName="DLBOY-DB";if(DLBOY.Storage.SelectedStorage[databaseName])
return DLBOY.Storage.SelectedStorage[databaseName];var result;if(DLBOY.Storage.DomStorage)
{if(!result&&DLBOY.Storage.DomStorage.GetIsAvailable())
result=new DLBOY.Storage.DomStorage(databaseName);}
else
YAHOO.log("DomStorage not loaded.");if(!result&&DLBOY.Storage.DummyStorage)
result=new DLBOY.Storage.DummyStorage(databaseName);if(!result&&!DLBOY.Storage.DummyStorage)
throw"At least, DummyStorage should be loaded.";DLBOY.Storage.SelectedStorage[databaseName]=result;DLBOY.Storage.CheckActivation(result);return result;};DLBOY.Storage.BaseStorage=function()
{this.StorageName="Undefined - Please redefine.";this.Version="0.0";};DLBOY.Storage.BaseStorage.prototype={getValue:function(key)
{throw"Must be overriden.";},setValue:function(key,value)
{throw"Must be overriden.";},remove:function(key)
{throw"Must be overriden.";},removeAll:function(key)
{throw"Not Available.";},reportException:function(e)
{Util.reportException(e);}};DLBOY.Storage.CheckActivation=function(storage)
{if(!DLBOY.NotificationsClass)
return;if(storage.isDummy)
{if(DLBOY.Storage.GearsStorage)
{if(DLBOY.Storage.GearsStorage.GetIsInstalled())
{DLBOY.Notifications.addNotification("INSTALL_GEARS","Accelerate this web site by authorizing Google Gears!",{text:"Authorize Google Gears",autoRemove:true,callback:function(){DLBOY.Storage.GearsStorage.AskPermission();}});}}}};if(!DLBOY||!DLBOY.Storage)
throw"Storage.js must be loaded before DomStorageProvider.js";DLBOY.Storage.DomStorage=function()
{if(!DLBOY.Storage.DomStorage.GetIsAvailable())
throw"Dom Storage not available";if(DLBOY.Storage.DomStorage.GetIsFirefoxStorageAvailable())
{this.StorageName="Firefox Storage";this._storage=globalStorage[window.top.location.host];this.isFirefox=true;}
else if(DLBOY.Storage.DomStorage.GetIsW3cStorageAvailable())
{this.StorageName="W3C DOM Storage";this._storage=localStorage;}
else
throw"Unknown Dom Storage";this.getValue=function(key)
{if(key==null)
return null;var result=this._storage.getItem(key);if(this.isFirefox&&result&&result.value)
result=result.value;return result;};this.setValue=function(key,value)
{if(key==null)
return;if(value==null)
{this.remove(key);return;}
return this._storage.setItem(key,value);};this.remove=function(key)
{if(key==null)
return;this._storage.removeItem(key);};this.removeAll=function()
{this._storage.clear();};};DLBOY.Storage.DomStorage.prototype=new DLBOY.Storage.BaseStorage();DLBOY.Storage.DomStorage.GetIsAvailable=function()
{var result=DLBOY.Storage.DomStorage.GetIsFirefoxStorageAvailable()||DLBOY.Storage.DomStorage.GetIsW3cStorageAvailable();DLBOY.Storage.DomStorage.GetIsAvailable=function(){return result;};return result;}
DLBOY.Storage.DomStorage.GetIsFirefoxStorageAvailable=function()
{if(!window.globalStorage)
return false;var hostname=window.top.location.host;if(!globalStorage[hostname])
return false;var result=false;try
{var storage=globalStorage[hostname];storage.setItem("DummyTestValue","DummyValue");var test=storage.getItem("DummyTestValue");result=test=="DummyValue";storage.removeItem("DummyTestValue");}
catch(e)
{YAHOO.log(e);result=false;}
DLBOY.Storage.DomStorage.GetIsFirefoxStorageAvailable=function(){return result;};return result;}
DLBOY.Storage.DomStorage.GetIsW3cStorageAvailable=function()
{if(!window.localStorage)
return false;var result=false;try
{var storage=localStorage;storage.setItem("DummyTestValue","DummyValue");var test=storage.getItem("DummyTestValue");result=test=="DummyValue";storage.removeItem("DummyTestValue");}
catch(e)
{YAHOO.log(e);result=false;}
DLBOY.Storage.DomStorage.GetIsW3cStorageAvailable=function(){return result;};return result;}
if(!DLBOY||!DLBOY.Storage)
throw"Storage.js must be loaded before GearsStorageProvider.js";DLBOY.Storage.GearsStorage=function(databaseName)
{if(!DLBOY.Storage.GearsStorage.GetIsAvailable())
throw"Gears Storage not available";var factory=google.gears.factory;this.DatabaseName=databaseName||"DLB";this.StorageName="Gears Storage ("+this.DatabaseName+")";this.TableName="MainData";this.Version=factory.version;var isInitialized=false;var databaseConnection=null;var ensureInitialized=function(me)
{if(isInitialized)
return;try
{var nbTries=0;while(true)
{try
{databaseConnection=factory.create("beta.database");databaseConnection.open(me.DatabaseName);break;}
catch(e)
{delete databaseConnection;nbTries++;me.reportException("[Gears] try #"+nbTries+": "+e);if(nbTries>=3)
throw e;}}
var rs=databaseConnection.execute("CREATE TABLE IF NOT EXISTS ["+me.TableName+"] ("+"[Key] Text PRIMARY KEY ASC ON CONFLICT REPLACE, "+"[Value] Text NULL);");rs.close();isInitialized=true;}
catch(e)
{var msg="[Gears] Initializing Database: "+e;me.reportException(msg);throw msg;}};this.getValue=function(key)
{try
{ensureInitialized(this);if(key==null)
return null;var rs=databaseConnection.execute("SELECT [Value] FROM ["+this.TableName+"] WHERE [Key]=? LIMIT 1;",[key]);if(!rs.isValidRow())
{rs.close();return null;}
var result=rs.field(0);rs.close();return result;}
catch(e)
{var msg="[Gears] Fetching value for key '"+key+"': "+e;this.reportException(msg);throw msg;}};this.setValue=function(key,value)
{try
{ensureInitialized(this);if(key==null)
return;if(value==null)
{this.remove(key);return;}
var rs=databaseConnection.execute("INSERT OR REPLACE INTO ["+this.TableName+"] ([Key], [Value]) VALUES (?, ?);",[key,value]);rs.close();}
catch(e)
{var msg="[Gears] Setting value for key '"+key+"': "+e;this.reportException(msg);throw msg;}};this.remove=function(key)
{try
{ensureInitialized(this);if(key==null)
return;var rs=databaseConnection.execute("DELETE FROM ["+this.TableName+"] WHERE [Key]=?;",[key]);rs.close();}
catch(e)
{var msg="[Gears] Removing value for key '"+key+"': "+e;this.reportException(msg);throw msg;}};this.removeAll=function()
{try
{ensureInitialized(this);var rs=databaseConnection.execute("DELETE FROM ["+this.TableName+"];");rs.close();}
catch(e)
{var msg="[Gears] Removing all values: "+e;this.reportException(msg);throw msg;}};this.getAllKeys=function()
{try
{ensureInitialized(this);var result=new Array();var rs=databaseConnection.execute("SELECT [Key]  FROM ["+this.TableName+"];");while(rs.isValidRow())
{result[result.length]=rs.field(0);rs.next();}
rs.close();return result;}
catch(e)
{var msg="[Gears] Getting all keys: "+e;this.reportException(msg);throw msg;}};};DLBOY.Storage.GearsStorage.prototype=new DLBOY.Storage.BaseStorage();DLBOY.Storage.GearsStorage.GetIsInstalled=function()
{if(!window.google||!google.gears)
return false;return true;}
DLBOY.Storage.GearsStorage.GetIsAvailable=function()
{if(!DLBOY.Storage.GearsStorage.GetIsInstalled())
return false;if(!google.gears.factory)
return false;return google.gears.factory.hasPermission;}
DLBOY.Storage.GearsStorage.AskPermission=function(site,imageUrl,message)
{if(DLBOY.Storage.GearsStorage.GetIsAvailable())
return;if(!DLBOY.Storage.GearsStorage.GetIsInstalled())
throw"Gears not installed: cannot ask for permission.";return google.gears.factory.getPermission(site,imageUrl,message);}
if(!DLBOY||!DLBOY.Storage)
throw"Dummy.js must be loaded before DomStorageProvider.js";DLBOY.Storage.DummyStorage=function()
{this.StorageName="Dummy Storage";this.isDummy=true;var store={};this.getValue=function(key)
{return store[key];};this.setValue=function(key,value)
{if(value==null)
this.remove(key);if(key!=null)
store[key]=value;};this.remove=function(key)
{if(key==null)
return;store[key]=undefined;};this.removeAll=function()
{store={};};};DLBOY.Storage.DummyStorage.prototype=new DLBOY.Storage.BaseStorage();if(!window.Silverlight)
{window.Silverlight={};}
Silverlight._silverlightCount=0;Silverlight.fwlinkRoot='http://go2.microsoft.com/fwlink/?LinkID=';Silverlight.onGetSilverlight=null;Silverlight.onSilverlightInstalled=function(){window.location.reload(false);};Silverlight.isInstalled=function(version)
{var isVersionSupported=false;var container=null;try
{var control=null;try
{control=new ActiveXObject('AgControl.AgControl');if(version==null)
isVersionSupported=true;else if(control.IsVersionSupported(version))
isVersionSupported=true;control=null;}
catch(e)
{var plugin=navigator.plugins["Silverlight Plug-In"];if(plugin)
{if(version==null)
isVersionSupported=true;else
{var actualVer=plugin.description;if(actualVer==="1.0.30226.2")
actualVer="2.0.30226.2";var actualVerArray=actualVer.split(".");while(actualVerArray.length>3)
actualVerArray.pop();while(actualVerArray.length<4)
actualVerArray.push(0);var reqVerArray=version.split(".");while(reqVerArray.length>4)
reqVerArray.pop();var requiredVersionPart;var actualVersionPart
var index=0;do
{requiredVersionPart=parseInt(reqVerArray[index]);actualVersionPart=parseInt(actualVerArray[index]);index++;}
while(index<reqVerArray.length&&requiredVersionPart===actualVersionPart);if(requiredVersionPart<=actualVersionPart&&!isNaN(requiredVersionPart))
isVersionSupported=true;}}}}
catch(e)
{isVersionSupported=false;}
if(container)
document.body.removeChild(container);return isVersionSupported;};Silverlight.WaitForInstallCompletion=function()
{if(!Silverlight.isBrowserRestartRequired&&Silverlight.onSilverlightInstalled)
{try
{navigator.plugins.refresh();}
catch(e)
{}
if(Silverlight.isInstalled(null))
Silverlight.onSilverlightInstalled();else
setTimeout(Silverlight.WaitForInstallCompletion,3000);}};Silverlight.__startup=function()
{Silverlight.isBrowserRestartRequired=Silverlight.isInstalled(null);if(!Silverlight.isBrowserRestartRequired)
Silverlight.WaitForInstallCompletion();YAHOO.util.Event.removeListener(window,Silverlight.__startup);};(function()
{YAHOO.util.Event.addListener(window,"load",Silverlight.__startup);})();Silverlight.createObject=function(source,parentElement,id,properties,events,initParams,userContext)
{if(parentElement)
parentElement=YAHOO.util.Dom.get(parentElement);id=id||YAHOO.util.Dom.generateId();var slPluginHelper={};var slProperties=properties;var slEvents=events;slPluginHelper.version=slProperties.version;slProperties.source=source;slPluginHelper.alt=slProperties.alt;if(initParams)
slProperties.initParams=initParams;if(slProperties.isWindowless&&!slProperties.windowless)
slProperties.windowless=slProperties.isWindowless;if(slProperties.framerate&&!slProperties.maxFramerate)
slProperties.maxFramerate=slProperties.framerate;if(id&&!slProperties.id)
slProperties.id=id;delete slProperties.ignoreBrowserVer;delete slProperties.inplaceInstallPrompt;delete slProperties.version;delete slProperties.isWindowless;delete slProperties.framerate;delete slProperties.data;delete slProperties.src;delete slProperties.alt;if(Silverlight.isInstalled(slPluginHelper.version))
{for(var name in slEvents)
{if(slEvents[name])
{if(name=="onLoad"&&typeof slEvents[name]=="function"&&slEvents[name].length!=1)
{var onLoadHandler=slEvents[name];slEvents[name]=function(sender){return onLoadHandler(document.getElementById(id),userContext,sender)};}
var handlerName=Silverlight.__getHandlerName(slEvents[name]);if(handlerName!=null)
{slProperties[name]=handlerName;slEvents[name]=null;}
else
throw"typeof events."+name+" must be 'function' or 'string'";}}
slPluginHTML=Silverlight.buildHTML(slProperties);}
else
{slPluginHTML=Silverlight.buildPromptHTML(slPluginHelper);}
if(parentElement)
parentElement.innerHTML=slPluginHTML;else
return slPluginHTML;};Silverlight.buildHTML=function(slProperties)
{var htmlBuilder=[];htmlBuilder.push('<object type=\"application/x-silverlight\" data="data:application/x-silverlight,"');if(slProperties.id!=null)
htmlBuilder.push(' id="'+slProperties.id+'"');if(slProperties.width!=null)
htmlBuilder.push(' width="'+slProperties.width+'"');if(slProperties.height!=null)
htmlBuilder.push(' height="'+slProperties.height+'"');htmlBuilder.push(' >');delete slProperties.id;delete slProperties.width;delete slProperties.height;for(var name in slProperties)
{if(slProperties[name])
htmlBuilder.push('<param name="'+Silverlight.HtmlAttributeEncode(name)+'" value="'+Silverlight.HtmlAttributeEncode(slProperties[name])+'" />');}
htmlBuilder.push('<\/object>');return htmlBuilder.join('');};Silverlight.createObjectEx=function(params)
{var parameters=params;var html=Silverlight.createObject(parameters.source,parameters.parentElement,parameters.id,parameters.properties,parameters.events,parameters.initParams,parameters.context);if(parameters.parentElement==null)
return html;};Silverlight.buildPromptHTML=function(slPluginHelper)
{var slPluginHTML="";var urlRoot=Silverlight.fwlinkRoot;var shortVer=slPluginHelper.version;if(slPluginHelper.alt)
slPluginHTML=slPluginHelper.alt;else
{if(!shortVer)
{shortVer="";}
slPluginHTML="<a href='javascript:Silverlight.getSilverlight(\"{1}\");' style='text-decoration: none;'>"+"<img src='{2}' alt='Get Microsoft Silverlight' style='border-style: none'/></a>";slPluginHTML=slPluginHTML.replace('{1}',shortVer);slPluginHTML=slPluginHTML.replace('{2}',urlRoot+'108181');}
return slPluginHTML;};Silverlight.getSilverlight=function(version)
{if(Silverlight.onGetSilverlight)
Silverlight.onGetSilverlight();var shortVer="";var reqVerArray=String(version).split(".");if(reqVerArray.length>1)
{var majorNum=parseInt(reqVerArray[0]);if(isNaN(majorNum)||majorNum<2)
shortVer="1.0";else
shortVer=reqVerArray[0]+'.'+reqVerArray[1];}
var verArg="";if(shortVer.match(/^\d+\056\d+$/))
verArg="&v="+shortVer;Silverlight.followFWLink("114576"+verArg);};Silverlight.followFWLink=function(linkid)
{top.location=Silverlight.fwlinkRoot+String(linkid);};Silverlight.HtmlAttributeEncode=function(strInput)
{var c;var retVal='';if(strInput==null)
return null;for(var cnt=0;cnt<strInput.length;cnt++)
{c=strInput.charCodeAt(cnt);if(((c>96)&&(c<123))||((c>64)&&(c<91))||((c>43)&&(c<58)&&(c!=47))||(c==95))
{retVal=retVal+String.fromCharCode(c);}
else
retVal=retVal+'&#'+c+';';}
return retVal;};Silverlight.default_error_handler=function(sender,args)
{var iErrorCode;var errorType=args.ErrorType;iErrorCode=args.ErrorCode;var errMsg="\nSilverlight error message     \n";errMsg+="ErrorCode: "+iErrorCode+"\n";errMsg+="ErrorType: "+errorType+"       \n";errMsg+="Message: "+args.ErrorMessage+"     \n";if(errorType=="ParserError")
{errMsg+="XamlFile: "+args.xamlFile+"     \n";errMsg+="Line: "+args.lineNumber+"     \n";errMsg+="Position: "+args.charPosition+"     \n";}
else if(errorType=="RuntimeError")
{if(args.lineNumber!=0)
{errMsg+="Line: "+args.lineNumber+"     \n";errMsg+="Position: "+args.charPosition+"     \n";}
errMsg+="MethodName: "+args.methodName+"     \n";}
alert(errMsg);};Silverlight.__cleanup=function()
{for(var i=Silverlight._silverlightCount-1;i>=0;i--)
{window['__slEvent'+i]=null;}
Silverlight._silverlightCount=0;YAHOO.util.Event.removeListener(window,Silverlight.__cleanup);};Silverlight.__getHandlerName=function(handler)
{var handlerName="";if(typeof handler=="string")
{handlerName=handler;}
else if(typeof handler=="function")
{if(Silverlight._silverlightCount==0)
YAHOO.util.Event.addListener(window,"unload",Silverlight.__cleanup);var count=Silverlight._silverlightCount++;handlerName="__slEvent"+count;window[handlerName]=handler;}
else
{handlerName=null;}
return handlerName;};var DLBOY=DLBOY||{};DLBOY.Silverlight={SILVERLIGHT_COOKIE:"SILVERLIGHT_MODE",SILVERLIGHT_COOKIE_DISABLED_VALUE:"DISABLED",IsActive:function()
{if(!DLBOY.Silverlight.IsEnginePresent())
return false;return!DLBOY.Silverlight.IsDisabled();},IsEnginePresent:function()
{return Silverlight&&Silverlight.isInstalled();},IsDisabled:function()
{var cookie=YAHOO.util.Cookie.get(DLBOY.Silverlight.SILVERLIGHT_COOKIE);return cookie===DLBOY.Silverlight.SILVERLIGHT_COOKIE_DISABLED_VALUE;},SetDisabled:function()
{var date=(new Date())+365*2;var options={path:DLBOY.applicationPath+"/",expires:date};YAHOO.util.Cookie.set(DLBOY.Silverlight.SILVERLIGHT_COOKIE,DLBOY.Silverlight.SILVERLIGHT_COOKIE_DISABLED_VALUE,options);},RemoveDisabled:function()
{var options={path:DLBOY.applicationPath+"/"};YAHOO.util.Cookie.remove(DLBOY.Silverlight.SILVERLIGHT_COOKIE,options);},GetStatusName:function()
{if(DLBOY.Silverlight.IsActive())
return"ACTIVE";if(DLBOY.Silverlight.IsEnginePresent())
return"INSTALLED BUT DISABLED";if(DLBOY.Silverlight.IsDisabled())
return"DISABLED (NOT INSTALLED)";return"NOT INSTALLED";}};