keppler 2.1.17 → 2.1.18

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 (571) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +2 -2
  3. data/installer/core/.gitignore +88 -0
  4. data/installer/core/app/views/admin/layouts/_sidebar.html.haml +2 -2
  5. data/installer/core/rockets/keppler_frontend/app/controllers/keppler_frontend/app/frontend_controller.rb +0 -1
  6. data/installer/core/rockets/keppler_frontend/app/models/keppler_frontend/view.rb +1 -1
  7. data/installer/core/rockets/keppler_frontend/config/data/views.yml +1 -1
  8. data/lib/keppler/version.rb +1 -1
  9. data/testing-with-2.1.18/.gitignore +88 -0
  10. data/testing-with-2.1.18/.ruby-version +1 -0
  11. data/testing-with-2.1.18/Gemfile +149 -0
  12. data/testing-with-2.1.18/Gemfile.lock +645 -0
  13. data/testing-with-2.1.18/Guardfile +18 -0
  14. data/testing-with-2.1.18/LICENSE +674 -0
  15. data/testing-with-2.1.18/README.md +134 -0
  16. data/testing-with-2.1.18/Rakefile +6 -0
  17. data/testing-with-2.1.18/_config.yml +1 -0
  18. data/testing-with-2.1.18/app/assets/images/.keep +0 -0
  19. data/testing-with-2.1.18/app/assets/images/admin/astronauta_keppler.svg +123 -0
  20. data/testing-with-2.1.18/app/assets/images/admin/avatar_keppler.svg +100 -0
  21. data/testing-with-2.1.18/app/assets/images/admin/en.png +0 -0
  22. data/testing-with-2.1.18/app/assets/images/admin/es.png +0 -0
  23. data/testing-with-2.1.18/app/assets/images/admin/favicon.png +0 -0
  24. data/testing-with-2.1.18/app/assets/images/admin/image_default.png +0 -0
  25. data/testing-with-2.1.18/app/assets/images/admin/logo.png +0 -0
  26. data/testing-with-2.1.18/app/assets/images/admin/logo2.png +0 -0
  27. data/testing-with-2.1.18/app/assets/images/admin/profile-menu.jpg +0 -0
  28. data/testing-with-2.1.18/app/assets/images/admin/search.png +0 -0
  29. data/testing-with-2.1.18/app/assets/images/admin/slice-icon-orange.png +0 -0
  30. data/testing-with-2.1.18/app/assets/images/admin/slice-icon.png +0 -0
  31. data/testing-with-2.1.18/app/assets/images/admin/slice.png +0 -0
  32. data/testing-with-2.1.18/app/assets/images/admin/slice_white.png +0 -0
  33. data/testing-with-2.1.18/app/assets/images/app/Cohete_nubes_new.png +0 -0
  34. data/testing-with-2.1.18/app/assets/images/app/Home_Keppler.png +0 -0
  35. data/testing-with-2.1.18/app/assets/images/app/Home_Keppler2.png +0 -0
  36. data/testing-with-2.1.18/app/assets/images/app/fondo.svg +19 -0
  37. data/testing-with-2.1.18/app/assets/images/app/keppler-front.png +0 -0
  38. data/testing-with-2.1.18/app/assets/images/app/slice-front.png +0 -0
  39. data/testing-with-2.1.18/app/assets/images/app/slice.png +0 -0
  40. data/testing-with-2.1.18/app/assets/javascripts/admin/application.coffee +25 -0
  41. data/testing-with-2.1.18/app/assets/javascripts/admin/bootstrap-colorpicker.js +1322 -0
  42. data/testing-with-2.1.18/app/assets/javascripts/admin/bootstrap-file-input/fileinput.js +4463 -0
  43. data/testing-with-2.1.18/app/assets/javascripts/admin/bootstrap-file-input/locales/LANG.js +100 -0
  44. data/testing-with-2.1.18/app/assets/javascripts/admin/bootstrap-file-input/locales/es.js +100 -0
  45. data/testing-with-2.1.18/app/assets/javascripts/admin/bootstrap-file-input/plugins/piexif.js +2471 -0
  46. data/testing-with-2.1.18/app/assets/javascripts/admin/bootstrap-file-input/plugins/piexif.min.js +1 -0
  47. data/testing-with-2.1.18/app/assets/javascripts/admin/bootstrap-file-input/plugins/purify.js +812 -0
  48. data/testing-with-2.1.18/app/assets/javascripts/admin/bootstrap-file-input/plugins/purify.min.js +1 -0
  49. data/testing-with-2.1.18/app/assets/javascripts/admin/bootstrap-file-input/plugins/sortable.js +1590 -0
  50. data/testing-with-2.1.18/app/assets/javascripts/admin/bootstrap-file-input/plugins/sortable.min.js +1 -0
  51. data/testing-with-2.1.18/app/assets/javascripts/admin/code_editor.js +94 -0
  52. data/testing-with-2.1.18/app/assets/javascripts/admin/codemirror/addon/comment/comment.js +209 -0
  53. data/testing-with-2.1.18/app/assets/javascripts/admin/codemirror/addon/comment/continuecomment.js +78 -0
  54. data/testing-with-2.1.18/app/assets/javascripts/admin/codemirror/addon/dialog/dialog.css +32 -0
  55. data/testing-with-2.1.18/app/assets/javascripts/admin/codemirror/addon/dialog/dialog.js +161 -0
  56. data/testing-with-2.1.18/app/assets/javascripts/admin/codemirror/addon/display/autorefresh.js +47 -0
  57. data/testing-with-2.1.18/app/assets/javascripts/admin/codemirror/addon/display/fullscreen.css +6 -0
  58. data/testing-with-2.1.18/app/assets/javascripts/admin/codemirror/addon/display/fullscreen.js +41 -0
  59. data/testing-with-2.1.18/app/assets/javascripts/admin/codemirror/addon/display/panel.js +123 -0
  60. data/testing-with-2.1.18/app/assets/javascripts/admin/codemirror/addon/display/placeholder.js +63 -0
  61. data/testing-with-2.1.18/app/assets/javascripts/admin/codemirror/addon/display/rulers.js +51 -0
  62. data/testing-with-2.1.18/app/assets/javascripts/admin/codemirror/addon/edit/closebrackets.js +194 -0
  63. data/testing-with-2.1.18/app/assets/javascripts/admin/codemirror/addon/edit/closetag.js +175 -0
  64. data/testing-with-2.1.18/app/assets/javascripts/admin/codemirror/addon/edit/continuelist.js +89 -0
  65. data/testing-with-2.1.18/app/assets/javascripts/admin/codemirror/addon/edit/matchbrackets.js +145 -0
  66. data/testing-with-2.1.18/app/assets/javascripts/admin/codemirror/addon/edit/matchtags.js +66 -0
  67. data/testing-with-2.1.18/app/assets/javascripts/admin/codemirror/addon/edit/trailingspace.js +27 -0
  68. data/testing-with-2.1.18/app/assets/javascripts/admin/codemirror/addon/fold/brace-fold.js +105 -0
  69. data/testing-with-2.1.18/app/assets/javascripts/admin/codemirror/addon/fold/comment-fold.js +59 -0
  70. data/testing-with-2.1.18/app/assets/javascripts/admin/codemirror/addon/fold/foldcode.js +152 -0
  71. data/testing-with-2.1.18/app/assets/javascripts/admin/codemirror/addon/fold/foldgutter.css +20 -0
  72. data/testing-with-2.1.18/app/assets/javascripts/admin/codemirror/addon/fold/foldgutter.js +146 -0
  73. data/testing-with-2.1.18/app/assets/javascripts/admin/codemirror/addon/fold/indent-fold.js +48 -0
  74. data/testing-with-2.1.18/app/assets/javascripts/admin/codemirror/addon/fold/markdown-fold.js +49 -0
  75. data/testing-with-2.1.18/app/assets/javascripts/admin/codemirror/addon/fold/xml-fold.js +184 -0
  76. data/testing-with-2.1.18/app/assets/javascripts/admin/codemirror/addon/hint/anyword-hint.js +41 -0
  77. data/testing-with-2.1.18/app/assets/javascripts/admin/codemirror/addon/hint/css-hint.js +60 -0
  78. data/testing-with-2.1.18/app/assets/javascripts/admin/codemirror/addon/hint/html-hint.js +348 -0
  79. data/testing-with-2.1.18/app/assets/javascripts/admin/codemirror/addon/hint/javascript-hint.js +157 -0
  80. data/testing-with-2.1.18/app/assets/javascripts/admin/codemirror/addon/hint/show-hint.css +36 -0
  81. data/testing-with-2.1.18/app/assets/javascripts/admin/codemirror/addon/hint/show-hint.js +433 -0
  82. data/testing-with-2.1.18/app/assets/javascripts/admin/codemirror/addon/hint/sql-hint.js +299 -0
  83. data/testing-with-2.1.18/app/assets/javascripts/admin/codemirror/addon/hint/xml-hint.js +110 -0
  84. data/testing-with-2.1.18/app/assets/javascripts/admin/codemirror/addon/mode/loadmode.js +64 -0
  85. data/testing-with-2.1.18/app/assets/javascripts/admin/codemirror/addon/mode/multiplex.js +131 -0
  86. data/testing-with-2.1.18/app/assets/javascripts/admin/codemirror/addon/mode/overlay.js +90 -0
  87. data/testing-with-2.1.18/app/assets/javascripts/admin/codemirror/addon/mode/simple.js +216 -0
  88. data/testing-with-2.1.18/app/assets/javascripts/admin/codemirror/addon/scroll/annotatescrollbar.js +122 -0
  89. data/testing-with-2.1.18/app/assets/javascripts/admin/codemirror/addon/scroll/scrollpastend.js +48 -0
  90. data/testing-with-2.1.18/app/assets/javascripts/admin/codemirror/addon/scroll/simplescrollbars.css +66 -0
  91. data/testing-with-2.1.18/app/assets/javascripts/admin/codemirror/addon/scroll/simplescrollbars.js +152 -0
  92. data/testing-with-2.1.18/app/assets/javascripts/admin/codemirror/addon/search/jump-to-line.js +49 -0
  93. data/testing-with-2.1.18/app/assets/javascripts/admin/codemirror/addon/search/match-highlighter.js +165 -0
  94. data/testing-with-2.1.18/app/assets/javascripts/admin/codemirror/addon/search/matchesonscrollbar.css +8 -0
  95. data/testing-with-2.1.18/app/assets/javascripts/admin/codemirror/addon/search/matchesonscrollbar.js +97 -0
  96. data/testing-with-2.1.18/app/assets/javascripts/admin/codemirror/addon/search/search.js +252 -0
  97. data/testing-with-2.1.18/app/assets/javascripts/admin/codemirror/addon/search/searchcursor.js +293 -0
  98. data/testing-with-2.1.18/app/assets/javascripts/admin/codemirror/codemirror.js +9683 -0
  99. data/testing-with-2.1.18/app/assets/javascripts/admin/codemirror/keymap/sublime.js +691 -0
  100. data/testing-with-2.1.18/app/assets/javascripts/admin/codemirror/mode/css/css.js +832 -0
  101. data/testing-with-2.1.18/app/assets/javascripts/admin/codemirror/mode/css/gss.html +103 -0
  102. data/testing-with-2.1.18/app/assets/javascripts/admin/codemirror/mode/css/index.html +75 -0
  103. data/testing-with-2.1.18/app/assets/javascripts/admin/codemirror/mode/css/less.html +152 -0
  104. data/testing-with-2.1.18/app/assets/javascripts/admin/codemirror/mode/css/scss.html +157 -0
  105. data/testing-with-2.1.18/app/assets/javascripts/admin/codemirror/mode/haml/haml.js +161 -0
  106. data/testing-with-2.1.18/app/assets/javascripts/admin/codemirror/mode/haml/index.html +79 -0
  107. data/testing-with-2.1.18/app/assets/javascripts/admin/codemirror/mode/htmlembedded/htmlembedded.js +37 -0
  108. data/testing-with-2.1.18/app/assets/javascripts/admin/codemirror/mode/htmlembedded/index.html +60 -0
  109. data/testing-with-2.1.18/app/assets/javascripts/admin/codemirror/mode/htmlmixed/htmlmixed.js +152 -0
  110. data/testing-with-2.1.18/app/assets/javascripts/admin/codemirror/mode/htmlmixed/index.html +100 -0
  111. data/testing-with-2.1.18/app/assets/javascripts/admin/codemirror/mode/javascript/index.html +114 -0
  112. data/testing-with-2.1.18/app/assets/javascripts/admin/codemirror/mode/javascript/javascript.js +896 -0
  113. data/testing-with-2.1.18/app/assets/javascripts/admin/codemirror/mode/javascript/json-ld.html +72 -0
  114. data/testing-with-2.1.18/app/assets/javascripts/admin/codemirror/mode/javascript/typescript.html +61 -0
  115. data/testing-with-2.1.18/app/assets/javascripts/admin/codemirror/mode/ruby/index.html +183 -0
  116. data/testing-with-2.1.18/app/assets/javascripts/admin/codemirror/mode/ruby/ruby.js +296 -0
  117. data/testing-with-2.1.18/app/assets/javascripts/admin/codemirror/mode/vue/index.html +69 -0
  118. data/testing-with-2.1.18/app/assets/javascripts/admin/codemirror/mode/vue/vue.js +77 -0
  119. data/testing-with-2.1.18/app/assets/javascripts/admin/codemirror/mode/xml/index.html +61 -0
  120. data/testing-with-2.1.18/app/assets/javascripts/admin/codemirror/mode/xml/xml.js +402 -0
  121. data/testing-with-2.1.18/app/assets/javascripts/admin/codemirror/mode/yaml-frontmatter/index.html +121 -0
  122. data/testing-with-2.1.18/app/assets/javascripts/admin/codemirror/mode/yaml-frontmatter/yaml-frontmatter.js +68 -0
  123. data/testing-with-2.1.18/app/assets/javascripts/admin/codemirror/mode/yaml/index.html +80 -0
  124. data/testing-with-2.1.18/app/assets/javascripts/admin/codemirror/mode/yaml/yaml.js +119 -0
  125. data/testing-with-2.1.18/app/assets/javascripts/admin/file_uploader.coffee +152 -0
  126. data/testing-with-2.1.18/app/assets/javascripts/admin/img_preview.js +32 -0
  127. data/testing-with-2.1.18/app/assets/javascripts/admin/jscolor.js +1855 -0
  128. data/testing-with-2.1.18/app/assets/javascripts/admin/main.coffee +58 -0
  129. data/testing-with-2.1.18/app/assets/javascripts/admin/notification.js +14 -0
  130. data/testing-with-2.1.18/app/assets/javascripts/admin/ruby_console.js +14 -0
  131. data/testing-with-2.1.18/app/assets/javascripts/admin/sidebar.js +24 -0
  132. data/testing-with-2.1.18/app/assets/javascripts/admin/sort.coffee +8 -0
  133. data/testing-with-2.1.18/app/assets/javascripts/admin/swal.js +39 -0
  134. data/testing-with-2.1.18/app/assets/javascripts/admin/sweetalert2/delete-confirm.js +118 -0
  135. data/testing-with-2.1.18/app/assets/javascripts/admin/sweetalert2/sweetalert2.all.min.js +2 -0
  136. data/testing-with-2.1.18/app/assets/javascripts/admin/switch.js +6 -0
  137. data/testing-with-2.1.18/app/assets/javascripts/admin/tooltips.coffee +4 -0
  138. data/testing-with-2.1.18/app/assets/javascripts/admin/upload_records.coffee +8 -0
  139. data/testing-with-2.1.18/app/assets/javascripts/app/application.js.coffee +9 -0
  140. data/testing-with-2.1.18/app/assets/javascripts/app/google_analytics.js.coffee +5 -0
  141. data/testing-with-2.1.18/app/assets/javascripts/ckeditor/config.js +130 -0
  142. data/testing-with-2.1.18/app/assets/javascripts/errors/application.js.coffee +1 -0
  143. data/testing-with-2.1.18/app/assets/javascripts/errors/errors.js +113 -0
  144. data/testing-with-2.1.18/app/assets/javascripts/vue_admin/index.js +111 -0
  145. data/testing-with-2.1.18/app/assets/stylesheets/admin/application.scss +48 -0
  146. data/testing-with-2.1.18/app/assets/stylesheets/admin/bootstrap-file-input/fileinput-rtl.scss +133 -0
  147. data/testing-with-2.1.18/app/assets/stylesheets/admin/bootstrap-file-input/fileinput.scss +760 -0
  148. data/testing-with-2.1.18/app/assets/stylesheets/admin/bootstrap-file-input/themes/explorer-fa/theme.scss +213 -0
  149. data/testing-with-2.1.18/app/assets/stylesheets/admin/bootstrap-file-input/themes/explorer-fas/theme.scss +213 -0
  150. data/testing-with-2.1.18/app/assets/stylesheets/admin/bootstrap-file-input/themes/explorer/theme.scss +213 -0
  151. data/testing-with-2.1.18/app/assets/stylesheets/admin/codemirror/addon/comment/comment.js +209 -0
  152. data/testing-with-2.1.18/app/assets/stylesheets/admin/codemirror/addon/comment/continuecomment.js +78 -0
  153. data/testing-with-2.1.18/app/assets/stylesheets/admin/codemirror/addon/dialog/dialog.css +32 -0
  154. data/testing-with-2.1.18/app/assets/stylesheets/admin/codemirror/addon/dialog/dialog.js +161 -0
  155. data/testing-with-2.1.18/app/assets/stylesheets/admin/codemirror/addon/display/autorefresh.js +47 -0
  156. data/testing-with-2.1.18/app/assets/stylesheets/admin/codemirror/addon/display/fullscreen.css +6 -0
  157. data/testing-with-2.1.18/app/assets/stylesheets/admin/codemirror/addon/display/fullscreen.js +41 -0
  158. data/testing-with-2.1.18/app/assets/stylesheets/admin/codemirror/addon/display/panel.js +123 -0
  159. data/testing-with-2.1.18/app/assets/stylesheets/admin/codemirror/addon/display/placeholder.js +63 -0
  160. data/testing-with-2.1.18/app/assets/stylesheets/admin/codemirror/addon/display/rulers.js +51 -0
  161. data/testing-with-2.1.18/app/assets/stylesheets/admin/codemirror/addon/edit/closebrackets.js +194 -0
  162. data/testing-with-2.1.18/app/assets/stylesheets/admin/codemirror/addon/edit/closetag.js +175 -0
  163. data/testing-with-2.1.18/app/assets/stylesheets/admin/codemirror/addon/edit/continuelist.js +89 -0
  164. data/testing-with-2.1.18/app/assets/stylesheets/admin/codemirror/addon/edit/matchbrackets.js +145 -0
  165. data/testing-with-2.1.18/app/assets/stylesheets/admin/codemirror/addon/edit/matchtags.js +66 -0
  166. data/testing-with-2.1.18/app/assets/stylesheets/admin/codemirror/addon/edit/trailingspace.js +27 -0
  167. data/testing-with-2.1.18/app/assets/stylesheets/admin/codemirror/addon/fold/brace-fold.js +105 -0
  168. data/testing-with-2.1.18/app/assets/stylesheets/admin/codemirror/addon/fold/comment-fold.js +59 -0
  169. data/testing-with-2.1.18/app/assets/stylesheets/admin/codemirror/addon/fold/foldcode.js +152 -0
  170. data/testing-with-2.1.18/app/assets/stylesheets/admin/codemirror/addon/fold/foldgutter.css +20 -0
  171. data/testing-with-2.1.18/app/assets/stylesheets/admin/codemirror/addon/fold/foldgutter.js +146 -0
  172. data/testing-with-2.1.18/app/assets/stylesheets/admin/codemirror/addon/fold/indent-fold.js +48 -0
  173. data/testing-with-2.1.18/app/assets/stylesheets/admin/codemirror/addon/fold/markdown-fold.js +49 -0
  174. data/testing-with-2.1.18/app/assets/stylesheets/admin/codemirror/addon/fold/xml-fold.js +184 -0
  175. data/testing-with-2.1.18/app/assets/stylesheets/admin/codemirror/addon/hint/anyword-hint.js +41 -0
  176. data/testing-with-2.1.18/app/assets/stylesheets/admin/codemirror/addon/hint/css-hint.js +60 -0
  177. data/testing-with-2.1.18/app/assets/stylesheets/admin/codemirror/addon/hint/html-hint.js +348 -0
  178. data/testing-with-2.1.18/app/assets/stylesheets/admin/codemirror/addon/hint/javascript-hint.js +157 -0
  179. data/testing-with-2.1.18/app/assets/stylesheets/admin/codemirror/addon/hint/show-hint.css +36 -0
  180. data/testing-with-2.1.18/app/assets/stylesheets/admin/codemirror/addon/hint/show-hint.js +433 -0
  181. data/testing-with-2.1.18/app/assets/stylesheets/admin/codemirror/addon/hint/sql-hint.js +299 -0
  182. data/testing-with-2.1.18/app/assets/stylesheets/admin/codemirror/addon/hint/xml-hint.js +110 -0
  183. data/testing-with-2.1.18/app/assets/stylesheets/admin/codemirror/addon/scroll/annotatescrollbar.js +122 -0
  184. data/testing-with-2.1.18/app/assets/stylesheets/admin/codemirror/addon/scroll/scrollpastend.js +48 -0
  185. data/testing-with-2.1.18/app/assets/stylesheets/admin/codemirror/addon/scroll/simplescrollbars.css +66 -0
  186. data/testing-with-2.1.18/app/assets/stylesheets/admin/codemirror/addon/scroll/simplescrollbars.js +152 -0
  187. data/testing-with-2.1.18/app/assets/stylesheets/admin/codemirror/addon/search/jump-to-line.js +49 -0
  188. data/testing-with-2.1.18/app/assets/stylesheets/admin/codemirror/addon/search/match-highlighter.js +165 -0
  189. data/testing-with-2.1.18/app/assets/stylesheets/admin/codemirror/addon/search/matchesonscrollbar.css +8 -0
  190. data/testing-with-2.1.18/app/assets/stylesheets/admin/codemirror/addon/search/matchesonscrollbar.js +97 -0
  191. data/testing-with-2.1.18/app/assets/stylesheets/admin/codemirror/addon/search/search.js +252 -0
  192. data/testing-with-2.1.18/app/assets/stylesheets/admin/codemirror/addon/search/searchcursor.js +293 -0
  193. data/testing-with-2.1.18/app/assets/stylesheets/admin/codemirror/codemirror.css +366 -0
  194. data/testing-with-2.1.18/app/assets/stylesheets/admin/codemirror/theme/monokai.css +41 -0
  195. data/testing-with-2.1.18/app/assets/stylesheets/admin/components/layouts/_footer.scss +5 -0
  196. data/testing-with-2.1.18/app/assets/stylesheets/admin/components/layouts/_settings.scss +51 -0
  197. data/testing-with-2.1.18/app/assets/stylesheets/admin/components/navigation/_navbar.scss +187 -0
  198. data/testing-with-2.1.18/app/assets/stylesheets/admin/components/navigation/_sidebar.scss +207 -0
  199. data/testing-with-2.1.18/app/assets/stylesheets/admin/components/navigation/_turbolinks.scss +4 -0
  200. data/testing-with-2.1.18/app/assets/stylesheets/admin/components/paginator/_paginator.scss +53 -0
  201. data/testing-with-2.1.18/app/assets/stylesheets/admin/fonts-and-icons/ZXuke1cDvLCKLDcimxB44_lu.woff2 +0 -0
  202. data/testing-with-2.1.18/app/assets/stylesheets/admin/fonts-and-icons/boxicons.css +2918 -0
  203. data/testing-with-2.1.18/app/assets/stylesheets/admin/fonts-and-icons/fonts.css +8 -0
  204. data/testing-with-2.1.18/app/assets/stylesheets/admin/fonts-and-icons/fonts/Simple-Line-Icons.eot +0 -0
  205. data/testing-with-2.1.18/app/assets/stylesheets/admin/fonts-and-icons/fonts/Simple-Line-Icons.ttf +0 -0
  206. data/testing-with-2.1.18/app/assets/stylesheets/admin/fonts-and-icons/fonts/Simple-Line-Icons.woff +0 -0
  207. data/testing-with-2.1.18/app/assets/stylesheets/admin/fonts-and-icons/fonts/Simple-Line-Icons.woff2 +0 -0
  208. data/testing-with-2.1.18/app/assets/stylesheets/admin/fonts-and-icons/fonts/boxicons.eot +0 -0
  209. data/testing-with-2.1.18/app/assets/stylesheets/admin/fonts-and-icons/fonts/boxicons.svg +808 -0
  210. data/testing-with-2.1.18/app/assets/stylesheets/admin/fonts-and-icons/fonts/boxicons.ttf +0 -0
  211. data/testing-with-2.1.18/app/assets/stylesheets/admin/fonts-and-icons/fonts/boxicons.woff +0 -0
  212. data/testing-with-2.1.18/app/assets/stylesheets/admin/fonts-and-icons/fonts/boxicons.woff2 +0 -0
  213. data/testing-with-2.1.18/app/assets/stylesheets/admin/fonts-and-icons/icons.css +778 -0
  214. data/testing-with-2.1.18/app/assets/stylesheets/admin/pages/_appearance.scss +5 -0
  215. data/testing-with-2.1.18/app/assets/stylesheets/admin/pages/_bootstrap-colorpicker.scss +269 -0
  216. data/testing-with-2.1.18/app/assets/stylesheets/admin/pages/_customize.scss +22 -0
  217. data/testing-with-2.1.18/app/assets/stylesheets/admin/pages/_datepicker.scss +1086 -0
  218. data/testing-with-2.1.18/app/assets/stylesheets/admin/pages/_devise.scss +189 -0
  219. data/testing-with-2.1.18/app/assets/stylesheets/admin/pages/_files.scss +229 -0
  220. data/testing-with-2.1.18/app/assets/stylesheets/admin/pages/_form.scss +190 -0
  221. data/testing-with-2.1.18/app/assets/stylesheets/admin/pages/_index.scss +466 -0
  222. data/testing-with-2.1.18/app/assets/stylesheets/admin/pages/_listing.scss +40 -0
  223. data/testing-with-2.1.18/app/assets/stylesheets/admin/pages/_preloader.scss +224 -0
  224. data/testing-with-2.1.18/app/assets/stylesheets/admin/pages/_rockets.scss +13 -0
  225. data/testing-with-2.1.18/app/assets/stylesheets/admin/pages/_roles.scss +3 -0
  226. data/testing-with-2.1.18/app/assets/stylesheets/admin/pages/_search.scss +244 -0
  227. data/testing-with-2.1.18/app/assets/stylesheets/admin/pages/_show.scss +23 -0
  228. data/testing-with-2.1.18/app/assets/stylesheets/admin/pages/_switchs.scss +143 -0
  229. data/testing-with-2.1.18/app/assets/stylesheets/admin/pages/_themes.scss +45 -0
  230. data/testing-with-2.1.18/app/assets/stylesheets/admin/pages/_timepicker.scss +14 -0
  231. data/testing-with-2.1.18/app/assets/stylesheets/admin/pages/_user.scss +6 -0
  232. data/testing-with-2.1.18/app/assets/stylesheets/admin/utils/_base.scss +65 -0
  233. data/testing-with-2.1.18/app/assets/stylesheets/admin/utils/_mixins.scss +26 -0
  234. data/testing-with-2.1.18/app/assets/stylesheets/admin/utils/_theme.scss +124 -0
  235. data/testing-with-2.1.18/app/assets/stylesheets/admin/utils/_variables.scss +109 -0
  236. data/testing-with-2.1.18/app/assets/stylesheets/app/application.scss +30 -0
  237. data/testing-with-2.1.18/app/assets/stylesheets/app/base/_base_project.scss +17 -0
  238. data/testing-with-2.1.18/app/assets/stylesheets/app/base/_typography.scss +1 -0
  239. data/testing-with-2.1.18/app/assets/stylesheets/app/components/_buttons.scss +0 -0
  240. data/testing-with-2.1.18/app/assets/stylesheets/app/components/_inputs.scss +0 -0
  241. data/testing-with-2.1.18/app/assets/stylesheets/app/components/_navbar.scss +21 -0
  242. data/testing-with-2.1.18/app/assets/stylesheets/app/layout/_container.scss +0 -0
  243. data/testing-with-2.1.18/app/assets/stylesheets/app/layout/_footer.scss +15 -0
  244. data/testing-with-2.1.18/app/assets/stylesheets/app/layout/_header.scss +39 -0
  245. data/testing-with-2.1.18/app/assets/stylesheets/app/pages/_front.sass +83 -0
  246. data/testing-with-2.1.18/app/assets/stylesheets/app/plugins/_bootstrap_override.scss +37 -0
  247. data/testing-with-2.1.18/app/assets/stylesheets/app/plugins/_font_awesome.scss +2 -0
  248. data/testing-with-2.1.18/app/assets/stylesheets/app/plugins/_keppler.scss +161 -0
  249. data/testing-with-2.1.18/app/assets/stylesheets/app/plugins/_npogress.scss +2 -0
  250. data/testing-with-2.1.18/app/assets/stylesheets/app/utils/_mixins.scss +18 -0
  251. data/testing-with-2.1.18/app/assets/stylesheets/app/utils/_variables.scss +28 -0
  252. data/testing-with-2.1.18/app/assets/stylesheets/errors/application.scss +3 -0
  253. data/testing-with-2.1.18/app/assets/stylesheets/errors/errors.scss +161 -0
  254. data/testing-with-2.1.18/app/assets/stylesheets/vendor/admin-lte/_skin-blue.scss +141 -0
  255. data/testing-with-2.1.18/app/assets/stylesheets/vendor/sweetalert2/sweetalert2.scss +11 -0
  256. data/testing-with-2.1.18/app/controllers/admin/admin_controller.rb +95 -0
  257. data/testing-with-2.1.18/app/controllers/admin/meta_tags_controller.rb +118 -0
  258. data/testing-with-2.1.18/app/controllers/admin/permissions_controller.rb +55 -0
  259. data/testing-with-2.1.18/app/controllers/admin/rockets_controller.rb +95 -0
  260. data/testing-with-2.1.18/app/controllers/admin/roles_controller.rb +124 -0
  261. data/testing-with-2.1.18/app/controllers/admin/scripts_controller.rb +104 -0
  262. data/testing-with-2.1.18/app/controllers/admin/seos_controller.rb +31 -0
  263. data/testing-with-2.1.18/app/controllers/admin/settings_controller.rb +131 -0
  264. data/testing-with-2.1.18/app/controllers/admin/users_controller.rb +122 -0
  265. data/testing-with-2.1.18/app/controllers/app/app_controller.rb +38 -0
  266. data/testing-with-2.1.18/app/controllers/app/front_controller.rb +8 -0
  267. data/testing-with-2.1.18/app/controllers/application_controller.rb +151 -0
  268. data/testing-with-2.1.18/app/controllers/concerns/.keep +0 -0
  269. data/testing-with-2.1.18/app/controllers/concerns/devise_params.rb +33 -0
  270. data/testing-with-2.1.18/app/controllers/concerns/mailer_config.rb +37 -0
  271. data/testing-with-2.1.18/app/controllers/concerns/object_query.rb +50 -0
  272. data/testing-with-2.1.18/app/controllers/concerns/settings.rb +105 -0
  273. data/testing-with-2.1.18/app/controllers/devise/sessions_controller.rb +108 -0
  274. data/testing-with-2.1.18/app/controllers/errors_controller.rb +30 -0
  275. data/testing-with-2.1.18/app/helpers/admin_helper.rb +138 -0
  276. data/testing-with-2.1.18/app/helpers/application_helper.rb +33 -0
  277. data/testing-with-2.1.18/app/helpers/fronts_helper.rb +38 -0
  278. data/testing-with-2.1.18/app/helpers/rockets_helper.rb +8 -0
  279. data/testing-with-2.1.18/app/helpers/roles_helper.rb +5 -0
  280. data/testing-with-2.1.18/app/helpers/scaffolds_helper.rb +5 -0
  281. data/testing-with-2.1.18/app/inputs/keppler_boolean_input.rb +52 -0
  282. data/testing-with-2.1.18/app/inputs/keppler_file_input.rb +124 -0
  283. data/testing-with-2.1.18/app/mailers/.keep +0 -0
  284. data/testing-with-2.1.18/app/mailers/application_mailer.rb +42 -0
  285. data/testing-with-2.1.18/app/models/.keep +0 -0
  286. data/testing-with-2.1.18/app/models/appearance.rb +7 -0
  287. data/testing-with-2.1.18/app/models/application_record.rb +6 -0
  288. data/testing-with-2.1.18/app/models/concerns/.keep +0 -0
  289. data/testing-with-2.1.18/app/models/concerns/activity_history.rb +11 -0
  290. data/testing-with-2.1.18/app/models/concerns/clone_record.rb +14 -0
  291. data/testing-with-2.1.18/app/models/concerns/downloadable.rb +16 -0
  292. data/testing-with-2.1.18/app/models/concerns/searchable.rb +27 -0
  293. data/testing-with-2.1.18/app/models/concerns/sortable.rb +13 -0
  294. data/testing-with-2.1.18/app/models/concerns/uploadable.rb +13 -0
  295. data/testing-with-2.1.18/app/models/front.rb +5 -0
  296. data/testing-with-2.1.18/app/models/google_analytics_setting.rb +6 -0
  297. data/testing-with-2.1.18/app/models/meta_tag.rb +54 -0
  298. data/testing-with-2.1.18/app/models/permission.rb +6 -0
  299. data/testing-with-2.1.18/app/models/rocket.rb +105 -0
  300. data/testing-with-2.1.18/app/models/role.rb +134 -0
  301. data/testing-with-2.1.18/app/models/script.rb +21 -0
  302. data/testing-with-2.1.18/app/models/seo.rb +49 -0
  303. data/testing-with-2.1.18/app/models/setting.rb +19 -0
  304. data/testing-with-2.1.18/app/models/smtp_setting.rb +7 -0
  305. data/testing-with-2.1.18/app/models/social_account.rb +6 -0
  306. data/testing-with-2.1.18/app/models/user.rb +75 -0
  307. data/testing-with-2.1.18/app/policies/application_policy.rb +18 -0
  308. data/testing-with-2.1.18/app/policies/controller_policy.rb +59 -0
  309. data/testing-with-2.1.18/app/policies/meta_tag_policy.rb +11 -0
  310. data/testing-with-2.1.18/app/policies/permission_policy.rb +23 -0
  311. data/testing-with-2.1.18/app/policies/rocket_policy.rb +11 -0
  312. data/testing-with-2.1.18/app/policies/role_policy.rb +31 -0
  313. data/testing-with-2.1.18/app/policies/script_policy.rb +11 -0
  314. data/testing-with-2.1.18/app/policies/seo_policy.rb +23 -0
  315. data/testing-with-2.1.18/app/policies/setting_policy.rb +15 -0
  316. data/testing-with-2.1.18/app/policies/user_policy.rb +19 -0
  317. data/testing-with-2.1.18/app/services/admin/appearance_service.rb +49 -0
  318. data/testing-with-2.1.18/app/services/admin/git_handler.rb +28 -0
  319. data/testing-with-2.1.18/app/uploaders/attachment_uploader.rb +61 -0
  320. data/testing-with-2.1.18/app/uploaders/ckeditor_attachment_file_uploader.rb +38 -0
  321. data/testing-with-2.1.18/app/uploaders/ckeditor_picture_uploader.rb +49 -0
  322. data/testing-with-2.1.18/app/uploaders/template_uploader.rb +44 -0
  323. data/testing-with-2.1.18/app/views/admin/layouts/_footer.html.haml +0 -0
  324. data/testing-with-2.1.18/app/views/admin/layouts/_git_info.html.haml +13 -0
  325. data/testing-with-2.1.18/app/views/admin/layouts/_head.html.haml +7 -0
  326. data/testing-with-2.1.18/app/views/admin/layouts/_keppler_boolean_script.haml +12 -0
  327. data/testing-with-2.1.18/app/views/admin/layouts/_listing_preloader.haml +4 -0
  328. data/testing-with-2.1.18/app/views/admin/layouts/_messages.html.haml +4 -0
  329. data/testing-with-2.1.18/app/views/admin/layouts/_navigation.html.haml +59 -0
  330. data/testing-with-2.1.18/app/views/admin/layouts/_preloader.html.haml +14 -0
  331. data/testing-with-2.1.18/app/views/admin/layouts/_sidebar.html.haml +83 -0
  332. data/testing-with-2.1.18/app/views/admin/layouts/application.html.haml +23 -0
  333. data/testing-with-2.1.18/app/views/admin/layouts/index/remote_messages.js.haml +9 -0
  334. data/testing-with-2.1.18/app/views/admin/meta_tags/_description.html.haml +13 -0
  335. data/testing-with-2.1.18/app/views/admin/meta_tags/_form.html.haml +35 -0
  336. data/testing-with-2.1.18/app/views/admin/meta_tags/_listing.html.haml +40 -0
  337. data/testing-with-2.1.18/app/views/admin/meta_tags/edit.html.haml +2 -0
  338. data/testing-with-2.1.18/app/views/admin/meta_tags/index.html.haml +69 -0
  339. data/testing-with-2.1.18/app/views/admin/meta_tags/new.html.haml +2 -0
  340. data/testing-with-2.1.18/app/views/admin/meta_tags/reload.js.haml +5 -0
  341. data/testing-with-2.1.18/app/views/admin/meta_tags/show.html.haml +28 -0
  342. data/testing-with-2.1.18/app/views/admin/permissions/_switch.html.haml +13 -0
  343. data/testing-with-2.1.18/app/views/admin/permissions/add.html.haml +95 -0
  344. data/testing-with-2.1.18/app/views/admin/permissions/create.html.haml +0 -0
  345. data/testing-with-2.1.18/app/views/admin/permissions/create.js.erb +2 -0
  346. data/testing-with-2.1.18/app/views/admin/permissions/show.js.erb +2 -0
  347. data/testing-with-2.1.18/app/views/admin/permissions/toggle_permissions.js.erb +6 -0
  348. data/testing-with-2.1.18/app/views/admin/rockets/_create_rocket.haml +61 -0
  349. data/testing-with-2.1.18/app/views/admin/rockets/_install_rocket.haml +28 -0
  350. data/testing-with-2.1.18/app/views/admin/rockets/rockets.haml +54 -0
  351. data/testing-with-2.1.18/app/views/admin/roles/_description.html.haml +13 -0
  352. data/testing-with-2.1.18/app/views/admin/roles/_form.html.haml +27 -0
  353. data/testing-with-2.1.18/app/views/admin/roles/_listing.html.haml +42 -0
  354. data/testing-with-2.1.18/app/views/admin/roles/_switch.html.haml +24 -0
  355. data/testing-with-2.1.18/app/views/admin/roles/edit.html.haml +1 -0
  356. data/testing-with-2.1.18/app/views/admin/roles/index.html.haml +64 -0
  357. data/testing-with-2.1.18/app/views/admin/roles/new.html.haml +1 -0
  358. data/testing-with-2.1.18/app/views/admin/roles/reload.js.haml +5 -0
  359. data/testing-with-2.1.18/app/views/admin/roles/show.html.haml +29 -0
  360. data/testing-with-2.1.18/app/views/admin/scripts/_description.html.haml +13 -0
  361. data/testing-with-2.1.18/app/views/admin/scripts/_form.html.haml +30 -0
  362. data/testing-with-2.1.18/app/views/admin/scripts/_listing.html.haml +40 -0
  363. data/testing-with-2.1.18/app/views/admin/scripts/edit.html.haml +1 -0
  364. data/testing-with-2.1.18/app/views/admin/scripts/index.html.haml +70 -0
  365. data/testing-with-2.1.18/app/views/admin/scripts/new.html.haml +1 -0
  366. data/testing-with-2.1.18/app/views/admin/scripts/reload.js.haml +5 -0
  367. data/testing-with-2.1.18/app/views/admin/scripts/show.html.haml +28 -0
  368. data/testing-with-2.1.18/app/views/admin/seos/robots.html.haml +35 -0
  369. data/testing-with-2.1.18/app/views/admin/seos/sitemap.html.haml +36 -0
  370. data/testing-with-2.1.18/app/views/admin/settings/_form.html.haml +10 -0
  371. data/testing-with-2.1.18/app/views/admin/settings/components/_preview.html.haml +30 -0
  372. data/testing-with-2.1.18/app/views/admin/settings/edit.html.haml +4 -0
  373. data/testing-with-2.1.18/app/views/admin/settings/fields/_appearance.html.haml +64 -0
  374. data/testing-with-2.1.18/app/views/admin/settings/fields/_basic_information.html.haml +40 -0
  375. data/testing-with-2.1.18/app/views/admin/settings/fields/_email_setting.html.haml +18 -0
  376. data/testing-with-2.1.18/app/views/admin/settings/fields/_google_analytics_setting.html.haml +21 -0
  377. data/testing-with-2.1.18/app/views/admin/settings/fields/_social_accounts.html.haml +43 -0
  378. data/testing-with-2.1.18/app/views/admin/users/_description.html.haml +13 -0
  379. data/testing-with-2.1.18/app/views/admin/users/_form.html.haml +45 -0
  380. data/testing-with-2.1.18/app/views/admin/users/_listing.html.haml +47 -0
  381. data/testing-with-2.1.18/app/views/admin/users/delete_avatar.js.haml +3 -0
  382. data/testing-with-2.1.18/app/views/admin/users/edit.html.haml +1 -0
  383. data/testing-with-2.1.18/app/views/admin/users/filter_by_role.js.erb +9 -0
  384. data/testing-with-2.1.18/app/views/admin/users/index.html.haml +69 -0
  385. data/testing-with-2.1.18/app/views/admin/users/new.html.haml +1 -0
  386. data/testing-with-2.1.18/app/views/admin/users/reload.js.haml +5 -0
  387. data/testing-with-2.1.18/app/views/admin/users/show.html.haml +34 -0
  388. data/testing-with-2.1.18/app/views/app/front/index.html.haml +223 -0
  389. data/testing-with-2.1.18/app/views/app/front/message.haml +1 -0
  390. data/testing-with-2.1.18/app/views/app/layouts/_footer.html.haml +3 -0
  391. data/testing-with-2.1.18/app/views/app/layouts/_google_analytics.html.haml +13 -0
  392. data/testing-with-2.1.18/app/views/app/layouts/_head.html.haml +15 -0
  393. data/testing-with-2.1.18/app/views/app/layouts/_messages.html.haml +6 -0
  394. data/testing-with-2.1.18/app/views/app/layouts/_meta_tags.html.haml +40 -0
  395. data/testing-with-2.1.18/app/views/app/layouts/_navigation.html.haml +13 -0
  396. data/testing-with-2.1.18/app/views/app/layouts/_navigation_links.html.haml +6 -0
  397. data/testing-with-2.1.18/app/views/app/layouts/application.html.haml +10 -0
  398. data/testing-with-2.1.18/app/views/application_mailer/testing.html.haml +1 -0
  399. data/testing-with-2.1.18/app/views/devise/confirmations/new.html.erb +16 -0
  400. data/testing-with-2.1.18/app/views/devise/mailer/reset_password_instructions.html.haml +6 -0
  401. data/testing-with-2.1.18/app/views/devise/passwords/edit.html.haml +31 -0
  402. data/testing-with-2.1.18/app/views/devise/passwords/new.html.haml +27 -0
  403. data/testing-with-2.1.18/app/views/devise/registrations/edit.html.erb +48 -0
  404. data/testing-with-2.1.18/app/views/devise/registrations/new.html.erb +19 -0
  405. data/testing-with-2.1.18/app/views/devise/sessions/new.html.haml +35 -0
  406. data/testing-with-2.1.18/app/views/devise/shared/_links.html.erb +21 -0
  407. data/testing-with-2.1.18/app/views/errors/internal_server_error.html.haml +50 -0
  408. data/testing-with-2.1.18/app/views/errors/not_authorized.html.haml +76 -0
  409. data/testing-with-2.1.18/app/views/errors/not_found.html.haml +101 -0
  410. data/testing-with-2.1.18/app/views/errors/unprocessable.html.haml +50 -0
  411. data/testing-with-2.1.18/app/views/kaminari/_first_page.html.haml +11 -0
  412. data/testing-with-2.1.18/app/views/kaminari/_gap.html.haml +8 -0
  413. data/testing-with-2.1.18/app/views/kaminari/_last_page.html.haml +11 -0
  414. data/testing-with-2.1.18/app/views/kaminari/_next_page.html.haml +11 -0
  415. data/testing-with-2.1.18/app/views/kaminari/_page.html.haml +10 -0
  416. data/testing-with-2.1.18/app/views/kaminari/_paginator.html.haml +18 -0
  417. data/testing-with-2.1.18/app/views/kaminari/_prev_page.html.haml +11 -0
  418. data/testing-with-2.1.18/app/views/layouts/errors/_head.html.haml +3 -0
  419. data/testing-with-2.1.18/app/views/layouts/errors/application.html.haml +11 -0
  420. data/testing-with-2.1.18/app/views/layouts/mailers/mailer.html.haml +3 -0
  421. data/testing-with-2.1.18/app/views/layouts/mailers/mailer.text.haml +1 -0
  422. data/testing-with-2.1.18/app/views/layouts/templates/application.html.haml +1 -0
  423. data/testing-with-2.1.18/app/views/public_activity/layout/_create.html.haml +44 -0
  424. data/testing-with-2.1.18/app/views/public_activity/layout/_destroy.html.haml +15 -0
  425. data/testing-with-2.1.18/app/views/public_activity/layout/_update.html.haml +44 -0
  426. data/testing-with-2.1.18/app/views/public_activity/session/_create.html.haml +13 -0
  427. data/testing-with-2.1.18/app/views/public_activity/session/_destroy.html.haml +13 -0
  428. data/testing-with-2.1.18/app/views/templates/kaminari/_first_page.html.haml +9 -0
  429. data/testing-with-2.1.18/app/views/templates/kaminari/_gap.html.haml +8 -0
  430. data/testing-with-2.1.18/app/views/templates/kaminari/_last_page.html.haml +9 -0
  431. data/testing-with-2.1.18/app/views/templates/kaminari/_next_page.html.haml +9 -0
  432. data/testing-with-2.1.18/app/views/templates/kaminari/_page.html.haml +10 -0
  433. data/testing-with-2.1.18/app/views/templates/kaminari/_paginator.html.haml +18 -0
  434. data/testing-with-2.1.18/app/views/templates/kaminari/_prev_page.html.haml +9 -0
  435. data/testing-with-2.1.18/bin/bundle +3 -0
  436. data/testing-with-2.1.18/bin/rails +4 -0
  437. data/testing-with-2.1.18/bin/rake +4 -0
  438. data/testing-with-2.1.18/bin/setup +29 -0
  439. data/testing-with-2.1.18/bin/spring +15 -0
  440. data/testing-with-2.1.18/bin/update +31 -0
  441. data/testing-with-2.1.18/bin/yarn +11 -0
  442. data/testing-with-2.1.18/config.ru +4 -0
  443. data/testing-with-2.1.18/config/application.rb +46 -0
  444. data/testing-with-2.1.18/config/attachments.yml +24 -0
  445. data/testing-with-2.1.18/config/boot.rb +7 -0
  446. data/testing-with-2.1.18/config/circleci/db_config.yml +51 -0
  447. data/testing-with-2.1.18/config/database.yml +25 -0
  448. data/testing-with-2.1.18/config/environment.rb +10 -0
  449. data/testing-with-2.1.18/config/environments/development.rb +61 -0
  450. data/testing-with-2.1.18/config/environments/production.rb +109 -0
  451. data/testing-with-2.1.18/config/environments/test.rb +45 -0
  452. data/testing-with-2.1.18/config/gaAuth/gauth_key.p12 +0 -0
  453. data/testing-with-2.1.18/config/initializers/assets.rb +14 -0
  454. data/testing-with-2.1.18/config/initializers/carrierwave.rb +12 -0
  455. data/testing-with-2.1.18/config/initializers/compression.rb +47 -0
  456. data/testing-with-2.1.18/config/initializers/cookies_serializer.rb +3 -0
  457. data/testing-with-2.1.18/config/initializers/date_formats.rb +2 -0
  458. data/testing-with-2.1.18/config/initializers/devise.rb +259 -0
  459. data/testing-with-2.1.18/config/initializers/filter_parameter_logging.rb +5 -0
  460. data/testing-with-2.1.18/config/initializers/inflections.rb +16 -0
  461. data/testing-with-2.1.18/config/initializers/keppler_configuration.rb +9 -0
  462. data/testing-with-2.1.18/config/initializers/mime_types.rb +6 -0
  463. data/testing-with-2.1.18/config/initializers/paginate_kaminari_configuration.rb +12 -0
  464. data/testing-with-2.1.18/config/initializers/ransack.rb +7 -0
  465. data/testing-with-2.1.18/config/initializers/rolify.rb +10 -0
  466. data/testing-with-2.1.18/config/initializers/route_traslator.rb +3 -0
  467. data/testing-with-2.1.18/config/initializers/session_store.rb +5 -0
  468. data/testing-with-2.1.18/config/initializers/simple_form.rb +170 -0
  469. data/testing-with-2.1.18/config/initializers/simple_form_bootstrap.rb +174 -0
  470. data/testing-with-2.1.18/config/initializers/simple_form_components.rb +61 -0
  471. data/testing-with-2.1.18/config/initializers/time_formats.rb +2 -0
  472. data/testing-with-2.1.18/config/initializers/wrap_parameters.rb +15 -0
  473. data/testing-with-2.1.18/config/jshint.yml +21 -0
  474. data/testing-with-2.1.18/config/locales/devise.en.yml +61 -0
  475. data/testing-with-2.1.18/config/locales/devise.es.yml +62 -0
  476. data/testing-with-2.1.18/config/locales/en.yml +477 -0
  477. data/testing-with-2.1.18/config/locales/es.yml +510 -0
  478. data/testing-with-2.1.18/config/locales/routes.en.yml +4 -0
  479. data/testing-with-2.1.18/config/locales/routes.es.yml +5 -0
  480. data/testing-with-2.1.18/config/locales/simple_form.en.yml +46 -0
  481. data/testing-with-2.1.18/config/locales/simple_form.es.yml +96 -0
  482. data/testing-with-2.1.18/config/locales/social_share_button.es.yml +10 -0
  483. data/testing-with-2.1.18/config/menu.yml +58 -0
  484. data/testing-with-2.1.18/config/permissions.yml +39 -0
  485. data/testing-with-2.1.18/config/puma.rb +56 -0
  486. data/testing-with-2.1.18/config/roles.yml +2 -0
  487. data/testing-with-2.1.18/config/routes.rb +191 -0
  488. data/testing-with-2.1.18/config/settings.yml +30 -0
  489. data/testing-with-2.1.18/config/sitemap.rb +30 -0
  490. data/testing-with-2.1.18/config/spring.rb +6 -0
  491. data/testing-with-2.1.18/db/migrate/20140812203549_devise_create_users.rb +50 -0
  492. data/testing-with-2.1.18/db/migrate/20140812210925_rolify_create_roles.rb +21 -0
  493. data/testing-with-2.1.18/db/migrate/20151221173228_create_activities.rb +23 -0
  494. data/testing-with-2.1.18/db/migrate/20160122201215_create_settings.rb +15 -0
  495. data/testing-with-2.1.18/db/migrate/20160126141856_create_smtp_settings.rb +15 -0
  496. data/testing-with-2.1.18/db/migrate/20160128131802_create_scripts.rb +12 -0
  497. data/testing-with-2.1.18/db/migrate/20160128151351_create_google_analytics_settings.rb +13 -0
  498. data/testing-with-2.1.18/db/migrate/20160128193740_create_social_accounts.rb +26 -0
  499. data/testing-with-2.1.18/db/migrate/20160201134918_create_meta_tags.rb +13 -0
  500. data/testing-with-2.1.18/db/migrate/20160201210520_create_appearances.rb +14 -0
  501. data/testing-with-2.1.18/db/migrate/20171225023933_create_scaffolds.rb +10 -0
  502. data/testing-with-2.1.18/db/migrate/20180503174351_create_permissions.rb +11 -0
  503. data/testing-with-2.1.18/db/migrate/20180717160308_create_keppler_frontend_views.keppler_frontend.rb +17 -0
  504. data/testing-with-2.1.18/db/migrate/20180730194655_create_keppler_frontend_themes.rb +13 -0
  505. data/testing-with-2.1.18/db/migrate/20180802184429_create_keppler_capsules_capsules.keppler_capsules.rb +13 -0
  506. data/testing-with-2.1.18/db/migrate/20180802184430_create_keppler_capsules_capsule_fields.keppler_capsules.rb +12 -0
  507. data/testing-with-2.1.18/db/migrate/20180806192023_create_keppler_capsules_capsule_validations.keppler_capsules.rb +13 -0
  508. data/testing-with-2.1.18/db/migrate/20180806203410_create_keppler_frontend_partials.keppler_frontend.rb +13 -0
  509. data/testing-with-2.1.18/db/migrate/20180807204310_create_keppler_capsules_capsule_associations.keppler_capsules.rb +13 -0
  510. data/testing-with-2.1.18/db/migrate/20180813160624_create_keppler_languages_languages.keppler_languages.rb +14 -0
  511. data/testing-with-2.1.18/db/migrate/20180813160625_create_keppler_languages_fields.keppler_languages.rb +14 -0
  512. data/testing-with-2.1.18/db/migrate/20180818073305_create_active_storage_tables.active_storage.rb +26 -0
  513. data/testing-with-2.1.18/db/migrate/20180827120841_create_keppler_frontend_callback_functions.keppler_frontend.rb +14 -0
  514. data/testing-with-2.1.18/db/migrate/20180827154329_create_keppler_frontend_view_callbacks.keppler_frontend.rb +12 -0
  515. data/testing-with-2.1.18/db/migrate/20180827154647_add_position_to_users_table.rb +5 -0
  516. data/testing-with-2.1.18/db/migrate/20180830153221_create_keppler_frontend_functions.keppler_frontend.rb +14 -0
  517. data/testing-with-2.1.18/db/migrate/20180830153222_create_keppler_frontend_parameters.keppler_frontend.rb +13 -0
  518. data/testing-with-2.1.18/db/migrate/20180904144238_create_seos.rb +11 -0
  519. data/testing-with-2.1.18/db/seeds.rb +162 -0
  520. data/testing-with-2.1.18/docs/diagrams/keppler_core/config +0 -0
  521. data/testing-with-2.1.18/docs/diagrams/keppler_frontend/editor/resources_editor.dia +0 -0
  522. data/testing-with-2.1.18/docs/diagrams/keppler_frontend/views/create_view.dia +0 -0
  523. data/testing-with-2.1.18/docs/diagrams/keppler_frontend/views/delete_view.dia +0 -0
  524. data/testing-with-2.1.18/docs/diagrams/keppler_frontend/views/delete_view.dia.autosave +0 -0
  525. data/testing-with-2.1.18/lib/generators/install_rocket/USAGE +44 -0
  526. data/testing-with-2.1.18/lib/generators/install_rocket/install_rocket_generator.rb +107 -0
  527. data/testing-with-2.1.18/lib/generators/keppler_add_module/USAGE +5 -0
  528. data/testing-with-2.1.18/lib/generators/keppler_add_module/keppler_add_module_generator.rb +324 -0
  529. data/testing-with-2.1.18/lib/generators/keppler_add_module/templates/controllers/controller.rb +106 -0
  530. data/testing-with-2.1.18/lib/generators/keppler_add_module/templates/models/model.rb +29 -0
  531. data/testing-with-2.1.18/lib/generators/keppler_add_module/templates/policies/policy.rb +11 -0
  532. data/testing-with-2.1.18/lib/generators/keppler_add_module/templates/views/_description.haml +13 -0
  533. data/testing-with-2.1.18/lib/generators/keppler_add_module/templates/views/_form.haml +49 -0
  534. data/testing-with-2.1.18/lib/generators/keppler_add_module/templates/views/_listing.haml +58 -0
  535. data/testing-with-2.1.18/lib/generators/keppler_add_module/templates/views/edit.haml +1 -0
  536. data/testing-with-2.1.18/lib/generators/keppler_add_module/templates/views/index.haml +70 -0
  537. data/testing-with-2.1.18/lib/generators/keppler_add_module/templates/views/new.haml +1 -0
  538. data/testing-with-2.1.18/lib/generators/keppler_add_module/templates/views/reload.js.haml +5 -0
  539. data/testing-with-2.1.18/lib/generators/keppler_add_module/templates/views/show.haml +35 -0
  540. data/testing-with-2.1.18/lib/generators/keppler_delete_module/USAGE +5 -0
  541. data/testing-with-2.1.18/lib/generators/keppler_delete_module/keppler_delete_module_generator.rb +305 -0
  542. data/testing-with-2.1.18/lib/generators/keppler_front/keppler_front_generator.rb +139 -0
  543. data/testing-with-2.1.18/lib/generators/keppler_front/templates/controllers/controller.rb +17 -0
  544. data/testing-with-2.1.18/lib/generators/keppler_front/templates/views/template.html.haml +225 -0
  545. data/testing-with-2.1.18/lib/generators/keppler_relation/keppler_relation_generator.rb +219 -0
  546. data/testing-with-2.1.18/lib/generators/new_rocket/USAGE +44 -0
  547. data/testing-with-2.1.18/lib/generators/new_rocket/new_rocket_generator.rb +258 -0
  548. data/testing-with-2.1.18/lib/generators/uninstall_rocket/USAGE +32 -0
  549. data/testing-with-2.1.18/lib/generators/uninstall_rocket/uninstall_rocket_generator.rb +140 -0
  550. data/testing-with-2.1.18/lib/keppler_configuration.rb +12 -0
  551. data/testing-with-2.1.18/lib/plugins/config/locales/en.yml +16 -0
  552. data/testing-with-2.1.18/lib/plugins/config/locales/es.yml +16 -0
  553. data/testing-with-2.1.18/lib/plugins/config/menu.yml +16 -0
  554. data/testing-with-2.1.18/lib/plugins/config/permissions.yml +1 -0
  555. data/testing-with-2.1.18/lib/plugins/generators/keppler_scaffold/keppler_scaffold_generator.rb +223 -0
  556. data/testing-with-2.1.18/lib/plugins/generators/keppler_scaffold/templates/controllers/controller.rb +107 -0
  557. data/testing-with-2.1.18/lib/plugins/generators/keppler_scaffold/templates/models/model.rb +29 -0
  558. data/testing-with-2.1.18/lib/plugins/generators/keppler_scaffold/templates/policies/policy.rb +14 -0
  559. data/testing-with-2.1.18/lib/plugins/generators/keppler_scaffold/templates/views/_description.haml +13 -0
  560. data/testing-with-2.1.18/lib/plugins/generators/keppler_scaffold/templates/views/_form.haml +49 -0
  561. data/testing-with-2.1.18/lib/plugins/generators/keppler_scaffold/templates/views/_listing.haml +58 -0
  562. data/testing-with-2.1.18/lib/plugins/generators/keppler_scaffold/templates/views/edit.haml +1 -0
  563. data/testing-with-2.1.18/lib/plugins/generators/keppler_scaffold/templates/views/index.haml +69 -0
  564. data/testing-with-2.1.18/lib/plugins/generators/keppler_scaffold/templates/views/new.haml +1 -0
  565. data/testing-with-2.1.18/lib/plugins/generators/keppler_scaffold/templates/views/reload.js.haml +5 -0
  566. data/testing-with-2.1.18/lib/plugins/generators/keppler_scaffold/templates/views/show.haml +35 -0
  567. data/testing-with-2.1.18/lib/plugins/install.rb +151 -0
  568. data/testing-with-2.1.18/lib/plugins/layouts/application.html.haml +23 -0
  569. data/testing-with-2.1.18/lib/templates/haml/scaffold/_form.html.haml +10 -0
  570. metadata +564 -3
  571. data/installer/core/.sass-cache/c3e12133096533fa0f5c2d91446553934f6099d2/(__TEMPLATE__)c +0 -0
