var adminControlState = false;

function checkUserAgent() {
if (( id != "") && (navigator.userAgent.indexOf("iPhone") > 0) ) {
	if (document.location.href.indexOf("/html/eng/public") != -2) {
		document.location.href = "/mobile/eng/public/" + id + ".shtml";
	} else {
		// ??
	}
}
}

function checkHostname() {

if (( id != "") && (navigator.userAgent.indexOf("iPhone") > 0) ) {
	if (( id != "") && (document.location.hostname != (siteServer + siteDomain)) ) {
		document.location.href = ("http://" + siteServer + siteDomain) + "/mobile/eng/public/" + id + ".shtml";
	}
} else {
	if (( id != "") && (document.location.hostname != (siteServer + siteDomain)) ) {
		document.location.href = ("http://" + siteServer + siteDomain) + "/html/eng/public/" + id + ".shtml";
	}
}



}



function getBanner() {
var outString = "";

if (!(sessionObject.userid)) {
	
	outString += ("<div style=\"margin-bottom:3px;\"><a href=\"" + sslPrefix + "://" + siteServer + siteDomain + "/cgi-bin/login.pl\" class=\"topnavlink\" style=\"font-size:12px;\">Sign In</a></div>");
	
} else {
	
	outString += ("<div class=\"topnavlink\" style=\"margin-bottom:3px;font-weight:normal;font-size:12px;color:#8d8d8d;\">Welcome, " + userObject.firstname + "&nbsp;" + userObject.lastname + "</div>");
	outString += ("<div>");
	
	if (userObject.userclass == "admin") {
		outString += ("<a href=\"#\" onClick=\"return adminControl();\" class=\"topnavlink\" style=\"font-size:10px;color:#8d8d8d;\" >ADMIN</a>&nbsp;&bull;&nbsp;");
	}
	
	outString += ("<a href=\"/cgi-bin/myaccount.pl\" class=\"topnavlink\" style=\"font-weight:normal;font-size:10px;color:#8d8d8d;\">My Account</a>");
	outString += ("&nbsp;&bull;&nbsp;<a href=\"/cgi-bin/login.pl?mode=logout\" class=\"topnavlink\" style=\"font-size:10px;font-weight:normal;color:#8d8d8d;\">Sign&nbsp;Out</a>");

	outString += ("</div>");
	
}

document.writeln(outString);
}






function getFooter(){
var outString = "";

	if (sessionObject.userid == "") {
	
		outString += ("<div style=\"margin-bottom:3px;\"><a href=\"" + sslPrefix + "://" + siteServer + siteDomain + "/cgi-bin/login.pl\" class=\"topnavlink\" style=\"font-size:12px;\">Sign In</a></div>");
		
	}
	else {
	
	
		if (sessionObject.userinterface == "html") {
			outString += ("<a href=\"javascript:doNothing();\" onClick=\"return setSessionInterface('mobile');\" class=\"topnavlink\" style=\"font-size:10px;color:#F18238;\" >Switch to Mobile</a>&nbsp;|&nbsp;");
			//outString += ("<span class=\"topnavlink\" style=\"font-size:10px;color:#8d8d8d;\" >Desktop</span>&nbsp;|&nbsp;");
		}
		if (sessionObject.userinterface == "mobile") {
			//outString += ("<span class=\"topnavlink\" style=\"font-size:10px;color:#8d8d8d;\" >Mobile</span>&nbsp;|&nbsp;");
			outString += ("<a href=\"javascript:doNothing();\" onClick=\"return setSessionInterface('html');\" class=\"topnavlink\" style=\"font-size:10px;color:#F18238;\" >Switch to Desktop</a>&nbsp;|&nbsp;");
		}
		
		outString += ("<a href=\"/cgi-bin/myaccount.pl\" class=\"topnavlink\" style=\"font-weight:normal;font-size:10px;color:#8d8d8d;\">My Account</a>");
		outString += ("&nbsp;|&nbsp;<a href=\"/cgi-bin/login.pl?mode=logout\" class=\"topnavlink\" style=\"font-size:10px;font-weight:normal;color:#8d8d8d;\">Sign&nbsp;Out</a>");
		
		
	}
	
	document.writeln(outString);

return (false);
}


function setSessionInterface(interfacePref) {
	var theURL = "/cgi-bin/setsession.pl";
	var vars = ("interface=" + interfacePref);
	sendAjax(theURL, vars, catchSessionInterfaceSubmit);
}

