<!--!  Copyright (C) 2006-2014 Edgewall Software

  This software is licensed as described in the file COPYING, which
  you should have received as part of this distribution. The terms
  are also available at http://trac.edgewall.com/license.html.

  This software consists of voluntary contributions made by many
  individuals. For the exact contribution history, see the revision
  history and logs, available at http://trac.edgewall.org/.
-->
<!DOCTYPE html
    PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
      xmlns:py="http://genshi.edgewall.org/"
      xmlns:i18n="http://genshi.edgewall.org/i18n"
      xmlns:xi="http://www.w3.org/2001/XInclude">
  <xi:include href="prefs.html" />
  <head>
    <title>Date &amp; Time</title>
  </head>
  <body>

    <table py:with="session_tzname = settings.session.get('tz');
                    selected_tz = timezone(session_tzname) or utc">
      <tr class="field">
        <th><label for="tz">Time zone:</label></th>
        <td><select id="tz" name="tz">
          <option value="">Default time zone</option>
          <option py:for="tzname in timezones" value="$tzname"
                  selected="${session_tzname != None and
                              session_tzname.startswith('Etc/') and
                              selected_tz == timezone(tzname) or
                              session_tzname == tzname or None}">$tzname</option>
        </select></td>
      </tr>
      <tr>
        <th></th>
        <td>
          <p class="hint" i18n:msg="">Configuring your time zone will <!--!
          -->result in all dates and times displayed on this site to <!--!
          -->use your time zone instead of that of the server.</p>
          <!-- This currently crashes Genshi's extractor if you add i18n:msg -->
          <p class="hint" py:with="now = datetime.now(utc);
                                   nowtz = selected_tz.normalize(now.astimezone(selected_tz));
                                   formatted = format_time(now, 'iso8601', tzinfo=req.tz)"
                          py:choose="">
            <i18n:msg params="time">
              Example: The current time is <strong>${format_time(now, 'iso8601', tzinfo=utc)}</strong> (UTC).
            </i18n:msg>
            <br />
            <py:when test="session_tzname">
              <i18n:msg params="tz, formatted">
                In your time zone ${nowtz.tzname()}, this would be displayed as <!--!
                --><strong>$formatted</strong>.
              </i18n:msg>
            </py:when>
            <py:otherwise>
              <i18n:msg params="formatted">
                In the default time zone, this would be displayed as <strong>$formatted</strong>.
              </i18n:msg>
            </py:otherwise>
          </p>
          <p class="hint" i18n:msg="">
            Note: Universal Co-ordinated Time (UTC) is also known as <!--!
            -->Greenwich Mean Time (GMT).<br />A positive offset is <!--!
            -->used to indicate a timezone at the east of Greenwich, <!--!
            -->i.e. ahead of Universal Time.
          </p>
        </td>
      </tr>

      <tr class="field" py:with="session_lc_time = settings.session.get('lc_time')">
        <th><label for="lc_time">Date format:</label></th>
        <td><select id="lc_time" name="lc_time">
          <option value="">Default date format</option>
          <option value="locale" py:if="locales and languages"
                  selected="${session_lc_time == 'locale' or None}">Your language setting</option>
          <option value="iso8601"
                  selected="${session_lc_time == 'iso8601' or None}">ISO 8601 format</option>
        </select></td>
      </tr>
      <tr>
        <th></th>
        <td><p class="hint" i18n:msg="">Configuring your date format will <!--!
            -->result in formatting and parsing datetime displayed on this <!--!
            -->site to use your date format instead of that of the server.</p>
        </td>
      </tr>

      <tr class="field" py:with="session_dateinfo = settings.session.get('dateinfo')">
        <th><label for="dateinfo">Date relative/absolute format:</label></th>
        <td><select id="dateinfo" name="dateinfo">
            <option value="">Default format</option>
            <option value="relative"
                    selected="${session_dateinfo == 'relative' or None}">Relative format</option>
            <option value="absolute"
                    selected="${session_dateinfo == 'absolute' or None}">Absolute format</option>
        </select></td>
      </tr>
      <tr>
        <th></th>
        <td><p class="hint" i18n:msg="">Configuring your relative/absolute <!--!
            -->format will result in formatting datetime displayed on this <!--!
            -->site to use your format instead of that of the server.</p>
        </td>
      </tr>
    </table>

  </body>
</html>
