/*
	Written by Jonathan Snook, http://www.snook.ca/jonathan
	Add-ons by Robert Nyman, http://www.robertnyman.com
*/
function getElementsByClassName(oElm, strTagName, strClassName){
	var arrElements = (strTagName == "*" && oElm.all)? oElm.all : oElm.getElementsByTagName(strTagName);
	var arrReturnElements = new Array();
	strClassName = strClassName.replace(/-/g, "\-");
	var oRegExp = new RegExp("(^|\s)" + strClassName + "(\s|$)");
	var oElement;
	for(var i=0; i<arrElements.length; i++){
		oElement = arrElements[i];
		if(oRegExp.test(oElement.className)){
			arrReturnElements.push(oElement);
		}
	}
	return (arrReturnElements)
}
// END


function myInnHide(innId) {
	document.getElementById("myInnsDiv"+innId).style.display="none";
}

function myInnsTable(innId) {
	var topbar="<div style='background-color:white;	border:1px solid black;'><div class='myInnsClose'><img src='http://www.BnBFinder.com/images/SA_noAccept.png' onclick=myInnHide('"+innId+"')></div><br/>&nbsp;";
	var bottombar="</div>";
	
	// Set up the request
	var xmlhttp =  new XMLHttpRequest();
	xmlhttp.open('POST', '/myInnsAJAX.php', true);

	// The callback function
	xmlhttp.onreadystatechange = function() {
		if (xmlhttp.readyState == 4) {
			if (xmlhttp.status == 200) {
				var text = xmlhttp.responseXML.documentElement.getElementsByTagName("text");
				var myInnText = text[0].getElementsByTagName("myInnText")[0].firstChild.data;
				
				document.getElementById("myInnsDiv"+innId).innerHTML=topbar+myInnText+bottombar;
				//close all other DIVs
				var closeThese = getElementsByClassName(document, "div", "myInnsFloatingBox");
				for (var i=0; i<closeThese.length; i++) {
					document.getElementById(closeThese[i].id).style.display="none";
				}
				
				document.getElementById("myInnsDiv"+innId).style.display="block";
			}
		}
	}

	// Send the POST request
	xmlhttp.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
	xmlhttp.send('innId=' + innId);

}

function myInnCreateLogin(id) {
	var email = document.getElementById('myInnEmail'+id).value;
	var password = document.getElementById('myInnPassword'+id).value;
	
	// Set up the request
	var xmlhttp =  new XMLHttpRequest();
	xmlhttp.open('POST', '/myInnsAJAX.php', true);

	// The callback function
	xmlhttp.onreadystatechange = function() {
		if (xmlhttp.readyState == 4) {
			if (xmlhttp.status == 200) {
				var text = xmlhttp.responseXML.documentElement.getElementsByTagName("text");
				error=text[0].getElementsByTagName("error")[0].firstChild.data;
				
				if (error == '') {
					document.getElementById('myInnsFrame').src=document.getElementById('myInnsFrame').src;
					document.getElementById("myInnsDiv"+id).style.display="none";
				}else if(error[0]=='L') {//first letter of failure (quick easy way of seperating the new user from the login exists error)
					document.getElementById("myInnError"+id).innerHTML =error;
				}else {
					document.getElementById("signInButton"+id).style.display='none';
					document.getElementById("newUserButton"+id).style.display='none';
					document.getElementById("myInnError"+id).innerHTML =error;
				}
			}
		}
	}

	// Send the POST request
	xmlhttp.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
	xmlhttp.send('fxn=create&email=' + email + '&pswd='+password+'&myInnDivId='+id);
}

function myInnCreateLogin2(id) {
	var email = document.getElementById('myInnEmail'+id).value;
	var password = document.getElementById('myInnPassword'+id).value;
	var mailingCheck = document.getElementById('joinMailingList').checked;
	
	if (mailingCheck == true) {
		var mailingList='y';
	}else {
		var mailingList='n';
	}
	
	// Set up the request
	var xmlhttp =  new XMLHttpRequest();
	xmlhttp.open('POST', '/myInnsAJAX.php', true);

	// The callback function
	xmlhttp.onreadystatechange = function() {
		if (xmlhttp.readyState == 4) {
			if (xmlhttp.status == 200) {
				var text = xmlhttp.responseXML.documentElement.getElementsByTagName("text");
				error=text[0].getElementsByTagName("error")[0].firstChild.data;
				
				if (error == '') {
					document.getElementById('myInnsFrame').src=document.getElementById('myInnsFrame').src;
					myInnsTable(id);
				}else {
					document.getElementById("signInButton"+id).style.display='none';
					document.getElementById("newUserButton"+id).style.display='none';
					document.getElementById("myInnError"+id).innerHTML =error;
				}
			}
		}
	}

	// Send the POST request
	xmlhttp.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
	xmlhttp.send('fxn=create2&email=' + email + '&pswd='+password+'&myInnDivId='+id+'&mailingList='+mailingList);
}

