rubber_ring 0.0.1 → 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (513) hide show
  1. checksums.yaml +4 -4
  2. data/MIT-LICENSE +0 -0
  3. data/README.md +31 -26
  4. data/Rakefile +0 -0
  5. data/app/assets/images/glyphicons-halflings-white.png +0 -0
  6. data/app/assets/images/glyphicons-halflings.png +0 -0
  7. data/app/assets/javascripts/libs/dropzone.js +0 -0
  8. data/app/assets/javascripts/libs/h5utils.js +0 -0
  9. data/app/assets/javascripts/rubber_ring/application.js +17 -17
  10. data/app/assets/javascripts/rubber_ring/attachment_dragger.coffee +1 -1
  11. data/app/assets/javascripts/rubber_ring/attachment_manager.coffee +1 -1
  12. data/app/assets/javascripts/rubber_ring/attachment_uploader.coffee +0 -0
  13. data/app/assets/javascripts/rubber_ring/dropdown_menu.coffee +0 -0
  14. data/app/assets/javascripts/rubber_ring/editor.coffee +48 -56
  15. data/app/assets/javascripts/rubber_ring/link_editor.coffee +0 -0
  16. data/app/assets/javascripts/rubber_ring/persistence_manager.coffee +77 -74
  17. data/app/assets/javascripts/rubber_ring/template_editor.coffee +76 -76
  18. data/app/assets/javascripts/rubber_ring/util.coffee +22 -22
  19. data/app/assets/stylesheets/libs/bootstrap.scss.erb +0 -0
  20. data/app/assets/stylesheets/rubber_ring/application.css +0 -0
  21. data/app/assets/stylesheets/rubber_ring/cms.scss +200 -183
  22. data/app/concerns/rubber_ring/build.rb +4 -1
  23. data/app/concerns/rubber_ring/publish.rb +0 -0
  24. data/app/concerns/rubber_ring/util.rb +0 -0
  25. data/app/controllers/rubber_ring/attachments_controller.rb +52 -52
  26. data/app/controllers/rubber_ring/cms_controller.rb +57 -41
  27. data/app/controllers/rubber_ring/rubber_ring_controller.rb +67 -67
  28. data/app/controllers/rubber_ring/sessions_controller.rb +0 -0
  29. data/app/helpers/rubber_ring/cms_helper.rb +127 -122
  30. data/app/models/rubber_ring/page.rb +126 -126
  31. data/app/models/rubber_ring/page_content.rb +5 -5
  32. data/app/models/rubber_ring/page_template.rb +5 -5
  33. data/app/views/layouts/rubber_ring/application.html.erb +0 -0
  34. data/app/views/rubber_ring/_application.html.erb +7 -0
  35. data/app/views/rubber_ring/_head.html.erb +0 -0
  36. data/app/views/rubber_ring/_template_control.html.erb +19 -20
  37. data/app/views/rubber_ring/sessions/new.html.erb +0 -0
  38. data/config/routes.rb +20 -20
  39. data/db/migrate/20130520170602_create_pages.rubber_ring.rb +11 -11
  40. data/db/migrate/20130520170603_create_rubber_ring_page_contents.rubber_ring.rb +11 -11
  41. data/db/migrate/20130520170604_create_rubber_ring_page_templates.rubber_ring.rb +14 -14
  42. data/db/seeds.rb +0 -0
  43. data/lib/generators/rubber_ring/install/USAGE +0 -0
  44. data/lib/generators/rubber_ring/install/install_generator.rb +0 -0
  45. data/lib/generators/rubber_ring/install/templates/application.js +0 -0
  46. data/lib/generators/rubber_ring/install/templates/layout.html.erb +0 -0
  47. data/lib/generators/rubber_ring/install/templates/publish_template.yml +0 -0
  48. data/lib/generators/rubber_ring/install/templates/settings_template.rb +0 -0
  49. data/lib/generators/rubber_ring/page/USAGE +0 -0
  50. data/lib/generators/rubber_ring/page/page_generator.rb +0 -0
  51. data/lib/generators/rubber_ring/page/templates/action.html.erb +0 -0
  52. data/lib/generators/rubber_ring/page/templates/controller.rb +1 -9
  53. data/lib/rubber_ring/engine.rb +0 -0
  54. data/lib/rubber_ring/version.rb +1 -1
  55. data/lib/rubber_ring.rb +0 -0
  56. data/lib/tasks/rubber_ring_tasks.rake +0 -0
  57. data/spec/concerns/util_spec.rb +0 -0
  58. data/spec/controllers/attachments_controller_spec.rb +0 -0
  59. data/spec/controllers/cms_controller_spec.rb +150 -150
  60. data/spec/controllers/sessions_controller_spec.rb +0 -0
  61. data/spec/helpers/cms_helper_spec.rb +86 -63
  62. data/spec/javascripts/fixtures/duplicate_fields.html +2 -2
  63. data/spec/javascripts/fixtures/editable_fields.html +26 -15
  64. data/spec/javascripts/fixtures/templates.html +21 -21
  65. data/spec/javascripts/helpers/fixtures.js +10 -9
  66. data/spec/javascripts/helpers/jasmine-jquery.js +0 -0
  67. data/spec/javascripts/persistence_manager_spec.coffee +67 -5
  68. data/spec/javascripts/template_editor_spec.coffee +49 -29
  69. data/spec/javascripts/util_spec.coffee +0 -0
  70. data/spec/karma.conf.js +86 -86
  71. data/spec/models/page_spec.rb +196 -196
  72. data/spec/spec_helper.rb +0 -0
  73. data/test/dummy/README.rdoc +0 -0
  74. data/test/dummy/Rakefile +0 -0
  75. data/test/dummy/app/assets/images/baws.jpg +0 -0
  76. data/test/dummy/app/assets/javascripts/application.js +0 -0
  77. data/test/dummy/app/assets/stylesheets/application.css +22 -17
  78. data/test/dummy/app/controllers/application_controller.rb +0 -0
  79. data/test/dummy/app/controllers/example_controller.rb +1 -13
  80. data/test/dummy/app/helpers/application_helper.rb +0 -0
  81. data/test/dummy/app/views/example/page.html.erb +20 -20
  82. data/test/dummy/app/views/example/page2.html.erb +13 -13
  83. data/test/dummy/app/views/layouts/application.html.erb +0 -0
  84. data/test/dummy/app/views/layouts/rubber_ring/layout.html.erb +0 -0
  85. data/test/dummy/app/views/templates/_article.html.erb +7 -7
  86. data/test/dummy/app/views/templates/_blog_post.html.erb +0 -0
  87. data/test/dummy/app/views/templates/_test_article.html.erb +1 -0
  88. data/test/dummy/bin/bundle +0 -0
  89. data/test/dummy/bin/rails +0 -0
  90. data/test/dummy/bin/rake +0 -0
  91. data/test/dummy/config/application.rb +0 -0
  92. data/test/dummy/config/boot.rb +0 -0
  93. data/test/dummy/config/database.yml +0 -0
  94. data/test/dummy/config/environment.rb +0 -0
  95. data/test/dummy/config/environments/development.rb +0 -0
  96. data/test/dummy/config/environments/production.rb +0 -0
  97. data/test/dummy/config/environments/test.rb +36 -36
  98. data/test/dummy/config/initializers/backtrace_silencers.rb +0 -0
  99. data/test/dummy/config/initializers/filter_parameter_logging.rb +0 -0
  100. data/test/dummy/config/initializers/inflections.rb +0 -0
  101. data/test/dummy/config/initializers/mime_types.rb +0 -0
  102. data/test/dummy/config/initializers/rubber_ring.rb +0 -0
  103. data/test/dummy/config/initializers/secret_token.rb +0 -0
  104. data/test/dummy/config/initializers/session_store.rb +0 -0
  105. data/test/dummy/config/initializers/wrap_parameters.rb +0 -0
  106. data/test/dummy/config/locales/en.yml +0 -0
  107. data/test/dummy/config/publish.yml +0 -0
  108. data/test/dummy/config/routes.rb +6 -6
  109. data/test/dummy/config.ru +0 -0
  110. data/test/dummy/db/development.sqlite3 +0 -0
  111. data/test/dummy/db/migrate/20130524163154_create_pages.rubber_ring.rb +12 -12
  112. data/test/dummy/db/migrate/20130524163155_create_rubber_ring_page_contents.rubber_ring.rb +12 -12
  113. data/test/dummy/db/migrate/20130524163156_create_rubber_ring_page_templates.rubber_ring.rb +15 -15
  114. data/test/dummy/db/schema.rb +47 -47
  115. data/test/dummy/db/test.sqlite3 +0 -0
  116. data/test/dummy/log/development.log +136305 -23515
  117. data/test/dummy/log/test.log +51978 -37913
  118. data/test/dummy/public/404.html +0 -0
  119. data/test/dummy/public/422.html +0 -0
  120. data/test/dummy/public/500.html +0 -0
  121. data/test/dummy/public/build/assets/application.css +22 -17
  122. data/test/dummy/public/build/assets/application.js +1 -1
  123. data/test/dummy/public/build/assets/baws.jpg +0 -0
  124. data/test/dummy/public/build/page2.html +26 -0
  125. data/test/dummy/public/build/page2.html.gz +0 -0
  126. data/test/dummy/public/build/upload/en/example/page2/images/app_icon.png +0 -0
  127. data/test/dummy/public/build/upload/en/example/page2/images/lombard-mb.jpg +0 -0
  128. data/test/dummy/public/favicon.ico +0 -0
  129. data/test/dummy/public/upload/en/example/page2/images/app_icon.png +0 -0
  130. data/test/dummy/public/upload/en/example/page2/images/lombard-mb.jpg +0 -0
  131. data/test/dummy/script/rails +6 -6
  132. data/test/dummy/tmp/cache/assets/development/sass/{9ef9c546be1f15bd909c4626b18ec56c75aac0ce → 6afeb0468679937dd837e6204d8c50da187b1b86}/cms.scssc +0 -0
  133. data/test/dummy/tmp/cache/assets/development/sass/8185f37c4f7dd19815b19559200f49fbf25b143a/cms.scssc +0 -0
  134. data/test/dummy/tmp/cache/assets/development/sass/{5df77a09e28ee5e99b029d061fc8c7aa74ed8701 → bf386cacb2b03aea3662489e692121614b700c0b}/bootstrap.scss.erbc +0 -0
  135. data/test/dummy/tmp/cache/assets/development/sprockets/005eccb32211a5ffdf41aad3484bbbb4 +0 -0
  136. data/test/dummy/tmp/cache/assets/development/sprockets/03d17cbcdf5da1d77daae00a93e1d8eb +0 -0
  137. data/test/dummy/tmp/cache/assets/development/sprockets/05b70326df3b56707d29014e51681478 +0 -0
  138. data/test/dummy/tmp/cache/assets/development/sprockets/{d3a4fc418bcc8c28e1477d8ae5981e44 → 0b7e113c317408196c4c5358803207aa} +0 -0
  139. data/test/dummy/tmp/cache/assets/development/sprockets/{82af58bd517f6c898e82655012e662f3 → 0c110aab9d003ece8e77532f992c8ac4} +0 -0
  140. data/test/dummy/tmp/cache/assets/development/sprockets/{c28f157f3954955f1bc4ca11b085e5f1 → 0ce49cb008857ab0744ac6c1b3abbc8b} +0 -0
  141. data/test/dummy/tmp/cache/assets/development/sprockets/{5588d8e326c1909734ec317c6068a8b0 → 0f93e7090f8d9aec40d344a14507179e} +0 -0
  142. data/test/dummy/tmp/cache/assets/development/sprockets/10c6f6553bf3c14d2073a1dc826c4a03 +0 -0
  143. data/test/dummy/tmp/cache/assets/development/sprockets/{d9a230b2c36f01509e607c6fc423b04f → 12500514d60c3ccadeada02813852775} +0 -0
  144. data/test/dummy/tmp/cache/assets/development/sprockets/13fe41fee1fe35b49d145bcc06610705 +0 -0
  145. data/test/dummy/tmp/cache/assets/development/sprockets/{980857c735dc36c6448aa7f0a63d5775 → 171f12428d9e1a40d9fb903b7e468b2d} +0 -0
  146. data/test/dummy/tmp/cache/assets/development/sprockets/1893a62d9206a1fb9d89578a47e6dba8 +0 -0
  147. data/test/dummy/tmp/cache/assets/development/sprockets/1cb5879c7320b989a214a03dbb87bf33 +0 -0
  148. data/test/dummy/tmp/cache/assets/development/sprockets/1f634c9d68d6c31855bf84ecb8e9d3a1 +0 -0
  149. data/test/dummy/tmp/cache/assets/development/sprockets/1fea295e8b5e18dd84023ff5526e6ef0 +0 -0
  150. data/test/dummy/tmp/cache/assets/development/sprockets/20df56c42f6929328dc9f4b846fbdcfe +0 -0
  151. data/test/dummy/tmp/cache/assets/development/sprockets/{2bdc67c643c8348c3a0c294004f0fc35 → 2558b6957b25b93991193f924fc75bf8} +0 -0
  152. data/test/dummy/tmp/cache/assets/development/sprockets/2d6a5f1b530809a08781e3fbd07e7ec5 +0 -0
  153. data/test/dummy/tmp/cache/assets/development/sprockets/{5802a1804470ed3a7258b19b52db2a15 → 2eb67a7041c777c64ffabc725ac0135a} +0 -0
  154. data/test/dummy/tmp/cache/assets/development/sprockets/2f5173deea6c795b8fdde723bb4b63af +0 -0
  155. data/test/dummy/tmp/cache/assets/development/sprockets/{95234f56258851aba6ec6fdab79bccb6 → 332d6068ca366c58c7051fd0916ee2d5} +0 -0
  156. data/test/dummy/tmp/cache/assets/development/sprockets/335356dbe0c1221a16b3fbb65d50737f +0 -0
  157. data/test/dummy/tmp/cache/assets/development/sprockets/{c1bea1ba92a5304ffd28cc0af4b325d9 → 33af750044e6ee3fc377bf3e1dd729d8} +0 -0
  158. data/test/dummy/tmp/cache/assets/development/sprockets/33e002f0b7946cd298562302f71fdd77 +0 -0
  159. data/test/dummy/tmp/cache/assets/{production/sprockets/b81f49d8cf1dbae0f6d1ac4d9d923f17 → development/sprockets/340272cf2848f9a2d74d4f39c9b7642e} +0 -0
  160. data/test/dummy/tmp/cache/assets/development/sprockets/357970feca3ac29060c1e3861e2c0953 +0 -0
  161. data/test/dummy/tmp/cache/assets/development/sprockets/3699e3a1c1e5ad798ad43a8f54dde72f +0 -0
  162. data/test/dummy/tmp/cache/assets/development/sprockets/373aa7486f8dc9d9548018802c99887d +0 -0
  163. data/test/dummy/tmp/cache/assets/development/sprockets/{c843fdb2b33bf3e87833b23027a9adb9 → 3842af17b9a1edaab79091d7fa77ca66} +0 -0
  164. data/test/dummy/tmp/cache/assets/development/sprockets/3877e7e301c281be42fc7aed5c3c5035 +0 -0
  165. data/test/dummy/tmp/cache/assets/development/sprockets/{f72f9d88e28ad73485fcc24ef00be1f0 → 38b1ca58d468cedaa12b42af6bfe987d} +0 -0
  166. data/test/dummy/tmp/cache/assets/development/sprockets/3beaa45c69e3414a2f8cdd63b39787a2 +0 -0
  167. data/test/dummy/tmp/cache/assets/development/sprockets/{021d5ce446187b362f442c81dbc04f33 → 3d57f0a9afcc890433a984ca738403fe} +0 -0
  168. data/test/dummy/tmp/cache/assets/development/sprockets/{dcef36a5aee30ad53443ea58149b5c8d → 411e3d003692f86acf9dc756196ee980} +0 -0
  169. data/test/dummy/tmp/cache/assets/development/sprockets/{77c132a2a2cf0e255033066a80db84e5 → 43c96209871dd10656ee0a583c4d224e} +0 -0
  170. data/test/dummy/tmp/cache/assets/development/sprockets/457aa334a405736412d49df345885a87 +0 -0
  171. data/test/dummy/tmp/cache/assets/{production/sprockets/5cceba1f5466432ddc1ca00d96bb6af2 → development/sprockets/4890c29871e7236809e31a1672e437e2} +0 -0
  172. data/test/dummy/tmp/cache/assets/{production/sprockets/ac74145f99b8dab2053e9ae97ab30b59 → development/sprockets/48e32a4ca9a9cd1e9f28fd35a9c423d4} +0 -0
  173. data/test/dummy/tmp/cache/assets/development/sprockets/4d0e945a1aeffabb6ecbe4e9cfbe9900 +0 -0
  174. data/test/dummy/tmp/cache/assets/development/sprockets/4ff563d50fe6491dbd10a9d82abbfdfb +0 -0
  175. data/test/dummy/tmp/cache/assets/development/sprockets/5158a96c0f825e9f03cb852177150660 +0 -0
  176. data/test/dummy/tmp/cache/assets/development/sprockets/{896e0a59c127f026ecc3ce390c394c6d → 518189fb433e27f6948d41a436a6d152} +0 -0
  177. data/test/dummy/tmp/cache/assets/development/sprockets/53ba99192c5668743a46c5d52532ab35 +0 -0
  178. data/test/dummy/tmp/cache/assets/development/sprockets/{f7147d2e3eeeaef3c6adef2176a6e9bf → 540ff91c3b7016e16673c857381527f3} +0 -0
  179. data/test/dummy/tmp/cache/assets/development/sprockets/54a2f8fde589b4f5b63efcc75a604223 +0 -0
  180. data/test/dummy/tmp/cache/assets/development/sprockets/58eb1186ddb15250a56597cd441118d6 +0 -0
  181. data/test/dummy/tmp/cache/assets/development/sprockets/5b1e9ead20b30aaaaaf279bd8e3a798e +0 -0
  182. data/test/dummy/tmp/cache/assets/development/sprockets/5cd9203ec5f16de07df500cd98f4f538 +0 -0
  183. data/test/dummy/tmp/cache/assets/development/sprockets/5d5fb516cc13d631c73d6ba74527c7fd +0 -0
  184. data/test/dummy/tmp/cache/assets/development/sprockets/62dc9541d46ef8f45853e3dca50132d8 +0 -0
  185. data/test/dummy/tmp/cache/assets/development/sprockets/62e078b9f8be16ae7278da400568a918 +0 -0
  186. data/test/dummy/tmp/cache/assets/development/sprockets/63bca039746bf54ca66ddadf85fe3c74 +0 -0
  187. data/test/dummy/tmp/cache/assets/development/sprockets/68e88a76cf0ae3b9def99df2da275d32 +0 -0
  188. data/test/dummy/tmp/cache/assets/development/sprockets/6a460bdc2d2ee57d882a40d6fbd9b706 +0 -0
  189. data/test/dummy/tmp/cache/assets/development/sprockets/6cac7e80180a6143add53ed9a5b5290b +0 -0
  190. data/test/dummy/tmp/cache/assets/development/sprockets/716625880a04396476f184c7f6088be0 +0 -0
  191. data/test/dummy/tmp/cache/assets/development/sprockets/{3f68640e722ec4648c55f987c372bd1f → 736f87d63ed4ed02bff28b309e6d778d} +0 -0
  192. data/test/dummy/tmp/cache/assets/development/sprockets/{6386e7f696b5dd6b1588f8051bf78083 → 74c9b855fe76feeff8b3258f58806976} +0 -0
  193. data/test/dummy/tmp/cache/assets/development/sprockets/764217b04b89871d5a19d639ad08d652 +0 -0
  194. data/test/dummy/tmp/cache/assets/development/sprockets/7647442e68634bf506ceb6529c964ff8 +0 -0
  195. data/test/dummy/tmp/cache/assets/development/sprockets/{5cceba1f5466432ddc1ca00d96bb6af2 → 764bddd895dfccfa8ff3ef951c2b7c10} +0 -0
  196. data/test/dummy/tmp/cache/assets/development/sprockets/{cf38200dbb3ee3a9d4dd84cc1d98ada2 → 7651480e2c1dcf5d039f4b10f214f3d4} +0 -0
  197. data/test/dummy/tmp/cache/assets/development/sprockets/76e238edb63fa832c6aa34fdf57e48a0 +0 -0
  198. data/test/dummy/tmp/cache/assets/development/sprockets/{c9d60e346e8632bb3945f7e94cce0036 → 7736698f9e23d715ba80ec4b2f3563f7} +0 -0
  199. data/test/dummy/tmp/cache/assets/development/sprockets/7a4fe9e3d748b6627971dbfa57da0700 +0 -0
  200. data/test/dummy/tmp/cache/assets/development/sprockets/{e0d30e94a53fc0d324ec29d883efd5a0 → 7b9859cd9bb07614b05aa61c7b028bda} +0 -0
  201. data/test/dummy/tmp/cache/assets/development/sprockets/{2ee41f98f4c10cf8d2f5bd28d3bd1b96 → 7bc09e522e5e89e66d9d8f25553fedf5} +0 -0
  202. data/test/dummy/tmp/cache/assets/development/sprockets/{0ceefdff5c5f03895722be20f6ddc26b → 7bcf92aa1727d37bb0c83d72ea558ee2} +0 -0
  203. data/test/dummy/tmp/cache/assets/development/sprockets/7bd7316976b72a4351629802d0d996ac +0 -0
  204. data/test/dummy/tmp/cache/assets/development/sprockets/7e944534b79a5f98fa45ed7d0d51eb96 +0 -0
  205. data/test/dummy/tmp/cache/assets/development/sprockets/{ffa3b9093369ac4b2758f390b0cafab4 → 7f204bc73e31e97abb5c1782a19038c8} +0 -0
  206. data/test/dummy/tmp/cache/assets/development/sprockets/{a804717f8c355bf77d84f50220f6b66f → 7f37ba97c6c53d35bfb9a59e6e63f559} +0 -0
  207. data/test/dummy/tmp/cache/assets/development/sprockets/8394c16a4541076a7958bd0949b389ec +0 -0
  208. data/test/dummy/tmp/cache/assets/development/sprockets/851829daaa9bf188f9e6265fd060a111 +0 -0
  209. data/test/dummy/tmp/cache/assets/development/sprockets/85e0ba994b32ea76a422598c0635685b +0 -0
  210. data/test/dummy/tmp/cache/assets/development/sprockets/{e64df0317c02ea3aaf0c6ac14b3c1994 → 86c5db77a82b91bbc060a99a2bf8b1d8} +0 -0
  211. data/test/dummy/tmp/cache/assets/development/sprockets/{a6324741c7289fc944f62b446136cf36 → 8b3d169e10e3a60de99777b47413d8c6} +0 -0
  212. data/test/dummy/tmp/cache/assets/development/sprockets/8b74d8c3afdb7163f50f52e10b198290 +0 -0
  213. data/test/dummy/tmp/cache/assets/development/sprockets/8b916bd3400afb4fa336a44771290a7b +0 -0
  214. data/test/dummy/tmp/cache/assets/development/sprockets/{b8bfca64ea01caaf52a8ad9336eba057 → 8c099909d672aad6dfdb0089cebd5cf2} +0 -0
  215. data/test/dummy/tmp/cache/assets/development/sprockets/{672160928c4f356614c3b08e4dd18959 → 8c60f620d6fab20909c331508637d62e} +0 -0
  216. data/test/dummy/tmp/cache/assets/development/sprockets/{cbfd1cdcc8926af0e015fd6e4a8cfe95 → 9056e523b48d7c3d49e3281cb8456f78} +0 -0
  217. data/test/dummy/tmp/cache/assets/development/sprockets/{dfd54ce2610fa0bdcd51a47ebe236db4 → 908f17c91e5d3933c88ff294c2850c48} +0 -0
  218. data/test/dummy/tmp/cache/assets/development/sprockets/{50b7c4b1c7e9124299cdd60ed2bf24fb → 92b0ddad5a7e9502c64f94f791f5b227} +0 -0
  219. data/test/dummy/tmp/cache/assets/development/sprockets/954bb101caefd0c65eaffd0806b60fe2 +0 -0
  220. data/test/dummy/tmp/cache/assets/development/sprockets/9993c347361adbac8056462899c084e5 +0 -0
  221. data/test/dummy/tmp/cache/assets/development/sprockets/9e0522ce72f83a2d14b9040602ad671e +0 -0
  222. data/test/dummy/tmp/cache/assets/development/sprockets/9e4856eaccd8050e2cce8f2726bd1ff9 +0 -0
  223. data/test/dummy/tmp/cache/assets/development/sprockets/{a1f2a21fb4036d971dd7f36cbfaf3320 → 9f98aa96aafbc2f72bc7ac8094f68d92} +0 -0
  224. data/test/dummy/tmp/cache/assets/development/sprockets/{3052b99e985fcef75d109bb00139ebd3 → a255bb384e0691e2ecd1d9495e06e256} +0 -0
  225. data/test/dummy/tmp/cache/assets/development/sprockets/a2719663651c4c47fea4601da97f674b +0 -0
  226. data/test/dummy/tmp/cache/assets/development/sprockets/a30c5479ead2031a2e521cbfa989dca8 +0 -0
  227. data/test/dummy/tmp/cache/assets/development/sprockets/a54698289dfb98cb1c3314d66baf5f91 +0 -0
  228. data/test/dummy/tmp/cache/assets/development/sprockets/a5fc721c5e049fa401638dbbe6f01666 +0 -0
  229. data/test/dummy/tmp/cache/assets/development/sprockets/{ac74145f99b8dab2053e9ae97ab30b59 → a61abd48bf7b7983c84ddba700bf91c2} +0 -0
  230. data/test/dummy/tmp/cache/assets/development/sprockets/{8dda9084ddc7e1b0ce01887b1bfbf7ad → a744ea358a5724c7d05808b92e5733fa} +0 -0
  231. data/test/dummy/tmp/cache/assets/development/sprockets/{8a58cdb1fd183189a813cb45de9b5ecb → a8895017459d5367d9565e4291e9fde5} +0 -0
  232. data/test/dummy/tmp/cache/assets/development/sprockets/{da3b6190521b537ef46190c99c630173 → a9fead645c2c02e002382413d89e2459} +0 -0
  233. data/test/dummy/tmp/cache/assets/development/sprockets/aafab1cd25c75cd144df598aa4d48858 +0 -0
  234. data/test/dummy/tmp/cache/assets/development/sprockets/b064391743404352c0d06d1dae692bbc +0 -0
  235. data/test/dummy/tmp/cache/assets/development/sprockets/b4520c38ae1fcee31b76f988e89dced4 +0 -0
  236. data/test/dummy/tmp/cache/assets/development/sprockets/b4da7dedc3efa1b2420734a75da1402f +0 -0
  237. data/test/dummy/tmp/cache/assets/development/sprockets/b5d99651fe9edd91970e38aaf098c3b6 +0 -0
  238. data/test/dummy/tmp/cache/assets/development/sprockets/{eb0dcd1f1d9812e1f7eb10b58e6b1ac9 → b867b71b34a178f9e2109581794d9746} +0 -0
  239. data/test/dummy/tmp/cache/assets/development/sprockets/{cc2b3e15e75ad21a379b54186f0b3e63 → ba021acb60c8110caf167b5ddd687bd7} +0 -0
  240. data/test/dummy/tmp/cache/assets/development/sprockets/{c8c8b769bfa8c90477013dc463dce8dd → bd84cc90c9c326977210109197cd8275} +0 -0
  241. data/test/dummy/tmp/cache/assets/development/sprockets/{7b3469b8a6587d3fdde5168bcadc1829 → bf1f8c24547868c27b950882afb48ea6} +0 -0
  242. data/test/dummy/tmp/cache/assets/development/sprockets/c0625d8a0a68787afb029146355062df +0 -0
  243. data/test/dummy/tmp/cache/assets/development/sprockets/c10a1994812cf191cd2ee4ef1f979bf0 +0 -0
  244. data/test/dummy/tmp/cache/assets/development/sprockets/{b0e2ed0167a71948529cf8507015a638 → c3d2138f727c60328d03d9035f0269bf} +0 -0
  245. data/test/dummy/tmp/cache/assets/development/sprockets/c3fbb5f0690b2b69916c7cdfa2e6290b +0 -0
  246. data/test/dummy/tmp/cache/assets/development/sprockets/c52fba073da9df226a864c2299f176f2 +0 -0
  247. data/test/dummy/tmp/cache/assets/development/sprockets/{b81f49d8cf1dbae0f6d1ac4d9d923f17 → c5b203e7f49dc081135c7781927db895} +0 -0
  248. data/test/dummy/tmp/cache/assets/development/sprockets/{ce0f026a8f35c2824e68416229e502b0 → c641f626cb9e5f27cd52aea0c7968c4e} +0 -0
  249. data/test/dummy/tmp/cache/assets/development/sprockets/c76f44b59338c92655cdb50acd5a51b7 +0 -0
  250. data/test/dummy/tmp/cache/assets/development/sprockets/{00dfd740f227e8eacf8dc70e8923aa30 → c887c975279c3c47685cf7124ed6a1bd} +0 -0
  251. data/test/dummy/tmp/cache/assets/development/sprockets/{0fa97a19dba2b30d1269220457488770 → c9f9f57faf109718fb4af1d7c1817ecf} +0 -0
  252. data/test/dummy/tmp/cache/assets/development/sprockets/ca5ae160185d691a80add93c7951ad8d +0 -0
  253. data/test/dummy/tmp/cache/assets/development/sprockets/cb676c28d1dce8658c2ce261c40ff62d +0 -0
  254. data/test/dummy/tmp/cache/assets/development/sprockets/cbb7cfa2a375a0ec163c71490071ae70 +0 -0
  255. data/test/dummy/tmp/cache/assets/development/sprockets/{f5630318facff40bd4c26746561e91a5 → cc94cf292a326391d2963cba90f6bff5} +0 -0
  256. data/test/dummy/tmp/cache/assets/development/sprockets/{e508a5da5b2a6ba14eaabe1fc9987f1b → cdeb8f35f199762f504a99aa024e4e87} +0 -0
  257. data/test/dummy/tmp/cache/assets/development/sprockets/cffd775d018f68ce5dba1ee0d951a994 +0 -0
  258. data/test/dummy/tmp/cache/assets/development/sprockets/{de3b887062709ecbae0f43a1967507b3 → d2e2a9efa562c5d2fa461561ebcc1290} +0 -0
  259. data/test/dummy/tmp/cache/assets/development/sprockets/d35e97e22dc8f2ebda1bed928a03ad8a +0 -0
  260. data/test/dummy/tmp/cache/assets/development/sprockets/{ea3fbcf111211cf25a1e84abd8890069 → d5d3364d0d5abb33f4592912ab042d79} +0 -0
  261. data/test/dummy/tmp/cache/assets/development/sprockets/{b0b79f650d323d7f80a4c7456dfce684 → d693a95e7a2c07d61b52e47271cbdbb5} +0 -0
  262. data/test/dummy/tmp/cache/assets/development/sprockets/d771ace226fc8215a3572e0aa35bb0d6 +0 -0
  263. data/test/dummy/tmp/cache/assets/development/sprockets/d7d736c1deac61de2c15341befe77a2e +0 -0
  264. data/test/dummy/tmp/cache/assets/development/sprockets/d7d7b4cc12064138abb7eb48e552ce75 +0 -0
  265. data/test/dummy/tmp/cache/assets/development/sprockets/{b344975ddf3cba471441e737f3ca0570 → d9bc0dc05b0c310aad16ab0b6d57427a} +0 -0
  266. data/test/dummy/tmp/cache/assets/development/sprockets/{d06332ce072d0af8fda4bb34381370ef → da2a232cfd1b66aa714ec6d05c9731b1} +0 -0
  267. data/test/dummy/tmp/cache/assets/development/sprockets/dc3d91ae1d7f973c1354a745e97076dd +0 -0
  268. data/test/dummy/tmp/cache/assets/development/sprockets/e031b1069cbdfd42e262ccf38f88551f +0 -0
  269. data/test/dummy/tmp/cache/assets/development/sprockets/e0c1faca0fe3b99790f1467965b76234 +0 -0
  270. data/test/dummy/tmp/cache/assets/development/sprockets/e0e949e3a882294df1ac6efb53555963 +0 -0
  271. data/test/dummy/tmp/cache/assets/development/sprockets/{d1734506eed8ef7a8e5c73e599b0debb → e3706c14b9e23f333d832cf3965247e3} +0 -0
  272. data/test/dummy/tmp/cache/assets/development/sprockets/e65687a477607576014aae3cce13d0e1 +0 -0
  273. data/test/dummy/tmp/cache/assets/{production/sprockets/021d5ce446187b362f442c81dbc04f33 → development/sprockets/e6870ccbd0c9096ef15a3bc88af47a69} +0 -0
  274. data/test/dummy/tmp/cache/assets/development/sprockets/{5449d7c21a154077e042b276efcfe346 → ea9cb066f249c19b768e4a04e3dccda1} +0 -0
  275. data/test/dummy/tmp/cache/assets/development/sprockets/{17ea4d79d21b1f083c77f59ba9b3372d → ec43597e5721c7016d842c14a94fd8ac} +0 -0
  276. data/test/dummy/tmp/cache/assets/development/sprockets/eca6e114f4db2379855c8af72fafaa45 +0 -0
  277. data/test/dummy/tmp/cache/assets/development/sprockets/ee94e4fa77c994757234bd188b221771 +0 -0
  278. data/test/dummy/tmp/cache/assets/development/sprockets/eeccfebd3c89a085ade5e49efa39fad9 +0 -0
  279. data/test/dummy/tmp/cache/assets/development/sprockets/ef9bb4e9c3dedc3c4b035c2334693110 +0 -0
  280. data/test/dummy/tmp/cache/assets/development/sprockets/f270587a206c85bb7163b16529b5ff69 +0 -0
  281. data/test/dummy/tmp/cache/assets/development/sprockets/{19686f8659e57712f166b6b342155e6c → f4df1f1776710c62b946a89a0ca8d0ae} +0 -0
  282. data/test/dummy/tmp/cache/assets/development/sprockets/{a6f3ccbc9cf1cae48fad3c83ffea2dd8 → f6b6006654dfb1057cd1e0903e98e6ba} +0 -0
  283. data/test/dummy/tmp/cache/assets/development/sprockets/f7cbd26ba1d28d48de824f0e94586655 +0 -0
  284. data/test/dummy/tmp/cache/assets/development/sprockets/{8c20ea028e7ef9e18ab2517785615d32 → f885539e8180d385ffb61daf45b985dc} +0 -0
  285. metadata +255 -629
  286. data/test/dummy/db/production.sqlite3 +0 -0
  287. data/test/dummy/log/production.log +0 -2835
  288. data/test/dummy/public/assets/application-4e268cfccc1f26318c22a87c9e6b9095.js +0 -1
  289. data/test/dummy/public/assets/application-4e268cfccc1f26318c22a87c9e6b9095.js.gz +0 -0
  290. data/test/dummy/public/assets/application-e006d1eddf81edb7ed682d933d95167f.css +0 -18
  291. data/test/dummy/public/assets/application-e006d1eddf81edb7ed682d933d95167f.css.gz +0 -0
  292. data/test/dummy/public/assets/baws-27045628978f5e419d534d01c63ab3d6.jpg +0 -0
  293. data/test/dummy/public/assets/glyphicons-halflings-b47b2b03ec961163432b4cfe22cd6f31.png +0 -0
  294. data/test/dummy/public/assets/glyphicons-halflings-white-ec01567c9d4e5aba3fd3efa6e3054574.png +0 -0
  295. data/test/dummy/public/assets/manifest-d64ae8f73d13a404515a9c833b8ea4d7.json +0 -1
  296. data/test/dummy/public/assets/rubber_ring/application-166bd1c30eaa1f5b77c159a552ca0d1d.js +0 -4
  297. data/test/dummy/public/assets/rubber_ring/application-166bd1c30eaa1f5b77c159a552ca0d1d.js.gz +0 -0
  298. data/test/dummy/public/assets/rubber_ring/application-2211071c03381f99bd440671529d6d2d.css +0 -4358
  299. data/test/dummy/public/assets/rubber_ring/application-2211071c03381f99bd440671529d6d2d.css.gz +0 -0
  300. data/test/dummy/public/assets/rubber_ring/application-4ba3fedbf9929e7910c6f1497a82c4d1.css +0 -4380
  301. data/test/dummy/public/assets/rubber_ring/application-4ba3fedbf9929e7910c6f1497a82c4d1.css.gz +0 -0
  302. data/test/dummy/public/assets/rubber_ring/application-9b07b9a701e0e3a8bb9f2af9749adbac.js +0 -4
  303. data/test/dummy/public/assets/rubber_ring/application-9b07b9a701e0e3a8bb9f2af9749adbac.js.gz +0 -0
  304. data/test/dummy/public/build/assets/application-4e268cfccc1f26318c22a87c9e6b9095.js +0 -1
  305. data/test/dummy/public/build/assets/application-4e268cfccc1f26318c22a87c9e6b9095.js.gz +0 -0
  306. data/test/dummy/public/build/assets/application-e006d1eddf81edb7ed682d933d95167f.css +0 -18
  307. data/test/dummy/public/build/assets/application-e006d1eddf81edb7ed682d933d95167f.css.gz +0 -0
  308. data/test/dummy/public/build/assets/assets/images/baws.jpg +0 -0
  309. data/test/dummy/public/build/assets/assets/javascripts/application.js +0 -6
  310. data/test/dummy/public/build/assets/assets/stylesheets/application.css +0 -17
  311. data/test/dummy/public/build/assets/baws-27045628978f5e419d534d01c63ab3d6.jpg +0 -0
  312. data/test/dummy/public/build/assets/controllers/application_controller.rb +0 -5
  313. data/test/dummy/public/build/assets/controllers/example_controller.rb +0 -15
  314. data/test/dummy/public/build/assets/glyphicons-halflings-b47b2b03ec961163432b4cfe22cd6f31.png +0 -0
  315. data/test/dummy/public/build/assets/glyphicons-halflings-white-ec01567c9d4e5aba3fd3efa6e3054574.png +0 -0
  316. data/test/dummy/public/build/assets/helpers/application_helper.rb +0 -2
  317. data/test/dummy/public/build/assets/images/baws.jpg +0 -0
  318. data/test/dummy/public/build/assets/javascripts/application.js +0 -6
  319. data/test/dummy/public/build/assets/manifest-d64ae8f73d13a404515a9c833b8ea4d7.json +0 -1
  320. data/test/dummy/public/build/assets/rubber_ring/application-166bd1c30eaa1f5b77c159a552ca0d1d.js +0 -4
  321. data/test/dummy/public/build/assets/rubber_ring/application-166bd1c30eaa1f5b77c159a552ca0d1d.js.gz +0 -0
  322. data/test/dummy/public/build/assets/rubber_ring/application-2211071c03381f99bd440671529d6d2d.css +0 -4358
  323. data/test/dummy/public/build/assets/rubber_ring/application-2211071c03381f99bd440671529d6d2d.css.gz +0 -0
  324. data/test/dummy/public/build/assets/rubber_ring/application-4ba3fedbf9929e7910c6f1497a82c4d1.css +0 -4380
  325. data/test/dummy/public/build/assets/rubber_ring/application-4ba3fedbf9929e7910c6f1497a82c4d1.css.gz +0 -0
  326. data/test/dummy/public/build/assets/rubber_ring/application-9b07b9a701e0e3a8bb9f2af9749adbac.js +0 -4
  327. data/test/dummy/public/build/assets/rubber_ring/application-9b07b9a701e0e3a8bb9f2af9749adbac.js.gz +0 -0
  328. data/test/dummy/public/build/assets/stylesheets/application.css +0 -17
  329. data/test/dummy/public/build/assets/views/example/page.html.erb +0 -31
  330. data/test/dummy/public/build/assets/views/example/page2.html.erb +0 -10
  331. data/test/dummy/public/build/assets/views/layouts/application.html.erb +0 -14
  332. data/test/dummy/public/build/assets/views/layouts/rubber_ring/application.html.erb +0 -22
  333. data/test/dummy/public/build/assets/views/templates/_article.html.erb +0 -9
  334. data/test/dummy/public/build/upload/example/page/attachments/dbvis.license +0 -11
  335. data/test/dummy/public/build/upload/example/page/images/nutella.jpg +0 -0
  336. data/test/dummy/public/upload/en/example/page2/images/snb.jpg +0 -0
  337. data/test/dummy/public/upload/example/page/attachments/BoobyTrap.pdf +0 -0
  338. data/test/dummy/public/upload/example/page/attachments/main.html +0 -29
  339. data/test/dummy/public/upload/example/page/images/nutella.jpg +0 -0
  340. data/test/dummy/public/upload/example/page/images/snb.jpg +0 -0
  341. data/test/dummy/tmp/cache/assets/development/sass/144bb07df25732886de34fc892b7c84d418ab110/cms.scss.erbc +0 -0
  342. data/test/dummy/tmp/cache/assets/development/sass/144bb07df25732886de34fc892b7c84d418ab110/cms.scssc +0 -0
  343. data/test/dummy/tmp/cache/assets/development/sass/9ef9c546be1f15bd909c4626b18ec56c75aac0ce/cms.scss.erbc +0 -0
  344. data/test/dummy/tmp/cache/assets/development/sass/c8e2efff656b76a26ac2cc5b5528e2ab9741b52a/bootstrap.scss.erbc +0 -0
  345. data/test/dummy/tmp/cache/assets/development/sprockets/0218b228ced412bf87b02ca1b6be60b3 +0 -0
  346. data/test/dummy/tmp/cache/assets/development/sprockets/052ccadc06984b221f1af051c32e613a +0 -0
  347. data/test/dummy/tmp/cache/assets/development/sprockets/0894458794b51b17900c3d7abefc2aa5 +0 -0
  348. data/test/dummy/tmp/cache/assets/development/sprockets/0dd47da3f882e810b77e341b2bcd8abc +0 -0
  349. data/test/dummy/tmp/cache/assets/development/sprockets/0de91e83e7c32c81d59a95bccdedb34f +0 -0
  350. data/test/dummy/tmp/cache/assets/development/sprockets/0f096a9239d1b8b3c0d7f0a079ba8dc6 +0 -0
  351. data/test/dummy/tmp/cache/assets/development/sprockets/0f7e8127f53c92f853b2d1f7f3887b25 +0 -0
  352. data/test/dummy/tmp/cache/assets/development/sprockets/11eedd47a993ae43b134c4a8323fe16d +0 -0
  353. data/test/dummy/tmp/cache/assets/development/sprockets/14e730b33d5c77e57ef1d749d3f59d09 +0 -0
  354. data/test/dummy/tmp/cache/assets/development/sprockets/15c9e067f0a919861ad0e339ccabb55b +0 -0
  355. data/test/dummy/tmp/cache/assets/development/sprockets/162e101507dda2e6e16d3b6d20ac7155 +0 -0
  356. data/test/dummy/tmp/cache/assets/development/sprockets/16aa40bf8985a2f1f3e5dea5d72e6218 +0 -0
  357. data/test/dummy/tmp/cache/assets/development/sprockets/1de6a759b14c2e99ab1641cad5521433 +0 -0
  358. data/test/dummy/tmp/cache/assets/development/sprockets/22a5108e690ae432a7d96ad27ae23356 +0 -0
  359. data/test/dummy/tmp/cache/assets/development/sprockets/22b9081ba2ffde46760b70110d440b5c +0 -0
  360. data/test/dummy/tmp/cache/assets/development/sprockets/25b52470f85dd54b7db5010558291a3a +0 -0
  361. data/test/dummy/tmp/cache/assets/development/sprockets/2bf91fb337440bb9de78c2e6c6bcb95f +0 -0
  362. data/test/dummy/tmp/cache/assets/development/sprockets/37ffa56a3e6b08a7683a7b180bac45e9 +0 -0
  363. data/test/dummy/tmp/cache/assets/development/sprockets/3fcb125156ac9a61f029c8a3ea0f9c40 +0 -0
  364. data/test/dummy/tmp/cache/assets/development/sprockets/4081dfc5b927754129b209331c267441 +0 -0
  365. data/test/dummy/tmp/cache/assets/development/sprockets/41b539dab4032aeab4acc677841be9e1 +0 -0
  366. data/test/dummy/tmp/cache/assets/development/sprockets/449d8c2f5dfa78068e85472dcee833fc +0 -0
  367. data/test/dummy/tmp/cache/assets/development/sprockets/47086b08a2d4af414320d0316d43636b +0 -0
  368. data/test/dummy/tmp/cache/assets/development/sprockets/5343637e2648daefcbb5f6da93e22170 +0 -0
  369. data/test/dummy/tmp/cache/assets/development/sprockets/5698b010ec22ef0139df1ec7921bada0 +0 -0
  370. data/test/dummy/tmp/cache/assets/development/sprockets/573028956728676e330972a5f5b14ce1 +0 -0
  371. data/test/dummy/tmp/cache/assets/development/sprockets/593143829da9d8a11949cdea62925830 +0 -0
  372. data/test/dummy/tmp/cache/assets/development/sprockets/5a3608849ffcf6b5ffd0e0c519899b0f +0 -0
  373. data/test/dummy/tmp/cache/assets/development/sprockets/5b28ba105943c3d7648e1c3a64497d6a +0 -0
  374. data/test/dummy/tmp/cache/assets/development/sprockets/613c2f7728f24118bf60b70e5467b04e +0 -0
  375. data/test/dummy/tmp/cache/assets/development/sprockets/62a837ae3a144323a69c9c742a0d338e +0 -0
  376. data/test/dummy/tmp/cache/assets/development/sprockets/6428de878f492d768cfef210554eb78e +0 -0
  377. data/test/dummy/tmp/cache/assets/development/sprockets/65e9bcd0c838633f8992701c9486752f +0 -0
  378. data/test/dummy/tmp/cache/assets/development/sprockets/66c2afe997efeeb00c23f320cd5154b1 +0 -0
  379. data/test/dummy/tmp/cache/assets/development/sprockets/69088615f9cef33446fa9ce9af0cbfcb +0 -0
  380. data/test/dummy/tmp/cache/assets/development/sprockets/69c591a2e6598aef38bce6f1bfd9a583 +0 -0
  381. data/test/dummy/tmp/cache/assets/development/sprockets/6c0e89bb1f1dd6fef016f0f030b155a4 +0 -0
  382. data/test/dummy/tmp/cache/assets/development/sprockets/74d99242046d9e80efe6e63d318f0d23 +0 -0
  383. data/test/dummy/tmp/cache/assets/development/sprockets/75ec5eefcca62d9bfa875ebb00e5acae +0 -0
  384. data/test/dummy/tmp/cache/assets/development/sprockets/7b89b96229652f6b39b4956713d83fb3 +0 -0
  385. data/test/dummy/tmp/cache/assets/development/sprockets/7bb9867f00636aa2e82aab7c8cde1156 +0 -0
  386. data/test/dummy/tmp/cache/assets/development/sprockets/7d185042919d487db4ba3415054bf46b +0 -0
  387. data/test/dummy/tmp/cache/assets/development/sprockets/7d541dc935739c00601285ef558dc186 +0 -0
  388. data/test/dummy/tmp/cache/assets/development/sprockets/7d643ed86fb6b4f4bc4cbc1573edf562 +0 -0
  389. data/test/dummy/tmp/cache/assets/development/sprockets/7d7c5e1189ffb57c1027fbb1f4849056 +0 -0
  390. data/test/dummy/tmp/cache/assets/development/sprockets/7e0a659f836bf08aa7e86a3b3bd64a0a +0 -0
  391. data/test/dummy/tmp/cache/assets/development/sprockets/8085921c00ddb46d86508243dd466f7a +0 -0
  392. data/test/dummy/tmp/cache/assets/development/sprockets/808e7e23c256ba7b4ae032c997b7f7d1 +0 -0
  393. data/test/dummy/tmp/cache/assets/development/sprockets/813778cca328c7d9a71e6ad9bd6b5b93 +0 -0
  394. data/test/dummy/tmp/cache/assets/development/sprockets/898c074f26089ae77019f6bb0d7b87c3 +0 -0
  395. data/test/dummy/tmp/cache/assets/development/sprockets/8aa0c86835fc92349a71e76dfa064cf0 +0 -0
  396. data/test/dummy/tmp/cache/assets/development/sprockets/8d50fa8e9c1035cb3fbf50bcd2dad220 +0 -0
  397. data/test/dummy/tmp/cache/assets/development/sprockets/91307c7344a9f3f6f727226a87aaf6b1 +0 -0
  398. data/test/dummy/tmp/cache/assets/development/sprockets/977b0e7fd460cd4ebb7482e0bc5dae0d +0 -0
  399. data/test/dummy/tmp/cache/assets/development/sprockets/9a27bf15ceccd6156c4fbddfe430431f +0 -0
  400. data/test/dummy/tmp/cache/assets/development/sprockets/9bbfa312e4f834114c0d7fcf15e9d591 +0 -0
  401. data/test/dummy/tmp/cache/assets/development/sprockets/a0ddccdbb865754a76b131fa64932582 +0 -0
  402. data/test/dummy/tmp/cache/assets/development/sprockets/aac96aa095d26ef97f58eb4126da0bf7 +0 -0
  403. data/test/dummy/tmp/cache/assets/development/sprockets/ab136f8b2c696dd4d96e4899a0e8a4ac +0 -0
  404. data/test/dummy/tmp/cache/assets/development/sprockets/b2bf0c4531b78b65440c4c84908149fe +0 -0
  405. data/test/dummy/tmp/cache/assets/development/sprockets/b8acda462092c7c76b1322856f8e39ca +0 -0
  406. data/test/dummy/tmp/cache/assets/development/sprockets/bf9bfc00456efae4900ccf4afcb76b1a +0 -0
  407. data/test/dummy/tmp/cache/assets/development/sprockets/c01f86af98746d42cda25607438cc39f +0 -0
  408. data/test/dummy/tmp/cache/assets/development/sprockets/c38b7c525999d0c070c974f0e1858073 +0 -0
  409. data/test/dummy/tmp/cache/assets/development/sprockets/c4393dff2f5bbfb3db980d09f116e865 +0 -0
  410. data/test/dummy/tmp/cache/assets/development/sprockets/c64c25da8d01c54ccf41dc956d9c9b44 +0 -0
  411. data/test/dummy/tmp/cache/assets/development/sprockets/c6a502787893c3368f02209006ef3c3a +0 -0
  412. data/test/dummy/tmp/cache/assets/development/sprockets/c6fc4a60aef7967d11f2188d3a8317e8 +0 -0
  413. data/test/dummy/tmp/cache/assets/development/sprockets/d60ab8b8e8ff9e6df6e04cb335e79e38 +0 -0
  414. data/test/dummy/tmp/cache/assets/development/sprockets/d786e75d26229c39c37d842fb4de0479 +0 -0
  415. data/test/dummy/tmp/cache/assets/development/sprockets/dcf2f012e3f4d3ecc9b1a2f21290fefd +0 -0
  416. data/test/dummy/tmp/cache/assets/development/sprockets/de7818edd5229ecc4f5808d25aea085d +0 -0
  417. data/test/dummy/tmp/cache/assets/development/sprockets/e010156bdbfaae9098512ae86bf0288b +0 -0
  418. data/test/dummy/tmp/cache/assets/development/sprockets/ea97af2f7f945b7c87258b2338f5bc0c +0 -0
  419. data/test/dummy/tmp/cache/assets/development/sprockets/f2137fda0185692d9909c6bde77f6ac5 +0 -0
  420. data/test/dummy/tmp/cache/assets/development/sprockets/f7428da6a5bd069f4c521897f2ff0549 +0 -0
  421. data/test/dummy/tmp/cache/assets/development/sprockets/fa7d07347669600716cb3cb894127454 +0 -0
  422. data/test/dummy/tmp/cache/assets/development/sprockets/fe4a3fb260cf70c451034496362792e4 +0 -0
  423. data/test/dummy/tmp/cache/assets/production/sass/144bb07df25732886de34fc892b7c84d418ab110/cms.scss.erbc +0 -0
  424. data/test/dummy/tmp/cache/assets/production/sass/144bb07df25732886de34fc892b7c84d418ab110/cms.scssc +0 -0
  425. data/test/dummy/tmp/cache/assets/production/sass/5df77a09e28ee5e99b029d061fc8c7aa74ed8701/bootstrap.scss.erbc +0 -0
  426. data/test/dummy/tmp/cache/assets/production/sass/9ef9c546be1f15bd909c4626b18ec56c75aac0ce/cms.scss.erbc +0 -0
  427. data/test/dummy/tmp/cache/assets/production/sass/c8e2efff656b76a26ac2cc5b5528e2ab9741b52a/bootstrap.scss.erbc +0 -0
  428. data/test/dummy/tmp/cache/assets/production/sprockets/00dfd740f227e8eacf8dc70e8923aa30 +0 -0
  429. data/test/dummy/tmp/cache/assets/production/sprockets/052ccadc06984b221f1af051c32e613a +0 -0
  430. data/test/dummy/tmp/cache/assets/production/sprockets/0894458794b51b17900c3d7abefc2aa5 +0 -0
  431. data/test/dummy/tmp/cache/assets/production/sprockets/0ceefdff5c5f03895722be20f6ddc26b +0 -0
  432. data/test/dummy/tmp/cache/assets/production/sprockets/0dd47da3f882e810b77e341b2bcd8abc +0 -0
  433. data/test/dummy/tmp/cache/assets/production/sprockets/0f096a9239d1b8b3c0d7f0a079ba8dc6 +0 -0
  434. data/test/dummy/tmp/cache/assets/production/sprockets/0f7e8127f53c92f853b2d1f7f3887b25 +0 -0
  435. data/test/dummy/tmp/cache/assets/production/sprockets/11eedd47a993ae43b134c4a8323fe16d +0 -0
  436. data/test/dummy/tmp/cache/assets/production/sprockets/13fe41fee1fe35b49d145bcc06610705 +0 -0
  437. data/test/dummy/tmp/cache/assets/production/sprockets/14e730b33d5c77e57ef1d749d3f59d09 +0 -0
  438. data/test/dummy/tmp/cache/assets/production/sprockets/16aa40bf8985a2f1f3e5dea5d72e6218 +0 -0
  439. data/test/dummy/tmp/cache/assets/production/sprockets/17ea4d79d21b1f083c77f59ba9b3372d +0 -0
  440. data/test/dummy/tmp/cache/assets/production/sprockets/1893a62d9206a1fb9d89578a47e6dba8 +0 -0
  441. data/test/dummy/tmp/cache/assets/production/sprockets/1de6a759b14c2e99ab1641cad5521433 +0 -0
  442. data/test/dummy/tmp/cache/assets/production/sprockets/22a5108e690ae432a7d96ad27ae23356 +0 -0
  443. data/test/dummy/tmp/cache/assets/production/sprockets/2bf91fb337440bb9de78c2e6c6bcb95f +0 -0
  444. data/test/dummy/tmp/cache/assets/production/sprockets/2f5173deea6c795b8fdde723bb4b63af +0 -0
  445. data/test/dummy/tmp/cache/assets/production/sprockets/357970feca3ac29060c1e3861e2c0953 +0 -0
  446. data/test/dummy/tmp/cache/assets/production/sprockets/37ffa56a3e6b08a7683a7b180bac45e9 +0 -0
  447. data/test/dummy/tmp/cache/assets/production/sprockets/3f68640e722ec4648c55f987c372bd1f +0 -0
  448. data/test/dummy/tmp/cache/assets/production/sprockets/41b539dab4032aeab4acc677841be9e1 +0 -0
  449. data/test/dummy/tmp/cache/assets/production/sprockets/4d0e945a1aeffabb6ecbe4e9cfbe9900 +0 -0
  450. data/test/dummy/tmp/cache/assets/production/sprockets/5343637e2648daefcbb5f6da93e22170 +0 -0
  451. data/test/dummy/tmp/cache/assets/production/sprockets/5698b010ec22ef0139df1ec7921bada0 +0 -0
  452. data/test/dummy/tmp/cache/assets/production/sprockets/593143829da9d8a11949cdea62925830 +0 -0
  453. data/test/dummy/tmp/cache/assets/production/sprockets/5a3608849ffcf6b5ffd0e0c519899b0f +0 -0
  454. data/test/dummy/tmp/cache/assets/production/sprockets/613c2f7728f24118bf60b70e5467b04e +0 -0
  455. data/test/dummy/tmp/cache/assets/production/sprockets/6428de878f492d768cfef210554eb78e +0 -0
  456. data/test/dummy/tmp/cache/assets/production/sprockets/65e9bcd0c838633f8992701c9486752f +0 -0
  457. data/test/dummy/tmp/cache/assets/production/sprockets/66c2afe997efeeb00c23f320cd5154b1 +0 -0
  458. data/test/dummy/tmp/cache/assets/production/sprockets/672160928c4f356614c3b08e4dd18959 +0 -0
  459. data/test/dummy/tmp/cache/assets/production/sprockets/69088615f9cef33446fa9ce9af0cbfcb +0 -0
  460. data/test/dummy/tmp/cache/assets/production/sprockets/69c591a2e6598aef38bce6f1bfd9a583 +0 -0
  461. data/test/dummy/tmp/cache/assets/production/sprockets/6c0e89bb1f1dd6fef016f0f030b155a4 +0 -0
  462. data/test/dummy/tmp/cache/assets/production/sprockets/74d99242046d9e80efe6e63d318f0d23 +0 -0
  463. data/test/dummy/tmp/cache/assets/production/sprockets/77c132a2a2cf0e255033066a80db84e5 +0 -0
  464. data/test/dummy/tmp/cache/assets/production/sprockets/7b3469b8a6587d3fdde5168bcadc1829 +0 -0
  465. data/test/dummy/tmp/cache/assets/production/sprockets/7b89b96229652f6b39b4956713d83fb3 +0 -0
  466. data/test/dummy/tmp/cache/assets/production/sprockets/7bb9867f00636aa2e82aab7c8cde1156 +0 -0
  467. data/test/dummy/tmp/cache/assets/production/sprockets/7d185042919d487db4ba3415054bf46b +0 -0
  468. data/test/dummy/tmp/cache/assets/production/sprockets/7d541dc935739c00601285ef558dc186 +0 -0
  469. data/test/dummy/tmp/cache/assets/production/sprockets/7e0a659f836bf08aa7e86a3b3bd64a0a +0 -0
  470. data/test/dummy/tmp/cache/assets/production/sprockets/8085921c00ddb46d86508243dd466f7a +0 -0
  471. data/test/dummy/tmp/cache/assets/production/sprockets/808e7e23c256ba7b4ae032c997b7f7d1 +0 -0
  472. data/test/dummy/tmp/cache/assets/production/sprockets/82af58bd517f6c898e82655012e662f3 +0 -0
  473. data/test/dummy/tmp/cache/assets/production/sprockets/896e0a59c127f026ecc3ce390c394c6d +0 -0
  474. data/test/dummy/tmp/cache/assets/production/sprockets/8aa0c86835fc92349a71e76dfa064cf0 +0 -0
  475. data/test/dummy/tmp/cache/assets/production/sprockets/8c20ea028e7ef9e18ab2517785615d32 +0 -0
  476. data/test/dummy/tmp/cache/assets/production/sprockets/91307c7344a9f3f6f727226a87aaf6b1 +0 -0
  477. data/test/dummy/tmp/cache/assets/production/sprockets/977b0e7fd460cd4ebb7482e0bc5dae0d +0 -0
  478. data/test/dummy/tmp/cache/assets/production/sprockets/9e4856eaccd8050e2cce8f2726bd1ff9 +0 -0
  479. data/test/dummy/tmp/cache/assets/production/sprockets/a0ddccdbb865754a76b131fa64932582 +0 -0
  480. data/test/dummy/tmp/cache/assets/production/sprockets/aac96aa095d26ef97f58eb4126da0bf7 +0 -0
  481. data/test/dummy/tmp/cache/assets/production/sprockets/ab136f8b2c696dd4d96e4899a0e8a4ac +0 -0
  482. data/test/dummy/tmp/cache/assets/production/sprockets/b0e2ed0167a71948529cf8507015a638 +0 -0
  483. data/test/dummy/tmp/cache/assets/production/sprockets/b2bf0c4531b78b65440c4c84908149fe +0 -0
  484. data/test/dummy/tmp/cache/assets/production/sprockets/bf9bfc00456efae4900ccf4afcb76b1a +0 -0
  485. data/test/dummy/tmp/cache/assets/production/sprockets/c01f86af98746d42cda25607438cc39f +0 -0
  486. data/test/dummy/tmp/cache/assets/production/sprockets/c0625d8a0a68787afb029146355062df +0 -0
  487. data/test/dummy/tmp/cache/assets/production/sprockets/c28f157f3954955f1bc4ca11b085e5f1 +0 -0
  488. data/test/dummy/tmp/cache/assets/production/sprockets/c4393dff2f5bbfb3db980d09f116e865 +0 -0
  489. data/test/dummy/tmp/cache/assets/production/sprockets/c6a502787893c3368f02209006ef3c3a +0 -0
  490. data/test/dummy/tmp/cache/assets/production/sprockets/c76f44b59338c92655cdb50acd5a51b7 +0 -0
  491. data/test/dummy/tmp/cache/assets/production/sprockets/c8c8b769bfa8c90477013dc463dce8dd +0 -0
  492. data/test/dummy/tmp/cache/assets/production/sprockets/c9d60e346e8632bb3945f7e94cce0036 +0 -0
  493. data/test/dummy/tmp/cache/assets/production/sprockets/cbfd1cdcc8926af0e015fd6e4a8cfe95 +0 -0
  494. data/test/dummy/tmp/cache/assets/production/sprockets/cc2b3e15e75ad21a379b54186f0b3e63 +0 -0
  495. data/test/dummy/tmp/cache/assets/production/sprockets/ce0f026a8f35c2824e68416229e502b0 +0 -0
  496. data/test/dummy/tmp/cache/assets/production/sprockets/cf38200dbb3ee3a9d4dd84cc1d98ada2 +0 -0
  497. data/test/dummy/tmp/cache/assets/production/sprockets/cffd775d018f68ce5dba1ee0d951a994 +0 -0
  498. data/test/dummy/tmp/cache/assets/production/sprockets/d60ab8b8e8ff9e6df6e04cb335e79e38 +0 -0
  499. data/test/dummy/tmp/cache/assets/production/sprockets/d771ace226fc8215a3572e0aa35bb0d6 +0 -0
  500. data/test/dummy/tmp/cache/assets/production/sprockets/d786e75d26229c39c37d842fb4de0479 +0 -0
  501. data/test/dummy/tmp/cache/assets/production/sprockets/da3b6190521b537ef46190c99c630173 +0 -0
  502. data/test/dummy/tmp/cache/assets/production/sprockets/dcf2f012e3f4d3ecc9b1a2f21290fefd +0 -0
  503. data/test/dummy/tmp/cache/assets/production/sprockets/de3b887062709ecbae0f43a1967507b3 +0 -0
  504. data/test/dummy/tmp/cache/assets/production/sprockets/e010156bdbfaae9098512ae86bf0288b +0 -0
  505. data/test/dummy/tmp/cache/assets/production/sprockets/e0e949e3a882294df1ac6efb53555963 +0 -0
  506. data/test/dummy/tmp/cache/assets/production/sprockets/e508a5da5b2a6ba14eaabe1fc9987f1b +0 -0
  507. data/test/dummy/tmp/cache/assets/production/sprockets/f2137fda0185692d9909c6bde77f6ac5 +0 -0
  508. data/test/dummy/tmp/cache/assets/production/sprockets/f5630318facff40bd4c26746561e91a5 +0 -0
  509. data/test/dummy/tmp/cache/assets/production/sprockets/f72f9d88e28ad73485fcc24ef00be1f0 +0 -0
  510. data/test/dummy/tmp/cache/assets/production/sprockets/f7428da6a5bd069f4c521897f2ff0549 +0 -0
  511. data/test/dummy/tmp/cache/assets/production/sprockets/f7cbd26ba1d28d48de824f0e94586655 +0 -0
  512. data/test/dummy/tmp/cache/assets/production/sprockets/fa7d07347669600716cb3cb894127454 +0 -0
  513. data/test/dummy/tmp/cache/assets/production/sprockets/ffa3b9093369ac4b2758f390b0cafab4 +0 -0
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 3b2baf1750ad522511f98b8828adfe1900ae6f75
4
- data.tar.gz: 0760fe6c1d2c1b7f34322f03b42a8deb38fb01c2
3
+ metadata.gz: a0e79aebcd8e04701aac347c16511109152e8323
4
+ data.tar.gz: 4de7a15f5afc6f96126c8a6e3f203d01ff164e4b
5
5
  SHA512:
6
- metadata.gz: df4a3f44a94f23bddd27ab69402a627c6e2db2382f62b6c7474f024de0ded64984e9b6f6520e60c701a95e4f0158cfd33e2d3bb5f90abfe7d865435a837a29e5
7
- data.tar.gz: 58cbbd5781cdb2b63a4b8407f3c55f0e970ddf08a9b9f6714e01170eab609b4bc12ed4cc828abdab53249f0f4045167f99b41856698db30fd04e5311445136b7
6
+ metadata.gz: 6e2349aa420c70b14ce53992593298dfbd3d6638c9dc62b5d63035f89bb687d4ca4e40bb9cc7b3ba5fac2d778bc7559fcb6b56ea6c55a08ebfaf236b2c9da4ac
7
+ data.tar.gz: 4ce0d584eb20be9aa5e6ebad85956175acc8e65790db6baf9e77e476f8e5af85d85fd20aacf3715d0953c6f00244efd10f4f0a62cfda8dd9bb53ffc93e6b7f68
data/MIT-LICENSE CHANGED
File without changes
data/README.md CHANGED
@@ -44,7 +44,7 @@ To install `imagemagick` and `sqlite3` on `Ubuntu`
44
44
 
45
45
  Add it to your `Gemfile`
46
46
 
47
- gem 'rubber_ring', :git => 'git://github.com/zigomir/rubber_ring.git'
47
+ gem 'rubber_ring'
48
48
 
