radiant-clipped-extension 1.0.12 → 1.0.13
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.
- data/README.md +1 -1
- data/app/models/asset.rb +11 -9
- data/clipped_extension.rb +1 -0
- data/config/initializers/radiant_config.rb +37 -4
- data/lib/cloud.rb +39 -0
- data/lib/radiant-clipped-extension.rb +2 -2
- metadata +9 -5
data/README.md
CHANGED
@@ -28,7 +28,7 @@ At the moment I think uploads probably don't work in IE7. See github for more is
|
|
28
28
|
|
29
29
|
## Requirements
|
30
30
|
|
31
|
-
The `paperclip`, `uuidtools` and `acts_as_list` gems are required. For
|
31
|
+
The `paperclip`, `uuidtools` and `acts_as_list` gems are required. For cloud storage you need the `fog` gem.
|
32
32
|
|
33
33
|
Paperclip's post-processors require ImageMagick. PDF-thumbnailing also requires ghostscript, which is usually
|
34
34
|
installed with ImageMagick anyway, and if you want to generate thumbnails from video clips then you also need FFmpeg.
|
data/app/models/asset.rb
CHANGED
@@ -39,15 +39,17 @@ class Asset < ActiveRecord::Base
|
|
39
39
|
asset.paperclip_processors
|
40
40
|
},
|
41
41
|
:whiny => false,
|
42
|
-
:storage =>
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
:
|
49
|
-
|
50
|
-
:
|
42
|
+
:storage => RadiantClippedExtension::Cloud.storage ||
|
43
|
+
:filesystem,
|
44
|
+
:path => Radiant.config["paperclip.path"],
|
45
|
+
:fog_credentials => RadiantClippedExtension::Cloud.credentials,
|
46
|
+
:fog_directory => Radiant.config["paperclip.fog.directory"] ||
|
47
|
+
Radiant.config["paperclip.s3.bucket"],
|
48
|
+
:fog_public => Radiant.config["paperclip.fog.public?"] ||
|
49
|
+
true,
|
50
|
+
:fog_host => Radiant.config["paperclip.fog.host"] ||
|
51
|
+
"http://#{Radiant.config['paperclip.s3.host_alias']}" ||
|
52
|
+
"http://#{Radiant.config['paperclip.url']}"
|
51
53
|
|
52
54
|
before_save :assign_title
|
53
55
|
before_save :assign_uuid
|
data/clipped_extension.rb
CHANGED
@@ -3,16 +3,49 @@ Radiant.config do |config|
|
|
3
3
|
pc.define 'url', :default => '/:class/:id/:basename:no_original_style.:extension'
|
4
4
|
pc.define 'path', :default => ':rails_root/public/:class/:id/:basename:no_original_style.:extension', :allow_change => true
|
5
5
|
pc.define 'skip_filetype_validation', :default => true, :type => :boolean
|
6
|
-
pc.define 'storage', :default
|
7
|
-
:select_from
|
8
|
-
|
6
|
+
pc.define 'storage', :default => 'filesystem',
|
7
|
+
:select_from => {
|
8
|
+
'File System' => 'filesystem',
|
9
|
+
'Amazon S3' => 'fog',
|
10
|
+
'Google Storage' => 'fog',
|
11
|
+
'Rackspace Cloud Files' => 'fog'
|
12
|
+
},
|
13
|
+
:allow_blank => false,
|
9
14
|
:allow_display => false
|
10
|
-
|
15
|
+
|
16
|
+
pc.namespace 'fog' do |fog|
|
17
|
+
fog.define 'provider', :select_from => {
|
18
|
+
'Amazon S3' => 'AWS',
|
19
|
+
'Google Storage' => 'Google',
|
20
|
+
'Rackspace Cloud Files' => 'Rackspace'
|
21
|
+
}
|
22
|
+
fog.define 'directory'
|
23
|
+
fog.define 'public?', :default => true
|
24
|
+
fog.define 'host'
|
25
|
+
end
|
26
|
+
|
27
|
+
pc.namespace 'google_storage' do |gs|
|
28
|
+
gs.define 'access_key_id'
|
29
|
+
gs.define 'secret_access_key'
|
30
|
+
end
|
31
|
+
|
32
|
+
pc.namespace 'rackspace' do |rs|
|
33
|
+
rs.define 'username'
|
34
|
+
rs.define 'api_key'
|
35
|
+
end
|
36
|
+
|
11
37
|
pc.namespace 's3' do |s3|
|
12
38
|
s3.define 'bucket'
|
13
39
|
s3.define 'key'
|
14
40
|
s3.define 'secret'
|
15
41
|
s3.define 'host_alias'
|
42
|
+
s3.define 'region', :select_from => {
|
43
|
+
'Asia North East' => 'ap-northeast-1',
|
44
|
+
'Asia South East' => 'ap-southeast-1',
|
45
|
+
'EU West' => 'eu-west-1',
|
46
|
+
'US East' => 'us-east-1',
|
47
|
+
'US West' => 'us-west-1'
|
48
|
+
}
|
16
49
|
end
|
17
50
|
end
|
18
51
|
|
data/lib/cloud.rb
ADDED
@@ -0,0 +1,39 @@
|
|
1
|
+
module RadiantClippedExtension
|
2
|
+
|
3
|
+
module Cloud
|
4
|
+
|
5
|
+
def self.credentials
|
6
|
+
case Radiant.config["paperclip.fog.provider"]
|
7
|
+
when "AWS"
|
8
|
+
return {
|
9
|
+
:provider => "AWS",
|
10
|
+
:aws_access_key_id => Radiant.config["paperclip.s3.key"],
|
11
|
+
:aws_secret_access_key => Radiant.config["paperclip.s3.secret"],
|
12
|
+
:region => Radiant.config["paperclip.s3.region"],
|
13
|
+
}
|
14
|
+
when "Google"
|
15
|
+
return {
|
16
|
+
:provider => "Google",
|
17
|
+
:rackspace_username => Radiant.config["paperclip.google_storage.access_key_id"],
|
18
|
+
:rackspace_api_key => Radiant.config["paperclip.google_storage.secret_access_key"]
|
19
|
+
}
|
20
|
+
when "Rackspace"
|
21
|
+
return {
|
22
|
+
:provider => "Rackspace",
|
23
|
+
:rackspace_username => Radiant.config["paperclip.rackspace.username"],
|
24
|
+
:rackspace_api_key => Radiant.config["paperclip.rackspace.api_key"]
|
25
|
+
}
|
26
|
+
end
|
27
|
+
end
|
28
|
+
|
29
|
+
def self.storage
|
30
|
+
if Radiant.config["paperclip.storage"] == "s3"
|
31
|
+
:fog
|
32
|
+
else
|
33
|
+
Radiant.config["paperclip.storage"]
|
34
|
+
end
|
35
|
+
end
|
36
|
+
|
37
|
+
end
|
38
|
+
|
39
|
+
end
|
@@ -1,8 +1,8 @@
|
|
1
1
|
module RadiantClippedExtension
|
2
|
-
VERSION = "1.0.
|
2
|
+
VERSION = "1.0.13"
|
3
3
|
SUMMARY = %q{Assets for Radiant CMS}
|
4
4
|
DESCRIPTION = %q{Asset-management derived from Keith Bingman's Paperclipped extension.}
|
5
5
|
URL = "http://radiantcms.org"
|
6
|
-
AUTHORS = ["Keith Bingman", "Benny Degezelle", "William Ross", "John W. Long"]
|
6
|
+
AUTHORS = ["Keith Bingman", "Benny Degezelle", "William Ross", "John W. Long", "John Muhl"]
|
7
7
|
EMAIL = ["radiant@radiantcms.org"]
|
8
8
|
end
|
metadata
CHANGED
@@ -1,24 +1,26 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: radiant-clipped-extension
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash:
|
4
|
+
hash: 13
|
5
5
|
prerelease:
|
6
6
|
segments:
|
7
7
|
- 1
|
8
8
|
- 0
|
9
|
-
-
|
10
|
-
version: 1.0.
|
9
|
+
- 13
|
10
|
+
version: 1.0.13
|
11
11
|
platform: ruby
|
12
12
|
authors:
|
13
13
|
- Keith Bingman
|
14
14
|
- Benny Degezelle
|
15
15
|
- William Ross
|
16
16
|
- John W. Long
|
17
|
+
- John Muhl
|
17
18
|
autorequire:
|
18
19
|
bindir: bin
|
19
20
|
cert_chain: []
|
20
21
|
|
21
|
-
date: 2011-
|
22
|
+
date: 2011-11-08 00:00:00 +00:00
|
23
|
+
default_executable:
|
22
24
|
dependencies:
|
23
25
|
- !ruby/object:Gem::Dependency
|
24
26
|
name: acts_as_list
|
@@ -131,6 +133,7 @@ files:
|
|
131
133
|
- features/support/paths.rb
|
132
134
|
- lib/asset_tags.rb
|
133
135
|
- lib/clipped_admin_ui.rb
|
136
|
+
- lib/cloud.rb
|
134
137
|
- lib/page_asset_associations.rb
|
135
138
|
- lib/paperclip/frame_grab.rb
|
136
139
|
- lib/paperclip/geometry_transformation.rb
|
@@ -200,6 +203,7 @@ files:
|
|
200
203
|
- wireframes/edit-page-assets.png
|
201
204
|
- wireframes/edit-page.bmml
|
202
205
|
- wireframes/edit-page.png
|
206
|
+
has_rdoc: true
|
203
207
|
homepage: http://radiantcms.org
|
204
208
|
licenses: []
|
205
209
|
|
@@ -229,7 +233,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
229
233
|
requirements: []
|
230
234
|
|
231
235
|
rubyforge_project:
|
232
|
-
rubygems_version: 1.
|
236
|
+
rubygems_version: 1.5.3
|
233
237
|
signing_key:
|
234
238
|
specification_version: 3
|
235
239
|
summary: Assets for Radiant CMS
|