// JavaScript Document
function JS_ExitBrowseBox(){
	var boxes=document.getElementById('locBrowseHead').getElementsByTagName('td');
	for(var i=0;i<boxes.length;i++) {
		if(boxes[i].id.substring(0,3)=='loc') boxes[i].className='browse_top_notsel';
	}
	document.getElementById('divBrowseBox').style.display='none';
	var spec=document.getElementById('divBrowseSpecial');
	if (spec) spec.style.display='none';
}

function JS_ContinueBrowseBox(){
	var sel=document.getElementById('frmBrowseBase').value;
	if (sel=='special')  document.getElementById('divBrowseSpecial').style.display='block';
	else document.getElementById('divBrowseBox').style.display='block';
	document.getElementById('loc_'+sel).className='browse_top_sel';
}

function JS_ShowBrowseBox(obj,base){ 
	document.getElementById('locAtts').style.display='none';
	var boxes=document.getElementById('locBrowseHead').getElementsByTagName('td');
	for(var i=0;i<boxes.length;i++) {
		if(boxes[i].id.substring(0,3)=='loc') boxes[i].className='browse_top_notsel';
	}
	obj.className='browse_top_sel';
	if (base=='special') {
		var target=document.getElementById('divBrowseSpecial');
		document.getElementById('divBrowseBox').style.display='none';}
	else {
		var target=document.getElementById('divBrowseBox');
		var spec=document.getElementById('divBrowseSpecial'); if (spec) spec.style.display='none';}
		
	target.style.display='block';
	var curleft = curtop = 0; curleft += obj.offsetWidth; 
	if (obj.offsetParent) {
		do { curleft += obj.offsetLeft; curtop += obj.offsetTop; obj = obj.offsetParent
		} while (obj);
	}
	curtop+=1; curleft-=40;
	document.getElementById('frmBrowseBase').value=base;
	target.style.top=curtop+'px'; target.style.left=curleft+'px';
	if (base!='special') JS_LoadBrowseBox(base);
}

function JS_LoadBrowseBox (base) {
	var url="/tools/x_browsedata.php";
	var type='browse_data'
	var v1='bas';
	var v2=base;
	JS_GetXMLData(url,type,v1,v2);
}

function JS_ShowBrowseList(base,catid){ 
	var boxes=document.getElementById('locCats').getElementsByTagName('td');
	for(var i=0;i<boxes.length;i++) {
		if(boxes[i].id=='cat'+catid) boxes[i].className='browse_cat_sel';
		else boxes[i].className='browse_cat_notsel';
	}
	JS_LoadBrowseList (base,catid)
}

function JS_LoadBrowseList (base,catid) {
	var url="/tools/x_browsedata.php";
	var type='browse_data'
	var v1='ca';
	var v2=catid;
	var v3=base;
	JS_GetXMLData(url,type,v1,v2,v3);
}

