ecm_news 0.1.8.pre → 0.1.9.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.
@@ -1,52 +1,50 @@
1
1
  class Ecm::News::Item < ActiveRecord::Base
2
2
  # database settings
3
3
  self.table_name = 'ecm_news_items'
4
-
4
+
5
5
  # acts as markup
6
6
  acts_as_markup :language => :variable, :columns => [ :body ]
7
-
7
+
8
8
  # acts as published
9
9
  include ActsAsPublished::ActiveRecord
10
10
  acts_as_published
11
-
11
+
12
12
  # attributes
13
- attr_accessible :body,
14
- :link_to_more,
13
+ attr_accessible :body,
14
+ :link_to_more,
15
15
  :locale,
16
16
  :markup_language,
17
- :published_at,
18
- :slug,
17
+ :published_at,
18
+ :slug,
19
19
  :title
20
-
20
+
21
21
  # callbacks
22
- after_initialize :set_defaults
23
-
24
- # constants
25
- MARKUP_LANGAUGES = %w(markdown textile rdoc)
26
-
22
+ after_initialize :set_defaults
23
+
27
24
  # friendly id
28
25
  extend FriendlyId
29
26
  friendly_id :title, :use => :slugged
30
-
27
+
31
28
  # validations
32
29
  validates :title, :presence => true, :uniqueness => true
33
- validates :locale, :presence => true,
30
+ validates :locale, :presence => true,
34
31
  :inclusion => I18n.available_locales.map(&:to_s)
35
32
  validates :body, :presence => true
36
- validates :markup_language, :presence => true,
37
- :inclusion => MARKUP_LANGAUGES
38
-
33
+ validates :markup_language, :presence => true,
34
+ :inclusion => Ecm::News::Configuration.markup_languages.map(&:to_s)
35
+
39
36
  # public methods
40
-
37
+
41
38
  def to_s
42
39
  title
43
- end
44
-
40
+ end
41
+
45
42
  private
46
-
43
+
47
44
  def set_defaults
48
45
  if self.new_record?
49
- self.markup_language ||= 'textile'
50
- end
46
+ self.markup_language ||= Ecm::News::Configuration.default_markup_language
47
+ end
51
48
  end
52
49
  end
50
+
@@ -1,8 +1,7 @@
1
1
  <div class="news-item show">
2
2
  <h1><%= item.title %></h1>
3
3
  <small class="item-published_at"><%= I18n.l(item.published_at) %></small>
4
-
5
4
  <p class="item-body"><%= mu(item, :body) %></p>
6
-
7
5
  <hr />
8
6
  </div>
7
+
@@ -1,11 +1,8 @@
1
1
  <div class="news-item preview">
2
2
  <h2 class="item-title"><%= item.title %></h2>
3
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
-
4
+ <p class="item-body"><%= truncate(mu(item, :body), :length => Ecm::News::Configuration.news_item_preview_length, :separator => ' ').html_safe %></p>
8
5
  <%= link_to(item, :class => 'btn more-link') do %><i class="icon-arrow-right"></i> <%= I18n.t('ecm.news.item.actions.more') %><% end %>
9
-
10
6
  <hr />
11
7
  </div>
8
+
@@ -1,11 +1,8 @@
1
1
  <div class="news-item small-preview">
2
2
  <h2 class="item-title"><%= item.title %></h2>
3
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
-
4
+ <p class="item-body"><%= truncate(mu(item, :body), :length => Ecm::News::Configuration.news_item_preview_length, :separator => ' ').html_safe %></p>
8
5
  <%= link_to(item, :class => 'btn more-link') do %><i class="icon-arrow-right"></i> <%= I18n.t('ecm.news.item.actions.more') %><% end %>
9
-
10
6
  <hr />
11
7
  </div>
8
+
@@ -3,3 +3,4 @@
3
3
  <%= render :partial => 'item_for_preview', :collection => @items, :as => :item %>
4
4
 
