var cleanedUpName;

function open_chat(wcLogin) {
	screenname = wcLogin.username.value;
	companyID  = wcLogin.companyID.value;

	validName = false;

	if (screenname != '' && screenname != 'Screen Name...') {
		validName = true;
	}

	if (validName) {
		var cleanedUpName = cleanupUsername(screenname)
		wcLogin.username.value = cleanedUpName;

		if(cleanedUpName == '') {
			alert("Please enter a valid screen name. Screen names may only contain alphanumeric characters.");
		}
		else {
			var winName;

			winName = "Userplane_Chatlite_126ae7ab97ab238379c18b01f635b904";

			var url = 'http://www.userplane.com/directory/index.cfm?action=chat.guestLogin&username=' + screenname + '&dc=126ae7ab97ab238379c18b01f635b904';
			var features;

			// Webchat
			if (wcLogin.app_str.value == 'ch') {
				features  = 'width=738,';
				features += 'height=585,';
			}
			// Webmessenger
			else {
				winName  += "_ul";
				url      += "&app=ul";
				features  = 'width=220,';
				features += 'height=700,';
			}
			
			features += 'toolbar=0,';
			features += 'directories=0,';
			features += 'menubar=0,';
			features += 'status=0,';
			features += 'location=0,';
			features += 'scrollbars=0,';
			features += 'resizable=1';
			
			myWin = window.open(url, winName, features);
			return false;
		}
	}
	else {
		alert("Please enter a screen name.");
	}
	return false;
}

function replaceAlpha(strIn) {
	var strOut = "";
	for(var i = 0; i < strIn.length; i++){
		var cChar = strIn.charAt(i);
		if( ( cChar >= 'A' && cChar <= 'Z' )
			|| ( cChar >= 'a' && cChar <= 'z' )
			|| ( cChar >= '0' && cChar <= '9' ) ) {
			strOut += cChar;
		}
		else {
			strOut += "_";
		}
	}
	return strOut;
}

function cleanupUsername(strIn) {
	var strOut = "";
	for(var i = 0; i < strIn.length; i++) {
		var cChar = strIn.charAt(i);
		if((cChar >= 'A' && cChar <= 'Z')
			|| (cChar >= 'a' && cChar <= 'z')
			|| (cChar >= '0' && cChar <= '9')
			|| cChar == ' '
			|| cChar == '@'
			|| cChar == '_'
			|| cChar == '-'
			|| cChar == '.') {
			strOut += cChar;
		}
	}
	return strOut;
}