/* --- survey --- */

var survey_submitted = false;

function survey_iframe_onload(target_url)
{
	if (survey_submitted) {
		document.location = target_url;
	}
}

function survey_form_submit()
{
	survey_submitted = true;
	
	return true;
}

function menu_to_html(menu)
{
	ret = "<ul>\n";
	for(i=0;i<menu.length;i++) {
		ret+= "<li><a href=\""+menu[i].url+"\" onclick=\""+menu[i].onclick+"\">"+menu[i].name+"</a><li>\n";
	}
	ret+= "</ul>\n";
	return ret;
}

function setup_services()
{
	var currentPosition = 0;
	var slideWidth = 303;
	var slides = $('.service-item');
	var numberOfSlides = slides.length;
	var increases = 3;
	var animationComplete = true;

	 $('#service-items-wrapper').css('overflow', 'hidden')
	 	.children().wrapAll('<div id="slideInner" style="width:2000px;"></div>')

	 // Create event listeners for .controls clicks
	$('.prev,.next')
	.bind(
		'click',
		function() {
			if (!animationComplete) {
				return false;
			}
			
			// Determine new position
			currentPosition = ($(this).attr('class') == 'next') ? currentPosition + increases
					: currentPosition - increases;
			
			if (currentPosition < 0) {
				currentPosition = 0;
			}
			
			if (currentPosition > (numberOfSlides - 3)) {
				currentPosition = (numberOfSlides - 3);
			}
			
			animationComplete = false;
			
			// Move slideInner using margin-left
			$('#slideInner').animate(
			{
				'marginLeft' : slideWidth * (-currentPosition)
			},
				1000,
				function() {
					// animation complete
					animationComplete = true;
					
					if (currentPosition == 0) {
						$("a.prev img").attr("src", "images/prev_inactive.gif");
					}
					else {
						$("a.prev img").attr("src", "images/prev.gif");
					}
					
					if (currentPosition == (numberOfSlides - 3)) {
						$("a.next img").attr("src", "images/next_inactive.gif");
					}
					else {
						$("a.next img").attr("src", "images/next.gif");
					}
				}
			);
			
			return false;
	});
}

function setup_visual()
{
	$("#slideholder").children().css({margin: "9px 0px 0px 0px", width: "630px", height: "313px", position: "absolute"});
	$("#slideholder, #visual-mask").css({position: "absolute"});
	$("#visual").css({background: "none"});
	
	$("#slideholder").cycle({ 
	    fx:     'fade', 
	    speed:  'slow', 
	    timeout: 5000, 
	    pager:  '#pagination' ,
	    containerResize : 0,
	    pause: true
	});
	
	$("#imageholder").click(function() {
		href = $("#slideholder > div:visible > h3 > a").attr("href");
		if (href) {
			document.location = href;
		}
		return false;
	});
}

var visual_visible = false;

function fade_in_visual()
{
	if (visual_visible) return;
	
	if ($.browser.msie) {
		$('#visual, #visual #visual-mask').css('visibility','visible');
	}
	else {
		$('#visual, #visual #visual-mask').css('visibility','visible').hide().fadeIn('slow');
	}
	
	visual_visible = true;
}

function setup_tipsy_forms()
{
	$("form span.error").each(function() {
		$(this).hide();
		$(this).parents("dl:eq(0)").find("dd").find("input,textarea,select")
			.tipsy({fallback: $(this).html(), trigger: "manual", gravity: "w"})
			.tipsy("show");
	});
}

function setup_image_alignment()
{
	$(".content-column img").each(function() {
		switch ($(this).css("float")) {
			case "left":
				$(this).addClass("left");
				break;
			case "right":
				$(this).addClass("right");
				break;
		}
	})
}

$(document).ready(function() {
	setup_services();
	setup_visual();
	setup_tipsy_forms();
	setup_image_alignment();
	
	setTimeout("fade_in_visual()", 750);
});

$(window).load(function() {
	fade_in_visual();
});
