var rfqDisplayed = false;

function showRFQ() {

	if( rfqDisplayed ) return;
	
	var oAjax = new Ajax.Updater(
			{success: 'rfq'	}
			,'/app/includes/quote_request.html'
			,{ insertion: Insertion.Bottom 
			,onComplete: function(transport) {
				var o = $('rfq');
				Event.observe('frmQuoteRequest', 'submit', submitRFQ);
				rfqDisplayed = true;
				
				$('rfqNom').value = $('qtNomenclature').value;
				$('rfqNSN').value = $('nsn').value;
				
				new Effect.Parallel([
				  new Effect.BlindDown(o, { sync: true }), 
				  new Effect.Opacity(o, { sync: true, from: 0, to: 1 }) 
				], { 
				  duration: 1.0,
				  delay: 0.1
				})
			}});

}

function validateRFQ() {
	var err_msg = '';
	
	if( !$F('fullname') ) {
		err_msg = "Please enter your name.";
	} else if( !$F('email') ) {
		err_msg = "Please enter a valid email address.";	
	} else if( !$F('qty_needed') ) {
		err_msg = "Please enter the quanity you intend to order.";	
	} else if( !$F('payment') ) {
		err_msg = "Please select your intended payment method.";	
	} else if( !$F('timeframe') ) {
		err_msg = "Please select your delivery timeframe.";	
	}

	if( err_msg != '') {
		alert(err_msg);
		return false;
	} else {
		return true;
	}

}

function submitRFQ(e) {
	Event.stop(e);

	if( validateRFQ() ) {
		emailRFQ();
	}

}

function emailRFQ() {
	new Ajax.Request('/app/ap/sendquote_ajax.php',
	  {
		method:'post',
		parameters: $('frmQuoteRequest').serialize(true),
		onSuccess: function(transport, json) {
				sentRFQ();
		},
		onFailure: function(transport){
				alert("I'm sorry, but a problem was encountered while submitting your quote request.  Please try again.");
		}
	});
}

function sentRFQ() {
	var o = $('rfq');
	new Effect.Parallel([
	  new Effect.BlindUp(o, { sync: true }), 
	  new Effect.Opacity(o, { sync: true, from: 1, to: 0 }) 
	], { 
	  duration: 1.0,
	  delay: 0.1,
	  afterFinish: function() {
	  	$('rfq').innerHTML = "<h3>Thank you! Your quote request has been sent.  We will be in contact shortly.</h3>.";
	  	new Effect.Appear(o, { delay: 0.2, duration: 0.5 });
	  }
	})
}