
	function optionChanged(){
		//setTop();
		selectedOptions = new Array();
		selectedGroups = new Array();
		selectedResourceTypes = new Array();
		
		var filterNavContent = '<a class="clearButton" href="#" onclick="clearFilter();">Clear Filter<img src="'+viewPath+'view/img/undo.gif" border="0"/></a>';		
		// +filterNavContent += <td><a href="#" onclick="goSearch();">Search Within<img src="'+viewPath+'view/img/find_again.gif" border="0"/></a></td>';
		

	
		for(var i in f_nodes){
			if(i.substr(0,2) == "o_" && f_nodes[i].checkable && f_nodes[i].checkState == 2 ){
				 selectedOptions.push(f_nodes[i].optionid);
			}
			if(i.substr(0,6) == "group_" && f_nodes[i].checkable && f_nodes[i].checkState == 2 ){
				 selectedGroups.push(f_nodes[i].optionid);
			}
			if(i.substr(0,13) == "resourceType_" && f_nodes[i].checkable && f_nodes[i].checkState == 2 ){
				 selectedResourceTypes.push(f_nodes[i].optionid);
			}
		}
		//if something was selected and there's not an active search filter, display buttons to clear/search within filter
		if((selectedResourceTypes.length>0||selectedGroups.length>0||selectedOptions.length>0)&&currentCriteria.length==0){
			showFilterPanel();
		}
		//if there is criteria, show search pane...
		if(currentCriteria.length>0 && !isSearchShown){
			document.mainSearchForm.mainCriteria.value = currentCriteria;
			var bcButton = document.getElementById("clearSearchButton");
			bcButton.style['display'] = "block";
			showSearchPanel();
		}
		
		currentPage = 1;		
		loadList();
		
		
	}

	function getSuppliedResourceId(){
		var dividingCharacter = "#";	
	    var url = window.location.href;
		if(url.indexOf(dividingCharacter)>-1 && url.substr(url.indexOf(dividingCharacter)+1,6) != "Search" ) {
        	var url_elements = url.split(dividingCharacter);
	        if(url_elements[url_elements.length-1] != ""){
	    	   return url_elements[url_elements.length-1];
	        }
		}
		return false;
		
	}
	
	function getSuppliedCriteria(defaultCriteria){
		var dividingCharacter = "#";	
	    var url = window.location.href;
		if(url.indexOf(dividingCharacter)>-1 && url.substr(url.indexOf(dividingCharacter)+1,6) == "Search" ) {
        	return url.substr(url.indexOf(dividingCharacter)+8);
		}
		return defaultCriteria;
		
	}

	function goSearch(){
		var searchNavContent = '<form name="browseSearchForm">';//<table cellpadding="0" cellspacing="0"><tr><td valign="middle">
		searchNavContent +='<input name="criteria" type="text" size="8"/>';
		searchNavContent +='<a href="#" class="btn" onclick="javascript:submitSearch()">Search</a>';
		searchNavContent +='<a href="#" class="btn" onclick="javascript:clearSearch()">Clear</a>';				 
		searchNavContent +='</form>';//</td></tr></table>
				
			
	}
		
	function searchKeyPress(e){
		if(e.keyCode == 13){
			submitGlobalSearch();			
		}
	}
	function submitGlobalSearch(){
			var bcButton = document.getElementById("clearSearchButton");
			bcButton.style['display'] = "block";
			currentCriteria = document.mainSearchForm.mainCriteria.value;
			window.location.href = "#Search+"+document.mainSearchForm.mainCriteria.value;
			loadList();
	}		
	
	
		
	function submitSearch(){
			currentCriteria = document.browseSearchForm.criteria.value;
			loadList();
	}
	
	function clearSearch(){
			currentCriteria="";
			document.mainSearchForm.mainCriteria.value = "";
			loadList();
			var bcButton = document.getElementById("clearSearchButton");
			bcButton.style['display'] = "none";
			showSearchPanel();
	}			
	
	function clearFilter(){
		selectedOptions = new Array();
		selectedGroups = new Array();
		selectedResourceTypes = new Array();
		for(var i in f_nodes){
			if(f_nodes[i].checked){
				f_nodes[i].uncheck();
			}
			if(f_nodes[i].depth == 0){
				f_nodes[i].collapse();
			}
		}
		var bcButton = document.getElementById("clearFilterButton");
			bcButton.style['display'] = "none";
		currentPage = 1;		
		loadList();
		hideFilterPanel();
		
	}
	function prevPage(){
		currentPage--;
		loadList();
	}
	function nextPage(){
		currentPage++;
		loadList();
	}
	function changeSorting(sortby,defaultNewOrderDesc){
		if(currentSortBy == sortby){
			currentSortOrder = (currentSortOrder=="ASC")?"DESC":"ASC";			
		}
		else{
			currentSortBy = sortby;
			currentSortOrder = (defaultNewOrderDesc)?"DESC":"ASC";
		}

		loadList();
	}
	
	function loadList(){
		var urlStart = "index.cfm?event=c.getResourcesAsXmlByMetaDataOptions";
			/*
			if(old_criteria){
				goSearch();
				document.browseSearchForm.criteria.value = old_criteria;
				currentCriteria = old_criteria;
				old_criteria = false;	
			}*/
					
			windowState = "list";
			
			if(document.getElementById("deepLinkDiv")){
				var dlDiv = document.getElementById("deepLinkDiv");
				dlDiv.innerHTML = "<a href=\"index.cfm?event=c.beginBrowseD" + getCurrentUrlParams() + "\">link</a>";
			}
			
			loadViaAjax(urlStart+getCurrentUrlParams());	
	}
	
	function getCurrentUrlParams(rss){
			var	urlParams= "&selectedOptions="+selectedOptions.join(",");
			if(selectedResourceTypes.length > 0){
				urlParams+= "&currentResourceTypes="+selectedResourceTypes.join(",");
			}
			if(selectedGroups.length > 0){
				urlParams+= "&currentGroups="+selectedGroups.join(",");
			}
			if(!rss){
				urlParams+= "&page="+currentPage;	
				urlParams+= "&perpage="+currentPerPage;	
				urlParams+= "&sortby="+currentSortBy;	
				urlParams+= "&sortorder="+currentSortOrder;
			}
			if(currentCriteria.length>0){
				urlParams+= "&criteria="+currentCriteria;
			}
		return urlParams;
	}
	
	function loadResource(rid){
		windowState = "show";
		var url = "index.cfm?event=c.getResourceContentAsXml&navBelow=1&rid="+rid;
		loadViaAjax(url);
	}
	
	function loadViaAjax(url){
		var statusDiv = document.getElementById("status");		
		statusDiv.style['visibility'] = "visible";
		loadXMLDoc(url);
		if(GoogleAnalyticsAcctNumber.length > 0)
			urchinTracker(url);				
	}
	function handleAjaxResponse(xmlObj){
		if(windowState == "list"){
			writeList(xmlObj);
		}
		else if(windowState == "show"){
			writeResource(xmlObj);
			hideFilterPanel();
			if(currentCriteria.length>0 && isSearchShown){
				showSearchPanel()		
			}
		}
		var statusDiv = document.getElementById("status");
		statusDiv.style['visibility'] = "hidden";
		
	}
	function writeResource(xmlObj){
		var rContent = xmlObj.getElementsByTagName("resource_content")[0];
		//var titleDiv = document.getElementById("title");
		//titleDiv.innerHTML = "Resource:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;                        <span class='backLink'><a href="#" href='loadListContent();'>Return to list...</a></span>"
		var finalContent = "<div class='pagination'><table border='0'><tr><td width='68%' class='title'>Resource:&nbsp;&nbsp;&nbsp;</td>";
			finalContent += "<td align='right' width='12' valign='middle'><a class='backToList' href='#' onclick='loadListContent()'><img src='"+viewPath+"view/img/arrow_left_green.gif' border='0'></a></td>";
			finalContent += "<td align='right' nowrap valign='middle'><a class='backToList' href='#' onclick='loadListContent()'>Go Back</a></td>";
			finalContent += "</tr></table></div>";
		//finalContent += rContent.firstChild.nodeValue;
		 if (rContent.childNodes.length > 1) {
            finalContent += rContent.childNodes[1].nodeValue;
        } else {
            finalContent += rContent.firstChild.nodeValue;    		
        }
		var contentDiv = document.getElementById("resourceList");
		contentDiv.innerHTML = finalContent;
 
		//alert()
	}
	function writeList(xmlObj){
		
		var rObj = xmlObj.getElementsByTagName("resources")[0];
		if(!rObj){
			alert(rObj)	
		}
		
		var totalResources = rObj.getAttribute("total_count");
		
		
		
		
		
		var resources = xmlObj.getElementsByTagName("resource");
		var page =  rObj.getAttribute("page");
		var perpage =  rObj.getAttribute("perpage");
		
		
		
		listContent = "";
		navContent = "";
		
		var rssUrl = "index.cfm?event=c.getResourcesAsRssByMetaDataOptions" + getCurrentUrlParams(true);
			
		
		
		
		var rssContent = "<div id='rssLink'><a href='"+rssUrl+"'><img src='"+viewPath+"view/img/xml_icon.gif' border='0'></a></div>";
		
		
		
		if(resources.length > 0){
			listContent += "<div class='pagination'><table border='0' width='98%' cellpadding='0' cellspacing='0'><tr><td class='title' width='110'>Resources:&nbsp;&nbsp;&nbsp;</td>";
			if(page && page > 1){
				var start = ((page-1) * perpage)+1;			
			}
			else{
				var start = 1
			}			
			if(resources.length < perpage){
				var end = totalResources;
			}
			else{
				var end = (Math.round(start) + Math.round(perpage))-1;	
			}
			var numPages = Math.round(totalResources / perpage);
			navContent += "<td align='center'><table class='navLinks' cellpadding='2' cellspacing='0'><tr>";
			if(page > 1){
				navContent += "<td valign='middle'><a href='#' onclick='prevPage();'><img src='"+viewPath+"view/img/arrow_left_green.gif' border='0'/><span>Previous Page</span></a></td>";
			}
			else{
				//navContent += "<td valign='middle'>&nbsp;&nbsp;&nbsp;&nbsp;</td><td valign='middle'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</td>";
			}
			navContent += "<td class='tagline'><span>Viewing " + start + " thru " + end + " of " + totalResources + " Resources";

			
 			navContent += "</span></td>";
			if(end < totalResources){
	navContent += "<td><a href='#' onclick='nextPage();'><span>Next Page</span><img src='"+viewPath+"view/img/arrow_right_green.gif' border='0'/></a></td>";
			}
			navContent += "</tr></table></td>";
			listContent += navContent;
			listContent += "<td align='center'>"+rssContent+"</td>";
			listContent += "</tr></table></div>";
		}
		else{
			listContent = "<div class='pagination'><table border='0' width='400'><tr><td class='title'><font color='red'>No resources found...</font><br><font size='-1'><i>Try using a synonym for your search term or include more search terms</i> <b><a href='javascript: raiseSearchTipsWindow()'>(More Search Tips)</a></b></font></td></tr></table></div>";
			
		}		
			listContent += "<table class='rList' width='100%' cellpadding='1' cellspacing='0'>";
			listContent += "<tr><td colspan='5' class='rHeader' align='center'><font size='-1'>Click on a column heading below to sort by that heading.</font></td></tr>";
			listContent += "<tr>";
			listContent += 		"<td valign='bottom' nowrap class='rHeader'><a href='#' onclick=\"changeSorting('TITLE');\" class='titleBar'>";
						if(currentSortBy == "TITLE"){
							if(currentSortOrder == "DESC")
								listContent += "<img src='"+viewPath+"view/img/arrow_down_blue_sm.gif' border='0'>";
							else
								listContent += "<img src='"+viewPath+"view/img/arrow_up_blue_sm.gif' border='0'>";							
						}
						
			listContent += 			"Title</a></td>";<!---  onclick=\"javascript:sortBy('title');\" --->
			
			listContent +=		"<td valign='bottom' nowrap class='rHeader'><a href='#' onclick=\"changeSorting('AUTHORNAME');\" class='titleBar'>";
						if(currentSortBy == "AUTHORNAME"){
							if(currentSortOrder == "DESC")
								listContent += "<img src='"+viewPath+"view/img/arrow_down_blue_sm.gif' border='0'>";
							else
								listContent += "<img src='"+viewPath+"view/img/arrow_up_blue_sm.gif' border='0'>";							
						}

			listContent +=		"Author</a></td>";
			
			listContent +=		"<td valign='bottom' nowrap class='rHeader'><a href='#' onclick=\"changeSorting('MAX_DOWNLOAD_COUNT',true);\" class='titleBar'>";
						if(currentSortBy == "MAX_DOWNLOAD_COUNT"){
							if(currentSortOrder == "DESC")
								listContent += "<img src='"+viewPath+"view/img/arrow_down_blue_sm.gif' border='0'>";
							else
								listContent += "<img src='"+viewPath+"view/img/arrow_up_blue_sm.gif' border='0'>";							
						}

			listContent +=		"# Hits</td>";
			
			listContent +=		"<td valign='bottom' nowrap class='rHeader'><a href='#' onclick=\"changeSorting('LAST_UPDATED');\" class='titleBar'>";
						if(currentSortBy == "LAST_UPDATED"){
							if(currentSortOrder == "DESC")
								listContent += "<img src='"+viewPath+"view/img/arrow_down_blue_sm.gif' border='0'>";
							else
								listContent += "<img src='"+viewPath+"view/img/arrow_up_blue_sm.gif' border='0'>";							
						}

			listContent +=		"Modified</td>";
			
						
			listContent +=		"<td valign='bottom' nowrap class='rHeaderr'><img src='"+viewPath+"view/img/clearpixel.gif' height='17' width='2' border='0'><!--- Attachments<img src='"+viewPath+"view/img/clearpixel.gif' height='17' width='3' border='0'> ---></td>";
			listContent += "</tr>";
		
		
		//alert(resources.length)
		
		for(var r=0; r<resources.length;r++){
			listContent+="<tr>";	
				var className = "row";
				if(r % 2 != 0){
					className += "hl";
				}
				listContent+="<td class='" + className +"'><a class='rLink' href=\"#"+resources[r].getAttribute("ID")+"\" onclick=\"loadResource("+resources[r].getAttribute("ID")+");\">" + resources[r].getAttribute("TITLE") +"</a></td>";
				listContent+="<td class='" + className +"'>" + resources[r].getAttribute("AUTHOR") +"</td>";
				listContent+="<td class='" + className +"' align='center'>" + resources[r].getAttribute("MAX_DOWNLOAD_COUNT") +"</td>";
				listContent+="<td class='" + className +"' align='center'>" + resources[r].getAttribute("LAST_UPDATED") +"</td>";				
				listContent+="<td class='" + className +"r'>"
				var attachments = resources[r].getAttribute("ATTACHMENT_TYPE_IMAGES");
				var attachmentNames = resources[r].getAttribute("ATTACHMENT_TYPE_NAMES");
				if(attachments.length > 0){
					attachments = attachments.split(",");
					attachmentNames = attachmentNames.split(",");
					for(var a=0; a<attachments.length; a++){
						listContent+= "<a class='rLink' title='Contains: "+attachmentNames[a]+"' href=\"#"+resources[r].getAttribute("ID")+"\" onclick=\"loadResource("+resources[r].getAttribute("ID")+");\"><img border='0' alt='Contains: "+attachmentNames[a]+"' src='"+viewPath+"view/img/"+attachments[a]+"'/></a>";
					}
				}
				listContent+="&nbsp;</td>";		//		
			listContent+="</tr>"
			/****
			listContent+="<tr><td colspan='4' class='" + className +"'>";
			listContent+=resources[r].getAttribute("DESCRIPTION");
			listContent+="</td></tr><tr><td class='breakRow' colspan='4'><img src='"+viewPath+"view/img/clearPixel.gif' border='0' height='1'/></td></tr>";
			****/
		}
		
		listContent += "</table>";
		//tack on pagination content
		if(totalResources > perpage){
			listContent += "<div class='pagination'><table border='0' class='bottomPage' cellpadding='0' cellspacing='0'><tr><td class='title'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</td>";
			listContent += navContent;
			listContent += "</tr></table></div>";
		}
		loadListContent();
	}
	function loadListContent(){
		//var titleDiv = document.getElementById("title");
		//titleDiv.innerHTML = "Resources:"
		if(listContent == ""){
			optionChanged();				
		}else{
			var contentDiv = document.getElementById("resourceList");
			contentDiv.innerHTML = listContent;		
			if(selectedResourceTypes.length>0||selectedGroups.length>0||selectedOptions.length>0){
				showFilterPanel();			
			}
			if(currentCriteria.length>0 && !isSearchShown){
				showSearchPanel()		
			}
		}		
	}
	
