/*    HTTP Host:  static.ak.fbcdn.net                                          */
/*    Generated:  June 29th 2009 1:34:17 PM PDT                                */
/*      Machine:  10.16.139.106                                                */
/*       Source:  Global Cache                                                 */
/*     Location:  js/5baxezqosckkocwo.pkg.js h:9jkd655i                        */
/*       Locale:  nu_ll                                                        */
/*         Path:  js/5baxezqosckkocwo.pkg.js                                   */


function ToolTips(){copy_properties(this,{tipBox:$N('div'),tipInner:$N('div'),_showTimer:null});CSS.addClass(this.tipBox,'tooltip');CSS.addClass(this.tipInner,'tooltip_inner');this.tipBox.appendChild(this.tipInner);DOM.getRootElement().appendChild(this.tipBox);};ToolTips.TOP_CENTER={orientClassName:'tooltip_top_center'};ToolTips.RIGHT_CENTER={orientClassName:'tooltip_right_center'};ToolTips.BOTTOM_CENTER={orientClassName:'tooltip_bottom_center'}
ToolTips.LEFT_CENTER={orientClassName:'tooltip_left_center'}
ToolTips.DEFAULT=ToolTips.TOP_CENTER;copy_properties(ToolTips.prototype,{show:function(event){var target=$E(event).getTarget();var delay=DataStore.get(target,'tooltip',{}).delay||0;if(!delay){this._show(target);}else if(!this._showTimer){this._showTimer=this._show.bind(this,target).defer(delay);}},_show:function(target){var data=DataStore.get(target,'tooltip');if(data){this.tipInner.setContent(HTML(data.tip));CSS.setClass(this.tipBox,'tooltip');if(data.className){this.tipBox.addClass(data.className);}
this.tipBox.style.display='block';this.tipBox.style.visibility='hidden';orientation=data.orientation||ToolTips.DEFAULT;var vector;var elem_dimensions=Vector2.getElementDimensions(this.tipBox);switch(orientation){case ToolTips.RIGHT_CENTER:vector=Vector2.getElementCompassPoint(target,Vector2.compass.southeast).add(3,-(Vector2.getElementDimensions(target).y+
elem_dimensions.y)/2);break;case ToolTips.TOP_CENTER:vector=Vector2.getElementCompassPoint(target,Vector2.compass.north).add(-elem_dimensions.x/2,-elem_dimensions.y-3);break;case ToolTips.LEFT_CENTER:vector=Vector2.getElementCompassPoint(target,Vector2.compass.southwest).add(-elem_dimensions.x-7,-(Vector2.getElementDimensions(target).y+
elem_dimensions.y)/2);break;case ToolTips.BOTTOM_CENTER:vector=Vector2.getElementCompassPoint(target,Vector2.compass.south).add(-elem_dimensions.x/2,3);break;default:throw new Error(sprintf('Unknown tooltip orientation: %s.',orientation));}
CSS.addClass(this.tipBox,orientation.orientClassName);this.tipBox.style.visibility='visible';if(data.offset){vector=vector.sub(data.offset);}
vector.setElementPosition(this.tipBox);(function(){Rect.getElementBounds(this.tipBox).boundWithin(Rect.getViewportBounds()).getPositionVector().setElementPosition(this.tipBox);}).bind(this).defer();}else{this.hide();}
return this;},hide:function(event){if(this._showTimer){clearTimeout(this._showTimer);this._showTimer=null;}
this.tipBox.style.display='';return this;}});copy_properties(ToolTips,{instance:null,getInstance:function(){return ToolTips.instance||(ToolTips.instance=new ToolTips());},setTips:function(tips,orientation,delay,offset){for(var k in tips){ToolTips.setTip(k,tips[k],orientation,delay,offset);}
return ToolTips;},setTip:function(element,toolTip,orientation,delay,offset){el=ge(element);if(el){var instance=ToolTips.getInstance();var show=instance.show.bind(instance);var hide=instance.hide.bind(instance);DataStore.set(el,'tooltip',{tip:toolTip,orientation:orientation,delay:delay,offset:offset});el.listen('mouseover',show);el.listen('mouseout',hide);}
return ToolTips;},configureTip:function(element,property,value){switch(property){case'orientation':case'delay':case'tip':case'className':element=$(element);var data=DataStore.get(element,'tooltip');data[property]=value;DataStore.set(element,'tooltip',data);return ToolTips;break;}
throw new TypeError('Invalid property, consult documentation.');}});
Arbiter.inform("template\/registerTemplate", {"name":"\/templates\/UIActionButton.tmpl","template":"\n<a class=\"UIActionButton\" bindPoint=\"root\" href=\"#\">\n  <span class=\"UIActionButton_Wrap\" bindPoint=\"wrap\">\n    <span class=\"UIActionButton_Text\" bindPoint=\"text\"><\/span>\n  <\/span>\n<\/a>\n"}, Arbiter.BEHAVIOR_PERSISTENT);

