﻿var obsUrl = null;

function getObsData()
{
    obsUrl = WebRoot + "/DataService/GetObs.ashx?sid=" + ((null != station) ? id = station.id : "") + "&" + getLocationQueryString(locat) 
        + "&" + getUnitsQueryString(units);
    
    var dataReq = new httpReq(obsUrl, parseObs);
    
    dataReq.load();
}

var obsData = null;
var obsTextElements = ["MainCurrentTemp", "MainCurrentHi", "MainCurrentLo", "MainWeathervaneSpeed", 
    "MainWeathervaneWindChill", "MainWeathervaneHumidity"];
    
var obsLeftTop = {};
var obsFirstTime = true;

function parseObs(odata)
{
    obsData = odata
    
    if (null == obsData && typeof(this.getJsonObj) == "function")
        obsData = this.getJsonObj();
    
    if (null != obsData)
    {
        try
        {
            if (obsFirstTime)
            {
                obsLeftTop = captureLeftTop(obsTextElements);
                obsFirstTime = false;
            }
            var tempUnit = (units == unitType.english) ? "F" : "C";
            var windUnit = (units == unitType.english) ? "mph" : "km/h";
            plugin.content.findName("MainCurrentTemp").Text = obsData.temperature.toString() + DegSymbol + tempUnit;
            //plugin.content.findName("MainCurrentTemp").Text = "122.2" + DegSymbol + "F";
            plugin.content.findName("MainCurrentHi").Text = "Hi:" + obsData.temperatureHigh.toString() + DegSymbol;
            plugin.content.findName("MainCurrentLo").Text = "Lo:" + obsData.temperatureLow.toString() + DegSymbol;
            plugin.content.findName("MainWeathervaneSpeed").Text = obsData.windSpeed.toString();
            plugin.content.findName("WeathervaneScale").Text = windUnit;
            
            plugin.content.findName("MainCurrentIconFore").Source = getIconSrc(obsData.icon, iconType.large);
            plugin.content.findName("MainCurrentConditions").Text = obsData.desc;
            plugin.content.findName("MainWeathervaneWindChill").Text = "Feels Like: " + obsData.feelsLike + DegSymbol;
            plugin.content.findName("MainWeathervaneHumidity").Text = "Humidity: " + obsData.humidity;
            setWindDirection(obsData.windDeg);
            
            plugin.content.findName("MainCurrentTimestamp").Text = obsData.dateTime.getTimeString();
            plugin.content.findName("AlertWeatherIcon").Source = getIconSrc(obsData.icon, iconType.medium);
            
            centerText(obsTextElements, obsLeftTop);
            
            //plugin.content.findName("tStation").text = obsData.stationName;
            ///plugin.content.findName("tObTime").text = obsData.dateTime.toString();
            //plugin.content.findName("tHumidity").text = obsData.humidity.toString();
            //writeLine("update Obs UI here");
        }
        catch(error)
        {
            writeLine(error.name + ": " + error.description);
        }
    }
}