<!-- this script requires inclusion of includes/global/ajaxScript.js in the calling code or it will not work -->
function viewImage(imageID)
{
  // if these values are not set as hidden/text vars on the calling page,
  // the function will fail    
  var gallery = document.getElementById("gallery").value;
  var gallerytype = document.getElementById("gallerytype").value;
  var section = document.getElementById("section").value;
  var usertype = document.getElementById("usertype").value;
  var pagebase = document.getElementById("pagebase").value;
  var page = document.getElementById("page").value;
  var directory = document.getElementById("directory").value;
  var hascomments = (document.getElementById("hascomments").value == "true");

  var destination = document.getElementById("destination").value;
 
  // no destination supplied?
  if (destination.IsDefined == false) return false;

  /*  
  // show "loading" image
  document.getElementById('galleryImage').src = pagebase + 'images/graphics/ajax-loader.gif';
  */
  
  // blank title and description while loading
  var titleDiv = document.getElementById('titleDiv');
  if ( titleDiv )
    document.getElementById('titleDiv').innerHTML = '';
  
  var descDiv = document.getElementById('descDiv');
  if ( descDiv )
    document.getElementById('descDiv').innerHTML = '';
  
  var xhr = createHttpRequestObject();
  
  var parameters = "?gallerytype=" + gallerytype
                 + "&gallery=" + gallery
                 + "&usertype=" + usertype
                 + "&section=" + section
                 + "&image=" + imageID;
//  alert(destination + parameters);
  xhr.open('GET', destination + parameters, true);

  xhr.onreadystatechange = function()
  {
    if (xhr.readyState == 4)
    {
//      alert(xhr.responseText);
      var response = csvArray(xhr.responseText);
      if ( response[0] == 'success' )
      {
        if ( hascomments )
        {
          // don't think this does anything right now, hascomments is always false;
          // untested and probably buggy and maybe no longer needed?
          var formaction = pagebase
                         + directory + '/' + page + '?'
                         + 'section=' + section
                         + '&gallery=' + gallery + '&link=' 
                         + imageID + '&gallerytype=' + gallerytype;
          resetCommentForm(imageID, formaction);
        }

        if ( titleDiv )
          titleDiv.innerHTML = response[1];
        
        if ( descDiv )
          descDiv.innerHTML = response[2];
        
        document.getElementById('galleryImage').src = response[3];
        
        var prevImage = document.getElementById('prevImage');
        var nextImage = document.getElementById('nextImage');
        
        if ( (response[4] != '') && prevImage )
        {
          prevImage.onclick = function() {viewImage(response[4])};
        }
        if ( (response[5] != '') && nextImage )
        {
          nextImage.onclick = function() {viewImage(response[5])};
        }

        if ( hascomments )
        {
          document.getElementById('commentDiv').innerHTML = response[6];
        }
      }
    }
  }
  
  xhr.send(null);
}
