var xmlHttp;
var xmlHttpExcerpts;
var xmlHttpMembersList;
var placeHolder;
var flashPlayerType;
var custMemberId;
var ctrlElement;

function resetL(userName, pwd, pwd2, memberId)
{
	placeHolder="resetLPlaceHolder";
	document.getElementById(placeHolder).innerHTML="<strong>Resetting password.... please wait.</strong>";
	ctrlElement="reset_password";
	document.getElementById(ctrlElement).disabled=true;

	xmlHttp=GetXmlHttpObject();
	if (xmlHttp==null)
	{
		alert("Browser does not support HTTP Request");
		return;
	} 
	var url="content/members/reset_member_password.php?min=" + memberId + "&user_name=" + userName + "&pwd=" + pwd+ "&pwd2=" + pwd2;

	xmlHttp.onreadystatechange=resetLstateChanged;
	xmlHttp.open("GET",url,true);
	xmlHttp.send(null);
	xmlHttp.onreadystatechange=resetLstateChanged;
}

function resetLstateChanged() 
{ 
	if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete")
	{ 
		document.getElementById(placeHolder).innerHTML=xmlHttp.responseText;
		document.getElementById(ctrlElement).disabled=false;
	} else
	{
		//alert('State not ready.  readyState=' + xmlHttp.readyState);
	}
} 


function getMiscVideoTOC(vid)
{
	//TODO:loop this
	document.getElementById('YSTZ21JUN2008').style.display = 'none';
	document.getElementById('YSB28JUN2008').style.display = 'none';

	if (vid=='YSTZ21JUN2008') {
		document.getElementById('YSTZ21JUN2008').style.display = 'block';
	} else if (vid=='YSB28JUN2008') {
		document.getElementById('YSB28JUN2008').style.display = 'block';
	}

	if (vid!='') {
		document.getElementById('display_area').style.display = 'block';
	}
}

function getMiscVideo(msgId, partId, vidLoc, vidArea)
{
	placeHolder=vidArea;
	document.getElementById(placeHolder).innerHTML="<strong>Preparing video.... please wait.</strong>";

	xmlHttp=GetXmlHttpObject();
	if (xmlHttp==null)
	{
		alert("Browser does not support HTTP Request");
		return;
	} 
	var url="/video_misc/" + vidLoc + "/get_video.php?msgid=" + msgId + "&partid=" + partId;

	xmlHttp.onreadystatechange=getVideoStateChanged;
	xmlHttp.open("GET",url,true);
	xmlHttp.send(null);
	xmlHttp.onreadystatechange=getVideoStateChanged;
}

function getVideoTOC(vid)
{
	//TODO:loop this
	document.getElementById('2009TG').style.display = 'none';
	document.getElementById('2009GMLL').style.display = 'none';
	document.getElementById('2009VDC').style.display = 'none';
	document.getElementById('2009SRVMTGBELL').style.display = 'none';
	document.getElementById('2009LTCNIBBRA').style.display = 'none';
	document.getElementById('2009BRAYA').style.display = 'none';
	document.getElementById('2009BRASSOT').style.display = 'none';
	//document.getElementById('2008CTC').style.display = 'none';
	document.getElementById('2008BRATT').style.display = 'none';
	document.getElementById('2008BRAYPCYWS').style.display = 'none';
	document.getElementById('2008YWCMHBMC').style.display = 'none';
	document.getElementById('2008LTCNIBBPO').style.display = 'none';
	document.getElementById('2008ECYWCC').style.display = 'none';
	document.getElementById('2008LTCNIBLBC').style.display = 'none';
	document.getElementById('2008SISMTGMRK').style.display = 'none';
	document.getElementById('display_area').style.display = 'none';

	if (vid=='2009TG') {
		document.getElementById('2009TG').style.display = 'block';
	} else if (vid=='2009GMLL') {
		document.getElementById('2009GMLL').style.display = 'block';
	} else if (vid=='2009VDC') {
		document.getElementById('2009VDC').style.display = 'block';
	} else if (vid=='2009LTCNIBBRA') {
		document.getElementById('2009LTCNIBBRA').style.display = 'block';
	} else if (vid=='2009SRVMTGBELL') {
		document.getElementById('2009SRVMTGBELL').style.display = 'block';
	} else if (vid=='2009BRAYA') {
		document.getElementById('2009BRAYA').style.display = 'block';
	} else if (vid=='2009BRASSOT') {
		document.getElementById('2009BRASSOT').style.display = 'block';
	} else if (vid=='2008LTCNIBBPO') {
		document.getElementById('2008LTCNIBBPO').style.display = 'block';
	} else if (vid=='2008ECYWCC') {
		document.getElementById('2008ECYWCC').style.display = 'block';
	} else if (vid=='2008LTCNIBLBC') {
		document.getElementById('2008LTCNIBLBC').style.display = 'block';
	} else if (vid=='2008YWCMHBMC') {
		document.getElementById('2008YWCMHBMC').style.display = 'block';
	} else if (vid=='2008BRAYPCYWS') {
		document.getElementById('2008BRAYPCYWS').style.display = 'block';
	} else if (vid=='2008BRATT') {
		document.getElementById('2008BRATT').style.display = 'block';
	} else if (vid=='2008CTC') {
		document.getElementById('2008CTC').style.display = 'block';
	} else if (vid=='2008SISMTGMRK') {
		document.getElementById('2008SISMTGMRK').style.display = 'block';
	}

	if (vid!='') {
		document.getElementById('display_area').style.display = 'block';
	}
}