function UIActionButton(title){this.root=null;this.wrap=null;this.text=null;this.parent.construct(this,URI('/templates/UIActionButton.tmpl'));this.setTitle(title);this.setOnclick(bagofholding);Event.listen(this.root,'click',this._click.bind(this));}
UIActionButton.extend('TemplateObject');copy_properties(UIActionButton,{colorBlack:'Black',colorBlue:'Blue',colorGray:'Gray',colorGreen:'Green',iconChevronGray:144,iconChevronWhite:168,iconChevronBlue:192,iconLockGray:216,iconLockWhite:240,iconLockBlue:264,iconScopeGray:288,iconScopeWhite:312,iconScopeBlue:336,iconPlus:360,iconFriend:384,iconFan:408,iconConnect:432});UIActionButton.prototype={setHref:function(href){this.root.href=href;return this;},setIcon:function(icon){if(this.icon){DOM.remove(this.icon);}
if(icon&&parseInt(icon,10)){this.icon=$N('span',{className:'UIActionButton_Icon',style:{backgroundPosition:'0 -'+icon+'px'}});DOM.prependContent(this.text,this.icon);}else{throw new Error('Custom icon buttons cannot be created from JS.');}
return this;},setTooltip:function(tooltip){if(this.tooltip){if(tooltip){DOM.setContent(this.tooltip.firstChild,tooltip);}else{DOM.remove(this.tooltip);CSS.removeClass(this.root,'UITooltip');this.tooltip=null;}}else{this.tooltip=$N('span',{className:'UITooltip_Wrap'},$N('span',{className:'UITooltip_Text'},tooltip));CSS.addClass(this.root,'UITooltip');DOM.prependContent(this.root,this.tooltip);}
return this;},setDisabled:function(disabled){CSS.conditionClass(this.root,'UIActionButton_Disabled',disabled);return this;},getDisabled:function(){return CSS.hasClass(this.root,'UIActionButton_Disabled');},setTextColor:function(color){this.textColor=color;CSS.conditionClass(this.root,'UIActionButton_BlueText',this.textColor==UIActionButton.colorBlue);return this;},setBackgroundColor:function(backgroundColor){CSS.removeClass(this.root,'UIActionButton_BlueBack');CSS.removeClass(this.root,'UIActionButton_GreenBack');CSS.addClass(this.root,'UIActionButton_'+backgroundColor+'Back');return this;},setSuppressButton:function(suppress){CSS.conditionClass(this.root,'UIActionButton_SuppressButton',suppress);return this;},setSuppressMargin:function(suppress){CSS.conditionClass(this.root,'UIActionButton_SuppressMargin',suppress);return this;},setOnclick:function(fn){this._onclick=fn;return this;},setTitle:function(title){DOM.setContent(this.text,title);return this;},setHidden:function(hidden){CSS.conditionClass(this.root,'hidden_elem',hidden);return this;},getHidden:function(){return CSS.hasClass(this.root,'hidden_elem');},getNodes:function(){return[this.root];},_click:function(){return this.getDisabled()?false:this._onclick();}};
Arbiter.inform("template\/registerTemplate", {"name":"\/templates\/UIObjectListing.tmpl","template":"\n\n<div bindPoint=\"root\" class=\"UIObjectListing clearfix\">\n    <div class=\"UIObjectListing_Pic\">\n      <a href=\"${href}\">\n        <span class=\"UIObjectListing_PicRounded\"><\/span>\n        <img bindPoint=\"pic\" \/>\n      <\/a>\n    <\/div>\n    <div class=\"UIObjectListing_MetaData\">\n      <a bindPoint=\"title\" class=\"UIObjectListing_Title\" href=\"${href}\"\/>\n      <div class=\"UIObjectListing_MetaDataSecondary\">\n        <span bindPoint=\"subtitle\" class=\"UIObjectListing_Subtitle\"\/>\n        <span bindPoint=\"subtext\" class=\"UIObjectListing_Subtext\"\/>\n      <\/div>\n    <\/div>\n    <div class=\"UIObjectListing_RightContent\" bindPoint=\"rightContent\">\n      <div class=\"UIObjectListing_RemoveContainer hidden_elem\" bindPoint=\"removeContainer\">\n        <a class=\"UIObjectListing_RemoveLink\" bindPoint=\"removeLink\" href=\"#\">&nbsp;<\/a>\n      <\/div>\n      <div class=\"UIObjectListing_ActionContainer hidden_elem\" bindPoint=\"actionContainer\">\n      <\/div>\n    <\/div>\n<\/div>\n"}, Arbiter.BEHAVIOR_PERSISTENT);