var isPanelShown = false;
var wasPanelShown = false;

function showFilterPanel(hideIfShown){
		if(hideIfShown && isPanelShown){
			hideFilterPanel();
			return;
		}
		var bDiv = document.getElementById("browseCol");
		var mDiv = document.getElementById("mainCol");
		var bTreeDiv = document.getElementById("browseTree");
		var sDiv = document.getElementById("filterWrapper");		
		
		bTreeDiv.style['display'] = "block";
		bDiv.style['width'] = "300px";
		sDiv.style['width'] = "300px";
		isPanelShown = true;
		wasPanelShown = true;
		if(selectedResourceTypes.length>0||selectedGroups.length>0||selectedOptions.length>0){
			var cDiv = document.getElementById("clearFilterButton");		
			cDiv.style['display'] = "block";
		}
}
function hideFilterPanel(){
	var bDiv = document.getElementById("browseCol");
	var mDiv = document.getElementById("mainCol");
	var bTreeDiv = document.getElementById("browseTree");
	var sDiv = document.getElementById("filterWrapper");	
	var cDiv = document.getElementById("clearFilterButton");		
	cDiv.style['display'] = "none";
	bTreeDiv.style['display'] = "none";
	bDiv.style['width'] = "110px";
	sDiv.style['width'] = "110px";
	isPanelShown = false;
}

var isSearchShown = false;

function showSearchPanel(){
		
		var sDiv = document.getElementById("mainSearchBox");		
		var bDiv = document.getElementById("browseCol");
		var swDiv = document.getElementById("searchWrapper");		
		var cDiv = document.getElementById("clearSearchButton");	
		
		if(!isSearchShown){
			sDiv.style['display'] = "block";			
			bDiv.style['width'] = "300px";
			swDiv.style['width'] = "300px";
			isSearchShown = true;
			if(currentCriteria.length>0)
				cDiv.style['display'] = "block";
		}
		else{
			cDiv.style['display'] = "none";
			sDiv.style['display'] = "none";
			bDiv.style['width'] = "110px";
			swDiv.style['width'] = "110px";
			isSearchShown = false;
		}
		
	}