22c22 < var isCollapsed = false; --- > var isCollapsed = true; 32c32,33 < var apple_parser = new AppleParser ("http://www.apple.com/widgets/weatherParser.js"); --- > //var apple_parser = new AppleParser ("http://www.apple.com/widgets/weatherParser.js"); > var apple_parser = new AppleParser ("parser.js"); 251a253,263 > > // we need to remember at what time the results were last updated > if (object.time != null && object.forecast[0] != null && object.forecast[0].date != null) > { > lastResults[0].hour = object.time.hour; > lastResults[0].minute = object.time.minute; > lastResults[0].gmtdiff = object.gmtdiff; > lastResults[0].dayLightSavings = object.dayLightSavings; > lastResults[0].date = object.forecast[0].date; > } > 300a313 > updateAge (); 520a534,593 > function updateAge () > { > if (lastResults != null && > lastResults[0] != null && > lastResults[0].hour != null && > lastResults[0].minute != null && > lastResults[0].dayLightSavings != null && > lastResults[0].gmtdiff != null && > lastResults[0].date != null > ) > { > // this technique is based in part on recipe 2.11 from > // Danny Goodman's JavaScript & DHTML Cookbook > var oneMinute = 1000 * 60; > var oneHour = oneMinute * 60; > > var date = lastResults[0].date; > var first = date.indexOf('/'); > var second = date.lastIndexOf('/'); > var month = parseInt(date.substring(0, first), 10); > var day = parseInt(date.substring(first + 1, second), 10); > var year = parseInt(date.substring(second + 1), 10); > > var lastChecked = new Date(year, month - 1, day, lastResults[0].hour, lastResults[0].minute); > var now = new Date(); > > // debug code, goes to console when widget run from Dashboard > // alert('GmtDiff: ' + lastResults[0].gmtdiff + ', daylightSavingsTime: ' + lastResults[0].dayLightSavings); > > var dstAdjust = lastResults[0].gmtdiff * 60 + lastResults[0].dayLightSavings * 60; > var gmtAdjust = (now.getTimezoneOffset()*(-1) - dstAdjust) * oneMinute; > var diff = now.getTime() - lastChecked.getTime() - gmtAdjust; > > var minutesAgo = Math.ceil(diff/oneMinute); > var hoursAgo = Math.ceil(diff/oneHour); > > /* we test for negative numbers to catch system clocks that are just out of sync */ > if (minutesAgo <= 1) > { > document.getElementById('updatetime').innerText = minutesAgo + ' minute ago'; > } > else if (minutesAgo < 60) > { > document.getElementById('updatetime').innerText = minutesAgo + ' minutes ago'; > } > else if (hoursAgo == 1) > { > document.getElementById('updatetime').innerText = hoursAgo + ' hour ago'; > } > else if (hoursAgo > 1) > { > document.getElementById('updatetime').innerText = hoursAgo + ' hours ago'; > } > } > else > { > document.getElementById('updatetime').innerText = ''; > } > } > 787c860 < resizeAnimation.element.style.height = startingSize + "px"; --- > resizeAnimation.element.style.height = startingSize; 1099a1173 > document.getElementById('middle').style.height = (showLows ? 126 : 106) + "px"; 1103,1112d1176 < else if (pref == "true") < { < needsToResize = true; < isCollapsed = true; < } < < if (!isCollapsed) < { < document.getElementById('middle').style.height = (showLows ? 126 : 106) + "px"; < } 1297a1362,1363 > updateAge (); >