(function($, doc) {

  document.documentElement.className = 'js';
  $.fn.attrProp = $.fn.prop || $.fn.attr;
  
  $.extend(FM, {
    hash: location.hash,
    pathname: '/' + location.pathname.replace(/^\//, ''),
    scriptDir: '/assets/scripts/',
    imgDir:    '/assets/styles/images/',
  	prevNext: '<div class="controls"><a href="#" class="prev">Previous</a><a href="#" class="next">Next</a></div>',
  	addLink: function(params) {

      var lnk = doc.createElement('link'),
          h = doc.getElementsByTagName('head')[0],
          opts = $.extend({
            media: 'all',
            rel: 'stylesheet',
            type: 'text/css',
            href: ''
          }, params);

      // bail out if the <link> element is already there
      for (var i=0, lnks=h.getElementsByTagName('link'), ll=lnks.length; i < ll; i++ ) {
        if (!opts.href || lnks[i].href.indexOf(opts.href) !== -1) {
          return;
        }
      }

      for (var prop in opts) {
        lnk[prop] = opts[prop];
      }
      h.appendChild(lnk);

      lnk = null;

    }
  });

  $(window).bind('load', function() {
    FM.addLink({
      href: '/assets/styles/print.css',
      media: 'print'
    });
  });
})(jQuery, document);

