refinerycms-news 1.2.0 → 2.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (89) hide show
  1. data/.gitignore +3 -0
  2. data/.travis.yml +17 -0
  3. data/Gemfile +69 -0
  4. data/Guardfile +20 -0
  5. data/Rakefile +19 -0
  6. data/app/controllers/refinery/news/admin/items_controller.rb +11 -0
  7. data/app/controllers/refinery/news/items_controller.rb +50 -0
  8. data/app/helpers/refinery/news/items_helper.rb +51 -0
  9. data/app/models/refinery/news/item.rb +91 -0
  10. data/app/views/{admin/news_items → refinery/news/admin/items}/_form.html.erb +13 -8
  11. data/app/views/{admin/news_items/_news_item.html.erb → refinery/news/admin/items/_item.html.erb} +8 -8
  12. data/app/views/{admin/news_items → refinery/news/admin/items}/_locale_picker.html.erb +1 -1
  13. data/app/views/{admin/news_items → refinery/news/admin/items}/edit.html.erb +0 -0
  14. data/app/views/refinery/news/admin/items/index.html.erb +30 -0
  15. data/app/views/{admin/news_items → refinery/news/admin/items}/new.html.erb +0 -0
  16. data/app/views/{news_items → refinery/news/items}/_recent_posts.html.erb +2 -2
  17. data/app/views/refinery/news/items/archive.html.erb +17 -0
  18. data/app/views/refinery/news/items/index.html.erb +28 -0
  19. data/app/views/{news_items → refinery/news/items}/index.rss.builder +5 -5
  20. data/app/views/refinery/news/items/show.html.erb +20 -0
  21. data/app/views/refinery/news/items/widgets/_news_archive.html.erb +10 -0
  22. data/app/views/refinery/news/shared/_body_content_right.html.erb +5 -0
  23. data/app/views/refinery/news/shared/_item.html.erb +22 -0
  24. data/config/locales/bg.yml +37 -0
  25. data/config/locales/cs.yml +29 -28
  26. data/config/locales/de.yml +27 -27
  27. data/config/locales/en.yml +39 -29
  28. data/config/locales/es-MX.yml +26 -26
  29. data/config/locales/es.yml +29 -27
  30. data/config/locales/fr.yml +28 -28
  31. data/config/locales/it.yml +27 -27
  32. data/config/locales/jp.yml +36 -0
  33. data/config/locales/lv.yml +28 -26
  34. data/config/locales/nb.yml +27 -27
  35. data/config/locales/nl.yml +27 -27
  36. data/config/locales/pl.yml +37 -0
  37. data/config/locales/pt-BR.yml +28 -28
  38. data/config/locales/ru.yml +26 -26
  39. data/config/locales/sk.yml +28 -28
  40. data/config/locales/sl.yml +31 -29
  41. data/config/locales/zh-CN.yml +37 -0
  42. data/config/locales/zh-TW.yml +37 -0
  43. data/config/routes.rb +13 -5
  44. data/db/migrate/20110817203701_create_news_items.rb +23 -0
  45. data/db/migrate/20110817203702_add_external_url_to_news_items.rb +15 -0
  46. data/db/migrate/20110817203703_translate_news_items.rb +21 -0
  47. data/db/migrate/20110817203704_add_image_id_to_news_items.rb +13 -0
  48. data/db/migrate/20110817203705_add_expiration_date_to_news_items.rb +15 -0
  49. data/db/migrate/20110817203706_remove_image_id_and_external_url_from_news.rb +19 -0
  50. data/db/migrate/20120129230838_add_source_to_news_items.rb +16 -0
  51. data/db/migrate/20120129230839_translate_source.rb +16 -0
  52. data/db/migrate/20120228150250_add_slug_to_news_items.rb +5 -0
  53. data/db/seeds.rb +22 -0
  54. data/lib/generators/refinery/news_generator.rb +19 -0
  55. data/lib/refinery/news.rb +22 -0
  56. data/lib/refinery/news/engine.rb +23 -0
  57. data/lib/refinerycms-news.rb +1 -23
  58. data/readme.md +10 -8
  59. data/refinerycms-news.gemspec +20 -0
  60. data/spec/factories/news.rb +7 -0
  61. data/spec/models/refinery/news/item_spec.rb +91 -0
  62. data/spec/requests/manage_news_items_spec.rb +90 -0
  63. data/spec/requests/news_archive.rb +12 -0
  64. data/spec/requests/visit_news_items_spec.rb +37 -0
  65. data/spec/spec_helper.rb +56 -0
  66. data/tasks/rspec.rake +4 -0
  67. metadata +113 -40
  68. data/app/controllers/admin/news_items_controller.rb +0 -5
  69. data/app/controllers/news_items_controller.rb +0 -33
  70. data/app/models/news_item.rb +0 -46
  71. data/app/views/admin/news_items/index.html.erb +0 -30
  72. data/app/views/news_items/index.html.erb +0 -23
  73. data/app/views/news_items/show.html.erb +0 -15
  74. data/db/migrate/1_create_news_items.rb +0 -23
  75. data/db/migrate/2_add_external_url_to_news_items.rb +0 -15
  76. data/db/migrate/3_translate_news_items.rb +0 -24
  77. data/db/migrate/4_add_image_id_to_news_items.rb +0 -13
  78. data/db/migrate/5_add_expiration_date_to_news_items.rb +0 -15
  79. data/db/migrate/6_remove_image_id_and_external_url_from_news.rb +0 -19
  80. data/db/seeds/refinerycms_news.rb +0 -24
  81. data/features/manage_news_items.feature +0 -56
  82. data/features/step_definitions/news_steps.rb +0 -25
  83. data/features/support/factories.rb +0 -7
  84. data/features/support/paths.rb +0 -26
  85. data/features/visit_news_items.feature +0 -27
  86. data/lib/gemspec.rb +0 -29
  87. data/lib/generators/refinerycms_news_generator.rb +0 -8
  88. data/lib/news.rb +0 -9
  89. data/spec/models/news_item_spec.rb +0 -89