function getVideo(msgId, partId, vidLoc, vidArea, flashPlyr)
{
	placeHolder=vidArea;
	flashPlayerType=flashPlyr;
	document.getElementById(placeHolder).innerHTML="<strong>Preparing video.... please wait.</strong>";

	xmlHttp=GetXmlHttpObject();
	if (xmlHttp==null)
	{
		alert("Browser does not support HTTP Request");
		return;
	} 
	var url="/video/" + vidLoc + "/get_video.php?msgid=" + msgId + "&partid=" + partId + "&token=" + new Date();

	xmlHttp.onreadystatechange=getVideoStateChanged;
	xmlHttp.open("GET",url,true);
	xmlHttp.send(null);
	xmlHttp.onreadystatechange=getVideoStateChanged;
}

function getVideoStateChanged() 
{
	if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete")
	{ 
		if (flashPlayerType && flashPlayerType=="jw") {
			parseScript(xmlHttp.responseText)
		} else {
			document.getElementById(placeHolder).innerHTML=parseScript(xmlHttp.responseText);
		}
	} else {
		//alert('State not ready.  readyState=' + xmlHttp.readyState);
	}
}

function parseScript(_source) {
	var source = _source;
	var scripts = new Array();

	// Strip out tags
	while(source.indexOf("<script") > -1 || source.indexOf("</script") > -1) {
		var s = source.indexOf("<script");
		var s_e = source.indexOf(">", s);
		var e = source.indexOf("</script", s);
		var e_e = source.indexOf(">", e);

		// Add to scripts array
		scripts.push(source.substring(s_e+1, e));
		// Strip from source
		source = source.substring(0, s) + source.substring(e_e+1);
	}

	// Loop through every script collected and eval it
	for(var i=0; i<scripts.length; i++) {
		try {
			eval(scripts[i]);
		}
		catch(ex) {
			window.status = ex;
		}
	}

	// Return the cleaned source
	return source;
}
	
function addChild(memberId, childId)
{
	placeHolder="addChildPlaceHolder";
	document.getElementById(placeHolder).innerHTML="<strong>Adding.... please wait.</strong>";
	custMemberId = memberId;
	
	xmlHttp=GetXmlHttpObject();
	if (xmlHttp==null)
	{
		alert("Browser does not support HTTP Request");
		return;
	} 
	var url="content/members/add_member_child.php?min=" + memberId + "&cin=" + childId;

	//url=url+"?q="+str;
	url=url+"?sid="+Math.random();
	xmlHttp.onreadystatechange=addChildStateChanged;
	xmlHttp.open("GET",url,true);
	xmlHttp.send(null);
	xmlHttp.onreadystatechange=addChildStateChanged;
}

