/*
* Tuotesivun kuvakkeiden linkkianimaatio
*/
var thumb_timeout    = 200;
var thumb_closetimer = new Object;
var thumb_menuitem   = new Object;

function thumb_open() {
  thumb_canceltimer($(this));
  thumb_menuitem[$(this).attr('id')] = true;
  $(this).children('.thmbHighlight:hidden').slideDown("medium");
}

function thumb_timer() {
  thumb_closetimer[$(this).attr('id')] = window.setTimeout(thumb_close, timeout, $(this));
}

function thumb_close(obj) {
	// $('#ainuFooter span').append(' '+$(obj).attr('id'));
	if(obj) obj.children('.thmbHighlight:visible').slideUp("medium");
	//  thumb_menuitem[obj.attr('id')] = false;	
}

function thumb_canceltimer(obj) {
  if(thumb_closetimer[obj.attr('id')]) {
  	window.clearTimeout(thumb_closetimer[obj.attr('id')]);
  	thumb_closetimer[obj.attr('id')] = null;
  }
}

/*
* Tuoteryhmänavi
*/
var handle_offset		 	= 0;
var arrow_offset 			= 0;
var arrow_topset 			= 0;
var arrow_init_height = 0;
var slider_launched 	= new Array();
var is_dragging 			= false;
var currentPos				= 0;
var product_group_pos	= new Array();
var age_group_pos			= new Array();
var cur_mode 					= "cat";
var last_cat					= 0;
var last_age					= 0;
var my_height					= 0;


function changeBrowse(callee, mode) {
	$(callee).blur();
	if(mode == "age") {
		if(last_age == 0) last_age = $("a#reel_0");
		cur_mode = "age";
		$(".reel_ctrlCat").hide();
		$(".reel_ctrlAge").show();
		$("#reel_selaa #ikajaottelu").addClass("btnActive");
		$("#reel_selaa #tuoteryhma").removeClass("btnActive");
		$("#blueReel_Arrow").addClass("reelArr");
		$("#blueReel_Arrow").removeClass("reelArr_top");
		$("#prdScroll").addClass("prdScroll");
		$("#prdScroll").removeClass("prdScroll_cat");
		$("#blueReel_Arrow").css('height', '0');
		$(last_age).click();
  	slider_launched[11] = true;
  	if(!product_group_pos[11]) {
	  	product_group_pos[11] = $('a#reel_0').offset().left + ($('a#reel_0').width() / 2);
			product_group_pos[12] = $('a#reel_0-4kk').offset().left + ($('a#reel_0-4kk').width() / 2);
			product_group_pos[13] = $('a#reel_5-12kk').offset().left + ($('a#reel_5-12kk').width() / 2);
			product_group_pos[14] = $('a#reel_1-2v').offset().left + ($('a#reel_1-2v').width() / 2);
			product_group_pos[15] = $('a#reel_2-4v').offset().left + ($('a#reel_2-4v').width() / 2);
  	}
	}
	else if(mode == "cat") {
		cur_mode = "cat";
		$(".reel_ctrlAge").hide();
		$(".reel_ctrlCat").show();
		$("#reel_selaa #tuoteryhma").addClass("btnActive");
		$("#reel_selaa #ikajaottelu").removeClass("btnActive");
		$("#blueReel_Arrow").addClass("reelArr_top");
		$("#blueReel_Arrow").removeClass("reelArr");
		$("#prdScroll").addClass("prdScroll_cat");
		$("#prdScroll").removeClass("prdScroll");
		$("#blueReel_Arrow").css('height', '0');
		$(last_cat).click();
  	slider_launched[0] = true;
	}
}

