var TerraTec = {};
	TerraTec.ExtendedVersion = function() {
		/*$('Left').getElementsByClassName('menu').each(
			function(m) {
				m.childElements().each(
					function (ul){
						if(ul.tagName == "UL") {
							ul.childElements().each(
								function(l) {
									try {
										if(l.getElementsByTagName('ul').length > 0) {
											l.firstDescendant().observe("mouseover",function(e) { TerraTec.Accordion.swap(e); });
											l.firstDescendant().observe("mouseout",function(e) { TerraTec.Accordion.cancel(); });
										}
									} catch(e) {}
								}
							);
						}
					}
				);
			}
		);*/

		if(navigator.appName.indexOf("Microsoft") != -1) {
			TerraTec.Teaser.enabled = (window['ProductSWF'] !== undefined);
		} else {
			TerraTec.Teaser.enabled = (document['ProductSWF'] !== undefined);
		}

		if(!$('Teaser')) {
			//$('Buttons').addClassName('disabled');
		} else {
			$A($('Buttons').getElementsByTagName('a')).each(
				function(c,i) {
					Event.observe(c,"mouseover",function(e) { TerraTec.Products.over(e); });
					Event.observe(c,"mouseout",function(e) { TerraTec.Products.out(e); });
				}
			);

			Event.observe(window['ProductSWF'],"mouseout",function(e) { TerraTec.Products.out(e); });
		}
	};
	TerraTec.Teaser = {
		enabled : null
	};
	TerraTec.Products = {
		teased : function(t) { 
		//	alert(t); 
		/*
		The actual id of the item will be given in t.
		For Example: Blend out a div with the same id!!!  
		*/
		},
		set : function(c) {
			['tv','home-entertainment','sound','video','accessories','mac'].each(
				function(i) {
					$('Buttons').removeClassName(i);
				}
			);
			if(['tv','home-entertainment','sound','video','accessories','mac'].indexOf(c) > -1) {
				$('Buttons').addClassName(c);
			}
			TerraTec.Products.event(c);
		},
		event : function(e) {
			(navigator.appName.indexOf("Microsoft") != -1) ?
				window['ProductSWF'].show(e):
				document['ProductSWF'].show(e);

		},
		over : function(e) {
			var element = Event.element(e);

			TerraTec.Products.set(element.className);
			if(TerraTec.Teaser.enabled) {
				TerraTec.Products.event(element.className);
			}
		},
		out : function(e) {
			if(e.clientY > 190 && Event.element(e).tagName == "A") {
				return;
			} else if(e.clientY < 150) {
				TerraTec.Products.set('custom');
				if(TerraTec.Teaser.enabled) {
					TerraTec.Products.event('custom');
				}


			} else {
				if(Event.element(e).hasClassName("tv") && e.clientX < 400) {
					TerraTec.Products.set('custom');
					if(TerraTec.Teaser.enabled) {
						TerraTec.Products.event('custom');
					}
				}
				if(Event.element(e).hasClassName("mac") && e.clientX > 1000) {
					TerraTec.Products.set('custom');
					if(TerraTec.Teaser.enabled) {
						TerraTec.Products.event('custom');
					}
				}
			}
		}
	};
	TerraTec.Accordion = {
		delay : { element: null, timer: null},
		swap : function(e) {
			Event.element(e).blur();
			if(!Event.element(e).parentNode.hasClassName("sub")) {
				TerraTec.Accordion.element = Event.element(e);
				TerraTec.Accordion.delay = new PeriodicalExecuter(function(p) {
					TerraTec.Accordion.open(TerraTec.Accordion.element);
					p.stop();
				},0.5);
			}
		},
		open : function(e) {
			e.parentNode.parentNode.childElements().each(
				function(l) {
					if(l.hasClassName("sub")) {
						TerraTec.Accordion.close(l.firstDescendant());
					} else if(l.hasClassName("active")) {
						l.firstDescendant().parentNode.removeClassName("active");
					}
				}
			);
			e.parentNode.addClassName("sub").addClassName("active");
			new Effect.SlideDown(e.parentNode.getElementsByTagName('div')[0],{duration:0.75});
			TerraTec.Accordion.delay.stop();
		},
		cancel : function() {
			try{
				TerraTec.Accordion.delay.timer.stop();
			} catch(e) {}
		},
		close : function(e) {
			e.parentNode.removeClassName("active");
			new Effect.SlideUp(e.parentNode.getElementsByTagName('div')[0],
				{
					duration:0.75,
					scaleContent:false,
					afterFinish:function(obj) {
						obj.element.parentNode.removeClassName("sub");
					}
				});
		}
	};

Event.observe(window,'load',function() { TerraTec.ExtendedVersion(); });


/**
* Functions slides Down the given id if not visible and slides up is visible
*/
function showthis(name) {					
	
	if (document.getElementById(name).style.display != 'none') {						
		$(name).hide();
	} else {
		$(name).show();
	}
}
