// JavaScript Document
jQuery(function() {
  var in_transform = false;
  
  jQuery("#port_description li ul").each(function() { jQuery(this).find("li:first").addClass("first-child"); jQuery(this).find("li:last").addClass("last-child"); });
  
  jQuery("#port_menu a").click(function() {
    /*if(in_transform) {
    	return false;
    }
    in_transform = true;
    */

	
	

    if(jQuery(this).hasClass("selected")) {
      return false;
    }
    var link = this; // a href
    var c = jQuery("#port_menu li a").index(jQuery("#port_menu .selected")); // current selected items position
    var n = jQuery("#port_menu li a").index(jQuery(link)); // position in the list

    // var t = (c - n) * 150;
    var t = n * 150; // top
    var d = n * -600; // description
    var ttime = Math.abs((c - n)) * 250;
    
    // slide button down
    jQuery(".selected").removeClass("selected");
    jQuery(".slide_button").animate({
      top: t
    }, ttime, function() {
      // Animation complete.
      jQuery(link).addClass("selected");
    });
    
    jQuery("#port_description>ul").animate({
      top: d
    }, ttime, function() {
      // do nothing
      in_transform = false;
    });
    
    jQuery(".text_container > ul > li:visible").fadeOut('slow', function() {
		jQuery(".text_container > ul > li." + n + ":first").fadeIn();
    });
	jQuery(".image_container > ul > li:visible").fadeOut('slow', function() {
		jQuery(".image_container > ul > li." + n + ":first").fadeIn();
	});
	
	jQuery(".is").removeClass("is");
	jQuery("#port_description ul:first > li").eq(n).find("li:first").addClass("is");
    
    return false;
  });
  
  // case study movement
  jQuery(".case_nav a").click(function() {
	
    if(in_transform) {
    	return false;
    }
    in_transform = true;
    
	var p = jQuery(".port_item").index(jQuery(".is"));

	
	var p_length = jQuery(".port_item").length - 1;
	var p_new = 0;
	// var c = jQuery(".is").parent().parent()
	var is_first_last = false;
	
	if(jQuery(this).hasClass("right") == true) {
    	if(p + 1 <= p_length) {
    		p_new = p + 1;
    	}
    	else {
    		in_transform = false;
    		return false;
    	}
    }
    else {
    	if(p - 1 >= 0) {
    		p_new = p - 1;
    	}
    	else {
    		in_transform = false;
    		return false;
    	}
    }
    
	jQuery(".text_container > ul > li:visible").fadeOut('slow', function() {
		jQuery(".text_container > ul > li").eq(p_new).fadeIn();

    });
	jQuery(".image_container > ul > li:visible").fadeOut('slow', function() {
		jQuery(".image_container > ul > li").eq(p_new).fadeIn();
	});
	
	// Move side element if last or first item
	var c = jQuery("#port_menu li a").index(jQuery("#port_menu .selected")); // current selected items position
    var c_length = jQuery("#port_menu li a").length - 1;
    var n = -1;
    
	if(jQuery(".is").hasClass("first-child") && jQuery(this).hasClass("left")) {
		var n = c - 1;
	}
	if(jQuery(".is").hasClass("last-child") && jQuery(this).hasClass("right")) {
		var n = c + 1;
	}
	
	if(n >= 0) {
		var t = n * 150; // top
		var d = n * -600; // description    		
		var ttime = 250;
	    
	    jQuery(".selected").removeClass("selected");
	    jQuery(".slide_button").animate({
	      top: t
	    }, ttime, function() {
	      // Animation complete.
	      jQuery("#port_menu li a").eq(n).addClass("selected");
	    });
	    
	    jQuery("#port_description>ul").animate({
	      top: d
	    }, ttime, function() {
	      // do nothing
	      in_transform = false;
	    });
	}
	
	jQuery(".is").removeClass("is");
	jQuery(".port_item").eq(p_new).addClass("is");
	
	in_transform = false;
    
    return false;
    
    /*var c = jQuery("#port_menu li a").index(jQuery("#port_menu .selected")); // current selected items position
    var c_length = jQuery("#port_menu li a").length - 1;
    var n = 0;
    
    if(jQuery(this).hasClass("right") == true) {
    	if(c + 1 <= c_length) {
			var n = c + 1;
    	}
    	else {
			in_transform = false;
    		return false;
    	}
    }
    else {
    	if(c - 1 >= 0) {
    		var n = c - 1;
    	}
    	else {
    		in_transform = false;
    		return false;
    	}
    }
    
    jQuery(".text_container > ul > li:visible").fadeOut('slow', function() {
		jQuery(".text_container > ul > li").eq(n).fadeIn();
    });
	jQuery(".image_container > ul > li:visible").fadeOut('slow', function() {
		jQuery(".image_container > ul > li").eq(n).fadeIn();
	});
    

	var t = n * 150; // top
	var d = n * -600; // description    		
	var ttime = 250;
    
    jQuery(".selected").removeClass("selected");
    jQuery(".slide_button").animate({
      top: t
    }, ttime, function() {
      // Animation complete.
      jQuery("#port_menu li a").eq(n).addClass("selected");
    });
    
    jQuery("#port_description>ul").animate({
      top: d
    }, ttime, function() {
      // do nothing
      in_transform = false;
    }); */
  });
  
  jQuery(".port_item").click(function() {
  	if(in_transform) {
    	return false;
    }
    in_transform = true;

	jQuery("html, body").animate({ scrollTop: 260 }, "slow");
 
	/*jQuery(this).css('border','1px solid red');*/
    
    var c = jQuery(".port_item").index(jQuery(this));
    
    jQuery(".text_container > ul > li:visible").fadeOut('slow', function() {
		jQuery(".text_container > ul > li").eq(c).fadeIn();
    });
	jQuery(".image_container > ul > li:visible").fadeOut('slow', function() {
		jQuery(".image_container > ul > li").eq(c).fadeIn();
		in_transform = false;
	});
	
	jQuery(".is").removeClass("is");
	jQuery(".port_item").eq( c ).addClass("is");
    
    return false;
  });
  
  jQuery("#quick_controls li a").click(function() {
    var current = jQuery("#quick_controls li a.active").index("#quick_controls li a");
    var click = jQuery(this).index("#quick_controls li a");
    var mult = current - click;
    
    if(mult != 0) {
      return shiftCaseStudy(mult);
    }

    return false;
  });
  
  jQuery("#home-banner li").hover(function() {
    if(!isWide()) {
      jQuery(this).stop(true, true).animate({ marginTop: '6' }, 200, function() {});
      jQuery(this).find(".shadow").stop(true, true).fadeIn(200);
    }
  }, function() {
    if(!isWide()) {
      jQuery(this).stop(true, true).animate({ marginTop: '0' }, 200, function() {});
      jQuery(this).find(".shadow").stop(true, true).fadeOut(200);
    }
  });

  jQuery("#home-banner li a").click(function() {
    if(!isWide()) {
      var index = jQuery("#home-banner li a").index(this);
      var margin = index * -305 + 33;
      
      // hide link
      jQuery(this).hide();
      jQuery(this).parent().parent().find(".content_left").stop(true, true).animate({ width: '884' }, 800, function() { });
      jQuery(this).parent().parent().stop(true, true).animate({ marginTop: '0' }, 800, function() {});
      jQuery("#banner-mask ul").stop(true, true).animate({marginLeft: margin}, 800, function() {});
      jQuery(this).parent().parent().find(".small").stop(true, true).fadeOut();
      jQuery(this).parent().parent().find(".long").stop(true, true).fadeIn();
    }
    
    return false;
  });
  
  jQuery(".hide_link").click(function() {
    if(isWide()) {
      jQuery(".hide_link").parent().parent().parent().find("a").show();
      jQuery(this).parent().parent().parent().find(".content_left").stop(true, true).animate({ width: '273'}, 800, function() {});
      jQuery("#banner-mask ul").stop(true, true).animate({marginLeft: '33'}, 800, function() {});
      jQuery(this).parent().parent().parent().find(".small").stop(true, true).fadeIn();
      jQuery(this).parent().parent().parent().find(".long").stop(true, true).fadeOut();
    }
  });
  
  jQuery("#access ul > li").hover(function() {
    jQuery(this).find("ul:first").stop(true, true).fadeIn();
  }, function() {
    jQuery(this).find("ul:first").stop(true, true).fadeOut();
  });
  
  jQuery("#menu-item-3193 > a").click(function() {
  	return false;
  });
});

function shiftCaseStudy(mult) {
  
  var img = 322;
  var txt = 658;
  var mult = parseInt(mult);
  
  var img_l = parseInt(jQuery(".image_container .image").css("left")) + (img * mult);
  var txt_l = parseInt(jQuery(".text_container ul").css("left")) + (txt * mult);
  
  // check if is left most item
  if(img_l > 0 ) {
    return false;
  }
  // check if is right most item
  if(Math.abs(img_l) == parseInt(jQuery(".image_container .image").css("width"))) {
    return false;
  }
  
  jQuery(".image_container .image").animate({
    left: img_l
  }, 300, function() {});
  
  jQuery(".text_container ul").animate({
    left: txt_l
  }, 300, function() {});
  

  
  // position indi
  var nActive = jQuery("#quick_controls li a.active").index("#quick_controls li a") + (mult * -1);
  jQuery("#quick_controls li a.active").removeClass("active");
  jQuery("#quick_controls li a").eq(nActive).addClass("active");
  
  
  return false;
}

function isWide() {
  var i = 0;
  
  jQuery("#home-banner li").each(function() { 
    if(parseInt(jQuery(this).width()) > 304) {
      i++;
    }
  });
  
  if(i > 0)
    return true;
  else
    return false;
}
