Thu Nov 16 01:20:27 EET 2006 - started keeping a feature/bug backlog (todo.txt), and this changelog - fixed to work with MSIE (required correct XML namespace in HTML header for the waypoints to work) - fixed the clear button to keep the selected map type - added more info on the front page Fri Nov 17 07:25:33 EET 2006 - js: pop up tracked target info balloon only after centering on the target, so that the balloon will (hopefully) fit and will not abor the pan by doing it's own autofit Fri Nov 17 17:09:54 EET 2006 - js: when first searching a callsign, jump directly to the right location instead of going via the initial default view - js: when we get a new point for a tracked target, only pop up the info balloon and let it do the minimum required panning, instead of triggering panning myself Fri Nov 17 20:16:52 EET 2006 - change time handling heavily: do not rely on the web browser's clock being right - keep more settings when doing searches and changing time range - don't crash the js when an address search fails - removed unused code - forget waypoints and targets which are out of the time range - when changing time range, do not remove all points first, but do it incrementally - implement the "show all" button Fri Nov 17 22:33:56 EET 2006 - fixed zooming & panning to always load new visible points Thu Nov 30 8:00:01 EET 2006 - added support for objects and items: store them by their own name, and store & display the source callsign separately Fri Dec 1 17:23:34 EET 2006 - added support for symbol icons, thanks to Justin K5EM for passing on the icons! Sat Dec 9 23:12:19 EET 2006 - show "bad nickname characters" error in english - if nickname is found in position database when logging in, use it for initial view - less debug logging Sun Dec 10 00:50:59 EET 2006 - do not show -0 SSIDs - allow searching based on both name and srccall Wed Dec 13 21:40:38 EET 2006 - implemented an user interface for raw packet viewing Thu Dec 14 20:05:56 EET 2006 - collect more reference data in digipeater path table - show links to known targets for digis in raw packet list Thu Dec 14 21:38:36 EET 2006 - round speed to the nearest integer value Fri Dec 15 07:37:11 EET 2006 - show packet rate in raw packet list Wed Dec 20 22:27:10 EET 2006 - log more packet handling errors: "too fast" and "too often" Sun Dec 24 12:51:02 EET 2006 - store beacon/id packets in DB (and do not log as errors) Mon Dec 25 02:01:46 EET 2006 - added beacon packet viewing/browsing - added browsing (previous/next) to raw packet viewing Mon Dec 25 14:29:22 EET 2006 - added message storage & browsing Fri Dec 29 21:59:42 EET 2006 - log duplicate message errors in the packet errors - in case of packets arriving too often, log nothing, so that all subsequent packets will not be ignored - handle at least one point every N seconds Tue Jan 9 17:50:03 EET 2007 - moved static text pages into HTML - update the page title more often Wed Jan 10 18:04:12 EET 2007 - implemented date browsing - added a status box - made the polling more easy to both the client and the server, freeing client and server HTTP threads - sleep less Wed Jan 10 21:41:52 EET 2007 - fixed small style issues - show the selected date/time range Thu Jan 11 21:56:57 EET 2007 - show a nice error message to unsupported browsers Thu Jan 25 00:43:14 EET 2007 - implemented jumping to a QTH/QRA/Maidenhead locator, shows the box enclosed by the locator on the map Fri Feb 2 10:22:34 EET 2007 - moved the production system on a new disk storage system (EMC Clariion CX600 RAID10) to reduce disk IO capacity bottleneck problems Fri Feb 2 18:16:48 EET 2007 - added a new javascript library file, moved some stuff there - added some starting point code for APRS target activity view at low zoom levels Tue Feb 6 22:14:22 EET 2007 - implemented APRS activity summary view for low zoom levels Wed Feb 7 16:56:33 EET 2007 - fixed showing target points when the date line is visible (view bounds, coordinates wrap around) Fri Feb 16 00:33:39 EET 2007 - added columns and keys in the database to enable lookups on who heard who - implemented a station info page, which shows APRS path stats Mon Feb 19 10:57:31 EET 2007 - added favicon.ico (wheee.) Sun Feb 25 02:33:03 EET 2007 - speed database up by buffering data and inserting in slightly bigger batches (multiple rows in single INSERT) - removed some duplicate columns and indexes - store data for the tx/igate/digi statistics in a separate table for quicker reports and to ease up the load again (INSERT is fast) - store comments separately for each point, not just once per target - cache a bit of data in memory to save some SELECT queries Sat Mar 31 17:54:35 EEST 2007 - added prefix-based target callsign / object/item name browsing Mon Apr 2 22:19:32 EEST 2007 - made the login page pass request parameters, so that URLs are really bookmarkable - added google sitemaps Wed Apr 4 21:04:10 EEST 2007 - added graphs collected from the database Tue Apr 10 17:28:48 EEST 2007 - made target info pages friendlier to robots (no flushing to them, return proper 404/301 codes and last-modified info) Tue Apr 10 18:07:49 EEST 2007 - added code to remove short-lived objects with timestamps in their names (flashflood, weather alerts) earlier than others Tue Apr 10 21:17:04 EEST 2007 - attempt at a speedup for maps: store the last few minutes of map points in a memory table and do short range lookups there Thu Apr 19 09:34:58 EEST 2007 - ignore location packets with abs(latitude) <= 0.00002 or abs(longitude) <= 0.00002, used to only check for a value of zero for undefined location Sat Apr 21 11:21:07 EEST 2007 - enable zooming by mouse wheel - add start/stop tracking links in marker info window - when the contents of a visible info window change, change them right there, right now, in place - when a target is tracked with other targets visible, and the tracked target is out of the viewport (map has been panned too far), fix the database lookup to properly return new points of the out-of-viewport tracked target Sat Apr 21 13:53:10 EEST 2007 - moved cursor coordinate & locator display to a map control to save screen estate on the right Sat Apr 21 14:33:15 EEST 2007 - fixed showing stats graphs on MSIE - too long javascript rows Thu Apr 26 17:58:48 EEST 2007 - added a help popup for search boxes - fixed javascript loading to always fetch the latest scripts when they have changed on the server, to ensure the scripts being run on the browser match the other code being run on the server Thu May 3 23:12:02 EEST 2007 - implemented a Google Earth KML interface - upgraded database engine - separate web log file for robot requests Fri May 4 12:12:20 EEST 2007 - SQL performance improvements - reduce maximum time range from 3 days to 24 hours Fri May 4 19:58:32 EEST 2007 - added KML tracking of a single target - added altitude plotting in KML Sat May 5 11:53:07 EEST 2007 - initial WX packet parsing and storing in database implemented Mon May 7 22:49:23 EEST 2007 - the "number of beacon packets" graph is no longer collected, it requires a heavy database scan Wed May 9 11:27:53 EEST 2007 - made the info page work with QTH locators, return coordinates Fri May 11 23:47:05 EEST 2007 - show weather information in map pop-up balloons of WX stations - call google analytics every now and then during map tracking Tue May 15 01:26:33 EEST 2007 - added weather info in KML popups - timestamp incoming packets before buffering, so that timestamps are correct under load spikes Wed May 30 19:14:43 EEST 2007 - added Peet Bros Ultimeter weather parsing (packet & logging formats) Wed May 30 21:14:07 EEST 2007 - enabled GScaleControl() - show map scale Mon Jun 4 23:09:37 EEST 2007 - fixed start/stop tracking links: load and clear the info & date browsing areas on the right properly, and update the view links too Tue Jun 5 19:11:21 EEST 2007 - show icon and comment field on the target info page - change structure of prefix browsing pages (remove a level) - added weather statistics graphs Wed Jun 6 18:21:54 EEST 2007 - show nearby stations Sun Jun 10 10:45:01 EEST 2007 - improved database schema: do no updates, just inserts on the big location history table, keep the current positions in a small table, reduces disk IO and saves snapshot space - added the "under maintenance" page for database conversions Tue Jun 26 16:47:59 EEST 2007 - published initial weather history graphs Thu Jun 28 19:35:05 EEST 2007 - added labels for targets on map, click item to show the balloon - fixed rain inch => mm conversion - added one decimal of resolution to wind & temperature values Tue Jul 3 19:08:14 EEST 2007 - info and weather pages now show the nearest cities or towns, and nearby big cities, thanks to GeoNames - changed page character set to UTF-8 - fixed APRS path display for the latest tracking points - added info links to target info balloons - added generic info about APRS on info and login pages - show target comment on weather page - added ad link units to hopefully cover for some of the hosting costs - fixed XHTML and CSS so that MSIE renders correctly (both my own bugs, and MSIE's) Sun Jul 8 21:29:14 EEST 2007 - rewrite URLs and email addresses in comments, messages and beacons into clickable links Mon Jul 9 23:21:57 EEST 2007 - fix character set in messages and bulletins: have the database do CP850 => UTF-8 conversion Thu Jul 19 13:35:04 EEST 2007 - added an options window, settings are saved in a cookie - added support for imperial and nautical units, and Fahrenheit temps - try to guess the origin country of the visitor, and use appropriate units by default for UK and US viewers - uniform style for all links: blue, no underline - show local or UTC time, as selected in the options window - show age of position/wx report Sat Jul 28 13:59:22 EEST 2007 - fixed initial guessed map view, start from the guessed location instead of Helsinki Thu Aug 16 16:53:24 EEST 2007 - added support for AIS vessel tracking (shipplotter HTTP import) - added options to hide AIS ships, weather stations, items/objects, other APRS stations, and Internet-connected targets from the map - info view: show items/objects sourced by the station - some speed optimisation - cosmetic changes Thu Aug 16 17:59:58 EEST 2007 - use varying line color for tracks - fixed bugs in target type filtering Mon Aug 20 14:10:34 EEST 2007 - added a title on top of the date browsing menu, since a lot of people seem to miss the (existing) feature Sun Aug 26 17:31:55 EEST 2007 - added support for searching callsigns using wildcards in the info view Sun Aug 26 18:46:05 EEST 2007 - added wildcard support for searching from the map Tue Aug 28 19:10:44 EEST 2007 - fixed AIS ship icon transparency & ship names on google earth Mon Sep 3 18:23:32 EEST 2007 - some heavy javascript reworking - when leaving area activity view (zooming in from the activity boxes), make sure the boxes always disappear Thu Sep 6 21:57:04 EEST 2007 - added embedded maps - fixed target name URL encoding in a lot of places Sun Sep 9 23:16:29 EEST 2007 - added template engine - detect mobile browsers Mon Sep 10 12:30:54 EEST 2007 - added some initial templates for mobile browsers Mon Sep 10 13:37:55 EEST 2007 - fixed XHTML and added proper headers Thu Sep 13 08:26:28 EEST 2007 - fixed javascript in XHTML - shows weather graphs again Fri Sep 14 18:22:12 EEST 2007 - a bit more mobile browser support - maps work on my e61i now (until the browser crashes) Wed Sep 19 18:30:57 EEST 2007 - converted some more static text pages to templates Thu Sep 20 08:10:57 EEST 2007 - made embedded maps use guessed measurement units (imperial for US, etc) - fixed the embedded map on the embed instructions page Thu Sep 20 19:04:10 EEST 2007 - added code to remove old targets with only a single location packet received for a single point (typically corrupted packets with a bad callsign), reduced about 10k targets from the database Fri Sep 21 08:13:25 EEST 2007 - fixed bad SQL syntax in a certain search case Sat Sep 22 11:25:34 EEST 2007 - fix yet another template escaping bug in browselists Sun Sep 23 02:04:54 EEST 2007 - fixed area activity boxes (when zoomed out), they're no longer offset to the east when looking at the western hemisphere, or offset to the nort when looking south Sun Sep 23 17:55:44 EEST 2007 - implemented displaying coordinates in hours, minutes and seconds, and in the APRS format of hours and decimal minutes Mon Sep 24 07:49:37 EEST 2007 - fixed Konqueror/KHTML support - no javascript dump() available Tue Sep 25 00:01:56 EEST 2007 - added local weather status in map view - fixed weather history graphs to show temperature in selected units - fixed other bugs in weather history page Wed Sep 26 08:03:38 EEST 2007 - added dew point calculation to weather page & temperature graph - added direction string (northeast, east...) to a few places Wed Sep 26 18:05:33 EEST 2007 - implemented legend/label support in the grapher - added line labels to temperature/dew point and wind speed graphs Thu Sep 27 20:57:38 EEST 2007 - changed to a different kind of session cookie to enable HA Fri Sep 28 08:59:46 EEST 2007 - fixed aprs & DMS coordinate conversion javascript Sun Sep 30 21:37:19 EEST 2007 - added an AIS map locations page - fixed a lot of XHTML bugs Mon Oct 1 12:57:07 EEST 2007 - show vessel class in AIS ship info + balloons - added deep linking guide - tuned some links - fix deep map links with zoom levels of 18 or 19 Mon Oct 1 14:09:50 EEST 2007 - added AIS vessel class icons Wed Oct 3 16:40:43 EEST 2007 - fixed weather graph unit conversions (again) Sat Oct 6 11:17:03 EEST 2007 - started storing PHG(R) data in database Thu Oct 11 23:25:07 EEST 2007 - database schema improvements for quicker raw packet lookups Sat Oct 13 14:29:15 EEST 2007 - templates (and mobile templates) for weather pages - tuned graph X scaling - fill the whole range Sat Oct 13 23:56:05 EEST 2007 - finished implementing and added a link to station graphs - added Finnish localisation (lots of translating work today) Sun Oct 14 00:13:48 EEST 2007 - added watermarks in graphs Mon Oct 15 18:23:27 EEST 2007 - moved the web service to a new frontend server - started removing invalid atmospheric pressure values from graphs Mon Oct 15 19:24:34 EEST 2007 - fixed timezones and nearest biggest cities - geonames had changed it's export file format while i wasn't looking Fri Oct 19 00:20:58 EEST 2007 - changed most localisation string ids to hierarchic format Sat Oct 20 13:03:14 EEST 2007 - fixed charset and template issues in KML Mon Oct 22 23:25:08 EEST 2007 - fixed 文字化け problems in numerous places - validate that searched callsigns are ASCII, show proper error messages instead of letting the database query fail due to incompatible character sets Thu Oct 25 22:26:45 EEST 2007 - aprs.he.fi and gaprs.net became aprs.fi - added min/max/avg yearly temperature graphs Sat Oct 27 23:33:47 EEST 2007 - in info view for a locator, print the width and height of the box as distance Sun Oct 28 19:19:11 EET 2007 - added a new view: currently moving stations Sat Nov 10 21:27:13 EET 2007 - added partial parsing of mic-e packets which have been broken by bad igates (like aprsd with the mic-e bug) Sat Nov 10 22:05:17 EET 2007 - use the last transmitted location, instead of the last stored location, to calculate the speed of the object, which in turn will be used for dropping erroneus packets (corrupted, or packets with broken GPS fix) which are suddenly too far from the previous location Fri Nov 30 15:16:14 EET 2007 - fixed start/stop tracking links in info balloons on MSIE Sat Dec 15 22:14:04 EET 2007 - published a wiki-ish translation tool Tue Dec 25 18:09:07 EET 2007 - use the kochi-mincho-subst TTF font for text on Japanese graphs Thu Jan 3 23:09:53 EET 2008 - replaced APRS::Parser with Ham::APRS::FAP - the new version of Ham::APRS::FAP relaxes restrictions on APRS-IS packet callsigns - no more strict AX.25 validation here, so things like OH7AA-A (D-STAR DPRS) and aprsdOEZ will now get in the database Fri Jan 4 02:05:41 EET 2008 - a little fine tuning in the grapher: extend grid lines slightly to the left and below the graph Fri Jan 4 20:24:43 EET 2008 - implemented a digipeater path advisor in the info view, only shown for packets which have been transmitted on an RF path Sat Jan 5 19:30:31 EET 2008 - made grapher plot a dot, when there is a single isolated sample with no nearby samples so that a line could be drawn Sun Jan 6 12:32:31 EET 2008 - changed nickname validation code to handle UTF-8 properly (still requires ascii printable nicknames, but is UTF-8 compatible) Sun Jan 6 21:54:59 EET 2008 - escape translated strings going into javascript properly Tue Jan 8 23:26:26 EET 2008 - look up beacon packets by source callsign from a db table ordered by callsign - speeds up lookups a lot Wed Jan 9 23:14:23 EET 2008 - implemented saving a default view (see Options) Sun Jan 13 19:53:04 EET 2008 - started storing bulletins in database, and showing bulletins originated by a station on the station's info page Mon Jan 14 00:02:35 EET 2008 - fixed links to targets with a / in the name Mon Jan 14 01:10:45 EET 2008 - added colour in the message list - implemented a bulletin board page Tue Jan 15 20:48:36 EET 2008 - different label background colors for different types of targets - show bulletin group table even if it's empty Wed Jan 16 22:35:09 EET 2008 - speedup in path redrawing - only generate info balloon contents when the balloon is shown, not when placing the waypoint icon Sat Jan 19 16:03:18 EET 2008 - fixed showing icons for stations with numeric overlays (? was shown) - show overlay character & number together with the icon in some of the web pages, not the maps though (yet) - added icons: \a ARRL: ARES(A), WinLINK (W) (instead of the ARRL text), /E: eye, /F: farm vehicle (tractor) Tue Jan 22 18:11:31 EET 2008 - added rotating icons on map - show course on moving stations list - use GIF icons on XHTML pages instead of PNG (caching, MSIE doesn't do PNG alpha properly anyway) Fri Jan 25 19:47:01 EET 2008 - fixed lists of originated objects in /info/ pages - a little initial clustering and request hashing implementation - convert URLs and email addresses in comments to links in the map info balloons Fri Jan 31 23:43:02 EET 2008 - more code to live with clustering and read-only database handles Mon Feb 4 18:19:34 EET 2008 - added the new physical map type, and switched to the hierarchical map type control - the 24h and "since midnight" rain graphs are now correct - they were wrapped around in the FAP parser, fixed by FAP 1.02 Sat Feb 9 06:35:57 EET 2008 - published the new telemetry features Sat Feb 9 12:31:11 EET 2008 - some string tuning in info/weather/graphs/telemetry - translation updates needed - added wildcard searching to wx & telemetry Sat Feb 9 14:31:22 EET 2008 - show last beacon message in the info view Sun Feb 17 10:57:18 EET 2008 - improvements in the translation tool: - show some feedback when buttons are pressed - clean up extra whitespace in translations - allow editing strings with a " character (proper escaping) - use a multi-line editing textbox for all strings over 90 characters - show string-specific descriptions Fri Mar 21 21:59:25 EET 2008 - show a news ticker in the corner of the map every now and then Thu Apr 3 22:17:30 EEST 2008 - implemented bulletin group selection Mon Apr 7 21:00:08 EEST 2008 - compressed/optimized/obfuscated javascript code Sat Apr 19 10:46:25 EEST 2008 - only show WX data in the station's info balloon if it has been updated within the last 60 minutes - remove the decimal number from speed and altitude formatting Sat Apr 19 17:49:17 EEST 2008 - cleaned up CSS a bit, and split into multiple files to speed things up a bit Mon Apr 21 07:55:40 EEST 2008 - fixed the time range ("Show last:") selection Tue Apr 22 17:25:46 EEST 2008 - updated Google Earth KML interface to support units configuration (nautical/imperial/metric, celsius/fahrenheit) - fixed some UTF-8 encoding issues in the KML interface, too Wed Apr 23 21:23:02 EEST 2008 - fixed CSS for the embedded maps (enabling transparent station labels), remember to load all CSS. Sun Apr 27 10:19:17 EEST 2008 - fixed 'lastupd' logic, reducing load on the backend server - map javascript: force expiring old points when reducing timerange (when changing the 'Show last' drop-down to a smaller value) Wed May 7 19:35:20 EEST 2008 - upgraded Ham::APRS::FAP parser to one with !DAO! support, for additional resolution in uncompressed and mic-e APRS packets Thu Jun 19 21:38:40 EEST 2008 - added "Search" buttons to callsign and address search, for fast typing fix (enter pressed before last letter is released works now), and Nintendo Wii support - implemented map info panel hiding / nearly full screen view - changed map info panel layout - removed unnecessary plot and added pretty background graphics Mon Jun 23 16:25:00 EEST 2008 - work around gmaps api issue 451: address search bugging Sat Jul 12 03:10:15 EEST 2008 - new status packet views, separated status messages from beacons Sat Jul 12 17:32:33 EEST 2008 - new look for most of the pages, get rid of fieldsets Thu Jul 17 18:43:41 EEST 2008 - added static maps support Thu Aug 7 20:39:21 EEST 2008 - added 7-day map tracks for single target views Sat Aug 16 12:48:32 EEST 2008 - fixed telemetry eqns/parms/etc updating: get the telemetry station's callsign from the APRS messaging message destination callsign, instead of the AX.25 packet source callsig, allowing people to update each other's telemetry information. Sun Aug 24 10:58:12 EEST 2008 - fixed several URL encoding bugs, to make odd characters like + work properly (repeater objects) Sun Aug 24 17:02:21 EEST 2008 - possibly worked around the Firefox 3 AJAX XML parser bug by using GXml.parse() Mon Aug 25 22:48:31 EEST 2008 - really, really fixed telemetry eqns/parms updating - allow updating with other source callsigns - initial PHG circles implementation Tue Sep 2 22:30:05 EEST 2008 - added heard/gated maps for igates and digipeaters Mon Sep 29 21:12:54 EEST 2008 - added tabbed options window Tue Sep 30 19:11:08 EEST 2008 - added track color and width selection Tue Sep 30 21:24:43 EEST 2008 - added sound effects support Thu Oct 9 00:22:07 EEST 2008 - better mobile device support, again, with some more iphone testing: some xhtml fixes, and made the maps boundary checking work in the real-time map on iphone Sat Dec 20 10:00:00 EET 2008 - JSON AIS protocol support - AIS exchange with MarineTraffic Sun Dec 21 23:40:52 EET 2008 - improved iphone support, google has fixed a bunch of bugs Sun Dec 28 11:16:58 EET 2008 - PHG directivity plotting using a cardioid pattern Mon Dec 29 16:20:14 EET 2008 - delete out-of-view points from browser memory, to reduce bloat and out-of-memory situations when panning around Mon Dec 29 21:56:30 EET 2008 - implemented a fancy ruler tool for great circle distance and direction calculation and address lookup Mon Dec 29 22:52:22 EET 2008 - reverse geocoding of all popup positions - use new GMap api loading method Sat Jan 3 22:25:31 EET 2009 - add preferences selections for map info balloon contents Sat Jan 3 23:01:13 EET 2009 - properly handle PHG directivity pointing north Tue Jan 6 01:18:27 EET 2009 - add PHG to preferences selections for map info balloon contents Sun Jan 11 23:21:15 EET 2009 - added new "Technical details" page Mon Jan 12 17:40:48 EET 2009 - implemented PHGR rate presentation in the UI Sun Jan 25 22:07:10 EET 2009 - don't load the sound code while running embedded Mon Feb 2 17:32:00 EET 2009 - when receiving a PHG of 0000 or 00000, delete old PHG data from the database Mon Feb 2 22:16:23 EET 2009 - implemented APRS packet path lines Sun Feb 8 23:25:05 EET 2009 - multi-hop APRS packet path lines Sun Feb 15 21:39:06 EET 2009 - for WIDE1-1,WIDE2-1,qAX,IGATECALL path, mark igate correctly as the first receiving station - added support for backup APRS-IS server failover (no more dependency on a single upstream server) Sat Feb 21 11:16:35 EET 2009 - improved caching for better scalability over multiple frontends (significant backend changes) Sun Feb 22 22:52:08 EET 2009 - implemented APRS packet path lines when looking at a single target (by loading the referenced digis and gates on the map, too) Sun Apr 12 14:22:45 EEST 2009 - added navigation links in the bottom of the info pages - XHTML validation fixes - clear status div and window title when stopping station tracking Mon Apr 13 12:30:26 EEST 2009 - implemented calendar time range lookups for weather reports, and other improvements in the weather pages - calendar time ranges for telemetry, too - added navigation links in the bottom of most other pages, too Mon Apr 13 22:40:50 EEST 2009 - switched to smaller position marker on static maps Tue Apr 14 13:34:09 EEST 2009 - fixed bug: date selection menu would not appear when 'start tracking' clicked on live map view - show latest WX report on the /info/ page of a weather station, instead of the number of wx reports in database Tue Apr 14 19:50:17 EEST 2009 - forward more new mobile phone models to the mobile layout (especially some of those trying to hide their mobile nature) Sat May 9 12:31:27 EEST 2009 - added he_maptype parameter to embedded maps Tue Jun 16 21:49:06 EEST 2009 - added some resource capping limits for xmljs requests - tuned internal caching TTLs - added GATE as a special alias (like WIDE, RELAY) in the "first heard" algorithm - filter out bad comments which look just like an APRS-IS packet - some code rearrangement - utilize caching layer in raw packets display - added a lot of code for the new login model Sun Jun 5 20:30:48 EEST 2009 - completed the new user account system with team-based authorisation - moved code around, for smaller modules and APIs - fixed GeoIP lookups to work right when the request is proxied through another cluster node Tue Jul 7 08:02:12 EEST 2009 - upgraded production cluster to new user account system (optional for users, email based) Wed Jul 8 22:06:33 EEST 2009 - added a Makefile target to create an installation package, so that the upgrades are no longer based on revision control tools, and the timestamps of files are consistent across a cluster Wed Jul 8 23:48:45 EEST 2009 - added a simple API to get position and wx reports Sun Jul 19 18:55:32 EEST 2009 - added support for !x! in the beginning of comment text - prohibits archiving of the position in the database Sun Jul 19 23:15:53 EEST 2009 - added search button to message and raw packets browsing views - massive source code reorganisation, better tree structure - fixed a bug in callsign links of raw packets view Thu Jul 30 10:03:38 EEST 2009 - stored Mic-E message bits in the database, show the decoded message on info pages Thu Aug 13 20:15:22 EEST 2009 - added an initial FAQ page with a couple of entries - fixed a CSS vulnerability (thanks, Harry) Tue Aug 18 22:16:02 EEST 2009 - implemented a new symbol extractor, integrated in the build process, uniform symbol mapping in the whole code base - added support for overlays on secondary APRS symbol table - updated symbol table to revision H Fri Aug 21 00:05:09 EEST 2009 - new AJAX-based method to produce the date browsing menu for the map, much faster than the old one Sun Aug 23 12:56:19 EEST 2009 - mostly useless GIF animation for a progress indicator Sun Aug 23 22:51:24 EEST 2009 - xhtml fixes in web search - fixed websearch for mobile browsers - new FAQ entry describing date browsing Wed Aug 26 08:45:49 EEST 2009 - show telemetry on info page (useful and quick lookup) instead of telemetry row count (useless and slow lookup) - cache latest telemetry values Sun Aug 30 13:27:08 EEST 2009 - new web UI command and path parsing code - new AA code for per-feature access control - fixed "others sourced by" links in info pages with / in target name Sun Aug 30 20:53:20 EEST 2009 - update case of target names (eg. from upper case to lower case) when it changes in the transmission, instead of retaining the original case - updated target callsign/name label colours Sun Aug 30 23:15:00 EEST 2009 - store and display messaging capability bit Mon Aug 31 08:01:41 EEST 2009 - check for WIDE1-4 paths (n < N) - advice to replace WIDE with WIDE1-1 Sat Sep 12 11:41:23 EEST 2009 - implemented USNG (US National Grid) and MGRS. Does not work in the polar regions! - always center static map on the target's position - less links in static map zoom control, and show the current level Mon Sep 28 08:18:24 EEST 2009 - even more secure password storage, better protection for offline dictionary attacks using a computationally intensive hash algorithm (RFC 2898 PBKDF2) - sprite-based toolbar icons Thu Oct 8 08:16:43 EEST 2009 - CSRF protection in forms - show the latest status message in the info balloon of the current position of the station (purple colour) - comment is now shown in green. Mon Oct 12 17:52:14 EEST 2009 - new algorithm to detect position packets with a bad GPS fix (the "too fast" part) - fixed password recovery form Wed Oct 14 23:37:16 EEST 2009 - new multiselect interface for looking up multiple different callsigns, with wildcard support - greatly improved static maps with multiselect support Sun Oct 25 14:49:04 EET 2009 - added support and building for nginx - multiple targets tracking generally working in real-time map Mon Oct 26 08:34:20 EET 2009 - fixed websearch Wed Oct 28 19:57:23 EET 2009 - show symbols in "other SSIDs" view Thu Oct 29 07:34:10 EET 2009 - show referenced digis and igates when looking up a day in the history Sat Oct 31 13:06:10 EET 2009 - generate links for known callsigns in the APRS path shown in the info balloon Fri Nov 13 08:02:35 EET 2009 - magic_charset functionality for passing UTF-8 strings cleanly to database and detecting between CP850 and ISO-8859-1 charsets Tue Dec 1 08:06:12 EET 2009 - migrated to partitioned location history table - fix KML with multiple tracked targets Sun Dec 6 21:19:35 EET 2009 - support for targets without a known position - collect real-time statistics in cache - upgraded to Ham:APRS::FAP 1.13 - upgraded web server software - xhtml validity fixes - AJAX speedup and encoding cleanup for UTF-8 support Mon Dec 14 20:47:43 EET 2009 - show relative update time in font size/weight on "other SSIDs" list Sun Dec 20 11:37:53 EET 2009 - added rx performance histogram graph - new AIS base station symbol (better visibility) - update rx table for AIS receivers Sat Dec 26 20:21:00 EET 2009 - logarithmic Y scale for rx performance graph - support for keeping up simultaenous connects to multiple server pools - added javascript for sortable tables, made a few tables sortable Mon Dec 28 08:16:06 EET 2009 - fixed heard/gated activity heat map views to not load targets in the area Tue Dec 29 08:32:45 EET 2009 - switched to 3d styled map controls - added traffic view and "more" overlays (photos, wikipedia, videos) Tue Dec 29 22:48:39 EET 2009 - added symbols to rx/tx stats and nearby stations tables - partitioned wxhist table Wed Dec 30 09:58:49 EET 2009 - support for collecting CWOP data from CWOP IS servers - new /service-status/ view Wed Jan 6 20:01:30 EET 2010 - added AIS receiver performance statistics (/info/, /info/graphs/) - fixed callsign sorting in some places - added table sorting in wildcard search result and moving stations - show software installation time in service status - fixed coordinate formatting in ruler endpoint info balloon - fixed login-to-map when the location record for the nickname does not contain lat/lng - some code refactoring and modularisation - new symbol for AIS receivers - lighter shade of purple for item labels on the map Wed Jan 12 22:20:07 EET 2010 - calculate and plot "normal range" on RX distance graph - fixed RX performance data collection for ShipPlotter AIS clients - modified RX performance history table contents to make better sense - some refactoring and modularisation in the backend code Fri Jan 22 08:52:43 EET 2010 - FAP: fixed humidity parsing in normal WX packets: h0 means 100% Sun Jan 24 17:13:23 EET 2010 - facebook app fix - canvas page failed to load - FAP: fixed negative fahrenheit temperature parsing in peet bros ULTW packets - added method to drop temporary markers on the map (right-click) - added AIS RX position setting via the marker method - always accept APRS position for a station if the coordinates are missing Sun Jan 24 19:08:34 EET 2010 - fix embedded maps which broke in the previous update - don't load sound manager in embedded mode Mon Jan 25 08:17:05 EET 2010 - maintain a 'commenttime' in the database - store the time when a comment was last transmitted Tue Jan 26 21:58:31 EET 2010 - fixed the mobile map view - didn't load since sunday because of a bug in the sound manager loading change - changed APRS digipeater path parsing logic: don't mark digipeaters as the first receiver in that many cases - added unit tests for some parts of the code Sun Jan 31 11:33:34 EET 2010 - show GScaleControl on embedded maps, if there's enough space - some rather big CSS changes - break out of a frameset in case of hotlinking/framing, or links from embedded maps Tue Mar 2 22:11:18 EET 2010 - show target symbol with originated items/objects links Wed Mar 3 21:24:18 EET 2010 - upgraded web server software - added ipv6 support for web service - fixed receiver detection for DIGI1*,WIDE1*,DIGI2*,WIDE2* packets - hide status message from real-time map view if it's more than 24 hours older than the last position report for the given station Thu Mar 4 20:01:11 EET 2010 - changed default coordinate format to APRS: degrees and decimal minutes - implemented basic system-level tests to verify that updated data gets from a fake APRS-IS server to the web UI in a timely manner Mon Mar 8 15:17:08 EET 2010 - added hex view to raw packets display - added decoded packets view Thu Mar 18 17:36:49 EET 2010 - implemented web service high availability using VRRP Fri Mar 26 20:34:07 EET 2010 - implemented a 2-second timeout for APRS-IS server connect attempts - implemented exponential backoff for server connect retries Sun Mar 28 23:30:46 EEST 2010 - made spaces in 'normal' raw packets view show up as nbsp Mon Mar 29 19:28:06 EEST 2010 - completely reimplemented the way "heard by" and "igated by" data is stored, allowing for faster lookups, smaller on-disk storage, and per-month views - implemented method to fix typos in English master strings without triggering re-translation for the other languages - faster "nearest cities" lookup Tue Mar 30 21:53:52 EEST 2010 - implemented the new-style "heard" statistics for AIS receivers Mon Apr 5 23:41:16 EEST 2010 - rate limiting for web and api requests Tue Apr 13 19:08:37 EEST 2010 - added 'others' parameter for map callsign lookup - new dynamic AIS sites listing Sun Apr 18 13:28:42 EEST 2010 - updated API terms - faster and cheaper year-level date browsing menu - implemented deleting temporary markers - "link to this position" feature for temp markers - lat/lng goto links can have a label for info balloon - address and locator lookup info balloons can be reopened Sun May 2 22:26:36 EEST 2010 - xhtml validity fixes - API for message query - optimisations for mobile browsers and other slow networks Sun May 16 19:20:21 EEST 2010 - implemented data exporting in KMZ/CSV/json/XML format - changed optimisation settings for png files, fixed transparency in many symbols in Google Earth - some more modularisation and better code reuse Thu May 20 23:59:12 EEST 2010 - page for advertisers - ignore weather packets with unrealistic temperature Wed May 26 19:06:36 EEST 2010 - fixed raw packets display to be really, really binary clean Thu May 27 18:58:29 EEST 2010 - proper rotated APRS symbols for static maps - small static map shown on info page - 'addthis' links added Thu Jun 3 08:49:25 EEST 2010 - only show info balloon in real-time map, if the map div is at least 300 pixels wide and 260 pixels high - helps with small embedded maps - fixed directional PHG cardioids on the real-time map Fri Jun 4 17:44:14 EEST 2010 - implemented tooltips for top right corner buttons of the real-time map - fixed static map positioning on info page for IE[678] - refresh data quicker after panning the real-time map instead of the normal refresh time - tuned AIS ship callsign display in the info balloon - added 'center map here' option in the right-click context menu - changed ruler numbering to start from 1 (not 0) Tue Jun 15 23:08:32 EEST 2010 - upgraded to Google Maps javascript API v3 Wed Jun 16 22:30:13 EEST 2010 - little initial street view support Thu Jun 17 23:10:31 EEST 2010 - IE6 fixes and size optimisations - show "last updated" time in tracked target info Mon Jun 28 15:02:02 EEST 2010 - make it possible to delete address/locator search result marker - zooming fixes for iPhone/iPad/Android devices - made street view split screen, with jumping on marker clicks, and support for multiple tracked targets - point camera *at* a stationary target from the panorama point-of-view (when the target's course is unknown) Fri Jul 2 08:28:41 EEST 2010 - links to user guide from the real-time map - links to weather, telemetry and data export tool - tooltips for comment text and status message in info balloon Tue Jul 6 18:26:56 EEST 2010 - fixed heard/gated maps Wed Jul 7 07:26:01 EEST 2010 - convert timestamps to Y-M-D H:M:S for CSV export Tue Jul 13 17:53:47 EEST 2010 - fb backend improvements - added multisearch support for /heard/ and /gated/ maps Wed Jul 28 08:57:06 EEST 2010 - switched to target class-based links (a/callsign, i/mmsi) - support looking up and selecting one of different targets having the same name - SSL for signup/password recovery/login/account pages - implemented packet transmit rate advisor on info page - fixed lat/lng in XML export - better string translation moderation tool - don't load google maps API in translation tool - store amount of persons on a ship, when available - move focus to callsign input field in map view at start Wed Jul 28 14:39:09 EEST 2010 - implemented facebook tab generation Sun Aug 1 10:10:08 EEST 2010 - show APRS-IS processing delay on service-status page Mon Aug 2 08:04:00 EEST 2010 - disabled timerange control in real-time map when it is unusable (heard/gated maps and after date lookup) - fix long time ranges (over 1 day) when stations tracked - fix KML output format when altitude is missing from a few positions Tue Aug 3 19:34:32 EEST 2010 - upgrade APRS parser to FAP 1.16 - collect and display APRS device ID - rotate some additional symbols in the map - use arithmetic mean (average) for rate advisor instead of median Mon Aug 9 10:04:47 EEST 2010 - fixed links to proper source callsign for items and objects Sun Aug 29 23:49:15 EEST 2010 - added 'my favorite stations' list, attached to the user account - added 'my web stations' - web-originated positions - implemented uploading positions from the web browser (using geolocation api: iphone, android, etc) - implemented google latitude position downloads Mon Aug 30 23:04:08 EEST 2010 - iphone display improvements Mon Sep 6 18:52:32 EEST 2010 - added ie6nomore notice for IE6 users Wed Sep 8 17:47:39 EEST 2010 - fixed recaptcha to be valid xhtml, so that signup and pw recovery works on iPhone and friends Wed Sep 29 22:41:50 EEST 2010 - most pages now have the primary search input form field in focus automatically - implemented 'my favorite views' bookmarking Tue Oct 12 20:12:36 EEST 2010 - when looking up multiple targets, adjust the real-time map to fit all of the found targets - fixed facebook app invite to have a single submit button and correct return action (fix error message in the end) Mon Oct 18 22:30:32 EEST 2010 - implemented KML URL overlays for all real-time map views - web server software upgrade - fixed \u symbol background to be transparent Wed Oct 20 08:51:04 EEST 2010 - implemented tabbed date browsing year selection in map view - implemented arbitrary datetime range selection in map view - don't pop up target info balloon when tracking multiple stations - don't look up stations referenced in the packet paths when tracking multiple stations Thu Oct 27 23:17:38 EEST 2010 - made track lines clickable for easy jumping to the relevant targets - added 'center' and 'zoom' links in info balloon - added line color indicator / separator line in info balloon - added symbol image in waypoint callsign hover label - fixed bug in track line display: only show station symbol image at the last position within the selected time range - don't let the symbol jump and run away when you scroll the map toward the current position of a station Sat Dec 4 12:26:37 EET 2010 - implemented uploading web position by right-clicking on the map Sun Dec 5 10:25:54 EET 2010 - implemented multiple target search in embedded maps Wed Dec 8 23:31:54 EET 2010 - info page: implemented previous month lookup for rx/tx heard stats - heard/gated maps: implemented previous months lookups Sat Dec 18 21:14:25 EET 2010 - added support for OpenStreetMaps (OSM) map type Sun Jan 2 11:49:25 EET 2011 - started collecting position ambiguity data, display ambiguous position precision on info page Tue Jan 11 14:28:20 EET 2011 - in embedded and FB mode, make links pointing to aprs.fi pop up in new window or tab - implemented new facebook app for viewing the locations of FB friends Thu Mar 23 22:45:30 EET 2011 - some groundwork for email alerts - mark outgoing emails as UTF-8 - implemented new telemetry-in-comment format (experimental) Mon Jul 25 21:05:23 EEST 2011 - completely new filtering system with complex boolean logic - new filtering of delayed packets by using packet timestamps as sequence numbers - show parsed timestamps in raw packets decoder - added a "loading" image in the map view - improved the real-time map's content reloading logic - fixed re-sortable tables in many views - prettier and consistent buttons everywhere - other style and prettiness fixes - rearranged real-time map view to have callsign search FIRST - web server software upgrades - delete PHG overlays when zooming out to area activity view - fixed line info marker positioning when an info balloon is already open - did some profiling and optimisation - fixed API bug (returned duplicate stations) - new graph plotting engine Wed Jul 27 23:34:02 EEST 2011 - store user settings in database, together with user account, and when not logged in, with a short cookie ID Sun Aug 21 17:53:27 EEST 2011 - improvements in session cookie processing - memcached upgrade - when user account is deleted, throughly delete all user's data - fixes in alert configuration: apply necessary db changes when alerts are enabled or disabled for a target - complain when user tries to save a filter list twice with the same name - fixes in real-time map to always plot symbol on the last point of a track, even with very fast updates - when client computer comes back from sleep mode, make the reload quick Sun Aug 28 17:49:53 EEST 2011 - show symbol description tooltips on hoveron - show an error message when street view fails to load - increase street view panorama search radius Tue Sep 20 08:20:32 EEST 2011 - fix filter list entry overflow with long text in list entry - fix sitemap XML station name case - fix headbang to load from CDN on error pages - write pid files for more daemons in logs/ - added munin process CPU/mem graphs with the help of the pid files - Path tids: accept DIGI1*,DIGI2*,WIDE2* as indicating DIGI1 as the first heard station Tue Dec 27 12:53:08 EET 2011 - "hashbang" anchor-based navigation for real-time map - ajax searches to avoid full map reloads on every search - popups initialized directly in view instead of pan (faster) - some fadein/fadeout effects and other animations - updated DeviceID for new APRS device types - 3rd party software upgrades Mon Mar 19 08:53:02 EET 2012 - fix scaling on iphone/ipad to make maps really sharp - upgrade to Maps API 3.8 - use older Maps API (3.6) for older Gecko browsers - when tracking station on a mobile device, do not automatically pop up the info window - more animations, rounded corners and some shadows - csrf fixes - added more "loading" feedback - display ruler distances les than 1km in meters - fixed street view panorama search range issues - keep map centered when switching to/from street view - Traditional Chinese language support - new time range forward/backward arrow buttons - support for new DB major version (SQL syntax changes) - improvements in address search - raw packets view: display position packet type in decoded mode - fixed quick zoom-in-and-out bug which made stations disappear - improved "heard" map data collection parameters ... lots of changes not listed at this point ... Fri Oct 18 22:45:25 EEST 2013 - IE11 support/workaround - do not focus to callsign form field on mobile devices, it would bring up the keyboard - support for giving a filter string to the APRS-IS server - new closed API features to support the iOS application - refactored code - upgraded Google Maps API - remove the old unused position history table Tue Oct 22 20:23:25 EEST 2013 - upgraded Ham::APRS::DeviceID to version 1.07, for new devices Mon Dec 2 08:16:02 EET 2013 - fixed back button to work right in most cases (navigation rework) - fixed quotation mark handling in JSON AIS blobs 2014-02-16 09:26:34 - improvements in Mic-E decoder bad symbol handling - display unknown symbol description text when the symbol table id does not make sense 2014-10-23 00:23:23 - more frequent AIS data storage, and AIS RX performance data updates 2014-10-26 18:14:38 - updates to match current aprsc API for dupe collection 2015-04-03 19:46:54 - disabled OSM maps to comply with Google terms 2015-06-05 02:26:05 - string translation / moderation supports "improvement needed" cycle 2015-10-07 01:05:21 - added "we use cookie" warnings to make Google happy, even though Finnish interpretation of EU regulations do not require it 2015-10-09 00:00:41 - re-enable OSM maps, some google features disabled while using OSM 2015-11-01 19:20:17 - high-resolution / retina symbol graphics - responsive layout for better mobile support in many views - support for account email confirmation resending 2019-05-01 09:27:44 - massive internal changes for new operating system version, programming language syntax updates, new database version