/* Form group marked 'same as' another group, synchronize values */
function addFieldsToArray(array, group, fieldtype) {
	for(var i=0; group.getElementsByTagName(fieldtype)[i]; i++) {
		fieldName = group.getElementsByTagName(fieldtype)[i].id.substring(group.getElementsByTagName(fieldtype)[i].id.indexOf("-") + 1);
		array[array.length] = fieldName;
	}
}

function sameAsCheckboxClick(chk, destId, srcId) {
	var same = chk.checked;
	var src = document.getElementById(srcId);
	var dest = document.getElementById(destId);
	var fields = new Array();
	addFieldsToArray(fields, src, "input");
	addFieldsToArray(fields, src, "select");
	addFieldsToArray(fields, src, "textarea");
	for(var i=0; fields[i]; i++) {
		if(fields[i]=='sameas') continue;
		srcField = document.getElementById(srcId+'-'+fields[i]);
		destField = document.getElementById(destId+'-'+fields[i]);
		if(same) {
			switch(srcField.tagName) {
				case 'INPUT':
					destField.value = srcField.value;
					break;
				case 'TEXTAREA':
					destField.value = srcField.value;
					break;
				case 'SELECT':
					destField.selectedIndex = srcField.selectedIndex;
					break;
			}
			eval('srcField.onchange = function() { document.getElementById(\''+destField.id+'\').value=this.value; };');
		} else {
			srcField.onchange = function() { };
		}
		destField.disabled = same;
	}
}

function show_hint(hint,is_show)
{
	if (is_show == true) {
		document.getElementById(hint.name+'_hint').style.display = "inline";
	} else {
		document.getElementById(hint.name+'_hint').style.display = "none";
	}
}

