Wx (Weather Group) Drupal Portal

Technologies Used

(Link: http://wx.uconn.edu/)

  • PHP, JS, HTML, CSS + MySQL Database
    • Built using Drupal v7
    • 3rd Party Drupal Modules


Portal Access

Individual must have a NetID, in order to access any parts of the portal. Upon authentication, the individual must be one of four roles (ordered as most access to least access—i.e. least restrictive to most restrictive)—

  • Administrator (12 Members)
  • OEM_Admin (5 Members)
  • Weather_Group (20 Members)
  • Weather_Viewer (6 Members)


Portal Content

At the Heart of the Portal: Unified Weather Outlook

The home page of the Weather portal boasts weather of UConn Storrs, UConn Health and all UConn regional campuses: Storrs, Avery Point, Farmington, Hartford, Law School, Stamford, & Waterbury.


In the middle of the home/landing page, we are displaying a Satellite / Radar — however, the source Stormia.io seems to have shutdown its operations.


At the bottom of the home/landing page, we are displaying detailed forecast—for each of the 7 locations:


Weather Sources

We source weather information from 3 different sources:

  1.  Weather.gov
  2.  Weather Underground
  3.  Accu Weather


Source #2 is no longer operational (maybe due to changes on Weather Underground's end?) and #3 was not implemented; therefore, the following is w/respect to just the first source. 


Method

The way we are accomplishing this, is using PHP Client URL Library (cURL) to fetch 7 different webpages from Weather.gov. I wrote a simple function that takes in a URL and then returns the fetched data—as shown below:

Fetch Weather Method
function fetch_weather($url) {
  $ch = curl_init();
  $timeout = 5;
  curl_setopt($ch, CURLOPT_URL, $url);
  curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
  curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $timeout);
  curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows NT 6.2; WOW64; rv:17.0) Gecko/20100101 Firefox/17.0');
  curl_setopt($ch, CURLOPT_REFERER, 'https://forecast.weather.gov');
  curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
  $data = curl_exec($ch);
  curl_close($ch);

  return $data;
}


There are 7 distinct URLs (each URL has been pre-set to a specific campus), as shown in the table below:

The data returned by the method is then parsed and crafted; this is what yields the top and the bottom part of the page: weather at a glance, and the detailed weather sections respectively.

The middle part—the satellite/radar, is a simple iFrame embed.

The Sidebar

We have 3 blocks on the sidebar:

BlockDescription

  •  Latest UConn Alert
    • Drupal's Feed Aggregator (one of the web services)—that fetches the latest Atom/XML feed from UConn Alert Site, 
    • The feed has 15 minutes of update interval
    • Displays maximum of 1 item (most recent alert triggered from Everbridge)
    • Categorized as UConnALERT news item

  • NWS Public Alerts
    • Similar to Latest UConn Alert, using Feed Aggregator that fetches the latest Atom/XML feed from NWS
    • The feed has 15 minutes of update interval
    • Displays maximum of 10 most recent alerts
    • Categorized as UConnALERT news item



Other Content

The rest of the portal serves up static content created by the OEM Team. This content is broken down into following categories, as indicated by the top navigation menu

 

ContentType
Wx ProtocolStatic / PDF
Wx Conference Call AgendaStatic / PDF
Member Contact InfoStatic / PDF
UConn HealthBlank / Under Construction?
Forecast GraphicsStatic / Image
ResourcesMix of Static / (External) Links
Events

External Links to:

  • University Calendar
  • Registrar Calendar
  • Athletics Calendar
  • Jorgensen Calendar


Everbridge

External Links to Everbridge

  • NetID / Password Login
  • Break-Glass Login