@@ -1,34 +1,34 @@
1
1
  pt-BR:
2
- plugins:
3
- refinerycms_news:
4
- title: Notícias
2
+ refinery:
3
+ plugins:
4
+ refinerycms_news:
5
+ title: Notícias
6
+ news:
7
+ admin:
8
+ item:
9
+ view_live: "Ver esta notícia no site<br/><em>(abrirá em uma nova janela)</em>"
10
+ edit: "Alterar esta notícia"
11
+ delete: "Remover esta notícia para sempre"
12
+ published: Publicado
13
+ index:
14
+ actions: Ações
15
+ create: "Criar Notícia"
16
+ item: Notícia
17
+ no_items: 'Não há notícias cadastradas.'
18
+ no_items_yet: 'Não há notícias cadastradas. Clique em "Criar Notícia" para cadastrar sua primeira notícia.'
19
+ read_more: Leia mais
20
+ show:
21
+ back_to_index: "Voltar para todas as notícias"
22
+ published: Publicado
23
+ recent_posts:
24
+ recent_posts: Notícias recentes
25
+ index:
26
+ published: Publicado
5
27
  activerecord:
6
28
  attributes:
7
- news_item:
29
+ 'refinery/news/item':
8
30
  title: Título
9
- content: Contéudo
31
+ body: Contéudo
10
32
  publish_date: Data de publicação
11
33
  models:
12
- news_item: Notícia
13
- admin:
14
- news_items:
15
- news_item:
16
- view_live: "Ver esta notícia no site<br/><em>(abrirá em uma nova janela)</em>"
17
- edit: "Alterar esta notícia"
18
- delete: "Remover esta notícia para sempre"
19
- published: Publicado
20
- index:
21
- actions: Ações
22
- create: "Criar Notícia"
23
- news_item: Notícia
24
- no_items: 'Não há notícias cadastradas.'
25
- no_items_yet: 'Não há notícias cadastradas. Clique em "Criar Notícia" para cadastrar sua primeira notícia.'
26
- read_more: Leia mais
27
- news_items:
28
- show:
29
- back_to_index: "Voltar para todas as notícias"
30
- published: Publicado
31
- recent_posts:
32
- recent_posts: Notícias recentes
33
- index:
34
- published: Publicado
34
+ 'refinery/news/item': Notícia
@@ -1,34 +1,34 @@
1
1
  ru:
2
- plugins:
3
- refinerycms_news:
4
- title: "Новости"
5
- admin:
6
- news_items:
7
- news_item:
8
- view_live_html: "Просмотреть новость <br/><em>(будет открыто в новом окне)</em>"
9
- edit: "Редактировать новость"
10
- delete: "Удалить новость"
11
- published: Опубликовано
2
+ refinery:
3
+ plugins:
4
+ refinerycms_news:
5
+ title: "Новости"
6
+ news:
7
+ admin:
8
+ item:
9
+ view_live_html: "Просмотреть новость <br/><em>(будет открыто в новом окне)</em>"
10
+ edit: "Редактировать новость"
11
+ delete: "Удалить новость"
12
+ published: Опубликовано
13
+ index:
14
+ actions: "Действия"
15
+ create: "Создать новость"
16
+ item: "Новости"
17
+ no_items: "Ничего не найдено."
18
+ no_items_yet: 'Новостей пока нет.'
19
+ show:
20
+ back_to_index: "Вернуться к новостям"
21
+ published: "Опубликована"
22
+ recent_posts:
23
+ recent_posts: "Последние публикации"
12
24
  index:
