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

function showPic(whichpic) {
  hideTitles();
  if (!document.getElementById("placeholder")) return true;
  var placeholder = document.getElementById("placeholder");
  
  var loadingImage = document.getElementById("loading");
  loadingImage.style.display = 'block';
  
  var source = whichpic.getAttribute("href");	
  var imgPreloader = new Image();
  imgPreloader.onload = function() {
	loadingImage.style.display = 'none'; 
	placeholder.setAttribute("width",imgPreloader.width);
	placeholder.setAttribute("height",imgPreloader.height);
	placeholder.setAttribute("src",source);
	var titleli = 'title';
	var whichpicid = whichpic.getAttribute("id");
	titleli = document.getElementById(titleli+whichpicid);
	titleli.style.display = 'block'; 
  }
  imgPreloader.src = source;

  /*if (!document.getElementById("description")) return false;
  if (whichpic.getAttribute("title")) {
    var text = whichpic.getAttribute("title");
  } else {
    var text = "";
  }
  var description = document.getElementById("description");
  if (description.firstChild.nodeType == 3) {
    description.firstChild.nodeValue = text;
  }*/
  return false;
}

function preparePlaceholder() {
  if (!document.createElement) return false;
  if (!document.createTextNode) return false;
  if (!document.getElementById) return false;
  if (!document.getElementById("imageThumbs")) return false;
  var placeholder = document.createElement("img");

  var first = document.getElementById("thumb1");
  var source = first.firstChild.getAttribute("href");
  //var desctext = first.firstChild.getAttribute("title");
  placeholder.setAttribute("id","placeholder");
  placeholder.setAttribute("src",source);
  placeholder.setAttribute("alt","Image gallery");
  //var description = document.createElement("p");
  //description.setAttribute("id","description");
  //var desctext = document.createTextNode(desctext);
  //description.appendChild(desctext);
  var loadwrap = document.getElementById("loadwrap");
  //insertAfter(description,loadwrap);
  //insertAfter(placeholder,description);
  insertAfter(placeholder,loadwrap);

  var loadingImage = document.getElementById("loading");
  loadingImage.style.display = 'none'; 
  hideTitles();
  firstTitle = document.getElementById("titlelink1");
  firstTitle.style.display = 'block'; 
}

function prepareGallery() {
  if (!document.getElementsByTagName) return false;
  if (!document.getElementById) return false;
  if (!document.getElementById("imageThumbs")) return false;
  var gallery = document.getElementById("imageThumbs");
  var links = gallery.getElementsByTagName("a");
  //var adminLinks = document.getElementById("galleryAdminLinks");  
  for ( var i=0; i < links.length; i++) {
	var parent = links[i].parentNode.nodeName;
	if (parent != "DIV") {
      links[i].onclick = function() {
        return showPic(this);
      }
    }
  }
  /*for ( var i=0; i < adminLinks.length; i++) {
	var adminLink = adminLinks[i].getElementsByTagName("a");
    adminLink.onclick = function() {
      return true;
    }
  }*/
}

function hideTitles() {
  var titlesul = document.getElementById("titles");
  var titlelis = titlesul.getElementsByTagName("li");
  for ( var i=0; i < titlelis.length; i++) {
    titlelis[i].style.display = 'none'; 
  }
}

$(document).ready(function(){
   	preparePlaceholder();
	prepareGallery();
});