window.roicalculatorcurrentpage = 0;
window.roicalculatorsubmitted = 0;
window.roicalcofficetype = '';
window.roicalcwarning = '';
window.roicalcsetfocus = '';

function roicalculatorpage(pid) {
	pid = roicalculatorvalidate(pid);
	if (pid != window.roicalculatorcurrentpage) {
		MM_showHideLayers('roicalculator'+window.roicalculatorcurrentpage, '', 'hide');
		MM_showHideLayers('roicalculator'+pid, '', 'show');
		window.roicalculatorcurrentpage = pid;
		MM_findObj('roicalculatornav').src = 'nav'+pid+'.gif';
		if (pid == 6 && window.roicalculatorsubmitted == 1) {
			roicalculatorsubmit();
		}
	}
	if (window.roicalcwarning.length > 0) {
		alert(window.roicalcwarning);
		window.roicalcwarning = '';
	}
	if (window.roicalcsetfocus.length > 0) {
		MM_findObj(window.roicalcsetfocus).focus();
		window.roicalcsetfocus = '';
	}
	if (pid==0) {
		window.roicalcofficetype = '';
	}
	try { pageTracker._trackPageview('/roi-calculator/'+window.roicalcofficetype.toLowerCase()+'/step'+pid+'/'); } catch(err) {}
	return false;
}

function roicalculatorvalidate(pid) {
	if (pid > 0) {
		if (window.roicalcofficetype == '') {
			window.roicalcwarning = 'Please indicate your practice type by clicking either the "General Family Practice" or "Specialist Practice" button.';
			return 0;
		}
	}
	if (pid > 1) {
		if (MM_findObj('q1a').value.length == 0 && !MM_findObj('q1a').disabled) {
			MM_findObj('q1a').value = MM_findObj('a1a').value;
		}
		if (MM_findObj('q1b').value.length == 0 && !MM_findObj('q1b').disabled) {
			MM_findObj('q1b').value = MM_findObj('a1b').value;
		}
		if (MM_findObj('q1c').value.length == 0 && !MM_findObj('q1c').disabled) {
			MM_findObj('q1c').value = MM_findObj('a1c').value;
		}
	}
	if (pid > 2) {
		if (MM_findObj('q2a').options[MM_findObj('q2a').selectedIndex].value=='NO') {
			if (MM_findObj('q2b').value.length == 0 && !MM_findObj('q2b').disabled) {
				MM_findObj('q2b').value = MM_findObj('a2b').value;
			}
		}
		if (MM_findObj('q2b').value.length > 0 && MM_findObj('q2b').value != 'N/A' && !MM_findObj('q3b').disabled && MM_findObj('q3b').value.length == 0) {
			MM_findObj('q3b').value = MM_findObj('q2b').value;
		}
	}
	if (pid > 3) {
		if (MM_findObj('q3a').options[MM_findObj('q3a').selectedIndex].value=='YES') {
			if (MM_findObj('q3b').value.length == 0 && !MM_findObj('q3b').disabled) {
				MM_findObj('q3b').value = MM_findObj('a3b').value;
			}
		}
	}
	if (pid > 4) {
		if (MM_findObj('q4a').value.length == 0 && !MM_findObj('q4a').disabled) {
			MM_findObj('q4a').value = MM_findObj('a4a').value;
		}
		if (MM_findObj('q4b').value.length == 0 && !MM_findObj('q4b').disabled) {
			MM_findObj('q4b').value = MM_findObj('a4b').value;
		}
	}
	if (pid > 5) {
		if (MM_findObj('q5a').value.length == 0 && !MM_findObj('q5a').disabled) {
			MM_findObj('q5a').value = MM_findObj('a5a').value;
		}
		if (MM_findObj('q5b').value.length == 0 && !MM_findObj('q5b').disabled) {
			MM_findObj('q5b').value = MM_findObj('a5b').value;
		}
	}
	return pid;
}

