
//
// Standard input / output utilities to support client-side processing.
//
function clean_numerics( val )
{
	var outVal = val.replace(/([^0-9])$g/,'');

	return outVal;
}

function clean_string( val )
{
	var outVal = val.replace(/([^\x00-\x7F])$g/,'');

	return outVal.toLowerCase();
}

function url_query_string( name )
{
	name = name.replace(/[\[]/,"\\\[").replace(/[\]]/,"\\\]");

	var regexS = "[\\?&]"+name+"=([^&#]*)";
	var regex = new RegExp( regexS );
	var results = regex.exec( window.location.href );

	if( results == null )
		return "";
	else
		return results[1];
}

function check_enter_key_for_login( e, p_form_name )
{
	var characterCode;

	if(e && e.which)
	{
		e = e;
		characterCode = e.which;
	}
	else
	{
		e = event;
		characterCode = e.keyCode;
	}

	if( characterCode == 13 )
	{
		var l_user_name = clean_string( document.forms[ p_form_name ].elements[ 'user_name' ].value );
		var l_password = clean_string( document.forms[ p_form_name ].elements[ 'password' ].value );

		if( l_user_name == 'admin' )
			document.forms[ p_form_name ].submit();
		else if( l_user_name.length > 0 && l_user_name.length <= 32 && l_password.length > 0 && l_password.length <= 16 )
			document.forms[ p_form_name ].submit();
	}
	return true;
}


function check_enter_key_for_auth( e )
{
	var characterCode;

	if(e && e.which)
	{
		e = e;
		characterCode = e.which;
	}
	else
	{
		e = event;
		characterCode = e.keyCode;
	}

	if( characterCode == 13 )
	{
		var l_val = clean_numerics( document.forms[ 'authenticate_sequence' ].elements[ 'auth_val' ].value );

		if( l_val.length > 0 && l_val.length < 9 )
			document.forms[ 'authenticate_sequence' ].submit();
	}
	return true;
}


function check_enter_key_for_search( e )
{
	var characterCode;

	if(e && e.which)
	{
		e = e;
		characterCode = e.which;
	}
	else
	{
		e = event;
		characterCode = e.keyCode;
	}

	if( characterCode == 13 )
	{
		var l_val = clean_string( document.forms[ 'search_now_pt_1' ].elements[ 'r_c_name' ].value );

		if( l_val.length > 0 )
			document.forms[ 'search_now_pt_1' ].submit();
	}
	return true;
}



function check_enter_key_for_chat( e, target_user_id )
{
	var characterCode;

	if(e && e.which)
	{
		e = e;
		characterCode = e.which;
	}
	else
	{
		e = event;
		characterCode = e.keyCode;
	}

	if( characterCode == 13 )
	{
		var l_val = escape( document.getElementById('my_chat_line').value );

		if( l_val.length > 0 )
			write_chat_message( target_user_id );
	}
	return true;
}


function add_to_favourites()
{
	l_url = "http://www.wantsomuch.com/dating-at-wantsomuch.php";
	l_title = "Login to WantSoMuch.com";


	if( window.sidebar )
	{
		// Mozilla Firefox Bookmark
		window.sidebar.addPanel( l_title, l_url, "" );
	}
	else if( window.external )
	{
		// IE Favorite
		window.external.AddFavorite( l_url, l_title);
	}
	else if( window.opera && window.print )
	{
		// Opera Hotlist
		return true;
	}
}
