view app/assets/javascripts/zp.hash_magic.js @ 264:fa4a1ba990ae

Simplified pastes#show view.
author edogawaconan <me@myconan.net>
date Wed, 16 Oct 2013 02:19:36 +0900
parents a9c45375a656
children 77c157a9e645
line wrap: on
line source

//= require zp.formatter
(function($) {
  window.zp.hash_magic = {
    load_hash: function() {
      var format = window.location.hash.slice(1)
      if (format == "") format = "pl"
      zp.formatter.links().filter("[href=#" + format + "]").tab('show')
    },
    set_hash: function(e) {
      if (typeof e !== "undefined") {
        if (zp.formatter.links().filter(e.target).length === 0) return
        else e.preventDefault()
      }
      var
        format = zp.formatter.current(),
        hash = "#"
      hash += format
      if (hash === "#pl") { hash = " " }
      history.replaceState(null, "", hash)
    },
    init: function() {
      if (!$("#paste").length) return
      this.load_hash()
      if (history.replaceState) {
        this.set_hash()
        $(document).on('click', $.proxy(this.set_hash, this))
      }
    }
  }
})(jQuery)