@@ -0,0 +1 @@
1
+ !function(t){"use strict";"function"==typeof define&&define.amd?define(t):"undefined"!=typeof module&&void 0!==module.exports?module.exports=t():window.KvSortable=t()}(function(){"use strict";function t(e,n){if(!e||!e.nodeType||1!==e.nodeType)throw"KvSortable: `el` must be HTMLElement, and not "+{}.toString.call(e);this.el=e,this.options=n=g({},n),e[U]=this;var i={group:Math.random(),sort:!0,disabled:!1,store:null,handle:null,scroll:!0,scrollSensitivity:30,scrollSpeed:10,draggable:/[uo]l/i.test(e.nodeName)?"li":">*",ghostClass:"kvsortable-ghost",chosenClass:"kvsortable-chosen",dragClass:"kvsortable-drag",ignore:"a, img",filter:null,preventOnFilter:!0,animation:0,setData:function(t,e){t.setData("Text",e.textContent)},dropBubble:!1,dragoverBubble:!1,dataIdAttr:"data-id",delay:0,forceFallback:!1,fallbackClass:"kvsortable-fallback",fallbackOnBody:!1,fallbackTolerance:0,fallbackOffset:{x:0,y:0},supportPointer:!1!==t.supportPointer};for(var r in i)!(r in n)&&(n[r]=i[r]);rt(n);for(var a in this)"_"===a.charAt(0)&&"function"==typeof this[a]&&(this[a]=this[a].bind(this));this.nativeDraggable=!n.forceFallback&&Z,o(e,"mousedown",this._onTapStart),o(e,"touchstart",this._onTapStart),n.supportPointer&&o(e,"pointerdown",this._onTapStart),this.nativeDraggable&&(o(e,"dragover",this),o(e,"dragenter",this)),ot.push(this._onDragOver),n.store&&this.sort(n.store.get(this))}function e(t,e){"clone"!==t.lastPullMode&&(e=!0),w&&w.state!==e&&(a(w,"display",e?"none":""),e||w.state&&(t.options.group.revertClone?(T.insertBefore(w,C),t._animate(_,w)):T.insertBefore(w,_)),w.state=e)}function n(t,e,n){if(t){n=n||W;do{if(">*"===e&&t.parentNode===n||f(t,e))return t}while(t=function(t){var e=t.host;return e&&e.nodeType?e:t.parentNode}(t))}return null}function o(t,e,n){t.addEventListener(e,n,G)}function i(t,e,n){t.removeEventListener(e,n,G)}function r(t,e,n){if(t)if(t.classList)t.classList[n?"add":"remove"](e);else{var o=(" "+t.className+" ").replace(L," ").replace(" "+e+" "," ");t.className=(o+(n?" "+e:"")).replace(L," ")}}function a(t,e,n){var o=t&&t.style;if(o){if(void 0===n)return W.defaultView&&W.defaultView.getComputedStyle?n=W.defaultView.getComputedStyle(t,""):t.currentStyle&&(n=t.currentStyle),void 0===e?n:n[e];e in o||(e="-webkit-"+e),o[e]=n+("string"==typeof n?"":"px")}}function s(t,e,n){if(t){var o=t.getElementsByTagName(e),i=0,r=o.length;if(n)for(;i<r;i++)n(o[i],i);return o}return[]}function l(t,e,n,o,i,r,a,s){t=t||e[U];var l=W.createEvent("Event"),c=t.options,d="on"+n.charAt(0).toUpperCase()+n.substr(1);l.initEvent(n,!0,!0),l.to=i||e,l.from=r||e,l.item=o||e,l.clone=w,l.oldIndex=a,l.newIndex=s,e.dispatchEvent(l),c[d]&&c[d].call(t,l)}function c(t,e,n,o,i,r,a,s){var l,c,d=t[U],h=d.options.onMove;return(l=W.createEvent("Event")).initEvent("move",!0,!0),l.to=e,l.from=t,l.dragged=n,l.draggedRect=o,l.related=i||e,l.relatedRect=r||e.getBoundingClientRect(),l.willInsertAfter=s,t.dispatchEvent(l),h&&(c=h.call(d,l,a)),c}function d(t){t.draggable=!1}function h(){$=!1}function u(t,e){var n=0;if(!t||!t.parentNode)return-1;for(;t&&(t=t.previousElementSibling);)"TEMPLATE"===t.nodeName.toUpperCase()||">*"!==e&&!f(t,e)||n++;return n}function f(t,e){if(t){var n=(e=e.split(".")).shift().toUpperCase(),o=new RegExp("\\s("+e.join("|")+")(?=\\s)","g");return!(""!==n&&t.nodeName.toUpperCase()!=n||e.length&&((" "+t.className+" ").match(o)||[]).length!=e.length)}return!1}function p(t,e){var n,o;return function(){void 0===n&&(n=arguments,o=this,q(function(){1===n.length?t.call(o,n[0]):t.apply(o,n),n=void 0},e))}}function g(t,e){if(t&&e)for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);return t}function v(t){return z&&z.dom?z.dom(t).cloneNode(!0):V?V(t).clone(!0)[0]:t.cloneNode(!0)}function m(t){return q(t,0)}function b(t){return clearTimeout(t)}if("undefined"==typeof window||!window.document)return function(){throw new Error("KvSortable.js requires a window with a document")};var _,D,y,w,T,C,S,E,k,x,N,B,P,Y,O,X,I,R,A,M,j={},L=/\s+/g,F=/left|right|inline/,U="KvSortable"+(new Date).getTime(),H=window,W=H.document,K=H.parseInt,q=H.setTimeout,V=H.jQuery||H.Zepto,z=H.Polymer,G=!1,Q=!1,Z="draggable"in W.createElement("div"),J=function(t){return!navigator.userAgent.match(/(?:Trident.*rv[ :]?11\.|msie)/i)&&(t=W.createElement("x"),t.style.cssText="pointer-events:auto","auto"===t.style.pointerEvents)}(),$=!1,tt=Math.abs,et=Math.min,nt=[],ot=[],it=p(function(t,e,n){if(n&&e.scroll){var o,i,r,a,s,l,c=n[U],d=e.scrollSensitivity,h=e.scrollSpeed,u=t.clientX,f=t.clientY,p=window.innerWidth,g=window.innerHeight;if(k!==n&&(E=e.scroll,k=n,x=e.scrollFn,!0===E)){E=n;do{if(E.offsetWidth<E.scrollWidth||E.offsetHeight<E.scrollHeight)break}while(E=E.parentNode)}E&&(o=E,i=E.getBoundingClientRect(),r=(tt(i.right-u)<=d)-(tt(i.left-u)<=d),a=(tt(i.bottom-f)<=d)-(tt(i.top-f)<=d)),r||a||(a=(g-f<=d)-(f<=d),((r=(p-u<=d)-(u<=d))||a)&&(o=H)),j.vx===r&&j.vy===a&&j.el===o||(j.el=o,j.vx=r,j.vy=a,clearInterval(j.pid),o&&(j.pid=setInterval(function(){if(l=a?a*h:0,s=r?r*h:0,"function"==typeof x)return x.call(c,s,l,t);o===H?H.scrollTo(H.pageXOffset+s,H.pageYOffset+l):(o.scrollTop+=l,o.scrollLeft+=s)},24)))}},30),rt=function(t){function e(t,e){return void 0!==t&&!0!==t||(t=n.name),"function"==typeof t?t:function(n,o){var i=o.options.group.name;return e?t:t&&(t.join?t.indexOf(i)>-1:i==t)}}var n={},o=t.group;o&&"object"==typeof o||(o={name:o}),n.name=o.name,n.checkPull=e(o.pull,!0),n.checkPut=e(o.put),n.revertClone=o.revertClone,t.group=n};try{window.addEventListener("test",null,Object.defineProperty({},"passive",{get:function(){G={capture:!1,passive:Q=!1}}}))}catch(t){}return t.prototype={constructor:t,_onTapStart:function(t){var e,o=this,i=this.el,r=this.options,a=r.preventOnFilter,s=t.type,c=t.touches&&t.touches[0],d=(c||t).target,h=t.target.shadowRoot&&t.path&&t.path[0]||d,f=r.filter;if(function(t){for(var e=t.getElementsByTagName("input"),n=e.length;n--;){var o=e[n];o.checked&&nt.push(o)}}(i),!_&&!(/mousedown|pointerdown/.test(s)&&0!==t.button||r.disabled)&&!h.isContentEditable&&(d=n(d,r.draggable,i))&&S!==d){if(e=u(d,r.draggable),"function"==typeof f){if(f.call(this,t,d,this))return l(o,h,"filter",d,i,i,e),void(a&&t.preventDefault())}else if(f&&(f=f.split(",").some(function(t){if(t=n(h,t.trim(),i))return l(o,t,"filter",d,i,i,e),!0})))return void(a&&t.preventDefault());r.handle&&!n(h,r.handle,i)||this._prepareDragStart(t,c,d,e)}},_prepareDragStart:function(t,e,n,i){var a,c=this,h=c.el,u=c.options,f=h.ownerDocument;n&&!_&&n.parentNode===h&&(R=t,T=h,D=(_=n).parentNode,C=_.nextSibling,S=n,X=u.group,Y=i,this._lastX=(e||t).clientX,this._lastY=(e||t).clientY,_.style["will-change"]="all",a=function(){c._disableDelayedDrag(),_.draggable=c.nativeDraggable,r(_,u.chosenClass,!0),c._triggerDragStart(t,e),l(c,T,"choose",_,T,T,Y)},u.ignore.split(",").forEach(function(t){s(_,t.trim(),d)}),o(f,"mouseup",c._onDrop),o(f,"touchend",c._onDrop),o(f,"touchcancel",c._onDrop),o(f,"selectstart",c),u.supportPointer&&o(f,"pointercancel",c._onDrop),u.delay?(o(f,"mouseup",c._disableDelayedDrag),o(f,"touchend",c._disableDelayedDrag),o(f,"touchcancel",c._disableDelayedDrag),o(f,"mousemove",c._disableDelayedDrag),o(f,"touchmove",c._disableDelayedDrag),u.supportPointer&&o(f,"pointermove",c._disableDelayedDrag),c._dragStartTimer=q(a,u.delay)):a())},_disableDelayedDrag:function(){var t=this.el.ownerDocument;clearTimeout(this._dragStartTimer),i(t,"mouseup",this._disableDelayedDrag),i(t,"touchend",this._disableDelayedDrag),i(t,"touchcancel",this._disableDelayedDrag),i(t,"mousemove",this._disableDelayedDrag),i(t,"touchmove",this._disableDelayedDrag),i(t,"pointermove",this._disableDelayedDrag)},_triggerDragStart:function(t,e){(e=e||("touch"==t.pointerType?t:null))?(R={target:_,clientX:e.clientX,clientY:e.clientY},this._onDragStart(R,"touch")):this.nativeDraggable?(o(_,"dragend",this),o(T,"dragstart",this._onDragStart)):this._onDragStart(R,!0);try{W.selection?m(function(){W.selection.empty()}):window.getSelection().removeAllRanges()}catch(t){}},_dragStarted:function(){if(T&&_){var e=this.options;r(_,e.ghostClass,!0),r(_,e.dragClass,!1),t.active=this,l(this,T,"start",_,T,T,Y)}else this._nulling()},_emulateDragOver:function(){if(A){if(this._lastX===A.clientX&&this._lastY===A.clientY)return;this._lastX=A.clientX,this._lastY=A.clientY,J||a(y,"display","none");var t=W.elementFromPoint(A.clientX,A.clientY),e=t,n=ot.length;if(t&&t.shadowRoot&&(e=t=t.shadowRoot.elementFromPoint(A.clientX,A.clientY)),e)do{if(e[U]){for(;n--;)ot[n]({clientX:A.clientX,clientY:A.clientY,target:t,rootEl:e});break}t=e}while(e=e.parentNode);J||a(y,"display","")}},_onTouchMove:function(e){if(R){var n=this.options,o=n.fallbackTolerance,i=n.fallbackOffset,r=e.touches?e.touches[0]:e,s=r.clientX-R.clientX+i.x,l=r.clientY-R.clientY+i.y,c=e.touches?"translate3d("+s+"px,"+l+"px,0)":"translate("+s+"px,"+l+"px)";if(!t.active){if(o&&et(tt(r.clientX-this._lastX),tt(r.clientY-this._lastY))<o)return;this._dragStarted()}this._appendGhost(),M=!0,A=r,a(y,"webkitTransform",c),a(y,"mozTransform",c),a(y,"msTransform",c),a(y,"transform",c),e.preventDefault()}},_appendGhost:function(){if(!y){var t,e=_.getBoundingClientRect(),n=a(_),o=this.options;r(y=_.cloneNode(!0),o.ghostClass,!1),r(y,o.fallbackClass,!0),r(y,o.dragClass,!0),a(y,"top",e.top-K(n.marginTop,10)),a(y,"left",e.left-K(n.marginLeft,10)),a(y,"width",e.width),a(y,"height",e.height),a(y,"opacity","0.8"),a(y,"position","fixed"),a(y,"zIndex","100000"),a(y,"pointerEvents","none"),o.fallbackOnBody&&W.body.appendChild(y)||T.appendChild(y),t=y.getBoundingClientRect(),a(y,"width",2*e.width-t.width),a(y,"height",2*e.height-t.height)}},_onDragStart:function(t,e){var n=this,i=t.dataTransfer,s=n.options;n._offUpEvents(),X.checkPull(n,n,_,t)&&((w=v(_)).draggable=!1,w.style["will-change"]="",a(w,"display","none"),r(w,n.options.chosenClass,!1),n._cloneId=m(function(){T.insertBefore(w,_),l(n,T,"clone",_)})),r(_,s.dragClass,!0),e?("touch"===e?(o(W,"touchmove",n._onTouchMove),o(W,"touchend",n._onDrop),o(W,"touchcancel",n._onDrop),s.supportPointer&&(o(W,"pointermove",n._onTouchMove),o(W,"pointerup",n._onDrop))):(o(W,"mousemove",n._onTouchMove),o(W,"mouseup",n._onDrop)),n._loopId=setInterval(n._emulateDragOver,50)):(i&&(i.effectAllowed="move",s.setData&&s.setData.call(n,i,_)),o(W,"drop",n),n._dragStartId=m(n._dragStarted))},_onDragOver:function(o){var i,r,s,l,d=this.el,u=this.options,f=u.group,p=t.active,g=X===f,v=!1,m=u.sort;if(void 0!==o.preventDefault&&(o.preventDefault(),!u.dragoverBubble&&o.stopPropagation()),!_.animated&&(M=!0,p&&!u.disabled&&(g?m||(l=!T.contains(_)):I===this||(p.lastPullMode=X.checkPull(this,p,_,o))&&f.checkPut(this,p,_,o))&&(void 0===o.rootEl||o.rootEl===this.el))){if(it(o,u,this.el),$)return;if(i=n(o.target,u.draggable,d),r=_.getBoundingClientRect(),I!==this&&(I=this,v=!0),l)return e(p,!0),D=T,void(w||C?T.insertBefore(_,w||C):m||T.appendChild(_));if(0===d.children.length||d.children[0]===y||d===o.target&&function(t,e){var n=t.lastElementChild.getBoundingClientRect();return e.clientY-(n.top+n.height)>5||e.clientX-(n.left+n.width)>5}(d,o)){if(0!==d.children.length&&d.children[0]!==y&&d===o.target&&(i=d.lastElementChild),i){if(i.animated)return;s=i.getBoundingClientRect()}e(p,g),!1!==c(T,d,_,r,i,s,o)&&(_.contains(d)||(d.appendChild(_),D=d),this._animate(r,_),i&&this._animate(s,i))}else if(i&&!i.animated&&i!==_&&void 0!==i.parentNode[U]){N!==i&&(N=i,B=a(i),P=a(i.parentNode));var b=(s=i.getBoundingClientRect()).right-s.left,S=s.bottom-s.top,E=F.test(B.cssFloat+B.display)||"flex"==P.display&&0===P["flex-direction"].indexOf("row"),k=i.offsetWidth>_.offsetWidth,x=i.offsetHeight>_.offsetHeight,Y=(E?(o.clientX-s.left)/b:(o.clientY-s.top)/S)>.5,O=i.nextElementSibling,R=!1;if(E){var A=_.offsetTop,j=i.offsetTop;R=A===j?i.previousElementSibling===_&&!k||Y&&k:i.previousElementSibling===_||_.previousElementSibling===i?(o.clientY-s.top)/S>.5:j>A}else v||(R=O!==_&&!x||Y&&x);var L=c(T,d,_,r,i,s,o,R);!1!==L&&(1!==L&&-1!==L||(R=1===L),$=!0,q(h,30),e(p,g),_.contains(d)||(R&&!O?d.appendChild(_):i.parentNode.insertBefore(_,R?O:i)),D=_.parentNode,this._animate(r,_),this._animate(s,i))}}},_animate:function(t,e){var n=this.options.animation;if(n){var o=e.getBoundingClientRect();1===t.nodeType&&(t=t.getBoundingClientRect()),a(e,"transition","none"),a(e,"transform","translate3d("+(t.left-o.left)+"px,"+(t.top-o.top)+"px,0)"),e.offsetWidth,a(e,"transition","all "+n+"ms"),a(e,"transform","translate3d(0,0,0)"),clearTimeout(e.animated),e.animated=q(function(){a(e,"transition",""),a(e,"transform",""),e.animated=!1},n)}},_offUpEvents:function(){var t=this.el.ownerDocument;i(W,"touchmove",this._onTouchMove),i(W,"pointermove",this._onTouchMove),i(t,"mouseup",this._onDrop),i(t,"touchend",this._onDrop),i(t,"pointerup",this._onDrop),i(t,"touchcancel",this._onDrop),i(t,"pointercancel",this._onDrop),i(t,"selectstart",this)},_onDrop:function(e){var n=this.el,o=this.options;clearInterval(this._loopId),clearInterval(j.pid),clearTimeout(this._dragStartTimer),b(this._cloneId),b(this._dragStartId),i(W,"mouseover",this),i(W,"mousemove",this._onTouchMove),this.nativeDraggable&&(i(W,"drop",this),i(n,"dragstart",this._onDragStart)),this._offUpEvents(),e&&(M&&(e.preventDefault(),!o.dropBubble&&e.stopPropagation()),y&&y.parentNode&&y.parentNode.removeChild(y),T!==D&&"clone"===t.active.lastPullMode||w&&w.parentNode&&w.parentNode.removeChild(w),_&&(this.nativeDraggable&&i(_,"dragend",this),d(_),_.style["will-change"]="",r(_,this.options.ghostClass,!1),r(_,this.options.chosenClass,!1),l(this,T,"unchoose",_,D,T,Y),T!==D?(O=u(_,o.draggable))>=0&&(l(null,D,"add",_,D,T,Y,O),l(this,T,"remove",_,D,T,Y,O),l(null,D,"sort",_,D,T,Y,O),l(this,T,"sort",_,D,T,Y,O)):_.nextSibling!==C&&(O=u(_,o.draggable))>=0&&(l(this,T,"update",_,D,T,Y,O),l(this,T,"sort",_,D,T,Y,O)),t.active&&(null!=O&&-1!==O||(O=Y),l(this,T,"end",_,D,T,Y,O),this.save()))),this._nulling()},_nulling:function(){T=_=D=y=C=w=S=E=k=R=A=M=O=N=B=I=X=t.active=null,nt.forEach(function(t){t.checked=!0}),nt.length=0},handleEvent:function(t){switch(t.type){case"drop":case"dragend":this._onDrop(t);break;case"dragover":case"dragenter":_&&(this._onDragOver(t),function(t){t.dataTransfer&&(t.dataTransfer.dropEffect="move"),t.preventDefault()}(t));break;case"mouseover":this._onDrop(t);break;case"selectstart":t.preventDefault()}},toArray:function(){for(var t,e=[],o=this.el.children,i=0,r=o.length,a=this.options;i<r;i++)n(t=o[i],a.draggable,this.el)&&e.push(t.getAttribute(a.dataIdAttr)||function(t){for(var e=t.tagName+t.className+t.src+t.href+t.textContent,n=e.length,o=0;n--;)o+=e.charCodeAt(n);return o.toString(36)}(t));return e},sort:function(t){var e={},o=this.el;this.toArray().forEach(function(t,i){var r=o.children[i];n(r,this.options.draggable,o)&&(e[t]=r)},this),t.forEach(function(t){e[t]&&(o.removeChild(e[t]),o.appendChild(e[t]))})},save:function(){var t=this.options.store;t&&t.set(this)},closest:function(t,e){return n(t,e||this.options.draggable,this.el)},option:function(t,e){var n=this.options;if(void 0===e)return n[t];n[t]=e,"group"===t&&rt(n)},destroy:function(){var t=this.el;t[U]=null,i(t,"mousedown",this._onTapStart),i(t,"touchstart",this._onTapStart),i(t,"pointerdown",this._onTapStart),this.nativeDraggable&&(i(t,"dragover",this),i(t,"dragenter",this)),Array.prototype.forEach.call(t.querySelectorAll("[draggable]"),function(t){t.removeAttribute("draggable")}),ot.splice(ot.indexOf(this._onDragOver),1),this._onDrop(),this.el=t=null}},o(W,"touchmove",function(e){t.active&&e.preventDefault()}),t.utils={on:o,off:i,css:a,find:s,is:function(t,e){return!!n(t,e,t)},extend:g,throttle:p,closest:n,toggleClass:r,clone:v,index:u,nextTick:m,cancelNextTick:b},t.create=function(e,n){return new t(e,n)},t.version="1.7.0",t}),function(t){"use strict";"function"==typeof define&&define.amd?define(["jquery"],t):t(jQuery)}(function(t){"use strict";t.fn.kvsortable=function(e){var n,o=arguments;return this.each(function(){var i=t(this),r=i.data("kvsortable");r||!(e instanceof Object)&&e||(r=new KvSortable(this,e),i.data("kvsortable",r)),r&&("widget"===e?n=r:"destroy"===e?(r.destroy(),i.removeData("kvsortable")):"function"==typeof r[e]?n=r[e].apply(r,[].slice.call(o,1)):e in r.options&&(n=r.option.apply(r,o)))}),void 0===n?this:n}});
@@ -0,0 +1,94 @@
1
+ var editor = '';
2
+ var editor_robots = '';
3
+
4
+ var controls = {
5
+ codes: {},
6
+ save: function(id) {
7
+ this.codes = {
8
+ ruby: editor.getValue()
9
+ }
10
+ $.post("/admin/seo/editor/save", this.codes, function(data){
11
+ $("#code-sitemap").val(editor.getValue())
12
+ $('.sitemap_signal').css('display', 'none');
13
+ })
14
+ },
15
+ saveTxt: function(id) {
16
+ this.codes = {
17
+ txt: editor_robots.getValue()
18
+ }
19
+ $.post("/admin/seo/editor/save", this.codes, function(data){
20
+ $("#code-robots").val(editor_robots.getValue())
21
+ $('.robots_signal').css('display', 'none');
22
+ })
23
+ }
24
+ }
25
+
26
+ var codeSitemap = {
27
+ codeMirrorSitemap: function(code) {
28
+ $("#code-sitemap").each(function() {
29
+ CodeMirror.commands.autocomplete = function(cm) {
30
+ cm.showHint({hint: CodeMirror.hint.anyword});
31
+ }
32
+ editor = CodeMirror.fromTextArea($(this).get(0), {
33
+ lineNumbers: true,
34
+ mode: "text/x-ruby",
35
+ keyMap: "sublime",
36
+ theme: 'monokai',
37
+ autoCloseBrackets: true,
38
+ matchBrackets: true,
39
+ indentUnit: 2,
40
+ tabSize: 2,
41
+ showTrailingSpace: true,
42
+ highlightSelectionMatches: {
43
+ showToken: /\w/,
44
+ annotateScrollbar: true
45
+ },
46
+ extraKeys: {"Ctrl-Space": "autocomplete"}
47
+ });
48
+
49
+ editor.on('change', function () {
50
+ if(editor.getValue() === $("#code-sitemap").val()) {
51
+ $('.sitemap_signal').css('display', 'none');
52
+ } else {
53
+ $('.sitemap_signal').css('display', 'block');
54
+ }
55
+ });
56
+ });
57
+ return editor;
58
+ }
59
+ }
60
+
61
+ var codeRobots = {
62
+ codeMirrorRobots: function(code) {
63
+ $("#code-robots").each(function() {
64
+ CodeMirror.commands.autocomplete = function(cm) {
65
+ cm.showHint({hint: CodeMirror.hint.anyword});
66
+ }
67
+ editor_robots = CodeMirror.fromTextArea($(this).get(0), {
68
+ lineNumbers: true,
69
+ mode: "text/x-ruby",
70
+ keyMap: "sublime",
71
+ theme: 'monokai',
72
+ autoCloseBrackets: true,
73
+ matchBrackets: true,
74
+ indentUnit: 2,
75
+ tabSize: 2,
76
+ showTrailingSpace: true,
77
+ highlightSelectionMatches: {
78
+ showToken: /\w/,
79
+ annotateScrollbar: true
80
+ },
81
+ extraKeys: {"Ctrl-Space": "autocomplete"}
82
+ });
83
+
84
+ editor_robots.on('change', function () {
85
+ if(editor_robots.getValue() === $("#code-robots").val()) {
86
+ $('.robots_signal').css('display', 'none');
87
+ } else {
88
+ $('.robots_signal').css('display', 'block');
89
+ }
90
+ });
91
+ });
92
+ return editor_robots;
93
+ }
94
+ }
@@ -0,0 +1,209 @@
1
+ // CodeMirror, copyright (c) by Marijn Haverbeke and others
2
+ // Distributed under an MIT license: http://codemirror.net/LICENSE
3
+
4
+ (function(mod) {
5
+ if (typeof exports == "object" && typeof module == "object") // CommonJS
6
+ mod(require("../../lib/codemirror"));
7
+ else if (typeof define == "function" && define.amd) // AMD
8
+ define(["../../lib/codemirror"], mod);
9
+ else // Plain browser env
10
+ mod(CodeMirror);
11
+ })(function(CodeMirror) {
12
+ "use strict";
13
+
14
+ var noOptions = {};
15
+ var nonWS = /[^\s\u00a0]/;
16
+ var Pos = CodeMirror.Pos;
17
+
18
+ function firstNonWS(str) {
19
+ var found = str.search(nonWS);
20
+ return found == -1 ? 0 : found;
21
+ }
22
+
23
+ CodeMirror.commands.toggleComment = function(cm) {
24
+ cm.toggleComment();
25
+ };
26
+
27
+ CodeMirror.defineExtension("toggleComment", function(options) {
28
+ if (!options) options = noOptions;
29
+ var cm = this;
30
+ var minLine = Infinity, ranges = this.listSelections(), mode = null;
31
+ for (var i = ranges.length - 1; i >= 0; i--) {
32
+ var from = ranges[i].from(), to = ranges[i].to();
33
+ if (from.line >= minLine) continue;
34
+ if (to.line >= minLine) to = Pos(minLine, 0);
35
+ minLine = from.line;
36
+ if (mode == null) {
37
+ if (cm.uncomment(from, to, options)) mode = "un";
38
+ else { cm.lineComment(from, to, options); mode = "line"; }
39
+ } else if (mode == "un") {
40
+ cm.uncomment(from, to, options);
41
+ } else {
42
+ cm.lineComment(from, to, options);
43
+ }
44
+ }
45
+ });
46
+
47
+ // Rough heuristic to try and detect lines that are part of multi-line string
48
+ function probablyInsideString(cm, pos, line) {
49
+ return /\bstring\b/.test(cm.getTokenTypeAt(Pos(pos.line, 0))) && !/^[\'\"\`]/.test(line)
50
+ }
51
+
52
+ function getMode(cm, pos) {
53
+ var mode = cm.getMode()
54
+ return mode.useInnerComments === false || !mode.innerMode ? mode : cm.getModeAt(pos)
55
+ }
56
+
57
+ CodeMirror.defineExtension("lineComment", function(from, to, options) {
58
+ if (!options) options = noOptions;
59
+ var self = this, mode = getMode(self, from);
60
+ var firstLine = self.getLine(from.line);
61
+ if (firstLine == null || probablyInsideString(self, from, firstLine)) return;
62
+
63
+ var commentString = options.lineComment || mode.lineComment;
64
+ if (!commentString) {
65
+ if (options.blockCommentStart || mode.blockCommentStart) {
66
+ options.fullLines = true;
67
+ self.blockComment(from, to, options);
68
+ }
69
+ return;
70
+ }
71
+
72
+ var end = Math.min(to.ch != 0 || to.line == from.line ? to.line + 1 : to.line, self.lastLine() + 1);
73
+ var pad = options.padding == null ? " " : options.padding;
74
+ var blankLines = options.commentBlankLines || from.line == to.line;
75
+
76
+ self.operation(function() {
77
+ if (options.indent) {
78
+ var baseString = null;
79
+ for (var i = from.line; i < end; ++i) {
80
+ var line = self.getLine(i);
81
+ var whitespace = line.slice(0, firstNonWS(line));
82
+ if (baseString == null || baseString.length > whitespace.length) {
83
+ baseString = whitespace;
84
+ }
85
+ }
86
+ for (var i = from.line; i < end; ++i) {
87
+ var line = self.getLine(i), cut = baseString.length;
88
+ if (!blankLines && !nonWS.test(line)) continue;
89
+ if (line.slice(0, cut) != baseString) cut = firstNonWS(line);
90
+ self.replaceRange(baseString + commentString + pad, Pos(i, 0), Pos(i, cut));
91
+ }
92
+ } else {
93
+ for (var i = from.line; i < end; ++i) {
94
+ if (blankLines || nonWS.test(self.getLine(i)))
95
+ self.replaceRange(commentString + pad, Pos(i, 0));
96
+ }
97
+ }
98
+ });
99
+ });
100
+
101
+ CodeMirror.defineExtension("blockComment", function(from, to, options) {
102
+ if (!options) options = noOptions;
103
+ var self = this, mode = getMode(self, from);
104
+ var startString = options.blockCommentStart || mode.blockCommentStart;
105
+ var endString = options.blockCommentEnd || mode.blockCommentEnd;
106
+ if (!startString || !endString) {
107
+ if ((options.lineComment || mode.lineComment) && options.fullLines != false)
108
+ self.lineComment(from, to, options);
109
+ return;
110
+ }
111
+ if (/\bcomment\b/.test(self.getTokenTypeAt(Pos(from.line, 0)))) return
112
+
113
+ var end = Math.min(to.line, self.lastLine());
114
+ if (end != from.line && to.ch == 0 && nonWS.test(self.getLine(end))) --end;
115
+
116
+ var pad = options.padding == null ? " " : options.padding;
117
+ if (from.line > end) return;
118
+
119
+ self.operation(function() {
120
+ if (options.fullLines != false) {
121
+ var lastLineHasText = nonWS.test(self.getLine(end));
122
+ self.replaceRange(pad + endString, Pos(end));
123
+ self.replaceRange(startString + pad, Pos(from.line, 0));
124
+ var lead = options.blockCommentLead || mode.blockCommentLead;
125
+ if (lead != null) for (var i = from.line + 1; i <= end; ++i)
126
+ if (i != end || lastLineHasText)
127
+ self.replaceRange(lead + pad, Pos(i, 0));
128
+ } else {
129
+ self.replaceRange(endString, to);
130
+ self.replaceRange(startString, from);
131
+ }
132
+ });
133
+ });
134
+
135
+ CodeMirror.defineExtension("uncomment", function(from, to, options) {
136
+ if (!options) options = noOptions;
137
+ var self = this, mode = getMode(self, from);
138
+ var end = Math.min(to.ch != 0 || to.line == from.line ? to.line : to.line - 1, self.lastLine()), start = Math.min(from.line, end);
139
+
140
+ // Try finding line comments
141
+ var lineString = options.lineComment || mode.lineComment, lines = [];
142
+ var pad = options.padding == null ? " " : options.padding, didSomething;
143
+ lineComment: {
144
+ if (!lineString) break lineComment;
145
+ for (var i = start; i <= end; ++i) {
146
+ var line = self.getLine(i);
147
+ var found = line.indexOf(lineString);
148
+ if (found > -1 && !/comment/.test(self.getTokenTypeAt(Pos(i, found + 1)))) found = -1;
149
+ if (found == -1 && nonWS.test(line)) break lineComment;
150
+ if (found > -1 && nonWS.test(line.slice(0, found))) break lineComment;
151
+ lines.push(line);
152
+ }
153
+ self.operation(function() {
154
+ for (var i = start; i <= end; ++i) {
155
+ var line = lines[i - start];
156
+ var pos = line.indexOf(lineString), endPos = pos + lineString.length;
157
+ if (pos < 0) continue;
158
+ if (line.slice(endPos, endPos + pad.length) == pad) endPos += pad.length;
159
+ didSomething = true;
160
+ self.replaceRange("", Pos(i, pos), Pos(i, endPos));
161
+ }
162
+ });
163
+ if (didSomething) return true;
164
+ }
165
+
166
+ // Try block comments
167
+ var startString = options.blockCommentStart || mode.blockCommentStart;
168
+ var endString = options.blockCommentEnd || mode.blockCommentEnd;
169
+ if (!startString || !endString) return false;
170
+ var lead = options.blockCommentLead || mode.blockCommentLead;
171
+ var startLine = self.getLine(start), open = startLine.indexOf(startString)
172
+ if (open == -1) return false
173
+ var endLine = end == start ? startLine : self.getLine(end)
174
+ var close = endLine.indexOf(endString, end == start ? open + startString.length : 0);
175
+ var insideStart = Pos(start, open + 1), insideEnd = Pos(end, close + 1)
176
+ if (close == -1 ||
177
+ !/comment/.test(self.getTokenTypeAt(insideStart)) ||
178
+ !/comment/.test(self.getTokenTypeAt(insideEnd)) ||
179
+ self.getRange(insideStart, insideEnd, "\n").indexOf(endString) > -1)
180
+ return false;
181
+
182
+ // Avoid killing block comments completely outside the selection.
183
+ // Positions of the last startString before the start of the selection, and the first endString after it.
184
+ var lastStart = startLine.lastIndexOf(startString, from.ch);
185
+ var firstEnd = lastStart == -1 ? -1 : startLine.slice(0, from.ch).indexOf(endString, lastStart + startString.length);
186
+ if (lastStart != -1 && firstEnd != -1 && firstEnd + endString.length != from.ch) return false;
187
+ // Positions of the first endString after the end of the selection, and the last startString before it.
188
+ firstEnd = endLine.indexOf(endString, to.ch);
189
+ var almostLastStart = endLine.slice(to.ch).lastIndexOf(startString, firstEnd - to.ch);
190
+ lastStart = (firstEnd == -1 || almostLastStart == -1) ? -1 : to.ch + almostLastStart;
191
+ if (firstEnd != -1 && lastStart != -1 && lastStart != to.ch) return false;
192
+
193
+ self.operation(function() {
194
+ self.replaceRange("", Pos(end, close - (pad && endLine.slice(close - pad.length, close) == pad ? pad.length : 0)),
195
+ Pos(end, close + endString.length));
196
+ var openEnd = open + startString.length;
197
+ if (pad && startLine.slice(openEnd, openEnd + pad.length) == pad) openEnd += pad.length;
198
+ self.replaceRange("", Pos(start, open), Pos(start, openEnd));
199
+ if (lead) for (var i = start + 1; i <= end; ++i) {
200
+ var line = self.getLine(i), found = line.indexOf(lead);
201
+ if (found == -1 || nonWS.test(line.slice(0, found))) continue;
202
+ var foundEnd = found + lead.length;
203
+ if (pad && line.slice(foundEnd, foundEnd + pad.length) == pad) foundEnd += pad.length;
204
+ self.replaceRange("", Pos(i, found), Pos(i, foundEnd));
205
+ }
206
+ });
207
+ return true;
208
+ });
209
+ });
@@ -0,0 +1,78 @@
1
+ // CodeMirror, copyright (c) by Marijn Haverbeke and others
2
+ // Distributed under an MIT license: http://codemirror.net/LICENSE
3
+
4
+ (function(mod) {
5
+ if (typeof exports == "object" && typeof module == "object") // CommonJS
6
+ mod(require("../../lib/codemirror"));
7
+ else if (typeof define == "function" && define.amd) // AMD
8
+ define(["../../lib/codemirror"], mod);
9
+ else // Plain browser env
10
+ mod(CodeMirror);
11
+ })(function(CodeMirror) {
12
+ function continueComment(cm) {
13
+ if (cm.getOption("disableInput")) return CodeMirror.Pass;
14
+ var ranges = cm.listSelections(), mode, inserts = [];
15
+ for (var i = 0; i < ranges.length; i++) {
16
+ var pos = ranges[i].head
17
+ if (!/\bcomment\b/.test(cm.getTokenTypeAt(pos))) return CodeMirror.Pass;
18
+ var modeHere = cm.getModeAt(pos)
19
+ if (!mode) mode = modeHere;
20
+ else if (mode != modeHere) return CodeMirror.Pass;
21
+
22
+ var insert = null;
23
+ if (mode.blockCommentStart && mode.blockCommentContinue) {
24
+ var line = cm.getLine(pos.line).slice(0, pos.ch)
25
+ var end = line.lastIndexOf(mode.blockCommentEnd), found
26
+ if (end != -1 && end == pos.ch - mode.blockCommentEnd.length) {
27
+ // Comment ended, don't continue it
28
+ } else if ((found = line.lastIndexOf(mode.blockCommentStart)) > -1 && found > end) {
29
+ insert = line.slice(0, found)
30
+ if (/\S/.test(insert)) {
31
+ insert = ""
32
+ for (var j = 0; j < found; ++j) insert += " "
33
+ }
34
+ } else if ((found = line.indexOf(mode.blockCommentContinue)) > -1 && !/\S/.test(line.slice(0, found))) {
35
+ insert = line.slice(0, found)
36
+ }
37
+ if (insert != null) insert += mode.blockCommentContinue
38
+ }
39
+ if (insert == null && mode.lineComment && continueLineCommentEnabled(cm)) {
40
+ var line = cm.getLine(pos.line), found = line.indexOf(mode.lineComment);
41
+ if (found > -1) {
42
+ insert = line.slice(0, found);
43
+ if (/\S/.test(insert)) insert = null;
44
+ else insert += mode.lineComment + line.slice(found + mode.lineComment.length).match(/^\s*/)[0];
45
+ }
46
+ }
47
+ if (insert == null) return CodeMirror.Pass;
48
+ inserts[i] = "\n" + insert;
49
+ }
50
+
51
+ cm.operation(function() {
52
+ for (var i = ranges.length - 1; i >= 0; i--)
53
+ cm.replaceRange(inserts[i], ranges[i].from(), ranges[i].to(), "+insert");
54
+ });
55
+ }
56
+
57
+ function continueLineCommentEnabled(cm) {
58
+ var opt = cm.getOption("continueComments");
59
+ if (opt && typeof opt == "object")
60
+ return opt.continueLineComment !== false;
61
+ return true;
62
+ }
63
+
64
+ CodeMirror.defineOption("continueComments", null, function(cm, val, prev) {
65
+ if (prev && prev != CodeMirror.Init)
66
+ cm.removeKeyMap("continueComment");
67
+ if (val) {
68
+ var key = "Enter";
69
+ if (typeof val == "string")
70
+ key = val;
71
+ else if (typeof val == "object" && val.key)
72
+ key = val.key;
73
+ var map = {name: "continueComment"};
74
+ map[key] = continueComment;
75
+ cm.addKeyMap(map);
76
+ }
77
+ });
78
+ });
@@ -0,0 +1,32 @@
1
+ .CodeMirror-dialog {
2
+ position: absolute;
3
+ left: 0; right: 0;
4
+ background: inherit;
5
+ z-index: 15;
6
+ padding: .1em .8em;
7
+ overflow: hidden;
8
+ color: inherit;
9
+ }
10
+
11
+ .CodeMirror-dialog-top {
12
+ border-bottom: 1px solid #eee;
13
+ top: 0;
14
+ }
15
+
16
+ .CodeMirror-dialog-bottom {
17
+ border-top: 1px solid #eee;
18
+ bottom: 0;
19
+ }
20
+
21
+ .CodeMirror-dialog input {
22
+ border: none;
23
+ outline: none;
24
+ background: transparent;
25
+ width: 20em;
26
+ color: inherit;
27
+ font-family: monospace;
28
+ }
29
+
30
+ .CodeMirror-dialog button {
31
+ font-size: 70%;
32
+ }
@@ -0,0 +1,161 @@
1
+ // CodeMirror, copyright (c) by Marijn Haverbeke and others
2
+ // Distributed under an MIT license: http://codemirror.net/LICENSE
3
+
4
+ // Open simple dialogs on top of an editor. Relies on dialog.css.
5
+
6
+ (function(mod) {
7
+ if (typeof exports == "object" && typeof module == "object") // CommonJS
8
+ mod(require("../../codemirror"));
9
+ else if (typeof define == "function" && define.amd) // AMD
10
+ define(["../../codemirror"], mod);
11
+ else // Plain browser env
12
+ mod(CodeMirror);
13
+ })(function(CodeMirror) {
14
+ function dialogDiv(cm, template, bottom) {
15
+ var wrap = cm.getWrapperElement();
16
+ var dialog;
17
+ dialog = wrap.appendChild(document.createElement("div"));
18
+ if (bottom)
19
+ dialog.className = "CodeMirror-dialog CodeMirror-dialog-bottom";
20
+ else
21
+ dialog.className = "CodeMirror-dialog CodeMirror-dialog-top";
22
+
23
+ if (typeof template == "string") {
24
+ dialog.innerHTML = template;
25
+ } else { // Assuming it's a detached DOM element.
26
+ dialog.appendChild(template);
27
+ }
28
+ CodeMirror.addClass(wrap, 'dialog-opened');
29
+ return dialog;
30
+ }
31
+
32
+ function closeNotification(cm, newVal) {
33
+ if (cm.state.currentNotificationClose)
34
+ cm.state.currentNotificationClose();
35
+ cm.state.currentNotificationClose = newVal;
36
+ }
37
+
38
+ CodeMirror.defineExtension("openDialog", function(template, callback, options) {
39
+ if (!options) options = {};
40
+
41
+ closeNotification(this, null);
42
+
43
+ var dialog = dialogDiv(this, template, options.bottom);
44
+ var closed = false, me = this;
45
+ function close(newVal) {
46
+ if (typeof newVal == 'string') {
47
+ inp.value = newVal;
48
+ } else {
49
+ if (closed) return;
50
+ closed = true;
51
+ CodeMirror.rmClass(dialog.parentNode, 'dialog-opened');
52
+ dialog.parentNode.removeChild(dialog);
53
+ me.focus();
54
+
55
+ if (options.onClose) options.onClose(dialog);
56
+ }
57
+ }
58
+
59
+ var inp = dialog.getElementsByTagName("input")[0], button;
60
+ if (inp) {
61
+ inp.focus();
62
+
63
+ if (options.value) {
64
+ inp.value = options.value;
65
+ if (options.selectValueOnOpen !== false) {
66
+ inp.select();
67
+ }
68
+ }
69
+
70
+ if (options.onInput)
71
+ CodeMirror.on(inp, "input", function(e) { options.onInput(e, inp.value, close);});
72
+ if (options.onKeyUp)
73
+ CodeMirror.on(inp, "keyup", function(e) {options.onKeyUp(e, inp.value, close);});
74
+
75
+ CodeMirror.on(inp, "keydown", function(e) {
76
+ if (options && options.onKeyDown && options.onKeyDown(e, inp.value, close)) { return; }
77
+ if (e.keyCode == 27 || (options.closeOnEnter !== false && e.keyCode == 13)) {
78
+ inp.blur();
79
+ CodeMirror.e_stop(e);
80
+ close();
81
+ }
82
+ if (e.keyCode == 13) callback(inp.value, e);
83
+ });
84
+
85
+ if (options.closeOnBlur !== false) CodeMirror.on(inp, "blur", close);
86
+ } else if (button = dialog.getElementsByTagName("button")[0]) {
87
+ CodeMirror.on(button, "click", function() {
88
+ close();
89
+ me.focus();
90
+ });
91
+
92
+ if (options.closeOnBlur !== false) CodeMirror.on(button, "blur", close);
93
+
94
+ button.focus();
95
+ }
96
+ return close;
97
+ });
98
+
99
+ CodeMirror.defineExtension("openConfirm", function(template, callbacks, options) {
100
+ closeNotification(this, null);
101
+ var dialog = dialogDiv(this, template, options && options.bottom);
102
+ var buttons = dialog.getElementsByTagName("button");
103
+ var closed = false, me = this, blurring = 1;
104
+ function close() {
105
+ if (closed) return;
106
+ closed = true;
107
+ CodeMirror.rmClass(dialog.parentNode, 'dialog-opened');
108
+ dialog.parentNode.removeChild(dialog);
109
+ me.focus();
110
+ }
111
+ buttons[0].focus();
112
+ for (var i = 0; i < buttons.length; ++i) {
113
+ var b = buttons[i];
114
+ (function(callback) {
115
+ CodeMirror.on(b, "click", function(e) {
116
+ CodeMirror.e_preventDefault(e);
117
+ close();
118
+ if (callback) callback(me);
119
+ });
120
+ })(callbacks[i]);
121
+ CodeMirror.on(b, "blur", function() {
122
+ --blurring;
123
+ setTimeout(function() { if (blurring <= 0) close(); }, 200);
124
+ });
125
+ CodeMirror.on(b, "focus", function() { ++blurring; });
126
+ }
127
+ });
128
+
129
+ /*
130
+ * openNotification
131
+ * Opens a notification, that can be closed with an optional timer
132
+ * (default 5000ms timer) and always closes on click.
133
+ *
134
+ * If a notification is opened while another is opened, it will close the
135
+ * currently opened one and open the new one immediately.
136
+ */
137
+ CodeMirror.defineExtension("openNotification", function(template, options) {
138
+ closeNotification(this, close);
139
+ var dialog = dialogDiv(this, template, options && options.bottom);
140
+ var closed = false, doneTimer;
141
+ var duration = options && typeof options.duration !== "undefined" ? options.duration : 5000;
142
+
143
+ function close() {
144
+ if (closed) return;
145
+ closed = true;
146
+ clearTimeout(doneTimer);
147
+ CodeMirror.rmClass(dialog.parentNode, 'dialog-opened');
148
+ dialog.parentNode.removeChild(dialog);
149
+ }
150
+
151
+ CodeMirror.on(dialog, 'click', function(e) {
152
+ CodeMirror.e_preventDefault(e);
153
+ close();
154
+ });
155
+
156
+ if (duration)
157
+ doneTimer = setTimeout(close, duration);
158
+
159
+ return close;
160
+ });
161
+ });