/**********************************************************************************************************************
	Find Functions
**********************************************************************************************************************/
function FindCitiesOriginByState(intStateId)
{
	// mostra Carregando no drop down
    avisarCargaDrpDwn('cityOrigin');
    
    objSaveCargoAction.onFindCitiesOriginByStateError = handleError;
    objSaveCargoAction.FindCitiesOriginByState(intStateId, function(result){});
} 

function FindCitiesDestinationByState(intStateId)
{
	// mostra Carregando no drop down
    avisarCargaDrpDwn('cityDestination');
    
    objSaveCargoAction.onFindCitiesDestinationByStateError = handleError;
    objSaveCargoAction.FindCitiesDestinationByState(intStateId, function(result){ });
}


/**********************************************************************************************************************
	Save Functions
**********************************************************************************************************************/
var row_id = false;
/*
	Adiciona um elemento carga na lista de cargas
	params: void
	return: void
*/
function addItemToList()
{
	if(submitFlag)
	{
        alert( systemWorking );
        return false;
    }

	var arrTruckType = TransformCheckboxesToArrayValues(document.formCargo.truckType);
	objSaveCargoAction.onAddToListError = handleError;
	objSaveCargoAction.AddToList(xoad.html.exportForm('formCargo'),
								arrTruckType,row_id,
								function(returnValue)
								{
									row_id = false;
								});
}

/*
	Edita um elemento da lista de cargas
	params: int row_id
	return: void
*/
function EditItem(row_id_tmp)
{
	row_id = row_id_tmp;
	objSaveCargoAction.onEditItemError = handleError;
	objSaveCargoAction.EditItem(row_id,
		function(returnValue)
		{
			document.getElementById('dateEntry').focus();
		});
}

/*
	Remove um elemento da lista de cargas
	params: int intCargoId
	return: void
*/
function DeleteItem(row_id)
{
	objSaveCargoAction.onDeleteItemError = handleError;
	objSaveCargoAction.DeleteItem(row_id, function(result){});

	return;
}

/*
	Exibe os itens guardados na lista em detalhes
	params: int cargoId
	return: void
*/
function ShowItemDetail(row_id)
{
	AbrirPopUp("itemDetail.php?row_id="+row_id, 'detail','width=700,height=300,scrollbars=yes');
}


/*
	Salvar os elementos da lista de cargas
	params: void
	return: void
*/
function saveAnnouncement()
{
    if(submitFlag)
	{
        alert( systemWorking );
        return false;
    }
    
    var arrTruckType = TransformCheckboxesToArrayValues(document.formCargo.truckType);
	if(GetElement('flag_register'))
	{
		var optIsUser	= document.formCargo.flag_register;
		var isNewUser	= optIsUser[1].checked;
		if (isNewUser)
		{
	        objSaveCargoAction.onSaveManyError = handleError;
	        objSaveCargoAction.SaveMany(xoad.html.exportForm('formCargo'),function(returnValue){});
		}
		else
		{
			alert( doLogin );
			document.getElementById('logoImgAnchor').focus();
			document.getElementById('login').focus();
			var btLogin = GetElement('btOkToLogin');
			btLogin.onclick = function()
			{
				var login		= GetElement('login').value;
				var password	= GetElement('password').value;
				objSaveCargoAction.onDoLoginAndSaveOneError = handleError;
				objSaveCargoAction.DoLoginAndSaveOne(xoad.html.exportForm('formCargo'),
													arrTruckType,
													login,
													password,
													function(result){});
			}
		}
	}
	else
	{
		objSaveCargoAction.onSaveManyError = handleError;
		objSaveCargoAction.SaveMany(xoad.html.exportForm('formCargo'), arrTruckType,function(returnValue){});
	}
}