/**
 * @author Erwin
 */

var website_dir = '/';

$(document).ready(function() 
{
	
	$('#hl-pictures').cycle({
	    fx:     'scrollDown',
	    timeout:  8000,
	    random:  0,
	    pager:  '#hl-pager',
	    prev: '#hl-prev',
	    next: '#hl-next'//,
	  //  pagerAnchorBuilder: pagerFactory
	});
	
	function pagerFactory(idx, slide) {
		var s = idx > 2 ? ' style="display:none"' : '';
		return '<li'+s+'><a href="#">'+(idx+1)+'</a></li>';
	}; 
	
	var headerPictureId = 1;
 	var amountHeaderPictures = 10;
	
	var headerPictureId = Math.ceil(amountHeaderPictures*Math.random());
	
	
	
	//$('#headerPictureId_'+headerPictureId).show();
	
	
	
	/*
	refreshId = setInterval(function()
 	{
 		rotateHeaderPicture();
 	}, 6000);
	*/
 	$("#addComment").validate({
  	rules: {
    	CommentName: "required",
			CommentMail: {
				required: true,
				email: true
			} ,
			CommentComment : "required"
   	},
		messages: {
			CommentName: "Naam moet zijn ingevuld.",
			CommentMail: "Vul een geldig email adres in.",
			CommentComment: "Bericht moet zijn ingevuld."
		}
	});
	
	$("#NewsAddForm").validate({
  	rules: {
    	NewsTitle:  "required"
		},
		messages: {
			NewsTitle: "Titel moet zijn ingevuld."
		}
	});
	
	$("#NewsEditForm").validate({
	  	rules: {
	    	NewsTitle:  "required"
			},
			messages: {
				NewsTitle: "Titel moet zijn ingevuld."
			}
	});
	
	
	
	
	
	$("#AthleteAddForm").validate({
  	rules: {
    	AthleteFirstname:  "required",
    	AthleteLastname:  "required",
    	AthleteAssociation:  "required",
    	AthleteDistance:  "required",
    	AthleteCategoryId:  "required"
		},
		messages: {
			AthleteFirstname:  "Voornaam moet zijn ingevuld.",
    	AthleteLastname:  "Achternaam moet zijn ingevuld.",
    	AthleteAssociation:  "Vereniging moet zijn ingevuld.",
    	AthleteDistance:  "Afstand moet zijn ingevuld.",
    	AthleteCategoryId:  "Categorie moet zijn geselecteerd."
		}
	});
	
	$("#AthleteEditForm").validate({
  	rules: {
    	AthleteFirstname:  		"required",
    	AthleteLastname:  		"required",
    	AthleteCity:  				"required",
    	AthleteAssociation:  	"required",
    	AthleteDistance:  		"required",
    	AthleteCategoryId:  	"required"
		},
		messages: {
			AthleteFirstname:  		"Voornaam moet zijn ingevuld.",
    	AthleteLastname:  		"Achternaam moet zijn ingevuld.",
    	AthleteCity:  				"Woonplaats moet zijn ingevuld.",
    	AthleteAssociation:  	"Vereniging moet zijn ingevuld.",
    	AthleteDistance:  		"Afstand moet zijn ingevuld.",
    	AthleteCategoryId:  	"Categorie moet zijn geselecteerd."
		}
	});
	
	$("#RaceAddForm").validate({
  	rules: {
    	RaceDate:  			"required",
    	RaceDistance:  	"required",
    	RaceEvent:  		"required",
    	RaceLocation:  	"required"
		},
		messages: {
			RaceDate:  			"De datum van de wedstrijd moet zijn ingevuld (dd-mm-jjjj).",
			RaceDistance:  	"Wedstrijd afstand moet zijn ingevuld.",
    	RaceEvent:  		"De naam van de wedstrijd moet zijn ingevuld.",
    	RaceLocation:  	"De plaats van de wedstrijd moet zijn ingevuld."
		}
	});
	
	$("#RaceEditForm").validate({
  	rules: {
    	"data[Race][race_date]":  			"required",
    	"data[Race][distance]":  				"required",
    	"data[Race][event]":  					"required",
    	"data[Race][location]":  				"required"
		},
		messages: {
			"data[Race][race_date]":  			"De datum van de wedstrijd moet zijn ingevuld (dd-mm-jjjj).",
			"data[Race][distance]":  				"Wedstrijd afstand moet zijn ingevuld.",
    	"data[Race][event]":  					"De naam van de wedstrijd moet zijn ingevuld.",
    	"data[Race][location]":  				"De plaats van de wedstrijd moet zijn ingevuld."
		}
	});
	
	$("#addPictureAthleteForm").validate({
  	rules: {
    	"data[Picture][description]" : 				"required",
    	"data[Picture][file]" :  							"required"
 		},
		messages: {
			"data[Picture][description]" : 	"Vul de omschrijving van de foto in.",
			"data[Picture][file]" : 				"Kies de foto die je wilt uploaden."
		}
	});
	
	$("#addPresentationPictureAthleteForm").validate({
  	rules: {
    	"data[Picture][picture]" :  				"required"
 		},
		messages: {
			"data[Picture][picture]" : 				"Kies de foto die je wilt uploaden."
		}
	});
	
	$("#saveAddPresentationPictureAthleteForm").validate({
  	rules: {
    	"data[Picture][x1]" :  				"required",
    	"data[Picture][x2]" :  				"required",
    	"data[Picture][y1]" :  				"required",
    	"data[Picture][y2]" :  				"required",
    	"data[Picture][filename]" :  	"required"
 		},
		messages: {
			"data[Picture][x1]" :  				"Selelecteer een gedeelte van de foto (x1)",
    	"data[Picture][x2]" :  				"Selelecteer een gedeelte van de foto (x2)",
    	"data[Picture][y1]" :  				"Selelecteer een gedeelte van de foto (y1)",
    	"data[Picture][y2]" :  				"Selelecteer een gedeelte van de foto (y2)",
    	"data[Picture][filename]" :  	"Geen foto bekend"
		}
	});
	
	
	$("#TrainerEditForm").validate({
  	rules: {
    	"data[Trainer][firstname]"			:		"required",
    	"data[Trainer][lastname]"				:		"required",
    	"data[Trainer][city]"						:		"required",
    	"data[Trainer][date_of_birth]"	:		"required"
		},
		messages: {
			"data[Trainer][firstname]"			:  		"Voornaam moet zijn ingevuld.",
    	"data[Trainer][lastname]"				:  		"Achternaam moet zijn ingevuld.",
    	"data[Trainer][city]"						: 		"Woonplaats moet zijn ingevuld.",
    	"data[Trainer][date_of_birth]"	:  		"Vereniging moet zijn ingevuld."
		}
	});
	
	$("#ContactAddForm").validate({
  	rules: {
    	"data[Contact][name]" : "required",
			"data[Contact][mail]": {
				required: true,
				email: true
			} ,
			"data[Contact][comments]" : "required"
   	},
		messages: {
			"data[Contact][name]": "Naam moet zijn ingevuld.",
			"data[Contact][mail]": "Vul een geldig email adres in.",
			"data[Contact][comments]": "Opmerkingen moet zijn ingevuld."
		}
	});
		
	function rotateHeaderPicture()
	{
		$('#headerPictureId_'+headerPictureId).fadeOut(3000);
		headerPictureId++;
		if(headerPictureId > amountHeaderPictures) headerPictureId = 1;
		$('#headerPictureId_'+headerPictureId).fadeIn(500);
	}
		
});
 
