radiant-clipped-extension 1.0.6 → 1.0.7

Sign up to get free protection for your applications and to get access to all the features.
data/Rakefile CHANGED
@@ -12,7 +12,7 @@ unless defined? RADIANT_ROOT
12
12
  end
13
13
 
14
14
  require 'rake'
15
- require 'rake/rdoctask'
15
+ require 'rdoc/task'
16
16
  require 'rake/testtask'
17
17
 
18
18
  rspec_base = File.expand_path(RADIANT_ROOT + '/vendor/plugins/rspec/lib')
@@ -97,7 +97,7 @@ namespace :spec do
97
97
  end
98
98
 
99
99
  desc 'Generate documentation for the clipped extension.'
100
- Rake::RDocTask.new(:rdoc) do |rdoc|
100
+ RDoc::Task.new(:rdoc) do |rdoc|
101
101
  rdoc.rdoc_dir = 'rdoc'
102
102
  rdoc.title = 'ClippedExtension'
103
103
  rdoc.options << '--line-numbers' << '--inline-source'
data/app/models/asset.rb CHANGED
@@ -1,14 +1,13 @@
1
1
  class Asset < ActiveRecord::Base
2
-
3
2
  has_many :page_attachments, :dependent => :destroy
4
3
  has_many :pages, :through => :page_attachments
5
4
  has_site if respond_to? :has_site
6
5
 
7
6
  belongs_to :created_by, :class_name => 'User'
8
7
  belongs_to :updated_by, :class_name => 'User'
9
-
8
+
10
9
  default_scope :order => "created_at DESC"
11
-
10
+
12
11
  named_scope :latest, lambda { |limit|
13
12
  { :order => "created_at DESC", :limit => limit }
14
13
  }
@@ -103,10 +102,13 @@ class Asset < ActiveRecord::Base
103
102
  end
104
103
 
105
104
  def geometry(style_name='original')
106
- if style_name == 'original'
105
+ @geometry ||= {}
106
+ @geometry[style_name] ||= if style_name.to_s == 'original'
107
107
  original_geometry
108
- elsif style = asset.styles[style_name.to_sym] # asset.styles is normalised, but self.paperclip_styles is not
108
+ elsif style = self.asset.styles[style_name.to_sym] # self.asset.styles holds Style objects, where self.paperclip_styles is still just rule hashes
109
109
  original_geometry.transformed_by(style.geometry)
110
+ else
111
+ raise PaperclipError, "Requested style #{style_name} is not defined."
110
112
  end
111
113
  end
112
114
 
@@ -146,7 +148,7 @@ class Asset < ActiveRecord::Base
146
148
  end
147
149
 
148
150
  def dimensions_known?
149
- !original_width.blank? && !original_height.blank?
151
+ original_width? && original_height?
150
152
  end
151
153
 
152
154
  private
@@ -168,11 +170,11 @@ private
168
170
  end
169
171
 
170
172
  def assign_title
171
- self.title = basename if title.blank?
173
+ self.title = basename unless title?
172
174
  end
173
175
 
174
176
  def assign_uuid
175
- self.uuid = UUIDTools::UUID.timestamp_create.to_s if uuid.blank?
177
+ self.uuid = UUIDTools::UUID.timestamp_create.to_s unless uuid?
176
178
  end
177
179
 
178
180
  class << self
@@ -23,6 +23,7 @@ class AssetType
23
23
  @icon_name = options[:icon] || name
24
24
  @processors = options[:processors] || []
25
25
  @styles = options[:styles] || {}
26
+ @styles = standard_styles if @styles == :standard
26
27
  @default_radius_tag = options[:default_radius_tag] || 'link'
27
28
  @extensions = options[:extensions] || []
28
29
  @extensions.each { |ext| @@extension_lookup[ext] ||= self }
@@ -46,7 +47,7 @@ class AssetType
46
47
  end
47
48
 
48
49
  def icon(style_name='icon')
49
- if File.exist?("#{RAILS_ROOT}/public/images/admin/assets/#{icon_name}_#{style_name.to_s}.png")
50
+ if File.exist?(Rails.root + "public/images/admin/assets/#{icon_name}_#{style_name.to_s}.png")
50
51
  return "/images/admin/assets/#{icon_name}_#{style_name.to_s}.png"
51
52
  else
52
53
  return "/images/admin/assets/#{icon_name}_icon.png"
