// JavaScript Document


//
function parseQuery(param) {
	
	var href = window.location.href;
	var q_mark = href.indexOf("?");
	var query = href.substring(q_mark+1,href.length);
	
	var pairs = new Array(); 
	pairs = query.split("&");
	
	var keys = new Array();
	var param_hash = new Array();
	
	for (var i = 0; i<pairs.length; i++) {
		var eq_sign = pairs[i].indexOf("=");
		var the_key = pairs[i].substring(0,eq_sign);	
			keys[i] = the_key;
		var the_value = pairs[i].substring(eq_sign+1,pairs[i].length);
			param_hash[the_key] = the_value;	
	}
	
	if (param) { return param_hash[param]; }
	else { return param_hash; }

}

//
function buildQuery(arrayRef) {
	
	var theParams= new Array();
		theParams= arrayRef;
	var queryStr= "?";	
	
	for (var aKey in theParams) {
		
		var aVal= theParams[aKey];
		var aPair= (aKey+'='+aVal);
			queryStr+= (aPair+'&');
			
	} 	var theIndex= queryStr.lastIndexOf('&');
		var returnStr= queryStr.substring(0,theIndex);
	
	return returnStr;
		
}

//
function ajaxRequest(param1,param2,param3) {
  
	var acol= param1;
	var arow= param2;
	var areq= param3;

   var xmlHttp;

	// Firefox, Opera 8.0+, Safari	  
	try { xmlHttp=new XMLHttpRequest(); }
	// Internet Explorer
	catch (e) {
	  try { xmlHttp=new ActiveXObject("Msxml2.XMLHTTP"); }
	  catch (e) {
	    try { xmlHttp=new ActiveXObject("Microsoft.XMLHTTP"); }
	    catch (e) {
	      alert("Your browser does not support AJAX!");
	      return false;
	    }
	  }
  	}
	
   xmlHttp.onreadystatechange= function onComplete() {
	   var theResponse;
      	if (xmlHttp.readyState==4) { 
			theResponse= xmlHttp.responseText; 
			window.alert(theResponse); 			// <- sort of a template, functionality goes here...
		}

   }

   xmlHttp.open('GET','./scripts/query.php?column='+acol+'&row='+arow+'&request='+areq,true);
   xmlHttp.send(null);  
	
}

//
function ajaxFunction(param1,param2,param3) {

	// something...

}

//
function centerWindow(param1,param2,param3) {
	
	var theWindow= param1;
	var theWidth= param2;
	var theHeight= param3;
	
	var theX= ((screen.width/2)-(theWidth/2));
	var theY= ((screen.height/2)-(theHeight/2));
	
		theWindow.moveTo(theX,theY);
		
}

//
function getDialog(param1,param2,param3,param4) {
	
	var theDialog= param1;
	var theWidth= param2;
	var theHeight= param3;
	var theQuery= "";
		if (param4) { theQuery= param4; }
	
	var dialogFile= ('/dialog/'+theDialog+'.htm'+theQuery);
	var dialogName= (theDialog+'Window');
		
		window.name= "parentWindow";
	var theWindow= window.open(dialogFile,dialogName,'dialog=yes,location=no,menubar=no,resizeable=no,scrollbars=no,status=no,titlebar=no,toolbar=no,width='+theWidth+',height='+theHeight); 
		centerWindow(theWindow,theWidth,theHeight);
		theWindow.focus();
				
}

//
function flashTest(param1,param2,param3) { 
	
	var verArr= param1.split(",");
	var theTest= DetectFlashVer(verArr[0],verArr[1],verArr[2]);
			
	if (!theTest) {
		
		var theParams= new Array();
			theParams['version']= verArr.join(".");
			theParams['redirect']= ('../'+param2);
			theParams['download']= "http://get.adobe.com/flashplayer/";
			
		var theQuery= setQuery(theParams);
		
			getDialog('flash',500,275,theQuery);
			
	} else if (param3) {
		
		window.open(param3,"_self");
		
	}	
	return theTest;
					
}				

