var lessThan = "&lt;&lt;";
var moreThan = "&gt;&gt;";

function changePhoto(anchor, jpgFile, newText)
{
    var parent = getParentNode(anchor, 6);
    var parentID = parent.id;

    // get elements of what we are changing
    var photo = document.getElementById(parentID + "_photo");
    var photoAnchor = document.getElementById(parentID + "_photoAnchor");
    var textElement = document.getElementById(parentID + "_photoText");

    var topOfImage = findYPosition(photoAnchor) - 20;

    // new image names
    var baseDir = parent.getAttribute("baseDir");
    var newMedium = baseDir + "/medium/" + jpgFile + ".jpg";
    var newPhoto = jpgFile + ".jpg";

    // Change photo's source
    photo.src = newMedium;

    // Change the picture used in making new page
    parent.setAttribute("currentPicture", newPhoto);
    parent.setAttribute("currentText", newText);

    // Change the HTML of the photoText div
    if (textElement)
    {
      textElement.innerHTML = newText;
    }
    location.href="#"+parentID;
}

// new changePhoto 
function switchPhoto(anchor)
{
    var parent = getParentNode(anchor, 6);
    var parentID = parent.id;

    // get elements of what we are changing
    var photo = document.getElementById(parentID + "_photo");
    var photoAnchor = document.getElementById(parentID + "_photoAnchor");
    var textElement = document.getElementById(parentID + "_photoText");

    // get info from the anchor
    var newText = anchor.getAttribute("caption");
    var jpgFile = anchor.getAttribute("picture");

    // new image names
    var baseDir = parent.getAttribute("baseDir");
    var newMedium = baseDir + "/medium/" + jpgFile + ".jpg";
    var newPhoto = jpgFile + ".jpg";

    // Change photo's source
    photo.src = newMedium;

    // Change the picture used in making new page
    parent.setAttribute("currentPicture", newPhoto);

    // Change the HTML of the photoText div
    if (textElement.innerHTML != null)
    textElement.innerHTML = newText;

    location.href="#"+parentID;
}

function prev(child)
{
    var parent = getParentNode(child, 7);
    var parentID = parent.id;
    var baseDir = parent.getAttribute("baseDir");
    var currentPicture = parent.getAttribute("currentPicture");

//    alert("previous!" + currentPicture);

   // loop through all pics until we find ours and go back one
    var mydiv = document.getElementById(parentID + "_pics");
    var elems = mydiv.getElementsByTagName("a");
    var numElems = elems.length;
    if (numElems < 1)
      return false;
    var previousAnchor = elems[0];
    for (i = 0; i < numElems; ++i)
    {
      var anchor = elems[i];
      var anchorsPicture = anchor.getAttribute('picture') + ".jpg";
//    alert(anchorsPicture);
      if (anchorsPicture == currentPicture)
      {
        switchPhoto(previousAnchor);
      }

      previousAnchor = anchor;
    }
}

function next(child)
{
    var parent = getParentNode(child, 7);
    var parentID = parent.id;
    var baseDir = parent.getAttribute("baseDir");
    var currentPicture = parent.getAttribute("currentPicture");

//    alert(currentPicture);

   // loop through all pics until we find ours and go back one
    var mydiv = document.getElementById(parentID + "_pics");
    var elems = mydiv.getElementsByTagName("a");
    var numElems = elems.length;
    if (numElems < 2)
      return false;
    // default to 2nd anchor
    var nextAnchor = elems[1];
    for (i = 0; i < (numElems-1); ++i)
    {
      var anchor = elems[i];
      nextAnchor = elems[i+1];

      var anchorsPicture = anchor.getAttribute('picture') + ".jpg";
      if (anchorsPicture == currentPicture)
      {
        switchPhoto(nextAnchor);
      }
    }
}


// Open a new window with the picture
function openNewWindow(child)
{
    // Get the parent with the information we want
    var parent = getParentNode(child, 7);
    var baseDir = parent.getAttribute("baseDir");
    var currentPicture = parent.getAttribute("currentPicture");
    var currentText = parent.getAttribute("currentText");    

    var newImage = baseDir + "/" + currentPicture;
    window.open(newImage);

    return false;
}


function getParentNode(child, levels)
{
    var parent = child;
    do
    {
        parent = parent.parentNode;

        levels--;
    }
    while (levels > 0);

    return parent;
}

function findYPosition( oLink ) {
  if( oLink.offsetParent ) {
    for( var posX = 0, posY = 0; oLink.offsetParent; oLink = oLink.offsetParent ) {
      posX += oLink.offsetLeft;
      posY += oLink.offsetTop;
    }
    return posY;
  } else {
    return oLink.y;
  }
}



/////////////////////// OLD
function newWindow()
{
    var newImage = baseDir + "/" + currentPicture;
    location.href=newImage;
    return false;
}

function changeImage(jpgFile, newText)
{
    var photo = document.getElementById("photo");
    var photoAnchor = document.getElementById("photoAnchor");

    var oldText = document.getElementById("photoText");

    var newMedium = baseDir + "/medium/" + jpgFile + ".jpg";
    var newPhoto = jpgFile + ".jpg";

    photo.src = newMedium;

    currentPicture = newPhoto;

    oldText.innerHTML = newText;

//    location.href="#";

    location.href
//    scrollBy(0, -200);
}

