annotate app/assets/javascripts/application.coffee @ 403:e0626046579a

Rearrange stuff.
author nanaya <me@myconan.net>
date Sun, 06 Sep 2015 04:32:02 +0900
parents a18e19139f57
children 3d434e15ddb1
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
381
bfc5ad3f7dc5 Use rails' builtin jquery instead of external one.
nanaya <me@myconan.net>
parents: 379
diff changeset
1 #= require jquery
398
851432f21603 Nope, failing at redesigning.
nanaya <me@myconan.net>
parents: 382
diff changeset
2 #= require bootstrap
851432f21603 Nope, failing at redesigning.
nanaya <me@myconan.net>
parents: 382
diff changeset
3 #= require highlightjs
851432f21603 Nope, failing at redesigning.
nanaya <me@myconan.net>
parents: 382
diff changeset
4 #= require commonmark
851432f21603 Nope, failing at redesigning.
nanaya <me@myconan.net>
parents: 382
diff changeset
5
851432f21603 Nope, failing at redesigning.
nanaya <me@myconan.net>
parents: 382
diff changeset
6 $(document).on "click", ".js-paste-clear", (e) ->
851432f21603 Nope, failing at redesigning.
nanaya <me@myconan.net>
parents: 382
diff changeset
7 e.preventDefault()
851432f21603 Nope, failing at redesigning.
nanaya <me@myconan.net>
parents: 382
diff changeset
8 $(".js-paste-paste")
851432f21603 Nope, failing at redesigning.
nanaya <me@myconan.net>
parents: 382
diff changeset
9 .val("")
851432f21603 Nope, failing at redesigning.
nanaya <me@myconan.net>
parents: 382
diff changeset
10 .focus()
851432f21603 Nope, failing at redesigning.
nanaya <me@myconan.net>
parents: 382
diff changeset
11
851432f21603 Nope, failing at redesigning.
nanaya <me@myconan.net>
parents: 382
diff changeset
12
851432f21603 Nope, failing at redesigning.
nanaya <me@myconan.net>
parents: 382
diff changeset
13 pasteText = ->
402
a18e19139f57 Markdown preview \o/
nanaya <me@myconan.net>
parents: 398
diff changeset
14 $(".js-paste-paste").val() || $(".js-paste-pl").text()
398
851432f21603 Nope, failing at redesigning.
nanaya <me@myconan.net>
parents: 382
diff changeset
15
851432f21603 Nope, failing at redesigning.
nanaya <me@myconan.net>
parents: 382
diff changeset
16
851432f21603 Nope, failing at redesigning.
nanaya <me@myconan.net>
parents: 382
diff changeset
17 setHash = (newLocation = window.location.pathname) ->
851432f21603 Nope, failing at redesigning.
nanaya <me@myconan.net>
parents: 382
diff changeset
18 return unless history.replaceState
851432f21603 Nope, failing at redesigning.
nanaya <me@myconan.net>
parents: 382
diff changeset
19
851432f21603 Nope, failing at redesigning.
nanaya <me@myconan.net>
parents: 382
diff changeset
20 newLocation ||= window.location.pathname
851432f21603 Nope, failing at redesigning.
nanaya <me@myconan.net>
parents: 382
diff changeset
21 history.replaceState null, "", newLocation
851432f21603 Nope, failing at redesigning.
nanaya <me@myconan.net>
parents: 382
diff changeset
22
851432f21603 Nope, failing at redesigning.
nanaya <me@myconan.net>
parents: 382
diff changeset
23
402
a18e19139f57 Markdown preview \o/
nanaya <me@myconan.net>
parents: 398
diff changeset
24 markdownfy = (plaintext) ->
a18e19139f57 Markdown preview \o/
nanaya <me@myconan.net>
parents: 398
diff changeset
25 reader = new commonmark.Parser
a18e19139f57 Markdown preview \o/
nanaya <me@myconan.net>
parents: 398
diff changeset
26 writer = new commonmark.HtmlRenderer(safe: true)
a18e19139f57 Markdown preview \o/
nanaya <me@myconan.net>
parents: 398
diff changeset
27 writer.render reader.parse(plaintext)
a18e19139f57 Markdown preview \o/
nanaya <me@myconan.net>
parents: 398
diff changeset
28
a18e19139f57 Markdown preview \o/
nanaya <me@myconan.net>
parents: 398
diff changeset
29
398
851432f21603 Nope, failing at redesigning.
nanaya <me@myconan.net>
parents: 382
diff changeset
30 $(document).on "click", ".js-show-tab-pl", ->
851432f21603 Nope, failing at redesigning.
nanaya <me@myconan.net>
parents: 382
diff changeset
31 setHash()
851432f21603 Nope, failing at redesigning.
nanaya <me@myconan.net>
parents: 382
diff changeset
32
382
8ceb373e32d8 Nuke out javascripts =]
nanaya <me@myconan.net>
parents: 381
diff changeset
33
398
851432f21603 Nope, failing at redesigning.
nanaya <me@myconan.net>
parents: 382
diff changeset
34 $(document).on "click", ".js-show-tab-hl", ->
851432f21603 Nope, failing at redesigning.
nanaya <me@myconan.net>
parents: 382
diff changeset
35 setHash "#hl"
851432f21603 Nope, failing at redesigning.
nanaya <me@myconan.net>
parents: 382
diff changeset
36 $hlBox = $(".js-paste-hl")
851432f21603 Nope, failing at redesigning.
nanaya <me@myconan.net>
parents: 382
diff changeset
37 return if $hlBox.data("processed")
851432f21603 Nope, failing at redesigning.
nanaya <me@myconan.net>
parents: 382
diff changeset
38
851432f21603 Nope, failing at redesigning.
nanaya <me@myconan.net>
parents: 382
diff changeset
39 $hlBox.text pasteText()
851432f21603 Nope, failing at redesigning.
nanaya <me@myconan.net>
parents: 382
diff changeset
40
851432f21603 Nope, failing at redesigning.
nanaya <me@myconan.net>
parents: 382
diff changeset
41 highlight = -> hljs.highlightBlock($hlBox[0])
851432f21603 Nope, failing at redesigning.
nanaya <me@myconan.net>
parents: 382
diff changeset
42 setTimeout highlight, 0
851432f21603 Nope, failing at redesigning.
nanaya <me@myconan.net>
parents: 382
diff changeset
43
851432f21603 Nope, failing at redesigning.
nanaya <me@myconan.net>
parents: 382
diff changeset
44 $hlBox.data "processed", true
851432f21603 Nope, failing at redesigning.
nanaya <me@myconan.net>
parents: 382
diff changeset
45
851432f21603 Nope, failing at redesigning.
nanaya <me@myconan.net>
parents: 382
diff changeset
46
851432f21603 Nope, failing at redesigning.
nanaya <me@myconan.net>
parents: 382
diff changeset
47 $(document).on "click", ".js-show-tab-md", ->
851432f21603 Nope, failing at redesigning.
nanaya <me@myconan.net>
parents: 382
diff changeset
48 setHash "#md"
851432f21603 Nope, failing at redesigning.
nanaya <me@myconan.net>
parents: 382
diff changeset
49 $mdBox = $(".js-paste-md")
851432f21603 Nope, failing at redesigning.
nanaya <me@myconan.net>
parents: 382
diff changeset
50 return if $mdBox.data("processed")
851432f21603 Nope, failing at redesigning.
nanaya <me@myconan.net>
parents: 382
diff changeset
51
402
a18e19139f57 Markdown preview \o/
nanaya <me@myconan.net>
parents: 398
diff changeset
52 $mdBox.html markdownfy(pasteText())
398
851432f21603 Nope, failing at redesigning.
nanaya <me@myconan.net>
parents: 382
diff changeset
53 $mdBox.find("a").attr("rel", "nofollow")
851432f21603 Nope, failing at redesigning.
nanaya <me@myconan.net>
parents: 382
diff changeset
54 $mdBox.data "processed", true
851432f21603 Nope, failing at redesigning.
nanaya <me@myconan.net>
parents: 382
diff changeset
55
402
a18e19139f57 Markdown preview \o/
nanaya <me@myconan.net>
parents: 398
diff changeset
56
a18e19139f57 Markdown preview \o/
nanaya <me@myconan.net>
parents: 398
diff changeset
57 $(document).on "click", ".js-paste-preview-md", ->
a18e19139f57 Markdown preview \o/
nanaya <me@myconan.net>
parents: 398
diff changeset
58 return if pasteText() == ""
a18e19139f57 Markdown preview \o/
nanaya <me@myconan.net>
parents: 398
diff changeset
59 $(".js-paste-preview-md-box").html markdownfy(pasteText())
a18e19139f57 Markdown preview \o/
nanaya <me@myconan.net>
parents: 398
diff changeset
60 $(".js-paste-preview-md-modal").modal "show"
a18e19139f57 Markdown preview \o/
nanaya <me@myconan.net>
parents: 398
diff changeset
61
a18e19139f57 Markdown preview \o/
nanaya <me@myconan.net>
parents: 398
diff changeset
62
398
851432f21603 Nope, failing at redesigning.
nanaya <me@myconan.net>
parents: 382
diff changeset
63 $(document).on "ready", ->
851432f21603 Nope, failing at redesigning.
nanaya <me@myconan.net>
parents: 382
diff changeset
64 return if $(".js-showing-paste").length < 1
851432f21603 Nope, failing at redesigning.
nanaya <me@myconan.net>
parents: 382
diff changeset
65
851432f21603 Nope, failing at redesigning.
nanaya <me@myconan.net>
parents: 382
diff changeset
66 format = window.location.hash.slice(1)
851432f21603 Nope, failing at redesigning.
nanaya <me@myconan.net>
parents: 382
diff changeset
67 $(".js-show-tab-#{format}").click()