var splitStr, splitStr2;
var ready1=0, ready2=0;
var tempHiLo = "Outside temperature in Degrees Fahrenheit. ";


function ajaxFunction()
{
ready1 = 0;	ready2 = 0;
var xmlHttp, xmlHttp2;
try
  {  // Firefox, Opera 8.0+, Safari  
	xmlHttp=new XMLHttpRequest();
	xmlHttp2=new XMLHttpRequest();
  }
catch (e)
  {  // Internet Explorer  
  try
    {    
    xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
    xmlHttp2=new ActiveXObject("Msxml2.XMLHTTP");
    }
  catch (e)
    {    
    try
      {      
      xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
      xmlHttp2=new ActiveXObject("Microsoft.XMLHTTP");
      }
    catch (e)
      {      
      alert("Your browser does not support AJAX!");
      return false;
      }
    }
  }

  xmlHttp.onreadystatechange=function()
    {
    if(xmlHttp.readyState==4)
      {
	splitStr = xmlHttp.responseText.split(",");
//        document.myForm.tarea.value=splitStr;
	if( ready2 == 1 )
		createURL();
	else
	    ready1 = 1;
	delete xmlHttp;

      }
    else	{
//	document.myForm.tarea.value="";
	}
    }



  xmlHttp2.onreadystatechange=function()
    {
    if(xmlHttp2.readyState==4)
      {
	splitStr2 = xmlHttp2.responseText.split(",");
	if( ready1 )
		createURL();
	else
	    ready2 = 1;
	delete xmlHttp2;
      }
    }
 

  var url = "http://weather.csusb.edu/wx.asp";
  xmlHttp.open("GET",url,true);
  xmlHttp.send(null);

  var url2 = "http://weather.csusb.edu/wx2.asp";
  xmlHttp2.open("GET",url2,true);
  xmlHttp2.send(null);
  }


