function spin(image, id) {
	var field = image.src.substr(image.src.length - 6, 1);
	if (!(Math.pow(2, field - 1) & document.getElementById(('CANDIDATES' + id)).value)) {
		image.src = "images/" + design + "/size" + fieldsize + "/feld" + field + "a.gif";
		document.getElementById(('CANDIDATES' + id)).value = (document.getElementById(('CANDIDATES' + id)).value * 1) + Math.pow(2, field - 1);
	} else {
		image.src = "images/" + design + "/size" + fieldsize + "/feld" + field + "d.gif";
		document.getElementById(('CANDIDATES' + id)).value = (document.getElementById(('CANDIDATES' + id)).value * 1) - Math.pow(2, field - 1);
	}
}

function fullsize(image, id) {
	var out = "";
	var field = image.src.substr(image.src.length - 6, 1);
	out += "<img id=\"ANSWERIMG" + id + "\" src=\"images/" + design + "/size" + fieldsize + "/feld" + field + ".gif\" onDblClick=\"resume(this, '" + id + "');\">";
	out += "<input type=\"hidden\" name=\"CANDIDATES[" + id + "]\" id=\"CANDIDATES" + id + "\" value=\"" + document.getElementById(('CANDIDATES' + id)).value + "\">";
	out += "<input type=\"hidden\" name=\"ANSWER[" + id + "]\" id=\"ANSWER" + id + "\" value=\"" + field + "\">";
	image.offsetParent.innerHTML = out;
	updateProgressBar(xajax.getFormValues('frmField'));
}

function resume(image, id){
	var out = "";
	for (var i = 0; i < fieldsize; i++) {
		if ((Math.pow(2, i) & document.getElementById(('CANDIDATES' + id)).value) == Math.pow(2, i)) {
			out += "<img onClick=\"spin(this, '" + id + "');\" onDblClick=\"fullsize(this, '" + id + "');\" src=\"images/" + design + "/size" + fieldsize + "/feld" + (i + 1) + "a.gif\">";
		} else {
			out += "<img onClick=\"spin(this, '" + id + "');\" onDblClick=\"fullsize(this, '" + id + "');\" src=\"images/" + design + "/size" + fieldsize + "/feld" + (i + 1) + "d.gif\">";
		}
		if (i == 2 || i == 5) {
			out += "<br />";
		}
	}
	if (fieldsize == 8) {
		out += "<img src=\"images/" + design + "/size" + fieldsize + "/feld8d.gif\">";
	}
	out += "<input type=\"hidden\" name=\"CANDIDATES[" + id + "]\" id=\"CANDIDATES" + id + "\" value=\"" + document.getElementById(('CANDIDATES' + id)).value + "\">";
	out += "<input type=\"hidden\" name=\"ANSWER[" + id + "]\" id=\"ANSWER" + id + "\" value=\"0\">";
	image.offsetParent.innerHTML = out;
	updateProgressBar(xajax.getFormValues('frmField'));
}

function updateProgressBar(formdata) {
	var current = 0;
	var exp = document.getElementById('Exp').value;
	for (var i = 0; i < (Math.pow(fieldsize, 2)); i++) {
		if (document.getElementById('ANSWER'+i).value	== 0) current++;
	}
	current = exp - current;
	var progress = Math.floor((current * 10) / exp) * 10;
	document.getElementById('Progressbar').src = document.getElementById('Progressbar').src.replace(/progress[0-9]*.gif/, "progress"+progress+".gif");
}