5
5
  <%= paginate @items, :theme => 'twitter-bootstrap' %>
6
+
@@ -6,12 +6,12 @@ include ActsAsPublished::ActiveAdminHelper
6
6
 
7
7
  # menu entry settings
8
8
  menu :parent => Proc.new { I18n.t('ecm.news.active_admin.menu') }.call
9
-
9
+
10
10
  # scopes
11
11
  scope :all
12
12
  scope :published
13
13
  scope :unpublished
14
-
14
+
15
15
  form do |f|
16
16
  f.inputs do
17
17
  f.input :title
@@ -19,14 +19,14 @@ include ActsAsPublished::ActiveAdminHelper
19
19
  f.input :body
20
20
  f.input :published, :as => :boolean
21
21
  end
22
-
22
+
23
23
  f.inputs do
24
- f.input :markup_language, :as => :select, :collection => Ecm::News::Item::MARKUP_LANGAUGES
24
+ f.input :markup_language, :as => :select, :collection => Ecm::News::Configuration.markup_languages.map(&:to_s)
25
25
  end
26
-
26
+
27
27
  f.actions
28
28
  end
29
-
29
+
30
30
  index do
31
31
  selectable_column
32
32
  column :title
@@ -39,7 +39,7 @@ include ActsAsPublished::ActiveAdminHelper
39
39
  column :updated_at
40
40
  default_actions
41
41
  end
42
-
42
+
43
43
  show :title => :to_s do
44
44
  attributes_table do
45
45
  row :title
@@ -50,11 +50,12 @@ include ActsAsPublished::ActiveAdminHelper
50
50
  row :created_at
51
51
  row :updated_at
52
52
  end
53
-
53
+
54
54
  panel Ecm::News::Item.human_attribute_name(:body) do
55
55
  div do
56
56
  mu(ecm_news_item, :body)
57
- end
57
+ end
58
58
  end
59
59
  end
60
60
  end if defined?(::ActiveAdmin)
61
+
@@ -9,6 +9,15 @@ module Ecm
9
9
  yield self
10
10
  end
11
11
 
12
+ mattr_accessor :default_markup_language
13
+ @@default_markup_language = nil
14
+
15
+ mattr_accessor :markup_languages
16
+ @@markup_languages = []
17
+
18
+ mattr_accessor :news_item_preview_length
19
+ @@news_item_preview_length = nil
20
+
12
21
  mattr_accessor :render_news_default_count
13
22
  @@render_news_default_count = 2
14
23
  end
@@ -1,5 +1,5 @@
1
1
  module Ecm
2
2
  module News
3
- VERSION = "0.1.8.pre"
3
+ VERSION = "0.1.9.pre"
4
4
  end
5
5
  end
@@ -1,4 +1,22 @@
1
1
  Ecm::News.configure do |config|
2
+ # Number of characters to render in news preview
3
+ #
4
+ # default: config.news_preview_length = 250
5
+ config.news_item_preview_length = 250
6
+
2
7
  # Number of items that will be shown in #render_news
8
+ #
9
+ # default: config.render_news_default_count = 2
3
10
  config.render_news_default_count = 2
11
+
12
+ # Accepted markup languages
13
+ #
14
+ # default: config.markup_languages = %w[ markdown rdoc textile ]
15
+ config.markup_languages = %w[ markdown rdoc textile ]
16
+
17
+ # Default markup language
18
+ #
19
+ # default: config.default_markup_language = 'textile'
20
+ config.default_markup_language = 'textile'
4
21
  end
22
+
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ecm_news
3
3
  version: !ruby/object:Gem::Version
4
- hash: 961916012
4
+ hash: 961916008
5
5
  prerelease: 6
6
6
  segments:
7
7
  - 0
8
8
  - 1
9
- - 8
9
+ - 9
10
10
  - pre
11
- version: 0.1.8.pre
11
+ version: 0.1.9.pre
12
12
  platform: ruby
13
13
  authors:
