attached 1.0.4 → 1.0.5
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.
- checksums.yaml +4 -4
- data/README.rdoc +6 -5
- data/Rakefile +0 -3
- data/lib/attached.rb +23 -151
- data/lib/attached/attachment.rb +8 -60
- data/lib/attached/attatcher.rb +165 -0
- data/lib/attached/definition.rb +16 -0
- data/lib/attached/job.rb +0 -1
- data/lib/attached/processor.rb +2 -6
- data/lib/attached/processor/audio.rb +0 -19
- data/lib/attached/processor/base.rb +0 -5
- data/lib/attached/processor/error.rb +1 -1
- data/lib/attached/processor/image.rb +0 -31
- data/lib/attached/railtie.rb +4 -1
- data/lib/attached/storage.rb +5 -9
- data/lib/attached/storage/aws.rb +6 -17
- data/lib/attached/storage/base.rb +1 -10
- data/lib/attached/storage/error.rb +1 -1
- data/lib/attached/storage/fog.rb +2 -26
- data/lib/attached/storage/google.rb +5 -18
- data/lib/attached/storage/local.rb +1 -13
- data/lib/attached/storage/rackspace.rb +7 -18
- data/lib/attached/version.rb +1 -1
- data/test/dummy/app/controllers/application_controller.rb +1 -1
- data/test/dummy/app/models/audio.rb +7 -7
- data/test/dummy/app/models/image.rb +8 -8
- data/test/dummy/app/views/audios/_form.html.haml +5 -5
- data/test/dummy/app/views/audios/edit.html.haml +1 -1
- data/test/dummy/app/views/audios/index.html.haml +8 -8
- data/test/dummy/app/views/audios/new.html.haml +1 -1
- data/test/dummy/app/views/audios/show.html.haml +2 -2
- data/test/dummy/app/views/images/_form.html.haml +5 -5
- data/test/dummy/app/views/images/edit.html.haml +1 -1
- data/test/dummy/app/views/images/index.html.haml +8 -8
- data/test/dummy/app/views/images/new.html.haml +1 -1
- data/test/dummy/app/views/images/show.html.haml +3 -3
- data/test/dummy/app/views/layouts/application.html.haml +2 -2
- data/test/dummy/app/views/main/index.html.haml +2 -2
- data/test/dummy/app/views/shared/_error.html.haml +1 -1
- data/test/dummy/config/aws.yml +0 -2
- data/test/dummy/config/initializers/other.rb +2 -2
- data/test/dummy/config/routes.rb +1 -1
- data/test/dummy/db/schema.rb +7 -7
- data/test/dummy/db/test.sqlite3 +0 -0
- data/test/dummy/log/test.log +5487 -0
- data/test/dummy/public/system/audios/files/full/053225f9-c6d3-4472-8228-2cc701fc1a41.aac +0 -0
- data/test/dummy/public/system/audios/files/full/0b55eae0-52a0-4af0-a24e-2de3fcabfbf4.aac +0 -0
- data/test/dummy/public/system/audios/files/full/16a35230-6ae5-47e4-9e09-2ecdbd31cd58.aac +0 -0
- data/test/dummy/public/system/audios/files/full/344825e7-6315-47b6-986b-c731a6d08cd5.aac +0 -0
- data/test/dummy/public/system/audios/files/full/398e2cc8-f19d-4250-a528-a1fe146a35b3.aac +0 -0
- data/test/dummy/public/system/audios/files/full/4036c6ad-3ec2-4714-b453-357b0e708f3c.aac +0 -0
- data/test/dummy/public/system/audios/files/full/41c23f05-15fe-46fe-b6e4-0f3d95c4f3ab.aac +0 -0
- data/test/dummy/public/system/audios/files/full/41d57894-31d9-4b68-81a5-008e804b66a0.aac +0 -0
- data/test/dummy/public/system/audios/files/full/4c81067f-15e4-4152-a2c4-92b0f29e05f3.aac +0 -0
- data/test/dummy/public/system/audios/files/full/560a41f2-83cd-4734-a741-5da103917a9b.aac +0 -0
- data/test/dummy/public/system/audios/files/full/6569067f-276a-4a15-8376-57709201b209.aac +0 -0
- data/test/dummy/public/system/audios/files/full/68a0b6a2-d41a-4b09-970d-397860563669.aac +0 -0
- data/test/dummy/public/system/audios/files/full/6f91f04a-4894-4b16-87b6-ccfc686ba659.aac +0 -0
- data/test/dummy/public/system/audios/files/full/7aad29c4-7736-4492-9455-1a6ff333d807.aac +0 -0
- data/test/dummy/public/system/audios/files/full/7f4b261e-c56a-41cb-a0e0-ad7888116642.aac +0 -0
- data/test/dummy/public/system/audios/files/full/828531f1-a38d-4406-b147-1a01cff06a67.aac +0 -0
- data/test/dummy/public/system/audios/files/full/86bf96b6-e784-40e0-9edd-a47eb09059a0.aac +0 -0
- data/test/dummy/public/system/audios/files/full/90a9e337-b07b-441d-9c49-0090a7e6b9c0.aac +0 -0
- data/test/dummy/public/system/audios/files/full/90fc1944-196e-4a47-945e-4344ef62eb8c.aac +0 -0
- data/test/dummy/public/system/audios/files/full/975ce729-487c-4e6d-bce5-9523dbfa952c.aac +0 -0
- data/test/dummy/public/system/audios/files/full/9a096e89-4ce2-4ad9-9ff6-503f7200a8c8.aac +0 -0
- data/test/dummy/public/system/audios/files/full/9a186341-4c3b-4b30-b605-f234eb371d4c.aac +0 -0
- data/test/dummy/public/system/audios/files/full/a9034b45-c9c6-4387-b611-ef0c64c641e6.aac +0 -0
- data/test/dummy/public/system/audios/files/full/a96d0f64-2c94-4378-980e-d12e3492d412.aac +0 -0
- data/test/dummy/public/system/audios/files/full/b24e5454-f642-43f0-8107-4c92dfe3f770.aac +0 -0
- data/test/dummy/public/system/audios/files/full/c0c22ae4-a660-4ebd-8640-d1c82246911f.aac +0 -0
- data/test/dummy/public/system/audios/files/full/cd9bcb87-f6f1-4a63-8989-433f71e44803.aac +0 -0
- data/test/dummy/public/system/audios/files/full/cfda40b9-14ce-4cd1-b843-604a2e5fd37a.aac +0 -0
- data/test/dummy/public/system/audios/files/full/d6421e75-ec3b-4c68-8f50-0365b131505a.aac +0 -0
- data/test/dummy/public/system/audios/files/full/d7a777c2-ce13-4dc3-a401-ac81b469734f.aac +0 -0
- data/test/dummy/public/system/audios/files/full/d97113db-5a93-4cdb-a022-74292de1e40b.aac +0 -0
- data/test/dummy/public/system/audios/files/full/de5a8bbe-292b-49b8-8fdd-b84dc78be9dc.aac +0 -0
- data/test/dummy/public/system/audios/files/full/e0847f0e-90f9-4950-9b87-e2809768dd5a.aac +0 -0
- data/test/dummy/public/system/audios/files/full/e318d820-8e5c-49fd-af55-1b1617c94e51.aac +0 -0
- data/test/dummy/public/system/audios/files/full/e6eb96eb-8688-49ab-8188-3b0c3586e5db.aac +0 -0
- data/test/dummy/public/system/audios/files/full/e8b653fe-9f0a-458e-a4f1-f2a3c43b57b0.aac +0 -0
- data/test/dummy/public/system/audios/files/full/e90ebfbd-b590-4fe9-9cd5-b13b9ba7bb04.aac +0 -0
- data/test/dummy/public/system/audios/files/full/f2663b76-efdf-4522-8a15-31bb94b92c5f.aac +0 -0
- data/test/dummy/public/system/audios/files/full/fb02d110-db44-4c45-951d-69d471af9990.aac +0 -0
- data/test/dummy/public/system/audios/files/large/053225f9-c6d3-4472-8228-2cc701fc1a41.aac +0 -0
- data/test/dummy/public/system/audios/files/large/0b55eae0-52a0-4af0-a24e-2de3fcabfbf4.aac +0 -0
- data/test/dummy/public/system/audios/files/large/16a35230-6ae5-47e4-9e09-2ecdbd31cd58.aac +0 -0
- data/test/dummy/public/system/audios/files/large/344825e7-6315-47b6-986b-c731a6d08cd5.aac +0 -0
- data/test/dummy/public/system/audios/files/large/398e2cc8-f19d-4250-a528-a1fe146a35b3.aac +0 -0
- data/test/dummy/public/system/audios/files/large/4036c6ad-3ec2-4714-b453-357b0e708f3c.aac +0 -0
- data/test/dummy/public/system/audios/files/large/41c23f05-15fe-46fe-b6e4-0f3d95c4f3ab.aac +0 -0
- data/test/dummy/public/system/audios/files/large/41d57894-31d9-4b68-81a5-008e804b66a0.aac +0 -0
- data/test/dummy/public/system/audios/files/large/4c81067f-15e4-4152-a2c4-92b0f29e05f3.aac +0 -0
- data/test/dummy/public/system/audios/files/large/560a41f2-83cd-4734-a741-5da103917a9b.aac +0 -0
- data/test/dummy/public/system/audios/files/large/6569067f-276a-4a15-8376-57709201b209.aac +0 -0
- data/test/dummy/public/system/audios/files/large/68a0b6a2-d41a-4b09-970d-397860563669.aac +0 -0
- data/test/dummy/public/system/audios/files/large/6f91f04a-4894-4b16-87b6-ccfc686ba659.aac +0 -0
- data/test/dummy/public/system/audios/files/large/7aad29c4-7736-4492-9455-1a6ff333d807.aac +0 -0
- data/test/dummy/public/system/audios/files/large/7f4b261e-c56a-41cb-a0e0-ad7888116642.aac +0 -0
- data/test/dummy/public/system/audios/files/large/828531f1-a38d-4406-b147-1a01cff06a67.aac +0 -0
- data/test/dummy/public/system/audios/files/large/86bf96b6-e784-40e0-9edd-a47eb09059a0.aac +0 -0
- data/test/dummy/public/system/audios/files/large/90a9e337-b07b-441d-9c49-0090a7e6b9c0.aac +0 -0
- data/test/dummy/public/system/audios/files/large/90fc1944-196e-4a47-945e-4344ef62eb8c.aac +0 -0
- data/test/dummy/public/system/audios/files/large/975ce729-487c-4e6d-bce5-9523dbfa952c.aac +0 -0
- data/test/dummy/public/system/audios/files/large/9a096e89-4ce2-4ad9-9ff6-503f7200a8c8.aac +0 -0
- data/test/dummy/public/system/audios/files/large/9a186341-4c3b-4b30-b605-f234eb371d4c.aac +0 -0
- data/test/dummy/public/system/audios/files/large/a9034b45-c9c6-4387-b611-ef0c64c641e6.aac +0 -0
- data/test/dummy/public/system/audios/files/large/a96d0f64-2c94-4378-980e-d12e3492d412.aac +0 -0
- data/test/dummy/public/system/audios/files/large/b24e5454-f642-43f0-8107-4c92dfe3f770.aac +0 -0
- data/test/dummy/public/system/audios/files/large/c0c22ae4-a660-4ebd-8640-d1c82246911f.aac +0 -0
- data/test/dummy/public/system/audios/files/large/cd9bcb87-f6f1-4a63-8989-433f71e44803.aac +0 -0
- data/test/dummy/public/system/audios/files/large/cfda40b9-14ce-4cd1-b843-604a2e5fd37a.aac +0 -0
- data/test/dummy/public/system/audios/files/large/d6421e75-ec3b-4c68-8f50-0365b131505a.aac +0 -0
- data/test/dummy/public/system/audios/files/large/d7a777c2-ce13-4dc3-a401-ac81b469734f.aac +0 -0
- data/test/dummy/public/system/audios/files/large/d97113db-5a93-4cdb-a022-74292de1e40b.aac +0 -0
- data/test/dummy/public/system/audios/files/large/de5a8bbe-292b-49b8-8fdd-b84dc78be9dc.aac +0 -0
- data/test/dummy/public/system/audios/files/large/e0847f0e-90f9-4950-9b87-e2809768dd5a.aac +0 -0
- data/test/dummy/public/system/audios/files/large/e318d820-8e5c-49fd-af55-1b1617c94e51.aac +0 -0
- data/test/dummy/public/system/audios/files/large/e6eb96eb-8688-49ab-8188-3b0c3586e5db.aac +0 -0
- data/test/dummy/public/system/audios/files/large/e8b653fe-9f0a-458e-a4f1-f2a3c43b57b0.aac +0 -0
- data/test/dummy/public/system/audios/files/large/e90ebfbd-b590-4fe9-9cd5-b13b9ba7bb04.aac +0 -0
- data/test/dummy/public/system/audios/files/large/f2663b76-efdf-4522-8a15-31bb94b92c5f.aac +0 -0
- data/test/dummy/public/system/audios/files/large/fb02d110-db44-4c45-951d-69d471af9990.aac +0 -0
- data/test/dummy/public/system/audios/files/original/053225f9-c6d3-4472-8228-2cc701fc1a41.wav +0 -0
- data/test/dummy/public/system/audios/files/original/0b55eae0-52a0-4af0-a24e-2de3fcabfbf4.wav +0 -0
- data/test/dummy/public/system/audios/files/original/16a35230-6ae5-47e4-9e09-2ecdbd31cd58.wav +0 -0
- data/test/dummy/public/system/audios/files/original/344825e7-6315-47b6-986b-c731a6d08cd5.wav +0 -0
- data/test/dummy/public/system/audios/files/original/398e2cc8-f19d-4250-a528-a1fe146a35b3.wav +0 -0
- data/test/dummy/public/system/audios/files/original/4036c6ad-3ec2-4714-b453-357b0e708f3c.wav +0 -0
- data/test/dummy/public/system/audios/files/original/41c23f05-15fe-46fe-b6e4-0f3d95c4f3ab.wav +0 -0
- data/test/dummy/public/system/audios/files/original/41d57894-31d9-4b68-81a5-008e804b66a0.wav +0 -0
- data/test/dummy/public/system/audios/files/original/4c81067f-15e4-4152-a2c4-92b0f29e05f3.wav +0 -0
- data/test/dummy/public/system/audios/files/original/560a41f2-83cd-4734-a741-5da103917a9b.wav +0 -0
- data/test/dummy/public/system/audios/files/original/6569067f-276a-4a15-8376-57709201b209.wav +0 -0
- data/test/dummy/public/system/audios/files/original/68a0b6a2-d41a-4b09-970d-397860563669.wav +0 -0
- data/test/dummy/public/system/audios/files/original/6f91f04a-4894-4b16-87b6-ccfc686ba659.wav +0 -0
- data/test/dummy/public/system/audios/files/original/7aad29c4-7736-4492-9455-1a6ff333d807.wav +0 -0
- data/test/dummy/public/system/audios/files/original/7f4b261e-c56a-41cb-a0e0-ad7888116642.wav +0 -0
- data/test/dummy/public/system/audios/files/original/828531f1-a38d-4406-b147-1a01cff06a67.wav +0 -0
- data/test/dummy/public/system/audios/files/original/86bf96b6-e784-40e0-9edd-a47eb09059a0.wav +0 -0
- data/test/dummy/public/system/audios/files/original/90a9e337-b07b-441d-9c49-0090a7e6b9c0.wav +0 -0
- data/test/dummy/public/system/audios/files/original/975ce729-487c-4e6d-bce5-9523dbfa952c.wav +0 -0
- data/test/dummy/public/system/audios/files/original/9a096e89-4ce2-4ad9-9ff6-503f7200a8c8.wav +0 -0
- data/test/dummy/public/system/audios/files/original/9a186341-4c3b-4b30-b605-f234eb371d4c.wav +0 -0
- data/test/dummy/public/system/audios/files/original/b24e5454-f642-43f0-8107-4c92dfe3f770.wav +0 -0
- data/test/dummy/public/system/audios/files/original/cfda40b9-14ce-4cd1-b843-604a2e5fd37a.wav +0 -0
- data/test/dummy/public/system/audios/files/original/e318d820-8e5c-49fd-af55-1b1617c94e51.wav +0 -0
- data/test/dummy/public/system/audios/files/original/e6eb96eb-8688-49ab-8188-3b0c3586e5db.wav +0 -0
- data/test/dummy/public/system/audios/files/original/f2663b76-efdf-4522-8a15-31bb94b92c5f.wav +0 -0
- data/test/dummy/public/system/audios/files/original/fb02d110-db44-4c45-951d-69d471af9990.wav +0 -0
- data/test/dummy/public/system/audios/files/small/053225f9-c6d3-4472-8228-2cc701fc1a41.aac +0 -0
- data/test/dummy/public/system/audios/files/small/0b55eae0-52a0-4af0-a24e-2de3fcabfbf4.aac +0 -0
- data/test/dummy/public/system/audios/files/small/398e2cc8-f19d-4250-a528-a1fe146a35b3.aac +0 -0
- data/test/dummy/public/system/audios/files/small/4036c6ad-3ec2-4714-b453-357b0e708f3c.aac +0 -0
- data/test/dummy/public/system/audios/files/small/41c23f05-15fe-46fe-b6e4-0f3d95c4f3ab.aac +0 -0
- data/test/dummy/public/system/audios/files/small/41d57894-31d9-4b68-81a5-008e804b66a0.aac +0 -0
- data/test/dummy/public/system/audios/files/small/4c81067f-15e4-4152-a2c4-92b0f29e05f3.aac +0 -0
- data/test/dummy/public/system/audios/files/small/6569067f-276a-4a15-8376-57709201b209.aac +0 -0
- data/test/dummy/public/system/audios/files/small/68a0b6a2-d41a-4b09-970d-397860563669.aac +0 -0
- data/test/dummy/public/system/audios/files/small/6f91f04a-4894-4b16-87b6-ccfc686ba659.aac +0 -0
- data/test/dummy/public/system/audios/files/small/7f4b261e-c56a-41cb-a0e0-ad7888116642.aac +0 -0
- data/test/dummy/public/system/audios/files/small/86bf96b6-e784-40e0-9edd-a47eb09059a0.aac +0 -0
- data/test/dummy/public/system/audios/files/small/90a9e337-b07b-441d-9c49-0090a7e6b9c0.aac +0 -0
- data/test/dummy/public/system/audios/files/small/975ce729-487c-4e6d-bce5-9523dbfa952c.aac +0 -0
- data/test/dummy/public/system/audios/files/small/9a096e89-4ce2-4ad9-9ff6-503f7200a8c8.aac +0 -0
- data/test/dummy/public/system/audios/files/small/9a186341-4c3b-4b30-b605-f234eb371d4c.aac +0 -0
- data/test/dummy/public/system/audios/files/small/b24e5454-f642-43f0-8107-4c92dfe3f770.aac +0 -0
- data/test/dummy/public/system/audios/files/small/cfda40b9-14ce-4cd1-b843-604a2e5fd37a.aac +0 -0
- data/test/dummy/public/system/audios/files/small/e318d820-8e5c-49fd-af55-1b1617c94e51.aac +0 -0
- data/test/dummy/public/system/audios/files/small/e6eb96eb-8688-49ab-8188-3b0c3586e5db.aac +0 -0
- data/test/dummy/public/system/audios/files/small/f2663b76-efdf-4522-8a15-31bb94b92c5f.aac +0 -0
- data/test/dummy/public/system/audios/files/small/fb02d110-db44-4c45-951d-69d471af9990.aac +0 -0
- data/test/dummy/public/system/images/files/full/04a05143-2ea9-4ee0-bca3-64f436bac3d2.jpg +0 -0
- data/test/dummy/public/system/images/files/full/187e58dd-d90c-4000-8118-c46da7f1f71f.jpg +0 -0
- data/test/dummy/public/system/images/files/full/1fd5231d-04d1-4691-bceb-871810ac982b.jpg +0 -0
- data/test/dummy/public/system/images/files/full/25d98e6f-6419-4bb9-990c-cc5113f8606d.jpg +0 -0
- data/test/dummy/public/system/images/files/full/3401af18-b401-404f-9bd7-58424fe33e26.jpg +0 -0
- data/test/dummy/public/system/images/files/full/38bcfbac-5b70-4510-a0dd-9296fc22ed0e.jpg +0 -0
- data/test/dummy/public/system/images/files/full/49f59ee9-98cf-4991-8c96-aebef8f34a21.jpg +0 -0
- data/test/dummy/public/system/images/files/full/520dcbea-ce4a-474b-8e42-3b6c947181b3.jpg +0 -0
- data/test/dummy/public/system/images/files/full/5dea55cb-4d09-453c-b9fa-a6783c2b82e6.jpg +0 -0
- data/test/dummy/public/system/images/files/full/5dfc0dc2-909f-4525-9d5a-d04dc9e9f9ac.jpg +0 -0
- data/test/dummy/public/system/images/files/full/6cb55f24-12c1-4019-aa1d-d7d379ffb4b3.jpg +0 -0
- data/test/dummy/public/system/images/files/full/71e117d2-a77a-4daf-a0cc-39c629727b57.jpg +0 -0
- data/test/dummy/public/system/images/files/full/7426b7d6-2950-4064-8bcd-f7d081fbbd27.jpg +0 -0
- data/test/dummy/public/system/images/files/full/88286a62-ef1b-4532-82f4-7a9e72e32f2a.jpg +0 -0
- data/test/dummy/public/system/images/files/full/8daf45e0-c8c2-4768-9536-53b8dc269c14.jpg +0 -0
- data/test/dummy/public/system/images/files/full/970ec9d8-052c-4c7c-b1eb-a163004dcb35.jpg +0 -0
- data/test/dummy/public/system/images/files/full/9a74af84-4e37-451d-abff-84499ca198db.jpg +0 -0
- data/test/dummy/public/system/images/files/full/b784910f-bc64-4bbb-bc4f-77cc5b9faf7e.jpg +0 -0
- data/test/dummy/public/system/images/files/full/c8ec0593-49f5-44c5-957e-ce61a15678c9.jpg +0 -0
- data/test/dummy/public/system/images/files/full/ef58124a-9bd6-4da7-9dcb-a4dfe83e7cc1.jpg +0 -0
- data/test/dummy/public/system/images/files/full/f905a6f3-1626-4a3b-89dd-53f1c1a88379.jpg +0 -0
- data/test/dummy/public/system/images/files/full/fbe00e7d-98d7-4f89-86db-09918fedb9c5.jpg +0 -0
- data/test/dummy/public/system/images/files/large/04a05143-2ea9-4ee0-bca3-64f436bac3d2.jpg +0 -0
- data/test/dummy/public/system/images/files/large/187e58dd-d90c-4000-8118-c46da7f1f71f.jpg +0 -0
- data/test/dummy/public/system/images/files/large/1fd5231d-04d1-4691-bceb-871810ac982b.jpg +0 -0
- data/test/dummy/public/system/images/files/large/25d98e6f-6419-4bb9-990c-cc5113f8606d.jpg +0 -0
- data/test/dummy/public/system/images/files/large/3401af18-b401-404f-9bd7-58424fe33e26.jpg +0 -0
- data/test/dummy/public/system/images/files/large/38bcfbac-5b70-4510-a0dd-9296fc22ed0e.jpg +0 -0
- data/test/dummy/public/system/images/files/large/49f59ee9-98cf-4991-8c96-aebef8f34a21.jpg +0 -0
- data/test/dummy/public/system/images/files/large/520dcbea-ce4a-474b-8e42-3b6c947181b3.jpg +0 -0
- data/test/dummy/public/system/images/files/large/5dea55cb-4d09-453c-b9fa-a6783c2b82e6.jpg +0 -0
- data/test/dummy/public/system/images/files/large/5dfc0dc2-909f-4525-9d5a-d04dc9e9f9ac.jpg +0 -0
- data/test/dummy/public/system/images/files/large/6cb55f24-12c1-4019-aa1d-d7d379ffb4b3.jpg +0 -0
- data/test/dummy/public/system/images/files/large/71e117d2-a77a-4daf-a0cc-39c629727b57.jpg +0 -0
- data/test/dummy/public/system/images/files/large/7426b7d6-2950-4064-8bcd-f7d081fbbd27.jpg +0 -0
- data/test/dummy/public/system/images/files/large/88286a62-ef1b-4532-82f4-7a9e72e32f2a.jpg +0 -0
- data/test/dummy/public/system/images/files/large/8daf45e0-c8c2-4768-9536-53b8dc269c14.jpg +0 -0
- data/test/dummy/public/system/images/files/large/970ec9d8-052c-4c7c-b1eb-a163004dcb35.jpg +0 -0
- data/test/dummy/public/system/images/files/large/9a74af84-4e37-451d-abff-84499ca198db.jpg +0 -0
- data/test/dummy/public/system/images/files/large/b784910f-bc64-4bbb-bc4f-77cc5b9faf7e.jpg +0 -0
- data/test/dummy/public/system/images/files/large/c8ec0593-49f5-44c5-957e-ce61a15678c9.jpg +0 -0
- data/test/dummy/public/system/images/files/large/ef58124a-9bd6-4da7-9dcb-a4dfe83e7cc1.jpg +0 -0
- data/test/dummy/public/system/images/files/large/f905a6f3-1626-4a3b-89dd-53f1c1a88379.jpg +0 -0
- data/test/dummy/public/system/images/files/large/fbe00e7d-98d7-4f89-86db-09918fedb9c5.jpg +0 -0
- data/test/dummy/public/system/images/files/original/04a05143-2ea9-4ee0-bca3-64f436bac3d2.png +0 -0
- data/test/dummy/public/system/images/files/original/187e58dd-d90c-4000-8118-c46da7f1f71f.png +0 -0
- data/test/dummy/public/system/images/files/original/1fd5231d-04d1-4691-bceb-871810ac982b.png +0 -0
- data/test/dummy/public/system/images/files/original/25d98e6f-6419-4bb9-990c-cc5113f8606d.png +0 -0
- data/test/dummy/public/system/images/files/original/3401af18-b401-404f-9bd7-58424fe33e26.png +0 -0
- data/test/dummy/public/system/images/files/original/38bcfbac-5b70-4510-a0dd-9296fc22ed0e.png +0 -0
- data/test/dummy/public/system/images/files/original/49f59ee9-98cf-4991-8c96-aebef8f34a21.png +0 -0
- data/test/dummy/public/system/images/files/original/520dcbea-ce4a-474b-8e42-3b6c947181b3.png +0 -0
- data/test/dummy/public/system/images/files/original/5dea55cb-4d09-453c-b9fa-a6783c2b82e6.png +0 -0
- data/test/dummy/public/system/images/files/original/5dfc0dc2-909f-4525-9d5a-d04dc9e9f9ac.png +0 -0
- data/test/dummy/public/system/images/files/original/6cb55f24-12c1-4019-aa1d-d7d379ffb4b3.png +0 -0
- data/test/dummy/public/system/images/files/original/71e117d2-a77a-4daf-a0cc-39c629727b57.png +0 -0
- data/test/dummy/public/system/images/files/original/7426b7d6-2950-4064-8bcd-f7d081fbbd27.png +0 -0
- data/test/dummy/public/system/images/files/original/88286a62-ef1b-4532-82f4-7a9e72e32f2a.png +0 -0
- data/test/dummy/public/system/images/files/original/8daf45e0-c8c2-4768-9536-53b8dc269c14.png +0 -0
- data/test/dummy/public/system/images/files/original/970ec9d8-052c-4c7c-b1eb-a163004dcb35.png +0 -0
- data/test/dummy/public/system/images/files/original/9a74af84-4e37-451d-abff-84499ca198db.png +0 -0
- data/test/dummy/public/system/images/files/original/b784910f-bc64-4bbb-bc4f-77cc5b9faf7e.png +0 -0
- data/test/dummy/public/system/images/files/original/c8ec0593-49f5-44c5-957e-ce61a15678c9.png +0 -0
- data/test/dummy/public/system/images/files/original/ef58124a-9bd6-4da7-9dcb-a4dfe83e7cc1.png +0 -0
- data/test/dummy/public/system/images/files/original/f905a6f3-1626-4a3b-89dd-53f1c1a88379.png +0 -0
- data/test/dummy/public/system/images/files/original/fbe00e7d-98d7-4f89-86db-09918fedb9c5.png +0 -0
- data/test/dummy/public/system/images/files/small/04a05143-2ea9-4ee0-bca3-64f436bac3d2.jpg +0 -0
- data/test/dummy/public/system/images/files/small/187e58dd-d90c-4000-8118-c46da7f1f71f.jpg +0 -0
- data/test/dummy/public/system/images/files/small/1fd5231d-04d1-4691-bceb-871810ac982b.jpg +0 -0
- data/test/dummy/public/system/images/files/small/25d98e6f-6419-4bb9-990c-cc5113f8606d.jpg +0 -0
- data/test/dummy/public/system/images/files/small/3401af18-b401-404f-9bd7-58424fe33e26.jpg +0 -0
- data/test/dummy/public/system/images/files/small/38bcfbac-5b70-4510-a0dd-9296fc22ed0e.jpg +0 -0
- data/test/dummy/public/system/images/files/small/49f59ee9-98cf-4991-8c96-aebef8f34a21.jpg +0 -0
- data/test/dummy/public/system/images/files/small/520dcbea-ce4a-474b-8e42-3b6c947181b3.jpg +0 -0
- data/test/dummy/public/system/images/files/small/5dea55cb-4d09-453c-b9fa-a6783c2b82e6.jpg +0 -0
- data/test/dummy/public/system/images/files/small/5dfc0dc2-909f-4525-9d5a-d04dc9e9f9ac.jpg +0 -0
- data/test/dummy/public/system/images/files/small/6cb55f24-12c1-4019-aa1d-d7d379ffb4b3.jpg +0 -0
- data/test/dummy/public/system/images/files/small/71e117d2-a77a-4daf-a0cc-39c629727b57.jpg +0 -0
- data/test/dummy/public/system/images/files/small/7426b7d6-2950-4064-8bcd-f7d081fbbd27.jpg +0 -0
- data/test/dummy/public/system/images/files/small/88286a62-ef1b-4532-82f4-7a9e72e32f2a.jpg +0 -0
- data/test/dummy/public/system/images/files/small/8daf45e0-c8c2-4768-9536-53b8dc269c14.jpg +0 -0
- data/test/dummy/public/system/images/files/small/970ec9d8-052c-4c7c-b1eb-a163004dcb35.jpg +0 -0
- data/test/dummy/public/system/images/files/small/9a74af84-4e37-451d-abff-84499ca198db.jpg +0 -0
- data/test/dummy/public/system/images/files/small/b784910f-bc64-4bbb-bc4f-77cc5b9faf7e.jpg +0 -0
- data/test/dummy/public/system/images/files/small/c8ec0593-49f5-44c5-957e-ce61a15678c9.jpg +0 -0
- data/test/dummy/public/system/images/files/small/ef58124a-9bd6-4da7-9dcb-a4dfe83e7cc1.jpg +0 -0
- data/test/dummy/public/system/images/files/small/f905a6f3-1626-4a3b-89dd-53f1c1a88379.jpg +0 -0
- data/test/dummy/public/system/images/files/small/fbe00e7d-98d7-4f89-86db-09918fedb9c5.jpg +0 -0
- data/test/dummy/public/system/images/files/thumb/04a05143-2ea9-4ee0-bca3-64f436bac3d2.jpg +0 -0
- data/test/dummy/public/system/images/files/thumb/187e58dd-d90c-4000-8118-c46da7f1f71f.jpg +0 -0
- data/test/dummy/public/system/images/files/thumb/1fd5231d-04d1-4691-bceb-871810ac982b.jpg +0 -0
- data/test/dummy/public/system/images/files/thumb/25d98e6f-6419-4bb9-990c-cc5113f8606d.jpg +0 -0
- data/test/dummy/public/system/images/files/thumb/3401af18-b401-404f-9bd7-58424fe33e26.jpg +0 -0
- data/test/dummy/public/system/images/files/thumb/38bcfbac-5b70-4510-a0dd-9296fc22ed0e.jpg +0 -0
- data/test/dummy/public/system/images/files/thumb/49f59ee9-98cf-4991-8c96-aebef8f34a21.jpg +0 -0
- data/test/dummy/public/system/images/files/thumb/520dcbea-ce4a-474b-8e42-3b6c947181b3.jpg +0 -0
- data/test/dummy/public/system/images/files/thumb/5dea55cb-4d09-453c-b9fa-a6783c2b82e6.jpg +0 -0
- data/test/dummy/public/system/images/files/thumb/5dfc0dc2-909f-4525-9d5a-d04dc9e9f9ac.jpg +0 -0
- data/test/dummy/public/system/images/files/thumb/6cb55f24-12c1-4019-aa1d-d7d379ffb4b3.jpg +0 -0
- data/test/dummy/public/system/images/files/thumb/71e117d2-a77a-4daf-a0cc-39c629727b57.jpg +0 -0
- data/test/dummy/public/system/images/files/thumb/7426b7d6-2950-4064-8bcd-f7d081fbbd27.jpg +0 -0
- data/test/dummy/public/system/images/files/thumb/88286a62-ef1b-4532-82f4-7a9e72e32f2a.jpg +0 -0
- data/test/dummy/public/system/images/files/thumb/8daf45e0-c8c2-4768-9536-53b8dc269c14.jpg +0 -0
- data/test/dummy/public/system/images/files/thumb/970ec9d8-052c-4c7c-b1eb-a163004dcb35.jpg +0 -0
- data/test/dummy/public/system/images/files/thumb/9a74af84-4e37-451d-abff-84499ca198db.jpg +0 -0
- data/test/dummy/public/system/images/files/thumb/b784910f-bc64-4bbb-bc4f-77cc5b9faf7e.jpg +0 -0
- data/test/dummy/public/system/images/files/thumb/c8ec0593-49f5-44c5-957e-ce61a15678c9.jpg +0 -0
- data/test/dummy/public/system/images/files/thumb/ef58124a-9bd6-4da7-9dcb-a4dfe83e7cc1.jpg +0 -0
- data/test/dummy/public/system/images/files/thumb/f905a6f3-1626-4a3b-89dd-53f1c1a88379.jpg +0 -0
- data/test/dummy/public/system/images/files/thumb/fbe00e7d-98d7-4f89-86db-09918fedb9c5.jpg +0 -0
- data/test/dummy/test/controllers/audios_controller_test.rb +5 -5
- data/test/dummy/test/controllers/images_controller_test.rb +5 -5
- data/test/dummy/test/models/audio_test.rb +5 -5
- data/test/dummy/test/models/image_test.rb +5 -5
- data/test/dummy/tmp/cache/assets/test/sass/11e4b32482f2a6837bf1eb6d86d3ed3fb479ba9c/_alerts.scssc +0 -0
- data/test/dummy/tmp/cache/assets/test/sass/11e4b32482f2a6837bf1eb6d86d3ed3fb479ba9c/_background-variant.scssc +0 -0
- data/test/dummy/tmp/cache/assets/test/sass/11e4b32482f2a6837bf1eb6d86d3ed3fb479ba9c/_border-radius.scssc +0 -0
- data/test/dummy/tmp/cache/assets/test/sass/11e4b32482f2a6837bf1eb6d86d3ed3fb479ba9c/_buttons.scssc +0 -0
- data/test/dummy/tmp/cache/assets/test/sass/11e4b32482f2a6837bf1eb6d86d3ed3fb479ba9c/_center-block.scssc +0 -0
- data/test/dummy/tmp/cache/assets/test/sass/11e4b32482f2a6837bf1eb6d86d3ed3fb479ba9c/_clearfix.scssc +0 -0
- data/test/dummy/tmp/cache/assets/test/sass/11e4b32482f2a6837bf1eb6d86d3ed3fb479ba9c/_forms.scssc +0 -0
- data/test/dummy/tmp/cache/assets/test/sass/11e4b32482f2a6837bf1eb6d86d3ed3fb479ba9c/_gradients.scssc +0 -0
- data/test/dummy/tmp/cache/assets/test/sass/11e4b32482f2a6837bf1eb6d86d3ed3fb479ba9c/_grid-framework.scssc +0 -0
- data/test/dummy/tmp/cache/assets/test/sass/11e4b32482f2a6837bf1eb6d86d3ed3fb479ba9c/_grid.scssc +0 -0
- data/test/dummy/tmp/cache/assets/test/sass/11e4b32482f2a6837bf1eb6d86d3ed3fb479ba9c/_hide-text.scssc +0 -0
- data/test/dummy/tmp/cache/assets/test/sass/11e4b32482f2a6837bf1eb6d86d3ed3fb479ba9c/_image.scssc +0 -0
- data/test/dummy/tmp/cache/assets/test/sass/11e4b32482f2a6837bf1eb6d86d3ed3fb479ba9c/_labels.scssc +0 -0
- data/test/dummy/tmp/cache/assets/test/sass/11e4b32482f2a6837bf1eb6d86d3ed3fb479ba9c/_list-group.scssc +0 -0
- data/test/dummy/tmp/cache/assets/test/sass/11e4b32482f2a6837bf1eb6d86d3ed3fb479ba9c/_nav-divider.scssc +0 -0
- data/test/dummy/tmp/cache/assets/test/sass/11e4b32482f2a6837bf1eb6d86d3ed3fb479ba9c/_nav-vertical-align.scssc +0 -0
- data/test/dummy/tmp/cache/assets/test/sass/11e4b32482f2a6837bf1eb6d86d3ed3fb479ba9c/_opacity.scssc +0 -0
- data/test/dummy/tmp/cache/assets/test/sass/11e4b32482f2a6837bf1eb6d86d3ed3fb479ba9c/_pagination.scssc +0 -0
- data/test/dummy/tmp/cache/assets/test/sass/11e4b32482f2a6837bf1eb6d86d3ed3fb479ba9c/_panels.scssc +0 -0
- data/test/dummy/tmp/cache/assets/test/sass/11e4b32482f2a6837bf1eb6d86d3ed3fb479ba9c/_progress-bar.scssc +0 -0
- data/test/dummy/tmp/cache/assets/test/sass/11e4b32482f2a6837bf1eb6d86d3ed3fb479ba9c/_reset-filter.scssc +0 -0
- data/test/dummy/tmp/cache/assets/test/sass/11e4b32482f2a6837bf1eb6d86d3ed3fb479ba9c/_resize.scssc +0 -0
- data/test/dummy/tmp/cache/assets/test/sass/11e4b32482f2a6837bf1eb6d86d3ed3fb479ba9c/_responsive-visibility.scssc +0 -0
- data/test/dummy/tmp/cache/assets/test/sass/11e4b32482f2a6837bf1eb6d86d3ed3fb479ba9c/_size.scssc +0 -0
- data/test/dummy/tmp/cache/assets/test/sass/11e4b32482f2a6837bf1eb6d86d3ed3fb479ba9c/_tab-focus.scssc +0 -0
- data/test/dummy/tmp/cache/assets/test/sass/11e4b32482f2a6837bf1eb6d86d3ed3fb479ba9c/_table-row.scssc +0 -0
- data/test/dummy/tmp/cache/assets/test/sass/11e4b32482f2a6837bf1eb6d86d3ed3fb479ba9c/_text-emphasis.scssc +0 -0
- data/test/dummy/tmp/cache/assets/test/sass/11e4b32482f2a6837bf1eb6d86d3ed3fb479ba9c/_text-overflow.scssc +0 -0
- data/test/dummy/tmp/cache/assets/test/sass/11e4b32482f2a6837bf1eb6d86d3ed3fb479ba9c/_vendor-prefixes.scssc +0 -0
- data/test/dummy/tmp/cache/assets/test/sass/4064a56df5bbb01ee76e4d304234a109a364de14/bootstrap.scssc +0 -0
- data/test/dummy/tmp/cache/assets/test/sass/e934b98bab29972344df0ce895ad77edec08210c/_alerts.scssc +0 -0
- data/test/dummy/tmp/cache/assets/test/sass/e934b98bab29972344df0ce895ad77edec08210c/_badges.scssc +0 -0
- data/test/dummy/tmp/cache/assets/test/sass/e934b98bab29972344df0ce895ad77edec08210c/_breadcrumbs.scssc +0 -0
- data/test/dummy/tmp/cache/assets/test/sass/e934b98bab29972344df0ce895ad77edec08210c/_button-groups.scssc +0 -0
- data/test/dummy/tmp/cache/assets/test/sass/e934b98bab29972344df0ce895ad77edec08210c/_buttons.scssc +0 -0
- data/test/dummy/tmp/cache/assets/test/sass/e934b98bab29972344df0ce895ad77edec08210c/_carousel.scssc +0 -0
- data/test/dummy/tmp/cache/assets/test/sass/e934b98bab29972344df0ce895ad77edec08210c/_close.scssc +0 -0
- data/test/dummy/tmp/cache/assets/test/sass/e934b98bab29972344df0ce895ad77edec08210c/_code.scssc +0 -0
- data/test/dummy/tmp/cache/assets/test/sass/e934b98bab29972344df0ce895ad77edec08210c/_component-animations.scssc +0 -0
- data/test/dummy/tmp/cache/assets/test/sass/e934b98bab29972344df0ce895ad77edec08210c/_dropdowns.scssc +0 -0
- data/test/dummy/tmp/cache/assets/test/sass/e934b98bab29972344df0ce895ad77edec08210c/_forms.scssc +0 -0
- data/test/dummy/tmp/cache/assets/test/sass/e934b98bab29972344df0ce895ad77edec08210c/_glyphicons.scssc +0 -0
- data/test/dummy/tmp/cache/assets/test/sass/e934b98bab29972344df0ce895ad77edec08210c/_grid.scssc +0 -0
- data/test/dummy/tmp/cache/assets/test/sass/e934b98bab29972344df0ce895ad77edec08210c/_input-groups.scssc +0 -0
- data/test/dummy/tmp/cache/assets/test/sass/e934b98bab29972344df0ce895ad77edec08210c/_jumbotron.scssc +0 -0
- data/test/dummy/tmp/cache/assets/test/sass/e934b98bab29972344df0ce895ad77edec08210c/_labels.scssc +0 -0
- data/test/dummy/tmp/cache/assets/test/sass/e934b98bab29972344df0ce895ad77edec08210c/_list-group.scssc +0 -0
- data/test/dummy/tmp/cache/assets/test/sass/e934b98bab29972344df0ce895ad77edec08210c/_media.scssc +0 -0
- data/test/dummy/tmp/cache/assets/test/sass/e934b98bab29972344df0ce895ad77edec08210c/_mixins.scssc +0 -0
- data/test/dummy/tmp/cache/assets/test/sass/e934b98bab29972344df0ce895ad77edec08210c/_modals.scssc +0 -0
- data/test/dummy/tmp/cache/assets/test/sass/e934b98bab29972344df0ce895ad77edec08210c/_navbar.scssc +0 -0
- data/test/dummy/tmp/cache/assets/test/sass/e934b98bab29972344df0ce895ad77edec08210c/_navs.scssc +0 -0
- data/test/dummy/tmp/cache/assets/test/sass/e934b98bab29972344df0ce895ad77edec08210c/_normalize.scssc +0 -0
- data/test/dummy/tmp/cache/assets/test/sass/e934b98bab29972344df0ce895ad77edec08210c/_pager.scssc +0 -0
- data/test/dummy/tmp/cache/assets/test/sass/e934b98bab29972344df0ce895ad77edec08210c/_pagination.scssc +0 -0
- data/test/dummy/tmp/cache/assets/test/sass/e934b98bab29972344df0ce895ad77edec08210c/_panels.scssc +0 -0
- data/test/dummy/tmp/cache/assets/test/sass/e934b98bab29972344df0ce895ad77edec08210c/_popovers.scssc +0 -0
- data/test/dummy/tmp/cache/assets/test/sass/e934b98bab29972344df0ce895ad77edec08210c/_print.scssc +0 -0
- data/test/dummy/tmp/cache/assets/test/sass/e934b98bab29972344df0ce895ad77edec08210c/_progress-bars.scssc +0 -0
- data/test/dummy/tmp/cache/assets/test/sass/e934b98bab29972344df0ce895ad77edec08210c/_responsive-embed.scssc +0 -0
- data/test/dummy/tmp/cache/assets/test/sass/e934b98bab29972344df0ce895ad77edec08210c/_responsive-utilities.scssc +0 -0
- data/test/dummy/tmp/cache/assets/test/sass/e934b98bab29972344df0ce895ad77edec08210c/_scaffolding.scssc +0 -0
- data/test/dummy/tmp/cache/assets/test/sass/e934b98bab29972344df0ce895ad77edec08210c/_tables.scssc +0 -0
- data/test/dummy/tmp/cache/assets/test/sass/e934b98bab29972344df0ce895ad77edec08210c/_thumbnails.scssc +0 -0
- data/test/dummy/tmp/cache/assets/test/sass/e934b98bab29972344df0ce895ad77edec08210c/_tooltip.scssc +0 -0
- data/test/dummy/tmp/cache/assets/test/sass/e934b98bab29972344df0ce895ad77edec08210c/_type.scssc +0 -0
- data/test/dummy/tmp/cache/assets/test/sass/e934b98bab29972344df0ce895ad77edec08210c/_utilities.scssc +0 -0
- data/test/dummy/tmp/cache/assets/test/sass/e934b98bab29972344df0ce895ad77edec08210c/_variables.scssc +0 -0
- data/test/dummy/tmp/cache/assets/test/sass/e934b98bab29972344df0ce895ad77edec08210c/_wells.scssc +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/0d3881005b0646df783d5c24683d34f5 +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/16d61d604995abc9503196afa7ee8a1a +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/1a6846f0a837ae2524e2f9ec89e6ef43 +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/2013f4301be82fc1e4c20d363d5f595a +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/416ba8d8c55d6f42571b681274e22d5d +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/50c1885539f61359c48af74fcae1df31 +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/6c3e053393afe303432ca73f1b41490b +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/86e145a39f85cceeaffdff91ebb61449 +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/c5880aca76ccbb51f9388362e8afc1e6 +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/e69b39cad15408a142ce4b079f08d5c7 +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/ea90d3d29d22654f1c3309fdcadb2703 +0 -0
- data/test/dummy/tmp/cache/assets/test/sprockets/fe2a206a96f1e0b21d535fa35ddd5f59 +0 -0
- data/test/test_helper.rb +4 -0
- metadata +550 -2
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA1:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 8bc176dbc2ad38b99ab49a128971f1e32103e009
|
|
4
|
+
data.tar.gz: d56c4292c0979d826074d95546d42a7907edb677
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 862c1a697e68afe188aba95ef8e1b3db5b241f666d2d314630a11b558f0e1f31caf31e6a8b12a7658b9ebbacd75ebc517b1513fa941662a8b4962fe952bdf4f6
|
|
7
|
+
data.tar.gz: 0426cbf46893ad05460682f7f7153168923409919f26e3e1ca73741dfd11eaf024008b0f9ee736f6823c5bd235e8f9aff452a119c74c98b82833bbc5b062ad10
|
data/README.rdoc
CHANGED
|
@@ -6,8 +6,8 @@ Attached is a Ruby on Rails file attachment tool that lets users upload to the c
|
|
|
6
6
|
|
|
7
7
|
The gem is tested with:
|
|
8
8
|
|
|
9
|
-
* Ruby on Rails 4.1.
|
|
10
|
-
* Ruby on Rails 4.0.
|
|
9
|
+
* Ruby on Rails 4.1.2
|
|
10
|
+
* Ruby on Rails 4.0.6
|
|
11
11
|
* Ruby 2.1.2
|
|
12
12
|
* Ruby 2.0.0
|
|
13
13
|
* Ruby 1.9.3
|
|
@@ -166,9 +166,10 @@ View:
|
|
|
166
166
|
|
|
167
167
|
== Status
|
|
168
168
|
|
|
169
|
-
{<img src="
|
|
170
|
-
{<img src="
|
|
171
|
-
{<img src="
|
|
169
|
+
{<img src="https://img.shields.io/gemnasium/ksylvest/attached.svg" />}[https://gemnasium.com/ksylvest/attached]
|
|
170
|
+
{<img src="https://img.shields.io/travis/ksylvest/attached.svg" />}[https://travis-ci.org/ksylvest/attached]
|
|
171
|
+
{<img src="https://img.shields.io/coveralls/ksylvest/attached.svg" />}[https://coveralls.io/r/ksylvest/attached]
|
|
172
|
+
{<img src="https://img.shields.io/codeclimate/github/ksylvest/attached.svg" />}[https://codeclimate.com/github/ksylvest/attached]
|
|
172
173
|
|
|
173
174
|
== Copyright
|
|
174
175
|
|
data/Rakefile
CHANGED
data/lib/attached.rb
CHANGED
|
@@ -1,37 +1,20 @@
|
|
|
1
|
+
require 'attached/definition'
|
|
1
2
|
require 'attached/attachment'
|
|
3
|
+
require 'attached/attatcher'
|
|
2
4
|
require 'attached/railtie'
|
|
3
5
|
|
|
4
|
-
|
|
5
6
|
module Attached
|
|
6
7
|
|
|
7
|
-
|
|
8
8
|
def self.mock!
|
|
9
9
|
Fog.mock!
|
|
10
10
|
end
|
|
11
11
|
|
|
12
|
-
|
|
13
12
|
def self.included(base)
|
|
14
13
|
base.extend ClassMethods
|
|
15
|
-
base.class_attribute :attached_options
|
|
16
|
-
end
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
module Definition
|
|
20
|
-
def attachment(*args)
|
|
21
|
-
options = args.extract_options!
|
|
22
|
-
|
|
23
|
-
args.each do |name|
|
|
24
|
-
column("#{name}_identifier", :string, options)
|
|
25
|
-
column("#{name}_extension", :string, options)
|
|
26
|
-
column("#{name}_size", :integer, options)
|
|
27
|
-
end
|
|
28
|
-
end
|
|
29
14
|
end
|
|
30
15
|
|
|
31
|
-
|
|
32
16
|
module ClassMethods
|
|
33
17
|
|
|
34
|
-
|
|
35
18
|
# Add an attachment to a class.
|
|
36
19
|
#
|
|
37
20
|
# Options:
|
|
@@ -43,70 +26,13 @@ module Attached
|
|
|
43
26
|
# Usage:
|
|
44
27
|
#
|
|
45
28
|
# has_attached :video
|
|
46
|
-
# has_attached :video, :
|
|
47
|
-
# has_attached :video, styles
|
|
29
|
+
# has_attached :video, storage: :aws
|
|
30
|
+
# has_attached :video, styles: { mov: { size: "480p", format: "mov" } }
|
|
48
31
|
|
|
49
32
|
def has_attached(name, options = {})
|
|
50
|
-
|
|
51
|
-
include InstanceMethods
|
|
52
|
-
|
|
53
|
-
self.attached_options ||= {}
|
|
54
|
-
self.attached_options[name] = options
|
|
55
|
-
|
|
56
|
-
before_save :save_attached
|
|
57
|
-
before_destroy :destroy_attached
|
|
58
|
-
|
|
59
|
-
define_method name do
|
|
60
|
-
attachment_for(name)
|
|
61
|
-
end
|
|
62
|
-
|
|
63
|
-
define_method "#{name}=" do |file|
|
|
64
|
-
attachment_for(name).assign(file)
|
|
65
|
-
end
|
|
66
|
-
|
|
67
|
-
define_method "#{name}?" do
|
|
68
|
-
attachment_for(name).attached?
|
|
69
|
-
end
|
|
70
|
-
|
|
71
|
-
define_method "#{name}_url=" do |url|
|
|
72
|
-
attachment_for(name).url = url
|
|
73
|
-
end
|
|
74
|
-
|
|
75
|
-
validates_each(name) do |record, attr, value|
|
|
76
|
-
attachment = record.attachment_for(name)
|
|
77
|
-
attachment.errors.each do |error|
|
|
78
|
-
record.errors.add(name, error)
|
|
79
|
-
end
|
|
80
|
-
end
|
|
81
|
-
|
|
82
|
-
after_validation do
|
|
83
|
-
|
|
84
|
-
if self.errors.include?(:"#{name}_size")
|
|
85
|
-
self.errors[:"#{name}_size"].each do |message|
|
|
86
|
-
self.errors.add(name, message)
|
|
87
|
-
end
|
|
88
|
-
self.errors[:"#{name}_size"].clear
|
|
89
|
-
end
|
|
90
|
-
|
|
91
|
-
if self.errors.include?(:"#{name}_extension")
|
|
92
|
-
self.errors[:"#{name}_extension"].each do |message|
|
|
93
|
-
self.errors.add(name, message)
|
|
94
|
-
end
|
|
95
|
-
self.errors[:"#{name}_extension"].clear
|
|
96
|
-
end
|
|
97
|
-
|
|
98
|
-
if self.errors.include?(:"#{name}_identifier")
|
|
99
|
-
self.errors[:"#{name}_identifier"].each do |message|
|
|
100
|
-
self.errors.add(name, message)
|
|
101
|
-
end
|
|
102
|
-
self.errors[:"#{name}_identifier"].clear
|
|
103
|
-
end
|
|
104
|
-
|
|
105
|
-
end
|
|
106
|
-
|
|
33
|
+
Attatcher.define(self, name, options)
|
|
107
34
|
end
|
|
108
35
|
|
|
109
|
-
|
|
110
36
|
# Validates an attached size in a specified range or minimum and maximum.
|
|
111
37
|
#
|
|
112
38
|
# Options:
|
|
@@ -118,9 +44,9 @@ module Attached
|
|
|
118
44
|
#
|
|
119
45
|
# Usage:
|
|
120
46
|
#
|
|
121
|
-
# validates_attached_size :avatar, :
|
|
122
|
-
# validates_attached_size :avatar, :
|
|
123
|
-
# validates_attached_size :avatar, :
|
|
47
|
+
# validates_attached_size :avatar, range: 10.megabytes .. 20.megabytes
|
|
48
|
+
# validates_attached_size :avatar, minimum: 10.megabytes, maximum: 20.megabytes
|
|
49
|
+
# validates_attached_size :avatar, message: "size must be between :minimum and :maximum bytes"
|
|
124
50
|
|
|
125
51
|
def validates_attached_size(name, options = {})
|
|
126
52
|
|
|
@@ -141,12 +67,11 @@ module Attached
|
|
|
141
67
|
message.gsub!(/:minimum/, number_to_size(minimum)) unless minimum == zero
|
|
142
68
|
message.gsub!(/:maximum/, number_to_size(maximum)) unless maximum == infi
|
|
143
69
|
|
|
144
|
-
validates_inclusion_of :"#{name}_size", :
|
|
145
|
-
:
|
|
70
|
+
validates_inclusion_of :"#{name}_size", in: range, message: message,
|
|
71
|
+
if: options[:if], unless: options[:unless]
|
|
146
72
|
|
|
147
73
|
end
|
|
148
74
|
|
|
149
|
-
|
|
150
75
|
# Validates an attached extension in a specified set.
|
|
151
76
|
#
|
|
152
77
|
# Options:
|
|
@@ -155,11 +80,11 @@ module Attached
|
|
|
155
80
|
#
|
|
156
81
|
# Usage:
|
|
157
82
|
#
|
|
158
|
-
# validates_attached_extension :avatar, :
|
|
159
|
-
# validates_attached_extension :avatar, :
|
|
160
|
-
# validates_attached_extension :avatar, :
|
|
161
|
-
# validates_attached_extension :avatar, :
|
|
162
|
-
# validates_attached_extension :avatar, :
|
|
83
|
+
# validates_attached_extension :avatar, is: 'png'
|
|
84
|
+
# validates_attached_extension :avatar, in: %w(png jpg)
|
|
85
|
+
# validates_attached_extension :avatar, in: [:png, :jpg]
|
|
86
|
+
# validates_attached_extension :avatar, in: %w(png jpg), message: "extension must be :in"
|
|
87
|
+
# validates_attached_extension :avatar, in: %w(png jpg), message: "extension must be :in"
|
|
163
88
|
|
|
164
89
|
def validates_attached_extension(name, options = {})
|
|
165
90
|
|
|
@@ -170,11 +95,10 @@ module Attached
|
|
|
170
95
|
|
|
171
96
|
range = options[:in].map { |element| ".#{element}" }
|
|
172
97
|
|
|
173
|
-
validates_inclusion_of :"#{name}_extension", :
|
|
174
|
-
:
|
|
98
|
+
validates_inclusion_of :"#{name}_extension", in: range, message: message,
|
|
99
|
+
if: options[:if], unless: options[:unless]
|
|
175
100
|
end
|
|
176
101
|
|
|
177
|
-
|
|
178
102
|
# Validates that an attachment is included.
|
|
179
103
|
#
|
|
180
104
|
# Options:
|
|
@@ -184,22 +108,20 @@ module Attached
|
|
|
184
108
|
# Usage:
|
|
185
109
|
#
|
|
186
110
|
# validates_attached_presence :avatar
|
|
187
|
-
# validates_attached_presence :avatar, :
|
|
111
|
+
# validates_attached_presence :avatar, message: "must be attached"
|
|
188
112
|
|
|
189
113
|
def validates_attached_presence(name, options = {})
|
|
190
114
|
|
|
191
115
|
message = options[:message]
|
|
192
116
|
message ||= "must be attached"
|
|
193
117
|
|
|
194
|
-
validates_presence_of :"#{name}_identifier", :
|
|
195
|
-
:
|
|
118
|
+
validates_presence_of :"#{name}_identifier", message: message,
|
|
119
|
+
if: options[:if], unless: options[:unless]
|
|
196
120
|
|
|
197
121
|
end
|
|
198
122
|
|
|
199
|
-
|
|
200
123
|
private
|
|
201
124
|
|
|
202
|
-
|
|
203
125
|
# Convert a number to a human readable size.
|
|
204
126
|
#
|
|
205
127
|
# Usage:
|
|
@@ -213,9 +135,9 @@ module Attached
|
|
|
213
135
|
return if number == 0.0 / 1.0
|
|
214
136
|
return if number == 1.0 / 0.0
|
|
215
137
|
|
|
216
|
-
singular = options[
|
|
217
|
-
base = options[
|
|
218
|
-
units = options[
|
|
138
|
+
singular = options[:singular] || 1
|
|
139
|
+
base = options[:base] || 1024
|
|
140
|
+
units = options[:units] || ["byte", "kilobyte", "megabyte", "gigabyte", "terabyte", "petabyte"]
|
|
219
141
|
|
|
220
142
|
exponent = (Math.log(number) / Math.log(base)).floor
|
|
221
143
|
|
|
@@ -227,56 +149,6 @@ module Attached
|
|
|
227
149
|
"#{number} #{unit}"
|
|
228
150
|
end
|
|
229
151
|
|
|
230
|
-
|
|
231
152
|
end
|
|
232
153
|
|
|
233
|
-
|
|
234
|
-
module InstanceMethods
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
# Create or access attachment.
|
|
238
|
-
#
|
|
239
|
-
# Usage:
|
|
240
|
-
#
|
|
241
|
-
# attachment_for :avatar
|
|
242
|
-
|
|
243
|
-
def attachment_for(name)
|
|
244
|
-
@_attached_attachments ||= {}
|
|
245
|
-
@_attached_attachments[name] ||= Attachment.new(name, self, self.class.attached_options[name])
|
|
246
|
-
end
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
# Log and save all attached (using specified storage).
|
|
250
|
-
#
|
|
251
|
-
# Usage:
|
|
252
|
-
#
|
|
253
|
-
# before_save :save_attached
|
|
254
|
-
|
|
255
|
-
def save_attached
|
|
256
|
-
logger.info "[attached] save attached"
|
|
257
|
-
|
|
258
|
-
self.class.attached_options.each do |name, options|
|
|
259
|
-
attachment_for(name).save
|
|
260
|
-
end
|
|
261
|
-
end
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
# Log and destroy all attached (using specified storage).
|
|
265
|
-
#
|
|
266
|
-
# Usage:
|
|
267
|
-
#
|
|
268
|
-
# before_save :destroy_attached
|
|
269
|
-
|
|
270
|
-
def destroy_attached
|
|
271
|
-
logger.info "[attached] destroy attached"
|
|
272
|
-
|
|
273
|
-
self.class.attached_options.each do |name, options|
|
|
274
|
-
attachment_for(name).destroy
|
|
275
|
-
end
|
|
276
|
-
end
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
end
|
|
280
|
-
|
|
281
|
-
|
|
282
154
|
end
|
data/lib/attached/attachment.rb
CHANGED
|
@@ -1,18 +1,13 @@
|
|
|
1
1
|
require 'open-uri'
|
|
2
|
-
|
|
3
2
|
require 'identifier'
|
|
4
|
-
|
|
5
3
|
require 'attached/storage'
|
|
6
4
|
require 'attached/storage/error'
|
|
7
|
-
|
|
8
5
|
require 'attached/processor'
|
|
9
6
|
require 'attached/processor/error'
|
|
10
7
|
|
|
11
8
|
module Attached
|
|
12
|
-
|
|
13
9
|
class Attachment
|
|
14
10
|
|
|
15
|
-
|
|
16
11
|
attr_reader :file
|
|
17
12
|
attr_reader :name
|
|
18
13
|
attr_reader :instance
|
|
@@ -33,25 +28,23 @@ module Attached
|
|
|
33
28
|
attr_reader :storage
|
|
34
29
|
attr_reader :host
|
|
35
30
|
|
|
36
|
-
|
|
37
31
|
# A default set of options that can be extended to customize the path, storage or credentials.
|
|
38
32
|
#
|
|
39
33
|
# Usage:
|
|
40
34
|
#
|
|
41
|
-
# Attached::Attachment.options = { :
|
|
35
|
+
# Attached::Attachment.options = { storage: :fs, path: ":name/:style/:identifier:extension" }
|
|
42
36
|
|
|
43
37
|
def self.options
|
|
44
38
|
@options ||= {
|
|
45
|
-
:
|
|
46
|
-
:
|
|
47
|
-
:
|
|
48
|
-
:
|
|
49
|
-
:
|
|
50
|
-
:
|
|
39
|
+
path: ":name/:style/:identifier:extension",
|
|
40
|
+
missing: ":name/:style/missing:extension",
|
|
41
|
+
default: :original,
|
|
42
|
+
medium: :local,
|
|
43
|
+
credentials: {},
|
|
44
|
+
metadata: { 'Cache-Control' => 'max-age=3153600' }
|
|
51
45
|
}
|
|
52
46
|
end
|
|
53
47
|
|
|
54
|
-
|
|
55
48
|
# Initialize a new attachment by providing a name and the instance the attachment is associated with.
|
|
56
49
|
#
|
|
57
50
|
# Parameters:
|
|
@@ -71,7 +64,7 @@ module Attached
|
|
|
71
64
|
# * :aliases - An array of aliases
|
|
72
65
|
|
|
73
66
|
def initialize(name, instance, options = {})
|
|
74
|
-
options
|
|
67
|
+
options = self.class.options.clone.merge(options)
|
|
75
68
|
|
|
76
69
|
options[:styles] ||= {}
|
|
77
70
|
options[:aliases] ||= []
|
|
@@ -79,11 +72,9 @@ module Attached
|
|
|
79
72
|
|
|
80
73
|
@name = name
|
|
81
74
|
@instance = instance
|
|
82
|
-
|
|
83
75
|
@queue = {}
|
|
84
76
|
@purge = []
|
|
85
77
|
@errors = []
|
|
86
|
-
|
|
87
78
|
@path = options[:path]
|
|
88
79
|
@missing = options[:missing]
|
|
89
80
|
@styles = options[:styles]
|
|
@@ -95,16 +86,12 @@ module Attached
|
|
|
95
86
|
@processor = options[:processor]
|
|
96
87
|
@aliases = options[:aliases]
|
|
97
88
|
@alias = options[:alias]
|
|
98
|
-
|
|
99
89
|
@aliases = self.aliases << self.alias if self.alias
|
|
100
90
|
@processors = self.processors << self.processor if self.processor
|
|
101
|
-
|
|
102
91
|
@storage = Attached::Storage.storage(self.medium, self.credentials)
|
|
103
|
-
|
|
104
92
|
@host = self.storage.host
|
|
105
93
|
end
|
|
106
94
|
|
|
107
|
-
|
|
108
95
|
# Check if an attachment has been modified.
|
|
109
96
|
#
|
|
110
97
|
# Usage:
|
|
@@ -115,7 +102,6 @@ module Attached
|
|
|
115
102
|
instance.changed.include? "#{name}_identifier"
|
|
116
103
|
end
|
|
117
104
|
|
|
118
|
-
|
|
119
105
|
# Check if an attachment is present.
|
|
120
106
|
#
|
|
121
107
|
# Usage:
|
|
@@ -126,7 +112,6 @@ module Attached
|
|
|
126
112
|
not identifier.blank?
|
|
127
113
|
end
|
|
128
114
|
|
|
129
|
-
|
|
130
115
|
# Check if an attachment is present.
|
|
131
116
|
#
|
|
132
117
|
# Usage:
|
|
@@ -137,7 +122,6 @@ module Attached
|
|
|
137
122
|
not identifier.blank?
|
|
138
123
|
end
|
|
139
124
|
|
|
140
|
-
|
|
141
125
|
# Custom setter for specifying an attachment.
|
|
142
126
|
#
|
|
143
127
|
# Usage:
|
|
@@ -148,7 +132,6 @@ module Attached
|
|
|
148
132
|
@file = file.respond_to?(:tempfile) ? file.tempfile : file
|
|
149
133
|
end
|
|
150
134
|
|
|
151
|
-
|
|
152
135
|
# Assign an attachment to a file.
|
|
153
136
|
#
|
|
154
137
|
# Usage:
|
|
@@ -162,7 +145,6 @@ module Attached
|
|
|
162
145
|
extension ||= file.extension if file.respond_to? :extension
|
|
163
146
|
extension ||= File.extname(file.original_filename) if file.respond_to? :original_filename
|
|
164
147
|
extension ||= File.extname(file.path) if file.respond_to? :path
|
|
165
|
-
|
|
166
148
|
size ||= file.size if file.respond_to? :size
|
|
167
149
|
size ||= File.size(file.path) if file.respond_to? :path
|
|
168
150
|
end
|
|
@@ -176,7 +158,6 @@ module Attached
|
|
|
176
158
|
process if file
|
|
177
159
|
end
|
|
178
160
|
|
|
179
|
-
|
|
180
161
|
# Assign an attachment to a file.
|
|
181
162
|
#
|
|
182
163
|
# Usage:
|
|
@@ -185,16 +166,12 @@ module Attached
|
|
|
185
166
|
|
|
186
167
|
def url=(url)
|
|
187
168
|
extension = File.extname(url)
|
|
188
|
-
|
|
189
169
|
file = Tempfile.new(["", extension])
|
|
190
170
|
file.binmode
|
|
191
|
-
|
|
192
171
|
file << open(url).read
|
|
193
|
-
|
|
194
172
|
self.assign(file)
|
|
195
173
|
end
|
|
196
174
|
|
|
197
|
-
|
|
198
175
|
# Save an attachment.
|
|
199
176
|
#
|
|
200
177
|
# Usage:
|
|
@@ -206,16 +183,13 @@ module Attached
|
|
|
206
183
|
path = self.path(style)
|
|
207
184
|
self.storage.save(file, path) if file and path
|
|
208
185
|
end
|
|
209
|
-
|
|
210
186
|
self.purge.each do |path|
|
|
211
187
|
self.storage.destroy(path)
|
|
212
188
|
end
|
|
213
|
-
|
|
214
189
|
@purge = []
|
|
215
190
|
@queue = {}
|
|
216
191
|
end
|
|
217
192
|
|
|
218
|
-
|
|
219
193
|
# Destroy an attachment.
|
|
220
194
|
#
|
|
221
195
|
# Usage:
|
|
@@ -229,12 +203,10 @@ module Attached
|
|
|
229
203
|
self.storage.destroy(self.path(style))
|
|
230
204
|
end
|
|
231
205
|
end
|
|
232
|
-
|
|
233
206
|
@purge = []
|
|
234
207
|
@queue = {}
|
|
235
208
|
end
|
|
236
209
|
|
|
237
|
-
|
|
238
210
|
# Acesss the URL for an attachment.
|
|
239
211
|
#
|
|
240
212
|
# Usage:
|
|
@@ -245,14 +217,11 @@ module Attached
|
|
|
245
217
|
|
|
246
218
|
def url(style = self.default)
|
|
247
219
|
path = self.path(style)
|
|
248
|
-
|
|
249
220
|
host = self.host
|
|
250
221
|
host = self.aliases[path.hash % self.aliases.count] unless self.aliases.empty?
|
|
251
|
-
|
|
252
222
|
return "#{host}#{path}"
|
|
253
223
|
end
|
|
254
224
|
|
|
255
|
-
|
|
256
225
|
# Access the path for an attachment.
|
|
257
226
|
#
|
|
258
227
|
# Usage:
|
|
@@ -263,16 +232,13 @@ module Attached
|
|
|
263
232
|
|
|
264
233
|
def path(style = self.default)
|
|
265
234
|
path = self.attached? ? @path.clone : @missing.clone
|
|
266
|
-
|
|
267
235
|
path.gsub!(/:name/, name.to_s)
|
|
268
236
|
path.gsub!(/:style/, style.to_s)
|
|
269
237
|
path.gsub!(/:extension/, extension(style).to_s)
|
|
270
238
|
path.gsub!(/:identifier/, identifier(style).to_s)
|
|
271
|
-
|
|
272
239
|
return path
|
|
273
240
|
end
|
|
274
241
|
|
|
275
|
-
|
|
276
242
|
# Access the size for an attachment.
|
|
277
243
|
#
|
|
278
244
|
# Usage:
|
|
@@ -283,7 +249,6 @@ module Attached
|
|
|
283
249
|
return instance_get(:size)
|
|
284
250
|
end
|
|
285
251
|
|
|
286
|
-
|
|
287
252
|
# Access the status for an attachment.
|
|
288
253
|
#
|
|
289
254
|
# Usage:
|
|
@@ -294,7 +259,6 @@ module Attached
|
|
|
294
259
|
instance_get(:status)
|
|
295
260
|
end
|
|
296
261
|
|
|
297
|
-
|
|
298
262
|
# Access the extension for an attachment. It will first check the styles
|
|
299
263
|
# to see if one is specified before checking the instance.
|
|
300
264
|
#
|
|
@@ -310,7 +274,6 @@ module Attached
|
|
|
310
274
|
instance_get(:extension)
|
|
311
275
|
end
|
|
312
276
|
|
|
313
|
-
|
|
314
277
|
# Access the identifier for an attachment. It will first check the styles
|
|
315
278
|
# to see if one is specified before checking the instance.
|
|
316
279
|
#
|
|
@@ -326,7 +289,6 @@ module Attached
|
|
|
326
289
|
instance_get(:identifier)
|
|
327
290
|
end
|
|
328
291
|
|
|
329
|
-
|
|
330
292
|
# Set the size for an attachment.
|
|
331
293
|
#
|
|
332
294
|
# Usage:
|
|
@@ -337,7 +299,6 @@ module Attached
|
|
|
337
299
|
instance_set(:size, size)
|
|
338
300
|
end
|
|
339
301
|
|
|
340
|
-
|
|
341
302
|
# Set the status for an attachment.
|
|
342
303
|
#
|
|
343
304
|
# Usage:
|
|
@@ -348,7 +309,6 @@ module Attached
|
|
|
348
309
|
instance_set(:size, status)
|
|
349
310
|
end
|
|
350
311
|
|
|
351
|
-
|
|
352
312
|
# Set the extension for an attachment. It will act independently of the
|
|
353
313
|
# defined style.
|
|
354
314
|
#
|
|
@@ -360,7 +320,6 @@ module Attached
|
|
|
360
320
|
instance_set(:extension, extension)
|
|
361
321
|
end
|
|
362
322
|
|
|
363
|
-
|
|
364
323
|
# Set the identifier for an attachment. It will act independently of the
|
|
365
324
|
# defined style.
|
|
366
325
|
#
|
|
@@ -372,19 +331,15 @@ module Attached
|
|
|
372
331
|
instance_set(:identifier, identifier)
|
|
373
332
|
end
|
|
374
333
|
|
|
375
|
-
|
|
376
334
|
# Access the original file .
|
|
377
335
|
|
|
378
336
|
def reprocess!
|
|
379
337
|
self.file = self.storage.retrieve(self.path)
|
|
380
|
-
|
|
381
338
|
process
|
|
382
339
|
end
|
|
383
340
|
|
|
384
|
-
|
|
385
341
|
private
|
|
386
342
|
|
|
387
|
-
|
|
388
343
|
# Helper function for calling processors (will queue default).
|
|
389
344
|
#
|
|
390
345
|
# Usage:
|
|
@@ -393,22 +348,18 @@ module Attached
|
|
|
393
348
|
|
|
394
349
|
def process
|
|
395
350
|
self.queue[self.default] = self.file
|
|
396
|
-
|
|
397
351
|
begin
|
|
398
|
-
|
|
399
352
|
self.processors.each do |processor|
|
|
400
353
|
processor = Attached::Processor.processor(processor)
|
|
401
354
|
self.styles.each do |style, options|
|
|
402
355
|
self.queue[style] = processor.process(self.queue[style] || self.file, options, self)
|
|
403
356
|
end
|
|
404
357
|
end
|
|
405
|
-
|
|
406
358
|
rescue Attached::Processor::Error => error
|
|
407
359
|
self.errors << error.message
|
|
408
360
|
end
|
|
409
361
|
end
|
|
410
362
|
|
|
411
|
-
|
|
412
363
|
# Helper function for setting instance variables.
|
|
413
364
|
#
|
|
414
365
|
# Usage:
|
|
@@ -420,7 +371,6 @@ module Attached
|
|
|
420
371
|
self.instance.send(setter, value) if instance.respond_to?(setter)
|
|
421
372
|
end
|
|
422
373
|
|
|
423
|
-
|
|
424
374
|
# Helper function for getting instance variables.
|
|
425
375
|
#
|
|
426
376
|
# Usage:
|
|
@@ -432,7 +382,5 @@ module Attached
|
|
|
432
382
|
self.instance.send(getter) if instance.respond_to?(getter)
|
|
433
383
|
end
|
|
434
384
|
|
|
435
|
-
|
|
436
385
|
end
|
|
437
|
-
|
|
438
386
|
end
|