function fileQueueError(file, errorCode, message) {
	try {

		var progress = new FileProgress(file, this.customSettings.progressTarget, this.customSettings.nombre);
		progress.setError();
		progress.toggleCancel(false);

		switch (errorCode) {
		case SWFUpload.QUEUE_ERROR.FILE_EXCEEDS_SIZE_LIMIT:
        	texto_aviso = "El archivo <strong>{archivo}</strong> sobrepasa los <strong>{peso}</strong>, el peso debe ser inferior.";
			progress.setStatus(texto_aviso.replace('{archivo}',file.name).replace('{peso}',this.customSettings.peso_permitido));
			$('#'+this.customSettings.div_aviso).html(texto_aviso.replace('{archivo}',file.name).replace('{peso}',this.customSettings.peso_permitido));
			this.debug("Error Code: File too big, File name: " + file.name + ", File size: " + file.size + ", Message: " + message);
			break;
		case SWFUpload.QUEUE_ERROR.ZERO_BYTE_FILE:
        	texto_aviso = "No puedo subir archivo sin contenido (0 bytes).";
			progress.setStatus(texto_aviso);
			$('#'+this.customSettings.div_aviso).html(texto_aviso);
			this.debug("Error Code: Zero byte file, File name: " + file.name + ", File size: " + file.size + ", Message: " + message);
			break;
		case SWFUpload.QUEUE_ERROR.INVALID_FILETYPE:
        	texto_aviso = "El archivo <strong>{archivo}</strong> no tiene un formato válido, solo se admiten archivos <strong>{tipos}</strong>";
			progress.setStatus(texto_aviso.replace('{archivo}',file.name));
			$('#'+this.customSettings.div_aviso).html(texto_aviso.replace('{archivo}',file.name));
			this.debug("Error Code: Invalid File Type, File name: " + file.name + ", File size: " + file.size + ", Message: " + message);
			break;
		default:
			if (file !== null) {
				progress.setStatus("El archivo <strong>{archivo}</strong> no pudo ser agregado");
			}
			this.debug("Error Code: " + errorCode + ", File name: " + file.name + ", File size: " + file.size + ", Message: " + message);
			break;
		}
	} catch (ex) {
        this.debug(ex);
    }
}

function uploadError(file, errorCode, message) {
	try {
		var progress = new FileProgress(file, this.customSettings.progressTarget, this.customSettings.nombre);
		progress.setError();
		progress.toggleCancel(false);

		switch (errorCode) {
		case SWFUpload.UPLOAD_ERROR.HTTP_ERROR:
			progress.setStatus("Error: " + message);
			this.debug("Error Code: HTTP Error, File name: " + file.name + ", Message: " + message);
			break;
		case SWFUpload.UPLOAD_ERROR.UPLOAD_FAILED:
        	texto_aviso = "Falló la subida del archivo";
			progress.setStatus(texto_aviso);
			this.debug("Error Code: Upload Failed, File name: " + file.name + ", File size: " + file.size + ", Message: " + message);
			break;
		case SWFUpload.UPLOAD_ERROR.IO_ERROR:
			progress.setStatus("Server (IO) Error");
			this.debug("Error Code: IO Error, File name: " + file.name + ", Message: " + message);
			break;
		case SWFUpload.UPLOAD_ERROR.SECURITY_ERROR:
        	texto_aviso = "Error de seguridad";
			progress.setStatus(texto_aviso);
			this.debug("Error Code: Security Error, File name: " + file.name + ", Message: " + message);
			break;
		case SWFUpload.UPLOAD_ERROR.UPLOAD_LIMIT_EXCEEDED:
        	texto_aviso = "Límite de subida exedido";
			progress.setStatus(texto_aviso);
			this.debug("Error Code: Upload Limit Exceeded, File name: " + file.name + ", File size: " + file.size + ", Message: " + message);
			break;
		case SWFUpload.UPLOAD_ERROR.FILE_VALIDATION_FAILED:
        	texto_aviso = "Falló la validación. Subida cancelada.";
			progress.setStatus(texto_aviso);
			this.debug("Error Code: File Validation Failed, File name: " + file.name + ", File size: " + file.size + ", Message: " + message);
			break;
		case SWFUpload.UPLOAD_ERROR.FILE_CANCELLED:
			// If there aren't any files left (they were all cancelled) disable the cancel button
			if (this.getStats().files_queued === 0) {
				$("#"+this.customSettings.cancelButtonId).attr("disabled","disabled");
			}
        	texto_aviso = "Cancelado.";
			progress.setStatus(texto_aviso);
			progress.setCancelled();
			break;
		case SWFUpload.UPLOAD_ERROR.UPLOAD_STOPPED:
        	texto_aviso = "Parado.";
			progress.setStatus(texto_aviso);
			break;
		default:
			progress.setStatus("Unhandled Error: " + errorCode);
			this.debug("Error Code: " + errorCode + ", File name: " + file.name + ", File size: " + file.size + ", Message: " + message);
			break;
		}
	} catch (ex) {
        this.debug(ex);
    }
}


