/*Copyright (c) 2007, Caridy Patiņo. All rights reserved.Portions Copyright (c) 2007, Yahoo!, Inc. All rights reserved.Code licensed under the BSD License:http://www.bubbling-library.com/eng/licenceversion: 1.3.2*/(function(){var $B=YAHOO.CMS.Bubble,$E=YAHOO.util.Event,$L=YAHOO.lang,$D=YAHOO.util.Dom;YAHOO.util.Selector=function(){var obj={},_areas={},_listClass='yui-cms-selector',_itemClass='yui-cms-item',_selector='selected',_defConf={persistent:false,onReset:null,onSelect:null};function reset(area,conf){var resetItem=function(ref){$D.removeClass(ref,_selector);};var items=$D.getElementsByClassName(_itemClass,'*',area);if(items.length>0){$D.batch(items,resetItem,obj,true);}if($L.isFunction(conf.onReset)){conf.onReset.apply(conf,[area]);}}var actionControlRollovers=function(layer,args){var area=null,item=null,onWayOut;area=$B.getOwnerByClassName(args[1].target,_listClass);if(area){for(item in _areas){if((_areas.hasOwnProperty(item))&&$D.hasClass(area,item)){var c=_areas[item];item=$B.getOwnerByClassName(args[1].target,_itemClass);if(!$D.hasClass(area,_selector)){$D.addClass(area,_selector);onWayOut=function(e){if(!$B.virtualTarget(e,area)){reset(area,c);}};if(!c.persistent){$E.removeListener(area,'mouseout',onWayOut);$E.addListener(area,'mouseout',onWayOut,obj,true);}}if(item&&!$D.hasClass(item,_selector)){reset(area,c);$D.addClass(item,_selector);if($L.isFunction(c.onSelect)){c.onSelect.apply(c,[item,area]);}}}}}};$B.bubble.rollover.subscribe(actionControlRollovers);obj.add=function(className,conf){if($L.isString(className)&&(className!=='')){obj.remove(className);_areas[className]=conf||_defConf;}};obj.remove=function(className){if($L.isString(className)&&(className!=='')&&(_areas[className])){_areas[className]=null;}_areas[className]=null;};return obj;}();})();YAHOO.register("selector",YAHOO.util.Selector,{version:"1.3.2",build:"205"});