var Callback = {
	get: function (callbackString) {
		//console.log("in callback");
		switch(callbackString) {
			case "atletenOverzicht":
				return Callback.atletenOverzicht;
				break;
			case "atleetSubmit":
				return Callback.atleetSubmit;
				break;
			case "atleetOne":
				return Callback.atleetOne;
				break;
				
			case "wedstrijdOverzicht":
				return Callback.wedstrijdOverzicht;
				break;
			case "wedstrijdOne":
				return Callback.wedstrijdOne;
				break;
			case "wedstrijdSubmit":
				return Callback.wedstrijdSubmit;
				break;
				
			case "onderdeelOverzicht":
				return Callback.onderdeelOverzicht;
				break;
			case "onderdeelOne":
				return Callback.onderdeelOne;
				break;
			case "onderdeelSubmit":
				return Callback.onderdeelSubmit;
				break;
				
			case "prestatieOverzicht":
				return Callback.prestatieOverzicht;
				break;
			case "prestatieOne":
				return Callback.prestatieOne;
				break;
			case "prestatieSubmit":
				return Callback.prestatieSubmit;
				break;
			case "pupdate":
				return Callback.pupdate;
				break;
				
			case "login":
				return Callback.login;
				break;
			case "logout":
				return Callback.logout;
				break;
				
			case "showDetails":
				return Callback.showDetails;
				break;
			case "reloadAll":
				return Callback.reloadAll;
				break;
				
			case "gebuikerOverzicht":
				return Callback.gebuikerOverzicht;
				break;
			case "gebruikerOne":
				return Callback.gebruikerOne;
				break;		
			case "gebruikerSubmit":
				return Callback.gebruikerSubmit;
				break;
		};
	},
	

	atletenOverzicht: function (data) {
		if(data.success) {
			$("#atleten > div.columnTitle > span.aantal").text(" ("+data.size+")");
			$('#atleten > div.columnItems').empty();
			$.each(data.data, function(idx) {
				var a = $('<div>').append($('<span>').attr('id','atl_'+this.id).text(this.naam +' ('+this.leeftijd+'jaar)').addClass("info")).append($('<span>').text('edit').addClass('edit ui-icon ui-icon-wrench'));
				$('#atleten > div.columnItems').append(a);
			});
			filterAtleet("retain");
		} 
		logRequest("Atletenoverzicht",data.success);

	},
	
	atleetSubmit: function (data) {
		if(data.success) {
			$(document).trigger('ATLEET', {type: "getAll",callback:"atletenOverzicht"});
		}
		logRequest("Atleet opslaan",data.success);
	},
	atleetOne: function (data) {
		if(data.success) {
			atleet = data.data;
			$("#atleetId").val(atleet.id);
			$("#atleetNaam").val(atleet.naam);
			$("#atleetDatum").val(atleet.geboorteDatum);
			$("input[name='geslacht'][value='"+atleet.geslacht+"']").prop("checked", true);
		}
		logRequest("Atleet ophalen",data.success);
	},
	
	wedstrijdOverzicht: function (data) {
		if(data.success) {
			$("#wedstrijden > div.columnTitle > span.aantal").text(" ("+data.size+")");
			$('#wedstrijden > div.columnItems').empty();
			$.each(data.data, function(idx) {
				var a = $('<div>').append($('<span>').attr('id','wed_'+this.id).text(this.naam +' '+this.datum+' '+this.plaats).addClass("info")).append($('<span>').text('edit').addClass('edit ui-icon ui-icon-wrench'));
				$('#wedstrijden > div.columnItems').append(a);
			});
			filterWedstrijd("retain");
		}
		logRequest("Wedstrijdenoverzicht",data.success);
	},
	
	wedstrijdOne: function (data) {
		if(data.success) {
			wed = data.data;
			$("#wedstrijdId").val(wed.id);
			$("#wedstrijdNaam").val(wed.naam);
			$("#wedstrijdDatum").val(wed.datum);
			$("#wedstrijdPlaats").val(wed.plaats);
			$("#wedstrijdType").val(wed.soort);
			$("#wedstrijdOpmerking").val(wed.opmerking);
		}
		logRequest("Wedstrijd ophalen",data.success);
	},
	
	wedstrijdSubmit: function (data) {
		if(data.success) {
			$(document).trigger('WEDSTRIJD', {type: "getAll",callback:"wedstrijdOverzicht"});
		}
		logRequest("Wedstrijd opslaan",data.success);
	},
	
	onderdeelOverzicht: function (data) {
		if(data.success){
			$("#onderdelen > div.columnTitle > span.aantal").text(" ("+data.size+")");
			$('#onderdelen > div.columnItems').empty();
			$.each(data.data, function(idx) {
				var a = $('<div>').append($('<span>').attr('id','ond_'+this.id+'_'+this.inputformat).text(this.naam).addClass("info")).append($('<span>').text('edit').addClass('edit ui-icon ui-icon-wrench'));
				$('#onderdelen > div.columnItems').append(a);
			});
			filterOnderdeel("retain");
		}
		logRequest("Onderdelenoverzicht",data.success);
	},
	onderdeelOne: function (data) {
		if(data.success) {
			ond = data.data;
			$("#onderdeelId").val(ond.id);
			$("#onderdeelNaam").val(ond.naam);
			$("input[name='onderdeelSortering'][value='"+ond.sortering+"']").prop("checked", true);
			$("#onderdeelInputformat").val(ond.inputformat);
			$("#onderdeelOpmerking").val(ond.opmerking);
			$("#onderdeelVolgorde").val(ond.volgorde);
		}
		logRequest("Onderdeel ophalen",data.success);
	},
	onderdeelSubmit: function (data) {
		if(data.success) {
			$(document).trigger('ONDERDEEL', {type: "getAll",callback:"onderdeelOverzicht"});
		}
		logRequest("Onderdeel opslaan",data.success);
	},
	
	prestatieOverzicht: function (data) {
		if(data.success) {
			$("#prestatieView > div.columnTitle > span.aantal").text("("+data.size+")");
			$('#prestatieView > div.columnItems').empty();
			$.each(data.data, function(idx) {
				var a = $('<div>').append($('<span>').attr('id','pres_'+this.id).text(this.onderdeel +" "+this.atleet +" "+ this.wedstrijd + " "+this.datum +" "+ this.prestatie +" "+this.cat));
				$('#prestatieView > div.columnItems').append(a);
			});
		}
		logRequest("Prestatieoverzicht", data.success);
	},
	prestatieOne: function (data) {
		var p = data.data;
		$("#presForm").clearForm();
		$("#presId").val(p.id);
		$("#presAtleet").text(p.atleet);
		$("#presWedstrijd").text(p.wedstrijd);
		$("#presOnderdeel").text(p.onderdeel);

		createPrestatieInput(p.prestatie.format);
		$("#prestatie_s").val(p.prestatie.ps);
		$("#prestatie_m").val(p.prestatie.pm);
		$("#prestatie_h").val(p.prestatie.ph);
		$("#prestatie_mtr").val(p.prestatie.pmtr);
		$("#presBuffer").text(p.prestatie.ps);
		$("#presWind").val(p.wind);
		if(p.electronisch == 1)
			$("#presElectronisch").prop("checked", true);
		else 
			$("#presElectronisch").prop("checked", false);
		$("#presOpmerking").val(p.opmerking);
		
	},
	prestatieSubmit: function (data) {
		if(data.success) {
			$(document).trigger('PRESTATIE', {type: "getAll", callback:"prestatieOverzicht"});
		}
		logRequest("Opslaan prestatie", data.success);
	}, 
	pupdate: function (data) {
		//console.log("Hii");
		if(data.success) {
			//$("#lijst").load("backend/RanglijstApp.php", {"request":"lijst","type":"getAll"} );
			$("#aSubmit").click();
		}
	},
	
	
	login: function (data) {
		if(data.success) {
			window.location = "toevoegen.php";
		}
		// doe melding met foute inlogpoging!
	},
	logout: function (data) {
		if(data.success) {
			window.location = "index.html";
		}
	},
	showDetails: function (data) {
		if(data.success) {
			var d = data.data;
			$("#lblDeleteNaam").text(d.naam);
			$("#lblDeleteAantal").text(d.prestaties);
			$("#typeToDelete").val(d.type);
			$("#idToDelete").val(d.id);
		}
	},
	reloadAll: function (data) {
		$(document).trigger('ATLEET', {type: "getAll",callback:"atletenOverzicht"});
		$(document).trigger('WEDSTRIJD', {type: "getAll",callback:"wedstrijdOverzicht"});
		$(document).trigger('ONDERDEEL', {type: "getAll", callback:"onderdeelOverzicht"});
		$(document).trigger('PRESTATIE', {type: "getAll", callback:"prestatieOverzicht"});
	},
	gebuikerOverzicht: function (data) {
		if(data.success) {
			$('#userList').empty();
			$.each(data.data, function(idx) {
				var a = $('<li>').attr('id','user_'+this.id).append(this.naam).append($('<span>').text('edit').addClass('edit ui-icon ui-icon-wrench'));
				$('#userList').append(a);
			});
		}	
		logRequest("Gebruikers ophalen",data.success);
	},
	gebruikerOne: function (data) {
		var u = data.data;
		$("#gebruikerId").val(u.id);
		$("#gebruikersNaam").val(u.naam);
		$("#gebruikersLogin").val(u.login);
		$("#gebruikersPassword").val(u.password);
		$("#gebruikersEmail").val(u.email);
		logRequest("Gebruiker ophalen",data.success);
	},
	gebruikerSubmit: function (data) {
		logRequest("Gebruiker opslaan",data.success);
		$("#userDetailDialog").dialog('close');
		$("#userEdit").click();
	}
	
};