function JS_ReceiveXMLBrowseData(xmlDoc,xmlv1,xmlv2,xmlv3) {
	if(xmlv1=='bas'){ //get the category list for a particular basis	
		var node_tag=xmlv1;
		var node_val=xmlv2;
		var node_num=JS_NodeListNum(xmlDoc,node_tag,node_val);
			
		var cats=xmlDoc.getElementsByTagName('bas')[node_num].getElementsByTagName('ca');
		for(var i=0;i<cats.length;i++) { //get each catagory info
			var root = document.getElementById('locCats');
			var allRows = root.getElementsByTagName('tr');
			var cRow = allRows[0].cloneNode(true);
			var cCell = cRow.getElementsByTagName('td')[0];
			var cLink = cCell.getElementsByTagName('a')[0];
			if (i==0) while(root.hasChildNodes()){root.removeChild(root.lastChild);}

			var id=cats[i].attributes.getNamedItem('id').value
			var it=cats[i].childNodes[0].nodeValue
			var basis=xmlv2;
			var iscat=cats[i].attributes.getNamedItem('iscat').value
		if(iscat==1) { //If this level is a category level
			var abr=basis.substring(0,3)+'z';
			var scrCellOver="JS_MousePointer(); JS_ShowBrowseList('" +basis+ "','" +id+ "')";
			var scrAttOver="JS_AttOver('ctt" +id+ "')";
			var scrAttOff="JS_AttOff('ctt" +id+ "')";
			var scrCapFilter="JS_CaptureFilter('" +abr+id+ "','" +basis+ "')";
			
			cCell.setAttribute('id','cat'+id);
			cCell.setAttribute('onmouseover',scrCellOver);
			cCell.setAttribute('class','browse_cat_notsel');
			
			cLink.setAttribute('id','ctt'+id);
			cLink.setAttribute('onmouseover',scrAttOver);
			cLink.setAttribute('onmouseout',scrAttOff);
			cLink.setAttribute('onclick',scrCapFilter);
			cLink.innerHTML=it;
			root.appendChild(cRow);

		} else { //If this level is a final level
			var abr=basis.substring(0,3);
			var scrAttOver="JS_AttOver('att" +id+ "')";
			var scrAttOff="JS_AttOff('att" +id+ "')";
			var scrCapFilter="JS_CaptureFilter('" +abr+id+ "','" +basis+ "')";

			cCell.setAttribute('onmouseover','');
			cCell.setAttribute('class','browse_cat_notsel');
			cLink.setAttribute('id','att'+id);
			cLink.setAttribute('onmouseover',scrAttOver);
			cLink.setAttribute('onmouseout',scrAttOff);
			cLink.setAttribute('onclick',scrCapFilter);
			cLink.innerHTML=it;
			root.appendChild(cRow);
		}
		} //end get each catagory info 
			
	} //end get the category list for a particular basis
	
	if(xmlv1=='ca'){ //get the att list for a particular category
		document.getElementById('locAtts').style.display='block';
		var node_tag=xmlv1;
		var node_val=xmlv2;
		var newdoc=xmlDoc.getElementsByTagName('bas')[JS_NodeListNum(xmlDoc,'bas',xmlv3)];
		node_num=JS_NodeListNum(newdoc,node_tag,node_val);
		
		var atts=newdoc.getElementsByTagName('ca')[node_num].getElementsByTagName('at');
		for(var i=0;i<atts.length;i++) { //get each att info
			var root = document.getElementById('locAtts');
			var allRows = root.getElementsByTagName('tr');
			var cRow = allRows[0].cloneNode(true);
			var cCell = cRow.getElementsByTagName('td')[0];
			var cLink = cCell.getElementsByTagName('a')[0];
			if (i==0) while(root.hasChildNodes()){root.removeChild(root.lastChild);}

			var id=atts[i].attributes.getNamedItem('id').value
			var it=atts[i].childNodes[0].nodeValue
			var basis=xmlv3;
			var abr=basis.substring(0,3);
			var scrAttOver="JS_AttOver('att" +id+ "')";
			var scrAttOff="JS_AttOff('att" +id+ "')";
			var scrCapFilter="JS_CaptureFilter('" +abr+id+ "','" +basis+ "')";
			
			cLink.setAttribute('id','att'+id);
			cLink.setAttribute('onmouseover',scrAttOver);
			cLink.setAttribute('onmouseout',scrAttOff);
			cLink.setAttribute('onclick',scrCapFilter);
			cLink.innerHTML=it;
			root.appendChild(cRow);
		}
	} //end get the att list for a particular category
}

function JS_AttOver(locid){
	document.getElementById(locid).className='browse_att_sel';
}

function JS_AttOff(locid){
	document.getElementById(locid).className='browse_att_notsel';
}

function JS_CaptureFilter(varItem,base) {
if(document.getElementById('frmBrowseType').value=='forward')
	window.location='results.php?gvCriteria=|'+varItem+'|';

else if(document.getElementById('frmBrowseType').value=='similar') {
if (varItem) {
	document.getElementById('frmCriteriaList').value=document.getElementById('frmCriteriaList').value.replace('|'+varItem+'|','');
	document.getElementById('frmCriteriaList').value+='|'+varItem+'|';
	var filter=document.getElementById('frmCriteriaList').value;
	document.getElementById('frameRecList').src='/tools/r_criteria.php?gvBasis='+base+'&gvFilter='+filter;}
}

else if(document.getElementById('frmBrowseType').value=='results') {
if (varItem) {
	document.getElementById('frmCriteriaList').value=document.getElementById('frmCriteriaList').value.replace('|'+varItem+'|','');
	document.getElementById('frmCriteriaList').value+='|'+varItem+'|';
	var filter=document.getElementById('frmCriteriaList').value;
	document.getElementById('frameRecList').src='/tools/r_criteria.php?gvBasis='+base+'&gvFilter='+filter;}
	JS_GetMapResultData(0);
}
}