@@ -54,7 +55,7 @@ class AssetType
54
55
  end
55
56
 
56
57
  def icon_path(style_name='icon')
57
- "#{RAILS_ROOT}/public#{icon(style_name)}"
58
+ Rails.root + "public#{icon(style_name)}"
58
59
  end
59
60
 
60
61
  def condition
@@ -89,24 +90,68 @@ class AssetType
89
90
  Radiant.config["assets.create_#{name}_thumbnails?"] ? processors : []
90
91
  end
91
92
 
93
+ # Parses and combines the various ways in which paperclip styles can be defined, and normalises them into
94
+ # the format that paperclip expects. Note that :styles => :standard has already been replaced with the
95
+ # results of a call to standard_styles.
96
+ # Styles are passed to paperclip as a hash and arbitrary keys can be passed through from configuration.
97
+ #
92
98
  def paperclip_styles
93
- if paperclip_processors.any?
94
- #TODO: define permitted options for each asset type and pass through that subset of the style-definition hash
95
- @paperclip_styles ||= styles.reverse_merge(configured_styles.inject({}) {|h, (k, v)| h[k] = v[:format].blank? ? v[:size] : [v[:size], v[:format].to_sym]; h})
99
+ # Styles are not relevant if processors are not defined.
100
+ # TODO: should this default to an icon set?
101
+ @paperclip_styles ||= if paperclip_processors.any?
102
+ normalize_style_rules(configured_styles.merge(styles))
96
103
  else
97
104
  {}
98
105
  end
106
+ @paperclip_styles
107
+ end
108
+
109
+ # Takes a motley collection of differently-defined styles and renders them into the standard hash-of-hashes format.
110
+ # Solitary strings are assumed to be
111
+ #TODO: define permitted and/or expected options for the asset type and pass through that subset of the style-definition hash
112
+ #
113
+ def normalize_style_rules(styles={})
114
+ styles.each_pair do |name, rule|
115
+ unless rule.is_a? Hash
116
+ if rule =~ /\=/
117
+ parameters = rule.split(',').collect{ |parameter| parameter.split('=') } # array of pairs
118
+ rule = Hash[parameters].symbolize_keys # into hash of :first => last
119
+ else
120
+ rule = {:geometry => rule} # simplest case: name:geom|name:geom
121
+ end
122
+ end
123
+ rule[:geometry] ||= rule.delete(:size)
124
+ styles[name.to_sym] = rule
125
+ end
126
+ styles
127
+ end
128
+
129
+ def standard_styles
130
+ {
131
+ :native => { :geometry => "", :format => :jpg },
132
+ :icon => { :geometry => '42x42#', :format => :png },
133
+ :thumbnail => { :geometry => '100x100#', :format => :png }
134
+ }
99
135
  end
100
136
 
137
+ # Paperclip styles are defined in the config entry `assets.thumbnails.asset_type`, with the format:
138
+ # foo:key-x,key=y,key=z|bar:key-x,key=y,key=z
139
+ # where 'key' can be any parameter understood by your paperclip processors. Usually they include :geometry and :format.
140
+ # A typical entry would be:
141
+ #
142
+ # standard:geometry=640x640>,format=jpg
143
+ #
144
+ # This method parses that string and returns the defined styles as a hash of style-defining strings that will later be normalized into hashes.
145
+ #
101
146
  def configured_styles
102
- styles = {}
103
- if style_definitions = Radiant.config["assets.thumbnails.#{name}"]
104
- style_definitions.to_s.gsub(' ','').split('|').each do |definition|
147
+ @configured_styles ||= if style_definitions = Radiant.config["assets.thumbnails.#{name}"]
148
+ style_definitions.gsub(/\s/,'').split('|').each_with_object({}) do |definition, styles|
105
149
  name, rule = definition.split(':')
106
- styles[name.to_sym] = rule.split(',').collect{|option| option.split('=')}.inject({}) {|h, (k, v)| h[k.to_sym] = v; h}
150
+ styles[name.to_sym] = rule
107
151
  end
152
+ else
153
+ {}
108
154
  end
109
- styles
110
155
  end
111
156
 
112
157
  def legacy_styles
@@ -115,7 +160,7 @@ class AssetType
115
160
 
116
161
  def style_dimensions(style_name)
117
162
  if style = paperclip_styles[style_name.to_sym]
118
- style.is_a?(Array) ? style.first : style
163
+ style[:size]
119
164
  end
