//
// This set of functions provides necessary functionality
// for photo gallery pages
//

var currAlbumId = "";
var red_link = "";
var file = "";
var page = 1;

function xmlhttpPost2(divName, fileName) {
  new Ajax.Updater(divName, "include/" + divName + ".php?" + getquerystring(fileName), {method: 'get', asynchronous: true});
}

function xmlhttpPost(divName, file) {

  var xmlHttpReq = false;

  //var self = this;

  // Mozilla/Safari
  if (window.XMLHttpRequest) {
    xmlHttpReq = new XMLHttpRequest();

  // IE
  } else if (window.ActiveXObject) {
    xmlHttpReq = new ActiveXObject("Microsoft.XMLHTTP");
  }

  xmlHttpReq.open('POST', "include/" + divName + ".php", true);
  xmlHttpReq.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
  xmlHttpReq.onreadystatechange = function() {
    if (xmlHttpReq.readyState == 4) {
      updatepage(divName, xmlHttpReq.responseText);
    }
  }
  xmlHttpReq.send(getquerystring(file));
}

function refresh(linkName, afile) {
  file = afile;

  obj = document.getElementById(linkName);
  if (obj.className == "photoSelected") {
    return;
  }
  obj.className = 'photoSelected';
  obj.onmouseover = "null";
  obj.onmouseout = "null";

  xmlhttpPost("photo", file);

  if (red_link != "") {
    obj = document.getElementById(red_link);
    obj.className = "photoOut";
    obj.onmouseover = function() {
      this.className = "photoOver";
    };
    obj.onmouseout = function() {
      this.className = "photoOut";
    };
  }

  red_link = linkName;
}

function getquerystring(file) {
  qstr = 'ifile=' + escape(file) + '&page=' + page + '&albumId=' + currAlbumId;
  // NOTE: no '?' before querystring
  return qstr;
}


function nextpage() {
  page++;
  firstLoad();
}

function prevpage() {
  page--;
  firstLoad();
}


function firstpage() {
  page = 1;
  firstLoad();
}

function lastpage() {
  page = maxpage;
  firstLoad();
}

function firstLoad(albumId) {
  if (albumId) {
    currAlbumId = albumId;
  }
  xmlhttpPost("thumb", file);
}

function updatepage(divName, str) {
  if (divName == "thumb") {
    var data = str.split("|");
    file = data[0];
    maxpage = data[1];
    document.getElementById(divName).innerHTML = data[2];
    refresh("a_0", file);
  } else {
    var tempObj = document.getElementById(divName);
    if (tempObj) {
      tempObj.innerHTML = str;
    }
  }
}

function highlightThumbs(divRef, mouseOver) {
  if (divRef.className != 'photoSelected') {
    divRef.className = mouseOver ? 'photoOver' : 'photoOut';
  }
}
