ecm_news 0.0.2.pre

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/MIT-LICENSE ADDED
@@ -0,0 +1,20 @@
1
+ Copyright 2012 Roberto Vasquez Angel
2
+
3
+ Permission is hereby granted, free of charge, to any person obtaining
4
+ a copy of this software and associated documentation files (the
5
+ "Software"), to deal in the Software without restriction, including
6
+ without limitation the rights to use, copy, modify, merge, publish,
7
+ distribute, sublicense, and/or sell copies of the Software, and to
8
+ permit persons to whom the Software is furnished to do so, subject to
9
+ the following conditions:
10
+
11
+ The above copyright notice and this permission notice shall be
12
+ included in all copies or substantial portions of the Software.
13
+
14
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
15
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
16
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
17
+ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
18
+ LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
19
+ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
20
+ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
data/README.rdoc ADDED
@@ -0,0 +1,37 @@
1
+ = ECM News
2
+
3
+ News module for active admin.
4
+
5
+ = Installation
6
+
7
+ Add the gem to your bundle:
8
+
9
+ # Gemfile
10
+ gem 'ecm_news'
11
+
12
+ Install your bundle:
13
+
14
+ > bundle install
15
+
16
+ Add migrations:
17
+
18
+ > rake ecm_news_engine:install:migrations
19
+
20
+ Migrate:
21
+
22
+ > rake db:migrate
23
+
24
+ Add the routes:
25
+
26
+ # config/routes.rb
27
+ Ecm::News::Routing.routes(self)
28
+
29
+ = Usage
30
+
31
+ = Helpers
32
+
33
+ <%= render_news(count) %>
34
+
35
+ = License
36
+
37
+ This project rocks and uses MIT-LICENSE.
data/Rakefile ADDED
@@ -0,0 +1,27 @@
1
+ #!/usr/bin/env rake
2
+ begin
3
+ require 'bundler/setup'
4
+ rescue LoadError
5
+ puts 'You must `gem install bundler` and `bundle install` to run rake tasks'
6
+ end
7
+ begin
8
+ require 'rdoc/task'
9
+ rescue LoadError
10
+ require 'rdoc/rdoc'
11
+ require 'rake/rdoctask'
12
+ RDoc::Task = Rake::RDocTask
13
+ end
14
+
15
+ RDoc::Task.new(:rdoc) do |rdoc|
16
+ rdoc.rdoc_dir = 'rdoc'
17
+ rdoc.title = 'EcmNews'
18
+ rdoc.options << '--line-numbers'
19
+ rdoc.rdoc_files.include('README.rdoc')
20
+ rdoc.rdoc_files.include('lib/**/*.rb')
21
+ end
22
+
23
+
24
+
25
+
26
+ Bundler::GemHelper.install_tasks
27
+
@@ -0,0 +1,9 @@
1
+ class Ecm::News::ItemsController < ApplicationController
2
+ def index
3
+ @items = Ecm::News::Item.published.where(:locale => I18n.locale.to_s).order("published_at DESC").all
4
+ end
5
+
6
+ def show
7
+ @item = Ecm::News::Item.published.where(:locale => I18n.locale.to_s).find(params[:id])
8
+ end
9
+ end
@@ -0,0 +1,13 @@
1
+ module Ecm::NewsHelper
2
+ def render_news(count)
3
+ items = Ecm::News::Item.published.where(:locale => I18n.locale.to_s).limit(count)
4
+ return I18n.t('ecm.news.item.messages.empty') if items.empty?
5
+ output = ''
6
+ output << render(:partial => 'ecm/news/items/item_preview', :collection => items, :as => :item)
7
+ output << link_to(ecm_news_items_path, :class => 'btn list-link') do
8
+ content_tag(:i, "", :class => 'icon-list') + " " +
9
+ I18n.t('ecm.news.item.actions.all')
10
+ end
11
+ return output.html_safe
12
+ end
13
+ end
@@ -0,0 +1,7 @@
1
+ module MarkupHelper
2
+ def mu(object, method)
3
+ handler = object.send(method)
4
+ erb_string = ::ERB.new(object[method.to_sym].to_s, 0).result(binding())
5
+ return handler.class.new(erb_string).to_html.html_safe
6
+ end
7
+ end
@@ -0,0 +1,52 @@
1
+ class Ecm::News::Item < ActiveRecord::Base
2
+ # database settings
3
+ self.table_name = 'ecm_news_items'
4
+
5
+ # acts as markup
6
+ acts_as_markup :language => :variable, :columns => [ :body ]
7
+
8
+ # acts as published
9
+ include ActsAsPublished::ActiveRecord
10
+ acts_as_published
11
+
12
+ # attributes
13
+ attr_accessible :body,
14
+ :link_to_more,
15
+ :locale,
16
+ :markup_language,
17
+ :published_at,
18
+ :slug,
19
+ :title
20
+
21
+ # callbacks
22
+ after_initialize :set_defaults
23
+
24
+ # constants
25
+ MARKUP_LANGAUGES = %w(markdown textile rdoc)
26
+
27
+ # friendly id
28
+ extend FriendlyId
29
+ friendly_id :title, :use => :slugged
30
+
31
+ # validations
32
+ validates :title, :presence => true, :uniqueness => true
33
+ validates :locale, :presence => true,
34
+ :inclusion => I18n.available_locales.map(&:to_s)
35
+ validates :body, :presence => true
36
+ validates :markup_language, :presence => true,
37
+ :inclusion => MARKUP_LANGAUGES
38
+
39
+ # public methods
40
+
41
+ def to_s
42
+ title
43
+ end
44
+
45
+ private
46
+
47
+ def set_defaults
48
+ if self.new_record?
49
+ self.markup_language ||= 'textile'
50
+ end
51
+ end
52
+ end
@@ -0,0 +1,5 @@
1
+ module Ecm::News
2
+ def self.table_name_prefix
3
+ 'ecm_news_'
4
+ end
5
+ end
@@ -0,0 +1,13 @@
1
+ <div class="news-item show">
2
+ <h1><%= item.title %></h1>
3
+ <small class="item-published_at"><%= I18n.l(item.published_at) %></small>
4
+
5
+ <p class="item-body"><%= mu(item, :body) %></p>
6
+
7
+ <hr />
8
+
9
+ <%= link_to(ecm_news_items_path, :class => 'btn link-back') do %>
10
+ <i class="icon-arrow-left"></i>
11
+ <%= I18n.t('ecm.news.item.actions.back') %>
12
+ <% end %>
13
+ </div>
@@ -0,0 +1,12 @@
1
+ <div class="news-item preview">
2
+ <h2 class="item-title"><%= item.title %></h2>
3
+ <small class="item-published_at"><%= I18n.l(item.published_at) %></small>
4
+
5
+ <p class="item-body"><%= truncate(mu(item, :body), :length => 250, :separator => ' ').html_safe %></p>
6
+
7
+ <%= link_to(item, :class => 'btn more-link') do %>
8
+ <i class="icon-arrow-right"></i>
9
+ <%= I18n.t('ecm.news.item.actions.more') %>
10
+ <% end %>
11
+ <hr />
12
+ </div>
@@ -0,0 +1,3 @@
1
+ <h1><%= I18n.t('ecm.news.news') %></h1>
2
+
3
+ <%= render :partial => 'item_preview', :collection => @items, :as => :item %>
@@ -0,0 +1 @@
1
+ <%= render @item %>
@@ -0,0 +1,13 @@
1
+ de:
2
+ ecm:
3
+ news:
4
+ active_admin:
5
+ menu: News
6
+ item:
7
+ actions:
8
+ all: Alle anzeigen
9
+ back: Zurück
10
+ more: Weiterlesen
11
+ messages:
12
+ empty: Keine Neuigkeiten gefunden.
13
+ news: News
@@ -0,0 +1,13 @@
1
+ en:
2
+ ecm:
3
+ news:
4
+ active_admin:
5
+ menu: news
6
+ item:
7
+ actions:
8
+ all: show all
9
+ back: back
10
+ more: continue reading
11
+ messages:
12
+ empty: no news found.
13
+ news: news
@@ -0,0 +1,19 @@
1
+ ---
2
+ de:
3
+ activerecord:
4
+ models:
5
+ ecm/news/item:
6
+ one: Newseintrag
7
+ other: Newseinträge
8
+ attributes:
9
+ ecm/news/item:
10
+ body: Inhalt
11
+ created_at: Erstellt am
12
+ link_to_more: Vorschau verlinken
13
+ locale: Sprache
14
+ markup_language: Markup Sprache
15
+ published: Veröffentlicht?
16
+ published_at: Veröffentlicht am
17
+ slug: Freundliche ID
18
+ title: Titel
19
+ updated_at: Aktualisiert am
@@ -0,0 +1,19 @@
1
+ ---
2
+ en:
3
+ activerecord:
4
+ models:
5
+ ecm/news/item:
6
+ one: news item
7
+ other: news items
8
+ attributes:
9
+ ecm/news/item:
10
+ body: body
11
+ created_at: created at
12
+ link_to_more: link to more?
13
+ locale: language
14
+ markup_language: markup language
15
+ published: published?
16
+ published_at: published at
17
+ slug: friendly id
18
+ title: title
19
+ updated_at: updated at
@@ -0,0 +1,4 @@
1
+ de:
2
+ resources:
3
+ ecm_news_items: news-eintraege
4
+
@@ -0,0 +1,19 @@
1
+ class CreateEcmNewsItems < ActiveRecord::Migration
2
+ def change
3
+ create_table :ecm_news_items do |t|
4
+ t.string :title
5
+ t.string :locale
6
+ t.text :body
7
+ t.timestamp :published_at
8
+ t.boolean :link_to_more
9
+
10
+ # acts as markup
11
+ t.string :markup_language
12
+
13
+ # friendly id
14
+ t.string :slug
15
+
16
+ t.timestamps
17
+ end
18
+ end
19
+ end
@@ -0,0 +1,60 @@
1
+ include ActsAsPublished::ActiveAdminHelper
2
+
3
+ ::ActiveAdmin.register Ecm::News::Item do
4
+ # acts as published
5
+ acts_as_published_actions
6
+
7
+ # menu entry settings
8
+ menu :parent => Proc.new { I18n.t('ecm.news.active_admin.menu') }.call
9
+
10
+ # scopes
11
+ scope :all
12
+ scope :published
13
+ scope :unpublished
14
+
15
+ form do |f|
16
+ f.inputs do
17
+ f.input :title
18
+ f.input :locale, :as => :select, :collection => I18n.available_locales.map(&:to_s)
19
+ f.input :body
20
+ f.input :published, :as => :boolean
21
+ end
22
+
23
+ f.inputs do
24
+ f.input :markup_language, :as => :select, :collection => Ecm::News::Item::MARKUP_LANGAUGES
25
+ end
26
+
27
+ f.actions
28
+ end
29
+
30
+ index do
31
+ selectable_column
32
+ column :title
33
+ column :locale
34
+ column :body do |item|
35
+ truncate(mu(item, :body), :length => 250, :separator => ' ').html_safe
36
+ end
37
+ acts_as_published_columns
38
+ column :created_at
39
+ column :updated_at
40
+ default_actions
41
+ end
42
+
43
+ show :title => :to_s do
44
+ attributes_table do
45
+ row :title
46
+ row :locale
47
+ row :published_at
48
+ row :link_to_more
49
+ row :markup_language
50
+ row :created_at
51
+ row :updated_at
52
+ end
53
+
54
+ panel Ecm::News::Item.human_attribute_name(:body) do
55
+ div do
56
+ mu(ecm_news_item, :body)
57
+ end
58
+ end
59
+ end
60
+ end if defined?(::ActiveAdmin)
@@ -0,0 +1,12 @@
1
+ module Ecm
2
+ module News
3
+ class Engine < ::Rails::Engine
4
+ # active admin
5
+ initializer :ecm_news_engine do
6
+ ::ActiveAdmin.setup do |active_admin_config|
7
+ active_admin_config.load_paths += Dir[File.dirname(__FILE__) + '/active_admin']
8
+ end
9
+ end if defined?(::ActiveAdmin)
10
+ end
11
+ end
12
+ end
@@ -0,0 +1,22 @@
1
+ module Ecm
2
+ module News
3
+ class Routing
4
+ # Creates the routes for news items. You can pass options to
5
+ # specify the actions for news items.
6
+ #
7
+ # Ecm::News::Routing.routes(self, { :item_actions => [ :show ]})
8
+ #
9
+ # This will only create the show action for items, but omit the index
10
+ # action.
11
+ def self.routes(router, options = {})
12
+ options.reverse_merge!(
13
+ { :item_actions => [:index, :show]
14
+ }
15
+ )
16
+
17
+ router.resources :ecm_news_items, :only => options[:item_actions],
18
+ :controller => 'ecm/news/items'
19
+ end
20
+ end
21
+ end
22
+ end
@@ -0,0 +1,5 @@
1
+ module Ecm
2
+ module News
3
+ VERSION = "0.0.2.pre"
4
+ end
5
+ end
data/lib/ecm_news.rb ADDED
@@ -0,0 +1,11 @@
1
+ require 'acts_as_markup'
2
+ require 'acts_as_published'
3
+ require 'friendly_id'
4
+
5
+ require 'ecm/news/engine'
6
+ require 'ecm/news/routing'
7
+
8
+ module Ecm
9
+ module News
10
+ end
11
+ end
@@ -0,0 +1,33 @@
1
+ namespace :ecm_news do
2
+ namespace :db do
3
+ desc "Purges and creates example data"
4
+ task :populate!, [] => [:environment] do |t, args|
5
+
6
+ Rake::Task["ecm_news:db:clear!"].execute
7
+ Rake::Task["ecm_news:db:populate"].execute
8
+ end
9
+
10
+ desc "Clears all data!"
11
+ task :clear!, [] => [:environment] do |t, args|
12
+ Ecm::News::Item.delete_all
13
+ end
14
+
15
+ desc "Creates example_data"
16
+ task :populate, [] => [:environment] do |t, args|
17
+ require "ffaker"
18
+ require "forgery"
19
+
20
+ # Create example news items
21
+ 100.times do
22
+ Ecm::News::Item.create! do |i|
23
+ i.title = Faker::Lorem.paragraph(1).split(" ")[0..3].join(" ")
24
+ i.locale = I18n.available_locales.choice.to_s
25
+ i.body = Faker::Lorem.paragraph(rand(9) + 1)
26
+ i.link_to_more = [true, false].choice
27
+ i.published = [true, false].choice
28
+ i.markup_language = Ecm::News::Item::MARKUP_LANGAUGES.choice
29
+ end
30
+ end
31
+ end
32
+ end
33
+ end
metadata ADDED
@@ -0,0 +1,339 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: ecm_news
3
+ version: !ruby/object:Gem::Version
4
+ hash: 961915980
5
+ prerelease: 6
6
+ segments:
7
+ - 0
8
+ - 0
9
+ - 2
10
+ - pre
11
+ version: 0.0.2.pre
12
+ platform: ruby
13
+ authors:
14
+ - Roberto Vasquez Angel
15
+ autorequire:
16
+ bindir: bin
17
+ cert_chain: []
18
+
19
+ date: 2012-08-28 00:00:00 Z
20
+ dependencies:
21
+ - !ruby/object:Gem::Dependency
22
+ name: rails
23
+ prerelease: false
24
+ requirement: &id001 !ruby/object:Gem::Requirement
25
+ none: false
26
+ requirements:
27
+ - - ~>
28
+ - !ruby/object:Gem::Version
29
+ hash: 1
30
+ segments:
31
+ - 3
32
+ - 2
33
+ - 7
34
+ version: 3.2.7
35
+ type: :runtime
36
+ version_requirements: *id001
37
+ - !ruby/object:Gem::Dependency
38
+ name: acts_as_markup
39
+ prerelease: false
40
+ requirement: &id002 !ruby/object:Gem::Requirement
41
+ none: false
42
+ requirements:
43
+ - - ">="
44
+ - !ruby/object:Gem::Version
45
+ hash: 3
46
+ segments:
47
+ - 0
48
+ version: "0"
49
+ type: :runtime
50
+ version_requirements: *id002
51
+ - !ruby/object:Gem::Dependency
52
+ name: acts_as_published
53
+ prerelease: false
54
+ requirement: &id003 !ruby/object:Gem::Requirement
55
+ none: false
56
+ requirements:
57
+ - - "="
58
+ - !ruby/object:Gem::Version
59
+ hash: 961916004
60
+ segments:
61
+ - 0
62
+ - 0
63
+ - 8
64
+ - pre
65
+ version: 0.0.8.pre
66
+ type: :runtime
67
+ version_requirements: *id003
68
+ - !ruby/object:Gem::Dependency
69
+ name: friendly_id
70
+ prerelease: false
71
+ requirement: &id004 !ruby/object:Gem::Requirement
72
+ none: false
73
+ requirements:
74
+ - - ">="
75
+ - !ruby/object:Gem::Version
76
+ hash: 3
77
+ segments:
78
+ - 0
79
+ version: "0"
80
+ type: :runtime
81
+ version_requirements: *id004
82
+ - !ruby/object:Gem::Dependency
83
+ name: sqlite3
84
+ prerelease: false
85
+ requirement: &id005 !ruby/object:Gem::Requirement
86
+ none: false
87
+ requirements:
88
+ - - ">="
89
+ - !ruby/object:Gem::Version
90
+ hash: 3
91
+ segments:
92
+ - 0
93
+ version: "0"
94
+ type: :development
95
+ version_requirements: *id005
96
+ - !ruby/object:Gem::Dependency
97
+ name: thin
98
+ prerelease: false
99
+ requirement: &id006 !ruby/object:Gem::Requirement
100
+ none: false
101
+ requirements:
102
+ - - ">="
103
+ - !ruby/object:Gem::Version
104
+ hash: 3
105
+ segments:
106
+ - 0
107
+ version: "0"
108
+ type: :development
109
+ version_requirements: *id006
110
+ - !ruby/object:Gem::Dependency
111
+ name: yard
112
+ prerelease: false
113
+ requirement: &id007 !ruby/object:Gem::Requirement
114
+ none: false
115
+ requirements:
116
+ - - ">="
117
+ - !ruby/object:Gem::Version
118
+ hash: 3
119
+ segments:
120
+ - 0
121
+ version: "0"
122
+ type: :development
123
+ version_requirements: *id007
124
+ - !ruby/object:Gem::Dependency
125
+ name: sass-rails
126
+ prerelease: false
127
+ requirement: &id008 !ruby/object:Gem::Requirement
128
+ none: false
129
+ requirements:
130
+ - - ">="
131
+ - !ruby/object:Gem::Version
132
+ hash: 3
133
+ segments:
134
+ - 0
135
+ version: "0"
136
+ type: :development
137
+ version_requirements: *id008
138
+ - !ruby/object:Gem::Dependency
139
+ name: coffee-rails
140
+ prerelease: false
141
+ requirement: &id009 !ruby/object:Gem::Requirement
142
+ none: false
143
+ requirements:
144
+ - - ">="
145
+ - !ruby/object:Gem::Version
146
+ hash: 3
147
+ segments:
148
+ - 0
149
+ version: "0"
150
+ type: :development
151
+ version_requirements: *id009
152
+ - !ruby/object:Gem::Dependency
153
+ name: capybara
154
+ prerelease: false
155
+ requirement: &id010 !ruby/object:Gem::Requirement
156
+ none: false
157
+ requirements:
158
+ - - ">="
159
+ - !ruby/object:Gem::Version
160
+ hash: 3
161
+ segments:
162
+ - 0
163
+ version: "0"
164
+ type: :development
165
+ version_requirements: *id010
166
+ - !ruby/object:Gem::Dependency
167
+ name: rspec-rails
168
+ prerelease: false
169
+ requirement: &id011 !ruby/object:Gem::Requirement
170
+ none: false
171
+ requirements:
172
+ - - ~>
173
+ - !ruby/object:Gem::Version
174
+ hash: 3
175
+ segments:
176
+ - 2
177
+ - 0
178
+ version: "2.0"
179
+ type: :development
180
+ version_requirements: *id011
181
+ - !ruby/object:Gem::Dependency
182
+ name: shoulda-matchers
183
+ prerelease: false
184
+ requirement: &id012 !ruby/object:Gem::Requirement
185
+ none: false
186
+ requirements:
187
+ - - ">="
188
+ - !ruby/object:Gem::Version
189
+ hash: 3
190
+ segments:
191
+ - 0
192
+ version: "0"
193
+ type: :development
194
+ version_requirements: *id012
195
+ - !ruby/object:Gem::Dependency
196
+ name: factory_girl_rails
197
+ prerelease: false
198
+ requirement: &id013 !ruby/object:Gem::Requirement
199
+ none: false
200
+ requirements:
201
+ - - ~>
202
+ - !ruby/object:Gem::Version
203
+ hash: 15
204
+ segments:
205
+ - 1
206
+ - 0
207
+ version: "1.0"
208
+ type: :development
209
+ version_requirements: *id013
210
+ - !ruby/object:Gem::Dependency
211
+ name: ffaker
212
+ prerelease: false
213
+ requirement: &id014 !ruby/object:Gem::Requirement
214
+ none: false
215
+ requirements:
216
+ - - ">="
217
+ - !ruby/object:Gem::Version
218
+ hash: 3
219
+ segments:
220
+ - 0
221
+ version: "0"
222
+ type: :development
223
+ version_requirements: *id014
224
+ - !ruby/object:Gem::Dependency
225
+ name: forgery
226
+ prerelease: false
227
+ requirement: &id015 !ruby/object:Gem::Requirement
228
+ none: false
229
+ requirements:
230
+ - - "="
231
+ - !ruby/object:Gem::Version
232
+ hash: 11
233
+ segments:
234
+ - 0
235
+ - 5
236
+ - 0
237
+ version: 0.5.0
238
+ type: :development
239
+ version_requirements: *id015
240
+ - !ruby/object:Gem::Dependency
241
+ name: guard-rspec
242
+ prerelease: false
243
+ requirement: &id016 !ruby/object:Gem::Requirement
244
+ none: false
245
+ requirements:
246
+ - - ">="
247
+ - !ruby/object:Gem::Version
248
+ hash: 3
249
+ segments:
250
+ - 0
251
+ version: "0"
252
+ type: :development
253
+ version_requirements: *id016
254
+ - !ruby/object:Gem::Dependency
255
+ name: guard-bundler
256
+ prerelease: false
257
+ requirement: &id017 !ruby/object:Gem::Requirement
258
+ none: false
259
+ requirements:
260
+ - - ">="
261
+ - !ruby/object:Gem::Version
262
+ hash: 3
263
+ segments:
264
+ - 0
265
+ version: "0"
266
+ type: :development
267
+ version_requirements: *id017
268
+ description: News module for active admin.
269
+ email:
270
+ - roberto@vasquez-angel.de
271
+ executables: []
272
+
273
+ extensions: []
274
+
275
+ extra_rdoc_files: []
276
+
277
+ files:
278
+ - app/controllers/ecm/news/items_controller.rb
279
+ - app/helpers/ecm/news_helper.rb
280
+ - app/helpers/markup_helper.rb
281
+ - app/views/ecm/news/items/_item.html.erb
282
+ - app/views/ecm/news/items/_item_preview.html.erb
283
+ - app/views/ecm/news/items/show.html.erb
284
+ - app/views/ecm/news/items/index.html.erb
285
+ - app/models/ecm/news.rb
286
+ - app/models/ecm/news/item.rb
287
+ - config/locales/ecm.news.item.de.yml
288
+ - config/locales/ecm.news.item.en.yml
289
+ - config/locales/ecm.news.routes.de.yml
290
+ - config/locales/ecm.news.de.yml
291
+ - config/locales/ecm.news.en.yml
292
+ - db/migrate/001_create_ecm_news_items.rb
293
+ - lib/ecm_news.rb
294
+ - lib/tasks/ecm_news_tasks.rake
295
+ - lib/ecm/news/active_admin/ecm_news_items.rb
296
+ - lib/ecm/news/engine.rb
297
+ - lib/ecm/news/version.rb
298
+ - lib/ecm/news/routing.rb
299
+ - MIT-LICENSE
300
+ - Rakefile
301
+ - README.rdoc
302
+ homepage: https://github.com/robotex82/ecm_news
303
+ licenses: []
304
+
305
+ post_install_message:
306
+ rdoc_options: []
307
+
308
+ require_paths:
309
+ - lib
310
+ required_ruby_version: !ruby/object:Gem::Requirement
311
+ none: false
312
+ requirements:
313
+ - - ">="
314
+ - !ruby/object:Gem::Version
315
+ hash: 3
316
+ segments:
317
+ - 0
318
+ version: "0"
319
+ required_rubygems_version: !ruby/object:Gem::Requirement
320
+ none: false
321
+ requirements:
322
+ - - ">"
323
+ - !ruby/object:Gem::Version
324
+ hash: 25
325
+ segments:
326
+ - 1
327
+ - 3
328
+ - 1
329
+ version: 1.3.1
330
+ requirements: []
331
+
332
+ rubyforge_project:
333
+ rubygems_version: 1.8.24
334
+ signing_key:
335
+ specification_version: 3
336
+ summary: News module for active admin.
337
+ test_files: []
338
+
339
+ has_rdoc: