Half Time Report
type = interim
status = submitted
Since I almost used half of my time budget of the OSMCAL microgrant, it’s time to reflect on the journey so far.
The first big feature I wanted to land in OSMCAL is time zone support, since nowadays there are many online events happening and those need time zone info more than ever. Automatic detection has landed for events that have a location and everybody else can specify it manually:
That gave me a major head start, because I could go ahead and improve the API, which resulted in the world’s smallest pull request: https://github.com/jbelien/openstreetmap-calendar-widget/pull/41
Since the widget already works very well, I can move on and help others integrate it into websites, which I’ll tackle in the second half of the microgrant.
The third part of my work is the integration into the wiki. People mostly look at the start page of the wiki to find out about events, but as long as there is no automatic connection between OSMCAL and the wiki, it puts an additional burden on organizers: They’d need to put their event in two places.
My first idea was to have a bot adding new events from OSMCAL to the event template of the wiki, but since I want to put an end to wiki markup parsing, I decided to have a look on MediaWiki’s extension system. This turned out more reasonable than I expected.
Less than 100 lines of PHP had to be written for the first version:
The extension allows wiki users to integrate calendar views into any page without special permissions. The upcoming events can even be limited to specific countries.
A pull request for the change of the configuration of the OSM Wiki has been already posted and is currently under review.
Summary and Outlook
So far, I am very happy about the progress, which means that I can spend the rest of the budget on refinement: There are a few UI improvements in the time zone interface. Widgets can be integrated into community sites and the wiki integration needs to be merged upstream and go through a few iterations of improvement.