burp_cms 1.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (412) hide show
  1. data/LICENSE.txt +165 -0
  2. data/README.markdown +11 -0
  3. data/Rakefile +56 -0
  4. data/app/assets/images/burp/add-group-to-menu-1.png +0 -0
  5. data/app/assets/images/burp/add-group-to-menu-2.png +0 -0
  6. data/app/assets/images/burp/add-group-to-menu-3.png +0 -0
  7. data/app/assets/images/burp/add-group-to-menu-4.png +0 -0
  8. data/app/assets/images/burp/add-image-1.png +0 -0
  9. data/app/assets/images/burp/add-image-2.png +0 -0
  10. data/app/assets/images/burp/add-image-3.png +0 -0
  11. data/app/assets/images/burp/add-image-4.png +0 -0
  12. data/app/assets/images/burp/add-image-5.png +0 -0
  13. data/app/assets/images/burp/add-link-to-group-1.png +0 -0
  14. data/app/assets/images/burp/add-link-to-group-2.png +0 -0
  15. data/app/assets/images/burp/add-link-to-group-3.png +0 -0
  16. data/app/assets/images/burp/add-link-to-menu-1.png +0 -0
  17. data/app/assets/images/burp/add-link-to-menu-2.png +0 -0
  18. data/app/assets/images/burp/add-link-to-menu-3.png +0 -0
  19. data/app/assets/images/burp/add-link-to-menu-4.png +0 -0
  20. data/app/assets/images/burp/add-page-to-menu-1.png +0 -0
  21. data/app/assets/images/burp/add-page-to-menu-2.png +0 -0
  22. data/app/assets/images/burp/add-page-to-menu-3.png +0 -0
  23. data/app/assets/images/burp/add-page-to-menu-4.png +0 -0
  24. data/app/assets/images/burp/add-page-to-menu-5.png +0 -0
  25. data/app/assets/images/burp/adding-a-page-1.png +0 -0
  26. data/app/assets/images/burp/adding-a-page-2.png +0 -0
  27. data/app/assets/images/burp/adding-a-page-3.png +0 -0
  28. data/app/assets/images/burp/adding-a-page-4.png +0 -0
  29. data/app/assets/images/burp/change-page-title-1.png +0 -0
  30. data/app/assets/images/burp/change-page-title-2.png +0 -0
  31. data/app/assets/images/burp/change-page-title-3.png +0 -0
  32. data/app/assets/images/burp/change-page-title-4.png +0 -0
  33. data/app/assets/images/burp/change-the-text-1.png +0 -0
  34. data/app/assets/images/burp/change-the-text-2.png +0 -0
  35. data/app/assets/images/burp/change-the-text-3.png +0 -0
  36. data/app/assets/images/burp/enter-page-edit-mode-1.png +0 -0
  37. data/app/assets/images/burp/enter-page-edit-mode-2.png +0 -0
  38. data/app/assets/images/burp/enter-page-edit-mode-3.png +0 -0
  39. data/app/assets/images/burp/enter-page-edit-mode-4.jpg +0 -0
  40. data/app/assets/images/burp/enter-page-edit-mode-4.png +0 -0
  41. data/app/assets/images/burp/img/glyphicons-halflings-white.png +0 -0
  42. data/app/assets/images/burp/img/glyphicons-halflings.png +0 -0
  43. data/app/assets/images/burp/move-link-to-bottom-of-menu-1.png +0 -0
  44. data/app/assets/images/burp/move-link-to-bottom-of-menu-2.png +0 -0
  45. data/app/assets/images/burp/move-link-to-bottom-of-menu-3.png +0 -0
  46. data/app/assets/images/burp/remove-a-page-1.png +0 -0
  47. data/app/assets/images/burp/remove-a-page-2.png +0 -0
  48. data/app/assets/images/burp/remove-a-page-3.png +0 -0
  49. data/app/assets/images/burp/remove-a-page-4.png +0 -0
  50. data/app/assets/images/burp/remove-image-1.png +0 -0
  51. data/app/assets/images/burp/remove-image-2.png +0 -0
  52. data/app/assets/images/burp/remove-image-3.png +0 -0
  53. data/app/assets/images/burp/remove-image-4.png +0 -0
  54. data/app/assets/images/burp/remove-image-5.png +0 -0
  55. data/app/assets/images/burp/remove-page-from-menu-1.png +0 -0
  56. data/app/assets/images/burp/remove-page-from-menu-2.png +0 -0
  57. data/app/assets/images/burp/remove-page-from-menu-3.png +0 -0
  58. data/app/assets/images/burp/remove-page-from-menu-4.png +0 -0
  59. data/app/assets/javascripts/burp/application.js +22 -0
  60. data/app/assets/javascripts/burp/burp.js +2 -0
  61. data/app/assets/javascripts/burp/cms_helper.js +49 -0
  62. data/app/assets/javascripts/burp/edit-page.js +22 -0
  63. data/app/assets/javascripts/burp/lib/bootstrap.min.js +6 -0
  64. data/app/assets/javascripts/burp/lib/debug.js +222 -0
  65. data/app/assets/javascripts/burp/lib/fileupload.js +1255 -0
  66. data/app/assets/javascripts/burp/lib/missing-restful-verbs.js +46 -0
  67. data/app/assets/javascripts/burp/menu-functions.js +28 -0
  68. data/app/assets/javascripts/burp/pages-drag-and-drop.js +151 -0
  69. data/app/assets/packages/burp/editing/css/dropzone.css +15 -0
  70. data/app/assets/packages/burp/editing/css/edit-content.less +126 -0
  71. data/app/assets/packages/burp/editing/css/gallery.css +167 -0
  72. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/LICENSE +23 -0
  73. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/README.md +8 -0
  74. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/demo/activeline.html +72 -0
  75. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/demo/changemode.html +50 -0
  76. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/demo/closetag.html +65 -0
  77. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/demo/complete.html +70 -0
  78. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/demo/emacs.html +59 -0
  79. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/demo/folding.html +61 -0
  80. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/demo/formatting.html +80 -0
  81. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/demo/fullscreen.html +152 -0
  82. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/demo/loadmode.html +39 -0
  83. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/demo/marker.html +52 -0
  84. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/demo/matchhighlighter.html +37 -0
  85. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/demo/multiplex.html +59 -0
  86. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/demo/mustache.html +57 -0
  87. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/demo/preview.html +76 -0
  88. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/demo/resize.html +41 -0
  89. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/demo/runmode.html +49 -0
  90. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/demo/search.html +83 -0
  91. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/demo/theme.html +78 -0
  92. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/demo/vim.html +50 -0
  93. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/demo/visibletabs.html +61 -0
  94. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/doc/baboon.png +0 -0
  95. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/doc/baboon_vector.svg +153 -0
  96. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/doc/compress.html +148 -0
  97. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/doc/docs.css +154 -0
  98. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/doc/internals.html +494 -0
  99. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/doc/manual.html +1128 -0
  100. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/doc/oldrelease.html +267 -0
  101. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/doc/reporting.html +57 -0
  102. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/doc/upgrade_v2.2.html +95 -0
  103. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/index.html +417 -0
  104. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/keymap/emacs.js +29 -0
  105. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/keymap/vim.js +766 -0
  106. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/lib/codemirror.css +168 -0
  107. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/lib/codemirror.js +3181 -0
  108. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/lib/util/closetag.js +146 -0
  109. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/lib/util/dialog.css +23 -0
  110. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/lib/util/dialog.js +63 -0
  111. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/lib/util/foldcode.js +196 -0
  112. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/lib/util/formatting.js +297 -0
  113. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/lib/util/javascript-hint.js +134 -0
  114. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/lib/util/loadmode.js +51 -0
  115. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/lib/util/match-highlighter.js +44 -0
  116. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/lib/util/multiplex.js +72 -0
  117. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/lib/util/overlay.js +52 -0
  118. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/lib/util/pig-hint.js +123 -0
  119. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/lib/util/runmode.js +49 -0
  120. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/lib/util/search.js +118 -0
  121. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/lib/util/searchcursor.js +117 -0
  122. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/lib/util/simple-hint.css +16 -0
  123. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/lib/util/simple-hint.js +72 -0
  124. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/mode/clike/clike.js +271 -0
  125. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/mode/clike/index.html +101 -0
  126. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/mode/clike/scala.html +765 -0
  127. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/mode/clojure/clojure.js +207 -0
  128. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/mode/clojure/index.html +66 -0
  129. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/mode/coffeescript/LICENSE +22 -0
  130. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/mode/coffeescript/coffeescript.js +347 -0
  131. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/mode/coffeescript/index.html +727 -0
  132. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/mode/css/css.js +124 -0
  133. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/mode/css/index.html +55 -0
  134. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/mode/diff/diff.js +32 -0
  135. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/mode/diff/index.html +104 -0
  136. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/mode/ecl/ecl.js +203 -0
  137. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/mode/ecl/index.html +42 -0
  138. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/mode/erlang/erlang.js +251 -0
  139. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/mode/erlang/index.html +61 -0
  140. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/mode/gfm/gfm.js +144 -0
  141. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/mode/gfm/index.html +47 -0
  142. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/mode/go/go.js +170 -0
  143. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/mode/go/index.html +72 -0
  144. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/mode/groovy/groovy.js +210 -0
  145. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/mode/groovy/index.html +71 -0
  146. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/mode/haskell/haskell.js +242 -0
  147. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/mode/haskell/index.html +60 -0
  148. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/mode/htmlembedded/htmlembedded.js +68 -0
  149. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/mode/htmlembedded/index.html +49 -0
  150. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/mode/htmlmixed/htmlmixed.js +85 -0
  151. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/mode/htmlmixed/index.html +51 -0
  152. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/mode/javascript/index.html +77 -0
  153. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/mode/javascript/javascript.js +361 -0
  154. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/mode/jinja2/index.html +37 -0
  155. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/mode/jinja2/jinja2.js +42 -0
  156. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/mode/less/index.html +618 -0
  157. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/mode/less/less.js +232 -0
  158. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/mode/lua/index.html +72 -0
  159. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/mode/lua/lua.js +140 -0
  160. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/mode/markdown/index.html +338 -0
  161. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/mode/markdown/markdown.js +245 -0
  162. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/mode/mysql/index.html +41 -0
  163. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/mode/mysql/mysql.js +188 -0
  164. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/mode/ntriples/index.html +32 -0
  165. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/mode/ntriples/ntriples.js +172 -0
  166. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/mode/pascal/LICENSE +7 -0
  167. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/mode/pascal/index.html +48 -0
  168. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/mode/pascal/pascal.js +94 -0
  169. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/mode/perl/LICENSE +19 -0
  170. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/mode/perl/index.html +62 -0
  171. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/mode/perl/perl.js +816 -0
  172. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/mode/php/index.html +48 -0
  173. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/mode/php/php.js +150 -0
  174. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/mode/pig/index.html +42 -0
  175. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/mode/pig/pig.js +172 -0
  176. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/mode/plsql/index.html +62 -0
  177. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/mode/plsql/plsql.js +217 -0
  178. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/mode/properties/index.html +40 -0
  179. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/mode/properties/properties.js +63 -0
  180. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/mode/python/LICENSE.txt +21 -0
  181. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/mode/python/index.html +122 -0
  182. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/mode/python/python.js +338 -0
  183. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/mode/r/LICENSE +24 -0
  184. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/mode/r/index.html +73 -0
  185. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/mode/r/r.js +141 -0
  186. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/mode/rpm/changes/changes.js +19 -0
  187. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/mode/rpm/changes/index.html +53 -0
  188. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/mode/rpm/spec/index.html +99 -0
  189. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/mode/rpm/spec/spec.css +5 -0
  190. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/mode/rpm/spec/spec.js +66 -0
  191. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/mode/rst/index.html +525 -0
  192. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/mode/rst/rst.js +326 -0
  193. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/mode/ruby/LICENSE +24 -0
  194. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/mode/ruby/index.html +171 -0
  195. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/mode/ruby/ruby.js +195 -0
  196. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/mode/rust/index.html +48 -0
  197. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/mode/rust/rust.js +432 -0
  198. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/mode/scheme/index.html +64 -0
  199. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/mode/scheme/scheme.js +230 -0
  200. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/mode/shell/index.html +50 -0
  201. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/mode/shell/shell.js +103 -0
  202. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/mode/smalltalk/index.html +55 -0
  203. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/mode/smalltalk/smalltalk.js +139 -0
  204. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/mode/smarty/index.html +82 -0
  205. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/mode/smarty/smarty.js +148 -0
  206. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/mode/sparql/index.html +40 -0
  207. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/mode/sparql/sparql.js +143 -0
  208. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/mode/stex/index.html +95 -0
  209. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/mode/stex/stex.js +182 -0
  210. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/mode/stex/test.html +263 -0
  211. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/mode/tiddlywiki/index.html +140 -0
  212. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/mode/tiddlywiki/tiddlywiki.css +14 -0
  213. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/mode/tiddlywiki/tiddlywiki.js +384 -0
  214. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/mode/tiki/index.html +82 -0
  215. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/mode/tiki/tiki.css +26 -0
  216. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/mode/tiki/tiki.js +316 -0
  217. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/mode/vbscript/index.html +42 -0
  218. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/mode/vbscript/vbscript.js +26 -0
  219. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/mode/velocity/index.html +103 -0
  220. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/mode/velocity/velocity.js +146 -0
  221. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/mode/verilog/index.html +210 -0
  222. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/mode/verilog/verilog.js +194 -0
  223. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/mode/xml/index.html +44 -0
  224. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/mode/xml/xml.js +325 -0
  225. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/mode/xquery/LICENSE +20 -0
  226. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/mode/xquery/index.html +222 -0
  227. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/mode/xquery/test/index.html +27 -0
  228. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/mode/xquery/test/testBase.js +42 -0
  229. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/mode/xquery/test/testEmptySequenceKeyword.js +16 -0
  230. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/mode/xquery/test/testMultiAttr.js +16 -0
  231. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/mode/xquery/test/testNamespaces.js +91 -0
  232. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/mode/xquery/test/testProcessingInstructions.js +16 -0
  233. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/mode/xquery/test/testQuotes.js +19 -0
  234. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/mode/xquery/xquery.js +448 -0
  235. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/mode/yaml/index.html +67 -0
  236. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/mode/yaml/yaml.js +95 -0
  237. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/package.json +29 -0
  238. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/test/index.html +28 -0
  239. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/test/mode_test.css +22 -0
  240. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/test/mode_test.js +164 -0
  241. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/test/test.js +344 -0
  242. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/theme/ambiance.css +81 -0
  243. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/theme/blackboard.css +25 -0
  244. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/theme/cobalt.css +18 -0
  245. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/theme/eclipse.css +25 -0
  246. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/theme/elegant.css +10 -0
  247. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/theme/erlang-dark.css +21 -0
  248. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/theme/lesser-dark.css +44 -0
  249. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/theme/monokai.css +28 -0
  250. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/theme/neat.css +9 -0
  251. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/theme/night.css +21 -0
  252. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/theme/rubyblue.css +21 -0
  253. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/theme/vibrant-ink.css +27 -0
  254. data/app/assets/packages/burp/editing/dep/CodeMirror-2.3/theme/xq-dark.css +46 -0
  255. data/app/assets/packages/burp/editing/dep/FontAwesome/FontAwesome-Vectors.pdf +3180 -7
  256. data/app/assets/packages/burp/editing/dep/FontAwesome/FontAwesome.ttf +0 -0
  257. data/app/assets/packages/burp/editing/dep/FontAwesome/README.md +18 -0
  258. data/app/assets/packages/burp/editing/dep/FontAwesome/css/font-awesome-ie7.css +645 -0
  259. data/app/assets/packages/burp/editing/dep/FontAwesome/css/font-awesome.less +309 -0
  260. data/app/assets/packages/burp/editing/dep/FontAwesome/docs/assets/css/font-awesome-ie7.css +213 -0
  261. data/app/assets/packages/burp/editing/dep/FontAwesome/docs/assets/css/font-awesome.css +303 -0
  262. data/app/assets/packages/burp/editing/dep/FontAwesome/docs/assets/css/prettify.css +30 -0
  263. data/app/assets/packages/burp/editing/dep/FontAwesome/docs/assets/css/site.css +4904 -0
  264. data/app/assets/packages/burp/editing/dep/FontAwesome/docs/assets/font/fontawesome-webfont.eot +0 -0
  265. data/app/assets/packages/burp/editing/dep/FontAwesome/docs/assets/font/fontawesome-webfont.svg +255 -0
  266. data/app/assets/packages/burp/editing/dep/FontAwesome/docs/assets/font/fontawesome-webfont.ttf +0 -0
  267. data/app/assets/packages/burp/editing/dep/FontAwesome/docs/assets/font/fontawesome-webfont.woff +0 -0
  268. data/app/assets/packages/burp/editing/dep/FontAwesome/docs/assets/font/museo_slab_300-webfont.eot +0 -0
  269. data/app/assets/packages/burp/editing/dep/FontAwesome/docs/assets/font/museo_slab_300-webfont.ttf +0 -0
  270. data/app/assets/packages/burp/editing/dep/FontAwesome/docs/assets/font/museo_slab_500-webfont.eot +0 -0
  271. data/app/assets/packages/burp/editing/dep/FontAwesome/docs/assets/font/museo_slab_500-webfont.ttf +0 -0
  272. data/app/assets/packages/burp/editing/dep/FontAwesome/docs/assets/font/proximanova-webfont.eot +0 -0
  273. data/app/assets/packages/burp/editing/dep/FontAwesome/docs/assets/font/proximanova-webfont.ttf +0 -0
  274. data/app/assets/packages/burp/editing/dep/FontAwesome/docs/assets/ico/favicon.ico +0 -0
  275. data/app/assets/packages/burp/editing/dep/FontAwesome/docs/assets/js/backbone.min.js +37 -0
  276. data/app/assets/packages/burp/editing/dep/FontAwesome/docs/assets/js/index/index.js +89 -0
  277. data/app/assets/packages/burp/editing/dep/FontAwesome/docs/assets/js/jquery-1.7.1.min.js +4 -0
  278. data/app/assets/packages/burp/editing/dep/FontAwesome/docs/assets/js/prettify.min.js +28 -0
  279. data/app/assets/packages/burp/editing/dep/FontAwesome/docs/assets/js/tw-bs-201/bootstrap-alert.js +94 -0
  280. data/app/assets/packages/burp/editing/dep/FontAwesome/docs/assets/js/tw-bs-201/bootstrap-button.js +98 -0
  281. data/app/assets/packages/burp/editing/dep/FontAwesome/docs/assets/js/tw-bs-201/bootstrap-carousel.js +157 -0
  282. data/app/assets/packages/burp/editing/dep/FontAwesome/docs/assets/js/tw-bs-201/bootstrap-collapse.js +136 -0
  283. data/app/assets/packages/burp/editing/dep/FontAwesome/docs/assets/js/tw-bs-201/bootstrap-dropdown.js +92 -0
  284. data/app/assets/packages/burp/editing/dep/FontAwesome/docs/assets/js/tw-bs-201/bootstrap-modal.js +210 -0
  285. data/app/assets/packages/burp/editing/dep/FontAwesome/docs/assets/js/tw-bs-201/bootstrap-popover.js +95 -0
  286. data/app/assets/packages/burp/editing/dep/FontAwesome/docs/assets/js/tw-bs-201/bootstrap-scrollspy.js +125 -0
  287. data/app/assets/packages/burp/editing/dep/FontAwesome/docs/assets/js/tw-bs-201/bootstrap-tab.js +130 -0
  288. data/app/assets/packages/burp/editing/dep/FontAwesome/docs/assets/js/tw-bs-201/bootstrap-tooltip.js +270 -0
  289. data/app/assets/packages/burp/editing/dep/FontAwesome/docs/assets/js/tw-bs-201/bootstrap-transition.js +51 -0
  290. data/app/assets/packages/burp/editing/dep/FontAwesome/docs/assets/js/tw-bs-201/bootstrap-typeahead.js +271 -0
  291. data/app/assets/packages/burp/editing/dep/FontAwesome/docs/assets/js/underscore.min.js +31 -0
  292. data/app/assets/packages/burp/editing/dep/FontAwesome/docs/assets/less/font-awesome-ie7.less +245 -0
  293. data/app/assets/packages/burp/editing/dep/FontAwesome/docs/assets/less/font-awesome.less +327 -0
  294. data/app/assets/packages/burp/editing/dep/FontAwesome/docs/assets/less/font-site.less +26 -0
  295. data/app/assets/packages/burp/editing/dep/FontAwesome/docs/assets/less/mixins.less +43 -0
  296. data/app/assets/packages/burp/editing/dep/FontAwesome/docs/assets/less/site.less +300 -0
  297. data/app/assets/packages/burp/editing/dep/FontAwesome/docs/assets/less/twbs-203/accordion.less +33 -0
  298. data/app/assets/packages/burp/editing/dep/FontAwesome/docs/assets/less/twbs-203/alerts.less +58 -0
  299. data/app/assets/packages/burp/editing/dep/FontAwesome/docs/assets/less/twbs-203/bootstrap.less +62 -0
  300. data/app/assets/packages/burp/editing/dep/FontAwesome/docs/assets/less/twbs-203/breadcrumbs.less +24 -0
  301. data/app/assets/packages/burp/editing/dep/FontAwesome/docs/assets/less/twbs-203/button-groups.less +191 -0
  302. data/app/assets/packages/burp/editing/dep/FontAwesome/docs/assets/less/twbs-203/buttons.less +191 -0
  303. data/app/assets/packages/burp/editing/dep/FontAwesome/docs/assets/less/twbs-203/carousel.less +121 -0
  304. data/app/assets/packages/burp/editing/dep/FontAwesome/docs/assets/less/twbs-203/close.less +29 -0
  305. data/app/assets/packages/burp/editing/dep/FontAwesome/docs/assets/less/twbs-203/code.less +57 -0
  306. data/app/assets/packages/burp/editing/dep/FontAwesome/docs/assets/less/twbs-203/component-animations.less +20 -0
  307. data/app/assets/packages/burp/editing/dep/FontAwesome/docs/assets/less/twbs-203/dropdowns.less +143 -0
  308. data/app/assets/packages/burp/editing/dep/FontAwesome/docs/assets/less/twbs-203/forms.less +584 -0
  309. data/app/assets/packages/burp/editing/dep/FontAwesome/docs/assets/less/twbs-203/grid.less +5 -0
  310. data/app/assets/packages/burp/editing/dep/FontAwesome/docs/assets/less/twbs-203/hero-unit.less +22 -0
  311. data/app/assets/packages/burp/editing/dep/FontAwesome/docs/assets/less/twbs-203/labels-badges.less +55 -0
  312. data/app/assets/packages/burp/editing/dep/FontAwesome/docs/assets/less/twbs-203/layouts.less +17 -0
  313. data/app/assets/packages/burp/editing/dep/FontAwesome/docs/assets/less/twbs-203/mixins.less +631 -0
  314. data/app/assets/packages/burp/editing/dep/FontAwesome/docs/assets/less/twbs-203/modals.less +90 -0
  315. data/app/assets/packages/burp/editing/dep/FontAwesome/docs/assets/less/twbs-203/navbar.less +364 -0
  316. data/app/assets/packages/burp/editing/dep/FontAwesome/docs/assets/less/twbs-203/navs.less +363 -0
  317. data/app/assets/packages/burp/editing/dep/FontAwesome/docs/assets/less/twbs-203/pager.less +36 -0
  318. data/app/assets/packages/burp/editing/dep/FontAwesome/docs/assets/less/twbs-203/pagination.less +56 -0
  319. data/app/assets/packages/burp/editing/dep/FontAwesome/docs/assets/less/twbs-203/popovers.less +49 -0
  320. data/app/assets/packages/burp/editing/dep/FontAwesome/docs/assets/less/twbs-203/progress-bars.less +117 -0
  321. data/app/assets/packages/burp/editing/dep/FontAwesome/docs/assets/less/twbs-203/reset.less +126 -0
  322. data/app/assets/packages/burp/editing/dep/FontAwesome/docs/assets/less/twbs-203/responsive-1200px-min.less +26 -0
  323. data/app/assets/packages/burp/editing/dep/FontAwesome/docs/assets/less/twbs-203/responsive-767px-max.less +149 -0
  324. data/app/assets/packages/burp/editing/dep/FontAwesome/docs/assets/less/twbs-203/responsive-768px-979px.less +17 -0
  325. data/app/assets/packages/burp/editing/dep/FontAwesome/docs/assets/less/twbs-203/responsive-navbar.less +146 -0
  326. data/app/assets/packages/burp/editing/dep/FontAwesome/docs/assets/less/twbs-203/responsive-utilities.less +41 -0
  327. data/app/assets/packages/burp/editing/dep/FontAwesome/docs/assets/less/twbs-203/responsive.less +48 -0
  328. data/app/assets/packages/burp/editing/dep/FontAwesome/docs/assets/less/twbs-203/scaffolding.less +29 -0
  329. data/app/assets/packages/burp/editing/dep/FontAwesome/docs/assets/less/twbs-203/sprites.less +191 -0
  330. data/app/assets/packages/burp/editing/dep/FontAwesome/docs/assets/less/twbs-203/tables.less +176 -0
  331. data/app/assets/packages/burp/editing/dep/FontAwesome/docs/assets/less/twbs-203/thumbnails.less +47 -0
  332. data/app/assets/packages/burp/editing/dep/FontAwesome/docs/assets/less/twbs-203/tooltip.less +35 -0
  333. data/app/assets/packages/burp/editing/dep/FontAwesome/docs/assets/less/twbs-203/type.less +235 -0
  334. data/app/assets/packages/burp/editing/dep/FontAwesome/docs/assets/less/twbs-203/utilities.less +23 -0
  335. data/app/assets/packages/burp/editing/dep/FontAwesome/docs/assets/less/twbs-203/variables.less +205 -0
  336. data/app/assets/packages/burp/editing/dep/FontAwesome/docs/assets/less/twbs-203/wells.less +27 -0
  337. data/app/assets/packages/burp/editing/dep/FontAwesome/docs/assets/less/variables.less +206 -0
  338. data/app/assets/packages/burp/editing/dep/FontAwesome/docs/index.html +1087 -0
  339. data/app/assets/packages/burp/editing/dep/FontAwesome/font/fontawesome-webfont.eot +0 -0
  340. data/app/assets/packages/burp/editing/dep/FontAwesome/font/fontawesome-webfont.svg +255 -0
  341. data/app/assets/packages/burp/editing/dep/FontAwesome/font/fontawesome-webfont.ttf +0 -0
  342. data/app/assets/packages/burp/editing/dep/FontAwesome/font/fontawesome-webfont.woff +0 -0
  343. data/app/assets/packages/burp/editing/dep/FontAwesome/less/font-awesome-ie7.less +245 -0
  344. data/app/assets/packages/burp/editing/dep/FontAwesome/less/font-awesome.less +329 -0
  345. data/app/assets/packages/burp/editing/dep/FontAwesome/sass/font-awesome.sass +712 -0
  346. data/app/assets/packages/burp/editing/dep/FontAwesome/sass/font-awesome.scss +329 -0
  347. data/app/assets/packages/burp/editing/js/admin-dock.js +282 -0
  348. data/app/assets/packages/burp/editing/js/content-decorator.js +321 -0
  349. data/app/assets/packages/burp/editing/js/main.js +331 -0
  350. data/app/assets/packages/burp/editing/js/marked.js +781 -0
  351. data/app/assets/packages/burp/editing/js/md5.js +207 -0
  352. data/app/assets/packages/burp/editing/js/stay.js +143 -0
  353. data/app/assets/packages/burp/editing.js +23 -0
  354. data/app/assets/packages/burp/editing.less +7 -0
  355. data/app/assets/packages/gritter/README.markdown +57 -0
  356. data/app/assets/packages/gritter/css/jquery.gritter.less +101 -0
  357. data/app/assets/packages/gritter/gritter.js +3 -0
  358. data/app/assets/packages/gritter/gritter.less +3 -0
  359. data/app/assets/packages/gritter/images/gritter-light.png +0 -0
  360. data/app/assets/packages/gritter/images/gritter-long.png +0 -0
  361. data/app/assets/packages/gritter/images/gritter.png +0 -0
  362. data/app/assets/packages/gritter/images/ie-spacer.gif +0 -0
  363. data/app/assets/packages/gritter/images/trees.jpg +0 -0
  364. data/app/assets/packages/gritter/index.html +269 -0
  365. data/app/assets/packages/gritter/js/jquery.gritter.js +418 -0
  366. data/app/assets/packages/gritter/js/jquery.gritter.min.js +1 -0
  367. data/app/assets/stylesheets/burp/application.less +82 -0
  368. data/app/assets/stylesheets/burp/bootstrap.less +6158 -0
  369. data/app/assets/stylesheets/burp/docs.less +83 -0
  370. data/app/assets/stylesheets/burp/fileupload.less +31 -0
  371. data/app/assets/stylesheets/burp/views/dnd-menu.less +87 -0
  372. data/app/assets/stylesheets/burp/views/files/index.less +40 -0
  373. data/app/assets/stylesheets/burp/views/pages/index.less +4 -0
  374. data/app/assets/stylesheets/burp/views/static/help.less +11 -0
  375. data/app/controllers/burp/application_controller.rb +45 -0
  376. data/app/controllers/burp/catch_all_controller.rb +24 -0
  377. data/app/controllers/burp/error_controller.rb +7 -0
  378. data/app/controllers/burp/files_controller.rb +92 -0
  379. data/app/controllers/burp/groups_controller.rb +49 -0
  380. data/app/controllers/burp/links_controller.rb +48 -0
  381. data/app/controllers/burp/menus_controller.rb +33 -0
  382. data/app/controllers/burp/pages_controller.rb +112 -0
  383. data/app/controllers/burp/static_controller.rb +11 -0
  384. data/app/helpers/burp/application_helper.rb +4 -0
  385. data/app/lib/burp/access.rb +63 -0
  386. data/app/lib/burp/group.rb +110 -0
  387. data/app/lib/burp/link.rb +66 -0
  388. data/app/lib/burp/page.rb +23 -0
  389. data/app/lib/burp/util/upload_handler.rb +84 -0
  390. data/app/lib/burp/util.rb +39 -0
  391. data/app/models/burp/file_model.rb +45 -0
  392. data/app/models/burp/menu.rb +60 -0
  393. data/app/models/burp/page_model.rb +158 -0
  394. data/app/views/burp/files/index.html.erb +87 -0
  395. data/app/views/burp/groups/edit.html.erb +18 -0
  396. data/app/views/burp/links/edit.html.erb +19 -0
  397. data/app/views/burp/menus/edit.html.erb +157 -0
  398. data/app/views/burp/menus/index.html.erb +9 -0
  399. data/app/views/burp/pages/edit.html.erb +20 -0
  400. data/app/views/burp/pages/index.html.erb +114 -0
  401. data/app/views/burp/static/help.html.erb +543 -0
  402. data/app/views/burp/static/index.html.erb +15 -0
  403. data/app/views/layouts/burp/application.html.erb +57 -0
  404. data/config/cucumber.yml +12 -0
  405. data/config/initializers/bootstrap_form.rb +2 -0
  406. data/config/routes.rb +30 -0
  407. data/lib/burp/capistrano.rb +51 -0
  408. data/lib/burp/engine.rb +15 -0
  409. data/lib/burp/version.rb +3 -0
  410. data/lib/burp_cms.rb +64 -0
  411. data/lib/tasks/burp_tasks.rake +99 -0
  412. metadata +845 -0
