var sChallenge = '';
var bCheckContest = false; 
var bMultipleCheck = false;


$(document).ready( function() {
	
	$('#frontend_form').submit( function() {
		
		var oForm = $('#frontend_form');
		
		// Get challenge
		 $.ajax({
			   type: "POST",
			   url: LINKROOT+"/do/frontend/challenge",
			   data: "page="+document.location.href,
			   success: function(sReturn){
			     
			     var sAction = oForm.attr('action');
				 var aParts = sAction.split('/');
				 sAction = aParts[0]+'/'+aParts[1]+'/'+aParts[2]+'/'+aParts[3]+'/'+aParts[4]+'/'+aParts[5]+'/'+aParts[6]+'/?challenge='+sReturn;
				 oForm.attr({action:sAction});
				 oForm.unbind('submit');
				 oForm.submit();
			     
			   }
		});
		return false;
		
	});
	
	$('#review').submit( function() {
		return submitForm($('#review'),'review');
		
	});

	$('#mailafriend').submit( function() {
		return submitForm($('#mailafriend'),'mailafriend');
	});

	$('#report').submit( function() {
		return submitForm($('#report'),'report');
	});	
});


function submitForm(oForm,sValidator) {

	
	var oFields = new Object();
	
	switch(sValidator) {
		case 'review':
			
			// Check if contest
			if($('#iscontest').attr('value') == 1 && $('#islogin').attr('value') == 0) {
				oFields.review_email = 'E-mailadres';
			}
			if($('#iscontest').attr('value') == 1) {
				if(bMc) {
					bCheckContest = true;
				}
			}
						
			oFields.review_name = 'Naam';
			oFields.review_rating = 'Cijfer';
			oFields.review_message = 'Bericht';
			break;
			
		case 'mailafriend':
			oFields.name_sender = 'Je naam';
			oFields.email_sender = 'Je e-mailadres';
			oFields.name_friend = 'Naam vriend(in)';
			oFields.email_friend = 'E-mailadres vriend(in)';
			break;
			
		
		case 'report':
			oFields.report_name_sender = 'Naam';
			oFields.report_email_sender = 'Email-adres';
			oFields.report_message = 'Bericht';
			break;
	}

	if(validateForm(oFields)) {

		// Get challenge
		 $.ajax({
			   type: "POST",
			   url: LINKROOT+"/do/frontend/challenge",
			   data: "page="+document.location.href,
			   success: function(sReturn){
			     
			     var sAction = oForm.attr('action');
				 var aParts = sAction.split('/');
				 sAction = aParts[0]+'/'+aParts[1]+'/'+aParts[2]+'/'+aParts[3]+'/'+aParts[4]+'/'+aParts[5]+'/'+aParts[6]+'/?challenge='+sReturn;
				 oForm.attr({action:sAction});
				 oForm.unbind('submit');
				 oForm.submit();
			     
			   }
		});
		return false;
	} else {
		return false;
	}
}


function validateForm(oFields) {
	var bOk = true;
	var sError = '';
	
	$.each(oFields, function(sKey,sLabel) {
		if($('#'+sKey).attr('value') == '') {
			sError += '  - '+sLabel+' heeft geen juiste waarde'+"\n";
			bOk = false;
		} 
	});
	
	// Check contest multiples?
	if(bCheckContest) {
		if(!bMultipleCheck) {
			sError += '  - Geen antwoord gekozen'+"\n";
			bOk = false;			
		}
	}
	
	if(!bOk) {
		alert('De volgende fouten zijn geconstateerd: '+"\n\n"+sError);
	}
	return bOk;
	
}