13
- actions: "Действия"
14
- create: "Создать новость"
15
- news_item: "Новости"
16
- no_items: "Ничего не найдено."
17
- no_items_yet: 'Новостей пока нет.'
18
- news_items:
19
- show:
20
- back_to_index: "Вернуться к новостям"
21
- published: "Опубликована"
22
- recent_posts:
23
- recent_posts: "Последние публикации"
24
- index:
25
- published: "Опубликовано"
26
- read_more: "Читать далее"
25
+ published: "Опубликовано"
26
+ read_more: "Читать далее"
27
27
  activerecord:
28
28
  attributes:
29
- news_item:
29
+ 'refinery/news/item':
30
30
  title: "Заголовок"
31
31
  body: "Публикация"
32
32
  publish_date: "Дата публикации"
33
33
  models:
34
- news_item: "Новость"
34
+ 'refinery/news/item': "Новость"
@@ -1,36 +1,36 @@
1
1
  sk:
2
- plugins:
3
- refinerycms_news:
4
- title: Novinky
5
- description: Poskytuje jednoduchú správu noviniek
6
- admin:
7
- news_items:
8
- news_item:
9
- view_live_html: "Zobraziť novinku v novom okne"
10
- edit: "Editovať novinku"
11
- delete: "Zmazať novinku"
12
- published: Uverejnená
2
+ refinery:
3
+ plugins:
4
+ refinerycms_news:
5
+ title: Novinky
6
+ description: Poskytuje jednoduchú správu noviniek
7
+ news:
8
+ admin:
9
+ item:
10
+ view_live_html: "Zobraziť novinku v novom okne"
11
+ edit: "Editovať novinku"
12
+ delete: "Zmazať novinku"
13
+ published: Uverejnená
14
+ index:
15
+ actions: Možnosti
16
+ create: "Pridať novinku"
17
+ item: Novinka
18
+ no_items: "Ľutujeme, žiadne výsledky nenájdené."
19
+ no_items_yet: 'Momentálne nie sú žiadne novinky. Klikni na "Pridať novinku" pre vytvorenie prvej.'
20
+ show:
21
+ back_to_index: "Návrat na zoznam noviniek"
22
+ published: Zverejnené
23
+ recent_posts:
24
+ recent_posts: Posledné príspevky
13
25
  index:
14
- actions: Možnosti
15
- create: "Pridať novinku"
16
- news_item: Novinka
17
- no_items: "Ľutujeme, žiadne výsledky nenájdené."
18
- no_items_yet: 'Momentálne nie sú žiadne novinky. Klikni na "Pridať novinku" pre vytvorenie prvej.'
19
- news_items:
20
- show:
21
- back_to_index: "Návrat na zoznam noviniek"
22
- published: Zverejnené
23
- recent_posts:
24
- recent_posts: Posledné príspevky
25
- index:
26
- published: Zverejnené
27
- read_more: Čítať viac
28
- no_items_yet: Neexistujú žiadne záznamy noviniek.
26
+ published: Zverejnené
27
+ read_more: Čítať viac
28
+ no_items_yet: Neexistujú žiadne záznamy noviniek.
29
29
  activerecord:
30
30
  attributes:
31
- news_item:
31
+ 'refinery/news/item':
32
32
  title: Názov
33
33
  body: Obsah
34
34
  publish_date: Dátum zverejnenia
35
35
  models:
36
- news_item: Novinka
36
+ 'refinery/news/item': Novinka
@@ -1,36 +1,38 @@
1
1
  sl:
