function d4formConfirmSave(event)
{
	return(true);
}

function d4formCheckAll(event, form, fill_required_text, confirm_dialog_text)
{

	if(confirm_dialog_text) {
		if(!event) event = window.event;
		if(!confirm(confirm_dialog_text)) {
			event.returnValue = false;
			if(event.preventDefault) event.preventDefault();
			return(false);
		}
	}

	var inputs = form.getElementsByTagName("input");
	var mandatory = [];
	for(var i = 0; i < inputs.length; i++) {
		if(inputs[i].type == "hidden" && inputs[i].id.match(/^form\-fillin\-field\-(\d+)\-mandatory$/))
			mandatory.push({ num: RegExp.$1, type: inputs[i].value });
	}

	var notify = 0;
	for(var i = 0; i < mandatory.length; i++) {
		var label = document.getElementById("form-fillin-field-" + mandatory[i].num + "-label");
		label.style.color = "black";
		switch(mandatory[i].type) {
			case "radio":
				var ok = false;
				for(var j=0; j<form.elements.length; j++) {
					var e = form.elements[j];
					if(e.name == "Answer" + mandatory[i].num && e.checked) {
						ok = true;
					}
				}
				if(!ok) {
					label.style.color= "red";
					notify = 1;
				}
				break;
			case "text":
				if(!document.getElementById("form-fillin-field-" + mandatory[i].num).value.length) {
					label.style.color= "red";
					notify = 1;
				}
				break;
			case "checkbox":
				var checked = 0;
				for(var o = 0; o < inputs.length; o++) {
					if(inputs[o].type == "checkbox" &&
						inputs[o].id.match(/^form\-fillin\-field\-(\d+)\-option\-(\d+)$/) &&
						RegExp.$1 == mandatory[i].num &&
						inputs[o].checked) checked++;
				}
				if(!checked) {
					label.style.color = "red";
					notify = 1;
				}
				break;
			default:
				break;
		}
	}

	if(notify) {
		alert(fill_required_text);
		return(false);
	}
	return(true);
}
