$(document).ready(function() { 

	$("#viv-checkout").validate({
		onkeyup: false,
		errorClass: "invalid",
		rules: {
			promo_code:  {
				remote: "/viv-promo-validator/?viv-promo=check"
			}
		},
		messages: {
			promo_code: {
				remote: "Promo code not found."
			}
		},
		submitHandler: function(form) {
			$('#checkout_button').replaceWith( '<img src="https://viv.s3.amazonaws.com/images/loadingAnimation.gif" id="checkout_button" />' );
			$.ajax({
			  url: '/viv-sub-magnet/',
			  type: 'POST',
			  dataType: 'json',
			  data: $('#viv-checkout').serialize(),
			  cache:false,
			  success: function(json) {
					 //document.getElementById('subscribe_form').innerHTML = json.subscriptionForm; //this works with json return, .html() does not work!!
					 $('form#viv-checkout').replaceWith( $(json.subscriptionForm) );
					 if(json.alert){
						 alert(json.alert);
					 } 
					 var zinioSearch = $('form#viv-checkout').attr('action').search('/www.zinio.com/');
					 if ( ($('form#viv-checkout').attr('action') == 'https://orderpage.ic3.com/hop/orderform.jsp') || (zinioSearch != -1)) { //what about test?
						 $('form#viv-checkout').submit(); // (this likely does rerun validation, but all for the best)
					 }
				  
				},
				error: function(XMLHttpRequest, textStatus, errorThrown){
					//display error!!
					alert(textStatus);
					$('#checkout_button').replaceWith('<input type="submit" id="checkout_button" name="process" value="" />');
				}
			}); 
		}
	});
	
	$('#checkout_button').click(function() {
		$('form#viv-checkout').submit();
	});
	
	$('#apply-code').click(function() {
		$('#apply-code').attr( 'src', 'https://viv.s3.amazonaws.com/images/loadingAnimation.gif' );

		$.ajax({
		  url: '/viv-sub-promo/?promo=apply',
		  type: 'POST',
		  dataType: 'json',
		  data: $('#viv-checkout').serialize(),
		  cache:false,
		  success: function(json) {
				 $('select#subscription_terms').replaceWith( json.subscriptionTerms );
				 $('#apply-code').attr( 'src', 'http://viv.s3.amazonaws.com/images/btn_apply-promo.gif' );
			},
		  error: function(){
				$('#apply-code').attr( 'src', 'http://viv.s3.amazonaws.com/images/btn_apply-promo.gif' );
			}
		});
		return false;
	});
	

});
