attachinary-dox 1.3.1.pre → 1.3.1.pre2

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 (230) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +71 -0
  3. data/lib/attachinary/version.rb +1 -1
  4. data/spec/dummy/Gemfile +20 -0
  5. data/spec/dummy/Gemfile.lock +267 -0
  6. data/spec/dummy/Rakefile +7 -0
  7. data/spec/dummy/app/active_record/note.rb +12 -0
  8. data/spec/dummy/app/assets/config/manifest.js +2 -0
  9. data/spec/dummy/app/assets/javascripts/application.js +28 -0
  10. data/spec/dummy/app/assets/stylesheets/application.css +21 -0
  11. data/spec/dummy/app/controllers/application_controller.rb +3 -0
  12. data/spec/dummy/app/controllers/notes_controller.rb +56 -0
  13. data/spec/dummy/app/views/layouts/application.html.erb +15 -0
  14. data/spec/dummy/app/views/notes/_form_builder.html.erb +28 -0
  15. data/spec/dummy/app/views/notes/_form_nojs.html.erb +17 -0
  16. data/spec/dummy/app/views/notes/_form_raw.html.erb +28 -0
  17. data/spec/dummy/app/views/notes/_form_simple_form.html.erb +17 -0
  18. data/spec/dummy/app/views/notes/_note.html.erb +15 -0
  19. data/spec/dummy/app/views/notes/edit.html.erb +1 -0
  20. data/spec/dummy/app/views/notes/index.html.erb +12 -0
  21. data/spec/dummy/app/views/notes/new.html.erb +1 -0
  22. data/spec/dummy/config/application.rb +62 -0
  23. data/spec/dummy/config/boot.rb +4 -0
  24. data/spec/dummy/config/cloudinary.yml.example +15 -0
  25. data/spec/dummy/config/database.yml +25 -0
  26. data/spec/dummy/config/environment.rb +5 -0
  27. data/spec/dummy/config/environments/development.rb +33 -0
  28. data/spec/dummy/config/environments/production.rb +63 -0
  29. data/spec/dummy/config/environments/test.rb +37 -0
  30. data/spec/dummy/config/initializers/attachinary.rb +1 -0
  31. data/spec/dummy/config/initializers/backtrace_silencers.rb +7 -0
  32. data/spec/dummy/config/initializers/inflections.rb +15 -0
  33. data/spec/dummy/config/initializers/mime_types.rb +5 -0
  34. data/spec/dummy/config/initializers/secret_token.rb +7 -0
  35. data/spec/dummy/config/initializers/session_store.rb +8 -0
  36. data/spec/dummy/config/initializers/wrap_parameters.rb +14 -0
  37. data/spec/dummy/config/locales/en.yml +5 -0
  38. data/spec/dummy/config/routes.rb +5 -0
  39. data/spec/dummy/config.ru +4 -0
  40. data/spec/dummy/db/migrate/20120608091037_create_tables.rb +17 -0
  41. data/spec/dummy/db/migrate/20120608104143_create_notes.rb +9 -0
  42. data/spec/dummy/db/schema.rb +35 -0
  43. data/spec/dummy/script/rails +6 -0
  44. data/spec/dummy/spec/rails_helper.rb +48 -0
  45. data/spec/dummy/spec/spec_helper.rb +92 -0
  46. data/spec/dummy/vendor/assets/javascripts/jquery.fileupload.js +1604 -0
  47. data/spec/dummy/vendor/assets/javascripts/jquery.iframe-transport.js +227 -0
  48. data/spec/dummy/vendor/assets/javascripts/jquery.ui.widget.js +528 -0
  49. data/spec/factories.rb +17 -0
  50. data/spec/features/notes_spec.rb +97 -0
  51. data/spec/models/attachinary/file_spec.rb +44 -0
  52. data/spec/models/note_spec.rb +176 -0
  53. data/spec/spec_helper.rb +78 -0
  54. data/spec/support/A.gif +0 -0
  55. data/spec/support/A.txt +1 -0
  56. data/spec/support/B.gif +0 -0
  57. data/spec/support/C.gif +0 -0
  58. data/spec/support/request_helpers.rb +16 -0
  59. data/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/bigdecimal-3.1.9/gem_make.out +5 -5
  60. data/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/bigdecimal-3.1.9/mkmf.log +3 -3
  61. data/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/cgi-0.4.2/gem_make.out +5 -5
  62. data/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/date-3.4.1/gem_make.out +5 -5
  63. data/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/erb-4.0.4/gem_make.out +5 -5
  64. data/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/io-console-0.8.0/gem_make.out +5 -5
  65. data/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/json-2.12.0/gem_make.out +5 -5
  66. data/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/mini_racer-0.18.1/gem_make.out +5 -5
  67. data/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/nio4r-2.7.4/gem_make.out +5 -5
  68. data/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/psych-5.2.6/gem_make.out +5 -5
  69. data/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/puma-6.4.2/gem_make.out +5 -5
  70. data/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/racc-1.8.1/gem_make.out +5 -5
  71. data/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/stringio-3.1.7/gem_make.out +5 -5
  72. data/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/websocket-driver-0.7.7/gem_make.out +5 -5
  73. metadata +114 -160
  74. data/lib/tasks/ci.rake +0 -16
  75. data/vendor/cache/actioncable-7.2.2.1.gem +0 -0
  76. data/vendor/cache/actionmailbox-7.2.2.1.gem +0 -0
  77. data/vendor/cache/actionmailer-7.2.2.1.gem +0 -0
  78. data/vendor/cache/actionpack-7.2.2.1.gem +0 -0
  79. data/vendor/cache/actiontext-7.2.2.1.gem +0 -0
  80. data/vendor/cache/actionview-7.2.2.1.gem +0 -0
  81. data/vendor/cache/activejob-7.2.2.1.gem +0 -0
  82. data/vendor/cache/activemodel-7.2.2.1.gem +0 -0
  83. data/vendor/cache/activerecord-7.2.2.1.gem +0 -0
  84. data/vendor/cache/activestorage-7.2.2.1.gem +0 -0
  85. data/vendor/cache/activesupport-7.2.2.1.gem +0 -0
  86. data/vendor/cache/addressable-2.8.7.gem +0 -0
  87. data/vendor/cache/base64-0.2.0.gem +0 -0
  88. data/vendor/cache/benchmark-0.4.0.gem +0 -0
  89. data/vendor/cache/bigdecimal-3.1.9.gem +0 -0
  90. data/vendor/cache/builder-3.3.0.gem +0 -0
  91. data/vendor/cache/capybara-3.40.0.gem +0 -0
  92. data/vendor/cache/capybara-screenshot-1.0.26.gem +0 -0
  93. data/vendor/cache/cgi-0.4.2.gem +0 -0
  94. data/vendor/cache/childprocess-5.1.0.gem +0 -0
  95. data/vendor/cache/cloudinary-2.3.0.gem +0 -0
  96. data/vendor/cache/coderay-1.1.3.gem +0 -0
  97. data/vendor/cache/coffee-rails-5.0.0.gem +0 -0
  98. data/vendor/cache/coffee-script-2.4.1.gem +0 -0
  99. data/vendor/cache/coffee-script-source-1.12.2.gem +0 -0
  100. data/vendor/cache/concurrent-ruby-1.3.5.gem +0 -0
  101. data/vendor/cache/connection_pool-2.5.3.gem +0 -0
  102. data/vendor/cache/crass-1.0.6.gem +0 -0
  103. data/vendor/cache/database_cleaner-2.1.0.gem +0 -0
  104. data/vendor/cache/database_cleaner-active_record-2.2.1.gem +0 -0
  105. data/vendor/cache/database_cleaner-core-2.0.1.gem +0 -0
  106. data/vendor/cache/date-3.4.1.gem +0 -0
  107. data/vendor/cache/diff-lcs-1.6.2.gem +0 -0
  108. data/vendor/cache/dotenv-3.1.2.gem +0 -0
  109. data/vendor/cache/drb-2.2.3.gem +0 -0
  110. data/vendor/cache/erb-4.0.4.gem +0 -0
  111. data/vendor/cache/erubi-1.13.1.gem +0 -0
  112. data/vendor/cache/execjs-2.10.0.gem +0 -0
  113. data/vendor/cache/factory_bot-6.5.1.gem +0 -0
  114. data/vendor/cache/factory_bot_rails-6.4.4.gem +0 -0
  115. data/vendor/cache/faraday-2.13.1.gem +0 -0
  116. data/vendor/cache/faraday-follow_redirects-0.3.0.gem +0 -0
  117. data/vendor/cache/faraday-multipart-1.1.0.gem +0 -0
  118. data/vendor/cache/faraday-net_http-3.4.0.gem +0 -0
  119. data/vendor/cache/ffi-1.17.2-aarch64-linux-gnu.gem +0 -0
  120. data/vendor/cache/ffi-1.17.2-aarch64-linux-musl.gem +0 -0
  121. data/vendor/cache/ffi-1.17.2-arm-linux-gnu.gem +0 -0
  122. data/vendor/cache/ffi-1.17.2-arm-linux-musl.gem +0 -0
  123. data/vendor/cache/ffi-1.17.2-arm64-darwin.gem +0 -0
  124. data/vendor/cache/ffi-1.17.2-x86_64-darwin.gem +0 -0
  125. data/vendor/cache/ffi-1.17.2-x86_64-linux-gnu.gem +0 -0
  126. data/vendor/cache/ffi-1.17.2-x86_64-linux-musl.gem +0 -0
  127. data/vendor/cache/formatador-1.1.0.gem +0 -0
  128. data/vendor/cache/globalid-1.2.1.gem +0 -0
  129. data/vendor/cache/guard-2.19.1.gem +0 -0
  130. data/vendor/cache/guard-compat-1.2.1.gem +0 -0
  131. data/vendor/cache/guard-rspec-4.7.3.gem +0 -0
  132. data/vendor/cache/i18n-1.14.7.gem +0 -0
  133. data/vendor/cache/io-console-0.8.0.gem +0 -0
  134. data/vendor/cache/irb-1.15.2.gem +0 -0
  135. data/vendor/cache/jquery-rails-4.6.0.gem +0 -0
  136. data/vendor/cache/json-2.12.0.gem +0 -0
  137. data/vendor/cache/launchy-3.1.1.gem +0 -0
  138. data/vendor/cache/libv8-node-23.6.1.0-aarch64-linux.gem +0 -0
  139. data/vendor/cache/libv8-node-23.6.1.0-arm64-darwin.gem +0 -0
  140. data/vendor/cache/libv8-node-23.6.1.0-x86_64-darwin.gem +0 -0
  141. data/vendor/cache/libv8-node-23.6.1.0-x86_64-linux-musl.gem +0 -0
  142. data/vendor/cache/libv8-node-23.6.1.0-x86_64-linux.gem +0 -0
  143. data/vendor/cache/libv8-node-23.6.1.0.gem +0 -0
  144. data/vendor/cache/listen-3.0.8.gem +0 -0
  145. data/vendor/cache/logger-1.7.0.gem +0 -0
  146. data/vendor/cache/loofah-2.24.1.gem +0 -0
  147. data/vendor/cache/lumberjack-1.2.10.gem +0 -0
  148. data/vendor/cache/mail-2.8.1.gem +0 -0
  149. data/vendor/cache/marcel-1.0.4.gem +0 -0
  150. data/vendor/cache/matrix-0.4.2.gem +0 -0
  151. data/vendor/cache/method_source-1.1.0.gem +0 -0
  152. data/vendor/cache/mime-types-3.7.0.gem +0 -0
  153. data/vendor/cache/mime-types-data-3.2025.0520.gem +0 -0
  154. data/vendor/cache/mini_mime-1.1.5.gem +0 -0
  155. data/vendor/cache/mini_racer-0.18.1.gem +0 -0
  156. data/vendor/cache/minitest-5.25.5.gem +0 -0
  157. data/vendor/cache/multipart-post-2.4.1.gem +0 -0
  158. data/vendor/cache/nenv-0.3.0.gem +0 -0
  159. data/vendor/cache/net-http-0.6.0.gem +0 -0
  160. data/vendor/cache/net-imap-0.5.8.gem +0 -0
  161. data/vendor/cache/net-pop-0.1.2.gem +0 -0
  162. data/vendor/cache/net-protocol-0.2.2.gem +0 -0
  163. data/vendor/cache/net-smtp-0.5.1.gem +0 -0
  164. data/vendor/cache/nio4r-2.7.4.gem +0 -0
  165. data/vendor/cache/nokogiri-1.18.8-aarch64-linux-gnu.gem +0 -0
  166. data/vendor/cache/nokogiri-1.18.8-aarch64-linux-musl.gem +0 -0
  167. data/vendor/cache/nokogiri-1.18.8-arm-linux-gnu.gem +0 -0
  168. data/vendor/cache/nokogiri-1.18.8-arm-linux-musl.gem +0 -0
  169. data/vendor/cache/nokogiri-1.18.8-arm64-darwin.gem +0 -0
  170. data/vendor/cache/nokogiri-1.18.8-x86_64-darwin.gem +0 -0
  171. data/vendor/cache/nokogiri-1.18.8-x86_64-linux-gnu.gem +0 -0
  172. data/vendor/cache/nokogiri-1.18.8-x86_64-linux-musl.gem +0 -0
  173. data/vendor/cache/notiffany-0.1.3.gem +0 -0
  174. data/vendor/cache/ostruct-0.6.1.gem +0 -0
  175. data/vendor/cache/pp-0.6.2.gem +0 -0
  176. data/vendor/cache/prettyprint-0.2.0.gem +0 -0
  177. data/vendor/cache/pry-0.15.2.gem +0 -0
  178. data/vendor/cache/psych-5.2.6.gem +0 -0
  179. data/vendor/cache/public_suffix-6.0.2.gem +0 -0
  180. data/vendor/cache/puma-6.4.2.gem +0 -0
  181. data/vendor/cache/racc-1.8.1.gem +0 -0
  182. data/vendor/cache/rack-3.1.15.gem +0 -0
  183. data/vendor/cache/rack-session-2.1.1.gem +0 -0
  184. data/vendor/cache/rack-test-2.2.0.gem +0 -0
  185. data/vendor/cache/rackup-2.2.1.gem +0 -0
  186. data/vendor/cache/rails-7.2.2.1.gem +0 -0
  187. data/vendor/cache/rails-dom-testing-2.3.0.gem +0 -0
  188. data/vendor/cache/rails-html-sanitizer-1.6.2.gem +0 -0
  189. data/vendor/cache/railties-7.2.2.1.gem +0 -0
  190. data/vendor/cache/rake-13.2.1.gem +0 -0
  191. data/vendor/cache/rb-fsevent-0.9.8.gem +0 -0
  192. data/vendor/cache/rb-inotify-0.11.1.gem +0 -0
  193. data/vendor/cache/rdoc-6.14.0.gem +0 -0
  194. data/vendor/cache/regexp_parser-2.10.0.gem +0 -0
  195. data/vendor/cache/reline-0.6.1.gem +0 -0
  196. data/vendor/cache/rexml-3.4.1.gem +0 -0
  197. data/vendor/cache/rspec-3.13.0.gem +0 -0
  198. data/vendor/cache/rspec-core-3.13.3.gem +0 -0
  199. data/vendor/cache/rspec-expectations-3.13.4.gem +0 -0
  200. data/vendor/cache/rspec-mocks-3.13.4.gem +0 -0
  201. data/vendor/cache/rspec-rails-8.0.0.gem +0 -0
  202. data/vendor/cache/rspec-support-3.13.3.gem +0 -0
  203. data/vendor/cache/rspec_junit_formatter-0.6.0.gem +0 -0
  204. data/vendor/cache/rubyzip-2.4.1.gem +0 -0
  205. data/vendor/cache/securerandom-0.4.1.gem +0 -0
  206. data/vendor/cache/selenium-webdriver-4.32.0.gem +0 -0
  207. data/vendor/cache/shellany-0.0.1.gem +0 -0
  208. data/vendor/cache/simple_form-5.3.1.gem +0 -0
  209. data/vendor/cache/sprockets-4.2.1.gem +0 -0
  210. data/vendor/cache/sprockets-rails-3.5.2.gem +0 -0
  211. data/vendor/cache/sqlite3-2.6.0-aarch64-linux-gnu.gem +0 -0
  212. data/vendor/cache/sqlite3-2.6.0-aarch64-linux-musl.gem +0 -0
  213. data/vendor/cache/sqlite3-2.6.0-arm-linux-gnu.gem +0 -0
  214. data/vendor/cache/sqlite3-2.6.0-arm-linux-musl.gem +0 -0
  215. data/vendor/cache/sqlite3-2.6.0-arm64-darwin.gem +0 -0
  216. data/vendor/cache/sqlite3-2.6.0-x86_64-darwin.gem +0 -0
  217. data/vendor/cache/sqlite3-2.6.0-x86_64-linux-gnu.gem +0 -0
  218. data/vendor/cache/sqlite3-2.6.0-x86_64-linux-musl.gem +0 -0
  219. data/vendor/cache/stringio-3.1.7.gem +0 -0
  220. data/vendor/cache/thor-1.3.2.gem +0 -0
  221. data/vendor/cache/timeout-0.4.3.gem +0 -0
  222. data/vendor/cache/tzinfo-2.0.6.gem +0 -0
  223. data/vendor/cache/uri-1.0.3.gem +0 -0
  224. data/vendor/cache/useragent-0.16.11.gem +0 -0
  225. data/vendor/cache/valid_attribute-2.0.0.gem +0 -0
  226. data/vendor/cache/websocket-1.2.11.gem +0 -0
  227. data/vendor/cache/websocket-driver-0.7.7.gem +0 -0
  228. data/vendor/cache/websocket-extensions-0.1.5.gem +0 -0
  229. data/vendor/cache/xpath-3.2.0.gem +0 -0
  230. data/vendor/cache/zeitwerk-2.6.18.gem +0 -0
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: c312f49b8d8dc982490bb901e64662c620c58bec9c5abe2ba7eabbd93a349376
4
- data.tar.gz: 6f3400be3dbd3b7384b38bd8b978238b493a6011a340e6c9e464180f34670171
3
+ metadata.gz: f54ce15256a61e2a4d2610aaf5c92ceb6bd9e144d53969df65d649f5324514d0
4
+ data.tar.gz: a80d793d2fbf026953803810d9e1537f4fbcced932b2bc018be5799f0a9ec6d2
5
5
  SHA512:
6
- metadata.gz: 9eef18d397b01a072fc1dddfc9c962755b2b3764711f4603ceaa8ea6bb09a66a93bc57dbff6b8e39260e8903dba4588d708aee86635e2726903166a757a94903
7
- data.tar.gz: 0a1db58ef56c18ed8eb9d54aec00fea98743cfdfc416d0c547d1593a94c3f54b9cc877e17fa725703c33cd9481abb30b34c476d4defaac0c082de14c0ea743bd
6
+ metadata.gz: 0adfbb927168f099ad17f7bb521c1a5ae3788d750f424869fe6f5cdf1d19ec96cb06fff1327b0a984fc88a29f752d4fcab221e14914299b2d04d83ec848be9dd
7
+ data.tar.gz: 3a06d3f515e812dc0a97bc64064a3f74cd47d6859e0d4f0da3163f8b72123d0e5c93a3e45f522ec8bca7cde910375eb47eea8c06c8d9ba7d7d9df0c73c4f76bd
data/CHANGELOG.md ADDED
@@ -0,0 +1,71 @@
1
+ = Version 1.3.1.pre2
2
+ * Remove support for Mongoid. Now only supports active_record.
3
+ * Remove $.attachinary.Templating - use another templating system or just use javascript.
4
+ See: https://github.com/doximity/attachinary/pull/66/files
5
+
6
+ = Version 1.3.0
7
+ * Added support for Rails 4 (thanks @rochers)
8
+ * Use resource type when building cloudinary urls
9
+ * Make deletion of remote resources configurable
10
+ * Add some optional convenience configurations to attachinary.js
11
+
12
+ = Version 1.2.7 (wip)
13
+ * Implemented raw file type handling (roomthirteen)
14
+
15
+ = Version 1.2.6
16
+ * Added "attachinary:fileadded" and "attachinary:fileremoved" js events
17
+
18
+ = Version 1.2.5
19
+ * BUG FIX: Default jQuery plugin options mutation
20
+
21
+ = Version 1.2.4
22
+ * Ability to specify custom dropzone via config (drewmca)
23
+ * BUG FIX: Bad browsers (IE) can put '[null]' into the attachinary hash (Yan Pritzker)
24
+ * BUG FIX: Ensuring tags are unique (Yan Pritzker)
25
+
26
+ = Version 1.2.3
27
+ * Fixed bug with multiple submit buttons in one form (Benjamin Seibert)
28
+ * IE content-type fix (Yan Pritzker)
29
+
30
+ = Version 1.2.2
31
+ * Ability to cleanup unused files:
32
+ files are automatically tagged with `attachinary_tmp` during upload, and
33
+ untagged when saved in local database.
34
+
35
+ = Version 1.2.1
36
+ * bugfix: already uploaded image gets deleted from cloudinary when updating model [#29]
37
+
38
+ = Version 1.2.0
39
+ * Drag and drop support (on supported browsers)
40
+ * Selecting multiple files (on supported browsers)
41
+ * Upload progress indicator (prepended on submit button)
42
+ * Rake task for fetching assets (`rake attachinary:fetch_fileupload`)
43
+ * Ability to assing image urls (e.g. `user.avatar_url = 'http://..'`)
44
+ * Ability to assign IO objects (e.g. `user.avatar = File.open(...)`)
45
+ * No-JS support
46
+
47
+ = Version 1.1.0
48
+ * BUG FIX: disabling submit key (thanks @drewmca)
49
+ * BUG FIX: models attachments are now removed from cloudinary
50
+ after model is destoyed [mongoid]
51
+ * ability to use form builder (`f.attachinary_file_field :avatar`)
52
+ * BUG FIX: proper field names and ids are generated [simple_form]
53
+
54
+ = Version 1.0.1
55
+ * bug fix release
56
+
57
+ = Version 1.0.0
58
+ * Support for Mongoid added. You need to specify which ORM you want
59
+ to use by explicitly requiring it.
60
+ * No backward compatibility.
61
+ * Changed database schema (from N-N to 1-N). Assoc preloading made easier.
62
+
63
+ = Version 0.0.8
64
+ * no explicit require of cloudinary assets
65
+
66
+ = Version 0.0.7
67
+ * BUG FIX: removing single attachment
68
+
69
+ = Version 0.0.6
70
+ * attachment lazy loading
71
+ * removed copies of cloudinary javascript files
@@ -1,3 +1,3 @@
1
1
  module Attachinary
2
- VERSION = "1.3.1.pre"
2
+ VERSION = "1.3.1.pre2"
3
3
  end
@@ -0,0 +1,20 @@
1
+ source 'https://rubygems.org'
2
+
3
+ # Bundle edge Rails instead: gem 'rails', github: 'rails/rails'
4
+ gem 'rails', '~> 7.2'
5
+ # Use sqlite3 as the database for Active Record
6
+ gem 'sqlite3'
7
+ # Use CoffeeScript for .coffee assets and views
8
+ gem 'coffee-rails', require: false
9
+ # Use jquery as the JavaScript library
10
+ gem 'jquery-rails'
11
+ # Turbolinks makes following links in your web application faster. Read more: https://github.com/rails/turbolinks
12
+ gem 'jbuilder'
13
+
14
+ gem 'sprockets-rails'
15
+
16
+ gem 'mini_racer'
17
+
18
+ gem 'cloudinary'
19
+ gem 'attachinary-dox', :path => '../..'
20
+ gem 'simple_form'
@@ -0,0 +1,267 @@
1
+ PATH
2
+ remote: ../..
3
+ specs:
4
+ attachinary-dox (1.3.1)
5
+ cloudinary (>= 1.1, < 3.0)
6
+ coffee-script
7
+ mime-types
8
+ rails (>= 7.0)
9
+
10
+ GEM
11
+ remote: https://rubygems.org/
12
+ specs:
13
+ actioncable (7.2.2.1)
14
+ actionpack (= 7.2.2.1)
15
+ activesupport (= 7.2.2.1)
16
+ nio4r (~> 2.0)
17
+ websocket-driver (>= 0.6.1)
18
+ zeitwerk (~> 2.6)
19
+ actionmailbox (7.2.2.1)
20
+ actionpack (= 7.2.2.1)
21
+ activejob (= 7.2.2.1)
22
+ activerecord (= 7.2.2.1)
23
+ activestorage (= 7.2.2.1)
24
+ activesupport (= 7.2.2.1)
25
+ mail (>= 2.8.0)
26
+ actionmailer (7.2.2.1)
27
+ actionpack (= 7.2.2.1)
28
+ actionview (= 7.2.2.1)
29
+ activejob (= 7.2.2.1)
30
+ activesupport (= 7.2.2.1)
31
+ mail (>= 2.8.0)
32
+ rails-dom-testing (~> 2.2)
33
+ actionpack (7.2.2.1)
34
+ actionview (= 7.2.2.1)
35
+ activesupport (= 7.2.2.1)
36
+ nokogiri (>= 1.8.5)
37
+ racc
38
+ rack (>= 2.2.4, < 3.2)
39
+ rack-session (>= 1.0.1)
40
+ rack-test (>= 0.6.3)
41
+ rails-dom-testing (~> 2.2)
42
+ rails-html-sanitizer (~> 1.6)
43
+ useragent (~> 0.16)
44
+ actiontext (7.2.2.1)
45
+ actionpack (= 7.2.2.1)
46
+ activerecord (= 7.2.2.1)
47
+ activestorage (= 7.2.2.1)
48
+ activesupport (= 7.2.2.1)
49
+ globalid (>= 0.6.0)
50
+ nokogiri (>= 1.8.5)
51
+ actionview (7.2.2.1)
52
+ activesupport (= 7.2.2.1)
53
+ builder (~> 3.1)
54
+ erubi (~> 1.11)
55
+ rails-dom-testing (~> 2.2)
56
+ rails-html-sanitizer (~> 1.6)
57
+ activejob (7.2.2.1)
58
+ activesupport (= 7.2.2.1)
59
+ globalid (>= 0.3.6)
60
+ activemodel (7.2.2.1)
61
+ activesupport (= 7.2.2.1)
62
+ activerecord (7.2.2.1)
63
+ activemodel (= 7.2.2.1)
64
+ activesupport (= 7.2.2.1)
65
+ timeout (>= 0.4.0)
66
+ activestorage (7.2.2.1)
67
+ actionpack (= 7.2.2.1)
68
+ activejob (= 7.2.2.1)
69
+ activerecord (= 7.2.2.1)
70
+ activesupport (= 7.2.2.1)
71
+ marcel (~> 1.0)
72
+ activesupport (7.2.2.1)
73
+ base64
74
+ benchmark (>= 0.3)
75
+ bigdecimal
76
+ concurrent-ruby (~> 1.0, >= 1.3.1)
77
+ connection_pool (>= 2.2.5)
78
+ drb
79
+ i18n (>= 1.6, < 2)
80
+ logger (>= 1.4.2)
81
+ minitest (>= 5.1)
82
+ securerandom (>= 0.3)
83
+ tzinfo (~> 2.0, >= 2.0.5)
84
+ base64 (0.2.0)
85
+ benchmark (0.4.0)
86
+ bigdecimal (3.1.9)
87
+ builder (3.3.0)
88
+ cgi (0.4.2)
89
+ cloudinary (2.3.0)
90
+ faraday (>= 2.0.1, < 3.0.0)
91
+ faraday-follow_redirects (~> 0.3.0)
92
+ faraday-multipart (~> 1.0, >= 1.0.4)
93
+ ostruct
94
+ coffee-rails (5.0.0)
95
+ coffee-script (>= 2.2.0)
96
+ railties (>= 5.2.0)
97
+ coffee-script (2.4.1)
98
+ coffee-script-source
99
+ execjs
100
+ coffee-script-source (1.12.2)
101
+ concurrent-ruby (1.3.5)
102
+ connection_pool (2.5.3)
103
+ crass (1.0.6)
104
+ date (3.4.1)
105
+ drb (2.2.3)
106
+ erb (4.0.4)
107
+ cgi (>= 0.3.3)
108
+ erubi (1.13.1)
109
+ execjs (2.10.0)
110
+ faraday (2.13.1)
111
+ faraday-net_http (>= 2.0, < 3.5)
112
+ json
113
+ logger
114
+ faraday-follow_redirects (0.3.0)
115
+ faraday (>= 1, < 3)
116
+ faraday-multipart (1.1.0)
117
+ multipart-post (~> 2.0)
118
+ faraday-net_http (3.4.0)
119
+ net-http (>= 0.5.0)
120
+ globalid (1.2.1)
121
+ activesupport (>= 6.1)
122
+ i18n (1.14.7)
123
+ concurrent-ruby (~> 1.0)
124
+ io-console (0.8.0)
125
+ irb (1.15.2)
126
+ pp (>= 0.6.0)
127
+ rdoc (>= 4.0.0)
128
+ reline (>= 0.4.2)
129
+ jbuilder (2.13.0)
130
+ actionview (>= 5.0.0)
131
+ activesupport (>= 5.0.0)
132
+ jquery-rails (4.6.0)
133
+ rails-dom-testing (>= 1, < 3)
134
+ railties (>= 4.2.0)
135
+ thor (>= 0.14, < 2.0)
136
+ json (2.12.0)
137
+ libv8-node (23.6.1.0)
138
+ logger (1.7.0)
139
+ loofah (2.24.1)
140
+ crass (~> 1.0.2)
141
+ nokogiri (>= 1.12.0)
142
+ mail (2.8.1)
143
+ mini_mime (>= 0.1.1)
144
+ net-imap
145
+ net-pop
146
+ net-smtp
147
+ marcel (1.0.4)
148
+ mime-types (3.7.0)
149
+ logger
150
+ mime-types-data (~> 3.2025, >= 3.2025.0507)
151
+ mime-types-data (3.2025.0520)
152
+ mini_mime (1.1.5)
153
+ mini_portile2 (2.8.9)
154
+ mini_racer (0.18.1)
155
+ libv8-node (~> 23.6.1.0)
156
+ minitest (5.25.5)
157
+ multipart-post (2.4.1)
158
+ net-http (0.6.0)
159
+ uri
160
+ net-imap (0.5.8)
161
+ date
162
+ net-protocol
163
+ net-pop (0.1.2)
164
+ net-protocol
165
+ net-protocol (0.2.2)
166
+ timeout
167
+ net-smtp (0.5.1)
168
+ net-protocol
169
+ nio4r (2.7.4)
170
+ nokogiri (1.18.8)
171
+ mini_portile2 (~> 2.8.2)
172
+ racc (~> 1.4)
173
+ ostruct (0.6.1)
174
+ pp (0.6.2)
175
+ prettyprint
176
+ prettyprint (0.2.0)
177
+ psych (5.2.6)
178
+ date
179
+ stringio
180
+ racc (1.8.1)
181
+ rack (3.1.15)
182
+ rack-session (2.1.1)
183
+ base64 (>= 0.1.0)
184
+ rack (>= 3.0.0)
185
+ rack-test (2.2.0)
186
+ rack (>= 1.3)
187
+ rackup (2.2.1)
188
+ rack (>= 3)
189
+ rails (7.2.2.1)
190
+ actioncable (= 7.2.2.1)
191
+ actionmailbox (= 7.2.2.1)
192
+ actionmailer (= 7.2.2.1)
193
+ actionpack (= 7.2.2.1)
194
+ actiontext (= 7.2.2.1)
195
+ actionview (= 7.2.2.1)
196
+ activejob (= 7.2.2.1)
197
+ activemodel (= 7.2.2.1)
198
+ activerecord (= 7.2.2.1)
199
+ activestorage (= 7.2.2.1)
200
+ activesupport (= 7.2.2.1)
201
+ bundler (>= 1.15.0)
202
+ railties (= 7.2.2.1)
203
+ rails-dom-testing (2.3.0)
204
+ activesupport (>= 5.0.0)
205
+ minitest
206
+ nokogiri (>= 1.6)
207
+ rails-html-sanitizer (1.6.2)
208
+ loofah (~> 2.21)
209
+ nokogiri (>= 1.15.7, != 1.16.7, != 1.16.6, != 1.16.5, != 1.16.4, != 1.16.3, != 1.16.2, != 1.16.1, != 1.16.0.rc1, != 1.16.0)
210
+ railties (7.2.2.1)
211
+ actionpack (= 7.2.2.1)
212
+ activesupport (= 7.2.2.1)
213
+ irb (~> 1.13)
214
+ rackup (>= 1.0.0)
215
+ rake (>= 12.2)
216
+ thor (~> 1.0, >= 1.2.2)
217
+ zeitwerk (~> 2.6)
218
+ rake (13.2.1)
219
+ rdoc (6.14.0)
220
+ erb
221
+ psych (>= 4.0.0)
222
+ reline (0.6.1)
223
+ io-console (~> 0.5)
224
+ securerandom (0.4.1)
225
+ simple_form (5.3.1)
226
+ actionpack (>= 5.2)
227
+ activemodel (>= 5.2)
228
+ sprockets (4.2.2)
229
+ concurrent-ruby (~> 1.0)
230
+ logger
231
+ rack (>= 2.2.4, < 4)
232
+ sprockets-rails (3.5.2)
233
+ actionpack (>= 6.1)
234
+ activesupport (>= 6.1)
235
+ sprockets (>= 3.0.0)
236
+ sqlite3 (2.6.0)
237
+ mini_portile2 (~> 2.8.0)
238
+ stringio (3.1.7)
239
+ thor (1.3.2)
240
+ timeout (0.4.3)
241
+ tzinfo (2.0.6)
242
+ concurrent-ruby (~> 1.0)
243
+ uri (1.0.3)
244
+ useragent (0.16.11)
245
+ websocket-driver (0.7.7)
246
+ base64
247
+ websocket-extensions (>= 0.1.0)
248
+ websocket-extensions (0.1.5)
249
+ zeitwerk (2.6.18)
250
+
251
+ PLATFORMS
252
+ ruby
253
+
254
+ DEPENDENCIES
255
+ attachinary-dox!
256
+ cloudinary
257
+ coffee-rails
258
+ jbuilder
259
+ jquery-rails
260
+ mini_racer
261
+ rails (~> 7.2)
262
+ simple_form
263
+ sprockets-rails
264
+ sqlite3
265
+
266
+ BUNDLED WITH
267
+ 2.6.2
@@ -0,0 +1,7 @@
1
+ #!/usr/bin/env rake
2
+ # Add your own tasks in files placed in lib/tasks ending in .rake,
3
+ # for example lib/tasks/capistrano.rake, and they will automatically be available to Rake.
4
+
5
+ require File.expand_path('../config/application', __FILE__)
6
+
7
+ Dummy::Application.load_tasks
@@ -0,0 +1,12 @@
1
+ class Note < ActiveRecord::Base
2
+
3
+ has_attachment :photo, accept: [:jpg, :png, :gif]
4
+ has_attachments :images, accept: [:jpg, :png, :gif], maximum: 3
5
+
6
+ validates :body, presence: true, length: { minimum: 4, maximum: 128 }
7
+ validates :photo, presence: true
8
+
9
+ attr_accessible :body if Rails::VERSION::MAJOR == 3
10
+
11
+
12
+ end
@@ -0,0 +1,2 @@
1
+ //= link_directory ../javascripts .js
2
+ //= link_directory ../stylesheets .css
@@ -0,0 +1,28 @@
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
+ // the 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_ujs
15
+ //=
16
+ //= require jquery.ui.widget
17
+ //= require jquery.iframe-transport
18
+ //= require jquery.fileupload
19
+ //= require cloudinary/jquery.cloudinary
20
+ //= require attachinary
21
+ //=
22
+ //= require_tree .
23
+
24
+ jQuery(function() {
25
+
26
+ $('.attachinary-input').attachinary();
27
+
28
+ })
@@ -0,0 +1,21 @@
1
+ /*
2
+ * This is a manifest file that'll be compiled into application.css, which will include all the files
3
+ * listed below.
4
+ *
5
+ * Any CSS and SCSS file within this directory, lib/assets/stylesheets, vendor/assets/stylesheets,
6
+ * or vendor/assets/stylesheets of plugins, if any, can be referenced here using a relative path.
7
+ *
8
+ * You're free to add application-wide styles to this file and they'll appear at the top of the
9
+ * compiled file, but it's generally better to create a new file per style scope.
10
+ *
11
+ *= require_self
12
+ *= require_tree .
13
+ */
14
+
15
+ form.uploading {
16
+ background-color: #ccc;
17
+ }
18
+
19
+ input.uploading {
20
+ background-color: #999;
21
+ }
@@ -0,0 +1,3 @@
1
+ class ApplicationController < ActionController::Base
2
+ protect_from_forgery
3
+ end
@@ -0,0 +1,56 @@
1
+ class NotesController < ApplicationController
2
+
3
+ def index
4
+ if Rails::VERSION::MAJOR == 3
5
+ @notes = Note.all
6
+ else
7
+ @notes = Note.all.to_a
8
+ end
9
+ end
10
+
11
+ def new
12
+ @note = Note.new
13
+ end
14
+
15
+ def create
16
+ @note = Note.new note_params
17
+ if @note.save
18
+ redirect_to notes_url
19
+ else
20
+ render 'new'
21
+ end
22
+ end
23
+
24
+ def edit
25
+ @note = Note.find params[:id]
26
+ end
27
+
28
+ def update
29
+ @note = Note.find params[:id]
30
+ if @note.update_attributes(note_params)
31
+ redirect_to notes_url
32
+ else
33
+ render 'edit'
34
+ end
35
+ end
36
+
37
+ def destroy
38
+ @note = Note.find params[:id]
39
+ @note.destroy
40
+ redirect_to :back
41
+ end
42
+
43
+ private
44
+
45
+ def note_params
46
+ if Rails::VERSION::MAJOR == 3
47
+ params[:note].slice(:body, :photo)
48
+ else
49
+ params.require(:note).permit(
50
+ :body,
51
+ :photo,
52
+ )
53
+ end
54
+ end
55
+
56
+ end
@@ -0,0 +1,15 @@
1
+ <!DOCTYPE html>
2
+ <html>
3
+ <head>
4
+ <title>Dummy</title>
5
+ <%= stylesheet_link_tag "application", :media => "all" %>
6
+ <%= javascript_include_tag "application" %>
7
+ <%= cloudinary_js_config %>
8
+ <%= csrf_meta_tags %>
9
+ </head>
10
+ <body>
11
+
12
+ <%= yield %>
13
+
14
+ </body>
15
+ </html>
@@ -0,0 +1,28 @@
1
+ <%= form_for note, html: { multipart: true } do |f| %>
2
+
3
+ <%= hidden_field_tag 'kind', params[:kind] %>
4
+
5
+ <%= f.label 'Body' %>
6
+ <br />
7
+
8
+ <%= f.text_field :body %>
9
+ <div><%= note.errors[:body].first %></div>
10
+ <br />
11
+
12
+ <div class="photo">
13
+ <%= f.attachinary_file_field :photo %>
14
+ <div><%= note.errors[:photo].first %></div>
15
+ </div>
16
+
17
+ <br />
18
+
19
+ <div class="images">
20
+ <%= f.attachinary_file_field :images %>
21
+ <div><%= note.errors[:image].first %></div>
22
+ </div>
23
+
24
+ <br />
25
+ <br />
26
+
27
+ <%= f.submit %>
28
+ <% end %>
@@ -0,0 +1,17 @@
1
+ <%= simple_form_for note, html: { novalidate: true, multipart: true } do |f| %>
2
+
3
+ <%= hidden_field_tag 'kind', params[:kind] %>
4
+
5
+ <%= f.input :body, as: :string %>
6
+
7
+ <div class="photo">
8
+ <%= f.input :photo, as: :file %>
9
+ </div>
10
+
11
+ <div class="images">
12
+ <%= f.input :images, as: :file, input_html: { multiple: true } %>
13
+ </div>
14
+
15
+ <%= f.submit %>
16
+
17
+ <% end %>
@@ -0,0 +1,28 @@
1
+ <%= form_for note, html: { multipart: true } do |f| %>
2
+
3
+ <%= hidden_field_tag 'kind', params[:kind] %>
4
+
5
+ <%= f.label 'Body' %>
6
+ <br />
7
+
8
+ <%= f.text_field :body %>
9
+ <div><%= note.errors[:body].first %></div>
10
+ <br />
11
+
12
+ <div class="photo">
13
+ <%= attachinary_file_field_tag 'note[photo]', note, :photo %>
14
+ <div><%= note.errors[:photo].first %></div>
15
+ </div>
16
+
17
+ <br />
18
+
19
+ <div class="images">
20
+ <%= attachinary_file_field_tag 'note[images][]', note, :images %>
21
+ <div><%= note.errors[:image].first %></div>
22
+ </div>
23
+
24
+ <br />
25
+ <br />
26
+
27
+ <%= f.submit %>
28
+ <% end %>
@@ -0,0 +1,17 @@
1
+ <%= simple_form_for note, html: { novalidate: true, multipart: true } do |f| %>
2
+
3
+ <%= hidden_field_tag 'kind', params[:kind] %>
4
+
5
+ <%= f.input :body, as: :string %>
6
+
7
+ <div class="photo">
8
+ <%= f.input :photo, as: :attachinary %>
9
+ </div>
10
+
11
+ <div class="images">
12
+ <%= f.input :images, as: :attachinary %>
13
+ </div>
14
+
15
+ <%= f.submit %>
16
+
17
+ <% end %>
@@ -0,0 +1,15 @@
1
+ <div style="float:left; width: 150px;">
2
+ <% if note.photo? %>
3
+ <%= cl_image_tag note.photo.path,
4
+ size: '120x120', crop: :fill, html_width: nil, html_height: nil %> <br />
5
+
6
+ <% note.images.each do |image| %>
7
+ <%= cl_image_tag image.path, size: '37x37', crop: :fill, html_width: nil, html_height: nil %>
8
+ <% end %>
9
+ <% end %><br />
10
+ <%= note.body %><br />
11
+ <%= link_to 'edit (raw)', edit_note_path(note, kind: 'raw') %><br />
12
+ <%= link_to 'edit (builder)', edit_note_path(note, kind: 'builder') %><br />
13
+ <%= link_to 'edit (simple form)', edit_note_path(note, kind: 'simple_form') %><br />
14
+ <%= link_to 'delete', note_path(note), method: :delete %>
15
+ </div>
@@ -0,0 +1 @@
1
+ <%= render "form_#{params[:kind]}", note: @note %>
@@ -0,0 +1,12 @@
1
+ <h1>Notes</h1>
2
+
3
+ <div style="overflow:auto">
4
+ <%= render @notes %>
5
+ </div>
6
+
7
+ <br />
8
+ <br />
9
+ <%= link_to 'create (raw)', new_note_path(kind: 'raw') %><br />
10
+ <%= link_to 'create (builder)', new_note_path(kind: 'builder') %><br />
11
+ <%= link_to 'create (simple form)', new_note_path(kind: 'simple_form') %><br />
12
+ <%= link_to 'create (no javascript)', new_note_path(kind: 'nojs') %><br />
@@ -0,0 +1 @@
1
+ <%= render "form_#{params[:kind]}", note: @note %>