function createURL()	{
//	document.myForm.urldata.value = "http://weather.csusb.edu/WebWX/WXSynop.aspx?Graph=ALTTXT&amp;TMPOUT=" + splitStr[9] + "&amp;WNDSPD=" + splitStr[4] + "&amp;WNDDIR=" + splitStr[3] + "&amp;THTIME=" + splitStr[1] + "&amp;RNRATE=" + splitStr2[257];
//	var myImg = document.getElementById("WXBug");
//	myImg.src = "http://weather.csusb.edu/WebWX/WXSynop.aspx?Graph=RAWGPH&amp;TMPOUT=" + splitStr[9] + "&amp;WNDSPD=" + splitStr[4] + "&amp;WNDDIR=" + splitStr[3] + "&amp;THTIME=" + splitStr[1] + "&amp;RNRATE=" + splitStr2[257];
//	var descr = "http://weather.csusb.edu/WebWX/WXSynop.aspx?Graph=ALTTXT&amp;TMPOUT=" + splitStr[9] + "&amp;WNDSPD=" + splitStr[4] + "&amp;WNDDIR=" + splitStr[3] + "&amp;THTIME=" + splitStr[1] + "&amp;RNRATE=" + splitStr2[257];
//	alert( descr );
//	myImg.alt = "California State University, San Bernardino, California, zip code 92407. Weather observation for today at " + splitStr[1] + ".";
//	myImg.title = myImg.alt;
	ready1 = 0;
	ready2 = 0;
	var TImg = document.getElementById("TestImg");
//	TImg.src = "http://weather.csusb.edu/WebWX/WXSynop.aspx?Graph=ALTTXT&amp;TMPOUT=60.600&amp;WNDSPD=3.000&amp;WNDDIR=245.000&amp;THTIME=18:45:57&amp;RNRATE=0.000";
	var sunrise = document.getElementById("Sunrise");
	sunrise.innerHTML = splitStr2[277];
	var sunset = document.getElementById("Sunset");
	sunset.innerHTML = splitStr2[278];
	var moonrise = document.getElementById("Moonrise");
	moonrise.innerHTML = splitStr2[279];
	var moonset = document.getElementById("Moonset");
	moonset.innerHTML = splitStr2[280];
	var temperature = document.getElementById("Temp");
	var TempinC = (parseFloat(splitStr[9]).toFixed(1) - 32) / 1.8;
	temperature.innerHTML = parseFloat(splitStr[9]).toFixed(1) + " Degrees F / " + TempinC.toFixed(1) + " Degrees C<br />(Low: " + parseFloat(splitStr2[92]).toFixed(1) + " at " + splitStr2[120] + "; Hi: " + parseFloat(splitStr2[36]).toFixed(1) + " at " + splitStr2[64] + ")";
	var thermtr = document.getElementById("ThermometerImage");
	thermtr.src = "http://weather.csusb.edu/WebWX/WXSynop.aspx?Graph=THERMO&amp;TMPOUT=" + splitStr[9];
	thermtr.title = "It is " + parseFloat(splitStr[9]).toFixed(1) + " degrees fahrenheit outside.";
	thermtr.alt = thermtr.title;
	tempHiLo = "Outside temperature in Degrees Fahrenheit (Low: " + parseFloat(splitStr2[92]).toFixed(1) + " at " + splitStr2[120] + " Hi: " + parseFloat(splitStr2[36]).toFixed(1) + " at " + splitStr2[64] + ")";
	
	var dewpt = document.getElementById("Dewpt");
	var dewptC = (parseFloat(splitStr[24]).toFixed(1) - 32) / 1.8;
	dewpt.innerHTML = parseFloat(splitStr[24]).toFixed(1) + " Degrees F / " + dewptC.toFixed(1) + " Degrees C";
	var humidity = document.getElementById("Humidity");
	humidity.innerHTML = parseInt(splitStr[7]) + "%";
	var wndspeed = document.getElementById("Windspeed");
	var wsnum = parseInt(splitStr[4])
	wndspeed.innerHTML = wsnum  + " mph";

	var strgwinds = document.getElementById("StrongWinds");
	strgwinds.innerHTML = "<strong></strong>";
	var wndgust = document.getElementById("Windgust");
	wndgust.innerHTML = parseInt(splitStr2[32]) + " mph, at " + splitStr2[60] + ". ";
	wdgst = parseInt(splitStr[5]);
	if( wdgst >= 19 && wdgst <= 24 )	{
		wndgust.innerHTML = wndgust.innerHTML + " Recently gusting to " + parseInt(splitStr[5]) + "<br /><span style=\"color:#890000;\">(Preliminary Wind Advisory)</span>";
		strgwinds.innerHTML = "<strong>Preliminary Wind Advisory</strong>";
		}
	if( wdgst >= 25 && wdgst <= 31 )	{
		wndgust.innerHTML = wndgust.innerHTML + " Recently gusting to " + parseInt(splitStr[5]) + "<br /><span style=\"color:#890000;\">(High Wind Advisory)</span>";
		strgwinds.innerHTML = "<strong>High Wind Advisory</strong>";
		}
	if( wdgst >= 32 && wdgst <= 46 )	{
		wndgust.innerHTML = wndgust.innerHTML + " Recently gusting to " + parseInt(splitStr[5]) + "<br /><span style=\"color:#890000;\">(High Wind Alert)</span>";
		strgwinds.innerHTML = "<strong>High Wind Alert</strong>";
		}
	if( wdgst >= 47 && wdgst <= 54 )	{
		wndgust.innerHTML = wndgust.innerHTML + " Recently gusting to " + parseInt(splitStr[5]) + "<br /><span style=\"color:#890000;\">(High Wind Warning)</span>";
		strgwinds.innerHTML = "<strong>High Wind Warning</strong>";
		}
	var wnddirection = document.getElementById("Winddirection");
	wnddirection.innerHTML = translateWindDirection(splitStr[3]) + " (" + parseInt(splitStr[3]) + " Degrees" + WindEvent( splitStr[3] ) + ")";
	
	var Compass = document.getElementById("CompassImage");
	Compass.src = "http://weather.csusb.edu/WebWX/WXSynop.aspx?Graph=COMPSS&amp;WNDDIR=" + splitStr[3];
	if( wsnum > 0 )
		Compass.title = "Wind is out of the " + translateWindDirection(splitStr[3]) + " (" + parseInt(splitStr[3]) + " degrees) at " + wsnum + " miles per hour.";
	else
		Compass.title = "Wind is calm.  It was previously blowing from the " + translateWindDirection(splitStr[3]);
	Compass.alt = Compass.title;

	var wndImg = document.getElementById("WindImage");
	
	wndImg.alt = "";
	wndImg.title = "";
	if( parseInt(splitStr[5]) > 18 )	{
		if( parseInt(splitStr[3]) > 300 || parseInt(splitStr[3]) < 70 )	{
			wndImg.src = "http://weather.csusb.edu/WebWX/OffShore.jpg";
			wndImg.title = "Off-Shore wind.  Probably Santa Ana Winds.";
			}
		else	{
			wndImg.src = "http://weather.csusb.edu/WebWX/OnShore.jpg";
			wndImg.title = "On-shore, Ocean Breeze";
			}
		wndImg.alt = wndImg.title;
		}
	else	{
		if( wndImg.src != "http://weather.csusb.edu/images/Blank.jpg" )
			wndImg.src = "http://weather.csusb.edu/images/Blank.jpg";
		}

	var pressure = document.getElementById("Pressure");
	pressure.innerHTML = parseFloat(splitStr[10]).toFixed(2) + " Inches Hg";
	var radiation = document.getElementById("Radiation");
	if( parseInt(splitStr[20]) > 0 )
		radiation.innerHTML = parseInt(splitStr[20]) + " Watts per Square Meter";
	else
		radiation.innerHTML = "None";
	var uv = document.getElementById("UVIndex");
	uv.innerHTML = parseInt(splitStr[19]);
	var rnrate = document.getElementById("Rainrate");
	var rnspd = parseFloat(splitStr2[257]);
	var rnImg = document.getElementById("RainImage");
	var raing = document.getElementById("RainGauge");
	raing.innerHTML = "<strong></strong>";

	if( rnspd > 0 )	{
		rnrate.innerHTML = parseFloat(rnspd.toFixed(2)) + " Inches per Hour";
		if( rnspd > 0 && rnspd < 0.101 )	{
			raing.innerHTML = "<strong>Drizzling</strong>";
			rnImg.src = "images/Drizzle.jpg";
			rnImg.alt = "It is drizzling outside";
			rnImg.title = rnImg.alt;
			}
		if( rnspd >0.100 && rnspd < 0.50 )	{
			raing.innerHTML = "<strong>Raining</strong>";
			rnImg.src = "images/Rain.jpg";
			rnImg.alt = "It is raining outside";
			rnImg.title = rnImg.alt;
			}
		if( rnspd > 0.499 )	{
			raing.innerHTML = "<strong>Pouring</strong>";
			rnImg.src = "images/Downpour.jpg";
			rnImg.alt = "It is pouring outside";
			rnImg.title = rnImg.alt;
			}
		}
	else	{
		rnrate.innerHTML = "Not currently raining";
		rnImg.src = "images/Blank.jpg";
		rnImg.alt = "It is not currently raining";
		rnImg.title = rnImg.alt;
		}
	var rntoday = document.getElementById("Raintoday");
	if( parseFloat(splitStr2[254]) > 0 )
		rntoday.innerHTML = parseFloat(splitStr2[254]).toFixed(2) + " Inches";
	else
		rntoday.innerHTML = "None";
	var rntotal = document.getElementById("Raintotal");
	rntotal.innerHTML = parseFloat(splitStr[11]).toFixed(2) + " Inches";
	var dttime = document.getElementById("dataTime");
	dttime.innerHTML = CalcDate(splitStr[0]) + " &nbsp; " + splitStr[1];
	}


