// JavaScript Document

// show or hide filter dialog
	function fDialog(id){
		theObj = document.getElementById(id);
		if (theObj.id = "c1"){
				if(theObj.style.display == "block"){
					theObj.style.display = "none"
			//show more filters
				document.getElementById("moreFilters").style.display = "inline";
			}
			return false;
		}
	}

// validate frequency fields
	function validateFreq(){
				if(!sprytextfield1.validate()){
						document.getElementById("minFreq").select();
						document.getElementById("minFreq").focus();
						return false;
					} else if(!sprytextfield2.validate()){
						document.getElementById("maxFreq").select();
						document.getElementById("maxFreq").focus();
						return false;
				}
	}
	
// Translate frequency from MHz to GHz and vice versa

	function transFreq(theId,fld1,fld2){

			// MHz or GHz radio button
			var btnObj = document.getElementById(theId);

			// Min and Max Entry fields
			var minFld = document.getElementById(fld1); 
			var maxFld = document.getElementById(fld2);

			var btnObjVal = btnObj.value;
			var minFldVal = minFld.value;
			var maxFldVal = maxFld.value;

				if(btnObjVal == "0") {
						if(sprytextfield1.validate() & sprytextfield2.validate()) {
								minFld.value = minFldVal * 1000;
								maxFld.value = maxFldVal * 1000;
								minFld.focus();
								btnObj.disabled = true;
								document.getElementById("rG").disabled = false;
						} else {
								btnObj.disabled = true;
								document.getElementById("rG").disabled = false;
								return;
								}
					
				} else {
						if(sprytextfield1.validate() & sprytextfield2.validate()) {
								minFld.value = minFldVal / 1000;
								maxFld.value = maxFldVal / 1000;
								minFld.focus();
								btnObj.disabled = true;
								document.getElementById("rM").disabled = false;
						} else {
								btnObj.disabled = true;
								document.getElementById("rM").disabled = false;
								return;
							   }
				}
	}
	

	// get datasheet
	function getPage(mVal,catCode){
	//alert(mVal + '/' + catCode);
	//loc is the product id	
		//loc = catCode;
		//loc = document.getElementById("gID").value; //product category path number
		var arr1 = new Array();
		arr1 = mVal.split('/');
		mNum = arr1[0];//Model Number
		d = arr1[1];// 0 - no datasheet, 1 - has datasheet

		if(mVal){
				if(d == 0) {
					alert("Please Call Factory For More Information:\n (973) 881-8800");
					return false;
					} else {
						dsUrl = "/products/" + catCode + "/ds/" + mNum + ".pdf" + "";
						//dsUrl = "/products/" + loc + "/" + mNum + ".pdf" + "";
						dsWindow = window.open(dsUrl,"dsPage","width=1024,height=700");
					}

					} else {
						return false;
			}
	}


	function SortBy(sParam,id){
		x = document.getElementById(id);
		xParams = sParam.split(",");
		eval(xParams[0]).sort(xParams[1],xParams[2]);
		x.selectedIndex = 0;
		return;
	}

	function cleanUp(id1,id2,id3){
		document.getElementById(id1).options.selectedIndex = 0;
		document.getElementById(id2).value = "";
		document.getElementById(id3).value = "";
		document.getElementById("rM").checked = true;
		document.getElementById("rM").disabled = true;
		document.getElementById("rG").checked = false;
		document.getElementById("rG").disabled = false;
		sprytextfield1.reset();
		sprytextfield2.reset();
		ds1.filter(null);
		}
		
		
function f5 (ds, row){
		
	if(!sprytextfield1.validate() && !sprytextfield2.validate()){
		return false; // frequency fields are empty
		} else {
			// minimum and maximum frequency field values
			var minFreq = parseFloat(document.getElementById("minFreq").value); 
			var maxFreq = parseFloat(document.getElementById("maxFreq").value);
			var series = document.getElementById("seriesCategory").value;

			if( maxFreq < minFreq ) {

				// Swap values if max freq is less than min freq
				var tempMin = maxFreq;
				var tempMax = minFreq;

				minFreq = tempMin; 
				maxFreq = tempMax;
				
				// Switch textfield values
				document.getElementById("minFreq").value = minFreq; 
				document.getElementById("maxFreq").value = maxFreq;
			}

					// set lower and upper limits of list
					tol = 0.99;
					tol1 = 0.99;
					var minValfloor = minFreq - (minFreq * tol);
					var minValceiling = minFreq + (minFreq * tol1);
					var maxValfloor = maxFreq - (maxFreq * tol);
					var maxValceiling = maxFreq + (maxFreq * tol1);
					
					var center = (minFreq + maxFreq) / 2;

					var centerFreqFloor = center - (center * tol)
					var centerFreqCeiling = center + (center * tol)
	
					// set search rows
					var b = row.seriesCode; 
					var c = row.FreqMin; 
					var d = row.FreqMax;
					
						// when series is blank
							if(series == ''){
								// find frequency in MHz
								if(document.getElementById("rM").checked){

									return c >= minValfloor && c <= minFreq && d >= maxFreq && d <= maxValceiling ? row : null;


								} else { 
									//find frequency in GHz

									return c/1000 >= minValfloor && c/1000 <= minFreq && d/1000 >= maxFreq && d/1000 <= maxValceiling ? row : null;
}
							//when series is not blank
							} else {
								// find frequency in MHz
								if(document.getElementById("rM").checked){

										return b == series && c >= minValfloor && c <= minFreq && d >= maxFreq && d <= maxValceiling ? row : null;
		
								} else { 
									//find frequency in GHz

										return b == series && c/1000 >= minValfloor && c/1000 <= minFreq && d/1000 >= maxFreq && d/1000 <= maxValceiling ? row : null;
								}
							}
						
	} // end validate fields
	
	ds1.sort("minFreq","maxFreq","ascending");
	
}

 function fModel(ds, row){
	 
		var modelStr = document.getElementById("modelNum").value; 
		var c = row.model;
		if(modelStr){
			return c.toUpperCase() == modelStr.toUpperCase() ? row : null;
		} else {
			return row;
			} 
			
}