function addChildStateChanged() 
{ 
	if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete")
	{ 
		document.getElementById(placeHolder).innerHTML=xmlHttp.responseText;
		getMemberChildren(custMemberId);
	} else
	{
		//alert('State not ready.  readyState=' + xmlHttp.readyState);
	}
} 

function deleteMemberChild(memberId, childId)
{
	placeHolder="addChildPlaceHolder";
	document.getElementById(placeHolder).innerHTML="<strong>Removing.... please wait.</strong>";
	custMemberId = memberId;
	
	xmlHttp=GetXmlHttpObject();
	if (xmlHttp==null)
	{
		alert("Browser does not support HTTP Request");
		return;
	} 
	var url="content/members/delete_member_child.php?min=" + memberId + "&cin=" + childId;

	//url=url+"?q="+str;
	xmlHttp.onreadystatechange=deleteMemberChildStateChanged;
	xmlHttp.open("GET",url,true);
	xmlHttp.send(null);
	xmlHttp.onreadystatechange=deleteMemberChildStateChanged;
}

function deleteMemberChildStateChanged() 
{ 
	if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete")
	{ 
		document.getElementById(placeHolder).innerHTML=xmlHttp.responseText;
		getMemberChildren(custMemberId);
	} else
	{
		//alert('State not ready.  readyState=' + xmlHttp.readyState);
	}
} 

function getMemberChildren(memberId)
{
	placeHolder="memberChildrenPlaceHolder";
	document.getElementById(placeHolder).innerHTML="Retrieving children.... please wait.";

	xmlHttp=GetXmlHttpObject();
	if (xmlHttp==null)
	{
		alert("Browser does not support HTTP Request");
		return;
	} 
	var url="content/members/get_member_children.php?min=" + memberId;

	xmlHttp.onreadystatechange=stateChanged;
	xmlHttp.open("GET",url,true);
	xmlHttp.send(null);
	xmlHttp.onreadystatechange=stateChanged;

	document.getElementById("addChildPlaceHolder").innerHTML="";
} 



function getTestimonies()
{
	document.getElementById("testimoniesPlaceHolder").innerHTML="<p>Retrieving entries....</p>";
	placeHolder="testimoniesPlaceHolder";

	xmlHttp=GetXmlHttpObject();
	if (xmlHttp==null)
	{
		alert("Browser does not support HTTP Request");
		return;
	} 
	var url="content/retrieve_testimonies.php";

	//url=url+"?q="+str;
	url=url+"?sid="+Math.random();
	xmlHttp.onreadystatechange=stateChanged;
	xmlHttp.open("GET",url,true);
	xmlHttp.send(null);
	xmlHttp.onreadystatechange=stateChanged;
} 

function getBannerYears()
{
	//clear other placeholders
	document.getElementById("bannerYearEventsPlaceHolder").innerHTML="";
	document.getElementById("bannerPlaceHolder").innerHTML="";
	
	document.getElementById("bannerYearsPlaceHolder").innerHTML="<p>Retrieving banner years....</p>";
	placeHolder="bannerYearsPlaceHolder";
	
	xmlHttp=GetXmlHttpObject();
	if (xmlHttp==null)
	{
		alert("Browser does not support HTTP Request");
		return;
	} 
	var url="_banner_years.php";

	//url=url+"?q="+str;
	url=url+"?sid="+Math.random();
	xmlHttp.onreadystatechange=stateChanged;
	xmlHttp.open("GET",url,true);
	xmlHttp.send(null);
	xmlHttp.onreadystatechange=stateChanged;
} 

function getBannerYearEvents(bannerYear)
{
	//clear other placeholders
	document.getElementById("bannerYearEventsPlaceHolder").innerHTML="";
	document.getElementById("bannerPlaceHolder").innerHTML="";


	document.getElementById("bannerYearEventsPlaceHolder").innerHTML="<p>Retrieving banner year events....</p>";
	placeHolder="bannerYearEventsPlaceHolder";
	
	xmlHttp=GetXmlHttpObject();
	if (xmlHttp==null)
	{
		alert("Browser does not support HTTP Request");
		return;
	} 
	var url="_banner_year_events.php?banneryear="+bannerYear;

	//url=url+"?q="+str;
	url=url+"?sid="+Math.random();
	xmlHttp.onreadystatechange=stateChanged;
	xmlHttp.open("GET",url,true);
	xmlHttp.send(null);
	xmlHttp.onreadystatechange=stateChanged;
} 

