function SetImageSource(image, url)
{
	if(image != null && image != undefined && image != "")
	{
		if(image.src != undefined)
		{
			image.src = url;
		}
		else if(typeof(image).toLowerCase() == "string")
		{
			var img = document.images[image];
			if(img != null && img != undefined && img.src != undefined)
			{
				img.src = url;
			}
		}
	}
}
String.prototype.trim = function TrimString(toTrim)
{
	if(toTrim != undefined && toTrim != "")
	{
		var temp = "^" + toTrim + "*|" + toTrim + "*$";
		return this.replace(new RegExp(temp, "g"), "");
	}
	else
	{
		return this.replace(/^\s*|\s*$/g, "");
	}
}
function KeyPressFilter(sender, validPattern, singlePattern, doublePattern)
{
	if(sender == undefined || sender == null || validPattern == undefined || validPattern == "")
	{
		return;
	}
	window.event.returnValue = true;
	var charPressed = String.fromCharCode(window.event.keyCode);
	if(validPattern.indexOf(charPressed) == -1)
	{
		window.event.returnValue = false;
		return;
	}
	else
	{
		var charCount = 0;
		var curPos = -1;
		do
		{
			curPos = sender.value.indexOf(charPressed, curPos + 1);
			if(curPos != -1)
			{			
				charCount++;
			}
		}while(curPos != -1);
		if(singlePattern != undefined && singlePattern != "")
		{
			if((charCount > 0 && singlePattern.indexOf(charPressed) != -1))
			{
				window.event.returnValue = false;
				return;
			}	
		}
		if(doublePattern != undefined && doublePattern != "")
		{
			if(charCount > 1 && doublePattern.indexOf(charPressed) != -1)
			{
				window.event.returnValue = false;
				return;
			}
		}
	}
}
function FormatSinglePhoneNumber(sender)
{
	if(sender == undefined || sender == null)
	{
		return;
	}
	var unformatted = sender.value.toUpperCase().trim().trim("X").replace(/[\(|\)|\s|\-]/g, "");
	var formatted = "";
	var extension = ""
	var xIndex = unformatted.indexOf("X");
	if(xIndex != -1)
	{
		extension = unformatted.substr(xIndex + 1, unformatted.length - (xIndex + 1));
		unformatted = unformatted.slice(0, xIndex);
	}
	switch(unformatted.length)
	{
		case 7:
			formatted = unformatted.substr(0, 3) + "-" + unformatted.substr(3, 4);
			break;
		case 10:
			formatted = "(" + unformatted.substr(0, 3) + ") " + unformatted.substr(3, 3) + "-" + unformatted.substr(6, 4);
			break;
		case 11:
			formatted = "(" + unformatted.substr(1, 3) + ") " + unformatted.substr(4, 3) + "-" + unformatted.substr(7, 4);
			break;
		default:
			formatted = unformatted;
			break;
	}
	if(extension != "")
	{
		formatted += " x " + extension;
	}
	sender.value = formatted;
}
function FormatDate(sender)
{
	if(sender == undefined || sender == null)
	{
		return;
	}
	var unformatted = sender.value.trim().replace(/\//g, "");
	if(unformatted.length != 8)
	{
		return;
	}
	else
	{
		sender.value = unformatted.substr(0, 2) + "/" + unformatted.substr(2, 2) + "/" + unformatted.substr(4, 4);
	}
}
function FormatSSN(sender)
{
	if(sender == undefined || sender == null)
	{
		return;
	}
	var unformatted = sender.value.trim().replace(/\-/g, "");
	if(unformatted.length != 9)
	{
		return;
	}
	else
	{
		sender.value = unformatted.substr(0, 3) + "-" + unformatted.substr(3, 2) + "-" + unformatted.substr(5, 4);
	}	
}
function FormatDollarAmount(sender)
{	
	if(sender == undefined || sender == null)
	{
		return;
	}
	var unformatted = parseFloat(sender.value.trim().replace(/\$/g, ""));
	if(isNaN(unformatted))
	{
		return;
	}
	var minus = "";
	if(unformatted < 0)
	{
		minus = "-";
	}
	unformatted = Math.abs(unformatted);
	unformatted = parseInt((unformatted + .005) * 100);
	unformatted = unformatted / 100;
	var formatted = new String(unformatted);
	if(formatted.indexOf(".") == -1)
	{
		formatted += ".00";
	}
	else if(formatted.indexOf(".") == (formatted.length - 2))
	{
		formatted += "0";
	}
	sender.value = "$" + minus + formatted;
}