function JS_SetRate(rateSel) {
if(document.getElementById('frmBrowseType').value=='forward')
	window.location='results.php?gvCriteria=|rat'+ratSel+'|';

else if(document.getElementById('frmBrowseType').value=='similar') {
	var num=rateSel.id.replace('rat','');
	var ratePost=document.getElementById('POSTrat_'+num);
	if(ratePost.value==num) {
		rateSel.src='/images/view_images/rate-'+num+'-em.gif';
		ratePost.value=0;
		document.getElementById('frmCriteriaList').value=document.getElementById('frmCriteriaList').value.replace('|rat'+num+'|','');
	}	
	else {
	rateSel.src='/images/view_images/rate-'+num+'-ch.gif';
	ratePost.value=num;
	document.getElementById('frmCriteriaList').value+='|rat'+num+'|';
	}
} 

else if(document.getElementById('frmBrowseType').value=='results') {
	var num=rateSel.id.replace('rat','');
	var ratePost=document.getElementById('POSTrat_'+num);
	if(ratePost.value==num) {
		rateSel.src='/images/view_images/rate-'+num+'-em.gif';
		ratePost.value=0;
		document.getElementById('frmCriteriaList').value=document.getElementById('frmCriteriaList').value.replace('|rat'+num+'|','');
	}	
	else {
	rateSel.src='/images/view_images/rate-'+num+'-ch.gif';
	ratePost.value=num;
	document.getElementById('frmCriteriaList').value+='|rat'+num+'|';
	}
	JS_GetMapResultData(0);
} 
}

function JS_SetCollect(loc) {
if(document.getElementById('frmBrowseType').value=='forward')
	window.location='results.php?gvCriteria=|col|';

else if(document.getElementById('frmBrowseType').value=='results') {
	var cur=document.getElementById('POSTcol').value;
	if(cur==1) { //set to not collected	
		document.getElementById('frmCriteriaList').value=
			document.getElementById('frmCriteriaList').value.replace('|col|','');
		document.getElementById('POSTcol').value=0;
		loc.src='/images/view_images/collect-em.gif';
	}
	if(cur==0) { //set to  collected	
		document.getElementById('frmCriteriaList').value=
			document.getElementById('frmCriteriaList').value+='|col|';
		document.getElementById('POSTcol').value=1;
		loc.src='/images/view_images/collect-ch-ch.gif';
	}
	JS_GetMapResultData(0);
}
}

function JS_SetComment(loc) {
if(document.getElementById('frmBrowseType').value=='forward')
	window.location='results.php?gvCriteria=|com|';

else if(document.getElementById('frmBrowseType').value=='results') {
	var cur=document.getElementById('POSTcom').value;
	if(cur==1) { //set to not show my comments	
		document.getElementById('frmCriteriaList').value=
			document.getElementById('frmCriteriaList').value.replace('|com|','');
		document.getElementById('POSTcom').value=0;
		loc.src='/images/view_images/comment-em.gif';
	}
	if(cur==0) { //set to show my comments
		document.getElementById('frmCriteriaList').value=
			document.getElementById('frmCriteriaList').value+='|com|';
		document.getElementById('POSTcom').value=1;
		loc.src='/images/view_images/comment-ch.gif';
	}
	JS_GetMapResultData(0);
}
}

function JS_SetReview(loc) {
if(document.getElementById('frmBrowseType').value=='forward')
	window.location='results.php?gvCriteria=|rev|';

else if(document.getElementById('frmBrowseType').value=='results') {
	var cur=document.getElementById('POSTrev').value;
	if(cur==1) { //set to not show my comments	
		document.getElementById('frmCriteriaList').value=
			document.getElementById('frmCriteriaList').value.replace('|rev|','');
		document.getElementById('POSTrev').value=0;
		loc.src='/images/view_images/review-em.gif';
	}
	if(cur==0) { //set to show my comments
		document.getElementById('frmCriteriaList').value=
			document.getElementById('frmCriteriaList').value+='|rev|';
		document.getElementById('POSTrev').value=1;
		loc.src='/images/view_images/review-ch.gif';
	}
	JS_GetMapResultData(0);
}
}

function JS_SetRec(num,act) {
if(document.getElementById('frmBrowseType').value=='forward') {
	if(act=='over') 
		document.getElementById('btnSelRec').src='/images/view_images/view_rate_'+num+'.gif';
	if(act=='out') 
		document.getElementById('btnSelRec').src='/images/view_images/view_rate_0.gif';
	if(act=='set') 
		window.location='results.php?gvCriteria=|rec'+num+'|';
}
else if(document.getElementById('frmBrowseType').value=='results') {
	var cur=document.getElementById('POSTrec').value;
	if(act=='over') 
		document.getElementById('btnSelRec').src='/images/view_images/view_rate_'+num+'.gif';
	if(act=='out') 
		document.getElementById('btnSelRec').src='/images/view_images/view_rate_'+cur+'.gif';
	if(act=='set') {
		document.getElementById('frmCriteriaList').value=
			document.getElementById('frmCriteriaList').value.replace('|rec'+cur+'|','');
		document.getElementById('POSTrec').value=num;
		document.getElementById('btnSelRec').src='/images/view_images/view_rate_'+num+'.gif';
		if (num) document.getElementById('frmCriteriaList').value+='|rec'+num+'|';
		JS_GetMapResultData(0);
	}
}
}