function getBannerText(bannerId)
{
	document.getElementById("bannerPlaceHolder").innerHTML="<p>Retrieving banner text....</p>";
	placeHolder="bannerPlaceHolder";
	
	xmlHttp=GetXmlHttpObject();
	if (xmlHttp==null)
	{
		alert("Browser does not support HTTP Request");
		return;
	} 
	var url="_banner_text.php?bannerid="+bannerId;

	//url=url+"?q="+str;
	url=url+"?sid="+Math.random();
	xmlHttp.onreadystatechange=stateChanged;
	xmlHttp.open("GET",url,true);
	xmlHttp.send(null);
	xmlHttp.onreadystatechange=stateChanged;
} 


function stateChanged() 
{ 
	if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete")
	{ 
		document.getElementById(placeHolder).innerHTML=xmlHttp.responseText;
	} else
	{
		//alert('State not ready.  readyState=' + xmlHttp.readyState);
	}
} 


function GetXmlHttpObject()
{ 
	var objXMLHttp=null;
	if (window.XMLHttpRequest)
	{
		objXMLHttp=new XMLHttpRequest();
	} else if (window.ActiveXObject)
	{
		objXMLHttp=new ActiveXObject("Microsoft.XMLHTTP");
	}
	return objXMLHttp;
}

function getVerse(versesDbCount)
{
	vsId = getRandomVerseSequenceId(versesDbCount);

	//clear placeholders
	document.getElementById("verseRefPlaceHolder").innerHTML="";
	document.getElementById("verseTextPlaceHolder").innerHTML="";

	document.getElementById("verseTextPlaceHolder").innerHTML="<p>Retrieving verse....</p>";
	placeHolder="verseRefPlaceHolder";
	
	xmlHttp=GetXmlHttpObject();
	if (xmlHttp==null)
	{
		alert("Browser does not support HTTP Request");
		return;
	} 
	var url="content/retrieve_verse.php?sequenceid="+vsId;

	//url=url+"?q="+str;
	url=url+"?sid="+Math.random();
	xmlHttp.onreadystatechange=getVerseStateChanged;
	xmlHttp.open("GET",url,true);
	xmlHttp.send(null);
}

function getRandomVerseSequenceId(versesDbCount)
{
	//Math.random() generates a random number between 0 and 1.
	//We then multiply this number by the number of available verses and round it off to the nearest integer.
	//var versesCount=3;
	//var i = Math.round((versesCount-1)*Math.random());
	var i = Math.round((parseInt(versesDbCount)-1)*Math.random());
	return i;
}

function getVerseStateChanged() 
{ 
	if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete")
	{ 
		responseText = xmlHttp.responseText;
		verse = responseText.substring(0, responseText.indexOf("_@@@@@_"));
		verseText = responseText.substring(responseText.indexOf("_@@@@@_") + 7, responseText.indexOf("_*****_"));
		verseHref = responseText.substring(responseText.indexOf("_*****_") + 7);
		document.getElementById("verseRefPlaceHolder").innerHTML= "<a href='" + verseHref + "' target='_blank'>" + verse + "</a>";
		document.getElementById("verseTextPlaceHolder").innerHTML = "<a href='" + verseHref + "' target='_blank'>" + verseText + "</a>";
	} else
	{
		//alert('State not ready.  readyState=' + xmlHttp.readyState);
	}
}


