Getting started
To get started you need to enter the weather code for your location that you wish to display. To get this visit weather.yahoo.com and search for your location then view the page. The weather ID will be the last part of the URL.
For example, if you search for Manchester on the Yahoo! Weather home page, the forecast page for that city is http://weather.yahoo.com/forecast/UKXX0092.html. The location ID is UKXX0092.
You then just enter the code UKXX0092 into the module and you'll get weather information for Manchester on your DotNetNuke portal.
How the module works
The module creates a URL using the weather code for the location, this URL is then called and the response is a RSS feed containing the weather data for that location.
The module makes use of caching so that the weather feed is stored in the database thereby improving the performance of our site and stop us for getting an error message from the feed provider for excessive use.
The time the feed is cached is give by the TTL (TimeToLive) value of the RSS feed. Yahoo weather uses a value of 60 minutes.
The database additionally holds the time when we last got the feed and time when it will expire, if someone views the page within 60 minutes of the last download of the feed we will use the cached version. If however the cache has expired we will download the feed again and start caching for another 60 minutes.
Then we simply transform the RSS feed into HTML using a XSLT file that the module installs and hey presto we have a weather module.
If your DotNetNuke portal is running in medium trust mode then you may not be able to use this module since medium trust normally blocks webrequests.
Downloads
I have made the module available to download below and also the optional source code in C#. The module has been tested with DotNetNuke 4.x/5.x
Download PA install module
Download source code