var tooltip=function(){
	var id = 'tt';
	var top = 3;
	var left = 3;
	var maxw = 300;
	var speed = 10;
	var timer = 20;
	var endalpha = 95;
	var alpha = 0;
	var tt,t,c,b,h;
	var ie = document.all ? true : false;
	return{
		show:function(v,w){
			if(tt == null){
				tt = document.createElement('div');
				tt.setAttribute('id',id);
				t = document.createElement('div');
				t.setAttribute('id',id + 'top');
				c = document.createElement('div');
				c.setAttribute('id',id + 'cont');
				b = document.createElement('div');
				b.setAttribute('id',id + 'bot');
				tt.appendChild(t);
				tt.appendChild(c);
				tt.appendChild(b);
				document.body.appendChild(tt);
				tt.style.opacity = 0;
				tt.style.filter = 'alpha(opacity=0)';
				document.onmousemove = this.pos;
			}
			tt.style.display = 'block';
			c.innerHTML = v;
			tt.style.width = w ? w + 'px' : 'auto';
			if(!w && ie){
				t.style.display = 'none';
				b.style.display = 'none';
				tt.style.width = tt.offsetWidth;
				t.style.display = 'block';
				b.style.display = 'block';
			}
			if(tt.offsetWidth > maxw){tt.style.width = maxw + 'px'}
			h = parseInt(tt.offsetHeight) + top;
			clearInterval(tt.timer);
			tt.timer = setInterval(function(){tooltip.fade(1)},timer);
		},
		pos:function(e){
			var u = ie ? event.clientY + document.documentElement.scrollTop : e.pageY;
			var l = ie ? event.clientX + document.documentElement.scrollLeft : e.pageX;
			tt.style.top = (u - h) + 'px';
			tt.style.left = (l + left) + 'px';
		},
		fade:function(d){
			var a = alpha;
			if((a != endalpha && d == 1) || (a != 0 && d == -1)){
				var i = speed;
				if(endalpha - a < speed && d == 1){
					i = endalpha - a;
				}else if(alpha < speed && d == -1){
					i = a;
				}
				alpha = a + (i * d);
				tt.style.opacity = alpha * .01;
				tt.style.filter = 'alpha(opacity=' + alpha + ')';
			}else{
				clearInterval(tt.timer);
				if(d == -1){tt.style.display = 'none'}
			}
		},
		hide:function(){
			clearInterval(tt.timer);
			tt.timer = setInterval(function(){tooltip.fade(-1)},timer);
		}
	};
}();

function switchMenu(bid, link){
	link.blur();
	if(!$(link).hasClass('cur')){
		var el = document.getElementById(bid);
		$(el).siblings().hide();
		$(el).fadeIn();
		$(link).addClass('cur').siblings().removeClass('cur');
	}
}

function showSpecialProducts(sid, cnt_id, link){
	link.blur();
	var par = $(link);
	if(document.getElementById(sid).style.display != 'block'){
		//$(par).siblings('.act').addClass('lnk');
		$(par).siblings('.act').removeClass('act');
		$(par).addClass('act');
		//$(par).removeClass('lnk');
		$('#' + sid).show().siblings().hide();
	}
	
	/* check small switcher */
	var is_small = $(link).parent().hasClass('s_btn') || sid == 'top_sections_popular';
	if(is_small){
		var b = $('#small_switcher > div.s_btn');
		if(sid == 'top_sections_popular'){
			$(b[1]).removeClass('cur_btn');
			$(b[0]).addClass('cur_btn');
		}else{
			$(b[0]).removeClass('cur_btn');
			$(b[1]).addClass('cur_btn');
		}
	}
	
}

function toggleBlock(id, link, animate, t_class, animate_param, opened_text, closed_text, parent_index){
	if(!animate_param){
		animate_param = 'height';
	}
	
	var el = typeof(id) == 'object' ? id : $('#' + id);
	
	var res = 1;
	if(t_class){
		var par = link;
		if(parent_index){
			for(var i=0; i<parent_index; i++){
				par = $(par).parent();
			}			
		}
		$(par).toggleClass(t_class);
	}
	if($(el).css('display') == 'none'){

		if(animate){
			if(animate_param == 'height')
				$(el).animate({'height': 'show'}, 'fast');
			else
				$(el).animate({'width': 'show'}, 'fast');
		}else
			$(el).show();
		
		if(opened_text && link){
			link.innerHTML = opened_text;
		}
			
	}else{
		if(animate){
			if(animate_param == 'height')
				$(el).animate({'height': 'hide'}, 'fast');
			else
				$(el).animate({'width': 'hide'}, 'fast');
		}else
			$(el).hide();
			
		if(closed_text && link){
			link.innerHTML = closed_text;
		}
	}
	if(link)
		link.blur();
	return false;
}

function switchOrderTab(el){
	el.blur();
	var val = $(el).attr('value');
	$(el).parent().parent().addClass('cur').siblings().removeClass('cur');
	$('#extra_forms > div').hide();
	$('#form_' + val).show();
}
