﻿// JScript File


 
var divid = 'output'; 
var loadingmessage = 'Processing...'; 

 
function AJAX(){ 

	var xmlHttp; 
	try{ 
		xmlHttp=new XMLHttpRequest(); // Firefox, Opera 8.0+, Safari 
		return xmlHttp; 
	} 
	catch (e){ 
		try{ 
			xmlHttp=new ActiveXObject("Msxml2.XMLHTTP"); // Internet Explorer 
			return xmlHttp; 
		} 
		catch (e){ 
			try{ 
				xmlHttp=new ActiveXObject("Microsoft.XMLHTTP"); 
				return xmlHttp; 
			} 
			catch (e){ 
				alert("Your browser does not support AJAX!"); 
				return false; 
			} 
		} 
	} 
} 
 
 
function formget(f, url) { 
	
	var poststr = getFormValues(f); 

	postData(url, poststr); 
	

} 
 
 
function postData(url, parameters){ 

 
	var xmlHttp = AJAX(); 
 
 
	xmlHttp.onreadystatechange =  function(){ 
		if(xmlHttp.readyState > 0 && xmlHttp.readyState < 4){ 
			document.getElementById(divid).innerHTML=loadingmessage; 
		} 
		if (xmlHttp.readyState == 4) { 
			document.getElementById(divid).innerHTML=xmlHttp.responseText; 
		} 
	} 
 
//} 
	xmlHttp.open("POST", url, true); 
	xmlHttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded"); 
	xmlHttp.setRequestHeader("Content-length", parameters.length); 
	xmlHttp.setRequestHeader("Connection", "close"); 
	xmlHttp.send(parameters); 

	//disable the form to prevent re-submit
	document.frmPoll.btnSubmit.disabled=true;
} 
 
 
function getFormValues(fobj) { 
	
	var str = ""; 
	var valueArr = null; 
	var val = ""; 
	var cmd = ""; 
	var radio_set = false; //set to true after the radio value is set to avoid passing the value twice
	 
	 
	for(var i = 0;i < fobj.elements.length;i++) { 
		switch(fobj.elements[i].type) { 

			case "hidden": 

				str += fobj.elements[i].name + "=" + escape(fobj.elements[i].value) + "&"; 
				break; 

			case "text": 

				str += fobj.elements[i].name + "=" + escape(fobj.elements[i].value) + "&amp;amp;"; 
				break; 


			case "textarea": 

				str += fobj.elements[i].name + "=" + escape(fobj.elements[i].value) + "&amp;amp;"; 
				break; 
 
 
			case "select-one": 
 
				str += fobj.elements[i].name + "=" + fobj.elements[i].options[fobj.elements[i].selectedIndex].value + "&"; 
				break; 
			
			case "radio":
				if(!radio_set){
					radio_name = fobj.elements[i].name;
					for (var Count = 0; Count < 3; Count++) {

						if (fobj.choice_id[Count].checked){
							rad_val = fobj.choice_id[Count].value;
							radio_set = true;
							break;
						}
					}
					str += fobj.elements[i].name + "=" + rad_val + "&"; 
				}

				break;
		} 
	} 
	
	str = str.substr(0,(str.length - 1)); 
	return str; 
 
} 
 
 


/* OLD ///////////////////////////////////////////////////////////////////
var xmlHttp;	//the global XMLHttpRequest object

//THIS submits a user selected value to the POLL db
var latlong;
function ajaxSubmitPollResponse(q_id, c_id)
{
	alert("BEGIN ajaxSubmitPollResponse() q_id = " + q_id + ", c_id = " + c_id);
	//create the xmlHttp object
	xmlHttp=GetXmlHttpObject();
	if (xmlHttp==null)
	{
		alert ("Your browser does not support AJAX!");
		return;
	} 


	xmlHttp.onreadystatechange=function()
	{
		if(xmlHttp.readyState==4)
		{
			//document.myForm.time.value=xmlHttp.responseText;
			poll_results=xmlHttp.responseText;
			alert("ajaxSubmitPollResponse() poll_results = " + poll_results);
			UpdatePageResults(poll_results); 
		}
	}
	//this path is from the page in the folder "articles" because that si the PARENT page that this code expects to live in
	url = "../newsletter/poll/submit_poll_response.asp?q_id="+q_id+"&c_id="+c_id;

	xmlHttp.open("GET",url, true);
	xmlHttp.send(null);  
}

function UpdatePageResults(p_res){
	alert(p_res);
	var percentYes = p_res;
	var percentNo = (100 - percentYes);
	var yesDiv = document.getElementById("yesDiv");
	yesDiv.innerHTML = percentYes;
	var noDiv = document.getElementById("noDiv");
	noDiv.innerHTML = percentNo;
	document.frmPoll.btnSubmit.disabled=true;
	//alert(p_res);
}

function SubmitPollResponse(q_id){
	for (var i=0; i < document.frmPoll.choice_id.length; i++){
	   if (document.frmPoll.choice_id[i].checked) {
		  var rad_val = document.frmPoll.choice_id[i].value;
	   }
	   }

	c_id =rad_val;

	//AJAX!!
	ajaxSubmitPollResponse(q_id, c_id);
}




////////////////////////////////////////////////////////////////////////////////////////////////////
//GLOBAL - this is where we make the XMLHttpRequest object
function GetXmlHttpObject()
{
	var xmlHttp=null;
	try
	{
		// Firefox, Opera 8.0+, Safari
		xmlHttp=new XMLHttpRequest();
	}
	catch (e)
	{
		// Internet Explorer
		try
		{
			xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
		}
		catch (e)
		{
			xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
		}
	}
	return xmlHttp;
}

*/
