var userState;

function checkClient()
{
	var bodyTag = document.getElementsByTagName( 'body' );

	if( navigator.appVersion.indexOf( 'Win' )!= -1 )
	{
		bodyTag[0].className = 'os_win';
	}
	else if( navigator.appVersion.indexOf( 'Mac' )!= -1 )
	{
		bodyTag[0].className = 'os_mac';
	}
	else if( navigator.appVersion.indexOf( 'X11' )!= -1 )
	{
		bodyTag[0].className = 'os_unix';
	}
	else if( navigator.appVersion.indexOf( 'Linux' )!= -1 )
	{
		bodyTag[0].className = 'os_linux';
	}

}

function loadFrame()
{
	if( document.cookie.indexOf( 'SittercitySession' ) >= 0 )
	{
		sendAjaxRequest( 'cms_header_info', 'from=' + escape( document.location.href ), 'loadFrameResult' );
	}
	else
	{
		document.getElementById( 'masthead_container' ).className = '';
		document.getElementById( 'footer_container' ).className = '';
	}
}

function loadFrameResult( result )
{
	if( result )
	{
		var processed = eval( '(' + unescape( result ) + ')' );
		
		document.getElementById( 'masthead_container' ).innerHTML = processed[ 'header' ];
		document.getElementById( 'footer_container' ).innerHTML = processed[ 'footer' ];
		userState = processed[ 'state' ];
	}
	
	document.getElementById( 'masthead_container' ).className = '';
	document.getElementById( 'footer_container' ).className = '';
}

function imgLoad()
{
	var o_scanalert_img = document.images[ "scanalert_img" ];
    if( o_scanalert_img )
    {
        document.images[ "scanalert_img" ].src = "http://images.scanalert.com/meter/www.sittercity.com/13.gif";
    }
	
	if( document.images )
	{
		loginBox = new Image( 275, 218 );
		loginBox.src= "/templates/sittercity_homepage/images/masthead/login_box.gif"; 
	}
}

function displayLoginBox()
{
	var loginBox = document.getElementById( 'login' );
	
	if( loginBox.className != 'visible' )
	{
		loginBox.className = 'visible';
		setTimeout( "document.getElementById( 'sign_in_username' ).focus();", 200 );
	}
	else
	{
		loginBox.className = 'hidden';
		document.getElementById( 'login_button' ).focus();
	}
}

function createAjaxObject() 
{
	var ajax_object;

	try
	{	// Try the standard way
		ajax_object = new XMLHttpRequest();

	} catch( trymicrosoft )
	{	// Standard way is a no go!
		try
		{	// Try Microsoft variant 1
			ajax_object = new ActiveXObject( "Msxm12.XMLHTTP" );

		} catch( othermicrosoft )
		{	// Still failure!
			try
			{	// Try Microsoft variant 2
				ajax_object = new ActiveXObject( "Microsoft.XMLHTTP" );

			} catch( failed )
			{	// Well we're just incompetent now, aren't we
				ajax_object = null;

			}
		}
	}

	if( ajax_object == null )
	{
		alert( "Error creating request object!" );
	}

	return ajax_object;
}

function sendAjaxRequestSSL( ajax_include, parameters, send_result_to ) 
{
	var ajax = createAjaxObject();
	var resistCache = new Date().getTime();
	
    url = 'http://www.sittercity.com/ajax_dispatcher_ssl.html?ajax_include=' + ajax_include + '&' + parameters + '&send_result_to=' + send_result_to + '&dummy=' + resistCache;
	ajax.open( 'get', url, true );
    ajax.onreadystatechange = function () { handleAjaxResponse( ajax ); };
    ajax.send( null );
}

function sendAjaxRequest( ajax_include, parameters, send_result_to ) 
{
	var ajax = createAjaxObject();
	var resistCache = new Date().getTime();
	
    url = 'http://www.sittercity.com/ajax_dispatcher.html?ajax_include=' + ajax_include + '&' + parameters + '&send_result_to=' + send_result_to + '&dummy=' + resistCache;
	ajax.open( 'get', url, true );
    ajax.onreadystatechange = function () { handleAjaxResponse( ajax ); };
    ajax.send( null );
}

function handleAjaxResponse( ajax )
{
    if( ajax.readyState == 4 )
    {
		if( ajax.status == 200 )
		{
			var response = ajax.responseText;
			var update = new Array();
			
			if( response.indexOf( '|' ) != -1 )
			{
				update = response.split( '|' );
				function_return = update[0] + '( "' + escape( update[1] ) +  '" )';
				eval( function_return );
			}
		}
		else
		{
			alert( "Error: Requested URL can not be accessed." );
		}
    }
}
