// Utilities.js - collection of javascript tools

// movepic function
function movepic(img_name,img_src) {
document[img_name].src=img_src;
}

// XMLHTTP processStateChange
var request;
var dest;

function processStateChange(){
    if (request.readyState == 4){
        contentDiv = document.getElementById(dest);
        if (request.status == 200){
            response = request.responseText;
            contentDiv.innerHTML = response;
        } else {
            contentDiv.innerHTML = "Error: Status "+request.status;
        }
    }
}

function loadHTML(URL, destination){
    dest = destination;
	//alert(URL);
	//alert(destination);
    if (window.XMLHttpRequest){
        request = new XMLHttpRequest();
        request.onreadystatechange = processStateChange;
        request.open("GET", URL, true);
        request.send(null);
    } else if (window.ActiveXObject) {
        request = new ActiveXObject("Microsoft.XMLHTTP");
        if (request) {
            request.onreadystatechange = processStateChange;
            request.open("GET", URL, true);
            request.send();
        }
    }
}

// new window opener
function Opener(theURL,winName,features) { //v2.0
  window.open(theURL,winName,features);
}

// the following three functions (and variables) allow forms to POST data to a URL
var http_request = false;
var destdiv;

function makePOSTRequest(url, parameters) {
  http_request = false;
  if (window.XMLHttpRequest) { // Mozilla, Safari,...
	 http_request = new XMLHttpRequest();
	 if (http_request.overrideMimeType) {
		http_request.overrideMimeType('text/xml');
	 }
  } else if (window.ActiveXObject) { // IE
	 try {
		http_request = new ActiveXObject("Msxml2.XMLHTTP");
	 } catch (e) {
		try {
		   http_request = new ActiveXObject("Microsoft.XMLHTTP");
		} catch (e) {}
	 }
  }
  if (!http_request) {
	 alert('Cannot create XMLHTTP instance');
	 return false;
  }
  
  http_request.onreadystatechange = alertContents;
  http_request.open('POST', url, true);
  http_request.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
  http_request.setRequestHeader("Content-length", parameters.length);
  http_request.setRequestHeader("Connection", "close");
  http_request.send(parameters);
}

function alertContents() {
  if (http_request.readyState == 4) {
	 if (http_request.status == 200) {
		//alert(http_request.responseText);
		
		result = http_request.responseText;
		document.getElementById(destdiv).innerHTML = result;  
		
	 } else {
		alert('There was a problem with the request.');
	 }
  }
}

function get(posturl, postvars, destinationdiv, obj) {
  var poststr = postvars;
  destdiv = destinationdiv;
  //alert('URL: ' + posturl);
  //alert('Vars: ' + postvars);
  makePOSTRequest(posturl, poststr);
}

var conf_answer;
function confirmLoad(confq, confurl, confpanel) {
	conf_answer = confirm(confq);
	
	if (conf_answer== true)
		{
			loadHTML(confurl, confpanel);
		}
	else
		{
			return false;
		}
}

function confirmDirect(directq, directurl) {
	conf_answer = confirm(directq);
	
	if (conf_answer== true)
		{
			window.location = directurl;
		}
	else
		{
			return false;
		}
}

function confirmPost(getq, geturl, getparams, getpanel) {
	conf_answer = confirm(getq); 
	
	if (conf_answer== true)
		{
				get(geturl, getparams, getpanel);
		}
	else
		{
				return false;
		}
}

function notifyPicChange(ChangeTo, ChangeDiv) {
	document.getElementByID(ChangeDiv).innerHTML = ChangeTo;
}

function stopEnter(gourl, govars, godiv, goobj) 
{    
	if (event.keyCode == 13) 
	{        
		get(gourl, govars, godiv, goobj);
		event.cancelBubble = true;
		event.returnValue = false;
     }
} 

function openEditComment(CommentID) {
	Opener('edit-comment.asp?CommentID=' + CommentID,'EditComment_Win','width=370,height=330')
}
