var no_selection = -1;
var ManageDataURL = 'tafi/app_code/manage_data_functions.php';
function validateDataSource(type)
{
	var newDataSource = document.getElementById("newDataSource");
	var description = document.getElementById("description");
	var selectedDataSource = document.getElementById("selectedDataSource");
	if(type=="Import" )
	{
		if(selectedDataSource.value == no_selection)
		{
			displayErrorMessage("Select datasource to import");
		}
		else
		{
			 var x = window.showModalDialog("tafi/modules/manage_data/upload_page.php?datasourceId="+selectedDataSource.value ,window, 'dialogHeight: 220 px; dialogWidth:600 px; status: no; toolbar: no ; titlebar: no ; menubar: no; resizable: no ;scroll: no ;'  );
			 if(x==1 || x==2)
			 {
				window.location.href="tafi.php?module=manage_data&op=import_datasource&datasourceId="+selectedDataSource.value+"&type="+x;
			 }
		}
	}
	else if(type=="Remove")
	{
		if(selectedDataSource.value == no_selection)
		{
			displayErrorMessage("Select datasource to remove");
		}
		else
		{
			window.location.href="tafi.php?module=manage_data&op=remove_datasource&datasourceId="+selectedDataSource.value;
		}
	}
	else if(type=="Create")
	{
		if(removespaces(newDataSource.value).length == 0 )
		{
			displayErrorMessage("Datasource name is required");
		}
		else
		{
			validateDataSourceName(newDataSource.value,description.value);
		}
	}
}

function validateDataSourceName(newName,newDesc)
{
	hideErrorMessage();
	sendAjaxReq(ManageDataURL,'type=validateDSName&datasourceName='+newName+"&datasourceDesc="+newDesc,'POST','validateDataSourceNameResponse');
}
function validateDataSourceNameResponse(responseText)
{
	var newDataSource = document.getElementById("newDataSource");
	var description = document.getElementById("description");
	
	var Msg = responseText.substr(0,5);
	var response = responseText.substr(6,responseText.length);
	if(Msg == 'ERROR')
	{
		displayErrorMessage(response);
		
	}
	else if(Msg == 'MSGGE')
	{
		alert(response);
		
		newDataSource.value = "";
		description.value = "";
		updateDataSourceList();
		
	}
}

function updateDataSourceList()
{
	sendAjaxReq(ManageDataURL,'type=updateDSList','POST','updateDataSourceListResponse');
}

function updateDataSourceListResponse(responseText)
{
	var comboBox = document.getElementById('selectedDataSource');
	fillOtherComboBox(comboBox , responseText,false);
}

function removeDatasource(datasourceId)
{
	var removeDatasource = document.getElementById("removeDatasource_1");
	var removeSelectedVariables = document.getElementById("removeDatasource_2");
	var removeSelectedDataRunID = document.getElementById("removeDatasource_3");
	
	
	if(!removeDatasource.checked && !removeSelectedVariables.checked)
	{
		displayErrorMessage("Select Remove Datasource or Remove Selected Measures");
		
	}
	
	if(removeDatasource.checked)
	{
		var message = "Remove datasource will remove all the existing Measures/Geographies in this datasource.\n\nDo you want to continue?";
		var r = confirm(message);
		if(r == true)
		{
			sendAjaxReq(ManageDataURL,'type=isDatasourceUsed&datasourceId='+datasourceId,'POST','removeDatasourceResponse');
		}
		else
		{
			return;
		}
	}
	//selected variables
	else if(removeSelectedVariables.checked)
	{
		var selectedVariables = document.getElementById("variablesList").value;
		if(selectedVariables == "")
		{
			displayErrorMessage("Select measures to remove");
		}
		else
		{
			document.forms[0].submit();
		}
			
	}
	else if(removeSelectedDataRunID.checked)
	{
		var selectedDataRunIds = document.getElementById("dataRunIDList").value;
		if(selectedDataRunIds == "")
		{
			displayErrorMessage("Select Data Run IDs to remove");
		}
		else
		{
			 document.getElementById("type").value = "removeDataRunId";
			document.forms[0].submit();
		}
	}
}
function removeDatasourceResponse(responseText)
{	
	if(responseText == 'INVALID')
	{
		document.getElementById("errorParagraph").style.display = "block";
		return;
	}
	else
	{	
		datasourceId = responseText.substring(5);
		window.location.href="tafi.php?module=manage_data&op=datasource_result_page&type=removeDatasource&datasourceId="+datasourceId;
	}
}

function importDatasource()
{
	var importFullDatasource = document.getElementById("importDatasource_1");
	var importMeasures = document.getElementById("importDatasource_2");
	var datasourceId = document.getElementById("datasourceId").value;
	var confirmMessage = "Import full datasource will replace the existing datasource.\n\nDo you want to continue?";
	var message = "New measures will not be used in reports at this time";
	if(importFullDatasource.checked)
	{
		var r = confirm(confirmMessage);
		if(r == true)
		{
			alert(message);
			window.location.href="tafi.php?module=manage_data&op=import_full_datasource&datasourceId="+datasourceId;
		}
	}
	else if(importMeasures.checked)
	{
		window.location.href="tafi.php?module=manage_data&op=import_measures&datasourceId="+datasourceId;
	}
}

function importMeasures()
{
	var measuresList = document.getElementById("measuresList");
	var geographiesList = document.getElementById("geographiesList");
	if(measuresList.value !="" || geographiesList.value !="")
	{
		document.forms[0].submit();
	}
	else
	{
		displayErrorMessage("Select measures or geographies to import");
	}
}
function previewDatasource()
{
	var currentPreview = document.getElementById("currentPreview");
	var importedPreview = document.getElementById("importedPreview");
	var datasourceId = document.getElementById("datasourceId").value;
	var current = 0;
	var imported = 0;
	if(!(currentPreview.checked) && !(importedPreview.checked))
	{
		displayErrorMessage("Select datasource to view");
	}
	else
	{
		if(currentPreview.checked)
		{
			current = 1;
		}
		if(importedPreview.checked)
		{
			imported = 1;
		}
		window.location.href="tafi.php?module=manage_data&op=import_full_datasource_preview&datasourceId="
							+datasourceId+"&current="+current+"&imported="+imported;
	}
}

function importFullDatasource()
{
	var datasourceId = document.getElementById("datasourceId").value;

	var message = "New measures will not be used in reports at this time";

	alert(message);

	sendAjaxReq(ManageDataURL,'type=validateImportDS&datasourceId='+datasourceId,'POST','importDatasourceResponse');
	
}
function importDatasourceResponse(responseText)
{
	var archive = document.getElementById("importFullDS_archive");
	var overwrite = document.getElementById("importFullDS_overwrite");
	var datasourceId = document.getElementById("datasourceId").value;
	var type
	if(archive.checked)
	{
		type = "archive";
	}
	if(overwrite.checked)
	{
		type = "overwrite";
	}
	if(responseText == 'INVALID')
	{
		hideErrorMessage();
		document.getElementById("errorParagraph").style.display = "block";
		return;
	}
	else
	{
		window.location.href="tafi.php?module=manage_data&op=datasource_result_page&datasourceId="
			+datasourceId+"&type="+type;
	}
}

function enableDisableSelect(radioID,selectID,otherSelectID)
{
	if(document.getElementById(radioID).checked)
	{
		document.getElementById(selectID).disabled = false;
		document.getElementById(otherSelectID).disabled = true;
	}
	else
	{
		document.getElementById(selectID).disabled = true;
		document.getElementById(otherSelectID).disabled = false;
	}
}