function JS_UpdatePrice(varItem){
if(document.getElementById('frmBrowseType').value=='forward') {
	var Cat=varItem.id.substring(0,3);
	window.location='/results.php?gvCriteria=|'+Cat+varItem.value+'|';	
}

else if(document.getElementById('frmBrowseType').value=='similar') {
	var Cat=varItem.id.substring(0,3);
	if (Cat=='epl') document.getElementById('frmCriteriaList').value=document.getElementById('frmCriteriaList').value.replace(/\|epl[^\|]*\|/,'');
	if (Cat=='eph') document.getElementById('frmCriteriaList').value=document.getElementById('frmCriteriaList').value.replace(/\|eph[^\|]*\|/,'');
	if(varItem.value) document.getElementById('frmCriteriaList').value+='|'+Cat+varItem.value+'|';	
}

else if(document.getElementById('frmBrowseType').value=='results') {
	var Cat=varItem.id.substring(0,3);
	if (Cat=='epl') document.getElementById('frmCriteriaList').value=document.getElementById('frmCriteriaList').value.replace(/\|epl[^\|]*\|/,'');
	if (Cat=='eph') document.getElementById('frmCriteriaList').value=document.getElementById('frmCriteriaList').value.replace(/\|eph[^\|]*\|/,'');
	if(varItem.value) document.getElementById('frmCriteriaList').value+='|'+Cat+varItem.value+'|';	
	JS_GetMapResultData(0);
}
}

function JS_RetrieveSimFilter(Criteria){
document.getElementById('frmCriteriaList').value=Criteria;
var Items=new Array();
if(Criteria) {
Items=Criteria.replace(/\|\|/g,',').replace(/\|/g,'').split(',');
for (var i=0;i<Items.length;i++) {
	var cat=Items[i].substring(0,3);
	if (cat=='epl') {
		document.getElementById('epl').value=Items[i].replace('epl','');
	}
	else if (cat=='eph') {
		document.getElementById('eph').value=Items[i].replace('eph','');
	}
	}
	document.getElementById('frameRecList').src=
			'/tools/r_criteria.php?gvBasis=allentity&gvFilter='+Criteria;
	}
}

function JS_DelFilter(varItem,base) {
if(document.getElementById('frmBrowseType').value=='similar') {
	if (varItem) {
		document.getElementById('frmCriteriaList').value=
			document.getElementById('frmCriteriaList').value.replace('|'+varItem+'|','');
		var filter=document.getElementById('frmCriteriaList').value;
		document.getElementById('frameRecList').src=
			'/tools/r_criteria.php?gvBasis='+base+'&gvFilter='+filter;}
}
else if(document.getElementById('frmBrowseType').value=='results') {
	if (varItem) {
		document.getElementById('frmCriteriaList').value=
			document.getElementById('frmCriteriaList').value.replace('|'+varItem+'|','');
		var filter=document.getElementById('frmCriteriaList').value;
		document.getElementById('frameRecList').src=
			'/tools/r_criteria.php?gvBasis='+base+'&gvFilter='+filter;}
		JS_GetMapResultData(0);
}
}

function JS_ClearSearch(){
if(document.getElementById('frmBrowseType').value=='similar') {
	document.getElementById('frmCriteriaList').value='';
	document.getElementById('epl').value='';
	document.getElementById('eph').value='';
	fils=document.getElementById('locBrowseHead').getElementsByTagName('div');
	for(var i=0;i<fils.length;i++) {
		if (fils[i].id.substring(0,4)=='fil_') fils[i].innerHTML='';
	}
}

else if(document.getElementById('frmBrowseType').value=='results') {
	document.getElementById('frmCriteriaList').value='';
	document.getElementById('epl').value='';
	document.getElementById('eph').value='';
	for (var i=1;i<6;i++) {
		if (document.getElementById('rat'+i)) 
			document.getElementById('rat'+i).src='/images/view_images/rate-'+i+'-em.gif';
	}
	if(document.getElementById('POSTrec')) JS_SetRec(0,'set');
	
	if(document.getElementById('imgCollect')) 
		document.getElementById('imgCollect').src='/images/view_images/collect-em.gif';
	if(document.getElementById('POSTcol')) document.getElementById('POSTcol').value=0;
	
	if(document.getElementById('imgComment')) 
		document.getElementById('imgComment').src='/images/view_images/comment-em.gif';
	if(document.getElementById('POSTcom')) document.getElementById('POSTcom').value=0;
	
	fils=document.getElementById('locBrowseHead').getElementsByTagName('div');
	for(var i=0;i<fils.length;i++) {
		if (fils[i].id.substring(0,4)=='fil_') fils[i].innerHTML='';
	}
	JS_GetMapResultData(0);
}
}

