$(document).ready(function() {


$('#press').qvivoScroll();


// ---------- preload all images -------------- //
	
	var cache = [];
	// Arguments are image paths relative to the current page.
	$.preLoadImages = function() {
	  var args_len = arguments.length;
	  for (var i = args_len; i--;) {
		var cacheImage = document.createElement('img');
		cacheImage.src = arguments[i];
		cache.push(cacheImage);
	  }
	}
	
	jQuery.preLoadImages("assets/images/bq_brasserie_1.jpg",
						"assets/images/bq_brasserie_2.jpg",
						"assets/images/bq_brasserie_3.jpg",
						"assets/images/bq_brasserie_4.jpg",
						"assets/images/bq_brasserie_5.jpg");
	
	// --------- reveal right menu options on rollover ------- //
	

	$('#brompton-menu').mouseenter(function(){
		$('#brompton-grocer-selector').stop().fadeTo(300,1, function(){
			$('#brompton-health-selector').stop().fadeTo(300,1);
		});
	});
	$('#brompton-menu').mouseleave(function(){
		$('#brompton-health-selector').stop().fadeTo(300,0, function(){
			$('#brompton-grocer-selector').stop().fadeTo(300,0);
		});
	});


	
	$('#riverside-menu').mouseenter(function(){
		$('#riverside-grocer-selector').stop().fadeTo(600,1);
		$('#riverside-brasserie-selector').stop().delay(300).fadeTo(600,1);
		$('#riverside-health-selector').stop().delay(600).fadeTo(600,1);
	});
	
	$('#riverside-menu').mouseleave(function(){
		$('#riverside-health-selector').stop().fadeTo(600,0);
		$('#riverside-brasserie-selector').stop().delay(300).fadeTo(600,0);
		$('#riverside-grocer-selector').stop().delay(600).fadeTo(600,0);
	});
	
	// ------ color main menu items and add/remove underline on rollover ------ //
	
	$('.main-menu').mouseenter(function(){
		$('a', this).css('color','#b31221');
		$('div', this).fadeTo(0,1);
	});
	
	$('.main-menu').mouseleave(function(){
		if(!($(this).hasClass('clicked'))){
			$('a', this).css('color','#333');
			$('div', this).fadeTo(0,0);
		};
	});
	
	$('.main-menu').click(function(){
		$('#book-a-table').fadeOut(500);
		$('.modal-window').fadeOut(500);
	});
	
	// --------- underline submenu on rollover ------------ //
	
	$('.sub-menu').mouseenter(function(){
		$('div', this).css('background-color','#fff');
	});
	
	$('.sub-menu').mouseleave(function(){
		if($(this).hasClass('clicked')){
			$('div', this).css('background-color','#fff');
			}else{
			$('div', this).css('background-color','transparent');
		};
	});
	
	// special case for 'we-can-make-it-happen' //
	
	$('#we-can-make-it-happen-container').mouseenter(function(){
			$('.we-can-make-it-happen-selector  div').css('background-color','#fff');
	});
	
	$('#we-can-make-it-happen-container').mouseleave(function(){
		if($(this).hasClass('clicked')){
			return;
		}else{
			$('.we-can-make-it-happen-selector  div').css('background-color','transparent');
		}
	});
	
	
	//------------ radio-button effect for menu items ----------- //
	
	$('.main-menu').click(function(){
		$('.main-menu').removeClass('clicked');
		$('.main-menu a').css('color','#333');
		$('.main-menu div').fadeTo(0,0);
		$('div', this).fadeTo(0,1);
		$('a', this).css('color','#b31221');
		$(this).addClass('clicked');
	});

	// check how many windows are being displayed and use the count to set the z-index (so the most recently displayed window will appear on top //

	var visibleModalWindows = 0;
	var windowZIndex = 1;
	
	// -------- open the modal windows -------------------- //
	
	function modalSelectorClicked(modalID){
		$('#' + modalID + '-selector').addClass('clicked');
		$('#' + modalID).css('z-index',windowZIndex).fadeIn(500);
		$('#' + modalID + '-selector div').css('background-color','white');
		visibleModalWindows++;
		windowZIndex++;
	};
	
	$('#how-we-started-selector').click(function(){modalSelectorClicked('how-we-started'); });
	$('#what-drives-us-selector').click(function(){modalSelectorClicked('what-drives-us'); });
	$('#current-exhibition-selector').click(function(){modalSelectorClicked('current-exhibition'); });
	$('#events-selector').click(function(){modalSelectorClicked('events'); });
	$('#press-selector').click(function(){modalSelectorClicked('press'); });
	$('#share-your-experiences-selector').click(function(){modalSelectorClicked('share-your-experiences'); });
	$('#book-a-table-selector').click(function(){modalSelectorClicked('book-a-table'); });
	$('#where-we-are-selector').click(function(){modalSelectorClicked('where-we-are'); });
	
	// special case for the 'we can make it happen' selector //
	
	$('#we-can-make-it-happen-container').click(function(){
		$(this).addClass('clicked');
		$('.we-can-make-it-happen-selector div').css('background-color','white');
	});


	
	$('#events li').click(function(){
		
		var listNumber = $(this).index('li');
		var numRand = (Math.floor(Math.random()*101))-100; // random number between 50 and -50
			
		windowZIndex++;
		
		var newPosition = 100+numRand; // used below to displace the modal window's top/left value between +50 and -50px

		$('#events-view').css({'z-index': windowZIndex, 'left':newPosition, 'top':newPosition});
		$('#events-view').fadeIn(500);
		visibleModalWindows++;
	});
	
			
	// ---- bring clicked (mousedown so it happens instantly) item to the top of the stack ---- //
	
	$('.modal-window').mousedown(function(){
		$(this).css('z-index',windowZIndex);
		windowZIndex++;
	});
	
	
	// ------- close the modal window ------- //
	
	$('.close-button').click(function(){
		$(this).parent().fadeOut(500);
		visibleModalWindows--;
	});
	
	$('.close-button-press').click(function(){
		$('#press').fadeOut(500);
		$('#press-underline').css('background-color','transparent');
		$('#press-selector').removeClass('clicked');
		visibleModalWindows--;
	});
	
	
	// ------- remove the modal selector underline when the modal window is closed -------- //
	
	function closeButtonClicked(modalSelectorID){
		$('#' + modalSelectorID).removeClass('clicked')
		$('#' + modalSelectorID + ' div').css('background-color','transparent');
	};
	
	$('#how-we-started .close-button').click(function(){closeButtonClicked('how-we-started-selector'); });
	$('#where-we-are .close-button').click(function(){closeButtonClicked('where-we-are-selector'); });
	$('#how-to-get-here .close-button').click(function(){closeButtonClicked('how-to-get-here-selector'); });
	$('#what-drives-us .close-button').click(function(){closeButtonClicked('what-drives-us-selector'); });
	$('#press .close-button').click(function(){closeButtonClicked('press-selector'); });
	$('#share-your-experiences .close-button').click(function(){closeButtonClicked('share-your-experiences-selector'); });
	$('#book-a-table .close-button').click(function(){closeButtonClicked('book-a-table-selector'); });
	$('#current-exhibition .close-button').click(function(){closeButtonClicked('current-exhibition-selector'); });
	
	//-------- these ones are slightly different  ------//
	
	$('#we-can-make-it-happen .close-button').click(function(){
		$('#we-can-make-it-happen-container').removeClass('clicked');
		$('.we-can-make-it-happen-selector div').css('background-color','transparent');
	});
	
	$('#events .close-button').click(function(){
		$('#events-selector').removeClass('clicked');
		$('#events-selector div').css('background-color','transparent');
		$('.events-view').fadeOut(500);
	});
	
	
	// ----- make the modal windows draggable (using jQuery UI) --------- //
	
	$( ".draggable" ).draggable({ containment: "#body", scroll: false });
	
	// -------------------- rotate the welcome image -------------------- //
	
	
	var transitionSpeed = 1000;
	var slideSpeed = 3000;
	
	function welcomeSlideshow(){
		$('.welcome8').delay(slideSpeed).fadeTo(transitionSpeed, 0);
		$('.welcome1').delay(slideSpeed).fadeTo(transitionSpeed, 1, function(){
			$('.welcome1').delay(slideSpeed).fadeTo(transitionSpeed, 0);
			$('.welcome2').delay(slideSpeed).fadeTo(transitionSpeed, 1, function(){
				$('.welcome2').delay(slideSpeed).fadeTo(transitionSpeed, 0);
				$('.welcome3').delay(slideSpeed).fadeTo(transitionSpeed, 1, function(){
					$('.welcome3').delay(slideSpeed).fadeTo(transitionSpeed, 0);
					$('.welcome4').delay(slideSpeed).fadeTo(transitionSpeed, 1, function(){
						$('.welcome4').delay(slideSpeed).fadeTo(transitionSpeed, 0);
						$('.welcome5').delay(slideSpeed).fadeTo(transitionSpeed, 1, function(){
							$('.welcome5').delay(slideSpeed).fadeTo(transitionSpeed, 0);
							$('.welcome6').delay(slideSpeed).fadeTo(transitionSpeed, 1, function(){
								$('.welcome6').delay(slideSpeed).fadeTo(transitionSpeed, 0);
								$('.welcome7').delay(slideSpeed).fadeTo(transitionSpeed, 1, function(){
									$('.welcome7').delay(slideSpeed).fadeTo(transitionSpeed, 0);
									$('.welcome8').delay(slideSpeed).fadeTo(transitionSpeed, 1, function(){
											welcomeSlideshow();
									});
								});
							});
						});
					});
				});
			});
		});
	}
	

	welcomeSlideshow();


$('.book-a-table-small').mouseenter(function(){
	$('div', this).css('opacity','1');
	
});
$('.book-a-table-small').mouseleave(function(){
	$('div', this).css('opacity','0');
	
});




	
});