49
49
  Create/migrate database
50
50
 
@@ -131,37 +131,40 @@ CMS fields are made of tag, key and `@page` which holds content for all the page
131
131
 
132
132
  Examples
133
133
 
134
- <%= editable_field(:h1, {key: 'header'}, @page) do %>
135
- I'm editable content in one line.
136
- <% end %>
134
+ ```erb
135
+ <%= editable_field(:h1, {key: 'header'}, @page) do %>
136
+ I'm editable content in one line.
137
+ <% end %>
137
138
 
138
- <%= editable_field(:div, {key: 'first_content', class: 'multi-line'}, @page) do %>
139
- I'm editable content in
140
- multi lines...
141
- <% end %>
142
-
143
- <%= editable_link({class: 'rubber_ring_attachment', key: 'attachment-link', href: '/link-to-something'}, @page) do %>
144
- Link to PDF
145
- <% end %>
139
+ <%= editable_field(:div, {key: 'first_content', class: 'multi-line'}, @page) do %>
140
+ I'm editable content in
141
+ multi lines...
142
+ <% end %>
143
+
144
+ <%= editable_link({class: 'rubber_ring_attachment', key: 'attachment-link', href: '/link-to-something'}, @page) do %>
145
+ Link to PDF
146
+ <% end %>
146
147
 
147
- <%= editable_image({key: 'header_image', src: image_path('baws.jpg'), height: '360'}, @page) %>
148
+ <%= editable_image({key: 'header_image', src: image_path('baws.jpg'), height: '360'}, @page) %>
149
+ ```
148
150
 
