/*
Script: TabSwapper.js

Handles the scripting for a common UI layout; the tabbed box.

License:
	http://clientside.cnet.com/wiki/cnet-libraries#license
*/
var TabSwapper=new Class({Implements:[Options,Events],options:{selectedClass:"tabSelected",mouseoverClass:"tabOver",deselectedClass:"",rearrangeDOM:true,initPanel:0,smooth:false,smoothSize:false,maxSize:null,effectOptions:{duration:500},cookieName:null,cookieDays:999},tabs:[],sections:[],clickers:[],sectionFx:[],initialize:function(a){this.setOptions(a);this.setup();if(this.options.cookieName&&this.recall()){this.show(this.recall().toInt())}else{this.show(this.options.initPanel)}},setup:function(){var a=this.options;sections=$$(a.sections);tabs=$$(a.tabs);clickers=$$(a.clickers);tabs.each(function(c,b){this.addTab(c,sections[b],clickers[b],b)},this);return this},addTab:function(c,d,a,b){c=$(c);a=$(a);d=$(d);if(this.tabs.indexOf(c)>=0&&c.retrieve("tabbered")&&this.tabs.indexOf(c)!=b&&this.options.rearrangeDOM){this.moveTab(this.tabs.indexOf(c),b);return this}if(!$defined(b)){b=this.tabs.length}if(b>0&&this.tabs[b-1]&&this.options.rearrangeDOM){c.inject(this.tabs[b-1],"after");d.inject(this.tabs[b-1].retrieve("section"),"after")}this.tabs.splice(b,0,c);a=a||c;c.addEvents({mouseout:function(){c.removeClass(this.options.mouseoverClass)}.bind(this),mouseover:function(){c.addClass(this.options.mouseoverClass)}.bind(this)});a.addEvent("click",function(){this.show(b)}.bind(this));c.store("tabbered",true);c.store("section",d);c.store("clicker",a);this.hideSection(b);return this},removeTab:function(b){var a=this.tabs[this.now];if(this.now==b){if(b>0){this.show(b-1)}else{if(b<this.tabs.length){this.show(b+1)}}}this.now=this.tabs.indexOf(a);return this},moveTab:function(h,g){var c=this.tabs[h];var b=c.retrieve("clicker");var e=c.retrieve("section");var a=this.tabs[g];var f=a.retrieve("clicker");var d=a.retrieve("section");this.tabs.erase(c).splice(g,0,c);c.inject(a,"before");b.inject(f,"before");e.inject(d,"before");return this},show:function(a){if(!$chk(this.now)){this.tabs.each(function(c,b){if(a!=b){this.hideSection(b)}},this)}this.showSection(a).save(a);return this},save:function(a){if(this.options.cookieName){Cookie.write(this.options.cookieName,a,{duration:this.options.cookieDays})}return this},recall:function(){return(this.options.cookieName)?$pick(Cookie.read(this.options.cookieName),false):false},hideSection:function(a){var c=this.tabs[a];if(!c){return this}var b=c.retrieve("section");if(!b){return this}if(b.getStyle("display")!="none"){this.lastHeight=b.getSize().y;b.setStyle("display","none");c.swapClass(this.options.selectedClass,this.options.deselectedClass);this.fireEvent("onBackground",[a,b,c])}return this},showSection:function(a){var e=this.tabs[a];if(!e){return this}var b=e.retrieve("section");if(!b){return this}var f=this.options.smooth&&(!Browser.Engine.trident4||(Browser.Engine.trident4&&b.fxOpacityOk()));if(this.now!=a){if(!e.retrieve("tabFx")){e.store("tabFx",new Fx.Morph(b,this.options.effectOptions))}var g={display:"block",overflow:"hidden"};if(f){g.opacity=0}var d=false;if(f){d={opacity:1}}else{if(b.getStyle("opacity").toInt()<1){b.setStyle("opacity",1);if(!this.options.smoothSize){this.fireEvent("onActiveAfterFx",[a,b,e])}}}if(this.options.smoothSize){var c=b.getDimensions().height;if($chk(this.options.maxSize)&&this.options.maxSize<c){c=this.options.maxSize}if(!d){d={}}d.height=c}if($chk(this.now)){this.hideSection(this.now)}if(this.options.smoothSize&&this.lastHeight){g.height=this.lastHeight}b.setStyles(g);if(d){e.retrieve("tabFx").start(d).chain(function(){this.fireEvent("onActiveAfterFx",[a,b,e]);b.setStyle("height","auto")}.bind(this))}this.now=a;this.fireEvent("onActive",[a,b,e])}e.swapClass(this.options.deselectedClass,this.options.selectedClass);return this}});window.addEvent("domready",function(){var a=$("news_box");new TabSwapper({selectedClass:"selected",deselectedClass:"deselected",mouseoverClass:"over",mouseoutClass:"out",tabs:a.getElements(".box_headline"),clickers:a.getElements(".box_headline strong"),sections:[a.down(".news"),a.down(".medias")],cookieName:"selected_news_box_tab"}).setOptions({smooth:true})});function setSellList(b){var a=document.getElementById("_wlist");if(a!=null){if("[{$urlsign}]"=="&"){a.href=a.href+"&"+b.name+"="+b.value}else{a.href=a.href+"[{$urlsign}]"+b.name+"[{$urlsign}]"+b.value}}var a=document.getElementById("slist");if(a!=null){if("[{$urlsign}]"=="&"){a.href=a.href+"&"+b.name+"="+b.value}else{a.href=a.href+"[{$urlsign}]"+b.name+"[{$urlsign}]"+b.value}}};