function saveComment()
{
	$("#addComment").validate();
	if($("#addComment").valid())
	{
		var data = "data[id]="+$("#NewsId").val()+"&data[name]="+$("#CommentName").val()+"&data[mail]="+$("#CommentMail").val()+"&data[comment]="+$("#CommentComment").val()
		$.ajax({ 
			type: "POST",
			url: website_dir+"comments/add/", 
			data: data,
			success: function(return_data){
				$('.comment:first').before(return_data);
				$("#CommentComment").val("");
				$("#CommentAddSuccess").slideDown('slow');
		    //$(this).addClass("done");
		    //alert('done');
			}
		});
	}
}




function doLogin()
{
	
	if($("#UserLoginForm").validate().form())
	{
		alert('doAjax');
	}
}

function saveNews()
{
	if($("#NewsAddForm").validate().form())
	{
		$("#NewsAddForm").submit();
	}
}

function saveEditNews()
{
	if($("#NewsEditForm").validate().form())
	{
		$("#NewsEditForm").submit();
	}
}

function saveAddAthlete()
{
	if($("#AthleteAddForm").validate().form())
	{
		$("#AthleteAddForm").submit();
	}
}


function saveEditAthlete()
{
	if($("#AthleteEditForm").validate().form())
	{
		$("#AthleteEditForm").submit();
	}
}

function saveEditAthleteContent()
{
	$("#AthleteEditFormContent").submit();
}

function saveEditAthletePB()
{
	$("#AthleteEditFormPB").submit();
}

function saveEditAthleteBP()
{
	$("#AthleteEditFormBP").submit();
}

function saveAddRace()
{
	if($("#RaceAddForm").validate().form())
	{
		$("#RaceAddForm").submit();
	}
}

function saveEditRace()
{
	if($("#RaceEditForm").validate().form())
	{
		$("#RaceEditForm").submit();
	}
}

function saveAddAthletePicture()
{
	if($("#addPictureAthleteForm").validate().form())
	{
		$("#addPictureAthleteForm").submit();
	}
}

function saveAddAthletePresentationPicture()
{
	if($("#addPresentationPictureAthleteForm").validate().form())
	{
		$("#addPresentationPictureAthleteForm").submit();
	}
}

function saveAddPresentationPictureAthleteForm()
{
	if($("#saveAddPresentationPictureAthleteForm").validate().form())
	{
		$("#saveAddPresentationPictureAthleteForm").submit();
	}
}

function saveEditTrainer()
{
	if($("#TrainerEditForm").validate().form())
	{
		$("#TrainerEditForm").submit();
	}
}

function mailContactform()
{
	if($("#ContactAddForm").validate().form())
	{
		$("#ContactAddForm").submit();
	}
}

function deleteRace(race_id)
{
	$.ajax({ 
		type: "POST",
		url: website_dir+"races/delete/"+race_id, 
		success: function(return_data){
			$("#race_row_"+race_id).remove();
	    //$(this).addClass("done");
	    //alert('done');
		}
	});
}