function myInnSignIn(id) {
	var email = document.getElementById('myInnEmail'+id).value;
	var password = document.getElementById('myInnPassword'+id).value;
	
	// Set up the request
	var xmlhttp =  new XMLHttpRequest();
	xmlhttp.open('POST', '/myInnsAJAX.php', true);

	// The callback function
	xmlhttp.onreadystatechange = function() {
		if (xmlhttp.readyState == 4) {
			if (xmlhttp.status == 200) {
				var text = xmlhttp.responseXML.documentElement.getElementsByTagName("text");
				error=text[0].getElementsByTagName("error")[0].firstChild.data;
				
				if (error == '') {
					document.getElementById('myInnsFrame').src=document.getElementById('myInnsFrame').src;
					myInnsTable(id);
				}else {
					document.getElementById("myInnError"+id).innerHTML =error;
				}
			}
		}
	}

	// Send the POST request
	xmlhttp.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
	xmlhttp.send('fxn=signin&email=' + email + '&pswd='+password+'&myInnDivId='+id);
}

function myInnForgot(id) {
	var email = document.getElementById('myInnEmail'+id).value;
	
	// Set up the request
	var xmlhttp =  new XMLHttpRequest();
	xmlhttp.open('POST', '/myInnsAJAX.php', true);

	// The callback function
	xmlhttp.onreadystatechange = function() {
		if (xmlhttp.readyState == 4) {
			if (xmlhttp.status == 200) {
				var text = xmlhttp.responseXML.documentElement.getElementsByTagName("text");
				error=text[0].getElementsByTagName("error")[0].firstChild.data;
				
				if (error == '') {
					//document.getElementById('myInnsFrame').src=document.getElementById('myInnsFrame').src;
					//document.getElementById("myInnsDiv"+id).style.display="none";
				}else {
					document.getElementById("myInnError"+id).innerHTML =error;
				}
			}
		}
	}

	// Send the POST request
	xmlhttp.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
	xmlhttp.send('fxn=forgot&email=' + email + '&myInnDivId='+id);
}

function myInnLogout(id) {
	// Set up the request
	var xmlhttp =  new XMLHttpRequest();
	xmlhttp.open('POST', '/myInnsAJAX.php', true);

	// The callback function
	xmlhttp.onreadystatechange = function() {
		if (xmlhttp.readyState == 4) {
			if (xmlhttp.status == 200) {
				var text = xmlhttp.responseXML.documentElement.getElementsByTagName("text");
				error=text[0].getElementsByTagName("error")[0].firstChild.data;

				if (error == '') {
					document.getElementById('myInnsFrame').src=document.getElementById('myInnsFrame').src;
					document.getElementById("myInnsDiv"+id).style.display="none";
				}else {
					document.getElementById("myInnError"+id).innerHTML =error;
				}
			}
		}
	}

	// Send the POST request
	xmlhttp.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
	xmlhttp.send('fxn=logout');
}

function myInnAdd(innId) {
	// Set up the request
	var xmlhttp =  new XMLHttpRequest();
	xmlhttp.open('POST', '/myInnsAJAX.php', true);

	// The callback function
	xmlhttp.onreadystatechange = function() {
		if (xmlhttp.readyState == 4) {
			if (xmlhttp.status == 200) {
				var text = xmlhttp.responseXML.documentElement.getElementsByTagName("text");
				error=text[0].getElementsByTagName("error")[0].firstChild.data;

				if (error == '') {
					document.getElementById('myInnsFrame').src=document.getElementById('myInnsFrame').src;
					myInnsTable(innId);
				}else {
					document.getElementById("myInnError"+innId).innerHTML =error;
				}
			}
		}
	}

	// Send the POST request
	xmlhttp.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
	xmlhttp.send('fxn=addInn&innId='+innId);
}

function myInnRemove(innId) {
	// Set up the request
	var xmlhttp =  new XMLHttpRequest();
	xmlhttp.open('POST', '/myInnsAJAX.php', true);

	// The callback function
	xmlhttp.onreadystatechange = function() {
		if (xmlhttp.readyState == 4) {
			if (xmlhttp.status == 200) {
				var text = xmlhttp.responseXML.documentElement.getElementsByTagName("text");
				error=text[0].getElementsByTagName("error")[0].firstChild.data;

				if (error == '') {
					document.getElementById('myInnsFrame').src=document.getElementById('myInnsFrame').src;
					myInnsTable(innId);
				}else {
					document.getElementById("myInnError"+innId).innerHTML =error;
				}
			}
		}
	}

	// Send the POST request
	xmlhttp.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
	xmlhttp.send('fxn=removeInn&innId='+innId);
}