14
14
  - Roberto Vasquez Angel
@@ -16,7 +16,7 @@ autorequire:
16
16
  bindir: bin
17
17
  cert_chain: []
18
18
 
19
- date: 2013-01-20 00:00:00 Z
19
+ date: 2013-02-07 00:00:00 Z
20
20
  dependencies:
21
21
  - !ruby/object:Gem::Dependency
22
22
  name: rails
@@ -26,12 +26,12 @@ dependencies:
26
26
  requirements:
27
27
  - - ~>
28
28
  - !ruby/object:Gem::Version
29
- hash: 1
29
+ hash: 25
30
30
  segments:
31
31
  - 3
32
32
  - 2
33
- - 7
34
- version: 3.2.7
33
+ - 11
34
+ version: 3.2.11
35
35
  type: :runtime
36
36
  version_requirements: *id001
37
37
  - !ruby/object:Gem::Dependency
@@ -54,7 +54,7 @@ dependencies:
54
54
  requirement: &id003 !ruby/object:Gem::Requirement
55
55
  none: false
56
56
  requirements:
57
- - - "="
57
+ - - ~>
58
58
  - !ruby/object:Gem::Version
59
59
  hash: 961916004
60
60
  segments:
@@ -199,11 +199,12 @@ dependencies:
199
199
  requirements:
200
200
  - - ~>
201
201
  - !ruby/object:Gem::Version
202
- hash: 3
202
+ hash: 63
203
203
  segments:
204
204
  - 2
205
+ - 12
205
206
  - 0
206
- version: "2.0"
207
+ version: 2.12.0
207
208
  type: :development
208
209
  version_requirements: *id013
209
210
  - !ruby/object:Gem::Dependency
@@ -236,7 +237,7 @@ dependencies:
236
237
  type: :development
237
238
  version_requirements: *id015
238
239
  - !ruby/object:Gem::Dependency
239
- name: ffaker
240
+ name: guard-rspec
240
241
  prerelease: false
241
242
  requirement: &id016 !ruby/object:Gem::Requirement
242
243
  none: false
@@ -250,25 +251,9 @@ dependencies:
250
251
  type: :development
251
252
  version_requirements: *id016
252
253
  - !ruby/object:Gem::Dependency
253
- name: forgery
254
+ name: guard-bundler
254
255
  prerelease: false
255
256
  requirement: &id017 !ruby/object:Gem::Requirement
256
- none: false
257
- requirements:
258
- - - "="
259
- - !ruby/object:Gem::Version
260
- hash: 11
261
- segments:
262
- - 0
263
- - 5
264
- - 0
265
- version: 0.5.0
266
- type: :development
267
- version_requirements: *id017
268
- - !ruby/object:Gem::Dependency
269
- name: guard-rspec
270
- prerelease: false
271
- requirement: &id018 !ruby/object:Gem::Requirement
272
257
  none: false
273
258
  requirements:
274
259
  - - ">="
@@ -278,21 +263,23 @@ dependencies:
278
263
  - 0
279
264
  version: "0"
280
265
  type: :development
281
- version_requirements: *id018
266
+ version_requirements: *id017
282
267
  - !ruby/object:Gem::Dependency
283
- name: guard-bundler
268
+ name: rb-inotify
284
269
  prerelease: false
285
- requirement: &id019 !ruby/object:Gem::Requirement
270
+ requirement: &id018 !ruby/object:Gem::Requirement
286
271
  none: false
287
272
  requirements:
288
- - - ">="
273
+ - - ~>
289
274
  - !ruby/object:Gem::Version
290
- hash: 3
275
+ hash: 47
291
276
  segments:
292
277
  - 0
293
- version: "0"
278
+ - 8
279
+ - 8
280
+ version: 0.8.8
294
281
  type: :development
295
- version_requirements: *id019
282
+ version_requirements: *id018
296
283
  description: News module for active admin.
297
284
  email:
298
285
  - roberto@vasquez-angel.de