@@ -0,0 +1,781 @@
1
+ /**
2
+ * marked - A markdown parser (https://github.com/chjj/marked)
3
+ * Copyright (c) 2011-2012, Christopher Jeffrey. (MIT Licensed)
4
+ */
5
+
6
+ ;(function() {
7
+
8
+ /**
9
+ * Block-Level Grammar
10
+ */
11
+
12
+ var block = {
13
+ newline: /^\n+/,
14
+ code: /^( {4}[^\n]+\n*)+/,
15
+ fences: noop,
16
+ hr: /^( *[-*_]){3,} *(?:\n+|$)/,
17
+ heading: /^ *(#{1,6}) *([^\n]+?) *#* *(?:\n+|$)/,
18
+ lheading: /^([^\n]+)\n *(=|-){3,} *\n*/,
19
+ blockquote: /^( *>[^\n]+(\n[^\n]+)*\n*)+/,
20
+ list: /^( *)(bull) [\s\S]+?(?:hr|\n{2,}(?! )(?!\1bull )\n*|\s*$)/,
21
+ html: /^ *(?:comment|closed|closing) *(?:\n{2,}|\s*$)/,
22
+ def: /^ *\[([^\]]+)\]: *([^\s]+)(?: +["(]([^\n]+)[")])? *(?:\n+|$)/,
23
+ paragraph: /^([^\n]+\n?(?!hr|heading|lheading|blockquote|tag|def))+\n*/,
24
+ text: /^[^\n]+/
25
+ };
26
+
27
+ block.bullet = /(?:[*+-]|\d+\.)/;
28
+ block.item = /^( *)(bull) [^\n]*(?:\n(?!\1bull )[^\n]*)*/;
29
+ block.item = replace(block.item, 'gm')
30
+ (/bull/g, block.bullet)
31
+ ();
32
+
33
+ block.list = replace(block.list)
34
+ (/bull/g, block.bullet)
35
+ ('hr', /\n+(?=(?: *[-*_]){3,} *(?:\n+|$))/)
36
+ ();
37
+
38
+ block.html = replace(block.html)
39
+ ('comment', /<!--[\s\S]*?-->/)
40
+ ('closed', /<(tag)[\s\S]+?<\/\1>/)
41
+ ('closing', /<tag(?:"[^"]*"|'[^']*'|[^'">])*?>/)
42
+ (/tag/g, tag())
43
+ ();
44
+
45
+ block.paragraph = replace(block.paragraph)
46
+ ('hr', block.hr)
47
+ ('heading', block.heading)
48
+ ('lheading', block.lheading)
49
+ ('blockquote', block.blockquote)
50
+ ('tag', '<' + tag())
51
+ ('def', block.def)
52
+ ();
53
+
54
+ block.normal = {
55
+ fences: block.fences,
56
+ paragraph: block.paragraph
57
+ };
58
+
59
+ block.gfm = {
60
+ fences: /^ *(```|~~~) *(\w+)? *\n([\s\S]+?)\s*\1 *(?:\n+|$)/,
61
+ paragraph: /^/
62
+ };
63
+
64
+ block.gfm.paragraph = replace(block.paragraph)
65
+ ('(?!', '(?!' + block.gfm.fences.source.replace('\\1', '\\2') + '|')
66
+ ();
67
+
68
+ /**
69
+ * Block Lexer
70
+ */
71
+
72
+ block.lexer = function(src) {
73
+ var tokens = [];
74
+
75
+ tokens.links = {};
76
+
77
+ src = src
78
+ .replace(/\r\n|\r/g, '\n')
79
+ .replace(/\t/g, ' ');
80
+
81
+ return block.token(src, tokens, true);
82
+ };
83
+
84
+ block.token = function(src, tokens, top) {
85
+ var src = src.replace(/^ +$/gm, '')
86
+ , next
87
+ , loose
88
+ , cap
89
+ , item
90
+ , space
91
+ , i
92
+ , l;
93
+
94
+ while (src) {
95
+ // newline
96
+ if (cap = block.newline.exec(src)) {
97
+ src = src.substring(cap[0].length);
98
+ if (cap[0].length > 1) {
99
+ tokens.push({
100
+ type: 'space'
101
+ });
102
+ }
103
+ }
104
+
105
+ // code
106
+ if (cap = block.code.exec(src)) {
107
+ src = src.substring(cap[0].length);
108
+ cap = cap[0].replace(/^ {4}/gm, '');
109
+ tokens.push({
110
+ type: 'code',
111
+ text: !options.pedantic
112
+ ? cap.replace(/\n+$/, '')
113
+ : cap
114
+ });
115
+ continue;
116
+ }
117
+
118
+ // fences (gfm)
119
+ if (cap = block.fences.exec(src)) {
120
+ src = src.substring(cap[0].length);
121
+ tokens.push({
122
+ type: 'code',
123
+ lang: cap[2],
124
+ text: cap[3]
125
+ });
126
+ continue;
127
+ }
128
+
129
+ // heading
130
+ if (cap = block.heading.exec(src)) {
131
+ src = src.substring(cap[0].length);
132
+ tokens.push({
133
+ type: 'heading',
134
+ depth: cap[1].length,
135
+ text: cap[2]
136
+ });
137
+ continue;
138
+ }
139
+
140
+ // lheading
141
+ if (cap = block.lheading.exec(src)) {
142
+ src = src.substring(cap[0].length);
143
+ tokens.push({
144
+ type: 'heading',
145
+ depth: cap[2] === '=' ? 1 : 2,
146
+ text: cap[1]
147
+ });
148
+ continue;
149
+ }
150
+
151
+ // hr
152
+ if (cap = block.hr.exec(src)) {
153
+ src = src.substring(cap[0].length);
154
+ tokens.push({
155
+ type: 'hr'
156
+ });
157
+ continue;
158
+ }
159
+
160
+ // blockquote
161
+ if (cap = block.blockquote.exec(src)) {
162
+ src = src.substring(cap[0].length);
163
+
164
+ tokens.push({
165
+ type: 'blockquote_start'
166
+ });
167
+
168
+ cap = cap[0].replace(/^ *> ?/gm, '');
169
+
170
+ // Pass `top` to keep the current
171
+ // "toplevel" state. This is exactly
172
+ // how markdown.pl works.
173
+ block.token(cap, tokens, top);
174
+
175
+ tokens.push({
176
+ type: 'blockquote_end'
177
+ });
178
+
179
+ continue;
180
+ }
181
+
182
+ // list
183
+ if (cap = block.list.exec(src)) {
184
+ src = src.substring(cap[0].length);
185
+
186
+ tokens.push({
187
+ type: 'list_start',
188
+ ordered: isFinite(cap[2])
189
+ });
190
+
191
+ // Get each top-level item.
192
+ cap = cap[0].match(block.item);
193
+
194
+ next = false;
195
+ l = cap.length;
196
+ i = 0;
197
+
198
+ for (; i < l; i++) {
199
+ item = cap[i];
200
+
201
+ // Remove the list item's bullet
202
+ // so it is seen as the next token.
203
+ space = item.length;
204
+ item = item.replace(/^ *([*+-]|\d+\.) +/, '');
205
+
206
+ // Outdent whatever the
207
+ // list item contains. Hacky.
208
+ if (~item.indexOf('\n ')) {
209
+ space -= item.length;
210
+ item = !options.pedantic
211
+ ? item.replace(new RegExp('^ {1,' + space + '}', 'gm'), '')
212
+ : item.replace(/^ {1,4}/gm, '');
213
+ }
214
+
215
+ // Determine whether item is loose or not.
216
+ // Use: /(^|\n)(?! )[^\n]+\n\n(?!\s*$)/
217
+ // for discount behavior.
218
+ loose = next || /\n\n(?!\s*$)/.test(item);
219
+ if (i !== l - 1) {
220
+ next = item[item.length-1] === '\n';
221
+ if (!loose) loose = next;
222
+ }
223
+
224
+ tokens.push({
225
+ type: loose
226
+ ? 'loose_item_start'
227
+ : 'list_item_start'
228
+ });
229
+
230
+ // Recurse.
231
+ block.token(item, tokens);
232
+
233
+ tokens.push({
234
+ type: 'list_item_end'
235
+ });
236
+ }
237
+
238
+ tokens.push({
239
+ type: 'list_end'
240
+ });
241
+
242
+ continue;
243
+ }
244
+
245
+ // html
246
+ if (cap = block.html.exec(src)) {
247
+ src = src.substring(cap[0].length);
248
+ tokens.push({
249
+ type: options.sanitize
250
+ ? 'paragraph'
251
+ : 'html',
252
+ pre: cap[1] === 'pre',
253
+ text: cap[0]
254
+ });
255
+ continue;
256
+ }
257
+
258
+ // def
259
+ if (top && (cap = block.def.exec(src))) {
260
+ src = src.substring(cap[0].length);
261
+ tokens.links[cap[1].toLowerCase()] = {
262
+ href: cap[2],
263
+ title: cap[3]
264
+ };
265
+ continue;
266
+ }
267
+
268
+ // top-level paragraph
269
+ if (top && (cap = block.paragraph.exec(src))) {
270
+ src = src.substring(cap[0].length);
271
+ tokens.push({
272
+ type: 'paragraph',
273
+ text: cap[0]
274
+ });
275
+ continue;
276
+ }
277
+
278
+ // text
279
+ if (cap = block.text.exec(src)) {
280
+ // Top-level should never reach here.
281
+ src = src.substring(cap[0].length);
282
+ tokens.push({
283
+ type: 'text',
284
+ text: cap[0]
285
+ });
286
+ continue;
287
+ }
288
+ }
289
+
290
+ return tokens;
291
+ };
292
+
293
+ /**
294
+ * Inline Processing
295
+ */
296
+
297
+ var inline = {
298
+ escape: /^\\([\\`*{}\[\]()#+\-.!_>])/,
299
+ autolink: /^<([^ >]+(@|:\/)[^ >]+)>/,
300
+ url: noop,
301
+ tag: /^<!--[\s\S]*?-->|^<\/?\w+(?:"[^"]*"|'[^']*'|[^'">])*?>/,
302
+ link: /^!?\[(inside)\]\(href\)/,
303
+ reflink: /^!?\[(inside)\]\s*\[([^\]]*)\]/,
304
+ nolink: /^!?\[((?:\[[^\]]*\]|[^\[\]])*)\]/,
305
+ strong: /^__([\s\S]+?)__(?!_)|^\*\*([\s\S]+?)\*\*(?!\*)/,
306
+ em: /^\b_((?:__|[\s\S])+?)_\b|^\*((?:\*\*|[\s\S])+?)\*(?!\*)/,
307
+ code: /^(`+)([\s\S]*?[^`])\1(?!`)/,
308
+ br: /^ {2,}\n(?!\s*$)/,
309
+ text: /^[\s\S]+?(?=[\\<!\[_*`]| {2,}\n|$)/
310
+ };
311
+
312
+ inline._linkInside = /(?:\[[^\]]*\]|[^\]]|\](?=[^\[]*\]))*/;
313
+ inline._linkHref = /\s*<?([^\s]*?)>?(?:\s+['"]([\s\S]*?)['"])?\s*/;
314
+
315
+ inline.link = replace(inline.link)
316
+ ('inside', inline._linkInside)
317
+ ('href', inline._linkHref)
318
+ ();
319
+
320
+ inline.reflink = replace(inline.reflink)
321
+ ('inside', inline._linkInside)
322
+ ();
323
+
324
+ inline.normal = {
325
+ url: inline.url,
326
+ strong: inline.strong,
327
+ em: inline.em,
328
+ text: inline.text
329
+ };
330
+
331
+ inline.pedantic = {
332
+ strong: /^__(?=\S)([\s\S]*?\S)__(?!_)|^\*\*(?=\S)([\s\S]*?\S)\*\*(?!\*)/,
333
+ em: /^_(?=\S)([\s\S]*?\S)_(?!_)|^\*(?=\S)([\s\S]*?\S)\*(?!\*)/
334
+ };
335
+
336
+ inline.gfm = {
337
+ url: /^(https?:\/\/[^\s]+[^.,:;"')\]\s])/,
338
+ text: /^[\s\S]+?(?=[\\<!\[_*`]|https?:\/\/| {2,}\n|$)/
339
+ };
340
+
341
+ /**
342
+ * Inline Lexer
343
+ */
344
+
345
+ inline.lexer = function(src) {
346
+ var out = ''
347
+ , links = tokens.links
348
+ , link
349
+ , text
350
+ , href
351
+ , cap;
352
+
353
+ while (src) {
354
+ // escape
355
+ if (cap = inline.escape.exec(src)) {
356
+ src = src.substring(cap[0].length);
357
+ out += cap[1];
358
+ continue;
359
+ }
360
+
361
+ // autolink
362
+ if (cap = inline.autolink.exec(src)) {
363
+ src = src.substring(cap[0].length);
364
+ if (cap[2] === '@') {
365
+ text = cap[1][6] === ':'
366
+ ? mangle(cap[1].substring(7))
367
+ : mangle(cap[1]);
368
+ href = mangle('mailto:') + text;
369
+ } else {
370
+ text = escape(cap[1]);
371
+ href = text;
372
+ }
373
+ out += '<a href="'
374
+ + href
375
+ + '">'
376
+ + text
377
+ + '</a>';
378
+ continue;
379
+ }
380
+
381
+ // url (gfm)
382
+ if (cap = inline.url.exec(src)) {
383
+ src = src.substring(cap[0].length);
384
+ text = escape(cap[1]);
385
+ href = text;
386
+ out += '<a href="'
387
+ + href
388
+ + '">'
389
+ + text
390
+ + '</a>';
391
+ continue;
392
+ }
393
+
394
+ // tag
395
+ if (cap = inline.tag.exec(src)) {
396
+ src = src.substring(cap[0].length);
397
+ out += options.sanitize
398
+ ? escape(cap[0])
399
+ : cap[0];
400
+ continue;
401
+ }
402
+
403
+ // link
404
+ if (cap = inline.link.exec(src)) {
405
+ src = src.substring(cap[0].length);
406
+ out += outputLink(cap, {
407
+ href: cap[2],
408
+ title: cap[3]
409
+ });
410
+ continue;
411
+ }
412
+
413
+ // reflink, nolink
414
+ if ((cap = inline.reflink.exec(src))
415
+ || (cap = inline.nolink.exec(src))) {
416
+ src = src.substring(cap[0].length);
417
+ link = (cap[2] || cap[1]).replace(/\s+/g, ' ');
418
+ link = links[link.toLowerCase()];
419
+ if (!link || !link.href) {
420
+ out += cap[0][0];
421
+ src = cap[0].substring(1) + src;
422
+ continue;
423
+ }
424
+ out += outputLink(cap, link);
425
+ continue;
426
+ }
427
+
428
+ // strong
429
+ if (cap = inline.strong.exec(src)) {
430
+ src = src.substring(cap[0].length);
431
+ out += '<strong>'
432
+ + inline.lexer(cap[2] || cap[1])
433
+ + '</strong>';
434
+ continue;
435
+ }
436
+
437
+ // em
438
+ if (cap = inline.em.exec(src)) {
439
+ src = src.substring(cap[0].length);
440
+ out += '<em>'
441
+ + inline.lexer(cap[2] || cap[1])
442
+ + '</em>';
443
+ continue;
444
+ }
445
+
446
+ // code
447
+ if (cap = inline.code.exec(src)) {
448
+ src = src.substring(cap[0].length);
449
+ out += '<code>'
450
+ + escape(cap[2], true)
451
+ + '</code>';
452
+ continue;
453
+ }
454
+
455
+ // br
456
+ if (cap = inline.br.exec(src)) {
457
+ src = src.substring(cap[0].length);
458
+ out += '<br>';
459
+ continue;
460
+ }
461
+
462
+ // text
463
+ if (cap = inline.text.exec(src)) {
464
+ src = src.substring(cap[0].length);
465
+ out += escape(cap[0]);
466
+ continue;
467
+ }
468
+ }
469
+
470
+ return out;
471
+ };
472
+
473
+ function outputLink(cap, link) {
474
+ if (cap[0][0] !== '!') {
475
+ return '<a href="'
476
+ + escape(link.href)
477
+ + '"'
478
+ + (link.title
479
+ ? ' title="'
480
+ + escape(link.title)
481
+ + '"'
482
+ : '')
483
+ + '>'
484
+ + inline.lexer(cap[1])
485
+ + '</a>';
486
+ } else {
487
+ return '<img src="'
488
+ + escape(link.href)
489
+ + '" alt="'
490
+ + escape(cap[1])
491
+ + '"'
492
+ + (link.title
493
+ ? ' title="'
494
+ + escape(link.title)
495
+ + '"'
496
+ : '')
497
+ + '>';
498
+ }
499
+ }
500
+
501
+ /**
502
+ * Parsing
503
+ */
504
+
505
+ var tokens
506
+ , token;
507
+
508
+ function next() {
509
+ return token = tokens.pop();
510
+ }
511
+
512
+ function tok() {
513
+ switch (token.type) {
514
+ case 'space': {
515
+ return '';
516
+ }
517
+ case 'hr': {
518
+ return '<hr>\n';
519
+ }
520
+ case 'heading': {
521
+ return '<h'
522
+ + token.depth
523
+ + '>'
524
+ + inline.lexer(token.text)
525
+ + '</h'
526
+ + token.depth
527
+ + '>\n';
528
+ }
529
+ case 'code': {
530
+ if (options.highlight) {
531
+ token.code = options.highlight(token.text, token.lang);
532
+ if (token.code != null && token.code !== token.text) {
533
+ token.escaped = true;
534
+ token.text = token.code;
535
+ }
536
+ }
537
+
538
+ if (!token.escaped) {
539
+ token.text = escape(token.text, true);
540
+ }
541
+
542
+ return '<pre><code'
543
+ + (token.lang
544
+ ? ' class="lang-'
545
+ + token.lang
546
+ + '"'
547
+ : '')
548
+ + '>'
549
+ + token.text
550
+ + '</code></pre>\n';
551
+ }
552
+ case 'blockquote_start': {
553
+ var body = '';
554
+
555
+ while (next().type !== 'blockquote_end') {
556
+ body += tok();
557
+ }
558
+
559
+ return '<blockquote>\n'
560
+ + body
561
+ + '</blockquote>\n';
562
+ }
563
+ case 'list_start': {
564
+ var type = token.ordered ? 'ol' : 'ul'
565
+ , body = '';
566
+
567
+ while (next().type !== 'list_end') {
568
+ body += tok();
569
+ }
570
+
571
+ return '<'
572
+ + type
573
+ + '>\n'
574
+ + body
575
+ + '</'
576
+ + type
577
+ + '>\n';
578
+ }
579
+ case 'list_item_start': {
580
+ var body = '';
581
+
582
+ while (next().type !== 'list_item_end') {
583
+ body += token.type === 'text'
584
+ ? parseText()
585
+ : tok();
586
+ }
587
+
588
+ return '<li>'
589
+ + body
590
+ + '</li>\n';
591
+ }
592
+ case 'loose_item_start': {
593
+ var body = '';
594
+
595
+ while (next().type !== 'list_item_end') {
596
+ body += tok();
597
+ }
598
+
599
+ return '<li>'
600
+ + body
601
+ + '</li>\n';
602
+ }
603
+ case 'html': {
604
+ return !token.pre && !options.pedantic
605
+ ? inline.lexer(token.text)
606
+ : token.text;
607
+ }
608
+ case 'paragraph': {
609
+ return '<p>'
610
+ + inline.lexer(token.text)
611
+ + '</p>\n';
612
+ }
613
+ case 'text': {
614
+ return '<p>'
615
+ + parseText()
616
+ + '</p>\n';
617
+ }
618
+ }
619
+ }
620
+
621
+ function parseText() {
622
+ var body = token.text
623
+ , top;
624
+
625
+ while ((top = tokens[tokens.length-1])
626
+ && top.type === 'text') {
627
+ body += '\n' + next().text;
628
+ }
629
+
630
+ return inline.lexer(body);
631
+ }
632
+
633
+ function parse(src) {
634
+ tokens = src.reverse();
635
+
636
+ var out = '';
637
+ while (next()) {
638
+ out += tok();
639
+ }
640
+
641
+ tokens = null;
642
+ token = null;
643
+
644
+ return out;
645
+ }
646
+
647
+ /**
648
+ * Helpers
649
+ */
650
+
651
+ function escape(html, encode) {
652
+ return html
653
+ .replace(!encode ? /&(?!#?\w+;)/g : /&/g, '&amp;')
654
+ .replace(/</g, '&lt;')
655
+ .replace(/>/g, '&gt;')
656
+ .replace(/"/g, '&quot;')
657
+ .replace(/'/g, '&#39;');
658
+ }
659
+
660
+ function mangle(text) {
661
+ var out = ''
662
+ , l = text.length
663
+ , i = 0
664
+ , ch;
665
+
666
+ for (; i < l; i++) {
667
+ ch = text.charCodeAt(i);
668
+ if (Math.random() > 0.5) {
669
+ ch = 'x' + ch.toString(16);
670
+ }
671
+ out += '&#' + ch + ';';
672
+ }
673
+
674
+ return out;
675
+ }
676
+
677
+ function tag() {
678
+ var tag = '(?!(?:'
679
+ + 'a|em|strong|small|s|cite|q|dfn|abbr|data|time|code'
680
+ + '|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo'
681
+ + '|span|br|wbr|ins|del|img)\\b)\\w+(?!:/|@)\\b';
682
+
683
+ return tag;
684
+ }
685
+
686
+ function replace(regex, opt) {
687
+ regex = regex.source;
688
+ opt = opt || '';
689
+ return function self(name, val) {
690
+ if (!name) return new RegExp(regex, opt);
691
+ val = val.source || val;
692
+ val = val.replace(/(^|[^\[])\^/g, '$1');
693
+ regex = regex.replace(name, val);
694
+ return self;
695
+ };
696
+ }
697
+
698
+ function noop() {}
699
+ noop.exec = noop;
700
+
701
+ /**
702
+ * Marked
703
+ */
704
+
705
+ function marked(src, opt) {
706
+ setOptions(opt);
707
+ return parse(block.lexer(src));
708
+ }
709
+
710
+ /**
711
+ * Options
712
+ */
713
+
714
+ var options
715
+ , defaults;
716
+
717
+ function setOptions(opt) {
718
+ if (!opt) opt = defaults;
719
+ if (options === opt) return;
720
+ options = opt;
721
+
722
+ if (options.gfm) {
723
+ block.fences = block.gfm.fences;
724
+ block.paragraph = block.gfm.paragraph;
725
+ inline.text = inline.gfm.text;
726
+ inline.url = inline.gfm.url;
727
+ } else {
728
+ block.fences = block.normal.fences;
729
+ block.paragraph = block.normal.paragraph;
730
+ inline.text = inline.normal.text;
731
+ inline.url = inline.normal.url;
732
+ }
733
+
734
+ if (options.pedantic) {
735
+ inline.em = inline.pedantic.em;
736
+ inline.strong = inline.pedantic.strong;
737
+ } else {
738
+ inline.em = inline.normal.em;
739
+ inline.strong = inline.normal.strong;
740
+ }
741
+ }
742
+
743
+ marked.options =
744
+ marked.setOptions = function(opt) {
745
+ defaults = opt;
746
+ setOptions(opt);
747
+ return marked;
748
+ };
749
+
750
+ marked.setOptions({
751
+ gfm: true,
752
+ pedantic: false,
753
+ sanitize: false,
754
+ highlight: null
755
+ });
756
+
757
+ /**
758
+ * Expose
759
+ */
760
+
761
+ marked.parser = function(src, opt) {
762
+ setOptions(opt);
763
+ return parse(src);
764
+ };
765
+
766
+ marked.lexer = function(src, opt) {
767
+ setOptions(opt);
768
+ return block.lexer(src);
769
+ };
770
+
771
+ marked.parse = marked;
772
+
773
+ if (typeof module !== 'undefined') {
774
+ module.exports = marked;
775
+ } else {
776
+ this.marked = marked;
777
+ }
778
+
779
+ }).call(function() {
780
+ return this || (typeof window !== 'undefined' ? window : global);
781
+ }());