function UIObjectListing(data){copy_properties(this,{_data:data,_dirty:true,root:null,pic:null,actionContainer:null,removeContainer:null,removeLink:null,rightContent:null,subtext:null});this._removeLinkHandler=bagofholding;this._control=false;var uri=URI('/templates/UIObjectListing.tmpl');this.parent.construct(this,uri,this._data);}
UIObjectListing.extend('TemplateObject');UIObjectListing.prototype.setBoldTitle=function(bold_title){CSS.conditionClass(this.root,'UIObjectListing_TitleNormal',!bold_title);}
UIObjectListing.prototype.setPicPadding=function(pic_padding){CSS.conditionClass(this.root,'UIObjectListing_PicPadding',pic_padding);}
UIObjectListing.prototype.getId=function(){return this._data.id;}
UIObjectListing.prototype.setSubtext=function(subtext){DOM.setContent(this.subtext,subtext);return this;}
UIObjectListing.prototype.setActionControl=function(control){this._control=control;DOM.setContent(this.actionContainer,control.getNodes());CSS.removeClass(this.actionContainer,'hidden_elem');return this;}
UIObjectListing.prototype.getActionControl=function(){return this._control;}
UIObjectListing.prototype.setRemoveControl=function(enabled,handler,tooltip_text){CSS.conditionClass(this.removeContainer,'hidden_elem',!enabled);CSS.conditionClass(this.root,'UIObjectListing_HasRemoveControl',enabled);if(enabled){if(handler){this._removeLinkHandler=handler;}
if(tooltip_text){ToolTips.setTip(this.removeLink,tooltip_text,ToolTips.TOP_CENTER,0,new Vector2(0,5));}}}
UIObjectListing.prototype.setRightContent=function(content){DOM.setContent(this.rightContent,content);return this;}
UIObjectListing.prototype._removeLinkClick=function(e){this._removeLinkHandler();return false;}
UIObjectListing.prototype.paint=function(){this.pic.src=this._data.pic;if(this._data.removeable){CSS.removeClass(this.removeContainer,'hidden_elem');}
DOM.setContent(this.title,this._data.title);if(this._data.subtitle){DOM.setContent(this.subtitle,this._data.subtitle);}
if(this._data.subtext){this.setSubtext(this._data.subtext);}
Event.listen(this.removeLink,'click',this._removeLinkClick.bind(this));if(!this._data.href){DOM.replace(this.title,$N('span',{className:this.title.className},DOM.getText(this.title)));}
this._dirty=false;}

if (window.Bootloader) { Bootloader.done(["js\/5baxezqosckkocwo.pkg.js"]); }
