
var shortTitle = "default";
var lookupParm = "title";
var domainRemainder = new Array();
var urlParse = new Array();
var numOfReq = 0;

if (altIssueNo == "default") {
	if (altTitleId == "default") {
		if (altTitleAbbr == "default") {
			shortTitle = currentPalette;
		} else {
			shortTitle = altTitleAbbr;
		}
	} else {
		shortTitle = altTitleId;
		lookupParm = "titleno";
	}
} else {
	shortTitle = altIssueNo;
	lookupParm = "issueno";
}


var fulltitle = new Array();
var titleid = new Array();
var	rptacct = new Array();
var rptcomp = new Array();
var	rptsubdomain = new Array();
var siteDept = new Array();
var siteName = new Array();
var	xmlTitle = new Array();
var url = new Array();
var pubacct = new Array();
var custName = new Array();

var s_account="";

var docEle = null;

function getDomain() {    
	var thisurl = window.location.href    
	var domainer = thisurl.substr(0,thisurl.indexOf('/',9));

	return domainer;
} 

function loadXMLSearch() {	
	var urlTemp = getDomain()+"/lookup/theme?"+lookupParm+"="+shortTitle; 
	
	
	// <%-- IE/Windows ActiveX version --%>    
	if (window.ActiveXObject) {
		reqSearch = new ActiveXObject("Microsoft.XMLHTTP");
        if (reqSearch) {
            reqSearch.onreadystatechange = processReqChangeSearch;
            reqSearch.open("GET", urlTemp, true);
            reqSearch.send();
        }
    } 
    // <%-- Native XMLHttpRequest object --%>
    else if (window.XMLHttpRequest) { 
    	reqSearch = new XMLHttpRequest();
        if(reqSearch) { 
			reqSearch.onreadystatechange = processReqChangeSearch; 
	        reqSearch.open("GET", urlTemp, true);
	        reqSearch.send(null);
		}
    }

}


function processReqChangeSearch() {	  
    if (reqSearch.readyState == 4) { 

		if (reqSearch.status == 200) { 

		 	var searchXML = XMLparse(reqSearch.responseText);
		 	var xmlObj = searchXML.documentElement;
	        	createSearchData(xmlObj);
		} 
        if (reqSearch.status == 404) { 
         	//<%-- 404 means that the session timed out --%>
        } 
        if (reqSearch.status != 404 && reqSearch.status != 200){
            //alert("There was a problem retrieving the data:\n" + reqSearch.statusText);
        }
    }
}



/**
 * Parse the XML document contained in the string argument and return
 * a Document object that represents it.
 */
function XMLparse(text) {
    if (typeof DOMParser != "undefined") {
        // Mozilla, Firefox, and related browsers
        return (new DOMParser()).parseFromString(text, "application/xml");
    }
    else if (typeof ActiveXObject != "undefined") {;
        // Internet Explorer.
        var doc = new ActiveXObject("MSXML2.DOMDocument");   // Create an empty document
        doc.loadXML(text);              //  Parse text into it
        return doc;                     // Return it
    }
    else {
        // As a last resort, try loading the document from a data: URL
        // This is supposed to work in Safari. Thanks to Manos Batsis and
        // his Sarissa library (sarissa.sourceforge.net) for this technique.
        var url = "data:text/xml;charset=utf-8," + encodeURIComponent(text);
        var request = new XMLHttpRequest();
        request.open("GET", url, false);
        request.send(null);
        return request.responseXML;
    }
} 


function createSearchData(xmlObj) {
	
	child = xmlObj.childNodes;
	for (i=0;i<child.length;i++) {
		fulltitle[i]    = child[i].getAttribute("fulltitle"); fulltitle[i]=fulltitle[i].trim();
		titleid[i]      = child[i].getAttribute("id");
		rptacct[i]      = child[i].getAttribute("rptacct");
		pubacct[i]      = child[i].getAttribute("pubacct");
		rptcomp[i]      = child[i].getAttribute("rptcomp");
		rptsubdomain[i] = child[i].getAttribute("rptsubdomain");
		siteDept[i]     = child[i].getAttribute("siteDept");
		siteName[i]     = child[i].getAttribute("siteName");
		xmlTitle[i]     = child[i].getAttribute("title");
		url[i]          = child[i].getAttribute("url");
		custName[i]     = child[i].getAttribute("custName"); custName[i]=custName[i].trim();
	}

	
	
	numOfReq = custName.length;

// get url info for tracking server	
	for (i=0;i<url.length;i++){
		urlParse = url[i].split('.');
		var urlParseLength = urlParse.length;
		domainRemainder[i] = urlParse[urlParseLength - 2] +"."+urlParse[urlParseLength - 1];
	}
	

// Check for redundent accounts.	
	var accounts = rptacct.join().split(",");
	for (i=0;i<accounts.length;i++) {
		for (j=i+1;j<accounts.length;j++) {
			if (accounts[i] == accounts[j]) {
				accounts.splice(j,1);
				j--;
			}
		}
	}


	
// Set the s_account.	
	rptacct=accounts;
	s_account=pubacct[0];
	if (altRptAcct == "default") {
		for (i=0;i<rptacct.length;i++) {
			if (rptacct[i] != "") {
				s_account+= "," + rptacct[i];
			}
		}
	} else if (altRptAcct != "none") {
		s_account+= "," + altRptAcct;
	}
	//alert(s_account);

	
// call the s_code
	var headID = document.getElementsByTagName("head")[0];         
	var newScript = document.createElement('script');
	newScript.type = 'text/javascript';
	newScript.src = 'http://cdn.epubxpress.com/js/s_code.js';
	headID.appendChild(newScript);
	
	
// Call the Catalyst function to send page information for tracking purposes.	
	setTimeout("callCat()",1000);

	

}


function callCat() { 
		catalyst(0);
}
