
/* Kisan muokkaus */

function paivitaKisaMuokkausKontrollit() {
	$(".starttisakaluokka, .starttiluokka, .starttityyppi, .starttirata").buttonset();
	$("input.epavirallinen").button();

	$(".kisakontrollimuokkaa, .kisastarttikontrolliperuuta").click(function() {
		var kisaid = $(this).closest(".kisa").attr("id");
		var targetcomponent = $(this).closest(".kisalistacomponent");
		var componentid = targetcomponent.attr("id");

		$.post(
			'kisalista.' + componentid + '.muokkaakisa',
			{ kisaid: kisaid },
			function(data, textStatus)
			{
				targetcomponent.html(data);
			},
			"html"
		);
	});

	$(".kisakontrolliperuuta").click(function() {
		var kisaid = $(this).closest(".kisa").attr("id");
		var targetcomponent = $(this).closest(".kisalistacomponent");
		var componentid = targetcomponent.attr("id");

		$.post(
			'kisalista.' + componentid + '.view',
			{ kisaid: kisaid },
			function(data, textStatus)
			{
				targetcomponent.html(data);
			},
			"html"
		);
	});

	$(".kisakontrollipoista").click(function() {
		if (confirm("Poista kisa ja kaikki startit?")) {
			var kisaid = $(this).closest(".kisa").attr("id");
			var targetcomponent = $(this).closest(".kisalistacomponent");
			var componentid = targetcomponent.attr("id");

			$.post(
				'kisalista.' + componentid + '.poistakisa',
				{ kisaid: kisaid },
				function(data, textStatus)
				{
					targetcomponent.html(data);
				},
				"html"
			);
		}
	});

	$(".kisastarttikontrollimuokkaa").click(function() {
		var kisaid = $(this).closest(".kisa").attr("id");
		var starttiid = $(this).closest(".kisastartti").attr("id");
		var targetcomponent = $(this).closest(".kisalistacomponent");
		var componentid = targetcomponent.attr("id");

		$.post(
			'kisalista.' + componentid + '.muokkaastartti',
			{ kisaid: kisaid, starttiid: starttiid },
			function(data, textStatus)
			{
				targetcomponent.html(data);
			},
			"html"
		);
	});

	$(".kisastarttikontrollipoista").click(function() {
		var kisaid = $(this).closest(".kisa").attr("id");
		var starttiid = $(this).closest(".kisastartti").attr("id");
		var targetcomponent = $(this).closest(".kisalistacomponent");
		var componentid = targetcomponent.attr("id");

		$.post(
			'kisalista.' + componentid + '.poistastartti',
			{ kisaid: kisaid, starttiid: starttiid },
			function(data, textStatus)
			{
				targetcomponent.html(data);
			},
			"html"
		);
	});

	$(".kisakontrollipaivita").click(function() {
		if (tarkastaKisa(this))
			$(this).closest("form").submit();
	});

	$(".kisakontrollijulkaise").click(function() {
		var kisaid = $(this).closest(".kisa").attr("id");
		var targetcomponent = $(this).closest(".kisalistacomponent");
		var componentid = targetcomponent.attr("id");

		$.post(
			'kisalista.' + componentid + '.julkaisekisa',
			{ kisaid: kisaid },
			function(data, textStatus)
			{
				targetcomponent.html(data);
			},
			"html"
		);
	});

	$(".kisastarttikontrollipaivita").click(function() {
		if (tarkastaStartti(this))
		{
			var targetcomponent = $(this).closest(".kisalistacomponent");
			var componentid = targetcomponent.attr("id");

			$.post(
				'kisalista.' + componentid + '.paivitastartti',
				$(this).closest("form").serialize(),
				function(data, textStatus)
				{
					targetcomponent.html(data);
				},
				"html"
			);
		}
	});

	$(".kisapaivajarjestettava .kisastartit").sortable({
		connectWith: ".kisastartit",
		placeholder: "kisastarttiplaceholder",
		axis: 'y',
		stop: function(event, ui) {
			var kisaid = $(ui.item).closest(".kisa").attr("id");
			var starttiid = $(ui.item).closest(".kisastartti").attr("id");
			var jarj = $(ui.item).prevAll().length + 1;
			var pvm = $(ui.item).closest(".kisapaiva").children(".kisapaivapvm").first().html();

			$.post(
				'kisalista.0.jarjestastartti',
				{ kisaid: kisaid, starttiid: starttiid, jarj: jarj, pvm: pvm }
			);
		}
	});

	//
	$('.lisatietosivu-ui').autocomplete({
		source: "page.0.autocompletealias",
		minLength: 2,
		select: function(event, ui) {
			$(this).prev().val(ui.item.value);
			$(this).val(ui.item.label);
			return false;
		}
	});

	$('.koetoimitsija-ui').autocomplete({
		source: "usergroups.0.autocompleteuser",
		minLength: 2,
		select: function(event, ui) {
			$(this).prev().val(ui.item.value);
			$(this).val(ui.item.label);
			return false;
		}
	});

	$('input[name=starttituomari]').autocomplete({
		source: "kisalista.0.autocompletetuomari",
		minLength: 2,
		select: function(event, ui) {
			$(this).val(ui.item.value);
			return false;
		}
	});
}