120
165
  end
121
166
 
@@ -6,7 +6,7 @@
6
6
  %p
7
7
  = t("clipped_extension.no_assets")
8
8
  - else
9
- - if with_pagination && assets.respond_to?(:previous_page) && assets.previous_page
9
+ - if with_pagination && assets.respond_to?(:total_pages) && assets.total_pages > 1
10
10
  = pagination_for(assets, pagination_parameters.merge(:depaginate => false, :params => {:controller => 'admin/assets', :action => 'index', :id => nil, :format => 'js'}))
11
11
 
12
12
  %ul
@@ -26,5 +26,5 @@
26
26
  %li= link_to t('clipped_extension.edit'), admin_asset_path(asset), :class => 'edit'
27
27
  %li= link_to t("clipped_extension.remove"), remove_admin_asset_path(asset), :class => "delete"
28
28
 
29
- - if with_pagination && assets.respond_to?(:next_page) && assets.next_page
29
+ - if with_pagination && assets.respond_to?(:total_pages) && assets.total_pages > 1
30
30
  = pagination_for(assets, pagination_parameters.merge(:depaginate => false, :param_name => 'p', :params => {:controller => 'admin/assets', :action => 'index', :id => nil, :format => 'js', :page_id => (page && page.id), :pp => assets.per_page }))
data/clipped_extension.rb CHANGED
@@ -18,12 +18,12 @@ class ClippedExtension < Radiant::Extension
18
18
  Page.send :include, AssetTags # radius tags for selecting sets of assets and presenting each one
19
19
  UserActionObserver.instance.send :add_observer!, Asset # the usual creator- and updater-stamping
20
20
 
21
- AssetType.new :image, :icon => 'image', :default_radius_tag => 'image', :processors => [:thumbnail], :styles => {:icon => ['42x42#', :png], :thumbnail => ['100x100#', :png]}, :extensions => %w[jpg jpeg png gif], :mime_types => %w[image/png image/x-png image/jpeg image/pjpeg image/jpg image/gif]
22
- AssetType.new :video, :icon => 'video', :processors => [:frame_grab], :styles => {:native => ['', :jpg], :icon => ['42x42#', :png], :thumbnail => ['100x100#', :png]}, :mime_types => %w[application/x-mp4 video/mpeg video/quicktime video/x-la-asf video/x-ms-asf video/x-msvideo video/x-sgi-movie video/x-flv flv-application/octet-stream video/3gpp video/3gpp2 video/3gpp-tt video/BMPEG video/BT656 video/CelB video/DV video/H261 video/H263 video/H263-1998 video/H263-2000 video/H264 video/JPEG video/MJ2 video/MP1S video/MP2P video/MP2T video/mp4 video/MP4V-ES video/MPV video/mpeg4 video/mpeg4-generic video/nv video/parityfec video/pointer video/raw video/rtx video/ogg video/webm]
21
+ AssetType.new :image, :icon => 'image', :default_radius_tag => 'image', :processors => [:thumbnail], :styles => :standard, :extensions => %w[jpg jpeg png gif], :mime_types => %w[image/png image/x-png image/jpeg image/pjpeg image/jpg image/gif]
22
+ AssetType.new :video, :icon => 'video', :processors => [:frame_grab], :styles => :standard, :mime_types => %w[application/x-mp4 video/mpeg video/quicktime video/x-la-asf video/x-ms-asf video/x-msvideo video/x-sgi-movie video/x-flv flv-application/octet-stream video/3gpp video/3gpp2 video/3gpp-tt video/BMPEG video/BT656 video/CelB video/DV video/H261 video/H263 video/H263-1998 video/H263-2000 video/H264 video/JPEG video/MJ2 video/MP1S video/MP2P video/MP2T video/mp4 video/MP4V-ES video/MPV video/mpeg4 video/mpeg4-generic video/nv video/parityfec video/pointer video/raw video/rtx video/ogg video/webm]
23
23
  AssetType.new :audio, :icon => 'audio', :mime_types => %w[audio/mpeg audio/mpg audio/ogg application/ogg audio/x-ms-wma audio/vnd.rn-realaudio audio/x-wav]
24
24
  AssetType.new :font, :icon => 'font', :extensions => %w[ttf otf eot woff]
25
25
  AssetType.new :flash, :icon => 'flash', :default_radius_tag => 'flash', :extensions => %w{swf}, :mime_types => %w[application/x-shockwave-flash]
