$(document).ready(function() {
	// management and board overlay
	$("a[rel]").overlay({
		fixed:true,
		top: 'center',
		left: '380px'
		//left: 'center'

	});
	
	// blink fields
	$('.field, textarea').focus(function() {
        if(this.title==this.value) {
            this.value = '';
        }
    }).blur(function(){
        if(this.value=='') {
            this.value = this.title;
        }
    });



	

    // power button
    function animate_power_button(){
    	$('.power-button span').css({'-ms-filter':'"progid:DXImageTransform.Microsoft.Alpha(Opacity=10)"','filter':'alpha(opacity=10)'}).fadeOut(200, function(){
    		$('.power-button span').css({'-ms-filter':'"progid:DXImageTransform.Microsoft.Alpha(Opacity=10)"','filter':'alpha(opacity=10)'}).fadeIn(600, function(){
    			animate_power_button();
    		});
    	});
    }
    animate_power_button();

	// innovation logo slider	
    $('ul.logos-slider').jcarousel({
    	scroll:1,
    	vertical: true,
    	wrap: 'circular',
		buttonNextHTML: null,
		buttonPrevHTML: null,
    	initCallback: function(carousel){
			$('.logos-arrows .down').click(function() {
				carousel.next();
				return false;
			});

			$('.logos-arrows .up').click(function() {
				carousel.prev();
				return false;
			});
    	}
    });


	// awards text slider	
    $('ul.awards-slider').jcarousel({
    	scroll:1,
    	vertical: true,
    	wrap: 'circular',
		buttonNextHTML: null,
		buttonPrevHTML: null,
    	initCallback: function(carousel){
			$('.awards-arrows .down').click(function() {
				carousel.next();
				return false;
			});

			$('.awards-arrows .up').click(function() {
				carousel.prev();
				return false;
			});
    	}
    });
	
	
    // center arrow/dot navigation
    function center_main_navigation(){
    	var main_nav = $('#main-navigation, .section-nav');
    	var top = ($(window).height() - main_nav.height())/2;
    	if( top < 0 ) top = 0;
    	main_nav.css('top', top).attr('data-top', top);
    }
    center_main_navigation();
    $(window).resize(center_main_navigation);


    // side panel
    var side_panel = $('#side-panel');
    var side_panel_toggle = $('#side-panel .toggle');
    var left_hidden = side_panel.outerWidth();

    // animate side panel
    $(window).load(function(){
	    side_panel.animate({ 'left': -1*(left_hidden+30)}, 800, 'easeInOutExpo', function(){
	    	side_panel.animate({ 'left': -1*left_hidden}, 500, 'easeInOutExpo');
	    });	
    });
    
    // toggle side panel
    side_panel.find('.toggle').click(function(){
    	if( is_side_panel_open ) {
    		show_side_panel();
    		is_side_panel_open = false;
    	}else {
    		hide_side_panel();
    		is_side_panel_open = true;
    	}
    	return false;
    });	



    function show_side_panel(){
    	side_panel.stop().animate({'left' : -1*left_hidden}, 800, 'easeInOutExpo');
		side_panel_toggle.removeClass('hide');
    }

    function hide_side_panel(){
		side_panel.stop().animate({'left' : 0}, 600, 'easeInOutExpo');
		side_panel_toggle.addClass('hide');
    }
	
	$('.sloganJoinUs').click(function() {
    	if( side_panel_toggle.hasClass('hide') ) {
    		show_side_panel();  	
	  	}else {
   				window.open('/','_blank');
    	}
    	return false;
	});
		
    
    // move side panel toggle
    function move_side_panel_toggle(){
    	var offset_top = 75;
    	var end_top = 480;

    	var scroll_t = $(window).scrollTop();
    	var body_h = $('body').outerHeight();
    	var percent_moved = scroll_t/body_h*100;

    	var top = percent_moved * (end_top-offset_top) / 100;
    	side_panel.find('.toggle').css('top', top+offset_top);
    }
    move_side_panel_toggle();
    $(window).scroll( move_side_panel_toggle );
    $(window).resize( move_side_panel_toggle );

    // init scrolling
    scrollable('.pageslide');


}); //end document ready


	var is_side_panel_open = false;
	var scrollable = function( main_selector ) {
	var main_slides = $(main_selector);
	var slide_height = main_slides.eq(0).outerHeight();
	var inner_slide_selector = '.inner-slide';
	var content_selector = '.pagecontent';
	var scroll = ($.browser.mozilla || $.browser.msie) ? $('html') : $('body');
	var is_mobile = navigator.userAgent.indexOf('iPhone') != -1 || navigator.userAgent.indexOf('iPod') != -1 || navigator.userAgent.indexOf('iPad') != -1;

	if ( main_slides.length == 0 ) {
		return;
	}

	if ( is_mobile ) {
		main_slides.css('background-attachment', 'scroll');
		$(inner_slide_selector).css('background-attachment', 'scroll');
		$('#main-navigation').hide();
	}

	var slide_offset = 0;
	var current_index = 0;

	function move_background() {
		var scroll_top = $(window).scrollTop();
		var win_h = $(window).height();

		main_slides.each(function(){
			if( $(this).offset().top >= scroll_top ){
				current_index = $(this).parent().find( main_selector ).index(this);
				return false;
			}
		});

		set_background_position( main_slides.eq(current_index-1) );
		set_background_position( main_slides.eq(current_index) );

		set_active_page( current_index-1 );
	}

	function set_background_position( element ) {
		if( is_mobile ) 
			return;

		if( element.attr('id') == 'join-us' || element.attr('id') == 'home' ) 
			return;

		var element_top = element.offset().top;
		var speed = 0.2;

		element.css('background-position', 'center ' + get_top_position(element_top, speed) + 'px');

		// inner backgrounds
		var i=2;
		element.find(inner_slide_selector).each(function(){
			var this_top = $(this).offset().top;
			var default_speed = 0.2*i;
			var speed = typeof( $(this).attr('data-speed') ) != 'undefined' ? parseFloat($(this).attr('data-speed')) : default_speed;

			$(this).css('background-position', 'center ' + get_top_position(element_top, speed) + 'px');
			i++;
		});
	};

	function get_top_position( element_top, speed ){
		var dtop = $(window).height() + $(window).scrollTop() - element_top + slide_offset;
		var offset_cof = slide_offset - (($(window).height() + slide_offset) - 100) * speed;
		var bg_top = -1 * (dtop - 100) * speed - offset_cof;
		return bg_top;
	};

	function get_slide_offset(){
		if( $(window).height() < slide_height ) {
			slide_offset = (slide_height - $(window).height()) / 2
		}else {
			slide_offset = 0;
		}
		$(window).scroll();
	};

	function goto_slide( id ) {
		var slide = $('#' + id);
		var slide_top = slide.offset().top;
		slide.find('.icons span').hide();
		var top = slide_top+slide_offset;
		var top = slide_top;
		scroll.animate({ 'scrollTop': top }, 1700, 'easeInOutExpo', function(){
		});

		window.setTimeout(function(){
			var i=0;
			slide.find('.icons span').each(function(){
				var span = $(this);
				var time = 200*i;
				window.setTimeout(function(){
					span.css({'-ms-filter':'"progid:DXImageTransform.Microsoft.Alpha(Opacity=70)"','filter':'alpha(opacity=70)'}).fadeIn(700);
				}, time);
				i++;
			});
		}, 1400);
	};


	// center the content
	function content_position(){
		if( is_mobile ) return;
	};


	// set the active page
	var current_active_index = 0;

	function set_active_page( index ) {
		var top_positions = [];
		main_slides.each(function(){
			top_positions.push($(this).offset().top);
		});
		var scroll_top = $(window).scrollTop();

		var index = top_positions.length-1;
		for(var i=0; i<top_positions.length; i++){
			if(scroll_top < top_positions[i]) {
				index = i-1;
				break;
			}
		}

		if( current_active_index == index ) {
			return;
		}

		current_active_index = index;

		$('#main-navigation a').removeClass('active');
		$('#main-navigation a').eq(index).addClass('active');
		
		// check if we're on the last slide and toggle slide panel
		if( index == main_slides.length-1 ) {
			is_side_panel_open = false;
			$('#side-panel .toggle').trigger('click');
		}else {
			is_side_panel_open = true;
			$('#side-panel .toggle').trigger('click');
		}
	}	
	
	
	// dot navigation settings				
	$('#main-navigation a').click(function(){
				
	var href = $(this).attr('href').split('#');
		id = href[ href.length - 1 ];
		goto_slide( id );				

	/*if (id == 'home') {
		$('#nav-prev').click(function(e) {
    		e.preventDefault();
		});
		//$('#nav-prev').css('display','none');
		//$('#main-navigation a.dot-home').css('margin-top','21px');
	};	//else {
		//	$('#nav-prev').css('display','block');
		//$('#main-navigation a.dot-home').css('margin-top','0');
		//};
	if (id == 'join-us') {
		$('#nav-next').click(function(e) {
    		e.preventDefault();
		});
		//$('#nav-next').css('display','none');
	};	//else {
		//$('#nav-next').css('display','block').css('top','0');
		//};*/

	return false;
			
	})
	.mouseenter(function(){
		$(this).find('.label').show().css('right', 45).animate({'right' : 35}, 200);
	})
	.mouseleave(function(){
		$(this).find('.label').hide();
	});

	
	
	// arrow navigation
    var slides = $('.pageslide');
	var slidePath = $('#main-navigation a');
		
    setTimeout(function(){
        $('#main-navigation .button').click(function(){
           var pageslide    = slides.eq(current_active_index);
           index	   		= 0;
		 			
			if($(this).hasClass('nextDown')){
                index = current_active_index >= slides.length-1 ? 0 : current_active_index+1;
            }else {
                index = current_active_index <= 0 ? slides.length-1 : current_active_index-1;
            };
			
		var shref = $(slidePath[index]).attr('href').split('#');
			id = shref[ shref.length - 1 ];
			goto_slide( id );	
				
			/*if (id == 'join-us') {
				$('#nav-next').css('display','none');
			}else {
				$('#nav-next').css('display','block').css('top','0');
			};
			if (id == 'home') {
				$('#nav-prev').css('display','none');
				$('#main-navigation a.dot-home').css('margin-top','21px');
			}else {
				$('#nav-prev').css('display','block');
				$('#main-navigation a.dot-home').css('margin-top','0');
			};	*/	
        }); 				
    
	});		
	
	// next section animation
	$('.icons a').click(function(){
				
	var href = $(this).attr('href').split('#');
		id = href[ href.length - 1 ];
		goto_slide( id );				

	return false;
			
	});	

	$('.line a').click(function(){
				
	var href = $(this).attr('href').split('#');
		id = href[ href.length - 1 ];
		goto_slide( id );				

	return false;
			
	});	
	
	
	
	// attach events
	$('.power-button').click(function(){
		goto_slide('future'); // first slide
		return false;
	});

	$(window).scroll( move_background );
	$(window).resize( get_slide_offset );
	$(window).resize( content_position );

	$(window).scroll();
	$(window).resize();	
}

