
function clearElement(id) {
	target = $(id);
	while(target.childNodes.length > 0) target.removeChild(target.firstChild);
}

function refreshSelection(bindElements, targetId, actionName, clearElements) {

	queryString = "";

	for(i=0;i<bindElements.length;i++) {
		var currElement = $(bindElements[i]);
		queryString += "&" + bindElements[i] + "=" + currElement.options[currElement.selectedIndex].value;
	}
	var bindUrl = "/index.php?sid=50000&a=" + actionName + queryString;

	clearElement(targetId);

	for(j=0;j<clearElements.length;j++)
	clearElement(clearElements[j]);

	new Ajax.Request(
	bindUrl, {
		method: 'get',
		onSuccess: function(transport) {
			eval("var optiondata = " + transport.responseText + ";");
			targetS = $(targetId);
			targetS.options[targetS.options.length] = new Option("", "", false, false);
			for(a in optiondata) {
				targetS.options[targetS.options.length] = new Option(optiondata[a], a, false, false);
			}
		},
		onFailure: function(response) { alert('error ' + response);}
	}

	);
}

function getPayment() {
	jasenaika = $('jasenaika').value;
	//toimipaikka = $('toimipaikka').value;
	if(jasenaika) {
		new Ajax.Updater(
		'jasenmaksu', '/index.php?sid=50000&a=jasenmaksu&vuodet='+jasenaika
		);
	}
}

function checkMandatoryFields() {
	fields = new Array({id: 'lastname'},{id: 'firstname'},{id: 'syntymaaika', label: 'henkilotunnus'}, {id: 'hetu', label: 'henkilotunnus'}, {id: 'oppilaitos'}, {id: 'toimipaikka'}, {id: 'postinumero'},{id: 'osoite'},{id: 'dummy_postitoimipaikka'},{id: 'liittymispvm_kk', label: 'liittymispvm_label'},{id: 'liittymispvm_vvvv', label: 'liittymispvm_label'},{id: 'eroamispvm_kk', label: 'eroamispvm_label'},{id: 'eroamispvm_vvvv', label: 'eroamispvm_label'},{id: 'jasenaika'});
	// first off, clear all the labels from errors..
	for(i=0;i<fields.length;i++) {
		labelname = fields[i].label ? fields[i].label : fields[i].id + "_label";
		$(labelname).setStyle({color: 'black'});
	}
	valid = true;
	for(j=0;j<fields.length;j++) {
		if($(fields[j].id).value == "") {
			labelname = fields[j].label ? fields[j].label : fields[j].id + "_label";
			$(labelname).setStyle({color: 'red'});
			valid = false;
		}
	}
	return valid;
}

function submitCheck() {
	if(!checkMandatoryFields()) {
		return false;
	}
	failed = false;
	new Ajax.Request(
		'/index.php?sid=50000&a=validate', {
			asynchronous: true,
			onSuccess: function(transport) {
				var inp = new Element('input', { 'type': 'hidden', 'name': 'validate', 'value': transport.responseText });
				$('regform').appendChild(inp);
				$('regform').submit();
			},
			onFailure: function() { failed = true; }
		}
	);
	return failed;
}

function showHelp(help_url, data_id) {
	help_url += "&helpid=" + data_id;
	var xWin = window.open(help_url, 'sakki_ohje', 'width=400,height=500,scrollbars=yes,resizable=no');
	xWin.focus();
}	