2
- plugins:
3
- refinerycms_news:
4
- title: Novice
5
- description: Upravljanje z novicami v obliki blog-a
6
- admin:
7
- news_items:
8
- news_item:
9
- view_live_html: "Poglej si to novico v živo <br/><em>(odpre se v novem oknu)</em>"
10
- edit: "Uredi novico"
11
- delete: "Odstrani novico"
12
- published: Objavljeno
13
- index:
14
- actions: Akcije
15
- create: "Ustvari novico"
16
- news_item: Novica
17
- no_items: "Oprostite, rezultat iskanja ni vrnil zadetkov."
18
- no_items_yet: 'Trenutno še ni vpisane nobene novice. Ustvarite prvo novico s klikom na "Ustvari novico".'
19
- news_items:
20
- show:
21
- back_to_index: "Nazaj na seznam novic"
22
- published: Objavljeno
23
- recent_posts:
24
- recent_posts: Zadnji vnosi
25
- index:
26
- published: Objavljeno
27
- read_more: Preberi več
28
- no_items_yet: Trenutno še ni vpisane nobene novice.
2
+ refinery:
3
+ plugins:
4
+ refinerycms_news:
5
+ title: Novice
6
+ description: Upravljanje z novicami v obliki blog-a
7
+ news:
8
+ admin:
9
+ items:
10
+ item:
11
+ view_live_html: "Poglej si to novico v živo <br/><em>(odpre se v novem oknu)</em>"
12
+ edit: "Uredi novico"
13
+ delete: "Odstrani novico"
14
+ published: Objavljeno
15
+ index:
16
+ actions: Akcije
17
+ create: "Ustvari novico"
18
+ item: Novica
19
+ no_items: "Oprostite, rezultat iskanja ni vrnil zadetkov."
20
+ no_items_yet: 'Trenutno še ni vpisane nobene novice. Ustvarite prvo novico s klikom na "Ustvari novico".'
21
+ items:
22
+ show:
23
+ back_to_index: "Nazaj na seznam novic"
24
+ published: Objavljeno
25
+ recent_posts:
26
+ recent_posts: Zadnji vnosi
27
+ index:
28
+ published: Objavljeno
29
+ read_more: Preberi več
30
+ no_items_yet: Trenutno še ni vpisane nobene novice.
29
31
  activerecord:
30
32
  attributes:
31
- news_item:
33
+ 'refinery/news/item':
32
34
  title: Naslov
33
35
  body: Opis
34
36
  publish_date: Datum objave
35
37
  models:
36
- news_item: Novice
38
+ 'refinery/news/item': Novice
@@ -0,0 +1,37 @@
1
+ zh-CN:
2
+ refinery:
3
+ plugins:
4
+ refinerycms_news:
5
+ title: 新闻
6
+ description: 提供一个简单的新闻分类
7
+ news:
8
+ admin:
9
+ item:
10
+ view_live_html: "查看这条新闻 <br/><em>(在新窗口打开)</em>"
11
+ edit: "编辑这条新闻"
12
+ delete: "永远删除这条新闻"
13
+ published: 已发布
14
+ index:
15
+ actions: 动作
16
+ create: "添加一条新闻"
17
+ item: 新闻
18
+ no_items: "对不起,没有返回结果."
19
+ no_items_yet: '目前没有新闻. 点击 "添加新闻" 来添加你的第一条新闻.'
20
+ show:
21
+ back_to_index: "返回所有新闻"
22
+ published: 已发布
23
+ recent_posts:
24
+ recent_posts: 最近新闻
25
+ index:
26
+ published: 已发布
27
+ read_more: 更多
28
+ no_items_yet: 目前没有新闻。
29
+ activerecord:
30
+ attributes:
31
+ 'refinery/news/item':
32
+ title: 标题
33
+ body: 正文
34
+ publish_date: 发布时间
35
+ expiration_date: 过期时间
36
+ models:
37
+ 'refinery/news/item': 新闻条目
@@ -0,0 +1,37 @@
1
+ zh-TW:
2
+ plugins:
3
+ refinerycms_news:
4
+ title: 新聞
5
+ description: 提供簡單的新聞發佈功能
6
+ admin:
7
+ item:
8
+ view_live_html: "查看此新聞 <br/><em>(在新視窗打開)</em>"
9
+ edit: "編輯此新聞"
10
+ delete: "永遠删除此新聞"
11
+ published: 已發佈
12
+ index:
13
+ actions: 動作
14
+ create: "新增新聞"
15
+ item: 新聞
16
+ no_items: "對不起,找不到資料."
17
+ no_items_yet: '目前沒有新聞. 點選 "新增新聞" 來新增你的第一條新聞.'
18
+ items:
19
+ show:
20
+ back_to_index: "回到新聞清單"
21
+ published: 已發佈
22
+ recent_posts:
23
+ recent_posts: 近期發佈新聞
24
+ index:
25
+ published: 已發佈
26
+ read_more: 更多
27
+ no_items_yet: 目前沒有新聞.
28
+ activerecord:
29
+ attributes:
30
+ item:
31
+ title: 標題
32
+ body: 內文
33
+ publish_date: 發佈時間
34
+ expiration_date: 失效時間
35
+ models:
36
+ item: 新聞條目
37
+
data/config/routes.rb CHANGED
@@ -1,8 +1,16 @@
1
- Refinery::Application.routes.draw do
2
- resources :news, :as => :news_items, :controller => :news_items, :only => [:show, :index]
1
+ Refinery::Core::Engine.routes.draw do
2
+ namespace :news do
3
+ root :to => "items#index"
4
+ get 'archive/:year(/:month)', :to => 'items#archive', :as => 'items_archive'
5
+ resources :items, :only => [:show, :index], :path => ''
6
+ end
3
7
 
