function addLoadEvent(func){
  var oldonload = window.onload;
	if(typeof window.onload != 'function'){
	  window.onload = func;
	} else {
	  window.onload = function(){
		  oldonload();
			func()
		}
	}
}	

function insertAfter(newElement,targetElement) {
  var parent = targetElement.parentNode;
	if (parent.lastChild == targetElement) {
	  parent.appendChild(newElement);
	} else {
	  parent.insertBefore(newElement,targetElement.nextSibling);
	}
}

function preparePlaceholder() {
  if(!document.createElement) return false;
	if(!document.getElementById) return false;
	if(!document.getElementsByTagName ) return false;
  if(!document.getElementById("imagegallery")) return false;
	var placeholder = document.createElement("img");
	placeholder.setAttribute("id","placeholder");
	placeholder.setAttribute("src","../images/shoot01.jpg");
	placeholder.setAttribute("alt","Farmer Pete");
	placeholder.setAttribute("width","600");
	placeholder.setAttribute("height","450");
	var description = document.createElement("h3");
	description.setAttribute("id","description");
	var desctext = document.createTextNode("Farmer Pete");
	description.appendChild(desctext);
	var gallery = document.getElementById("imagegallery");
	insertAfter(placeholder,gallery);
	insertAfter(description, gallery);
}

function showPic (whichpic) {
 if (!document.getElementById("placeholder")) preparePlaceholder();
 var source = whichpic.getAttribute("href");
 var placeholder = document.getElementById("placeholder");
 placeholder.setAttribute("src",source);
 if (!document.getElementById("description")) return false;
//  the next line of code is a ternary operator
//  variable = condition ? if true : if false 
 var text = whichpic.getAttribute("title") ? whichpic.getAttribute("title") : "";
 var description = document.getElementById("description");
 description.firstChild.nodeValue = text;
 return false;
}
function prepareGallery(){
  if(!document.getElementById) return false;
	if(!document.getElementsByTagName ) return false;
  if(!document.getElementById("imagegallery")) return false;
  var gallery = document.getElementById( 'imagegallery' );
  var links = gallery.getElementsByTagName( 'a' );
  for( var i=0; i < links.length; i++ ){
    links[i].onclick = function(){
      return showPic(this);
    }
  }
}
addLoadEvent(prepareGallery);
