var go_url="http://www.eeviewpoint.com/energy.jsp";var co2lev = new CO2Levels();var cacheHash = new Object();var CacheDecider=Class.create();CacheDecider.prototype = {    initialize: function(rng){        this.secondsToCache=rng;        this.lastFetched=new Date();    },    keepData: function(){        var now = new Date();        var secondsDif = parseInt((now.getTime() - this.lastFetched.getTime()) / 1000);        if (secondsDif < this.secondsToCache)  { return true;}        //the data in the cache will be refreshed or re-fetched,        //so change the lastFetched value to the current time        this.lastFetched=new Date();        return false;    }}//http://www.parkerriver.com/energy.jsp//http://localhost:8080/parkerriver/energy.jsp//http://www.eeviewpoint.com/energy.jspwindow.onload=function(){    generatePrice("oil","oilprice");    generatePrice("fuel","fuelprice");    generatePrice("propane",            "propaneprice");    $("refresh_oil").onclick=function(){ generatePrice("oil","oilprice"); }    $("refresh_fuel").onclick=function(){ generatePrice("fuel","fuelprice"); }    $("refresh_propane").onclick=function(){ generatePrice("propane",            "propaneprice"); }    $("co2_select").onchange=function(){        $("co2ppm").                innerHTML= co2lev.getYear($F("co2_select")); }};function generatePrice(energyType, elementID){    var cacher = cacheHash[energyType];    if(! cacher) {        cacher = new  CacheDecider(60*60*24);    //60*60*24        cacheHash[energyType]=cacher;        getEnergyPrice(energyType, elementID);        return;    }    if(! cacher.keepData()) { getEnergyPrice(energyType, elementID);}}function getEnergyPrice(energyType, elementID){    new Ajax.Request(go_url, {method: "get",        parameters: "priceTyp="+energyType,        onLoading:function(){ $(elementID).innerHTML=                              "waiting...";},        onComplete:function(request){            if(request.status != 200) {                $(elementID).innerHTML="Unavailable."}   else {                $(elementID).innerHTML=                request.responseText;}        }});}