// JavaScript Document
$(document).ready(function() {
	
	// Showing Enquiry Form when appropriate link is clicked
	$('#enquiry-link').click(function() {
				
		$('#boxes li.selected h2').click();									 
		
		if($('#detail-link').hasClass('open')) {
			
			$('#details-area').slideUp("slow");
			$('#detail-link').removeClass('open');				
		}
		
		if($('#enquiry-link').hasClass('open')) {
			
			if($.browser.msie && ($.browser.version < 8.0)) {
				$('.captcha-area-input').css('position', 'static');
			}			
			
			$('#enquiry-form').slideUp("slow");
			$('#enquiry-link').removeClass('open');			
		}
		
		else  {

			if($.browser.msie && ($.browser.version < 8.0)) {
				$('.captcha-area-input').css('position', 'relative');
			}	

			$('#enquiry-form').slideDown("slow", function() {
				$("html:not(:animated),body:not(:animated)").animate({ scrollTop: $('#enquiry-form').offset().top}, 10);									
				
				$('#enquiry-link').addClass('open');
			});
		}			
		return false;
	});
	
	
	// Showing Contact Details when appropriate link is clicked
	$('#detail-link').click(function() {
									 
		$('#boxes li.selected h2').click();									 

		if($('#enquiry-link').hasClass('open')) {	

			if($.browser.msie && ($.browser.version < 8.0)) {
				$('.captcha-area-input').css('position', 'static');
			}			
		
			$('#enquiry-form').slideUp("slow");
			$('#enquiry-link').removeClass('open');				
		}

		if($('#detail-link').hasClass('open')) {	
			
			if($.browser.msie && ($.browser.version < 8.0)) { 
				$('#map-area').removeClass('loaded').html('');	
				$('#map-area').removeAttr('style');
			}
						
			$('#details-area').slideUp("slow");
			$('#detail-link').removeClass('open');			
		}
		
		else  {
			$('#details-area').slideDown("slow", function() {
				$("html:not(:animated),body:not(:animated)").animate({ scrollTop: $('#details-area').offset().top}, 10);
				loadMap();
				$('#detail-link').addClass('open');
			});
		}	
		return false;
	});	
	
	
	$('#boxes .content a, #boxes .content-small a').live('click', function() {						   
		window.open(this.href);
		return false;		
	});
	
	
	// Thumbnail Hover Popup
	$(".image-holder img").thumbPopup({
  		imgSmallFlag: "thumb_",
  		imgLargeFlag: "large_"
	});
	
});

function createScrolls() {
	
	
	$('#text-area .scroll-pane').each(function() {
		
		var $this = $(this);
		
		if($this.height() > 180) {
			
			$this.css({height : 182, overflow: 'auto'});
			$this.jScrollPane({scrollbarWidth: 19, scrollbarMargin: 10});
			
		}

												
	});
	
}


function createPanels(admin) {
	var boxCount = 30;
	$('#boxes .scroller-inner').jScrollPane({scrollbarWidth: 19});
	$('#boxes').addClass('enabled').css('height', $('#boxes').height());

	if(!admin) {
		$('#boxes li').each(function() {
			var $this = $(this);
			var position = $this.position();
			$this.attr('style', 'z-index: '+boxCount+';');
			$this.attr('style', 'top: '+position.top+'px; left: '+position.left+'px; z-index: '+boxCount+';');
			boxCount--;
		}).css('position', 'absolute'); 
	}
	
	$('#boxes p.links').html('read more');	
}


/*
 *  Load a google Map into the desired div
 */
function loadMap() {
	if($('#map-area').hasClass('loaded')) return false;

	var latlng = new google.maps.LatLng($('#map-details input[name="lat"]').val(), $('#map-details input[name="lng"]').val());
	
	var myOptions = {
		zoom: 15,
		center: latlng,
		mapTypeId: google.maps.MapTypeId.ROADMAP,
		navigationControl: true,
		mapTypeControl: false,
		scaleControl: false  
	};
		
	var map = new google.maps.Map(document.getElementById("map-area"), myOptions);
			
	var marker = new google.maps.Marker({position: latlng, map: map }); 
	
	$('#map-area').addClass('loaded');
}


function resizeModal(id, adjustment) {
	
	$('#'+id+' .content, #'+id+' .middle-left, #'+id+' .middle-right').animate({ height : adjustment}, 'fast');
	
} 



jQuery.fn.labelOver = function(overClass) {
	return this.each(function(){
				
		var label = jQuery(this);
		var f = label.attr('for');
		if (f) {
			var input = jQuery('#' + f);
			
			this.hide = function() {
			  label.css({ display: 'none' })
			}
			
			this.show = function() {
			  if (input.val() == '') label.css({ display: 'block' })
			}

			// handlers
			input.focus(this.hide);
			input.blur(this.show);
		    label.addClass(overClass).click(function(){ input.focus() });
			
			if (input.val() != '') this.hide(); 
		}
	})
}