function catchSessionInterfaceSubmit(msg) {
	//alert("Catching message from setsession:" + msg);
	if (sessionObject.userinterface == "html") {
		// This is a generated HTML page - redirect to mobile directory
		var newURL = document.location.href;
		newURL.replace(/\/html\//, "/mobile/");
		document.location.href = newURL;
	} else {
		var newURL = document.location.href;
		newURL.replace(/\/mobile\//, "/html/");
		document.location.href = newURL;
	}
}


function getBreadcrumb() {
	var outString = "";
	
	outString += ("<a href=\"http://" + siteServer + siteDomain + "\" class=\"breadcrumb\">Home</a>");

	if ( (moduleName != "") && (moduleName != "generate") || (moduleName != "webdocs") ) {
		outString += ("&nbsp;<span class=\"breadcrumb\">&gt; <a href=\"http://" + siteServer + siteDomain + "/cgi-bin/" + moduleName + ".pl\" class=\"breadcrumb\">" + moduleTitle + "</a>");
	}
	
	if (mode != "") {
		//outString += ("&nbsp;<span class=\"breadcrumb\">&gt; <a href=\"http://" + siteServer + siteDomain + "/cgi-bin/" + moduleName + ".pl?mode=" + mode + "\" class=\"breadcrumb\">" + mode + "</a>");
	}
	

	if (title != "") {
		outString += ("&nbsp;<span class=\"breadcrumb\">&gt; <a href=\"http://" + siteServer + siteDomain + "/cgi-bin/" + moduleName + ".pl?mode=" + mode + "&id=" + id + "\" class=\"breadcrumb\">" + title + "</a>");
	}
	
	return(outString);
}

// admin controls
function adminControl()
{		
		var outstring = "";
		outstring += "<div style=\"background-color:#FFFFFF;\">";
		outstring += "<table border=\"0\" cellpadding=\"6\"><tr>";
		outstring += "<td align=\"left\" valign=\"top\">";

		
		if ( (moduleName == "generate") || (moduleName == "webdocs") ) {
			outstring += "<div style=\"margin-top:9px;font-size:14px;font-weight:bold;\">";
			outstring += "<a href=\"/cgi-bin/webdocs.pl?mode=edit&id=" + id + "\">Edit This Web Page</a>&nbsp;|&nbsp;";
	
			outstring +="<a href=\"/cgi-bin/webdocs.pl?mode=generate&id=" + id + "\">Generate This Page</a>&nbsp;|&nbsp;";
	
			outstring +="</div>";
		}
		if ( (id) && (moduleName == "products") ) {
			outstring += "<div style=\"margin-top:9px;font-size:14px;font-weight:bold;\">";
			outstring += "<a href=\"/cgi-bin/products.pl?mode=edit&id=" + id + "\">Edit This Product</a>";
			outstring +="</div>";
		}


		outstring += "<div style=\"margin-top:9px;font-size:12px;\">";

		outstring +="<a href=\"/cgi-bin/home.pl\" style=\"text-decoration:none;\">Home</a>&nbsp;&nbsp;&nbsp;&nbsp;";

		outstring +="<a href=\"/cgi-bin/generate_recipes_html.pl\" style=\"text-decoration:none;\" onClick=\"return topMessageURL(this.href);\" target=\"_blank\">Generate Recipes HTML</a>&nbsp;&nbsp;&nbsp;&nbsp;";

		outstring +="<a href=\"/cgi-bin/issues.pl?mode=search&status=assigned&userid=mine\" style=\"text-decoration:none;\">My Issues</a>&nbsp;&nbsp;&nbsp;&nbsp;";

		outstring +="<a href=\"/cgi-bin/projects.pl?mode=search&status=assigned&status=new&status=in%20progress&userid=mine\" style=\"text-decoration:none;\">My Projects</a>";
		outstring +="</div>\n\n";


		outstring += "<div style=\"margin-top:9px;font-size:12px;\">\n\n";
		outstring += returnLink('accounts', 'Accounts');
		outstring += returnLink('images', 'Images');
		outstring += returnLink('invoices', 'Invoices');
		outstring += returnLink('mailq', 'MailQ');
		outstring += returnLink('people', 'People');
		outstring += returnLink('punches', 'Punches');
		outstring += returnLink('valuelists', 'Valuelists');
		outstring += returnLink('webdocs', 'Webdocs');



		
		outstring +="</div>\n\n";


		outstring +="<div style=\"margin-top:18px;\"><a href=\"javascript:hideAdminControl();\" style=\"font-size:9px;\">Hide This<\/a></div>\n\n";

		outstring +="</td>\n\n";
		outstring += "</tr></table>";
		outstring +="</div>\n\n";
		//document.writeln(outstring);
		//alert("Writing admin controls with " + outstring.length + " characters");
		var target = document.getElementById("adminControls");
		if (!(adminControlState)) {
			if (target) {
				target.innerHTML = (outstring);
			}
			adminControlState = true;
		} else {
			target.innerHTML = "";
			adminControlState = false;
		}
return(false);
}




function getBrowserName() {
var browserName;
var browserVersion;

if (/MSIE (\d+\.\d+);/.test(navigator.userAgent)){ //test for MSIE x.x;
 browserName = "MSIE";
}

if (/Firefox[\/\s](\d+\.\d+)/.test(navigator.userAgent)){ //test for Firefox/x.x or Firefox x.x (ignoring remaining digits);
 browserName = "Firefox";
}

if (/Opera[\/\s](\d+\.\d+)/.test(navigator.userAgent)){ //test for Firefox/x.x or Firefox x.x (ignoring remaining digits);
 browserName = "Opera";
}

if (/Safari[\/\s](\d+\.\d+)/.test(navigator.userAgent)){ //test for Firefox/x.x or Firefox x.x (ignoring remaining digits);
 browserName = "Safari";
}
browserVersion=new Number(RegExp.$1) // capture x.x portion and store as a number
browserName = (browserName + "-" + browserVersion);
return(browserName);
}



function insertClick() {
}

function defineUser(userid, username, firstname, lastname, userclass) {
this.userid = userid;
this.username = username;
this.firstname = firstname;
this.lastname = lastname;
this.userclass = userclass;
}

function getSelectVal(theElem) {
var idx = theElem.selectedIndex;
var val = "";
if (idx > -1) {
	val = theElem.options[idx].value;
}
return(val);
}


function setSelectVal(theElem, theVal) {
var numOpts = theElem.options.length;
var i;
var foundOpt = false;
for (i=0;i<numOpts;i++) {
	if (theElem.options[i].value == theVal) {
		theElem.options[i].selected = true;
		foundOpt = true;
	}
}
return(foundOpt);
}



function getRadioVal(theElems) {
var elem;
var val = "";
var idx;
var numElems = theElems.length;

if (numElems > 1) {
	for (idx=0;idx<numElems;idx++) {
		var theElem = theElems[idx];
		if (theElem.checked == true) {
			val = theElem.value;	
		}
	}
} else {
	if (theElems[0].checked == true) {
		val = theElem.value;	
	}
}
return(val);
}

// set the radio button with the given value as being checked
// do nothing if there are no radio buttons
// if the given value does not exist, all the radio buttons
// are reset to unchecked
function setRadioVal(radioObj, newValue) {
	if(!radioObj)
		return;
	var radioLength = radioObj.length;
	if(radioLength == undefined) {
		radioObj.checked = (radioObj.value == newValue.toString());
		return;
	}
	for(var i = 0; i < radioLength; i++) {
		radioObj[i].checked = false;
		if(radioObj[i].value == newValue.toString()) {
			radioObj[i].checked = true;
		}
	}
}




function fillTodaysDate(theElem) {
var today = new Date();
var theYear = today.getYear();
if (theYear < 1000) {
	theYear += 1900;
}
var theMonth = (today.getMonth() + 1);
var dateval = (theMonth + "/" + today.getDate() + "/" + theYear);
//alert("filling today's date:" + dateval);
theElem.value = dateval;
return(false);
}



function fillCurrentTime(theElem) {
var today = new Date();
var theHour = today.getHours();
var theMinute = (today.getMinutes());
var dateval = (theHour + ":" + theMinute);

theElem.value = dateval;
return(false);
}


function shortDate(theDate) {
var retval = (theDate.getMonth()+1) + "/" + (theDate.getDate()) + "/" + (theDate.getFullYear());
return(retval);
}




function shortUNIXDate(unixDate) {
var edate = parseInt(unixDate);
var thisDate = new Date();
thisDate.setTime(edate * 1000);
var outString = (thisDate.getMonth()+1) + "/" + thisDate.getDate() + "/" + thisDate.getFullYear();
return(outString);              
}



function fillFilename(filename, targElem) {
var start = filename.lastIndexOf("/");

if (start < 1) {
        start = filename.lastIndexOf("\\");
}

if (start < 1) {
        start = filename.lastIndexOf(":");
}

var file = filename.substring(start+1,filename.length);
if (file != '') {
        targElem.value = file;
}

}





function writeWindow(windowname, opener, htmltext, params, focus) {
sWindow = window.open('',windowname,params);
sWindow.document.open();
sWindow.document.write(htmltext);
sWindow.document.close();
if (!focus)  opener.focus(); 
//if (focus) opener.blur();
return (sWindow);
}

function relocateOpener(targetwindow, newurl) {
targetwindow.document.location.href=newurl;
targetwindow.focus();
return (false);
}

function relocDisplayFrame (theURL) {
//alert("relocating frame to " + theURL);
parent.frames['display'].document.location.href = theURL;
return(false);
}



function popWindow(inWindowname, opener, URL, inParams) {
var defaultParams = "width=950,height=500,scrollbars=yes,menubar=no,location=no,status=yes,resizable";
var defaultWindowname = "Popup Window";
var params;
var windowname;

if (!inParams) {
 params = defaultParams;
} else {
 params = inParams;
}
if (!inWindowname) {
 windowname = defaultWindowname;
} else {
 windowname = inWindowname;
}
var uWindow = window.open(URL,windowname,params);
return(false);
}


function popSelectURL(theElem) {
var theURL = getSelectVal(theElem);
popURL(theURL);
theElem.selectedIndex = 0;
}


var popWindowParams = ("width=" + (screen.availWidth-20) + ",height=" + (screen.availHeight-20) + ",resizable,toolbar=yes,location=yes,status=yes,scrollbars=yes");

function popURL(theURL) {
if (theURL != "") {
        popWindow('Popper', this.window, theURL, popWindowParams);
}
return(false);
}




function fixDecimals(value) {
var rv = value;

rv = roundAccuracy(value, 2);

//rv = oldFixDecimals(rv);
return (rv);

}

function roundAccuracy(num, accuracy){
	var factor=Math.pow(10,accuracy);
	return Math.round(num*factor)/factor;
}





function toggleCanvas(canvasName, checkedState) {
var targetCanvas = document.getElementById("canvas" + canvasName);
if (checkedState == true) {
        var sourceCanvas = document.getElementById("source" + canvasName);
        targetCanvas.innerHTML = sourceCanvas.innerHTML;
} else {
        targetCanvas.innerHTML = "";
}
return(false);
}

function goToSelectURL(theElem) {
 var theURL = getSelectVal(theElem);
 theElem.selectedIndex = 0;
 document.location.href=(theURL);
}





function updateStatus(theHTML) {
var canvasResponse = document.getElementById('canvasStatus');
canvasResponse.innerHTML = theHTML;
//document.location.href = (originalURL + "#reviews");
}


function reloadPage() {
window.location.reload();
}

function doNothing () { }






function fillFilename(filename, targElem) {
var start = filename.lastIndexOf("/");

if (start < 1) {
	start = filename.lastIndexOf("\\");
}

if (start < 1) {
	start = filename.lastIndexOf(":");
}

var file = filename.substring(start+1,filename.length);
if (file != '') {
	targElem.value = file;
}

targElem.form.submit();

}






function getXMLHttpRequest()
{
   if (window.XMLHttpRequest) {
       return new XMLHttpRequest();
   } else if (window.ActiveXObject) {
       var arrSignatures = ["MSXML2.XMLHTTP.5.0", "MSXML2.XMLHTTP.4.0",
               "MSXML2.XMLHTTP.3.0", "MSXML2.XMLHTTP",
               "Microsoft.XMLHTTP"];

       for (var i=0; i < arrSignatures.length; i++) {
           try {

               var oRequest = new ActiveXObject(arrSignatures[i]);

               return oRequest;

           } catch (oError) {
               //ignore
           }
       }
   }

   return null;
}



function sendAjax(url, vars, callbackFunction) {
//alert("Sending review to: " + url);

var request = getXMLHttpRequest();

request.open("POST", url, true);
request.setRequestHeader("Content-Type", "application/x-www-form-urlencoded"); 

request.onreadystatechange = function(){

                if (request.readyState == 4 && request.status == 200) {

                                if (request.responseText){

                                                callbackFunction(request.responseText);
                                }
                }
}
request.send(vars);

}




function sendAjaxXML(url, vars, callbackFunction) {

var request = getXMLHttpRequest();

request.open("POST", url, true);
request.setRequestHeader("Content-Type", "application/x-www-form-urlencoded"); 

request.onreadystatechange = function(){

		if (request.readyState == 4 && request.status == 200) {

				if (request.responseXML){

						callbackFunction(request.responseXML);
				}
		}
}
request.send(vars);

}






function sendAjaxGETXML(url, callbackFunction) {
//alert("Sending review to: " + url);

var request = getXMLHttpRequest();

request.open("GET", url, true);
var vars = "";
request.onreadystatechange = function(){

                if (request.readyState == 4 && request.status == 200) {

                                if (request.responseText){

                                                callbackFunction(request.responseXML);
                                }
                }
}
request.send(vars);

}


function loadContentAJAX(url, targetName) {

		var xhReq = getXMLHttpRequest();
 		xhReq.open("GET", url, true);
		xhReq.onreadystatechange = function() {
   			if (xhReq.readyState == 4)  { 
   		   	var resp = xhReq.responseText;
   			document.getElementById(targetName).innerHTML=resp;
   			}
   		};
   		xhReq.send(null);

}




function userWelcomeMessage(messageString) {
var canvas = document.getElementById('userWelcome');
if (canvas) {
	canvas.innerHTML = messageString;
}
}

function setInnerHTML(elementId, messageString) {
var canvas = document.getElementById(elementId);
if (canvas) {
	canvas.innerHTML = messageString;
}
}



function hideAdminControl() {
var target = document.getElementById("adminControls");
if (target) {
	target.innerHTML = ("");
}
}



function returnLink(scriptName, linkTitle, topMargin, theURL) {
if (!(topMargin)) { topMargin = 6; }
if (!(theURL)) { theURL = ("/cgi-bin/" + scriptName + ".pl"); }
var outstring = ("<a href=\"" + theURL + "\" style=\"font-size:12px;text-decoration:none;\">" + linkTitle + "</a>&nbsp;|&nbsp;\n\n");
return(outstring);	
}


function getFormElementRadio(elemName, optionsArray, valuesArray) {
var outString = "";
var idx;
for(idx=0;idx<optionsArray.length;idx++) {
	var checkedState = false;
	var vidx;
	for(vidx=0;vidx<valuesArray.length;vidx++) {
		if (valuesArray[vidx] == optionsArray[idx]) {
			checkedState = true;
		}
	}
	outString += ("<input type=\"radio\" name=\"" + elemName + "\" value=\"" + optionsArray[idx] + "\" ");
	if (checkedState) {
		outString += (" CHECKED ");
	}
	outString += (">" + optionsArray[idx]);
}
return(outString);
}



function getFormElementCheckbox(elemName, optionsArray, valuesArray, hideLabel) {
var outString = "";
var idx;
for(idx=0;idx<optionsArray.length;idx++) {
	var checkedState = false;
	var vidx;
	for(vidx=0;vidx<valuesArray.length;vidx++) {
		if (valuesArray[vidx] == optionsArray[idx]) {
			checkedState = true;
		}
	}
	outString += ("<input type=\"checkbox\" name=\"" + elemName + "\" value=\"" + optionsArray[idx] + "\" ");
	if (checkedState) {
		outString += (" CHECKED ");
	}
	outString += (">");
	if (!(hideLabel)) {
		outString += (optionsArray[idx]);
	}
}
return(outString);
}





function getFormElementSelect(elemName, optionsArray, valuesArray) {
var outString = "";
var idx;
outString += ("<select name=\"" + elemName + "\">\n");
for(idx=0;idx<optionsArray.length;idx++) {
	var checkedState = false;
	var vidx;
	for(vidx=0;vidx<valuesArray.length;vidx++) {
		if (valuesArray[vidx] == optionsArray[idx]) {
			checkedState = true;
		}
	}
	outString += ("<option value=\"" + optionsArray[idx] + "\" ");
	if (checkedState) {
		outString += (" CHECKED ");
	}
	outString += (">" + optionsArray[idx]);
}
outString += ("</select>");
return(outString);
}


function logOut() {
document.cookie = "";
}


function getCookie(name)
{       var dc = document.cookie;
        var prefix = name + "=";
        var begin = dc.indexOf("; " + prefix);

        if (begin == -1)
        {       begin = dc.indexOf(prefix);
                if (begin != 0)
                        return null;
        } else
                begin += 2;
        var end = document.cookie.indexOf(";", begin);
        if (end == -1)
                end = dc.length;
        return unescape(dc.substring(begin + prefix.length, end));
}



function scriptMessage(msgText, append){
	var theElem = document.getElementById('scriptMessage');
	if (append == true) {
		theElem.innerHTML += msgText;
	}
	else {
		theElem.innerHTML = msgText;
	}
}



function topMessage(msgText, append){
	var theElem = document.getElementById('topMessage');
	var formattedMsg = "";
	if (msgText != "") {
		formattedMsg = ("<div style=\"border-style:solid;border-width:1px;border-color:#fab615;padding:6px;margin-top:12px;margin-bottom:12px;margin-left:10px;margin-right:10px;background-color:#FEF5B5;font-size:14px;\"><div>" + msgText + "</div><div align=\"right\"><a href=\"javascript:topMessage('');\">close this</a></div></div>");
	}
	if (append == true) {
		theElem.innerHTML += formattedMsg
	}
	else {
		theElem.innerHTML = formattedMsg;
	}
}




function scriptMessageURL(theURL) {
	var vars = "";
	sendAjax(theURL, vars, scriptMessage);
	return(false);
}


function topMessageURL(theURL) {
	var vars = "";
	sendAjax(theURL, vars, topMessage);
	return(false);
}



function testFillForm(theForm) {
var idx;
var debugMsg = "";
for(idx=0;idx<theForm.elements.length;idx++) {
	var elem = theForm.elements[idx];
	//debugMsg += ("type=" + elem.type + " & name=" + elem.name + "\n");
	if ( (elem.type == "text") && (elem.value == "") ) {
		elem.value = elem.name;
	}
}
if (debugMsg != "") {
	alert(debugMsg);
}
}





function getResultsHeader(fieldName, fieldDescript, orderByVal) {
var outString = "";
if (orderByVal == fieldName) {
	outString = ("<th><a href=\"\#Sort by " + fieldName + " desc\" onClick=\"return sortResults('" + fieldName + " desc');\">" + fieldDescript + "</a></th>");
} else {
	outString = ("<th><a href=\"\#Sort by " + fieldName + "\" onClick=\"return sortResults('" + fieldName + "');\">" + fieldDescript + "</a></th>");
}
return(outString);
}



function sortResults(sortBy) {
setSelectVal(document.forms['search'].elements['orderby'], sortBy);
getSearchResults(document.forms['search']);
}





function swapImage(imageId, imageSrc) {
	var theImage = document.getElementById(imageId);
	theImage.src = imageSrc;
}





function getShippingTrackingURL(shipper, tracknum) {
var trackURL;
if (shipper == "UPS") {
        trackURL = "http://wwwapps.ups.com/etracking/tracking.cgi?";
        trackURL += "TypeOfInquiryNumber=T&HTMLVersion=4.0&InquiryNumber1=" + tracknum;
} 
if (shipper == "AIRBORNE") {
        trackURL = "http://track.airborne.com/atrknav.asp?shipmentNumber=" + tracknum;
} 
if (shipper == "FEDEX") {
        trackURL = "http://www.fedex.com/";
        trackURL += "Tracking?action=track&language=english&cntry_code=us&initial=x&tracknumbers=" + tracknum;
} 
if (shipper == "USPS") {
        trackURL = "http://trkcnfrm1.smi.usps.com/PTSInternetWeb/InterLabelInquiry.do?";
        trackURL += "origTrackNum=" + tracknum;
} 
if (shipper == "SMARTPOST") {
        trackURL = "http://spportal.fedex.com/sp/tracking.htm?bgcolor=%23ecece1&CID=10111&PID=" + tracknum;
}
return(trackURL);
}



var debugMsg = "";
function debug(msg) { debugMsg += (msg + "<br>"); }


function showPanel(panelName) {
	//alert("opening panel: " + panelName);
	var canvas = document.getElementById('canvasClientPanel');
	var source = document.getElementById('sourceClientPanel' + panelName);
	canvas.innerHTML = source.innerHTML;
	document.location.hash = "clientPanel";
}


function showUserHomepageHTML() {
	var canvas;
	canvas = document.getElementById('canvasHomepageHTML');
	canvas.innerHTML = userObject.homepageHTML;
}

function showUserCalendar() {
	var canvas;
	canvas = document.getElementById('canvasGoogleCalendarHTML');
	canvas.innerHTML = userObject.googleCalendarHTML;
}
