/*--------------------------------------------------------------
# Musictube - February 2009 (for Joomla 1.5)
# Copyright (C) 2007-2009 Gavick.com. All Rights Reserved.
# License: Copyrighted Commercial Software
# Website: http://www.gavick.com
# Support: support@gavick.com  
---------------------------------------------------------------*/

window.addEvent("domready",function(){
	var $b = $(document.getElementsByTagName('body')[0]);
	if(Cookie.get('gk22_font')) $b.setStyle("font-size", Cookie.get('gk22_font'));
	else $b.setStyle("font-size", "62.5%");
	// smoothscroll init
	new SmoothScroll();
	// aniation classes - Fx.Height and Fx.Opacity
	Fx.Height = Fx.Style.extend({initialize: function(el, options){this.parent(el, 'height', options);this.element.setStyle('overflow', 'hidden');},toggle: function(){return (this.element.offsetHeight > 0) ? this.custom(this.element.offsetHeight, 0) : this.custom(0, this.element.scrollHeight);},show: function(){return this.set(this.element.scrollHeight);}});
	Fx.Opacity = Fx.Style.extend({initialize: function(el, options){this.now = 1;this.parent(el, 'opacity', options);},toggle: function(){return (this.now > 0) ? this.start(1, 0) : this.start(0, 1);},show: function(){return this.set(1);}});
	// font size switcher
	if($('font_minus_btn')){
		// reset font size
		$('font_reset_btn').addEvent("click", function(){
			$b.setStyle("font-size", "62.5%");	
			new Cookie.set('gk22_font',"62.5%",{duration: 200,path: "/"});
		});
		// increase font size
		$('font_plus_btn').addEvent("click", function(){
			if($b.getStyle("font-size").toFloat() < 75){
				$b.setStyle("font-size", $b.getStyle("font-size").toFloat() + 2.5 + "%");
				new Cookie.set('gk22_font',$b.getStyle("font-size").toFloat() + 2.5 + "%",{duration: 200,path: "/"});
			}
		});
		// decrease font size
		$('font_minus_btn').addEvent("click", function(){
			if($b.getStyle("font-size").toFloat() > 50){
				$b.setStyle("font-size", $b.getStyle("font-size").toFloat() - 2.5 + "%");
				new Cookie.set('gk22_font',$b.getStyle("font-size").toFloat() - 2.5 + "%",{duration: 200,path: "/"});
			}
		});
	}
	// login slide
	if($('login_btn')){
		var opened = true;
$('userarea').setStyle("display","block");
var ef = new Fx.Height('wrapper_userarea', {duration: 300, wait: true});
		$('login_btn').addEvent("click", function(){
			ef.toggle();
			$('login_btn').innerHTML = "<span>" + ((opened) ? $GKGlobal["open"] : $GKGlobal["close"]) + "</span>";
			opened = !opened; 
		});
	}	
	// blockfix for IE7
	if(window.ie){
		// advert_wrap
		if($E('.advert_wrap')){
			if($ES('div[class^=us_width]', $E('.advert_wrap')).length > 0){
				var max = 0;
				$ES('div[class^=us_width]', $E('.advert_wrap')).each(function(el){ if(el.getSize().size.y > max) max = el.getSize().size.y; });	
				$ES('div[class^=us_width]', $E('.advert_wrap')).each(function(el){ el.setStyle("height", max+"px"); });	
			}
		}
		// users_wrap I
		if($ES('.users_wrap')[0]){
			if($ES('div[class^=us_width]', $ES('.users_wrap')[0]).length > 0){
				var max = 0;
				$ES('div[class^=us_width]', $ES('.users_wrap')[0]).each(function(el){ if(el.getSize().size.y > max) max = el.getSize().size.y; });	
				$ES('div[class^=us_width]', $ES('.users_wrap')[0]).each(function(el){ el.setStyle("height", max+"px"); });	
			}		
		}
		// users_wrap II
		if($ES('.users_wrap')[1]){
			if($ES('div[class^=us_width]', $ES('.users_wrap')[1]).length > 0){
				var max = 0;
				$ES('div[class^=us_width]', $ES('.users_wrap')[1]).each(function(el){ if(el.getSize().size.y > max) max = el.getSize().size.y; });	
				$ES('div[class^=us_width]', $ES('.users_wrap')[1]).each(function(el){ el.setStyle("height", max+"px"); });	
			}			
		}
		// bottom
		if($('wrapper_bottom')){
			if($ES('div[class^=us_width]', $('wrapper_bottom')).length > 0){
				var max = 0;
				$ES('div[class^=us_width]', $('wrapper_bottom')).each(function(el){ if(el.getSize().size.y > max) max = el.getSize().size.y; });	
				$ES('div[class^=us_width]', $('wrapper_bottom')).each(function(el){ el.setStyle("height", max+"px"); });	
			}			
		}
	}
	// Modules interface
	if($ES('span.interface').length){
		//
	 	$GKGlobal["column_slide"] = new Hash.Cookie('gk23_cols', {duration: 1000000, path: '/'});
;
		//
		$ES('span.interface').each(function(el, i){
			// sliders
			var slider = new Fx.Slide($E('.moduletable_content', el.getParent().getParent()),{duration: 350, wait: true});
			var elm = $ES('span', el)[2];
			//
			if($GKGlobal["column_slide"].get(el.getParent().getParent().getProperty("id")) == 0){
				slider.toggle();
				elm.setProperty("class", (elm.getProperty("class") == "rolldown") ? "rollup" : "rolldown");
				slider.wrapper.getParent().setStyle("border-bottom", "1px solid " + ((elm.getProperty("class") == "rollup") ? "#e8e8e8" : "#f9f9f9"));
			}
			//
			elm.addEvent("click", function(){
				slider.toggle();
				elm.setProperty("class", (elm.getProperty("class") == "rolldown") ? "rollup" : "rolldown");
				$GKGlobal["column_slide"].set(el.getParent().getParent().getProperty("id"),(elm.getProperty("class") == "rolldown") ? '0' : '1');
				slider.wrapper.getParent().setStyle("border-bottom", "1px solid " + ((elm.getProperty("class") == "rollup") ? "#e8e8e8" : "#f9f9f9"));
			});
			// ordering
			$GKGlobal["column_order"] += el.getParent().getParent().getProperty("id")+',';
			//
			var elm_up = $ES('span', el)[1];
			elm_up.addEvent("click", function(){				
				if(el.getParent().getParent().getPrevious() && el.getParent().getParent().getPrevious().getProperty('id')){
					el.getParent().getParent().injectBefore(el.getParent().getParent().getPrevious());
					$GKGlobal["column_order"] = '';
					$ES('span.interface').each(function(elmts, i){
						$GKGlobal["column_order"] += elmts.getParent().getParent().getProperty("id")+',';
					});
					Cookie.set('gk23_colo', $GKGlobal["column_order"], {duration: 1000000, path: '/'});
				}
			});
			//
			var elm_down = $ES('span', el)[0];
			elm_down.addEvent("click", function(){
				if(el.getParent().getParent().getNext() && el.getParent().getParent().getNext().getProperty('id')){
					el.getParent().getParent().injectAfter(el.getParent().getParent().getNext());
					$GKGlobal["column_order"] = '';
					$ES('span.interface').each(function(elmts, i){
						$GKGlobal["column_order"] += elmts.getParent().getParent().getProperty("id")+',';
					});
					Cookie.set('gk23_colo', $GKGlobal["column_order"], {duration: 1000000, path: '/'});
				}				
			});
		});
		//
		Cookie.set('gk23_colo', $GKGlobal["column_order"], {duration: 1000000, path: '/'});
	}
	//
	if($('stylearea')){
		$A($$('.style_switcher')).each(function(element,index){
			element.addEvent('click',function(event){
				var event = new Event(event);
				event.preventDefault();
				changeStyle(index+1);
			});
		});
		new SmoothScroll();
	}
});
// Function to change backgrouns
function changeStyle(style){
	var file = $template_path+'/css/style'+style+'.css';
	new Asset.css(file);
	new Cookie.set('gk23_style',style,{duration: 200,path: "/"});
}