function tarkastaStartti(e) {
	var form = $(e).closest("form");
	var ok = true;

	if (!$('input[name=starttisakaluokka]:checked', form).val()) {
		$('input[name=starttisakaluokka]', form).next().effect("highlight", { color: '#ff9999' }, 2000);
		ok = false;
	}
	if (!$('input[name=starttiluokka]:checked', form).val()) {
		$('input[name=starttiluokka]', form).next().effect("highlight", { color: '#ff9999' }, 2000);
		ok = false;
	}
	if (!$('input[name=starttityyppi]:checked', form).val()) {
		$('input[name=starttityyppi]', form).next().effect("highlight", { color: '#ff9999' }, 2000);
		ok = false;
	}

	if (!$('input[name=starttinimi]', form).val()) {
		$('input[name=starttinimi]', form).effect("highlight", { color: '#ff9999' }, 2000);
		ok = false;
	}

	return ok;
}

function lisaaStartti(e) {
	if (tarkastaStartti(e)) {
		var kisaid = $(e).closest(".kisa").attr("id");
		var targetcomponent = $(e).closest(".kisalistacomponent");
		var componentid = targetcomponent.attr("id");

		$.post(
			'kisalista.' + componentid + '.uusistartti',
			$(e).closest("form").serialize(),
			function(data, textStatus)
			{
				targetcomponent.html(data);
			},
			"html"
		);
	}

	return false;
}

function luoPaiva(e) {
	var kisaid = $(e).closest(".kisa").attr("id");
	var targetcomponent = $(e).closest(".kisalistacomponent");
	var componentid = targetcomponent.attr("id");

	$.post(
		'kisalista.' + componentid + '.luopaiva',
		$(e).closest("form").serialize(),
		function(data, textStatus)
		{
			targetcomponent.html(data);
		},
		"html"
	);

	return false;
}



/* Uuden kisan luonti */

function paivitaUusiKisaKontrollit() {
	$('.fielddate, .datefield').datepicker();
	$('#uusityyppi').buttonset();

	$('.uusikisaotsikko').click(function() {
		$('.uusikisaraami').slideToggle();
	});

	$('.uusi-lisatietosivu-ui').autocomplete({
		source: "page.0.autocompletealias",
		minLength: 2,
		select: function(event, ui) {
			$(this).prev().val(ui.item.value);
			$(this).val(ui.item.label);
			return false;
		}
	});

	$('.uusi-koetoimitsija-ui').autocomplete({
		source: "usergroups.0.autocompleteuser",
		minLength: 2,
		select: function(event, ui) {
			$(this).prev().val(ui.item.value);
			$(this).val(ui.item.label);
			return false;
		}
	});
};

function tarkastaKentta(n, f) {
	if (!$('input[name=' + n + ']', f).val()) {
		$('input[name=' + n + ']', f).effect("highlight", { color: '#ff9999' }, 2000);
		return false;
	}

	return true;
}

function tarkastaKisa(e) {
	var form = $(e).closest("form");
	var ok = true;

	ok = tarkastaKentta('pvmalku', form) && ok;
	ok = tarkastaKentta('pvmloppu', form) && ok;
	ok = tarkastaKentta('viimilmpvmposti', form) && ok;
	ok = tarkastaKentta('viimilmpvmnetti', form) && ok;
	ok = tarkastaKentta('viitenro', form) && ok;
	ok = tarkastaKentta('hinta', form) && ok;
	ok = tarkastaKentta('hintaTsau', form) && ok;

	return ok;
}