function translateWindDirection( WindDir )	{
	var wdir = parseInt( WindDir );
	if( wdir > 348 || wdir <= 11 )	return "North";
	if( wdir > 11  && wdir <= 33 )  return "North Northeast";
	if( wdir > 33  && wdir <= 55 )	return "Northeast";
	if( wdir > 55  && wdir <  78 )	return "East Northeast";
	if( wdir >= 78 && wdir <= 101 )	return "East";
	if( wdir > 101 && wdir <= 123 )	return "East Southeast";
	if( wdir > 123 && wdir <= 145 )	return "Southeast";
	if( wdir > 145 && wdir < 168 )	return "South Southeast";
	if( wdir >= 168 && wdir <= 191 ) return "South";
	if( wdir > 191 && wdir <= 213 )	return "South Southwest";
	if( wdir > 213 && wdir <= 235 )	return "Southwest";
	if( wdir > 235 && wdir < 258 )	return "West Southwest";
	if( wdir >= 258 && wdir <= 281 ) return "West";
	if( wdir > 281 && wdir <= 303 ) return "West Northwest";
	if( wdir > 303 && wdir <= 325 )	return "Northwest";
	if( wdir > 325 && wdir <= 348 )	return "North Northwest";

	return "";
	}

function WindEvent( WindDir )	{
	var wdir = parseInt( WindDir );
	if( wdir > 300 || wdir < 70 )
		return ",<br />Most likely a Santa Ana Wind";
	return "";
	}
	
	
