﻿//
//====================================================================================================
//
//					   Copyright Notice
//                                            Version 1.0
//
//                                        Copyright (c) 2009
//                                          Linda Walters
//                                       All Rights Reserved
//
//====================================================================================================
//

//==================================================
//		     CONSTANTS
//==================================================
var DASH			= "-";
var CRLF			= "<br />";
var DEFAULT_QUOTE_DIVISION	= "quoteDivision";

var quoteArray;




function SelectQuote(quoteDivision, xmlFile)
{
var bResult;
var fRandom;
var iIndex;
var currentDocument;
var oQuoteDiv;
var sButton;


	bResult = true;

	try {
		if ((quoteArray != null) && (quoteArray.length <= 0)) {
			LoadQuotes(xmlFile);
		} else {
			LoadQuotes(xmlFile);
		}

		fRandom = Math.random();
		iIndex = Math.round((fRandom * quoteArray.length) % (quoteArray.length - 1));
		currentDocument = window.document;
		oQuoteDiv = currentDocument.getElementById(quoteDivision);
		oQuoteDiv.innerHTML = quoteArray[iIndex]; 
	} catch(ex) {
		bResult = false;
	}

	return(bResult);
} // function SelectQuote()




var gText = "";
var gAuthor    = "";


function LoadQuotes(xmlFile) {
var xmlHttp;
var xmlDoc;

	if (window.ActiveXObject) {
		xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
	} else if (window.XMLHttpRequest) {
		xmlHttp = new XMLHttpRequest();
		GeckoFamily = true;
	} else {
		alert("Error - Cannot create xmlHttp object");
	} // end if (window.ActiveXObject)

	xmlHttp.open("GET", xmlFile, false);
	xmlHttp.send(null);

	try {
		if (window.ActiveXObject) {
			xmlDoc = new ActiveXObject("Microsoft.XMLDOM");
			xmlDoc.loadXML(xmlHttp.responseText);
		} else {
	  		xmlDoc = xmlHttp.responseXML;
			GeckoFamily = true;
		} // end if (window.ActiveXObject)

	} catch (ex) {
		alert("Error creating xmlDoc");
	} // end try..catch

	try {
		var xmlRootNode = xmlDoc.firstChild;
		var xmlChildren = xmlRootNode.childNodes;
	} catch (ex) {
		alert("Error creating xmlRootNode or xmlChildren");
	} // end try..catch

	for (var i = 0, iMax = xmlChildren.length; i < iMax; i++) {
		var xmlChildNode = xmlChildren[i];
		if (xmlChildNode.nodeName == "quotes") {
			var children = xmlChildNode.childNodes;
			var child;
			var entry;

			quoteArray = new Array();

			for (var j = 0; j < children.length; j++) {
				child = children[j];
				
				if (child.nodeName == "quote") {
					gText = child.getAttribute("text");
					gAuthor = child.getAttribute("author");
					entry = "<div style='text-align:center'><span>&quot;" + gText + "&quot;</span><br /><span>- " + gAuthor + "</span></div>"
					quoteArray.push(entry);
				}
			}
		}
	} // end for (var i = 0, iMax = xmlChildren.length; i < iMax; i++)

	return(true);
}

