// JavaScript Document
var xmlDoc;
var params;
var chatWindow;
var question;
var activityPrompt;

$(document).ready(function() {
	//alert("Hello");
	$("#nameInput").val(getCookie("guestname"));
	$("#nameSubmit").click(openCurtains);
 });


function openCurtains() {
	$("#cRight").animate({"left": "900px"}, 1500);
	$("#cLeft").animate({"left": "-500px"}, 1500);		
	$("#signIn").animate({"top": "-400px"}, 1500);
	$("#chatWindow").html("<span class='zenaText'>Madam Zena: Welcome " + $("#nameInput").val() + "</span><br>");
	setCookie("guestname",$("#nameInput").val(), 365);
	$("#question").focus();
}

function questionSubmitHandler() {
	chatWindow = document.getElementById("chatWindow");
	question = document.getElementById("question");
	activityPrompt = document.getElementById("activityPrompt");
	if (xmlDoc) {
		xmlDoc.getElementsByTagName("question")[0].childNodes[0].nodeValue = question.value;
		params = XMLToQuerryString(xmlDoc);
	} else {
		params = "guestname=" + $("#nameInput").val() + "&firstTime=TRUE&question=" + encodeURI(question.value);
		// alert(params);
	}
	chatWindow.innerHTML += "You: " + question.value + "<br>";
	scrollToBottom(chatWindow);
	question.value = "";
	activityPrompt.innerHTML = "Waiting for the Madam...";
	if (window.XMLHttpRequest)
	  {// code for IE7+, Firefox, Chrome, Opera, Safari
	  xmlhttp=new XMLHttpRequest();
	  }
	else
	  {// code for IE6, IE5
	  xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
	  }
	xmlhttp.open("GET","scripts/zenaChat.pl?"+params,false);
	xmlhttp.send(params);
	xmlDoc=xmlhttp.responseXML;
	// In synch mode, wait for response, then move forward
	replyHtml = xmlDoc.getElementsByTagName("answer")[0].childNodes[0].nodeValue;
	chatWindow.innerHTML += "<span class='zenaText'>" + replyHtml + "</span><br>"; 
	scrollToBottom(chatWindow);	
	activityPrompt.innerHTML = "Type your question here:";
	//Make sure text input has focus (lost when using submit button
	question.focus();
}

function scrollToBottom(inDiv) {
	inDiv.scrollTop = inDiv.scrollHeight;
}

function XMLToQuerryString(inXML) {
	querryString = ""
	if (inXML) {
		x=inXML.documentElement.childNodes;
		for (i=0;i<x.length;i++)
		{
		  if (x[i].nodeType==1 && x[i].childNodes[0])
		  {//Process only element nodes (type 1) with content		  
		  querryString += "&" + x[i].nodeName + "=" + encodeURI(x[i].childNodes[0].nodeValue);
		  }
		} 
	}
	//alert(querryString);
	return querryString;
}

function checkSubmit(e)
{
   if(e && e.keyCode == 13)
   {
	  var str = document.getElementById("question").value;
	  document.getElementById("question").value = str.substring(0, str.length-1);
      questionSubmitHandler();
   }
}

// cookies

function setCookie(cname,value,days) {
    if (days) {
        var date = new Date();
        date.setTime(date.getTime()+(days*24*60*60*1000));
        var expires = "; expires="+date.toGMTString();
    }
    else var expires = "";
    document.cookie = cname+"="+value+expires+"; path=/";
}

function getCookie(cname) {
    var nameEQ = cname + "=";
    var ca = document.cookie.split(';');
    for(var i=0;i < ca.length;i++) {
        var c = ca[i];
        while (c.charAt(0)==' ') c = c.substring(1,c.length);
        if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
    }
    return null;
}

function deleteCookie(cname) {
    setCookie(cname,"",-1);
}

