var hetu_validation_fields = new Array();

function tarkista_hetu(hetu) {

	hetu = hetu.toUpperCase();

	if( /^(\d{2})(\d{2})(\d{2})([+-A])(\d{3})([0-9A-FHJ-NPR-Y])$/.test(hetu) ) {
	
		var tarkistus = new Array('0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F','H','J','K','L','M','N','P','R','S','T','U','V','W','X','Y');
			
		// päivä, kuukausi, vuosi, vuosisata, yksilö, tarkistus
		var pp = RegExp.$1;
		var kk = RegExp.$2;
		var vvvv = RegExp.$3;
		var v = RegExp.$4;
		var yks = RegExp.$5;
		var t = RegExp.$6;
	
		var merkki = tarkistus[(pp + kk + vvvv + yks) % tarkistus.length];
	
		if(merkki == t) {
			return true;
		}

		return false;
		
   	}
	
	return false;								  
}

function d4FormHetuValidation(error_msg) {
    var arLength = hetu_validation_fields.length;
    for(var i=0 ; i<arLength ; i++) {
        var val = document.getElementById('form-fillin-field-' + hetu_validation_fields[i]).value;
        if(val && !tarkista_hetu(val)) {
            document.getElementById('form-fillin-field-' + hetu_validation_fields[i] + '-label').style.color='red';
            alert(error_msg);
            document.getElementById('form-fillin-field-' + hetu_validation_fields[i]).focus();
            return false;
        } else {
			document.getElementById('form-fillin-field-' + hetu_validation_fields[i] + '-label').style.color='black';
		}
    }
    return true;
}

