Creating momentjs timezone map, no output - timezone

I'm new to html, css and js. Thus far I've managed to create a website via trial and error and research to learn the craft but I cannot find an answer to my (assumingly) basic momentjs problem.
I'm trying to create a map based on the momentjs timezone map.
I have the moment.js file from cdnjs, the moment-timezone-js from http://momentjs.com/downloads/moment-timezone.js and the moment-timezone-data.js built from http://momentjs.com/timezone/data/
But I have a hunch I've put stuff in the wrong place in the html. I've google'd for a way out but have not found anything thus far.
Thank you,
Kristian

moment-timezone is about converting date and time values to a particular time zone, not about mapping. The map shown on that website is not an example of using moment-timezone to draw the map, but rather it uses other data and techniques to draw the map, then uses moment-timezone to convert the current time to the time in that zone.
If it's mapping you want to explore, take a look at this map-based time zone selection control.

Related

Is AddThisEvent's timezone (zonecode) arbitrary?

I have users stored in the database and need to save a timezone to associate with the user so that I can use it to create events with AddThisEvent and to display other localized times.
Is the mapping from a timezone offset to the AddThisEvent zonecode arbitrary- or is he using some standard that I couldn't find?
The documentation in Step 2 describes the list of available values for the _zonecode.
These appear to be Microsoft Windows time zones, as mentioned in the timezone tag wiki.
However, the actual integers assigned to each "Zonecode" appear to be proprietary to AddThisEvent. It's likely that they are using TimeZoneInfo.GetSystemTimeZones in .NET, and assigning each entry to an integer.
Hopefully, they realize that this list is not necessarily fixed. Microsoft can provide updates which add entries to Windows when new time zones need to be created. For example, two new time zones are being added soon for the upcoming October 2014 Russian time zone changes. These would be added in the middle of the list, so the list would no longer be sequential. If they are just using an index value of the array returned, they'll be surprised when the changes cause everything to shift forward.
(Note - I have no special knowledge of how AddThisEvent is actually planning to handle updates. I am just speculating.)
In general - integers are not good time zone identifiers.
So what should I do then?
Map each of the proprietary entries back to the Windows time zone they belong to. Then, if necessary, map them to the standard IANA TZ identifier used by PHP, Python, Java, etc. You can use the CLDR mappings to determine an appropriate TZ identifier to use for each Windows time zone.
It's a shame you'll have to jump through so many hoops, but in the end, you'll be able to figure out the appropriate integer to use with AddThisEvent for each user.
It looks like AddThisEvent has already updated their timezone handling. However, if people are still using the older library and are running into this problem, one solution is to convert the datetime to UTC before passing it to AddThisEvent. Then you can use the _zonecode 35 (UTC). Calendar options like Google, Outlook, etc should be able to convert from UTC to the user's timezone appropriately.

glibc to uclibc Timezone mapping file

I came across a mapping file for timezone strings from glibc to uclibc. It looks like this:
Africa/Abidjan=GMT0
Africa/Accra=GMT0
Africa/Addis Ababa=EAT-3
Africa/Algiers=CET-1
...
This file is quite old (4 years), and several new TimeZones have been added on glibc. However, I could not find the latest mapping file. The mapping file has 451 entries, where as the total timezone strings supported these days is over 900. Is there an updated mapping file for the same?
From the data you provided, the left side appears to be an IANA/Olson time zone identifier. You can see a rough list of these zones and their offsets on Wikipedia.
The right side appears to be a time zone abbreviation and the standard offset for the zone, with its sign inverted. This might be a POSIX style time zone string. I can't tell since you only provided a small sampling.
You can read more about both of these in the timezone tag wiki. Be sure to read about the limitations of POSIX time zones.
Some searching found this thread where they discuss that uclibc only supports POSIX time zones. If you're using buildroot, you could see if the "tzdata" package will work for you, but I'm not sure if it will or not. If it does, you would use it the same way that glibc does, with the TZ variable setting (see the last option at the bottom of the page).
As far as mapping IANA to POSIX zones - any list you have is going to be limited to the current time zone rules, and then still won't cover necessarily everything. Only the IANA zones are comprehensive. It would also be a one-way mapping. You could not go the other direction. I searched, but did not find a direct source for this mapping. If you find one, please let me know.