function updateCharts()	{
	var tmpChart = document.getElementById("TempChart");
	var TodaysDate = getNowDate();
	var randomnumber=Math.floor(Math.random()*101);
	
	tmpChart.src = "http://weather.csusb.edu/WebWX/DynImage.aspx?Graph=WXTEMP&Randm=" + randomnumber + "&BDate=" + TodaysDate + "&EDate=" + TodaysDate;
	tmpChart.title = tempHiLo + " For detailed information on this graph, go to the TODAY tab at the top of this page.";
	tmpChart.alt = tmpChart.title;

	tmpChart = document.getElementById("WindChart");
	tmpChart.src = "http://weather.csusb.edu/WebWX/DynImage.aspx?Graph=WXWIND&Randm=" + randomnumber + "&BDate=" + TodaysDate + "&EDate=" + TodaysDate;

	var junkChart = document.getElementById("HumidChart");
	junkChart.src = "http://weather.csusb.edu/WebWX/DynImage.aspx?Graph=WXHUMD&Randm=" + randomnumber + "&BDate=" + TodaysDate + "&EDate=" + TodaysDate;

	tmpChart = document.getElementById("RainChart");
	tmpChart.src = "http://weather.csusb.edu/WebWX/DynImage.aspx?Graph=WXRNDY&Randm=" + randomnumber + "&BDate=" + TodaysDate + "&EDate=" + TodaysDate;

	tmpChart = document.getElementById("RainRateChart");
	tmpChart.src = "http://weather.csusb.edu/WebWX/DynImage.aspx?Graph=WXRNRT&Randm=" + randomnumber + "&BDate=" + TodaysDate + "&EDate=" + TodaysDate;

	tmpChart = document.getElementById("WindSpeedChart");
	tmpChart.src = "http://weather.csusb.edu/WebWX/DynImage.aspx?Graph=WXWNDS&Randm=" + randomnumber + "&BDate=" + TodaysDate + "&EDate=" + TodaysDate;
	}	
	
	
function getNowDate()	{
	var currentTime = new Date();
	var month = currentTime.getMonth() + 1;
	var day = currentTime.getDate();
	var year = currentTime.getFullYear();

	return month + "/" + day + "/" + year;
	}
