var statusErrorMap = {
	'400' : 'O servidor entendeu a requisição, mas seu conteúdo era inválido.',
	'401' : 'Acesso não autorizado.',
	'403' : 'Recurso proibido não pôde ser acessado.',
	'500' : 'Erro interno do servidor.',
	'503' : 'Serviço indisponível.'
};

// Método utilizado para se recuperar a mensagem de erro quando ocorrer a
// manipulação via jQuery de erro na requisição ajax (ajaxError dado pelo
// atributo onError do componente ajaxStatus).
function getErrorMessage(event, jqXHR, ajaxSettings, thrownError) {
	var status = jqXHR.status;

	if (status) {
		var message = statusErrorMap[jqXHR.status];
		if (!message)
			return status + ': Erro desconhecido.';

		return status + ': ' + message;
	}

	if (thrownError == 'parsererror')
		return 'Decodificação da requisição JSON falhou.';

	if (thrownError == 'timeout')
		return 'Tempo da requisição expirado.';

	if (thrownError == 'abort')
		return 'Requisição abortada pelo servidor.';

	return 'Erro desconhecido.';
}

// Método onde ocorrem a troca da mensagem de erro de processamento da
// requisição ajax e a exibição da modal que a contém.
function handleError(idMessage, event, jqXHR, ajaxSettings, thrownError) {
	$('span[id$="' + idMessage + '"]').html(
			getErrorMessage(event, jqXHR, ajaxSettings, thrownError));
	ajaxResponseWithErrorModal.show();
}