var filterArray  = new Array();
var ITEMLIST_URL="/resourcecenter/getItem.jsp";
var ASSET_URL="/resourcecenter/getAsset.jsp";
var ASSET_DETAIL_URL="/resourcecenter/assetdetail.jsp";
var ASSET_DOWNLOAD_URL="/resourcecenter/assetdownload.jsp";
var CONTENT_URL="/resourcecenter/getContent.jsp";
var DISPLAY='inline';
var HIDE='none';
var delimeterForContent='|';
var delimeterForProduct='|';


function getAssets(id){

	var url = ASSET_URL;
	var params = "catId="+id;
	var objForm=document.filterForm;
	
	var filterContent="";
		if(objForm.filterByContent.value.length>0){
			filterContent="contentId=" + objForm.filterByContent.value;
		}else{
			filterContent="contentId=" + objForm.defaultFilterContent.value;
		}	
		
	var params= params+"&"+filterContent;
	
	document.getElementById('resource_spinner').style.display=DISPLAY;
	var http = createRequestObject();

	http.open("POST", url, true);
	http.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
	http.setRequestHeader("Content-length", params.length);
	http.setRequestHeader("Connection", "close");
	http.onreadystatechange = function() {
		if (http.readyState == 4 && http.status == "200") {
			var textout = http.responseText;
					document.getElementById("scroll_box").innerHTML = textout;
					//alert(textout);
				document.getElementById('resource_spinner').style.display=HIDE;
		}
	
	}
	http.send(params);
		
}
function getAssetDetail(assetId,catId){

	var url = ASSET_DETAIL_URL;
	var elementId=assetId;
	var params="id="+assetId+"&catalogitemid="+catId+"&showTitle=false";
	var imgId=assetId+'_spinner';
	
	document.getElementById(imgId).style.display=DISPLAY;
	
	var http = createRequestObject();
		http.open("POST", url, true);
		http.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
		http.setRequestHeader("Content-length", params.length);
		http.setRequestHeader("Connection", "close");
		
		http.onreadystatechange = function() {
			if (http.readyState == 4 && http.status == "200") {
				var textout = http.responseText;
					document.getElementById(assetId).innerHTML = textout;
					document.getElementById(imgId).style.display=HIDE;
			}
		}
		http.send(params);
	
}





function getContentList(id,catId,contentFilter){

	var url = CONTENT_URL;
	var params="";
	var elementId=id;
	    params="catId="+catId;
	    params=params+"&content="+contentFilter;
	var http = createRequestObject();
		http.open("POST", url, true);
		http.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
		http.setRequestHeader("Content-length", params.length);
		http.setRequestHeader("Connection", "close");
		
		http.onreadystatechange = function() {
			if (http.readyState == 4 && http.status == "200") {
				var textout = http.responseText;
					document.getElementById(id).innerHTML = textout;
			}
		}		
		http.send(params);
		
}

function getItemList(itemType,id,desc){

	var url = ITEMLIST_URL;
	var elementId=id;
		if(id=="mainCategory"){
			id="";
		}
	var params="itemType="+itemType+"&id="+id;
	var http = createRequestObject();
		http.open("POST", url, true);
		http.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
		http.setRequestHeader("Content-length", params.length);
		http.setRequestHeader("Connection", "close");
		
		http.onreadystatechange = function() {
			if (http.readyState == 4 && http.status == "200") {
				var textout = http.responseText;
					document.getElementById('mainmenu').innerHTML = textout;
				if(id==""){
				}else{
				if(itemType.length>0){
					addItemToFilter(itemType,id,desc);
				}	
				}
			}
		}
		
		
		http.send(params);
}

function addItemToFilter(itemType,id,desc){

    var source="<a href='#' "+" onclick='updateProdDataFilter(\""+itemType+"\",\""+id+"\")' class=\"filteredItem\">"
    			+"<b>"+itemType+"</b>:&nbsp;"+desc+" +</a>";
    var f = document.filterForm.filter;
	var data=f.value;
	
		document.getElementById(itemType).innerHTML = source;
   		document.getElementById(itemType).style.display=DISPLAY;

    	if(data.length>0){
			data = data + "|" +id;
    	}else{
		   	data=id;
    	}
    	
      	document.filterForm.filter.value=data;
		addToArray(itemType,id);      	
      	refreshSearch();
}


function addToArray(itemType,id){
    var row =filterArray.length;
		filterArray [row] = new Array(2);
		filterArray [row][0]=itemType;
		filterArray [row][1]=id;    
}

function removeItemFromFilter(itemType,id){
	document.getElementById(itemType).innerHTML ='' ;
	document.getElementById(itemType).style.display=HIDE;
	 
}

function updateProdDataFilter(itemType,id){

	  var tempArray = new Array();
	  var val="";
	  var removeItem=false;
	  
         	  
		 for(var i = 0; i < filterArray.length; i++){
		       if(filterArray[i][1]==id){
			        removeItem=true;
		       }
		       if(removeItem){
		 		    removeItemFromFilter(filterArray[i][0]);	  
	     	    }
		  }
		  
		  for(var i = 0; i < filterArray.length; i++){
		        if(filterArray[i][1]==id){
		        	break;
			     }else{
			     	tempArray[tempArray.length] = filterArray[i];
			     }
	     	}
	     	
	       filterArray=tempArray;
	
	       for(var i = 0; i < filterArray.length; i++){
		         if(i<1){
			         val = filterArray[i][1];
		         }else{
			         val = val + "|"+ filterArray[i][1];
		         }
		    }
		    
     document.filterForm.filter.value=val;	     
     refreshSearch();       
}

