jQuery(function() {
	var form = jQuery('form#roiCalculator');
	var results = jQuery('<div id="roiResultContainer"></div>');
	
	//form.after(results);
	jQuery('div#overlayContent').append(results);
	jQuery('div#overlay').css("height",jQuery('body').height());
	
	
	form.submit(function() {
		
		/*	TODO: check for user cookies
		*	if found, populate hidden fields
		*	if not, create popup form
		*/
	
		var NAME_COOKIE_NAME = 'roi_contact_name';
		var EMAIL_COOKIE_NAME = 'roi_contact_email';
		var COMPANY_COOKIE_NAME = 'roi_contact_company';
		var OPTIN_COOKIE_NAME = 'roi_contact_optin';
		
		var validationAlerts = "";
		if (jQuery('form#roiCalculator input#demo-average_number_of_new_business_placements').val() == "") {
			validationAlerts += "Please enter Average Monthly Number of New Business Placements.\n";
		} else if (!validateExtendedNumeric(jQuery('form#roiCalculator input#demo-average_number_of_new_business_placements').val())) {
			validationAlerts += "Please enter a numeric value for Average Monthly Number of New Business Placements.\n";
		}
		if (jQuery('form#roiCalculator input#demo-number_of_sources_of_new_business').val() == "") {
			validationAlerts += "Please enter Number of Sources of New Business.\n";
		} else if (!validateExtendedNumeric(jQuery('form#roiCalculator input#demo-number_of_sources_of_new_business').val())) {
			validationAlerts += "Please enter a numeric value for Number of Sources of New Business.\n";
		}
		if (jQuery('form#roiCalculator input#demo-total_accounts_under_management').val() == "") {
			validationAlerts += "Please enter Total Accounts Under Management.\n";
		} else if (!validateExtendedNumeric(jQuery('form#roiCalculator input#demo-total_accounts_under_management').val())) {
			validationAlerts += "Please enter a numeric value for Total Accounts Under Management.\n";
		}
		if (jQuery('form#roiCalculator input#demo-annual_gross_collections').val() == "") {
			validationAlerts += "Please enter Annual Gross Collections.\n";
		} else if (!validateExtendedNumericDollars(jQuery('form#roiCalculator input#demo-annual_gross_collections').val())) {
			validationAlerts += "Please enter a numeric value for Annual Gross Collections.\n";
		}
		if (jQuery('form#roiCalculator input#demo-average_suit_balance').val() == "") {
			validationAlerts += "Please enter Average Suit Balance.\n";
		} else if (!validateExtendedNumericDollars(jQuery('form#roiCalculator input#demo-average_suit_balance').val())) {
			validationAlerts += "Please enter a numeric value for Average Suit Balance.\n";
		}
		if (jQuery('form#roiCalculator input#demo-number_of_suits_currently_filed_per_month').val() == "") {
			validationAlerts += "Please enter Number of Suits Currently Filed Per Month.\n";
		} else if (!validateExtendedNumeric(jQuery('form#roiCalculator input#demo-number_of_suits_currently_filed_per_month').val())) {
			validationAlerts += "Please enter a numeric value for Number of Suits Currently Filed Per Month.\n";
		}
		if (jQuery('form#roiCalculator input#demo-average_annual_recovery_on_accounts_post_suit').val() == "") {
			validationAlerts += "Please enter Average Annual Recovery on Accounts Post Suit.\n";
		} else if (!validateExtendedNumericPercent(jQuery('form#roiCalculator input#demo-average_annual_recovery_on_accounts_post_suit').val())) {
			validationAlerts += "Please enter a numeric value for Average Annual Recovery on Accounts Post Suit.\n";
		}
		if (jQuery('form#roiCalculator input#demo-average_contingency_fee_percentage').val() == "") {
			validationAlerts += "Please enter Average Contingency Fee Percentage.\n";
		} else if (!validateExtendedNumericPercent(jQuery('form#roiCalculator input#demo-average_contingency_fee_percentage').val())) {
			validationAlerts += "Please enter a numeric value for Average Contingency Fee Percentage.\n";
		}
		if (jQuery('form#roiCalculator input#demo-approximate_number_of_judgments_being_managed').val() == "") {
			validationAlerts += "Please enter Approximate Number of Judgments Being Managed.\n";
		} else if (!validateExtendedNumeric(jQuery('form#roiCalculator input#demo-approximate_number_of_judgments_being_managed').val())) {
			validationAlerts += "Please enter a numeric value for Approximate Number of Judgments Being Managed.\n";
		}
		if (jQuery('form#roiCalculator input#demo-percentage_of_judgments_performing').val() == "") {
			validationAlerts += "Please enter Percentage of Judgments Performing.\n";
		} else if (!validateExtendedNumericPercent(jQuery('form#roiCalculator input#demo-percentage_of_judgments_performing').val())) {
			validationAlerts += "Please enter a numeric value for Percentage of Judgments Performing.\n";
		}
		if (jQuery('form#roiCalculator input#demo-expected_replacements_and_growth').val() == "") {
			validationAlerts += "Please enter Average Number of New Employees per Year.\n";
		} else if (!validateExtendedNumeric(jQuery('form#roiCalculator input#demo-expected_replacements_and_growth').val())) {
			validationAlerts += "Please enter a numeric value for Average Number of New Employees per Year.\n";
		}
		
		if (validationAlerts != "") {
			alert(validationAlerts);
			return(false);
		}
		
		if ( (jQuery.cookie(NAME_COOKIE_NAME) == null) || (jQuery.cookie(EMAIL_COOKIE_NAME) == null)) {
			// alert("no cookie");
			
			results.children().remove();
			
			results.append('<form method="post" id="roiContactForm">' + 
				'<h2>COGENT VALUE CALCULATOR</h2>' +
				'<p>Note that all results generated by the Cogent&reg; Value Calculator are provided for informational purposes only, and BSI eSolutions makes no warranties or representations regarding, and shall not be responsible or liable for, the accuracy or usefulness of such results.</p>' + 
				'<fieldset>' +
				'<div class="fieldsetSection">' +
				'<div class="fieldsetSectionMid">' +
				'<div class="fieldsetSectionInner">' +
				'<p>Your Information</p>' +
				'<div class="roiContactInner">' +
				'<p class="note">( *required fields )</p>' +
				'<p style="margin-top: 0px;"><label for="roicontact_name">Your Name*</label><br />' +
				'<input type="text" class="fixField" id="roicontact_name" name="roicontact_name"></p>' +
				'<p><label for="roicontact_email">Email Address*</label><br />' +
				'<input type="text" class="fixField" id="roicontact_email" name="roicontact_email"></p>' +
				'<p><label for="roicontact_company">Company</label><br />' +
				'<input type="text" class="fixField" id="roicontact_company" name="roicontact_company"></p>' +
				'<p><input type="checkbox" id="roicontact_optin" name="roicontact_optin" value="yes" checked="checked"> Yes, I would like to receive the latest Cogent news.</p>' +
				'</div>' +
				'</div>' +
				'</div>' +
				'</div>' +
				'</fieldset>' +
				'<div class="roiContactFooterLine">' +
				'<input type="image" value="Next" src="/themes/cogent/images/roi-images/next-button-image.gif" />' +
				'</div>' +
				'</form>');
			
			displayResultContainer();
			
			var contactForm = jQuery('form#roiContactForm');
			
			// copy contact info to hidden fields on the ROI form
			contactForm.submit(function() {
				var validationAlerts = "";
				if (jQuery('form#roiContactForm input#roicontact_name').val() == "") {
					validationAlerts += "Please enter your name.\n";
				}
				if (jQuery('form#roiContactForm input#roicontact_email').val() == "") {
					validationAlerts += "Please enter your email address.\n";
				} else if (!validateEmail(jQuery('form#roiContactForm input#roicontact_email').val())) {
					validationAlerts += "Please enter a valid email address.\n";
				}
				
				if (validationAlerts != "") {
					alert(validationAlerts);
					return(false);
				}
				
				jQuery('form#roiCalculator input#roi_name').val(jQuery('form#roiContactForm input#roicontact_name').val());
				jQuery('form#roiCalculator input#roi_email').val(jQuery('form#roiContactForm input#roicontact_email').val());
				jQuery('form#roiCalculator input#roi_company').val(jQuery('form#roiContactForm input#roicontact_company').val());
				if (jQuery('form#roiContactForm input#roicontact_optin').attr('checked')) {
					jQuery('form#roiCalculator input#roi_optin').val('true');
				} else {
					jQuery('form#roiCalculator input#roi_optin').val('false');
				}
				
				jQuery.cookie(NAME_COOKIE_NAME, jQuery('form#roiCalculator input#roi_name').val(), {path:'/'});
				jQuery.cookie(EMAIL_COOKIE_NAME, jQuery('form#roiCalculator input#roi_email').val(), {path:'/'});
				jQuery.cookie(COMPANY_COOKIE_NAME, jQuery('form#roiCalculator input#roi_company').val(), {path:'/'});
				jQuery.cookie(OPTIN_COOKIE_NAME, jQuery('form#roiCalculator input#roi_optin').val(), {path:'/'});
				
				form.submit();
				return(false);
			});
				
			return false;
			
		} else {
			// alert(jQuery.cookie(NAME_COOKIE_NAME));
			
			// populate hidden contact fields from cookies
			jQuery('form#roiCalculator input#roi_name').val(jQuery.cookie(NAME_COOKIE_NAME));
			jQuery('form#roiCalculator input#roi_email').val(jQuery.cookie(EMAIL_COOKIE_NAME));
			jQuery('form#roiCalculator input#roi_company').val(jQuery.cookie(COMPANY_COOKIE_NAME));
			if (jQuery.cookie(OPTIN_COOKIE_NAME) == 'true') {
				jQuery('form#roiCalculator input#roi_optin').val('true');
			} else {
				jQuery('form#roiCalculator input#roi_optin').val('false');
			}
			
			
			var params = {};
		
			jQuery('input[type="text"]').each(function(i, el) {
				params[jQuery(el).attr('name')] = jQuery(el).val();
			});
			
			jQuery.post(
				'/assets/cogent_roi_calculator/ajax.php',
				params,
				function(data) {
					results.children().remove();
					if (data.result == 'error') {
						results.append(data.message);
					} else {
					
						var roundedContainerOuter = jQuery('<div class="roundedContainerOuter"></div>');
						
						var roundedContainerMid = jQuery('<div class="roundedContainerMid"></div>');
						
						var roundedContainerInner = jQuery('<div class="roundedContainerInner"></div>');
						
						var table      = jQuery('<table id="roiOriginalTable"></table>');
						
						var header_row = jQuery('<tr><th>Function Area</th><th>Year 1</th><th>Year 2</th><th>Year 3</th><th>Year 4</th><th>Year 5</th><th>Average</th></tr>');
						table.append(header_row);
						
						jQuery.each(data.calculations, function(key, val) {
							var row  = jQuery('<tr></tr>');
							var cell = jQuery('<td></td>');
							cell.append(key);
							row.append(cell);
							jQuery.each(val, function(year, amount) {
								var cell = jQuery('<td></td>');
								cell.append(amount);
								row.append(cell);
							});
							table.append(row);
						});
						results.append('<h3>COGENT VALUE CALCULATOR</h3>');
						results.append('<p>Note that all results generated by the Cogent&reg; Value Calculator are provided for informational purposes only, and BSI eSolutions makes no warranties or representations regarding, and shall not be responsible or liable for, the accuracy or usefulness of such results.</p>');
						
						// roundedContainerInner.append(table);
						
						var averageTable = jQuery('<table id="roiAverageTable" cellspacing="0"></table>');
						var descriptionString = "";
						
						averageTable.append('<tr><th class="firstTh">Function Area</th><th>Increase/Savings</th><th>Total Increase</th><th></th></tr>');
						
						descriptionString = "Efficiency is gained from faster load times, automated debtor linking, automated jurisdiction assignment and automated SOL calculation.";
						averageTable.append('<tr><td class="bulleted">New Business Placements</td><td class="increase">Increase Revenue</td><td>' + jQuery(table).find('tr:nth-child(2) td:nth-child(7)').text() + '</td><td><div class="screenOnly"><img src="/themes/cogent/images/roi-images/notebook.gif" border="0" tooltip="' + descriptionString + '" class="tooltipTarget"></div><div class="printOnly">' + descriptionString + '</div></td></tr>');
						
						descriptionString = "Integrated data products from a variety of data providers assist in locating individuals, assets and POE as well as validating address bank account data entered into Cogent.  The ability to export all debtor data allows you to send and receive data from the providers of your choice.";
						averageTable.append('<tr><td class="bulleted">Skip &amp; Scrubs</td><td class="increase">Increase Revenue</td><td>' + jQuery(table).find('tr:nth-child(3) td:nth-child(7)').text() + '</td><td><div class="screenOnly"><img src="/themes/cogent/images/roi-images/notebook.gif" border="0" tooltip="' + descriptionString + '" class="tooltipTarget"></div><div class="printOnly">' + descriptionString + '</div></td></tr>');
						
						descriptionString = "Cogent\'s Rules Engine can automate many aspects of the suit process resulting in more consistent evaluation of key factors such as statute of limitations, bankruptcy, disputed claims, balance level, if the debtor is in the military, and more.   A simple mouse-click can  result in the initiation of the suit process to include such actions as generating the entire suit package and, when applicable, applying court costs to the claim.";
						averageTable.append('<tr><td class="bulleted">New Suit Generation</td><td class="increase">Increase Revenue</td><td>' + jQuery(table).find('tr:nth-child(4) td:nth-child(7)').text() + '</td><td><div class="screenOnly"><img src="/themes/cogent/images/roi-images/notebook.gif" border="0" tooltip="' + descriptionString + '" class="tooltipTarget"></div><div class="printOnly">' + descriptionString + '</div></td></tr>');
						
						descriptionString = "Cogent helps automate and drive post judgment remedies and judgment monitoring. Rather than your staff manually reviewing new and non-performing judgments, the COGENT rules engine can make those evaluations when new judgments are awarded and when new Asset or POE data are found for existing judgments.";
						averageTable.append('<tr><td class="bulleted">Judgement Enforcement</td><td class="increase">Increase Revenue</td><td>' + jQuery(table).find('tr:nth-child(5) td:nth-child(7)').text() + '</td><td><div class="screenOnly"><img src="/themes/cogent/images/roi-images/notebook.gif" border="0" tooltip="' + descriptionString + '" class="tooltipTarget"></div><div class="printOnly">' + descriptionString + '</div></td></tr>');
						
						descriptionString = "Cogent\'s cost savings comes from the ability to automate the posting of future scheduled payments (Phone Pays, Post Dated Checks, ACH, and Credit Cards) and use of multi-trust account payment batches, concurrent payment batch processing and check scanning for making copies/images of checks to be stored in our database.";
						averageTable.append('<tr><td class="bulleted">Posting &amp; Remit Processing</td><td class="reduction">Cost Reduction</td><td>' + jQuery(table).find('tr:nth-child(6) td:nth-child(7)').text() + '</td><td><div class="screenOnly"><img src="/themes/cogent/images/roi-images/notebook.gif" border="0" tooltip="' + descriptionString + '" class="tooltipTarget"></div><div class="printOnly">' + descriptionString + '</div></td></tr>');
						
						descriptionString = "Cogent\'s internal document management tools allows images to be captured of the documents as they are being generated and makes them available from within the Work Claims screen on the claim that they were generated for. These images are available for viewing without any need for manual scanning.";
						averageTable.append('<tr><td class="bulleted">Scanning &amp; Imaging</td><td class="reduction">Cost Reduction</td><td>' + jQuery(table).find('tr:nth-child(7) td:nth-child(7)').text() + '</td><td><div class="screenOnly"><img src="/themes/cogent/images/roi-images/notebook.gif" border="0" tooltip="' + descriptionString + '" class="tooltipTarget"></div><div class="printOnly">' + descriptionString + '</div></td></tr>');
						
						descriptionString = "Cogent minimizes the time required for training because of our navigational design and the workflow logic maintained in the software. This allows new hires to be more productive and effective sooner requiring less training time for your training staff and new hires.";
						averageTable.append('<tr><td class="bulleted">General Administrative</td><td class="reduction">Cost Reduction</td><td>' + jQuery(table).find('tr:nth-child(8) td:nth-child(7)').text() + '</td><td><div class="screenOnly"><img src="/themes/cogent/images/roi-images/notebook.gif" border="0" tooltip="' + descriptionString + '" class="tooltipTarget"></div><div class="printOnly">' + descriptionString + '</div></td></tr>');
						
						averageTable.append('<tr class="roiTotalRow"><td colspan="2">Total Annual Increase in Revenue</td><td colspan="2" class="roiTotalRowValue">' + jQuery(table).find('tr:nth-child(9) td:nth-child(7)').text() + '</td><td></td></tr>');
						
						roundedContainerInner.append(averageTable);
						
						// insert calculated values into hidden fields in ROI form
						jQuery('form#roiCalculator input#roi_calc-new_business_placements').val(jQuery(table).find('tr:nth-child(2) td:nth-child(7)').text());
						jQuery('form#roiCalculator input#roi_calc-skip_scrubs').val(jQuery(table).find('tr:nth-child(3) td:nth-child(7)').text());
						jQuery('form#roiCalculator input#roi_calc-new_suit_generation').val(jQuery(table).find('tr:nth-child(4) td:nth-child(7)').text());
						jQuery('form#roiCalculator input#roi_calc-judgement_enforcement').val(jQuery(table).find('tr:nth-child(5) td:nth-child(7)').text());
						jQuery('form#roiCalculator input#roi_calc-posting_remit_processing').val(jQuery(table).find('tr:nth-child(6) td:nth-child(7)').text());
						jQuery('form#roiCalculator input#roi_calc-scanning_imaging').val(jQuery(table).find('tr:nth-child(7) td:nth-child(7)').text());
						jQuery('form#roiCalculator input#roi_calc-general_administrative').val(jQuery(table).find('tr:nth-child(8) td:nth-child(7)').text());
						jQuery('form#roiCalculator input#roi_calc-total_annual_increase').val(jQuery(table).find('tr:nth-child(9) td:nth-child(7)').text());
						
						var fiveYearTable = jQuery('<table id="roiFiveYearProjection"></table>');
						var totalYear1 = jQuery(table).find('tr:nth-child(9) td:nth-child(2)').text();
						var totalYear2 = jQuery(table).find('tr:nth-child(9) td:nth-child(3)').text();
						var totalYear3 = jQuery(table).find('tr:nth-child(9) td:nth-child(4)').text();
						var totalYear4 = jQuery(table).find('tr:nth-child(9) td:nth-child(5)').text();
						var totalYear5 = jQuery(table).find('tr:nth-child(9) td:nth-child(6)').text();
						
						var totalYear1Numeric = totalYear1.replace(/\$/g,'').replace(/,/g,'');
						var totalYear2Numeric = totalYear2.replace(/\$/g,'').replace(/,/g,'');
						var totalYear3Numeric = totalYear3.replace(/\$/g,'').replace(/,/g,'');
						var totalYear4Numeric = totalYear4.replace(/\$/g,'').replace(/,/g,'');
						var totalYear5Numeric = totalYear5.replace(/\$/g,'').replace(/,/g,'');
						
						var totalMin = Math.min(0, totalYear1Numeric, totalYear2Numeric, totalYear3Numeric, totalYear4Numeric, totalYear5Numeric);
						var totalMax = Math.max(totalYear1Numeric, totalYear2Numeric, totalYear3Numeric, totalYear4Numeric, totalYear5Numeric);
						
						var totalMinScaled = Math.floor(totalMin/100000)/10;
						var totalMaxScaled = Math.floor(totalMax/100000)/10;
						
						fiveYearTable.append('<tr><th>Year 1</th><th>Year 2</th><th>Year 3</th><th>Year 4</th><th>Year 5</th></tr>');
						fiveYearTable.append('<tr><td>' + totalYear1 + '</td><td>' + totalYear2 + '</td><td>' + totalYear3 + '</td><td>' + totalYear4 + '</td><td>' + totalYear5 + '</td></tr>');
						
						// roundedContainerInner.append(fiveYearTable);
						
						roundedContainerInner.append('<div class="roiChart"><div class="roiChartText"><p><b>Five Year Projection</b><br />Potential annual combined savings and fee revenue increase per year. Results may vary.</div><div class="roiChartImageDiv"><img src="http://chart.apis.google.com/chart?cht=bvs&chs=195x85&chd=t:' + totalYear1Numeric + ',' + totalYear2Numeric + ',' + totalYear3Numeric + ',' + totalYear4Numeric + ',' + totalYear5Numeric + '&chco=4d89f9&chbh=a&chds=' + totalMin + ',' + totalMax + '&chxt=x,y&chxl=0:|1|2|3|4|5|&chxr=1,' + totalMinScaled + ',' + totalMaxScaled + '&chtt=$%20MILLIONS&chf=bg,s,f7f7f7&chts=333333,9" border="0" useMap="#roiGoogleChartMap"><map id="roiGoogleChartMap" name="roiGoogleChartMap"><area shape="rect" coords="24,17,46,65" tooltip="' + totalYear1 + '" alt="' + totalYear1 + '"><area shape="rect" coords="56,17,82,65" tooltip="' + totalYear2 + '" alt="' + totalYear2 + '"><area shape="rect" coords="92,17,118,65" tooltip="' + totalYear3 + '"  alt="' + totalYear3 + '"><area shape="rect" coords="126,17,154,65" tooltip="' + totalYear4 + '"  alt="' + totalYear4 + '"><area shape="rect" coords="161,17,191,65" tooltip="' + totalYear5 + '"  alt="' + totalYear5 + '"></map></div><div class="clear"></div></div>');
						
						//.replace('$','').replace(',','')
						
						// http://chart.apis.google.com/chart?cht=bvs&chs=200x125&chd=t:10,50,60,80,40&chco=4d89f9&chbh=a
						
						roundedContainerMid.append(roundedContainerInner);
						roundedContainerOuter.append(roundedContainerMid)
						results.append(roundedContainerOuter);
						
						results.append('<table width="100%"><tr><td id="roiSocialLinksCell"><div><a class="addthis_button_email"><img src="/themes/cogent/images/roi-images/email-link.gif" alt="e-mail"></a><a href="javascript:window.print()"><img src="/themes/cogent/images/roi-images/print-link.gif" alt="print"></a><a class="addthis_button"><img src="/themes/cogent/images/roi-images/share-link.gif" alt="share"></a></div></td><td style="text-align: right;"><a href="javascript:jQuery(\'div#overlay\').hide();moveSocialLinksFromOverlay();makeMainPagePrintable();void(0);" onClick="jQuery(\'div#overlay\').hide();moveSocialLinksFromOverlay();void(0);"><img src="/themes/cogent/images/roi-images/recalculate-button.gif" alt="Recalculate"></a><a href="/get-started/" style="margin-left: 2px;"><img src="/themes/cogent/images/roi-images/get-started-button.gif" alt="Get Started"></a></td></tr></table>');
						
						displayResultContainer();
						
						// post the main form to a form handler which will store the data in the database.
						jQuery.post('/value-calculator/SubmitForm',{
							UserName: jQuery('form#roiCalculator input#roi_name').val(),
							Email: jQuery('form#roiCalculator input#roi_email').val(),
							Company: jQuery('form#roiCalculator input#roi_company').val(),
							OptIn: jQuery('form#roiCalculator input#roi_optin').val(),
							calculatedNewBusinessPlacements: jQuery('form#roiCalculator input#roi_calc-new_business_placements').val(),
							calculatedSkipScrubs: jQuery('form#roiCalculator input#roi_calc-skip_scrubs').val(),
							calculatedNewSuitGeneration: jQuery('form#roiCalculator input#roi_calc-new_suit_generation').val(),
							calculatedJudgementEnforcement: jQuery('form#roiCalculator input#roi_calc-judgement_enforcement').val(),
							calculatedPostingRemitProcessing: jQuery('form#roiCalculator input#roi_calc-posting_remit_processing').val(),
							calculatedScanningImaging: jQuery('form#roiCalculator input#roi_calc-scanning_imaging').val(),
							calculatedGeneralAdministrative: jQuery('form#roiCalculator input#roi_calc-general_administrative').val(),
							calculatedTotalAnnualIncrease: jQuery('form#roiCalculator input#roi_calc-total_annual_increase').val(),
							averageNumberOfNewBusinessPlacements: jQuery('form#roiCalculator input#demo-average_number_of_new_business_placements').val(),
							numberOfSourcesOfNewBusiness: jQuery('form#roiCalculator input#demo-number_of_sources_of_new_business').val(),
							totalAccountsUnderManagement: jQuery('form#roiCalculator input#demo-total_accounts_under_management').val(),
							annualGrossCollections: jQuery('form#roiCalculator input#demo-annual_gross_collections').val(),
							averageSuitBalance: jQuery('form#roiCalculator input#demo-average_suit_balance').val(),
							numberOfSuitsCurrentlyFiledPerMonth: jQuery('form#roiCalculator input#demo-number_of_suits_currently_filed_per_month').val(),
							averageAnnualRecoveryOnAccountsPostSuit: jQuery('form#roiCalculator input#demo-average_annual_recovery_on_accounts_post_suit').val(),
							averageContingencyFeePercentage: jQuery('form#roiCalculator input#demo-average_contingency_fee_percentage').val(),
							approximateNumberOfJudgmentsBeingManaged: jQuery('form#roiCalculator input#demo-approximate_number_of_judgments_being_managed').val(),
							percentageOfJudgmentsPerforming: jQuery('form#roiCalculator input#demo-percentage_of_judgments_performing').val(),
							expectedReplacementsAndGrowth: jQuery('form#roiCalculator input#demo-expected_replacements_and_growth').val()
							});
						
						// Notice the use of the each() method to acquire access to each elements attributes
						jQuery('#roiAverageTable img[tooltip]').each(function()
						{
							jQuery(this).qtip({
								content: jQuery(this).attr('tooltip'), // Use the tooltip attribute of the element for the content
								position: {
									corner: {
										tooltip: 'bottomMiddle', // Use the corner...
										target: 'topMiddle' // ...and opposite corner
									}
								},
								style: {
									border: {
										width: 1,
										radius: 2,
										color: '#bdbdbd'
									},
									background: '#edf8fe URL(/themes/cogent/images/roi-images/qtip-bkgd.gif) repeat-x top',
									color: '#333333',
									'font-size': '10px',
									fontWeight: 'normal',
									padding: 6, 
									textAlign: 'left',
									tip: true, // Give it a speech bubble tip with automatic corner detection
									name: 'blue' // Style it according to the preset 'cream' style
								}
							});
						});
						
						jQuery('#roiGoogleChartMap area[tooltip]').each(function()
						{
							jQuery(this).qtip({
								content: jQuery(this).attr('tooltip'), // Use the tooltip attribute of the element for the content
								position: {
									corner: {
										tooltip: 'bottomMiddle', // Use the corner...
										target: 'topMiddle' // ...and opposite corner
									}
								},
								style: {
									border: {
										width: 1,
										radius: 2,
										color: '#bdbdbd'
									},
									background: '#edf8fe URL(/themes/cogent/images/roi-images/qtip-bkgd.gif) repeat-x top',
									color: '#333333',
									'font-size': '10px',
									fontWeight: 'normal',
									padding: 6,
									width: 78,
									textAlign: 'center',
									tip: true, // Give it a speech bubble tip with automatic corner detection
									name: 'blue' // Style it according to the preset 'cream' style
								}
							});
						});
						
						moveSocialLinksToOverlay();
						
					
					}	
				},
				'json'
			);
			 
			return false;
		}
	});
});

function displayResultContainer() {
	jQuery('div#overlay').show();
	
	var resulttop = ( ( jQuery(window).height() - jQuery('div#overlayOuter').height() ) / 2);
	resulttop += jQuery(document).scrollTop();
	
	jQuery('div#overlayOuter').css("top",resulttop + "px");
	jQuery('div#overlayOuter').css("left", jQuery("form#roiCalculator").offset("body").left + 40 + "px");
	
	// try adding "screenOnly" class to appropriate divs
	makeMainPageNotPrintable();
}

function validateEmail(elementValue){      
   var emailPattern = /^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$/;
   return emailPattern.test(elementValue); 
 }

function validateExtendedNumeric(elementValue){      
   var extendedNumberPattern = /^[0-9]+[\.]{0,1}[0-9]*$/;
   return extendedNumberPattern.test(elementValue); 
 }

function validateExtendedNumericDollars(elementValue){      
   var extendedNumberPattern = /^[\$]{0,1}[0-9\,]+[\.]{0,1}[0-9]*$/;
   return extendedNumberPattern.test(elementValue); 
 }
 
function validateExtendedNumericPercent(elementValue){      
   var extendedNumberPattern = /^[0-9]+[\.]{0,1}[0-9]*[\%]{0,1}$/;
   return extendedNumberPattern.test(elementValue); 
 }

 
function moveSocialLinksToOverlay() {
	// copy the links into the overlay
	jQuery('td#roiSocialLinksCell').empty();
	jQuery('div#roiSocialLinksCellSource div').appendTo('td#roiSocialLinksCell');
}

function moveSocialLinksFromOverlay() {
	// copy the links back into the hidden field
	jQuery('td#roiSocialLinksCell div').appendTo('div#roiSocialLinksCellSource');
}

function makeMainPageNotPrintable() {
	jQuery('div.page-width').addClass('screenOnly');
}

function makeMainPagePrintable() {
	jQuery('div.page-width').removeClass('screenOnly');
}