var dirId;
var zipCodeField;

function getZipCode(dirField, comField, zipField) {
	zipCodeField = zipField;
	dirId = 'id-' + dirField;
	var comId = 'id-' + comField;
	var calle = $(dirId).value;
	var comuna = $(comId).options[$(comId).selectedIndex].innerHTML;
	if (comuna == 'Seleccione') {
		alert('Debe seleccionar la comuna');
		return;
	}
	var myAjax = new Ajax.Request("zipcodepopup.do", {
		method : 'get',
		parameters : "calle=" + calle + "&comuna=" + comuna,
		onComplete : alertDireccion
	});
}

function alertDireccion(request) {
	var resp = request.responseText.split('|');
	if (resp[2] != null && resp[2].indexOf('NO TIENE ACCESO') > -1) {
		alert('El servicio no se encuentra disponible en este momento');
	} else {
		$(dirId).value = resp[0] + ' ' + resp[1];
		$(zipCodeField).value = resp[2];
	}
}

function getCoordenadas(utm) {
	var myAjax = new Ajax.Request("convertutm.do", {
		method : 'get',
		asynchronous : false,
		parameters : "utm=" + utm + "&huso=19",
		onComplete : putCoords
	});
}

function getMetadataCoords() {
	var utm = frames['mapa'].MapFrame.alertExtent().split('|');
	if (utm != null) {
		var myAjax = new Ajax.Request("convertutm.do", {
			method : 'get',
			asynchronous : false,
			parameters : "utm=" + utm + "&huso=19",
			onComplete : setMetadataCoords
		});
	}
}

function utm2coords() {
	if (document.form1.UTMNorth.value == "") {
		window
				.alert("Uno o mas campos se encuentran sin datos, verifiquelos antes de realizar la conversion");
	} else if (document.form1.UTMSouth.value == "") {
		window
				.alert("Uno o mas campos se encuentran sin datos, verifiquelos antes de realizar la conversion");
	} else if (document.form1.UTMEast.value == "") {
		window
				.alert("Uno o mas campos se encuentran sin datos, verifiquelos antes de realizar la conversion");
	} else if (document.form1.UTMWest.value == "") {
		window
				.alert("Uno o mas campos se encuentran sin datos, verifiquelos antes de realizar la conversion");
	} else {
		var utm = document.form1.UTMWest.value + ','
				+ document.form1.UTMEast.value + ','
				+ document.form1.UTMSouth.value + ','
				+ document.form1.UTMNorth.value;
		var myAjax = new Ajax.Request("convertutm.do", {
			method : 'get',
			asynchronous : false,
			parameters : "utm=" + utm + "&huso=19",
			onComplete : setMetadataCoords
		});
	}
}

function setMetadataCoords(response) {
	if (response.responseText != '') {
		var txt = response.responseText.split(';');
		var north = txt[0].split('|');
		var south = txt[1].split('|');
		var west = txt[2].split('|');
		var east = txt[3].split('|');

		document.form1.MD_MetadataIdentificationInfoMD_DataIdentificationExtentEX_ExtentGeographicElementEX_GeographicBoundingBoxNorthBoundLatitude.value = north[0];
		document.form1.MD_MetadataIdentificationInfoMD_DataIdentificationExtentEX_ExtentGeographicElementEX_GeographicBoundingBoxNorthBoundLatitudeMinute.value = north[1];
		document.form1.MD_MetadataIdentificationInfoMD_DataIdentificationExtentEX_ExtentGeographicElementEX_GeographicBoundingBoxNorthBoundLatitudeSecond.value = north[2];
		document.form1.MD_MetadataIdentificationInfoMD_DataIdentificationExtentEX_ExtentGeographicElementEX_GeographicBoundingBoxSouthBoundLatitude.value = south[0];
		document.form1.MD_MetadataIdentificationInfoMD_DataIdentificationExtentEX_ExtentGeographicElementEX_GeographicBoundingBoxSouthBoundLatitudeMinute.value = south[1];
		document.form1.MD_MetadataIdentificationInfoMD_DataIdentificationExtentEX_ExtentGeographicElementEX_GeographicBoundingBoxSouthBoundLatitudeSecond.value = south[2];
		document.form1.MD_MetadataIdentificationInfoMD_DataIdentificationExtentEX_ExtentGeographicElementEX_GeographicBoundingBoxEastBoundLongitude.value = east[0];
		document.form1.MD_MetadataIdentificationInfoMD_DataIdentificationExtentEX_ExtentGeographicElementEX_GeographicBoundingBoxEastBoundLongitudeMinute.value = east[1];
		document.form1.MD_MetadataIdentificationInfoMD_DataIdentificationExtentEX_ExtentGeographicElementEX_GeographicBoundingBoxEastBoundLongitudeSecond.value = east[2];
		document.form1.MD_MetadataIdentificationInfoMD_DataIdentificationExtentEX_ExtentGeographicElementEX_GeographicBoundingBoxWestBoundLongitude.value = west[0];
		document.form1.MD_MetadataIdentificationInfoMD_DataIdentificationExtentEX_ExtentGeographicElementEX_GeographicBoundingBoxWestBoundLongitudeMinute.value = west[1];
		document.form1.MD_MetadataIdentificationInfoMD_DataIdentificationExtentEX_ExtentGeographicElementEX_GeographicBoundingBoxWestBoundLongitudeSecond.value = west[2];
	}
}

function putCoords(request) {

	var resp = request.responseText;

	if (resp != '') {
		var txt = resp.split(';');

		var north = txt[0].split('|');
		var south = txt[1].split('|');
		var west = txt[2].split('|');
		var east = txt[3].split('|');
		document.form1.north.value = north[0];
		document.form1.northMinute.value = north[1];
		document.form1.northSecond.value = north[2];

		document.form1.south.value = south[0];
		document.form1.southMinute.value = south[1];
		document.form1.southSecond.value = south[2];

		document.form1.west.value = west[0];
		document.form1.westMinute.value = west[1];
		document.form1.westSecond.value = west[2];

		document.form1.east.value = east[0];
		document.form1.eastMinute.value = east[1];
		document.form1.eastSecond.value = east[2];
	}
	setLocation();
	if (objForm.validate()) {
		document.form1.submit();
	}

}