addLoadListener(init);


function init()
{
	gallery();
	if(!document.forms[0]) { return; }
	next();
	document.forms[0].onsubmit = validate;
	
	return true;
}


function next() {
	var inputs = document.forms[0].elements;
	for (var i = 0; i < inputs.length; i ++) {
		if ((inputs[i].type == "text" ) || (inputs[i].type == "textarea")) {
			inputs[i].onfocus = function() {
				this.style.border = "2px solid #000";
			}
		}
	}
	for (var i = 0; i < inputs.length; i ++) {
		if ((inputs[i].type == "text" ) || (inputs[i].type == "textarea")) {
			inputs[i].onblur = function() {
				this.style.border = "2px solid #ccc";
			}
		}
	}
} // end


function validate() {
	var inputs = document.forms[0].elements;
	var labels = document.getElementsByTagName('label');
	if(!labels) { return; }
	for (var i = 0; i < inputs.length; i ++) {
	
		if ((inputs[i].className == "checkRequired") && (inputs[i].value == "")) {
			var id = inputs[i].id;
			alert("Please fill in the " + id + " field");
			var label = labels[i];
			label.innerHTML = label.innerHTML + ' <span class="error">must not be empty</span>';
			inputs[i].focus();
			return false;
		}
			
		
		if ((inputs[i].className == "checkEmail") && (inputs[i].value.indexOf('@') == -1)) {
			alert("Please enter a valid email address");
			var label = labels[i];
			label.innerHTML = 'Email <span class="error">must be valid (smith@smithville.co.uk)</span>';
			inputs[i].focus();
			inputs[i].select();
			return false;
			
		}
	}
}

function gallery() {
	
	// get thumbails div
	var thumbnailsDiv = document.getElementById('thumbnails');
	if(!thumbnailsDiv) { return; };
	
	// get thumbnail images
	var thumbnailLinks = thumbnailsDiv.getElementsByTagName('a');
	
	
	for (var i = 0; i < thumbnailLinks.length; i++) {
	
		thumbnailLinks[i].onclick = function() {
			swapPic(this);
			return false;
		}
		
	}
	
}

function swapPic(link) {

	var holder = document.getElementById('mainPic');
	
	var captionHolder = document.getElementById('caption');
	
	var picLink = link.getAttribute('href');
	var caption = link.getAttribute('title');
	
		
	holder.setAttribute('src', picLink);
	
	captionHolder.childNodes[0].nodeValue = caption;
	
}

function addLoadListener(fn)
{
  if (typeof window.addEventListener != 'undefined')
  {
    window.addEventListener('load', fn, false);
  }
  else if (typeof document.addEventListener != 'undefined')
  {
    document.addEventListener('load', fn, false);
  }
  else if (typeof window.attachEvent != 'undefined')
  {
    window.attachEvent('onload', fn);
  }
  else
  {
    var oldfn = window.onload;
    if (typeof window.onload != 'function')
    {
      window.onload = fn;
    }
    else
    {
      window.onload = function()
      {
        oldfn();
        fn();
      };
    }
  }
}


