function send()
{document.theform.submit()}


function doSearch() {
	searchForm = document.search.elements;
	submitForm = document.search;
//Simple 
	var t1 = searchForm[0].value = dwr.util.getValue("simpleWord");
	var term1att = searchForm[1].value = "fullText";


//Keyword 
	var keywordatt1 = document.getElementById("keywordText").value;
	var keywordStr = dwr.util.getValue("searchThis");
	if (keywordStr != "Please enter text you want to search") {
		while (keywordStr.substring(0, 1) == "%") {
			keywordStr = keywordStr.substring(1, keywordStr.length);
			dwr.util.setValue("keywordStr", keywordStr);
			var t2 = searchForm[3].value = dwr.util.getValue("keywordStr");
		}
		dwr.util.setValue("keywordStr", keywordStr);
		var t2 = searchForm[3].value = dwr.util.getValue("keywordStr");
	} else {
		var t2 = searchForm[3].value = "";
	}

//var t2 = searchForm[3].value = dwr.util.getValue("keywordStr");
	var keywordatt1 = searchForm[4].value = dwr.util.getValue("keywordText");


//Spatial
	var t3 = searchForm[6].value = dwr.util.getValue("complete");
	var spatialatt1 = searchForm[7].value = dwr.util.getValue("coordType");


//Temporal 
	var when = searchForm[9].value = dwr.util.getValue("dateTest");
	var t4 = searchForm[10].value = dwr.util.getValue("startDate");
	var temporalatt1 = searchForm[11].value = "beginDate";
	if (when == "during") {
		var t5 = searchForm[12].value = dwr.util.getValue("endDate");
	} else {
		var t5 = searchForm[12].value = dwr.util.getValue("");
	}
	var temporalatt2 = searchForm[13].value = "endDate";


//Source 
	var c_value = "";
	if (document.sourceValues.sources[0].checked) {
		c_value = document.sourceValues.sources[0].value;
		var t6 = searchForm[15].value = c_value;
	} else {
		var t6 = searchForm[15].value = "";
	}
	if (document.sourceValues.sources[1].checked) {
		c_value = document.sourceValues.sources[1].value;
		var t6 = searchForm[16].value = c_value;
	} else {
		var t6 = searchForm[16].value = "";
	}
		if (document.sourceValues.sources[2].checked) {
		c_value = document.sourceValues.sources[2].value;
		var t6 = searchForm[17].value = c_value;
	} else {
		var t6 = searchForm[17].value = "";
	}

//dwfaulting it to take "ALL"
//var t6 = searchForm[15].value = "All";      
	var sourceatt = searchForm[18].value = "datasource";
	var maxrecords = searchForm[19].value = dwr.util.getValue("results");
	var queryString = searchForm[20].value = dwr.util.getValue("query");
// Operators|Conditions
	if (t1 != "" && t2 != "") {
		searchForm[2].value = "and";
	}
	if (t2 != "" && t3 != "") {
		searchForm[5].value = "and";
	} else {
		searchForm[5].value = "";
	}
	if (t3 != "" && t4 != "") {
		searchForm[8].value = "and";
	}
	if (t4 != "") {
		searchForm[14].value = "and";
	}
	var temporalPeriod = document.getElementById("dateTest").value;
	var temporalStart = dwr.util.getValue("startDate");
	var temporalEnd = dwr.util.getValue("endDate");
	if ((temporalStart != "" && temporalEnd == "") && temporalPeriod == "during") {
		alert("You have not entered End date");
	}
	if (t1 == "" && t2 == "" && t3 == "" && t4 == "" && t5 == "") {
		alert("No query has been entered!");
	} else {
		msg = "SOLR - VARIABLES: Field Name(Type) = Value\n";
		msg += "Total number of elements being passed = " + searchForm.length + "\n";
		for (i = 0; i < searchForm.length; i++) {
			n = i % 3;
			if (n == 0) {
				msg += "\n";
			}
			msg += " " + i + " - " + searchForm[i].name + "(" + searchForm[i].type + ") = '" + searchForm[i].value + "'" + "\n";
		}
		//alert(msg);
		var win = window.open("", "iaiStatusWindow", "resizable,scrollbars,toolbar,location,status,menubar");
		win.focus();
		submitForm.submit();
	}
}
function query() {
    var isDSSelected = false;
    for (i = 0;  i < document.sourceValues.length;  i++)
    {
      if (document.sourceValues[i].checked)
      {
        isDSSelected = true;
      }
    }
	if(!isDSSelected)
	{
		alert("At least one data source should be selected");
		checkAll(document.sourceValues.sources);
	}
	var coordTypeNameArray = new Array("Overlaps", "Fully Enclosed by");
	var queryString = "";
	var simpleOn = false;
	var keywordOn = false;
	var spatialOn = false;
	var temporalOn = false;
	var sourceOn = false;
	var sourceOff = false;
	var supersourceOn = false;
	var simpleWord = document.getElementById("simpleWord").value;
	var keyAttribute = document.getElementById("keywordText").value;
	var keyTerm = document.getElementById("searchThis").value;
	var spatialString = document.getElementById("complete").value;
	var spatialSelect = document.getElementById("placeList").value;
	var spatialSearch = dwr.util.getValue("coordType");
	var temporalPeriod = document.getElementById("dateTest").value;
	var temporalStart = dwr.util.getValue("startDate");
	var temporalEnd = dwr.util.getValue("endDate");
	var sources = document.getElementById("sources");
	
	//Testing how many source checkboxes are checked
		var isDSSelected = false;
		for (i = 0; i < document.sourceValues.length; i++) {
			if (document.sourceValues[i].checked) {
				isDSSelected = true;
			}
		}
		//At least one data source should be selected
		if (!isDSSelected) {
			alert("At least one data source should be selected");
			checkAll(document.sourceValues.sources);
		}
		//If all are selected default the query to all
		var TotalBoxes = 0;
		var TotalOn = 0;
		for (var i = 0; i < document.sourceValues.length; i++) {
			var e = document.sourceValues.elements[i];
			if ((e.name != "allbox") && (e.type == "checkbox")) {
				TotalBoxes++;
				if (e.checked) {
					TotalOn++;
				}
			}
		}
		if (TotalBoxes == TotalOn) {
			supersourceOn = true;
		} else {
			supersourceOn = false;
		}
	
//Simple ON
	if (simpleWord != "") {
		var simpleOn = true;
	}

//Keyword ON
	if (keyAttribute != "" && (keyTerm != "Please enter text you want to search" && keyTerm != "")) {
		var keywordOn = true;
	}

//SpatialON
	if (spatialString != "" || spatialSelect != "Select from the list") {
		var spatialOn = true;
	} else {
		var spatialOn = false;
	}



//Temporal ON
	if ((temporalStart != "" && temporalEnd != "") && temporalPeriod == "during" || (temporalPeriod != "during" && (temporalStart != "" && temporalEnd == "N/A"))) {
		temporalOn = true;
	}
	if ((temporalStart != "" && temporalEnd == "N/A") && temporalPeriod == "during") {
		alert("Please select enddate or the date range will be ignored");
	}

//Source ON
	if (sources != "") {
		var sourceOn = true;
	}


//Actual Query
	if (simpleOn) {
		queryString += " Entire Document : " + simpleWord + " ";
	}
	if (simpleOn && keywordOn) {
		queryString += "and  ";
	}
	if (keywordOn && !simpleOn) {
		queryString += keyAttribute + " = " + keyTerm + " ";
	}
	if (simpleOn && keywordOn) {
		queryString += keyAttribute + " = " + keyTerm + " ";
	}
	if ((simpleOn || keywordOn) && spatialOn) {
		queryString += " and ";
	}
	if (spatialOn) {
		queryString += dwr.util.getValue("coordType") + " coordinates (N,W,S,E) = " + "(" + spatialString + ") ";
	}
	if ((simpleOn || keywordOn || spatialOn) && temporalOn) {
		queryString += " and ";
	}
	if (temporalOn) {
		queryString += temporalPeriod + " " + temporalStart + " to " + temporalEnd;
	}
	if (simpleOn || keywordOn || spatialOn || temporalOn) {
		queryString += " and  ";
	}
	if (!supersourceOn) {
		if (sourceOn && (simpleOn || keywordOn || temporalOn || spatialOn)) {
			queryString += "from sources: ";
			for (i = 0; i < document.sourceValues.sources.length; i++) {
				if (document.sourceValues.sources[i].checked == true) {
					queryString += document.sourceValues.sources[i].value + ", ";
				}
			}
		}
	}
	if (supersourceOn && (simpleOn || keywordOn || temporalOn || spatialOn)) {
		queryString += "from sources: All  ";
	}
	var querylen = queryString.length - 2;
	var completeQuery = dwr.util.setValue("query", queryString.substring(0, querylen));
}
function doClearQ() {
	dwr.util.setValue("simpleWord", "");
	dwr.util.setValue("searchThis", "");
    dwr.util.setValue("keywordText", "FullText");
	dwr.util.setValue("keywordText", "Select from the list");
	dwr.util.setValue("startDate", "");
	dwr.util.setValue("endDate", "");
	dwr.util.setValue("complete", "");
	dwr.util.setValue("north", "");
	dwr.util.setValue("west", "");
	dwr.util.setValue("east", "");
	dwr.util.setValue("south", "");
	dwr.util.setValue("query", "");
    dwr.util.setValue("placeList", "Select from the list");
	checkAll(document.sourceValues.sources);
	map.setCenter(new GLatLng(34, -17), 1);
	map.clearOverlays();
	dwr.util.setValue("placeList", "Select from the list");
}
//check all sources by default
function checkAll(field) {
	for (i = 0; i < field.length; i++) {
		field[i].checked = true;
	}
}
function keywordClear() {
	dwr.util.setValue("keywordText", "Select from the list");
	dwr.util.setValue("searchThis", "");
	query();
}
function spatialClear() {
	dwr.util.setValue("placeList", "Select from the list");
	dwr.util.setValue("north", "");
	dwr.util.setValue("west", "");
	dwr.util.setValue("east", "");
	dwr.util.setValue("south", "");
	dwr.util.setValue("complete", "");
	dwr.util.setValue("completeBound", "");
	map.setCenter(new GLatLng(34, -17), 1);
	map.clearOverlays();
	query();
}
function temporalClear() {
	dwr.util.setValue("dateTest", "during");
	dwr.util.setValue("startDate", "");
	dwr.util.setValue("endDate", "");
	query();
}
function clearTempDate() {
	var temporalPeriod = document.getElementById("dateTest").value;
	var temporalEnd = dwr.util.getValue("endDate");
	if (temporalPeriod == "before" || temporalPeriod == "after") {
		dwr.util.setValue("endDate", "N/A");
	}
	if (temporalPeriod == "during" && temporalEnd == "N/A") {
		dwr.util.setValue("endDate", "");
	}
	query();
}