4
- scope(:path => 'refinery', :as => 'admin', :module => 'admin') do
5
- resources :news, :except => :show, :as => :news_items, :controller => :news_items
8
+ namespace :news, :path => '' do
9
+ namespace :admin, :path => 'refinery' do
10
+ scope :path => 'news' do
11
+ root :to => "items#index"
12
+ resources :items, :except => :show
13
+ end
14
+ end
6
15
  end
7
16
  end
8
-
@@ -0,0 +1,23 @@
1
+ class CreateNewsItems < ActiveRecord::Migration
2
+
3
+ def up
4
+ create_table ::Refinery::News::Item.table_name do |t|
5
+ t.string :title
6
+ t.text :body
7
+ t.datetime :publish_date
8
+
9
+ t.timestamps
10
+ end
11
+
12
+ add_index ::Refinery::News::Item.table_name, :id
13
+ end
14
+
15
+ def down
16
+ ::Refinery::UserPlugin.destroy_all :name => "refinerycms_news"
17
+
18
+ ::Refinery::Page.delete_all :link_url => "/news"
19
+
20
+ drop_table ::Refinery::News::Item.table_name
21
+ end
22
+
23
+ end
@@ -0,0 +1,15 @@
1
+ class AddExternalUrlToNewsItems < ActiveRecord::Migration
2
+
3
+ def up
4
+ unless ::Refinery::News::Item.column_names.map(&:to_sym).include?(:external_url)
5
+ add_column ::Refinery::News::Item.table_name, :external_url, :string
6
+ end
7
+ end
8
+
9
+ def down
10
+ if ::Refinery::News::Item.column_names.map(&:to_sym).include?(:external_url)
11
+ remove_column ::Refinery::News::Item.table_name, :external_url
12
+ end
13
+ end
14
+
15
+ end
@@ -0,0 +1,21 @@
1
+ class TranslateNewsItems < ActiveRecord::Migration
2
+
3
+ def up
4
+ ::Refinery::News::Item.reset_column_information
5
+ unless defined?(::Refinery::News::Item::Translation) && ::Refinery::News::Item::Translation.table_exists?
6
+ ::Refinery::News::Item.create_translation_table!({
7
+ :title => :string,
8
+ :body => :text,
9
+ }, {
10
+ :migrate_data => true
11
+ })
12
+ end
13
+ end
14
+
15
+ def down
16
+ ::Refinery::News::Item.reset_column_information
17
+
18
+ ::Refinery::News::Item.drop_translation_table!
19
+ end
20
+
21
+ end
@@ -0,0 +1,13 @@
1
+ class AddImageIdToNewsItems < ActiveRecord::Migration
2
+
3
+ def up
4
+ unless ::Refinery::News::Item.column_names.map(&:to_sym).include?(:image_id)
5
+ add_column ::Refinery::News::Item.table_name, :image_id, :integer
6
+ end
7
+ end
8
+
9
+ def down
10
+ remove_column ::Refinery::News::Item.table_name, :image_id
11
+ end
12
+
13
+ end
@@ -0,0 +1,15 @@
1
+ class AddExpirationDateToNewsItems < ActiveRecord::Migration
2
+
3
+ def up
4
+ unless ::Refinery::News::Item.column_names.map(&:to_sym).include?(:expiration_date)
5
+ add_column ::Refinery::News::Item.table_name, :expiration_date, :datetime
6
+ end
7
+ end
8
+
9
+ def down
10
+ if ::Refinery::News::Item.column_names.map(&:to_sym).include?(:expiration_date)
11
+ remove_column ::Refinery::News::Item.table_name, :expiration_date
12
+ end
13
+ end
14
+
15
+ end