function getExcerpt(excerptsDbCount)
{
	exId = getRandomExcerptSequenceId(excerptsDbCount);

	//clear placeholders
	document.getElementById("excerptRefPlaceHolder").innerHTML="";
	document.getElementById("excerptTextPlaceHolder").innerHTML="";

	document.getElementById("excerptTextPlaceHolder").innerHTML="<p>Retrieving excerpt....</p>";
	placeHolder="excerptRefPlaceHolder";
	
	xmlHttpExcerpts=GetXmlHttpObject();
	if (xmlHttpExcerpts==null)
	{
		alert("Browser does not support HTTP Request");
		return;
	} 
	var url="content/retrieve_excerpt.php?sequenceid="+exId;

	//url=url+"?q="+str;
	url=url+"?sid="+Math.random();
	xmlHttpExcerpts.onreadystatechange=getExcerptStateChanged;
	xmlHttpExcerpts.open("GET",url,true);
	xmlHttpExcerpts.send(null);
}


function getYPExcerpt(excerptsDbCount)
{
	exId = getRandomExcerptSequenceId(excerptsDbCount);

	//clear placeholders
	document.getElementById("excerptRefPlaceHolder").innerHTML="";
	document.getElementById("excerptTextPlaceHolder").innerHTML="";

	document.getElementById("excerptTextPlaceHolder").innerHTML="<p>Retrieving excerpt....</p>";
	placeHolder="excerptRefPlaceHolder";
	
	xmlHttpExcerpts=GetXmlHttpObject();
	if (xmlHttpExcerpts==null)
	{
		alert("Browser does not support HTTP Request");
		return;
	} 
	var url="content/retrieve_excerpt_young_people.php?sequenceid="+exId;

	//url=url+"?q="+str;
	url=url+"?sid="+Math.random();
	xmlHttpExcerpts.onreadystatechange=getExcerptStateChanged;
	xmlHttpExcerpts.open("GET",url,true);
	xmlHttpExcerpts.send(null);
}

function getExcerptStateChanged() 
{ 
	if (xmlHttpExcerpts.readyState==4 || xmlHttpExcerpts.readyState=="complete")
	{ 
		responseText = xmlHttpExcerpts.responseText;
		excerpt = responseText.substring(0, responseText.indexOf("_@@@@@_"));
		excerptText = responseText.substring(responseText.indexOf("_@@@@@_") + 7, responseText.indexOf("_*****_"));
		excerptHref = responseText.substring(responseText.indexOf("_*****_") + 7);
		//for some reason, the page wouldn't pick up the style for the div; and so we're adding the <p> here.
		document.getElementById("excerptTextPlaceHolder").innerHTML = "<p>" + excerptText + "<br/><i>" + excerpt + "</i></p>" ;
		//document.getElementById("excerptRefPlaceHolder").innerHTML= "<p>" + excerpt + "</p>";

	} else
	{
		//alert('State not ready.  readyState=' + xmlHttpExcerpts.readyState);
	}
}

function getRandomExcerptSequenceId(excerptsDbCount)
{
	//Math.random() generates a random number between 0 and 1.
	//We then multiply this number by the number of available excerpts and round it off to the nearest integer.
	//var excerptsCount=3;
	//var i = Math.round((excerptsCount-1)*Math.random());
	var i = Math.round((parseInt(excerptsDbCount)-1)*Math.random());
	return i;
}

function getMembersList()
{
	document.getElementById("memberslistdiv").innerHTML="<p>Retrieving list....</p>";
	placeHolder="memberslistdiv";
	
	xmlHttpMembersList=GetXmlHttpObject();
	if (xmlHttpMembersList==null)
	{
		alert("Browser does not support HTTP Request");
		return;
	} 
	var _url="content/members/get_members_list.php";
	_url=_url+"?col=FN&ltr=J&sid="+Math.random();
	xmlHttpMembersList.onreadystatechange=getMembersListStateChanged;
	xmlHttpMembersList.open("GET",_url,true);
	xmlHttpMembersList.send(null);
}

function getMembersListStateChanged() 
{ 
	if (xmlHttpMembersList.readyState==4 || xmlHttpMembersList.readyState=="complete")
	{ 
		responseText = xmlHttpMembersList.responseText;
		document.getElementById("memberslistdiv").innerText = responseText;

	} else
	{
		//alert('State not ready.  readyState=' + xmlHttpExcerpts.readyState);
	}
}