26
- AssetType.new :pdf, :icon => 'pdf', :processors => [:thumbnail], :extensions => %w{pdf}, :mime_types => %w[application/pdf application/x-pdf], :styles => {:icon => ['42x42#', :png], :thumbnail => ['100x100#', :png]}
26
+ AssetType.new :pdf, :icon => 'pdf', :processors => [:thumbnail], :extensions => %w{pdf}, :mime_types => %w[application/pdf application/x-pdf], :styles => :standard
27
27
  AssetType.new :document, :icon => 'document', :mime_types => %w[application/msword application/rtf application/vnd.ms-excel application/vnd.ms-powerpoint application/vnd.ms-project application/vnd.ms-works text/plain text/html]
28
28
  AssetType.new :other, :icon => 'unknown'
29
29
 
@@ -22,7 +22,7 @@ Radiant.config do |config|
22
22
  assets.define 'create_pdf_thumbnails?', :default => 'true'
23
23
 
24
24
  assets.namespace 'thumbnails' do |thumbs| # NB :icon and :thumbnail are already defined as fixed formats for use in the admin interface and can't be changed
25
- thumbs.define 'image', :default => 'normal:size=640x640>,format=original|small:size=320x320>,format=original'
25
+ thumbs.define 'image', :default => 'normal:size=640x640>|small:size=320x320>'
26
26
  thumbs.define 'video', :default => 'normal:size=640x640>,format=jpg|small:size=320x320>,format=jpg'
27
27
  thumbs.define 'pdf', :default => 'normal:size=640x640>,format=jpg|small:size=320x320>,format=jpg'
28
28
  end
data/lib/asset_tags.rb CHANGED
@@ -136,7 +136,7 @@ module AssetTags
136
136
  raise TagError, "'container' attribute required" unless options['container']
137
137
  size = options['size'] ? options.delete('size') : 'icon'
138
138
  container = options.delete('container')
139
- (container.to_i - asset.height(size).to_i)/2
139
+ ((container.to_i - asset.height(size).to_i)/2).to_s
140
140
  end
141
141
 
142
142
  ['height','width'].each do |dimension|
@@ -1,8 +1,8 @@
1
1
  module RadiantClippedExtension
