
//dom ready
$(document).ready(function(){

	//populate current year (footer - copyright)
	$('.curr-year').text((new Date).getFullYear());

	//all ie6 specific code here
	if($.browser.msie && $.browser.version.substr(0, 1) < 7){
		//png fix
		$(document).pngFix();
		
	}
	
	//remove bottom padding from last paragraph
	//$('.prizes p:last').css({ 'padding-bottom' : 0 });
	
	
	/****************************************************************************************************************************************************************/
	/* contest form */
	/****************************************************************************************************************************************************************/

	//validate contest form
	if($('#frmContest').length){ 
	
		//custom validation method for phone number formatting	
		$.validator.addMethod('phoneUS', function(phone_number, element) {
			phone_number = phone_number.replace(/\s+/g, ''); 
			return this.optional(element) || phone_number.length > 9 &&
				phone_number.match(/^(1-?)?(\([2-9]\d{2}\)|[2-9]\d{2})-?[2-9]\d{2}-?\d{4}$/);
		}, 'Please enter a valid telephone number.');
	
		//custom validation method for postal code
		$.validator.addMethod("postalCode", function(postalcode, element) {
			return this.optional(element) || postalcode.match(/(^\d{5}(-\d{4})?$)|(^[ABCEGHJKLMNPRSTVXYabceghjklmnpstvxy]{1}\d{1}[A-Za-z]{1} ?\d{1}[A-Za-z]{1}\d{1})$/);
		}, "Please specify a valid postal/zip code");


		var validator = $('#frmContest').validate({
			rules: {
					selTitle: 'required',
					txtFirst: { 'required': true, 'minlength': 2 },
					txtLast: { 'required': true, 'minlength': 2 },
					txtAddress: { 'required': true, 'minlength': 4 },
					txtCity: { 'required': true, 'minlength': 2 },
					txtPostal: { 'required': true, 'minlength': 6, 'postalCode': true },
					txtEmail: { 'required': true, 'email': true },
					txtPhone: { 'required': true, 'phoneUS': true }
			},
			messages: {
					selTitle: '',
					txtFirst: '',
					txtLast: '',
					txtAddress: '',
					txtCity: '',
					txtPostal: '',
					txtEmail: '',
					txtPhone: ''
			},
	//		errorPlacement: function(error, element) {
	//			if ( element.is(":radio") )
	//				error.appendTo( element.parent().next().next() );
	//			else if ( element.is(":checkbox") )
	//				error.appendTo ( element.next() );
	//			else
	//				error.appendTo( element.parent().next() );
	//		},
			errorPlacement: function(error, element){
				error.hide();	
			},
			submitHandler: function(){
				//alert('submitted');
				var strData = $('#frmContest').serialize();
				$.ajax({
					type: 'POST',
					url: '_tmp-contest-entry.php',
					data: strData,
					success: contestSuccess,
					error: showError
				});
				
			},
			success: function(){
				//do nothing, styles automatically return to defaults	
			}
											  
		});//validator
	};//if

	function contestSuccess(responseText, statusText){
		if(responseText == 1){
			$('#frmContest').hide();
			$('#divResponse').show().html('<p><strong>Thank-you!</strong><br />Your entry has been received successfully.</p><p><a href="prizing-details.shtml">View prize details?</a></p>');
		}else{
			$('#frmContest').hide();
			$('#divResponse').show().html('<p><strong>Whoops, there was an error.</strong><br />' + responseText + '</p><p><a id="lnkRetryContest" href="javascript:void(0);">Try again?</a>');
			$('#lnkRetryContest').click(function(){ $('#divResponse').hide(); $('#frmContest').show(); });
		}

		//$('#divResponse').show();
		
	}//contestSuccess

	/* error message for failed ajax requests */
	function showError(XMLHttpRequest, textStatus, errorThrown){ alert('Error: ' + textStatus + '\n' + errorThrown); };


   
}); //dom ready