function showProdGroup(callee, my_class, my_group_url, targets) {
    if (typeof targets == 'undefined' ) targets = new Array();
    
	$(callee).blur();
	if(cur_mode == "cat") last_cat = callee;
	else last_age = callee;
	
	$("div.reelThmb").hide();
	var my_selector = ".reelThmb."+my_class;
    if (targets.length > 0 && targets[0] != "") {
        var targetArray = new Array();
        for (i = 0; i < targets.length; i++) {
            targetArray[i] = $(targets[i]).remove();
        }
        $(targetArray).appendTo("#reelThumbs");

        $(targets.join(", "))
            .each(function(i) {
                var current_img = $(this).find('.reelthmbImg img');
                if (typeof current_img.attr('src') == 'undefined' || current_img.attr('src').length == 0) {
                    current_img
                        .hide()
                        .load(function() {
                            $(this).fadeIn();
                        })
                        .attr('src', current_img.attr('name'));
                }
                else {
                   current_img.fadeIn(); 
                }
                //this.style.display = "block";
                $(this).fadeIn();
                if(i+1 == 7) return false;
            });
    }
    else {
        $(my_selector)
            .each(function(i) {
                var current_img = $(this).find('.reelthmbImg img');
                if (typeof current_img.attr('src') == 'undefined' || current_img.attr('src').length == 0) {
                    current_img
                        .hide()
                        .load(function() {
                            $(this).fadeIn();
                        })
                        .attr('src', current_img.attr('name'));
                }
                else {
                   current_img.fadeIn(); 
                }
                //this.style.display = "block";
                $(this).fadeIn();
                if(i+1 == 7) return false;
            });
    }
  $("#prodSum").html($(my_selector).length);
  $("a#groupLink").attr('href', my_group_url);
  
  handle_offset = $(callee).offset().left + ($(callee).width() / 2) - $("#scrollHandle_blue").parent().offset().left - ($("#scrollHandle_blue").width() / 2) - 1 +"px";
  arrow_offset 	= $(callee).offset().left + ($(callee).width() / 2) - $("#blueReel_Arrow").parent().offset().left - ($("#blueReel_Arrow").width() / 2) - 1 +"px !important";
  if(cur_mode == "cat" && $(callee).offset().top > $("#scrollHandle_blue").parent().offset().top) {
  	arrow_topset = 45;
  }
  else {
  	arrow_topset = 0;
  }
  
  if(!is_dragging) {
  	$("#scrollHandle_blue").animate({left: handle_offset}, 500, "swing");
  }
  $("#blueReel_Arrow").stop();
  $("#blueReel_Arrow").animate({height: 0}, 250, "swing", arrowIn);
  // $("#blueReel_Arrow").slideUp(250, arrowIn);
}

function arrowIn() {
	// alert(arrow_offset);
	if (cur_mode == "cat") {
		$("#blueReel_Arrow").css('cssText', 'left:'+arrow_offset+'; top:'+ (11 + arrow_topset) + 'px;');
		my_height = arrow_init_height - arrow_topset + 'px';
	}
	else {
		$("#blueReel_Arrow").css('cssText', 'left:'+arrow_offset+'; top:0;');
		my_height = arrow_init_height - 55 + 'px';
	}
  $("#blueReel_Arrow").animate({height: my_height}, 250, "swing");
  // $("#blueReel_Arrow").slideDown(500);
}

function startDrag() {
	is_dragging = true;
}

function stopDrag() {
	is_dragging = false;
	$("#scrollHandle_blue").animate({left: handle_offset}, 500, "swing");
}