149
151
  ## Templates
150
152
 
151
153
  Allows you to set up repeating and sortable templates. Example
152
154
 
153
- <% template([
154
- {template: 'article', tclass: 'article', element: 'article'},
155
- {template: 'blog_post', tclass: 'blog', element: 'div'}
156
- ],
157
- {key: 'template_key', wrap_element: 'div', wrap_class: 'templates'}, @page)
158
- %>
159
-
155
+ ```erb
156
+ <% template([
157
+ {template: 'article', tclass: 'article', element: 'article'},
158
+ {template: 'blog_post', tclass: 'blog', element: 'div'}
159
+ ],
160
+ {key: 'template_key', wrap_element: 'div', wrap_class: 'templates'}, @page)
161
+ %>
162
+ ```
160
163
 
161
164
  This means, that you need to create new view for each template in
162
165
  `app/views/templates/`. Example
163
166
 
164
- `app/views/templates/_article.html.erb`
167
+ app/views/templates/_article.html.erb
165
168
 
166
169
  Convention
167
170
 
@@ -169,17 +172,19 @@ Convention
169
172
  {template: 'article', ...
170
173
  ...
171
174
 
172
- means that you need a view, saved like:
175
+ means that you need a view, saved in a file
173
176
 
174
- `app/views/templates/_article.html.erb`
177
+ app/views/templates/_article.html.erb
175
178
 
176
179
  **Inside templates** you can use all other helpers. **BUT**, you need to
177
180
  assemble your key correctly or otherwise you will be overwriting your own content.
178
181
  You can use `key_prefix`, which is assembled the way which will help you to prevent key overwites. Example:
179
182
 
180
- <%= editable_field(:h2, {key: "#{key_prefix}_title"}, @page) do %>
181
- Article Title
182
- <% end %>
183
+ ```erb
184
+ <%= editable_field(:h2, {key: "#{key_prefix}_title"}, @page) do %>
185
+ Article Title
186
+ <% end %>
187
+ ```
183
188
 
184
189
  ### Helper options
185
190
 
data/Rakefile CHANGED
File without changes
File without changes
File without changes
File without changes
File without changes
@@ -1,17 +1,17 @@
1
- // This is a manifest file that'll be compiled into application.js, which will include all the files
2
- // listed below.
3
- //
4
- // Any JavaScript/Coffee file within this directory, lib/assets/javascripts, vendor/assets/javascripts,
5
- // or vendor/assets/javascripts of plugins, if any, can be referenced here using a relative path.
6
- //
7
- // It's not advisable to add code directly here, but if you do, it'll appear at the bottom of the
8
- // compiled file.
9
- //
10
- // WARNING: THE FIRST BLANK LINE MARKS THE END OF WHAT'S TO BE PROCESSED, ANY BLANK LINE SHOULD
11
- // GO AFTER THE REQUIRES BELOW.
12
- //
13
- //= require jquery
14
- //= require jquery-ui
15
- //= require jquery_ujs
16
- //= require_tree ../libs
17
- //= require_tree .
1
+ // This is a manifest file that'll be compiled into application.js, which will include all the files
2
+ // listed below.
3
+ //
4
+ // Any JavaScript/Coffee file within this directory, lib/assets/javascripts, vendor/assets/javascripts,
5
+ // or vendor/assets/javascripts of plugins, if any, can be referenced here using a relative path.
6
+ //
7
+ // It's not advisable to add code directly here, but if you do, it'll appear at the bottom of the
8
+ // compiled file.
9
+ //
10
+ // WARNING: THE FIRST BLANK LINE MARKS THE END OF WHAT'S TO BE PROCESSED, ANY BLANK LINE SHOULD
11
+ // GO AFTER THE REQUIRES BELOW.
12
+ //
13
+ //= require jquery
14
+ //= require jquery-ui
15
+ //= require jquery_ujs
16
+ //= require_tree ../libs
17
+ //= require_tree .
@@ -33,7 +33,7 @@ class @AttachmentDragger
33
33
  # also change link if we are dropping attachmeng
34
34
  $(e.currentTarget).html(e.dataTransfer.getData(@attribute).split('/').reverse()[0]) if @attribute == "href"
35
35
 
36
- pm = new PersistenceManager()
36
+ pm = new PersistenceManager(App.config.action_btns, $(".alert-saved div"))
37
37
  pm.save_image($(e.currentTarget)) if @attribute == "src"
38
38
  pm.save_attachment($(e.currentTarget)) if @attribute == "href"
39
39
 
@@ -6,7 +6,7 @@ $ ->
6
6
 
7
7
  # remove all unused images action
8
8
  $(".remove_not_used_attachments").on "click", ->
9
- pm = new PersistenceManager()
9
+ pm = new PersistenceManager(App.config.action_btns, $(".alert-saved div"))
10
10
  uploaded_images = ($(item).attr("src") for item in $(".uploaded-images img"))
11
11
  uploaded_attachments = ($(item).attr("href") for item in $(".uploaded-attachments a"))
12
12
  used_images = ($(item).attr("src") for item in $(".rubber_ring_image"))
@@ -1,66 +1,69 @@
1
1
  $ ->
2
- # init
3
- config = {
4
- action_btns: {
5
- reset_btn: '<button class="reset-content"></button>',
6
- reset_img: '<button class="reset-image"></button>'
7
- }
8
- }
9
-
10
- $editable_content = $("[contenteditable]")
11
- $alert = $(".alert-saved div")
12
-
13
2
  util = new Util()
14
3
  # first check for any duplicated keys
15
4
  duplicates = util.find_duplicated_keys($('[data-cms]'))
16
5
  alert "Correct key duplicates: '#{duplicates}'" if duplicates.length > 0
17
6
 
18
- pm = new PersistenceManager(config.action_btns, $alert)
7
+ pm = new PersistenceManager(App.config.action_btns, $(".alert-saved div"))
19
8
  te = new TemplateEditor(pm, util)
20
9
  te.init()
21
10
  te.init_sortable()
22
11
 
23
- le = new LinkEditor($editable_content)
12
+ le = new LinkEditor($("[contenteditable]"))
24
13
  le.init()
25
14
 
26
- # append reset button to editable contents
27
- $("[contenteditable]").append(config.action_btns.reset_btn)
28
- $("img[data-cms]").after(config.action_btns.reset_img)
15
+ App.init = ->
16
+ # append reset button to editable contents
17
+ $("[contenteditable]").append(App.config.action_btns.reset_btn)
18
+ $("img[data-cms]").after(App.config.action_btns.reset_img)
29
19
 
30
- $("body").on "click", ".reset-content", (e) ->
31
- $content_to_reset = $(e.currentTarget).parent()
32
- if window.confirm "Really want reset content?"
33
- pm.remove($content_to_reset).then ->
34
- window.location.reload(true)
20
+ $("body").on "click", ".reset-content", (e) ->
21
+ $content_to_reset = $(e.currentTarget).parent()
22
+ if window.confirm "Really want reset content?"
23
+ pm.remove($content_to_reset).then ->
24
+ window.location.reload(true)
35
25
 
36
- $("body").on "click", ".reset-image", (e) ->
37
- $image_to_reset = $(e.currentTarget).prev()
38
- if window.confirm "Really want reset image?"
39
- pm.remove($image_to_reset).then ->
40
- window.location.reload(true)
26
+ $("body").on "click", ".reset-image", (e) ->
27
+ $image_to_reset = $(e.currentTarget).prev()
28
+ if window.confirm "Really want reset image?"
29
+ pm.remove($image_to_reset).then ->
30
+ window.location.reload(true)
41
31
 
42
- $(".rubber_ring_attachment").click (e) ->
43
- e.preventDefault()
32
+ $(".rubber_ring_attachment").click (e) ->
33
+ e.preventDefault()
44
34
 
45
- # register change event for HTML5 content editable
46
- $("body").on "focus", "[contenteditable]", ->
47
- $this = $(this)
48
- $this.data "before", $this.html()
49
- $this
50
- .on "blur", "[contenteditable]", ->
51
- $this = $(this)
52
- if $this.data("before") isnt $this.html()
35
+ # register change event for HTML5 content editable
36
+ $("body").on "focus", "[contenteditable]", ->
37
+ $this = $(this)
53
38
  $this.data "before", $this.html()
54
- $this.trigger "change"
55
- $this
39
+ $this
40
+ .on "blur", "[contenteditable]", ->
41
+ $this = $(this)
42
+ if $this.data("before") isnt $this.html()
43
+ $this.data "before", $this.html()
44
+ $this.trigger "change"
45
+ $this
46
+
47
+ $("[contenteditable]").change (e) ->
48
+ $content = $(e.currentTarget)
49
+ pm.save($content)
50
+
51
+ # disable enter in single line editor
52
+ $("[contenteditable]").not(".multi-line").keydown (e) ->
53
+ e.preventDefault() if e.keyCode is 13
56
54
 
57
- $editable_content.change (e) ->
58
- $content = $(e.currentTarget)
59
- pm.save($content)
55
+ # https://developer.mozilla.org/en-US/docs/Rich-Text_Editing_in_Mozilla#Executing%5FCommands
56
+ $("[contenteditable].multi-line").keydown (e) ->
57
+ if e.which == 13
58
+ lineBreak = "<br />"
59
+ end = $(this).text().length == getCaretCharacterOffsetWithin(this)
60
60
 
61
- # disable enter in single line editor
62
- $editable_content.not(".multi-line").keydown (e) ->
63
- e.preventDefault() if e.keyCode is 13
61
+ if end
62
+ this.insertAdjacentHTML("beforeend", lineBreak)
63
+ else
64
+ document.execCommand("insertHTML", false, lineBreak)
65
+
66
+ false
64
67
 
65
68
  getCaretCharacterOffsetWithin = (element) ->
66
69
  caretOffset = 0
@@ -78,15 +81,4 @@ $ ->
78
81
  caretOffset = preCaretTextRange.text.length
79
82
  caretOffset
80
83
 
81
- # https://developer.mozilla.org/en-US/docs/Rich-Text_Editing_in_Mozilla#Executing%5FCommands
82
- $("[contenteditable].multi-line").keydown (e) ->
83
- if e.which == 13
84
- lineBreak = "<br />"
85
- end = $(this).text().length == getCaretCharacterOffsetWithin(this)
86
-
87
- if end
88
- this.insertAdjacentHTML("beforeend", lineBreak)
89
- else
90
- document.execCommand("insertHTML", false, lineBreak)
91
-
92
- false
84
+ App.init()
@@ -1,74 +1,77 @@
1
- class @PersistenceManager
2
- post_object:
3
- page_controller: App.controller
4
- page_action: App.action
5
- page_path: document.location.pathname
6
- page_locale: App.locale
7
-
8
- constructor: (@action_btns, @alert) ->
9
-
10
- # all pm methods should have key and content parameters
11
- save: (content) ->
12
- key = content.attr("data-cms") # data wont work here because of cloning dom
13
-
14
- if content.is('input')
15
- value = content.val()
16
- else
17
- value = @sanitize(content)
18
-
19
- @post_object.content = {}
20
- @post_object.content[key] = value
21
-
22
- if content.is("a")
23
- @post_object.content["#{key}_href"] = content.attr("href")
24
-
25
- @post_to_backend(App.save_path, @post_object)
26
-
27
- save_template: (templates) ->
28
- @post_object.content = templates
29
- @post_to_backend(App.save_template_path, @post_object)
30
-
31
- add_template: (content) ->
32
- @post_object.content = content
33
- @post_to_backend(App.add_template_path, @post_object)
34
-
35
- remove_template: (content) ->
36
- @post_object.content = content
37
- @post_to_backend(App.remove_template_path, @post_object)
38
-
39
- save_image: (content) ->
40
- key = content.attr("data-cms")
41
- @post_object.content = {}
42
- @post_object.content[key] = content.attr("src")
43
- @post_object.width = content.attr("width")
44
- @post_object.height = content.attr("height")
45
- @post_to_backend(App.save_image_path, @post_object)
46
-
47
- save_attachment: (content) ->
48
- key = content.attr("data-cms")
49
- @post_object.content = {}
50
- @post_object.content[key] = content.attr("href").split('/').reverse()[0]
51
- @post_object.content["#{key}_href"] = content.attr("href")
52
- @post_to_backend(App.save_attachment_path, @post_object)
53
-
54
- sanitize: (content) ->
55
- # it is important to sanitize htmlValue or else we will get more and more broken html from database
56
- # we need to remove any new lines like \r and \n
57
- content = content.html().replace(/^[\s]+$/g, "").trim()
58
- content = content.replace(value, "").trim() for key, value of @action_btns
59
- content
60
-
61
- remove: (content) ->
62
- key = content.attr("data-cms")
63
- path = App.remove_path.replace(':key', key)
64
- @post_to_backend(path, @post_object)
65
-
66
- remove_image: (src) ->
67
- @post_object.src_to_remove = src
68
- @post_to_backend(App.remove_attachment_path, @post_object)
69
-
70
- post_to_backend: (path, post_object) =>
71
- $.post path, post_object, =>
72
- @alert.addClass("animate")
73
- @alert.on "transitionend", =>
74
- @alert.removeClass("animate")
1
+ class @PersistenceManager
2
+ post_object:
3
+ page_controller: App.controller
4
+ page_action: App.action
5
+ page_path: document.location.pathname
6
+ page_locale: App.locale
7
+
8
+ constructor: (@action_btns, @alert) ->
9
+
10
+ save: (content) ->
11
+ key = content.attr("data-cms") # data wont work here because of cloning dom
12
+
13
+ if content.is('input')
14
+ value = content.val()
15
+ else
16
+ value = @sanitize(content)
17
+
18
+ @post_object.content = {}
19
+ @post_object.content[key] = value
20
+
21
+ if content.is("a")
22
+ @post_object.content["#{key}_href"] = content.attr("href")
23
+
24
+ @post_to_backend(App.save_path, @post_object)
25
+
26
+ save_template: (templates) ->
27
+ @post_object.content = templates
28
+ @post_to_backend(App.save_template_path, @post_object)
29
+
30
+ add_template: (content) ->
31
+ @post_object.content = content
32
+ @post_to_backend(App.add_template_path, @post_object)
33
+
34
+ remove_template: (content) ->
35
+ @post_object.content = content
36
+ @post_to_backend(App.remove_template_path, @post_object)
37
+
38
+ save_image: (content) ->
39
+ key = content.attr("data-cms")
40
+ @post_object.content = {}
41
+ @post_object.content[key] = content.attr("src")
42
+ @post_object.width = content.attr("width")
43
+ @post_object.height = content.attr("height")
44
+ @post_to_backend(App.save_image_path, @post_object)
45
+
46
+ save_attachment: (content) ->
47
+ key = content.attr("data-cms")
48
+ @post_object.content = {}
49
+ @post_object.content[key] = content.attr("href").split('/').reverse()[0]
50
+ @post_object.content["#{key}_href"] = content.attr("href")
51
+ @post_to_backend(App.save_attachment_path, @post_object)
52
+
53
+ sanitize: (content) ->
54
+ # it is important to sanitize htmlValue or else we will get more and more broken html from database
55
+ # we need to remove any new lines like \r and \n
56
+ content = content.html().replace(/^[\s]+$/g, "").trim()
57
+
58
+ for key, value of @action_btns
59
+ regex = new RegExp(value, "g");
60
+ content = content.replace(regex, "").trim()
61
+
62
+ content
63
+
64
+ remove: (content) ->
65
+ key = content.attr("data-cms")
66
+ path = App.remove_path.replace(':key', key)
67
+ @post_to_backend(path, @post_object)
68
+
69
+ remove_image: (src) ->
70
+ @post_object.src_to_remove = src
71
+ @post_to_backend(App.remove_attachment_path, @post_object)
72
+
73
+ post_to_backend: (path, post_object) =>
74
+ $.post path, post_object, =>
75
+ @alert.addClass("animate")
76
+ @alert.on "transitionend", =>
77
+ @alert.removeClass("animate")
@@ -1,76 +1,76 @@
1
- class @TemplateEditor
2
-
3
- constructor: (@pm, @util) ->
4
-
5
- init: ->
6
- # save templates to database immediately
7
- not_saved_yet = $('[data-cms-template]').filter (index, element) ->
8
- $(element).data('from-db') == false
9
-
10
- if not_saved_yet.length > 0
11
- @save_all_templates()
12
-
13
- $('.rr-control .add-remove').click (e) =>
14
- $select = $(e.currentTarget).parents('.rr-control').find('select')
15
- action = $(e.target).data('action')
16
-
17
- template = $select.val()
18
- key = $select.data('cms-template')
19
- add_index = $("[data-cms=#{key}]").find("[data-template=#{template}]:first").data('template-index')
20
- remove_index = $("[data-cms=#{key}]").find("[data-template=#{template}]:last").data('template-index')
21
-
22
- content = {
23
- key: key
24
- template: template
25
- index: add_index
26
- }
27
-
28
- if action is 'add'
29
- @pm.add_template(content).then ->
30
- window.location.reload(true)
31
- else
32
- if add_index isnt remove_index
33
- content.index = remove_index
34
-
35
- @pm.remove_template(content).then ->
36
- window.location.reload(true)
37
-
38
- save_all_templates: ->
39
- $templates = $('[data-template]')
40
- templates_to_save = @get_templates_array($templates)
41
- @pm.save_template(templates_to_save)
42
-
43
- get_templates_array: ($templates) ->
44
- list = []
45
- $templates.each (index, element) ->
46
- list.push({
47
- key: $(element).parents('[data-cms]').first().data('cms')
48
- index: $(element).data('template-index')
49
- template: $(element).data('template')
50
- tclass: $(element).attr('class')
51
- element: $(element).prop('tagName').toLowerCase()
52
- sort: index
53
- })
54
-
55
- list
56
-
57
- init_sortable: ->
58
- # init sortable and disable it by default
59
- $('.templates').sortable()
60
- $('.templates').sortable('disable')
61
-
62
- $('.rr-control [data-action=sort]').click (e) =>
63
- $btn = $(e.currentTarget)
64
-
65
- if $('.templates').hasClass('ui-sortable-disabled')
66
- $('.templates').sortable('enable')
67
- $btn.text('Disable sort')
68
- $('.templates').children().css('cursor', 'move')
69
- else
70
- $('.templates').sortable('disable')
71
- $btn.text('Enable sort')
72
- $('.templates').children().css('cursor', 'auto')
73
-
74
- # re initialize order and save
75
- $('.templates').on 'sortupdate', (event, ui) =>
76
- @save_all_templates()
1
+ class @TemplateEditor
2
+
3
+ constructor: (@pm, @util) ->
4
+
5
+ init: ->
6
+ # save templates to database immediately
7
+ not_saved_yet = $('[data-cms-template]').filter (index, element) ->
8
+ $(element).data('from-db') == false
9
+
10
+ if not_saved_yet.length > 0
11
+ @save_all_templates()
12
+
13
+ $('.rr-control .add-remove').click (e) =>
14
+ $select = $(e.currentTarget).parents('.rr-control').find('select')
15
+ action = $(e.target).data('action')
16
+
17
+ template = $select.val()
18
+ key = $select.data('cms-template')
19
+ add_index = $("[data-cms=#{key}]").find("[data-template=#{template}]:first").data('template-index')
20
+ remove_index = $("[data-cms=#{key}]").find("[data-template=#{template}]:last").data('template-index')
21
+
22
+ content = {
23
+ key: key
24
+ template: template
25
+ }
26
+
27
+ if action is 'add'
28
+ content.index = add_index
29
+ @pm.add_template(content).then (data) ->
30
+ $(data.new_template).appendTo("[data-cms=#{key}]");
31
+ App.init()
32
+ else
33
+ if add_index isnt remove_index
34
+ content.index = remove_index
35
+ @pm.remove_template(content).then ->
36
+ $("[data-template-index=#{remove_index}]").remove()
37
+
38
+ save_all_templates: ->
39
+ $templates = $('[data-template]')
40
+ templates_to_save = @get_templates_array($templates)
41
+ @pm.save_template(templates_to_save)
42
+
43
+ get_templates_array: ($templates) ->
44
+ list = []
45
+ $templates.each (index, element) ->
46
+ list.push({
47
+ key: $(element).parents('[data-cms]').first().data('cms')
48
+ index: $(element).data('template-index')
49
+ template: $(element).data('template')
50
+ tclass: $(element).attr('class')
51
+ element: $(element).prop('tagName').toLowerCase()
52
+ sort: index
53
+ })
54
+
55
+ list
56
+
57
+ init_sortable: ->
58
+ # init sortable and disable it by default
59
+ $('.templates').sortable()
60
+ $('.templates').sortable('disable')
61
+
62
+ $('.rr-control [data-action=sort]').click (e) =>
63
+ $btn = $(e.currentTarget)
64
+
65
+ if $('.templates').hasClass('ui-sortable-disabled')
66
+ $('.templates').sortable('enable')
67
+ $btn.text('Disable sort')
68
+ $('.templates').children().css('cursor', 'move')
69
+ else
70
+ $('.templates').sortable('disable')
71
+ $btn.text('Enable sort')
72
+ $('.templates').children().css('cursor', 'auto')
73
+
74
+ # re initialize order and save
75
+ $('.templates').on 'sortupdate', (event, ui) =>
76
+ @save_all_templates()