//Open .external links in new window
var extLinks = document.getElementsByTagName('a');
for (var i = 0; i < extLinks.length; i++) {
	if (extLinks[i].className.indexOf('external') > -1) {
		extLinks[i].setAttribute('target', '_blank')
	}
}

//Contact Form
var formName = document.getElementById('form_name');
var formNameVal = 'Name';
formName.onfocus = function() {
	if (this.getAttribute('value') == formNameVal) {
		this.setAttribute('value', '')
	}
}
formName.onblur = function() {
	if (this.getAttribute('value') == '') {
		this.setAttribute('value', formNameVal)
	}
}
formName.setAttribute('value', formNameVal);

var formEmail = document.getElementById('form_email');
var formEmailVal = 'Email';
formEmail.onfocus = function() {
	if (this.getAttribute('value') == formEmailVal) {
		this.setAttribute('value', '')
	}
}
formEmail.onblur = function() {
	if (this.getAttribute('value') == '') {
		this.setAttribute('value', formEmailVal)
	}
}
formEmail.setAttribute('value', formEmailVal);

var formPhone = document.getElementById('form_phone');
var formPhoneVal = 'Phone Number';
formPhone.onfocus = function() {
	if (this.getAttribute('value') == formPhoneVal) {
		this.setAttribute('value', '')
	}
}
formPhone.onblur = function() {
	if (this.getAttribute('value') == '') {
		this.setAttribute('value', formPhoneVal)
	}
}
formPhone.setAttribute('value', formPhoneVal);

var formMessage = document.getElementById('form_message');
var formMessageVal = 'Message...';
formMessage.onfocus = function() {
	if (this.value == formMessageVal) {
		this.value = ''
	}
}
formMessage.onblur = function() {
	if (this.value == '') {
		this.value = formMessageVal
	}
}
formMessage.value = formMessageVal;

/* Original lightbox script by Lokesh Dhakar - www.huddletogether.com - Modified by Matt Hinchliffe > www.maketea.co.uk */

// Get page Y scroll position, return integer
function getPageScroll() {

	var yScroll;

	if (self.pageYOffset) yScroll = self.pageYOffset;
	else if (document.documentElement && document.documentElement.scrollTop) yScroll = document.documentElement.scrollTop;
	else if (document.body) yScroll = document.body.scrollTop;

	return yScroll
}

// Get window size, return array
function getPageSize() {

	var xScroll, yScroll;

	if (window.innerHeight && window.scrollMaxY){
		xScroll = document.body.scrollWidth;
		yScroll = window.innerHeight+window.scrollMaxY
	}
	else if (document.body.scrollHeight > document.body.offsetHeight) {
		xScroll = document.body.scrollWidth;
		yScroll = document.body.scrollHeight
	}
	else {
		xScroll = document.body.offsetWidth;
		yScroll = document.body.offsetHeight
	}

	var windowWidth, windowHeight;

	if (self.innerHeight){
		windowWidth = self.innerWidth;
		windowHeight = self.innerHeight
	}
	else if (document.documentElement && document.documentElement.clientHeight) {
		windowWidth = document.documentElement.clientWidth;
		windowHeight = document.documentElement.clientHeight
	}
	else if (document.body){
		windowWidth = document.body.clientWidth;
		windowHeight = document.body.clientHeight
	}
	if (yScroll < windowHeight) pageHeight = windowHeight;
	else pageHeight = yScroll;
	if (xScroll < windowWidth) pageWidth = windowWidth;
	else pageWidth = xScroll;
	arrayPageSize = new Array(pageWidth, pageHeight, windowWidth, windowHeight);

	return arrayPageSize
}


// Pause helper for IE, returns nothing
function pause(numberMillis) {
	var now = new Date();
	var exitTime = now.getTime() + numberMillis;
	while (true) {
		now = new Date();
		if (now.getTime() > exitTime) return
	}
}

// Show lightbox
function showLightbox(objLink){

	var arrayPageSize = getPageSize();
	var pageScroll = getPageScroll();

	objLightbox.style.display = 'block';

	if (objLoadingImage) {
		var loadingTop = pageScroll + ((arrayPageSize[3] - 35 - objLoadingImage.style.height) / 2);
		var loadingLeft = ((arrayPageSize[0] - 20 - objLoadingImage.style.width) / 2);
		objLoadingImage.style.top = (loadingTop < 0) ? "0px" : loadingTop + "px";
		objLoadingImage.style.left = (loadingLeft < 0) ? "0px" : loadingLeft + "px";
		objLoadingImage.style.display = 'block'
	}

	objOverlay.style.height = (arrayPageSize[1]+'px');
	objOverlay.style.display = 'block';

	imgPreload = new Image();
	imgPreload.onload = function() {

		var lightboxTop = pageScroll + ((arrayPageSize[3] - 35 - imgPreload.height) / 2);
		var lightboxLeft = ((arrayPageSize[0] - 20 - imgPreload.width) / 2);

		objImage.src = objLink.href;
		objLightbox.style.top = (lightboxTop < 0) ? "0px" : lightboxTop + "px";
		objLightbox.style.left = (lightboxLeft < 0) ? "0px" : lightboxLeft + "px";
		if (navigator.appVersion.indexOf("MSIE")!=-1) pause(250);
		if (objLoadingImage) {
			objLoadingImage.style.display = 'none';
			objImage.style.display = 'block';
		}

		selects = document.getElementsByTagName("select");
		for (i = 0; i != selects.length; i++) selects[i].style.visibility = "hidden";
		arrayPageSize = getPageSize();
		objOverlay.style.height = (arrayPageSize[1]+'px');
		return false
	}
	imgPreload.src = objLink.href
}

// Hide lightbox
function hideLightbox(){
	
	objOverlay.style.display = objLightbox.style.display = objLoadingImage.style.display = objImage.style.display = 'none';

	selects = document.getElementsByTagName("select");
	for (i = 0; i != selects.length; i++) selects[i].style.visibility = "visible"
}

//Init lightbox
var objBody = document.getElementsByTagName("body").item(0);

var objOverlay = document.createElement("div");
objOverlay.setAttribute('id','overlay');
objOverlay.onclick = function(){
	hideLightbox();
	return false
}
objBody.appendChild(objOverlay);

var objLightbox = document.createElement("div");
objLightbox.setAttribute('id', 'lightbox');
objBody.appendChild(objLightbox);

var objLoadingImage = document.createElement("a");
objLoadingImage.setAttribute('href', '#');
objLoadingImage.setAttribute('id', 'loadingImage');
objLoadingImage.onclick = function () {
	hideLightbox();
	return false
}
objLightbox.appendChild(objLoadingImage);

var objCloseButton = document.createElement("a");
objCloseButton.innerHTML = "Close";
objCloseButton.setAttribute('href', '#');
objCloseButton.setAttribute('id', 'closeButton');
objCloseButton.onclick = function () {
	hideLightbox();
	return false
}
objLightbox.appendChild(objCloseButton);

var objLink = document.createElement("a");
objLink.setAttribute('href', '#');
objLink.setAttribute('title', 'Click to close');
objLink.onclick = function () {
	hideLightbox();
	return false
}
objLightbox.appendChild(objLink);

var objImage = document.createElement("img");
objImage.setAttribute('id', 'lightboxImage');
objLink.appendChild(objImage);

// Init map enlarge
var enlargeMap = document.getElementById("enlarge_map");
enlargeMap.onclick = function () {
	showLightbox(this);
	return false
}