function roicalculatorsettype(t) {
	window.roicalcofficetype = t;
	MM_findObj('roicalculator_OfficeType').value = t;
	var defaults = window.roicalcdefaults[t];
	for (var key in defaults) {
		MM_findObj('a'+key).value = defaults[key];
	}
	try { pageTracker._trackPageview('/roi-calculator/'+t.toLowerCase()+'/'); } catch(err) {}
	return roicalculatorpage(1);
}

function roicalculatorsubmit() {
	if (!window.roicalculatorsubmitted) {
		if (MM_findObj('contactname').value.length == 0) {
			MM_findObj('contactname').focus();
			MM_showHideLayers('required1', '', 'show');
			MM_showHideLayers('required2', '', 'show');
			alert('Please enter the name of the primary contact');
			return false;
		}
		if (MM_findObj('contactemail').value.length == 0) {
			MM_findObj('contactemail').focus();
			MM_showHideLayers('required1', '', 'show');
			MM_showHideLayers('required2', '', 'show');
			alert('Please enter the email address of the primary contact');
			return false;
		}
		window.roicalculatorsubmitted = 1;
	}
	MM_showHideLayers('roicalccontact', '', 'hide');
	MM_findObj('roicalculator_UpdateResultsOnly').value = 1;
	var rand = Math.random();
	new Ajax.Updater('roicalcresults', 'results.cfm?'+rand, { method:'post', parameters:$('roicalcform').serialize(true), evalScripts:true });
	try { pageTracker._trackPageview('/roi-calculator/'+window.roicalcofficetype.toLowerCase()+'/results/'); } catch(err) {}
	return false;
}

function roicalculatordownload() {
	MM_findObj('roicalcform').submit();
	try { pageTracker._trackPageview('/roi-calculator/'+window.roicalcofficetype.toLowerCase()+'/download/'); } catch(err) {}
	return false;
}

function roicalculatortoggleNA(qid1, qid2, val) {
	if (MM_findObj(qid1).options[MM_findObj(qid1).selectedIndex].value==val) {
		MM_findObj(qid2).disabled = false;
		if (MM_findObj(qid2).value == 'N/A') MM_findObj(qid2).value = '';
	} else {
		MM_findObj(qid2).value = 'N/A';
		MM_findObj(qid2).disabled = true;
	}
	if (qid2 == 'q2b' && MM_findObj('q2b').value == '' && MM_findObj('q3b').value.length > 0 && MM_findObj('q3b').value != 'N/A')
		MM_findObj('q2b').value = MM_findObj('q3b').value;
	if (qid2 == 'q3b' && MM_findObj('q3b').value == '' && MM_findObj('q2b').value.length > 0 && MM_findObj('q2b').value != 'N/A')
		MM_findObj('q3b').value = MM_findObj('q2b').value;
}

function roicalculatorupdatefield(f) {
	var o = MM_findObj(f);
	var b = o.value;
	var v = parseFloat(o.value.replace(/[^0-9\.]+/g,''));
	if (f=='q1a') o.value = v.numberFormat("0,0");
	if (f=='q1b') o.value = v.numberFormat("$#,0.00");
	if (f=='q1c') { v = (v >= 1 ? v/100 : v); o.value = v.numberFormat("0%"); }
	if (f=='q2b') o.value = v.numberFormat("$#,0.00");
	if (f=='q3b') o.value = v.numberFormat("$#,0.00");
	if (f=='q4a') { v = (v >= 1 ? v/100 : v); o.value = v.numberFormat("0%"); }
	if (f=='q4b') { v = (v >= 1 ? v/100 : v); o.value = v.numberFormat("0%"); }
	if (f=='q5a') o.value = v.numberFormat("$#,0.00");
	if (f=='q5b') o.value = v.numberFormat("$#,0.00");
	if (o.value == 'undefined') o.value = b;
	if (o.value == 'NaN') o.value = b;
	o.value = o.value.replace('.00', '');
	if (f=="q2b" && MM_findObj('q3b').value != 'N/A') MM_findObj('q3b').value = o.value;
	if (f=="q3b" && MM_findObj('q2b').value != 'N/A') MM_findObj('q2b').value = o.value;
}
