finding time zone name string
I need to write some code which will produce the user's desired time zone string (e.g. "Europe/Paris", "America/Chicago", etc.) using Drupal 6. Drupal 6 core only stores the user's time zone as minutes offset from GMT, and likewise stores minutes offsets from GMT for the site default time zone. Using the popular contrib date module adds a timezone field to the {users} table as well as another variable in the {variable} table with the string I need, but of course, this module is not always present. The most direct way to convert the minute offset to the standardized string is using the PHP 5.1.3 and later function timezone_name_from_abbr(). [despite its horribly wrong design :-) ] My questions are: 1. Is there an existing function or functions in Drupal core, or more likely the contrib date module, I should be calling to do this? I'm thinking I will do an existence check for the date module, and code differently if it is enabled and in use, for example. 2. What if neither the user nor the site has a time zone set? It appears not setting a time zone for a site explicitly defaults to GMT, since the default minute offset in the most of the variable_get() calls is zero, hence GMT. 3. Should I bother to code a check for PHP version, and try to implement a replacement for timezone_name_from_abbr() if PHP is less than 5.1.3? Thanks. ..chris
participants (1)
-
Chris Johnson