function followDrag() {
	currentPos = $("#scrollHandle_blue").offset().left + ($("#scrollHandle_blue").width() / 2);
	if(cur_mode == "cat") {
		if(currentPos > product_group_pos[0] - 30 && currentPos < product_group_pos[0] + 30 && !slider_launched[0]) {
				slider_launched 	= new Array();
				slider_launched[0] = true;
				$('a#reel_aitituotteet').click();
		}
		else if(currentPos > product_group_pos[1] - 30 && currentPos < product_group_pos[1] + 30 && !slider_launched[1]) {
				slider_launched 	= new Array();
				slider_launched[1] = true;
				$('a#reel_huvitutit').click();
		}
		else if(currentPos > product_group_pos[2] - 30 && currentPos < product_group_pos[2] + 30 && !slider_launched[2]) {
				slider_launched 	= new Array();
				slider_launched[2] = true;
				$('a#reel_tuttipullot').click();
		}
		else if(currentPos > product_group_pos[3] - 30 && currentPos < product_group_pos[3] + 30 && !slider_launched[3]) {
				slider_launched 	= new Array();
				slider_launched[3] = true;
				$('a#reel_pullotutit').click();
		}
		else if(currentPos > product_group_pos[4] - 30 && currentPos < product_group_pos[4] + 30 && !slider_launched[4]) {
				slider_launched 	= new Array();
				slider_launched[4] = true;
				$('a#reel_ruokailu').click();
		}
		else if(currentPos > product_group_pos[5] - 30 && currentPos < product_group_pos[5] + 30 && !slider_launched[5]) {
				slider_launched 	= new Array();
				slider_launched[5] = true;
				$('a#reel_purulelut').click();
		}
		else if(currentPos > product_group_pos[6] - 30 && currentPos < product_group_pos[6] + 30 && !slider_launched[6]) {
				slider_launched 	= new Array();
				slider_launched[6] = true;
				$('a#reel_ihonhoito').click();
		}
		else if(currentPos > product_group_pos[7] - 30 && currentPos < product_group_pos[7] + 30 && !slider_launched[7]) {
				slider_launched 	= new Array();
				slider_launched[7] = true;
				$('a#reel_lelut').click();
		}
		else if(currentPos > product_group_pos[8] - 30 && currentPos < product_group_pos[8] + 30 && !slider_launched[8]) {
				slider_launched 	= new Array();
				slider_launched[8] = true;
				$('a#reel_vaunu').click();
		}
		else if(currentPos > product_group_pos[9] - 30 && currentPos < product_group_pos[9] + 30 && !slider_launched[9]) {
				slider_launched 	= new Array();
				slider_launched[9] = true;
				$('a#reel_kylpyhuone').click();
		}
		else if(currentPos > product_group_pos[10] - 30 && currentPos < product_group_pos[10] + 30 && !slider_launched[10]) {
				slider_launched 	= new Array();
				slider_launched[10] = true;
				$('a#reel_rintareput').click();
		}
	}
	else {
		if(currentPos > product_group_pos[11] - 80 && currentPos < product_group_pos[11] + 80 && !slider_launched[11]) {
				slider_launched 	= new Array();
				slider_launched[11] = true;
				$('a#reel_0').click();
		}
		else if(currentPos > product_group_pos[12] - 80 && currentPos < product_group_pos[12] + 80 && !slider_launched[12]) {
				slider_launched 	= new Array();
				slider_launched[12] = true;
				$('a#reel_0-4kk').click();
		}
		else if(currentPos > product_group_pos[13] - 80 && currentPos < product_group_pos[13] + 80 && !slider_launched[13]) {
				slider_launched 	= new Array();
				slider_launched[13] = true;
				$('a#reel_5-12kk').click();
		}
		else if(currentPos > product_group_pos[14] - 80 && currentPos < product_group_pos[14] + 80 && !slider_launched[14]) {
				slider_launched 	= new Array();
				slider_launched[14] = true;
				$('a#reel_1-2v').click();
		}
		else if(currentPos > product_group_pos[15] - 80 && currentPos < product_group_pos[15] + 80 && !slider_launched[15]) {
				slider_launched 	= new Array();
				slider_launched[15] = true;
				$('a#reel_2-4v').click();
		}	
	}
}

/*
* INIT
*/
$(document).ready(function () {
  $(".reelThmb").bind('mouseover', thumb_open);
  $(".reelThmb").bind('mouseout', thumb_timer);
  /**
  $(".reelThmb").attr("id", function (arr) {
          return "div-id" + arr;
        });
    **/
	
	product_group_pos[0] = $('a#reel_aitituotteet').offset().left + ($('a#reel_aitituotteet').width() / 2);
	product_group_pos[1] = $('a#reel_huvitutit').offset().left + ($('a#reel_huvitutit').width() / 2);
	product_group_pos[2] = $('a#reel_tuttipullot').offset().left + ($('a#reel_tuttipullot').width() / 2);
	product_group_pos[3] = $('a#reel_pullotutit').offset().left + ($('a#reel_pullotutit').width() / 2);
	product_group_pos[4] = $('a#reel_ruokailu').offset().left + ($('a#reel_ruokailu').width() / 2);
	product_group_pos[5] = $('a#reel_purulelut').offset().left + ($('a#reel_purulelut').width() / 2);
	product_group_pos[6] = $('a#reel_ihonhoito').offset().left + ($('a#reel_ihonhoito').width() / 2);
	product_group_pos[7] = $('a#reel_lelut').offset().left + ($('a#reel_lelut').width() / 2);
	product_group_pos[8] = $('a#reel_vaunu').offset().left + ($('a#reel_vaunu').width() / 2);
	product_group_pos[9] = $('a#reel_kylpyhuone').offset().left + ($('a#reel_kylpyhuone').width() / 2);
	product_group_pos[10] = $('a#reel_rintareput').offset().left + ($('a#reel_rintareput').width() / 2);
	
	$("#scrollHandle_blue").draggable({ axis: 'x', containment: 'parent', start: startDrag, drag: followDrag, stop: stopDrag});
	
	arrow_init_height = 175;
	
  if(jQuery.support.leadingWhitespace) { // false if IE 6 - 8
	  $('a#reel_aitituotteet').click();
	  slider_launched[0] = true;
	}
	else {
		window.setTimeout(function() {
			$('a#reel_aitituotteet').click();
	  	slider_launched[0] = true;
		}, 500);
	}
});
