var old_index = 0;
var old_top = 0;

$(document).ready(function(){
		$('.book a').click(function(){		
			showBooks(this);
		});
		
		$('#about_text').click(function(){
			showBooks(this);
		});
		
		$('.prev').mousedown(function(){
			$(this).css({
				marginTop: '5px'
			});
		}).mouseup(function(){
			$(this).css({
				marginTop: '0px'
			});
		});
		
		$('.next').mousedown(function(){
			$(this).css({
				marginTop: '5px'
			});
		}).mouseup(function(){
			$(this).css({
				marginTop: '0px'
			});
		});
	
	/**
	 * Fixing Iron Man a little bit
	 */
	$('#iron_man').mousemove(function(e){
		pos = findPos(e);
				
		x = pos.x;
		y = pos.y;
		
		//Are we mousing over whiplash?
		if((x > 0 && x < 171) && (y > 0 && y < 198)){
			$('#whiplash').css({
				zIndex: 1000
			});
		}
			else{
				$('#whiplash').css({
					zIndex: 510
				});
			}	
		
		//Are we mousing over blackwidow?
		if((x > 171 && x < 320) && (y > 0 && y < 95)){
			$('#blackwidow').css({
				zIndex: 1000
			});
		}
			else{
				$('#blackwidow').css({
					zIndex: 509
				});
			}
		
		//Are we over the friends & foes book?
		if((x > 320 && x < 525) && (y > 0 && y < 170)){
			$('#foes_friends').css({
				zIndex: 1000
			});
		}
			else{
				$('#foes_friends').css({
					zIndex: 508
				});
			}
		
		//Are we over the IM fights back book?
		if((x > 525 && x < 703) && (y > 0 && y < 145)){		
			$('#fights_back').css({
				zIndex: 1000
			});
		}
			else{
				$('#fights_back').css({
					zIndex: 507
				});
			}	
		
		if((x > 703 && x < 760) && (y > 0 && y < 209)){
			$('#sticker_book').css({
				zIndex: 1000
			});
		}
			else{
				$('#sticker_book').css({
					zIndex: 508
				});
			}
	});
	
	$('#about_text').mousemove(function(e){
		pos = findPos(e);
				
		x = pos.x;
		y = pos.y;
		
		//Are we over the IM Fights back image?
		if((x > 0 && x < 45) && (y > 0 && y < 35)){
			$('#fights_back').css({
				zIndex: 1000
			});
		}
			else{
				$('#fights_back').css({
					zIndex: 507
				});
			}
		
		//Are we over the sticker book?
		if((x > 45 && x < 250) && (y > 0 && y < 55)){
			$('#sticker_book').css({
				zIndex: 1000
			});
		}
			else{
				$('#sticker_book').css({
					zIndex: 508
				});
			}
		
		//Are we over the junior novel book?
		if((x > 250 && x < 400) && (y > 0 && y < 120)){
			$('#junior_novel').css({
				zIndex: 1000
			});
		}
			else{
				$('#junior_novel').css({
					zIndex: 508
				});
			}		
	});
	
	
	/**
	 * About text effects
	 */
	$('#about_text .hover')
	.mouseover(function(){
		$(this).css('z-index','1000');
		
		img = $('#about_text img');
		
		img.css({
			position: 'relative'
		});
		
		img.animate({
			top: '-20px'
		},'fast');
	})
	.mouseout(function(){
		img = $('#about_text img');
		
		img.animate({
			top: '0px'
		});
	})
	.mousedown(function(){
		img = $('#about_text img');
		
		img.css({
			top: '-15px'
		});
	})
	.mouseup(function(){
		img = $('#about_text img');
		
		img.css({
			top: '-20px'
		});
		
		//$(this).trigger('mouseout');
	});
	
	/**
	 * Books Effects
	 */
	$('.book').mouseover(function(){		
		elem = $(this).find('img');
		
		old_index = elem.css('z-index');
		
		elem.animate({
			rotate: '-5deg',
			scale: '1.1'
		}, 'fast');
		
	}).mouseout(function(){
		elem = $(this).find('img');
		
		elem.animate({
			rotate: '0deg',
			scale: '1'
		}, 'fast');
		
		elem.css({
			zIndex: old_index
		});
	});

	$('.visit_link').mouseover(function(){
		$('#visit_over').fadeIn('normal');
		
	}).mouseout(function(){
		$('#visit_over').fadeOut('normal');
	});
});

function findPos(event) {
	var coords = { x: 0, y: 0};

  if(!event) // then we're in a non-DOM (pro'ly IE) browser
  {
    event = window.event;
    coords.x = event.offsetX;
    coords.y = event.offsetY;
  }
  else // we assume DOM modeled javascript
  {
    var Element = event.target ;
    var CalculatedTotalOffsetLeft = 0;
    var CalculatedTotalOffsetTop = 0 ;

    while (Element.offsetParent)
    {
      CalculatedTotalOffsetLeft += Element.offsetLeft;
      CalculatedTotalOffsetTop += Element.offsetTop;
      Element = Element.offsetParent;
    }

    coords.x = event.pageX - CalculatedTotalOffsetLeft;
    coords.y = event.pageY - CalculatedTotalOffsetTop;
  }

  return coords;
}

function showBooks(elem){		
		elem = $(elem);
		
		loc = $(elem).attr('href');
		
		if(typeof(loc) !== 'undefined'){
			location.href = loc;
		}
		else{
			location.href = '#';
		}
		
		$('#about_books').modal({
			overlayId: 'overlay',
			opacity: '85',
			position: new Array('5%',''),
			overlayClose: true,
			zIndex: 7000,
			closeClass: 'close'
		});
		
		var $panels = $('#slider .scrollContainer > div');
	    var $container = $('#slider .scrollContainer');

	    var horizontal = true;

	    if (horizontal) {
	        $panels.css({
	            'float' : 'left',
	            'position' : 'relative' // IE fix to ensure overflow is hidden
	        });
	
	        //$container.css('width', $panels[0].offsetWidth * $panels.length);
	    }
	
	    var $scroll = $('#slider .scroll').css('overflow', 'hidden');
	
	    var offset = parseInt((horizontal ? 
	        $container.css('paddingTop') : 
	        $container.css('paddingLeft')) 
	        || 0) * -1;
	
	
	    var scrollOptions = {
	        target: $scroll,
	        items: $panels,
	        prev: '.prev', 
	        next: '.next',
	        axis: 'x',	
	        offset: offset,
	        duration: 500
	    };

	    $('#slider').serialScroll(scrollOptions);
	
	    $.localScroll(scrollOptions);
	
	    scrollOptions.duration = 1;
	    
	    $.localScroll.hash(scrollOptions);
}

(function($) {
  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)

jQuery.preLoadImages('common/images/text/visit_text_over.png');
