ecm_news 0.0.2.pre

Sign up to get free protection for your applications and to get access to all the features.
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: