
//*********************************************************************************
// Title: 				macPrintingInstructions
// Desc: 				Alert message used to instruct the user on how to print the Page
// Created : 			July 18, 2005
// Last Modified: 		July 18, 2005
// Accepts:				N/A
// Returns:				N/A
//*********************************************************************************	/
var macPrintingInstructions = 'To print this page, hold down the "command" and "P" keys together.';
var macPrintingInstructionsFr = 'Pour imprimer cette page, tenez les touches "Commande" et "P" enfoncées en même temps.';

//*********************************************************************************
// Title: 				secureCheck
// Desc: 				Checks to see if the URL is https on www.cibc.com
// Created : 			Unknown
// Last Modified: 		Unknown
// Accepts:				N/A
// Returns:				N/A
//*********************************************************************************	/
function secureCheck(){
	if (location.host.indexOf('cibc.com') != -1 && location.host != 'www.cibc.com'){
		location.href = location.href.replace('cibc.com', 'www.cibc.com') ;
	}
	if(location.host == 'www.cibc.com' && location.protocol != 'https:'){
		location.href = 'https:' + location.href.replace(location.protocol, '');

	}
}

//*********************************************************************************
// Title: 				patternValidate
// Desc: 				Validates data using a variety of regular expressions
// Created : 			Unknown
// Last Modified: 		Unknown
// Accepts:				fieldVal as a string
// 						patternName as a string
// Returns:				true or false
//*********************************************************************************	
var validationPatterns = new Array();
validationPatterns['genericText'] = /^[A-Za-z0-9ÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÑÒÓÔÕÖÙÚÛÜÝàáâãäåæçèéêëìíîïñòóôõöùúûüýÿ,:\'"\-=_!@# \+\*\?\.\[\]\^\$\(\)\{\}\|\\\&]*[A-Za-z0-9ÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÑÒÓÔÕÖÙÚÛÜÝàáâãäåçèéêëìíîïñòóôõöùúûüýÿ]+[A-Za-z0-9ÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÑÒÓÔÕÖÙÚÛÜÝàáâãäåæçèéêëìíîïñòóôõöùúûüýÿ,:\'"\-=_!@# \+\*\?\.\[\]\^\$\(\)\{\}\|\\\&]*$/;
validationPatterns['multiLineGenricText'] = /[A-Za-z0-9ÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÑÒÓÔÕÖÙÚÛÜÝàáâãäåæçèéêëìíîïñòóôõöùúûüýÿ,:\'"\-=_!@# \+\*\?\.\[\]\^\$\(\)\{\}\|\\\&]*[A-Za-z0-9ÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÑÒÓÔÕÖÙÚÛÜÝàáâãäåçèéêëìíîïñòóôõöùúûüýÿ]+[A-Za-z0-9ÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÑÒÓÔÕÖÙÚÛÜÝàáâãäåæçèéêëìíîïñòóôõöùúûüýÿ,:\'"\-=_!@# \+\*\?\.\[\]\^\$\(\)\{\}\|\\\&]*/;
validationPatterns['multiLineGenericText'] = /^[A-Za-z0-9ÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÑÒÓÔÕÖÙÚÛÜÝàáâãäåçèéêëìíîïñòóôõöùúûüýÿ«»æÆ¢£¥œŒƒP,:\'"-=_!@# \+\*\?\.\[\]\^\$\(\)\{\}\|\\\&\f\n\r]*[A-Za-z0-9ÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÑÒÓÔÕÖÙÚÛÜÝàáâãäåçèéêëìíîïñòóôõöùúûüýÿ«»æÆ¢£¥œŒƒP]+[A-Za-z0-9ÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÑÒÓÔÕÖÙÚÛÜÝàáâãäåçèéêëìíîïñòóôõöùúûüýÿ«»æÆ¢£¥œŒƒP,:\'"-=_!@# \+\*\?\.\[\]\^\$\(\)\{\}\|\\\&\f\n\r]*$/;
validationPatterns['2DigitWholeNumber'] = /^[0-9]{2}$/;
validationPatterns['3DigitWholeNumber'] = /^[0-9]{3}$/;
validationPatterns['4DigitWholeNumber'] = /^[0-9]{4}$/;
validationPatterns['5DigitWholeNumber'] = /^[0-9]{5}$/;
validationPatterns['alphabetic'] = /^([A-Za-z0-9ÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÑÒÓÔÕÖÙÚÛÜÝàáâãäåçèéêëìíîïñòóôõöùúûüýÿ]+[A-Za-z0-9ÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÑÒÓÔÕÖÙÚÛÜÝàáâãäåçèéêëìíîïñòóôõöùúûüýÿ\' \-,]*)$/;
validationPatterns['alphabetic2'] = /^([A-Za-z0-9ÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÑÒÓÔÕÖÙÚÛÜÝàáâãäåçèéêëìíîïñòóôõöùúûüýÿ#]+[A-Za-z0-9ÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÑÒÓÔÕÖÙÚÛÜÝàáâãäåçèéêëìíîïñòóôõöùúûüýÿ\' #\-\/.,]*)$/;
validationPatterns['alphabetic3'] = /^([A-Za-z0-9ÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÑÒÓÔÕÖÙÚÛÜÝàáâãäåçèéêëìíîïñòóôõöùúûüýÿ]+[A-Za-z0-9ÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÑÒÓÔÕÖÙÚÛÜÝàáâãäåçèéêëìíîïñòóôõöùúûüýÿ\'" \-,]*)$/;
validationPatterns['alphabetic4'] = /^([A-Za-zÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÑÒÓÔÕÖÙÚÛÜÝàáâãäåçèéêëìíîïñòóôõöùúûüýÿ]+[A-Za-zÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÑÒÓÔÕÖÙÚÛÜÝàáâãäåçèéêëìíîïñòóôõöùúûüýÿ\' \-,]*)$/;
validationPatterns['alphanumeric'] = /^([A-Za-zÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÑÒÓÔÕÖÙÚÛÜÝàáâãäåçèéêëìíîïñòóôõöùúûüýÿ]+[A-Za-z0-9ÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÑÒÓÔÕÖÙÚÛÜÝàáâãäåçèéêëìíîïñòóôõöùúûüýÿ\' \-]*)$/;
validationPatterns['alphanumericStrict'] = /^[A-Za-zÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÑÒÓÔÕÖÙÚÛÜÝàáâãäåæçèéêëìíîïñòóôõöùúûüýÿ0-9]+$/;
validationPatterns['bankAccount'] = /^((([0-9]{2}[- ])?[0-9]{5})|([0-9]{3}[- ]?[0-9]{3}[- ]?[0-9]))$/;
validationPatterns['bankAccount1'] = /^([0-9]?[0-9]?[0-9]?[0-9]?[0-9]?[0-9]?[0-9]?[0-9]?[0-9]?[0-9]?)$/;
validationPatterns['CCNumber'] = /^[0-9]{4}[ ]?[0-9]{4}[ ]?[0-9]{4}[ ]?[0-9]{4}$/;
validationPatterns['currency'] = /^((([0-9]{1,3}([, ]?[ ]?[0-9]{3})*)|([0-9]*))([.][0-9]{1,2})?)$/;
validationPatterns['currency2'] = /^((([0-9]{1,3}([, ]?[ ]?[0-9]{3}){0,2})|([0-9]{0,9}))([.][0-9]{1,2})?)$/;
validationPatterns['currency-fr'] = /^((([0-9]{1,3}([ ]?[ ]?[0-9]{3})*)|([0-9]*))([,.][0-9]{1,2})?)$/;//not used currently
validationPatterns['currency2-fr'] = /^((([0-9]{1,3}([ ]?[ ]?[0-9]{3}){0,2})|([0-9]{0,9}))([,.][0-9]{1,2})?)$/;//not used currently
validationPatterns['dateDay'] = /^(([3][01])|([12][0-9])|([0]?[1-9]))$/;
validationPatterns['dateYear'] = /^(((19)|(20))[0-9]{2})$/;
validationPatterns['decimalNumber'] = /^(([0-9]+)|([0-9]*[.][0-9]+))$/;
validationPatterns['email'] = /^[a-zA-Z0-9!#\$%\&'\*\+\-\/=\?\^_`\{\|\}~]+([.][a-zA-Z0-9!#\$%\&'\*\+\-\/=\?\^_`\{\|\}~]+)*[@]([a-zA-Z0-9]+([\.\-][a-zA-Z0-9]+)*(\.[a-zA-Z]{2,})|(((([01]?[0-9]{0,2})|(2(([0-4][0-9])|(5[0-5]))))\.){3}(([01]?[0-9]{0,2})|(2(([0-4][0-9])|(5[0-5]))))))$/;
validationPatterns['cibcEmail'] = /^[a-zA-Z0-9!#\$%\&'\*\+\-\/=\?\^_`\{\|\}~]+([.][a-zA-Z0-9!#\$%\&'\*\+\-\/=\?\^_`\{\|\}~]+)*[@][Cc][Ii][Bb][Cc][\.][Cc](([aA])|([oO][mM]))$/;
validationPatterns['expDateMonth'] = /^[01][0-9]$/;
validationPatterns['percentage'] = /^[01]?[0-9]{1,2}$/;
validationPatterns['phoneNumber'] = /^[0-9]{3}[ \-\.]?[0-9]{4}$/;
validationPatterns['phoneNumberFull'] = /^((([\(][0-9]{3}[\)][ ]?)|([0-9]{3}[ \-\.]?))[0-9]{3}[ \-\.]?[0-9]{4})$/;
validationPatterns['foreignPhoneNumber'] = /^[0-9\-\.]+$/;
validationPatterns['postalCode'] = /^[A-Za-z][0-9][A-Za-z][ ]?[0-9][A-Za-z][0-9]$/;
validationPatterns['spacedWholeNumber'] = /^[0-9 ]+$/;
validationPatterns['SINumber'] = /^[0-9]{3}[ ]?[0-9]{3}[ ]?[0-9]{3}$/;
validationPatterns['wholeNumber'] = /^[0-9]+$/;
validationPatterns['agentID'] = /^[a-zA-Z]{2}[0-9]{4}/;

function patternValidate(fieldVal, patternName){
	if(fieldVal.length == 0 || validationPatterns[patternName].test(fieldVal)){
		return true;
	}else{
		return false;
	}
}

//*********************************************************************************
// Title: 				trim
// Desc: 				Trims trailing spaces
// Created : 			Unknown
// Last Modified: 		Unknown
// Accepts:				toTrim as a string
// Returns:				toTrim as a string
//*********************************************************************************	
function trim(toTrim){
	while(toTrim.charAt(0) == ' ' || toTrim.charAt(0) == '\n' || toTrim.charAt(0) == '\r' || toTrim.charAt(0) == '	'){
		toTrim = toTrim.substring(1, toTrim.length)
	}
	
	while(toTrim.charAt(toTrim.length-1) == ' ' || toTrim.charAt(toTrim.length-1) == '\n' || toTrim.charAt(toTrim.length-1) == '\r' || toTrim.charAt(toTrim.length-1) == '	'){
		toTrim = toTrim.substring(0, toTrim.length-1)
	}
	
	return toTrim;
}

//*********************************************************************************
// Title: 				checkAccountNum
// Desc: 				Validates Account Numbers
// Created : 			Unknown
// Last Modified: 		Unknown
// Accepts:				accNum as a string
// Returns:				true or false
//*********************************************************************************	
function checkAccountNum(accNum) {
	var rightDigit = '';
	var leftDigits = '';
	var sum = 0;
	// shave off the rightmost check digit
	rightDigit = accNum.substring(accNum.length - 1, accNum.length);
	leftDigits = accNum.substring(0, accNum.length - 1);
	// below we will do the following:
	//     on a 3-digit number 'abc':                                      
	//     add c * 2
	//     add b * 3   
	//     add a * 4
	for (var i = 1; i <= leftDigits.length; i++) {
		temp = leftDigits.substring(leftDigits.length - i, leftDigits.length - i + 1);
		temp = temp * (i + 1);
		sum = sum + temp;
	}
	// Divide by 11 and get the remainder (this is the mod11 part of the check)
	remainder = sum % 11;
	// 3 cases to check (described above) 
	if (remainder == 0){
		remainder = 0;
	}else if (remainder == 1){
		return false;
	}else{
		remainder = 11 - remainder;
	}
	valid = (remainder == rightDigit);
	return valid;
}

//*********************************************************************************
// Title: 				checkCardNum
// Desc: 				Validates Credit Card Numbers
// Created : 			Unknown
// Last Modified: 		Unknown
// Accepts:				cardNum as a string
// Returns:				true or false
//*********************************************************************************	
function checkCardNum(cardNum) {
	var i;
	var cc = new Array(16);
	var checksum = 0;
	var validcc;
	for (i = 0; i < cardNum.length; i++) {
		cc[i] = Math.floor(cardNum.substring(i, i+1));
	}
	for (i = (cardNum.length % 2); i < cardNum.length; i+=2) {
		var a = cc[i] * 2;
		if (a >= 10) {
			var aStr = a.toString();
			var b = aStr.substring(0,1);
			var c = aStr.substring(1,2);
			cc[i] = Math.floor(b) + Math.floor(c);
		} else {
			cc[i] = a;
		}
	}
	for (i = 0; i < cardNum.length; i++) {
		checksum += Math.floor(cc[i]);
	}
	validcc = ((checksum % 10) == 0);
	
	return validcc;
}

 //*********************************************************************************
// Title: 				checkModTen
// Desc: 				Mod 10 Validation (SIN card)	
// Created : 			Unknown
// Last Modified: 		Unknown
// Accepts:				thisStr as a string
// Returns:				true or false
//*********************************************************************************
function checkModTen(thisStr){
	var thisStr = replaceAll(thisStr, ' ', '');
	var sum = 0;
	for (var i = 0; i < thisStr.length; i++){
		var thisVal = (1 + (1 * (i % 2))) * parseInt(thisStr.charAt(i));
		if (thisVal >= 10){
			thisVal = (thisVal - 10) + 1;
		}
		sum = sum + thisVal;
	}
	if(sum % 10 == 0){
		return true;
	}else{
		return false;
	}
}

 //*********************************************************************************
// Title: 				replaceAll
// Desc: 				Performs string replacement	
// Created : 			Unknown
// Last Modified: 		Unknown
// Accepts:				str as a string
//						key as a string
//						rplcmnt as a string
// Returns:				String
//*********************************************************************************
function replaceAll(str, key, rplcmnt){
	while(str.indexOf(key) != -1){
		str = str.replace(key, rplcmnt);
	}
	return str;
}

 //*********************************************************************************
// Title: 				checkDate
// Desc: 				Validates YYYYMMDD format dates	
// Created : 			May 12, 2004
// Last Modified: 		May 28, 2004
// Accepts:				theDate as a string in format YYYYMMDD
// Returns:				true or false
//*********************************************************************************
function checkDate(theDate) {
	testDate = new Date();
	today = new Date();
	theYear = theDate.substr(0, 4);
	theMonth = theDate.substr(4, 2);
	theDay = theDate.substr(6, 2);
	
	testDate.setDate(theDay);
	testDate.setMonth(theMonth-1);
	testDate.setFullYear(theYear);
	
	if(theMonth < 1 || theMonth > 12){
		return false;
	}else if(theDay < 1 || theDay > 31){
		return false;
	}else if(testDate > today){
		return false;
	}else{
		return true;
	}	
}

//*********************************************************************************
// Title: 				illegalCharReplace
// Desc: 				Replaces illegal characters with other versions	
// Created : 			Sept 29, 2004
// Last Modified: 		Sept 29, 2004
// Accepts:				String
// Returns:				Converted String
//*********************************************************************************
function illegalCharReplace(inpString){
	inpString = inpString.replace(/</g, "(less than)");
	inpString = inpString.replace(/>/g, "(greater than)");
	inpString = inpString.replace(/\'/g, "\"");
	inpString = inpString.replace(/\\/g, "/");
	inpString = inpString.replace(/%/g, "(percent)");
	inpString = inpString.replace(/\{/g, "(");
	inpString = inpString.replace(/\}/g, ")");
	inpString = inpString.replace(/\[/g, "(");
	inpString = inpString.replace(/\]/g, ")");
	inpString = inpString.replace(/http:/gi, "h++p:");
	inpString = inpString.replace(/https:/gi, "h++ps:");
	inpString = inpString.replace(/javascript/gi, "java script");
	inpString = inpString.replace(/function/gi, "func+ion");
	inpString = inpString.replace(/return/gi, "re+urn");

	inpString = inpString.replace(/&lt;/g, "(less than)");
	inpString = inpString.replace(/&gt;/g, "(greater than)");
	inpString = inpString.replace(/&quot;/g, "\"");

	inpString = inpString.replace(/&#60;/g, "(less than)");
	inpString = inpString.replace(/&#62;/g, "(greater than)");
	inpString = inpString.replace(/&#34;/g, "\"");
	inpString = inpString.replace(/&#92;/g, "/");
	inpString = inpString.replace(/&#37;/g, "(percent)");
	inpString = inpString.replace(/&#123;/g, "(");
	inpString = inpString.replace(/&#125;/g, ")");
	inpString = inpString.replace(/&#91;/g, "(");
	inpString = inpString.replace(/&#93;/g, ")");
	inpString = inpString.replace(/&#104;&#116;&#116;&#112;&#58;/gi, "h++p:");
	inpString = inpString.replace(/&#104;&#116;&#116;&#112;&#115;&#58;/gi, "h++ps:");
	inpString = inpString.replace(/&#106;&#97;&#118;&#97;&#115;&#99;&#114;&#105;&#112;&#116;/gi, "java script");
	inpString = inpString.replace(/&#102;&#117;&#110;&#99;&#116;&#105;&#111;&#110;/gi, "func+ion");
	inpString = inpString.replace(/&#114;&#101;&#116;&#117;&#114;&#110;/gi, "re+urn");
	
	return inpString;
}

//*********************************************************************************
// Title: 				illegalCharReplace_FR
// Desc: 				Replaces illegal characters with other versions	
// Created : 			Oct 1, 2004
// Last Modified: 		Oct 1, 2004
// Accepts:				String
// Returns:				Converted String
//*********************************************************************************
function illegalCharReplace_FR(inpString){
	inpString = inpString.replace(/</g, "(moins que)");
	inpString = inpString.replace(/>/g, "(plus que)");
	inpString = inpString.replace(/\'/g, "\"");
	inpString = inpString.replace(/\\/g, "/");
	inpString = inpString.replace(/%/g, "(pourcentage)");
	inpString = inpString.replace(/\{/g, "(");
	inpString = inpString.replace(/\}/g, ")");
	inpString = inpString.replace(/\[/g, "(");
	inpString = inpString.replace(/\]/g, ")");
	inpString = inpString.replace(/http:/gi, "h++p:");
	inpString = inpString.replace(/https:/gi, "h++ps:");
	inpString = inpString.replace(/javascript/gi, "java script");
	inpString = inpString.replace(/function/gi, "func+ion");
	inpString = inpString.replace(/return/gi, "re+urn");

	inpString = inpString.replace(/&lt;/g, "(moins que)");
	inpString = inpString.replace(/&gt;/g, "(plus que)");
	inpString = inpString.replace(/&quot;/g, "\"");

	inpString = inpString.replace(/&#60;/g, "(moins que)");
	inpString = inpString.replace(/&#62;/g, "(plus que)");
	inpString = inpString.replace(/&#34;/g, "\"");
	inpString = inpString.replace(/&#92;/g, "/");
	inpString = inpString.replace(/&#37;/g, "(pourcentage)");
	inpString = inpString.replace(/&#123;/g, "(");
	inpString = inpString.replace(/&#125;/g, ")");
	inpString = inpString.replace(/&#91;/g, "(");
	inpString = inpString.replace(/&#93;/g, ")");
	inpString = inpString.replace(/&#104;&#116;&#116;&#112;&#58;/gi, "h++p:");
	inpString = inpString.replace(/&#104;&#116;&#116;&#112;&#115;&#58;/gi, "h++ps:");
	inpString = inpString.replace(/&#106;&#97;&#118;&#97;&#115;&#99;&#114;&#105;&#112;&#116;/gi, "java script");
	inpString = inpString.replace(/&#102;&#117;&#110;&#99;&#116;&#105;&#111;&#110;/gi, "func+ion");
	inpString = inpString.replace(/&#114;&#101;&#116;&#117;&#114;&#110;/gi, "re+urn");
	
	return inpString;
}
//*********************************************************************************
// Title: 				CheckCurrency
// Desc: 				Returns the format of currency
// Created : 			Feb 16, 2005
// Last Modified: 		Feb 16, 2005
// Accepts:				String
// Returns:				Converted String
//*********************************************************************************
function checkCurrency(val){
	if(patternValidate(val, 'currency2')){
		return 'English';
	}else if(patternValidate(val, 'currency2-fr') && (document.location.pathname.indexOf('-fr.html') != -1)){
		return 'French';
	}else{
		return false;
	}
}

//*********************************************************************************
// Title: 				formatCurrency
// Desc: 				outputs a proper english currency format	
// Created : 			Feb 16, 2005
// Last Modified: 		Feb 16, 2005
// Accepts:				String
// Returns:				Converted String
//*********************************************************************************
function formatCurrency(currVal){
	if(checkCurrency(currVal) == 'English'){
		currVal = replaceAll(replaceAll(replaceAll(currVal, ' ', ''), ',', ''), '$', '');
	}else if(checkCurrency(currVal) == 'French'){
		currVal = replaceAll(replaceAll(replaceAll(currVal, ' ', ''), ',', '.'), '$', '');
	}
	if(currVal.length > 0){
		if (currVal.indexOf('.') != -1){
			var valArr = currVal.split('.');
			if (valArr[1].length > 2){
				valArr[1] = valArr[1].substr(0, 2);
			}else{
				while(valArr[1].length < 2){
					valArr[1] += '0';
				}
			}
			currVal = valArr[0] + '.' + valArr[1];
		}else{
			currVal = currVal + '.00'
		}
	}
	return currVal;
}



//*********************************************************************************
// Title: 				formatCurrencyWholeNumber
// Desc: 				outputs a proper english currency format as a whole number
//                           sample format 1,234,567
// Created : 			Feb 17, 2005
// Last Modified: 		Feb 17, 2005
// Accepts:				String
// Returns:				Converted String
//*********************************************************************************
 function formatCurrencyWholeNumber(currVal){
	
	if(currVal.length > 3){
	 var totalLength=currVal.length;
	 var originalString =currVal;
	 var formatString ="";
	 var startPoint;

	 while(originalString.length > 3)
	 {
		startPoint=originalString.length-3;
		formatString ="," + originalString.substr(startPoint) + formatString;
		originalString = originalString.substr(0, startPoint);
	 }
	  
	  if(originalString.toString() !="")
	  {
		  formatString = originalString + formatString;
	  }
	  
	 }
	 else
	 {
		  formatString= currVal;
	 }	 	 
	return formatString;
}


//*********************************************************************************
// Title: 				formatCurrencyFr
// Desc: 				outputs a proper french currency format	
// Created : 			Feb 16, 2005
// Last Modified: 		Feb 16, 2005
// Accepts:				String
// Returns:				Converted String
//*********************************************************************************
function formatCurrencyFr(currVal){
	if(checkCurrency(currVal) == 'English'){
		currVal = replaceAll(replaceAll(replaceAll(currVal, ' ', ''), ',', ''), '$', '');
	}else if(checkCurrency(currVal) == 'French'){
		currVal = replaceAll(replaceAll(replaceAll(currVal, ' ', ''), ',', '.'), '$', '');
	}
	if(currVal.length > 0){
		if (currVal.indexOf('.') != -1){
			var valArr = currVal.split('.');
			if (valArr[1].length > 2){
				valArr[1] = valArr[1].substr(0, 2);
			}else{
				while(valArr[1].length < 2){
					valArr[1] += '0';
				}
			}
			currVal = valArr[0] + ',' + valArr[1];
		}else{
			currVal = currVal + ',00'
		}
	}
	return currVal;
}


//*********************************************************************************
// Title: 				formatCurrencyFrWholeNumber
// Desc: 				outputs a proper french currency format	as a whole number
//                           sample format 1 234 567
// Created : 			Feb 17, 2005
// Last Modified: 		Feb 17, 2005
// Accepts:				String
// Returns:				Converted String
//*********************************************************************************
function formatCurrencyFrWholeNumber(currVal){
	
	if(currVal.length > 3){
	 var totalLength=currVal.length;
	 var originalString =currVal;
	 var formatString ="";
	 var startPoint;

	 while(originalString.length > 3)
	 {
		startPoint=originalString.length-3;
		formatString =" " + originalString.substr(startPoint) + formatString;
		originalString = originalString.substr(0, startPoint);
	 }
	  
	  if(originalString.toString() !="")
	  {
		  formatString = originalString + formatString;
	  }
	  
	 }
	 else
	 {
		  formatString= currVal;
	 }	 	 
	return formatString;
}


//*********************************************************************************
// Title: 				remove Currency Formating
// Desc: 				removes currency formating characters and returns an float
// Created : 			Feb 16, 2005
// Last Modified: 		Feb 16, 2005
// Accepts:				String
// Returns:				Converted String
//*********************************************************************************
function removeCurrencyFormatting(currVal){
	if(checkCurrency(currVal) == 'English'){
		currVal = replaceAll(replaceAll(replaceAll(currVal, ' ', ''), ',', ''), '$', '');
	}else if(checkCurrency(currVal) == 'French'){
		currVal = replaceAll(replaceAll(replaceAll(currVal, ' ', ''), ',', '.'), '$', '');
	}else{
		return currVal;
	}
	if(currVal.length > 0){
		if (currVal.indexOf('.') != -1){
			var valArr = currVal.split('.');
			if (valArr[1].length > 2){
				valArr[1] = valArr[1].substr(0, 2);
			}else{
				while(valArr[1].length < 2){
					valArr[1] += '0';
				}
			}
			currVal = valArr[0] + '.' + valArr[1];
		}else{
			currVal = currVal + '.00'
		}
	}
	return currVal;
}