doctype 5
html(lang="en")
  head
    title Forum
    meta(charset="utf-8")
    meta(http-equiv="X-UA-Compatible" content="IE=Edge")
    meta(name="viewport" content="width=device-width, initial-scale=1")
    meta(name="robots" content="noindex")

    script.
      var forum = {};
      forum.constants = !{clientConstants};
      forum.constants.user = !{JSON.stringify(user)};
    link(
      rel="stylesheet"
      href="/stylesheets/base.css"
    )
    link(
      rel="stylesheet"
      href="//fonts.googleapis.com/css?family=Open+Sans:400italic,700,400"
    )
    link(
      rel="stylesheet"
      href="//netdna.bootstrapcdn.com/font-awesome/4.0.3/css/font-awesome.css"
    )

    link(
      rel="icon"
      href="/favicon.png"
    )

    block head
    block vars
  body.root(
    class=bodyClass
  )

    include titlebar.jade

    block main

    script(src="/javascripts/marked.js")
    script.
      var markedRenderer = new marked.Renderer();
      markedRenderer.link = function(href, title, text) {
        return '<a target="_blank"' +
            'href="' + href + '"' +
            (title ? 'title="' + title + '"' : '') +
          '>' + text + "</a>";
      };

      marked.setOptions({
        emoji: function (emoji) {
          return '<img src="'
              + 'http://cloud.ahfr.org/images/emoji/'
              + encodeURIComponent(emoji)
              + '.png"'
              + ' alt=":'
              + escape(emoji)
              + ':"'
              + ' title=":'
              + escape(emoji)
              + ':"'
              + ' class="emoji" align="absmiddle" height="20" width="20">';

        },
        renderer: markedRenderer
      });

    script(src="/javascripts/moment.js")
    script(src="/javascripts/underscore.js")
    script(src="/javascripts/jquery.js")
    script.
      var tickIntervalID = 0;
      var lastVisitedPromise = $.ajax({
        url: '/lastVisited',
        dataType: 'json',
        success: function(data) {
          forum.constants.lastVisited = data
        }
      });

      function tickPosts() {
        $('.distance[data-timestamp]').each(function() {
          $(this).text(moment(this.dataset.timestamp).fromNow());
        });

        clearInterval(tickIntervalID);
        tickIntervalID = setInterval(tickPosts, 1000 * 60);
      }

      tickPosts();


      document.addEventListener('focusin', function(event) {
        if (event.target.tagName.toLowerCase() === 'input' || event.target.tagName.toLowerCase() === 'textarea') {
          document.getElementsByTagName('body')[0].classList.add('killfixed');
        }
      });

      document.addEventListener('focusout', function() {
        document.getElementsByTagName('body')[0].classList.remove('killfixed');
      });

    script(src="/javascripts/velocity.min.js")
    script(src="/javascripts/velocity.ui.min.js")
    script(src="/javascripts/animations.js")
    script(src="/javascripts/socket.io.js")
    script.
      var socket = io.connect(forum.constants.socketAddress, {
        query: {
          user: JSON.stringify(forum.constants.user)
        }
      });

    script(src="/javascripts/jade-runtime.js")
    script(src="/javascripts/oembed.js")
    script(src="/javascripts/favico.js")
    script.
      var favicon = new Favico({
        animation: 'none',
        bgColor: '#22BEF7',
        color: '#fff'
      });

      socket.on('updateuserlist', function(userlist) {
        $('.activity-users').empty();
        _.forEach(userlist, function(user) {
          $('.activity-users').append($('<div class="activity-users-user" />').text(user.name));
        });
      });

    block script

    if (user && user.id !== 0)
      include activity.jade