function addToFilter(id,desc){
	s = document.getElementById('filteredItems').innerHTML;
    s = s + "<div id='"+id+"_f'><a href='#' onclick='removeFromFilter(\""+id+"\")' class='filteredItem'>"
		   	 +"<b>Literature:</b>&nbsp;"+desc+"&nbsp;&nbsp;<span><b>+</b></span></a></div>";	
		document.getElementById('filteredItems').innerHTML = s;
	var val =  document.filterForm.filterByContent.value;
			    if(val.length>1){ 
		       			 val = val +"|"+id; 	
		        }else{
		         	 val = id; 	
		        }
	document.filterForm.filterByContent.value=val;
	refreshSearch();
	document.getElementById(id).style.display=HIDE;
}

function removeFromFilter(id){
				if(document.getElementById(id)!=null){
					document.getElementById(id).style.display='';
				}
			removeElementFromFilter(id+"_f");
		updateContentTypeFilter(id);
	refreshSearch();
}

function updateContentTypeFilter(id){

    	var cf = new Array();  
	 	var tempcf= new Array();
	    var findId = id;
	    var val = document.filterForm.filterByContent.value;
	 	
	 	cf = val.split(delimeterForContent);
	 	
		for(var i=0; i<cf.length; i++){
		   if(findId==cf[i]){
		   }else{
		   	 tempcf[tempcf.length]=cf[i];
		   }
		}
		
       cf = tempcf; 
       
       var updateVal="";
       for(var i=0; i<cf.length; i++){
			if(i==0){ 
	       		 updateVal = cf[i]; 	
	        }else{
	         	 updateVal = updateVal +delimeterForContent+cf[i]; 	
	        }
       }
      
      document.filterForm.filterByContent.value =updateVal;
}


function removeElementFromFilter(id) {
  	var d = document.getElementById('filteredItems');
  	var olddiv = document.getElementById(id);
  d.removeChild(olddiv);
}

function toggleLink(id,catId){

  	var idStyle = document.getElementById(id).style.display;
	  	if(idStyle==HIDE){
					getAssetDetail(id,catId);
			  	document.getElementById(id).style.display=DISPLAY;
		 	document.getElementById('docLink_'+id).innerHTML='&nbsp;-&nbsp;';
	  	}else{
		  	 	document.getElementById(id).style.display=HIDE;
	  	 	document.getElementById('docLink_'+id).innerHTML='&nbsp;+&nbsp;';
	  	}
}


function refreshSearch(){
	var p= new Array();
  		p = document.filterForm.filter.value.split(delimeterForProduct);
    var lastItem=p[p.length-1]; 
    
   		getItemList('',lastItem,'');
   		var contentFilter=document.filterForm.filterByContent.value;	
		getContentList("contentTypes",lastItem,contentFilter);	
	    getAssets(lastItem);
     	updateUrl();   
}



function asset(id,catId,docId){

  	var idStyle = document.getElementById(docId).style.display;
	  	if(idStyle==HIDE){
					getHtmlAssetDetail(id,catId,docId);
			  	document.getElementById(docId).style.display=DISPLAY;
		 	document.getElementById('docLink_'+docId).innerHTML='&nbsp;-&nbsp;';
	  	}else{
		  	 	document.getElementById(docId).style.display=HIDE;
	  	 	document.getElementById('docLink_'+docId).innerHTML='&nbsp;+&nbsp;';
	  	}
	  	
}


function getHtmlAssetDetail(assetId,catId,docId){

	var url = ASSET_DETAIL_URL;
	var elementId=assetId;
	var params="id="+assetId+"&catalogitemid="+catId+"&showTitle=false";
	var imgId=docId+'_spinner';
	
	
	document.getElementById(imgId).style.display=DISPLAY;
	
	var http = createRequestObject();
		http.open("POST", url, true);
		http.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
		http.setRequestHeader("Content-length", params.length);
		http.setRequestHeader("Connection", "close");
		
		http.onreadystatechange = function() {
			if (http.readyState == 4 && http.status == "200") {
				var textout = http.responseText;
					document.getElementById(docId).innerHTML = textout;
					document.getElementById(imgId).style.display=HIDE;
			}
			
		}
		http.send(params);
}


function getBinaryAsset(assetId){

	var url = ASSET_DOWNLOAD_URL;
	var params="id="+assetId;
	
	var http = createRequestObject();
		http.open("POST", url, true);
		http.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
		http.setRequestHeader("Content-length", params.length);
		http.setRequestHeader("Connection", "close");
		
		http.onreadystatechange = function() {
			if (http.readyState == 4 && http.status == "200") {
				var textout = http.responseText;
				
				if(textout.indexOf("http://")>-1){
					window.open(textout,'_blank');
				}	
				
			}
			
		}
		
		http.send(params);
}