2
- VERSION = '1.0.6'
3
- SUMMARY = %q{Assets for Radiant CMS}
2
+ VERSION = "1.0.7"
3
+ SUMMARY = %q{Assets for Radiant CMS}
4
4
  DESCRIPTION = %q{Asset-management derived from Keith Bingman's Paperclipped extension.}
5
- URL = "http://radiantcms.org"
6
- AUTHORS = ["Keith Bingman", "Benny Degezelle", "William Ross", "John W. Long"]
7
- EMAIL = ["radiant@radiantcms.org"]
8
- end
5
+ URL = "http://radiantcms.org"
6
+ AUTHORS = ["Keith Bingman", "Benny Degezelle", "William Ross", "John W. Long"]
7
+ EMAIL = ["radiant@radiantcms.org"]
8
+ end
@@ -4,7 +4,7 @@ p.asset
4
4
  img.preview
5
5
  border: 5px solid white
6
6
  +box-shadow
7
-
7
+
8
8
  .asset_filters
9
9
  float: left
10
10
  padding: 2px 0
@@ -27,12 +27,12 @@ p.asset
27
27
  color: white
28
28
  text-shadow: 0 1px 0 #333
29
29
 
30
- .popup
30
+ .popup
31
31
  div.toolbar
32
32
  background: white
33
- +linear-gradient(color-stops(white, #ddd))
33
+ +background-image(linear-gradient(white,#ddd))
34
34
  border-bottom: 1px solid #ccc
35
- +box-shadow(white, 0, 1px, 0)
35
+ +single-box-shadow(white, 0, 1px, 0)
36
36
  margin: -20px -20px 0
37
37
  padding: 6px 10px 3px 10px
38
38
  font-size: 95%
@@ -62,7 +62,7 @@ p.asset
62
62
  overflow-x: hidden
63
63
  width: 610px
64
64
  height: 310px
65
-
65
+
66
66
  .attachment_actions
67
67
  text-align: right
68
68
  margin-bottom: -1em
@@ -146,7 +146,7 @@ p.asset
146
146
  background: transparent url(/images/admin/spinner.gif) no-repeat center center
147
147
  img
148
148
  opacity: 0.2
149
-
149
+
150
150
  #attachment_list.assets
151
151
  background: #7e7e7e
152
152
  +border-bottom-radius
@@ -171,9 +171,10 @@ p.asset
171
171
  cursor: move
172
172
  &:hover
173
173
  font-weight: bold
174
-
174
+
175
175
  #assets_table.assets
176
176
  position: relative
177
+ overflow: auto
177
178
  p
178
179
  padding: 40px
179
180
  top: 45px
@@ -189,21 +190,36 @@ p.asset
189
190
  display: none
190
191
  div.pagination
191
192
  position: relative
193
+ overflow: hidden
192
194
  clear: left
193
195
  width: 100%
194
- height: 2.3em
195
- font-size: 80%
196
- text-align: center
197
- a
198
- color: white
196
+ height: 4em
197
+ margin: 1em 0
198
+ padding: 0 1em
199
+ span, a
200
+ display: block
201
+ float: left
202
+ padding: 0.25em
203
+ margin: 1em 2px 1em 0
204
+ +border-radius(2px)
199
205
  text-decoration: none
206
+ span.current
207
+ color: #000
208
+ font-weight: bold
209
+ span.disabled
210
+ background-color: #eee
211
+ color: #ccc
212
+ a
213
+ background-color: #eee
214
+ color: #c00
200
215
  &:hover
201
- background-color: #bbb
202
- color: #444
216
+ background-color: #c00
217
+ color: #fff
218
+
203
219
  span
204
- color: #bbb
220
+ color: #888
205
221
  span, a
206
222
  display: block
207
223
  float: left
208
- padding: 5px
224
+ padding: 2px 6px
209
225
  line-height: 1.5em
@@ -12,9 +12,9 @@ Gem::Specification.new do |s|
12
12
  s.summary = RadiantClippedExtension::SUMMARY
13
13
  s.description = RadiantClippedExtension::DESCRIPTION
14
14
 
15
- s.add_dependency 'acts_as_list', "~> 0.1.2"
16
- s.add_dependency 'paperclip', "~> 2.3.16"
17
- s.add_dependency 'uuidtools', "~> 2.1.2"
15
+ s.add_dependency "acts_as_list", "~> 0.1.2"
16
+ s.add_dependency "paperclip", "~> 2.3.16"
17
+ s.add_dependency "uuidtools", "~> 2.1.2"
18
18
 
19
19
  ignores = if File.exist?('.gitignore')
20
20
  File.read('.gitignore').split("\n").inject([]) {|a,p| a + Dir[p] }
@@ -25,9 +25,4 @@ Gem::Specification.new do |s|
25
25
  s.test_files = Dir['test/**/*','spec/**/*','features/**/*'] - ignores
26
26
  # s.executables = Dir['bin/*'] - ignores
27
27
  s.require_paths = ["lib"]
28
-
29
- s.post_install_message = %{
30
- Add this to your radiant project with:
31
- config.gem 'radiant-clipped-extension', :version => '~>#{RadiantClippedExtension::VERSION}'
32
- }
33
- end
28
+ end
@@ -3,7 +3,7 @@ require File.dirname(__FILE__) + '/../spec_helper'
3
3
  describe AssetTags do
4
4
  dataset :assets
5
5
  let(:page) { pages(:pictured) }
6
- let(:asset) { assets(:test2) }
6
+ let(:asset) { assets(:test1) }
7
7
 
8
8
  context "Asset tags" do
9
9
  %w{width height caption asset_file_name asset_content_type asset_file_size id filename image flash url link extension page:title page:url}.each do |name|
@@ -27,17 +27,18 @@ describe AssetTags do
27
27
  context "rendering tag" do
28
28
  before do
29
29
  Radiant.config['assets.create_image_thumbnails?'] = true
30
+ Radiant.config['assets.thumbnails.image'] = 'normal:size=640x640>|small:size=320x320>'
30
31
  end
31
32
 
32
33
  it "assets:each" do
33
- page.should render('<r:assets:each><r:asset:id />,</r:assets:each>').as( "#{asset_id(:test2)},#{asset_id(:test1)}," )
34
+ page.should render('<r:assets:each><r:asset:id />,</r:assets:each>').as( "#{asset_id(:test1)},#{asset_id(:test2)}," )
34
35
  end
35
36
 
36
37
  it "assets:first" do
37
- page.should render('<r:assets:first><r:asset:id /></r:assets:first>').as( "#{asset_id(:test2)}" )
38
+ page.should render('<r:assets:first><r:asset:id /></r:assets:first>').as( asset.id.to_s )
38
39
  end
39
40
 
40
- it "should retreive an asset by name" do
41
+ it "should retrieve an asset by name" do
41
42
  page.should render('<r:asset:id name="video" />').as( "#{asset_id(:video)}" )
42
43
  end
43
44
 
@@ -27,7 +27,7 @@ describe AssetType do
27
27
  its(:paperclip_processors) { should be_empty}
28
28
  its(:paperclip_styles) { should be_empty}
29
29
  its(:icon) { should == "/images/admin/assets/simple_icon.png"}
30
- its(:icon_path) { should == "#{RAILS_ROOT}/public/images/admin/assets/simple_icon.png"}
30
+ its(:icon_path) { should == Rails.root + "public/images/admin/assets/simple_icon.png"}
31
31
  end
32
32
 
33
33
  context 'with initialized thumbnail sizes' do
@@ -35,18 +35,21 @@ describe AssetType do
35
35
  subject{ AssetType.find(:complex) }
36
36
  its(:paperclip_processors) { should == [:dummy] }
37
37
  its(:paperclip_styles) { should_not be_empty }
38
- its(:paperclip_styles) { should == {:something => "99x99>"} }
38
+ its(:paperclip_styles) { should == {:something => {:geometry => "99x99>"}} }
39
39
  its(:icon) { should == "/images/admin/assets/document_icon.png"}
40
40
  end
41
41
 
42
42
  context 'with configured thumbnail sizes' do
43
43
  before {
44
44
  Radiant.config["assets.create_configured_thumbnails?"] = true
45
- Radiant.config["assets.thumbnails.configured"] = "special:size=800x800>,format=jpg|tiny:size=#10x10,format=png"
45
+ Radiant.config["assets.thumbnails.configured"] = "special:size=800x800>,format=jpg|tiny:size=10x10#,format=png"
46
46
  }
47
47
  subject{ AssetType.find(:configured) }
48
48
  its(:paperclip_processors) { should == [:dummy] }
49
- its(:paperclip_styles) { should == {:special => ["800x800>", :jpg], :tiny => ["#10x10", :png]} }
49
+ its(:paperclip_styles) { should == {
50
+ :special => {:geometry => "800x800>", :format => 'jpg'},
51
+ :tiny => {:geometry => "10x10#", :format => 'png'}
52
+ }}
50
53
  end
51
54
 
52
55
  context 'AssetType class methods' do
@@ -15,6 +15,7 @@ describe Asset do
15
15
  describe "on assigning a file to an asset" do
16
16
  before do
17
17
  Radiant.config["assets.create_image_thumbnails?"] = true
18
+ Radiant.config["assets.thumbnails.configured"] = "special:size=800x800>,format=jpg|tiny:size=#10x10,format=png"
18
19
  end
19
20
 
20
21
  it "should have saved the asset" do
data/spec/spec.opts CHANGED
@@ -4,3 +4,4 @@ progress
4
4
  --loadby
5
5
  mtime
6
6
  --reverse
7
+ --backtrace
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: radiant-clipped-extension
3
3
  version: !ruby/object:Gem::Version
4
- hash: 27
4
+ hash: 25
5
5
  prerelease:
6
6
  segments:
7
7
  - 1
8
8
  - 0
9
- - 6
10
- version: 1.0.6
9
+ - 7
10
+ version: 1.0.7
11
11
  platform: ruby
12
12
  authors:
13
13
  - Keith Bingman
@@ -18,7 +18,7 @@ autorequire:
18
18
  bindir: bin
19
19
  cert_chain: []
20
20
 
21
- date: 2011-08-17 00:00:00 +01:00
21
+ date: 2011-09-07 00:00:00 +01:00
22
22
  default_executable:
23
23
  dependencies:
24
24
  - !ruby/object:Gem::Dependency
@@ -205,7 +205,7 @@ has_rdoc: true
205
205
  homepage: http://radiantcms.org
206
206
  licenses: []
207
207
 
208
- post_install_message: "\n Add this to your radiant project with:\n config.gem 'radiant-clipped-extension', :version => '~>1.0.6'\n "
208
+ post_install_message:
209
209
  rdoc_options: []
210
210
 
211
211
  require_paths: