/*simple dropdown menu*/

$(document).ready(function () {
	$('#wrapper').prepend('<div id="scrollUp"></div>');
	$('#wrapper').append('<div id="scrollDown"></div>');
	//$('#pubsDropdown').prepend('<div id="opener">');
	//$('#pubsDropdown').append('</div>');
	
	var maximumHeight = 300;//set the maximum height of the dropdown menu
	var height = $('ul.main_nav').height();
	var scrollDownHeight = $('#scrollDown').height();
	var scrollUpHeight = $('#scrollUp').height();
	var relativeHeight = height - maximumHeight + scrollDownHeight;
	var speed = 2000;
	$('#wrapper').css({'max-height' : 20,'overflow':'hidden'});
	$('#scrollDown').css({'bottom' : 0});
	$('#scrollDown').hide();
	$('#scrollUp').hide();
	$('#wrapper').show();
	$('#wrapper').animate({opacity:1},'slow');
	

    
    function buttonsVisibility(){
    	var topPosition = $('ul.main_nav').position().top;
    	if(Math.abs(topPosition) >= relativeHeight){
    		$('#scrollDown').hide();
    		$('#scrollDown').stop().animate({opacity:0},'slow');
    	}else{
    		$('#scrollDown').show();
    		$('#scrollDown').stop().animate({opacity:1},'slow');
    	}
    	if(topPosition >= 25){
    		$('#scrollUp').hide();
    		$('#scrollUp').stop().animate({opacity:0},'slow');
    	}else if(topPosition < 0){
    		$('#scrollUp').show();
    		$('#scrollUp').stop().animate({opacity:1},'slow');
    	}
    }
    function wrapperHoverOn(){
    	$('#wrapper').stop().animate({'max-height':maximumHeight},'slow',buttonsVisibility);
    	$('#wrapper .dropYear').css({'background-image':'url("")'});
    	$('#blank').show();
    	//$('#opener').hide('slow');
    	//$('#scrollDown').show().css({'opacity':'1'});
		//$('#scrollUp').show().css({'opacity':'1'});
    }
    function wrapperHoverOff(){
    	$('ul.main_nav').stop().animate({top:0},'slow');
		$('#wrapper').stop().animate({'max-height':20},'slow');
		$('#scrollDown').hide().css({'opacity':'0'});
		$('#scrollUp').hide().css({'opacity':'0'});
		//$('#opener').show();
		$('#wrapper .dropYear').css('background-image','url("../../wp-content/themes/David%20Zwirner/styles/arrow_down.png")');
		//$('#blank').hide();
    }
    function scrollDownHoverOn(){
    	var topPosition = $('ul.main_nav').position().top;
    	var relativeSpeed = ((relativeHeight - Math.abs(topPosition))/relativeHeight)*speed;
    	$('ul.main_nav').animate({top:-relativeHeight}, relativeSpeed, 'linear', buttonsVisibility());
    }
    function scrollDownHoverOff(){
    	$('ul.main_nav').stop();
    	buttonsVisibility();
    }
    function scrollUpHoverOn(){
    	var topPosition = $('ul.main_nav').position().top;
    	var relativeSpeed = ((Math.abs(topPosition))/height)*speed;
    	$('ul.main_nav').animate({top:scrollUpHeight}, relativeSpeed, 'linear', buttonsVisibility());
    }
    function scrollUpHoverOff(){
    	$('ul.main_nav').stop();
    	buttonsVisibility();
    }
    
	function is_touch_device() {  
		try {  
			document.createEvent("TouchEvent");  
			return true;  
		} catch (e) {  
			return false;  
		}  
	}
	
	if(is_touch_device()){
		//$('#title').html('Is touch device');
		/*bindTouchEvents();
		$('body').prepend('<div id="blank">');
		$('body').append('</div>');
		$('#blank').hide();
		$('#opener').show();*/
		$('#touch_wrapper').show();
		$('#wrapper').hide();
	}else{
		//$('#title').html('Is NOT touch device');
		bindMouseEvents();
		//$('#opener').css({'z-index':'-1'});
		$('#touch_wrapper').hide();
		$('#wrapper').show();
		//$('#wrapper').css({'opacity':'1'});
		/*$('#opener').hide();*/
		/*bindTouchEvents();
		$('body').prepend('<div id="blank">');
		$('body').append('</div>');
		$('#blank').hide();*/
	}
	
    function bindMouseEvents() {
    	//bind mouse events
    	$('#wrapper').bind('mouseenter', function(e){
    		wrapperHoverOn();
 //   		$('#title').html('testOne');
    	});
    	$('#wrapper').bind('mouseleave', function(e){
    		wrapperHoverOff();
    	});
    	$('#scrollDown').bind('mouseenter', function(e){
		    scrollDownHoverOn();
		});
		$('#scrollDown').bind('mouseleave', function(e){
		    scrollDownHoverOff();
		});
		$('#scrollUp').bind('mouseenter', function(e){
		    scrollUpHoverOn();
		});
		$('#scrollUp').bind('mouseleave', function(e){
		    scrollUpHoverOff();
		});
	}
    
    function bindTouchEvents() {
    	//bind touch events and remove hover events
    	$('#opener').css({'background-color':'#f0f'});
 	   $('#opener').bind('click', function(e){
    		//e.stopPropagation();
    		//$('#wrapper').unbind('mouseenter mouseleave');
    		//$('#scrollDown').unbind('mouseenter mouseleave');
    		//$('#scrollUp').unbind('mouseenter mouseleave');
    		$('#blank').bind('click', function(e){wrapperHoverOff();});
    		
    		wrapperHoverOn();
    	});
    	$('#scrollDown').bind('touchstart', function(e){
    		scrollDownHoverOn();
    	});
    	$('#scrollDown').bind('touchend', function(e){
    		scrollDownHoverOff();
    	});
    	$('#scrollUp').bind('touchstart', function(e){
    		scrollUpHoverOn();
    	});
    	$('#scrollUp').bind('touchend', function(e){
    		scrollUpHoverOff();
    	});
    }
   
});
