(function(jQuery){jQuery.extend({simpleWeather:function(options){var options=jQuery.extend({zipcode:'76309',location:'',unit:'f',success:function(weather){},error:function(message){}},options);var weatherUrl='http://query.yahooapis.com/v1/public/yql?format=json&diagnostics=true&callback=?&diagnostics=true&env=store%3A%2F%2Fdatatables.org%2Falltableswithkeys&q=';if(options.location!='')
weatherUrl+='select * from weather.forecast where location in (select id from weather.search where query="'+options.location+'") and u="'+options.unit+'"';else if(options.zipcode!='')
weatherUrl+='select * from weather.forecast where location in ("'+options.zipcode+'") and u="'+options.unit+'"';else{options.error("No location given.");return false;}
jQuery.getJSON(weatherUrl,function(data){if(data!=null&&data.query.results!=null){jQuery.each(data.query.results,function(i,result){if(result.constructor.toString().indexOf("Array")!=-1)
result=result[0];currentDate=new Date();sunRise=new Date(currentDate.toDateString()+' '+result.astronomy.sunrise);sunSet=new Date(currentDate.toDateString()+' '+result.astronomy.sunset);if(currentDate>sunRise&&currentDate<sunSet)
timeOfDay='d';else
timeOfDay='n';wind=result.wind.direction;if(wind>338)
windDirection="N";else if(wind>=0&&wind<24)
windDirection="N";else if(wind>=24&&wind<69)
windDirection="NE";else if(wind>=69&&wind<114)
windDirection="E";else if(wind>=114&&wind<186)
windDirection="SE";else if(wind>=186&&wind<204)
windDirection="S";else if(wind>=204&&wind<249)
windDirection="SW";else if(wind>=249&&wind<294)
windDirection="W";else if(wind>=294&&wind<338)
windDirection="NW";rising=result.atmosphere.rising;if(rising==0)
pressureRising="steady";else if(rising<=0)
pressureRising="falling";else if(rising>=0)
pressureRising="rising";var weather={title:result.item.title,temp:result.item.condition.temp,units:{temp:result.units.temperature,distance:result.units.distance,pressure:result.units.pressure,speed:result.units.speed},currently:result.item.condition.text,high:result.item.forecast[0].high,low:result.item.forecast[0].low,forecast:result.item.forecast[0].text,wind:{chill:result.wind.chill,direction:windDirection,speed:result.wind.speed},humidity:result.atmosphere.humidity,pressure:result.atmosphere.pressure,rising:pressureRising,visibility:result.atmosphere.visibility,sunrise:result.astronomy.sunrise,sunset:result.astronomy.sunset,description:result.item.description,thumbnail:"http://l.yimg.com/a/i/us/nws/weather/gr/"+result.item.condition.code+timeOfDay+"s.png",image:result.item.condition.code+timeOfDay+".png",tomorrow:{high:result.item.forecast[1].high,low:result.item.forecast[1].low,forecast:result.item.forecast[1].text,date:result.item.forecast[1].date,day:result.item.forecast[1].day,image:result.item.forecast[1].code+"d.png"},city:result.location.city,country:result.location.country,region:result.location.region,updated:result.item.pubDate,link:result.item.link};options.success(weather);});}else{if(data.query.results==null)
options.error("Invalid location given.");else
options.error("Weather could not be displayed. Try again.");}});return this;}});})(jQuery);