Is there a database of time zone lines available for download?

I've searched and found a couple of online web services that do this, but I was wondering it there's a database in the public domain which gives a list of latitudes and longitudes for the standard time zone lines? I'd like to be able to calculate what time zone a coordinate is without using a web service. I figured that time zone boundaries are mostly static and were probably decided by some committee, so there should be a CSV or GPX or KML somewhere.
I'd like to be able to check what time zone a coordinate lies in, for example:
48.856667 2.350833 is GMT+1 or CET
This is a series of files -- timezone polygons (shapefile), which you can transform into boundaries. With work on your part.
http://efele.net/maps/tz/world/
You should note that simply knowing the TZ does not guarantee that you know anything about the current correct time or date there in terms of the local calendar. Time Ex: The Isreali Knesset (parliament) decides when Daylight time starts and ends - sometimes they have chosen a date in the past. Date Ex: The Hijri Calendar changes months based on the ability of people in Mecca to actually observe the new moon from there. Cloudy days alter the date.
Askgeo.com has a Java library under commercial license. (Scroll down their page to find information about it). They charge 2 grand up front for it though, considering the amount of work they must have put in compiling loads of vector maps, etc, I can understand they want the money.
I use their free API, but you wanted something downloadable, and I think this is one of your few bets.
I tried openstreetmap and they have the data, but it would be buried in a map of Earth, not completely useful itself. Here is one on Wikipedia though: http://en.wikipedia.org/wiki/List_of_tz_database_time_zones
I recently found this data here:
https://github.com/straup/whereonearth-timezone

creating an highlight image map

I am working on a project in which i have a database created using mysql and php. I want to advance it by connecting an image to it. every object in my database is going to be linked to a certain part of the image that will be highlighted.
I am not really sure how to do this.
As of right now, i have a search feature on my database that gives me the result.
I am willing to try any programming language that would make this easier.
My database has about maybe 1000 entries. They are all numbers that correspond to a certain location on my image.
My image is basically a map.
I'm not entirely sure what you are trying to do, but if you want to plot a graph you can use the HTML 5 canvas as some JavaScript. Or better yet, use tool that already exists like Google Charts. Maybe a scatter plot is what you're looking for?

Charts library for Ruby

I am looking for a quite specific tool for generating charts, within Ruby on Rails application. I have done a research and couldn't find a solution that suits me.
Maybe you've bumped upon it and could just point me to it with a link? :)
My requirements for a solution are:
it has to feature basic chart types
like Pie, Bar, Stacked Bar, Line.
it has to have basic configuration of
a chart like legend, axis
description.
it has to be able to generate and save chart into image file without
actually rendering it in a browser
being a Ruby library would be nice,
but it is not obligatory
not being Gruff Graphing Library, I
am looking for something more up to
date, with less issues.
If you are aware about something, please post a link - it'll take you just a few seconds.
I think, that it is what you're looking for.
http://highcharts.com/
https://github.com/loudpixel/highcharts-rails
I've made a number of useful charts with the Google Chart API. There are a few gems: googlecharts, gchartrb. I haven't used them but they look like a good first cut.
As to not displaying it you can just make the call and save the result. No need to render, just make the call, get the URL, and fetch the file.
The only one that has satisfied all these conditions:
I have been able to make it works without need of install weird dependencies
Not has an HTML context requirement (all JS libraries)
Not depends on GCharts (net traffic dependency)
Exports to static graphic format
is gerbilcharts
Chartkick!!!
It's super nice. =)
It's been a long time since I asked this question and I see new people coming and posting new answers, which his great. This small post of mine turned out to be a small compendium of available libraries.
I decided to add my two cents. Nowadays whenever I am dealing with charts I usually use Highcharts. Highcharts is a very pleasant library by itself, but additionally there is incredible gem highcharts_on_rails which facilitates creating charts using DSL written in Ruby.
If you found this question and you're looking for options, consider highcharts_on_rails.
This might be able to do what you want:
Gruff
You can use rchart for plotting various chart.
I am using openflashchart
http://pullmonkey.com/projects/open_flash_chart2/
you can save generated json data in database and render when needed

Resources