diff options
28 files changed, 60 insertions, 94 deletions
@@ -2,14 +2,14 @@ source "http://rubygems.org" gemspec -gem 'refinerycms', :git => 'git://github.com/resolve/refinerycms.git' +gem 'refinerycms', :git => 'git://github.com/refinery/refinerycms.git' gem 'refinerycms-i18n', :git => 'git://github.com/parndt/refinerycms-i18n.git' gem 'refinerycms-settings', :git => 'git://github.com/parndt/refinerycms-settings.git' group :development, :test do require 'rbconfig' - gem 'refinerycms-testing', :git => 'git://github.com/resolve/refinerycms.git' + gem 'refinerycms-testing', :git => 'git://github.com/refinery/refinerycms.git' gem 'guard-rspec', '~> 1.1.0' platforms :jruby do diff --git a/app/controllers/refinery/blog/blog_controller.rb b/app/controllers/refinery/blog/blog_controller.rb index 54a8b03..6327199 100644 --- a/app/controllers/refinery/blog/blog_controller.rb +++ b/app/controllers/refinery/blog/blog_controller.rb @@ -10,7 +10,7 @@ module Refinery protected def find_page - @page = Refinery::Page.find_by_link_url("/blog") + @page = Refinery::Page.find_by_link_url(Refinery::Blog.page_url) end end end diff --git a/app/models/refinery/blog/post.rb b/app/models/refinery/blog/post.rb index 9df7aa3..70c7861 100644 --- a/app/models/refinery/blog/post.rb +++ b/app/models/refinery/blog/post.rb @@ -26,6 +26,7 @@ module Refinery validates :title, :presence => true, :uniqueness => true validates :body, :presence => true + validates :published_at, :author, :presence => true validates :source_url, :url => { :if => 'Refinery::Blog.validate_source_url', :update => true, diff --git a/app/views/refinery/blog/admin/posts/_form.html.erb b/app/views/refinery/blog/admin/posts/_form.html.erb index 9e91133..4aac811 100644 --- a/app/views/refinery/blog/admin/posts/_form.html.erb +++ b/app/views/refinery/blog/admin/posts/_form.html.erb @@ -11,13 +11,6 @@ <%= f.text_field :title, :class => 'larger widest' -%> </div> - <div class="field"> - <p> - <%= f.check_box :draft %> - <%= f.label :draft, t('.save_as_draft'), :class => "stripped" %> - </p> - </div> - <div class='field'> <div id='page-tabs' class='clearfix ui-tabs ui-widget ui-widget-content ui-corner-all'> <ul id='page_parts'> @@ -47,18 +40,13 @@ </div> </div> + <%= render '/refinery/admin/form_advanced_options_menu', :f => f %> + <div class='field'> <%= f.label :tag_list, t('refinery.blog.shared.tags.title') -%> <%= f.text_field :tag_list, :class => 'larger' -%> </div> - <div id='more_options_field'> - <p> - <%= link_to t('.advanced_options'), "#", - :id => 'toggle_advanced_options', - :title => t('.toggle_advanced_options') %> - </p> - </div> <div id='more_options' style="display:none;"> <div class="hemisquare"> <h3><%= t('title', :scope => 'refinery.blog.admin.submenu.categories') %></h3> diff --git a/app/views/refinery/blog/posts/_comments.html.erb b/app/views/refinery/blog/posts/_comments.html.erb index 8415971..daccd78 100644 --- a/app/views/refinery/blog/posts/_comments.html.erb +++ b/app/views/refinery/blog/posts/_comments.html.erb @@ -1,38 +1,37 @@ <aside id="comments"> - <h2><%= t('title', :scope => 'refinery.blog.posts.show.comments') %></h2> <% if (comments = @post.comments.approved).any? %> + <h2><%= t('title', :scope => 'refinery.blog.posts.show.comments') %></h2> <%= render :partial => "comment", :collection => comments %> - <% else %> - <p> - <%= t('none', :scope => 'refinery.blog.shared.comments') %>. - </p> <% end %> - <% flash.each do |key, value| %> - <div id='flash' class="flash flash_<%= key %>"> - <%= value %> - </div> - <% end %> + <% if Refinery::Blog::Post.comments_allowed? %> + + <% flash.each do |key, value| %> + <div id='flash' class="flash flash_<%= key %>"> + <%= value %> + </div> + <% end %> - <h2><%= t('add', :scope => 'refinery.blog.posts.show.comments') %></h2> - <%= form_for [refinery, :blog, @comment] do |f| %> - <%= render "/refinery/admin/error_messages", - :object => f.object, - :include_object_name => true %> - <div class='field'> - <%= f.label :name %> - <%= f.text_field :name %> - </div> - <div class='field'> - <%= f.label :email %> - <%= f.email_field :email %> - </div> - <div class='field message_field'> - <%= f.label :message %> - <%= f.text_area :message, :rows => 6 %> - </div> - <div class='field form-actions'> - <%= f.submit t('submit', :scope => 'refinery.blog.posts.show') %> - </div> + <h2><%= t('add', :scope => 'refinery.blog.posts.show.comments') %></h2> + <%= form_for [refinery, :blog, @comment] do |f| %> + <%= render "/refinery/admin/error_messages", + :object => f.object, + :include_object_name => true %> + <div class='field'> + <%= f.label :name %> + <%= f.text_field :name %> + </div> + <div class='field'> + <%= f.label :email %> + <%= f.email_field :email %> + </div> + <div class='field message_field'> + <%= f.label :message %> + <%= f.text_area :message, :rows => 6 %> + </div> + <div class='field form-actions'> + <%= f.submit t('submit', :scope => 'refinery.blog.posts.show') %> + </div> + <% end %> <% end %> </aside> diff --git a/app/views/refinery/blog/posts/show.html.erb b/app/views/refinery/blog/posts/show.html.erb index bc9b203..f04ae0b 100644 --- a/app/views/refinery/blog/posts/show.html.erb +++ b/app/views/refinery/blog/posts/show.html.erb @@ -3,9 +3,7 @@ <%= render 'post' %> </div> - <% if Refinery::Blog::Post.comments_allowed? %> - <%= render 'comments'%> - <% end %> + <%= render 'comments' %> <% end %> <%= render '/refinery/blog/shared/body_content_right' %> diff --git a/app/views/refinery/blog/shared/_post.html.erb b/app/views/refinery/blog/shared/_post.html.erb index 40ae70b..532d48f 100644 --- a/app/views/refinery/blog/shared/_post.html.erb +++ b/app/views/refinery/blog/shared/_post.html.erb @@ -34,15 +34,11 @@ <%= link_to t('read_more', :scope => 'refinery.blog.shared.posts'), refinery.blog_post_path(post) %> <% end %> </p> - <aside class='comment_count'> - <% if Refinery::Blog::Post.comments_allowed? %> - <% if post.comments.any? %> - (<%= pluralize(post.comments.approved.count, t('singular', :scope => 'refinery.blog.shared.comments')) %>) - <% else %> - (<%= t('none', :scope => 'refinery.blog.shared.comments') %>) - <% end %> - <% end %> - </aside> + <% if Refinery::Blog::Post.comments_allowed? %> + <aside class='comment_count'> + <%= link_to "#{t('title', :scope => 'refinery.blog.posts.show.comments')} (#{post.comments.approved.count})", refinery.blog_post_path(post) << '#comments' %> + </aside> + <% end %> </footer> </article> <% end %> diff --git a/app/views/refinery/blog/shared/_rss_feed.html.erb b/app/views/refinery/blog/shared/_rss_feed.html.erb index 27ddf23..20979b4 100644 --- a/app/views/refinery/blog/shared/_rss_feed.html.erb +++ b/app/views/refinery/blog/shared/_rss_feed.html.erb @@ -1,2 +1,4 @@ <h2><%= t('.title') %></h2> <%= link_to t('.subscribe'), refinery.blog_rss_feed_path, :id => "rss_feed_subscribe"%> + +<% content_for :meta, auto_discovery_link_tag(:atom, refinery.blog_rss_feed_url, :title => 'RSS Feed') -%> diff --git a/config/locales/bg.yml b/config/locales/bg.yml index 08735fa..502ec54 100644 --- a/config/locales/bg.yml +++ b/config/locales/bg.yml @@ -35,9 +35,7 @@ bg: approve: Одобряване на този коментар posts: form: - advanced_options: Разширени настройки toggle_advanced_options: Натиснете, за да достъпите настройките за етикета "meta" и менюто - save_as_draft: Запис като чернова published_at: Дата на публикуване custom_url: Уеб адрес по избор custom_url_help: Вместо от заглавието, генерирайте уеб адреса за тази публикация чрез този текст. diff --git a/config/locales/cs.yml b/config/locales/cs.yml index 28b0fb4..58e7a31 100644 --- a/config/locales/cs.yml +++ b/config/locales/cs.yml @@ -35,9 +35,7 @@ cs: approve: Schváliť komentář posts: form: - advanced_options: Pokročilé nastavení toggle_advanced_options: Klikni pro přístup k nastavením meta tagů a menu - save_as_draft: Uložit jako koncept published_at: Datum publikování index: no_items_yet: 'Nejsou žádné články na blogu. Klikni na "%{create}" pro přidání prvního.' diff --git a/config/locales/de.yml b/config/locales/de.yml index 7d458cd..357f3a5 100644 --- a/config/locales/de.yml +++ b/config/locales/de.yml @@ -35,9 +35,7 @@ de: approve: Kommentar genehmigen posts: form: - advanced_options: Erweiterte Optionen toggle_advanced_options: 'Klicken, um auf Meta-Tag-Einstellungen und Menüoptionen zuzugreifen' - save_as_draft: Als Entwurf speichern published_at: Veröffentlichungsdatum custom_url: Eigene Url custom_url_help: Url von disem Text generieren und nicht vom Titel. diff --git a/config/locales/en.yml b/config/locales/en.yml index d21c8e2..10cd1ab 100644 --- a/config/locales/en.yml +++ b/config/locales/en.yml @@ -35,9 +35,7 @@ en: approve: Approve this comment posts: form: - advanced_options: Advanced Options toggle_advanced_options: Click to access meta tag settings and menu options - save_as_draft: Save as Draft published_at: Publish Date custom_url: Custom Url custom_url_help: Generate the url for the blog post from this text instead of the title. diff --git a/config/locales/es.yml b/config/locales/es.yml index 8c275a7..836eaea 100644 --- a/config/locales/es.yml +++ b/config/locales/es.yml @@ -35,9 +35,7 @@ es: approve: Aprovar este comentario posts: form: - advanced_options: Opciones avanzadas toggle_advanced_options: Click para acceder a las opciones de menú y etiquetas - save_as_draft: Guardar Borrador published_at: Fecha de publicación index: no_items_yet: 'Aún no hay entradas en el Blog. Haz click en "%{create}" para añadir el primero' diff --git a/config/locales/fr.yml b/config/locales/fr.yml index 2acd63e..28b326e 100644 --- a/config/locales/fr.yml +++ b/config/locales/fr.yml @@ -35,9 +35,7 @@ fr: approve: Approuver ce commentaire posts: form: - advanced_options: Options avancées toggle_advanced_options: Cliquez ici pour accéder aux paramêtres des meta-tags et au menu des options - save_as_draft: Enregistrer comme Brouillon published_at: Date de publication index: no_items_yet: 'Il n''y a aucun article pour l''instant. Cliquez sur "%{create}" pour ajouter votre premier article.' diff --git a/config/locales/it.yml b/config/locales/it.yml index 2a0a959..043f7ac 100644 --- a/config/locales/it.yml +++ b/config/locales/it.yml @@ -35,9 +35,7 @@ it: approve: Approva questo commento posts: form: - advanced_options: Opzioni Avanzate toggle_advanced_options: Clicca per accedere alle impostationi dei meta tag e del menu - save_as_draft: Salva come Bozza published_at: Data di Pubblicazione custom_url: Url personalizzato custom_url_help: Puoi scegliere un url specifico per questo articolo. Lasciando questo campo vuoto verrà utilizzato il titolo. diff --git a/config/locales/ja.yml b/config/locales/ja.yml index 3672c7d..614bae0 100644 --- a/config/locales/ja.yml +++ b/config/locales/ja.yml @@ -35,9 +35,7 @@ ja: approve: このコメントを承認する posts: form: - advanced_options: 詳細オプション toggle_advanced_options: メタタグの設定メニューをアクセスするにはここをクリックして下さい - save_as_draft: 下書きとして保存 published_at: 公開時刻 custom_url: カスタムURL custom_url_help: 投稿のURLをここのテキストとして登録する。 diff --git a/config/locales/nl.yml b/config/locales/nl.yml index 6842d4a..aa22e3c 100644 --- a/config/locales/nl.yml +++ b/config/locales/nl.yml @@ -35,9 +35,7 @@ nl: approve: Keur deze reactie goed posts: form: - advanced_options: Geavanceerde eigenschappen toggle_advanced_options: Klik voor toegang tot meta tag instellingen en menu opties - save_as_draft: Sla op als concept published_at: Publicatiedatum index: no_items_yet: 'Er zijn momenteel geen blogposts. Klik op "%{create}" om uw eerste blogpost toe te voegen.' diff --git a/config/locales/pl.yml b/config/locales/pl.yml index 61b7399..7a79eef 100644 --- a/config/locales/pl.yml +++ b/config/locales/pl.yml @@ -35,9 +35,7 @@ pl: approve: Zaakceptuj ten komentarz posts: form: - advanced_options: Opcje zaawansowane toggle_advanced_options: 'Kliknij, aby zarządzać meta-ustawieniami' - save_as_draft: Zapisz jako szkic published_at: Data publikacji index: no_items_yet: 'Na blogu nie ma jeszcze żadnych wpisów. Kliknij "%{create}" aby dodać pierwszy post.' diff --git a/config/locales/pt-BR.yml b/config/locales/pt-BR.yml index 97c11bf..ea3d4dd 100644 --- a/config/locales/pt-BR.yml +++ b/config/locales/pt-BR.yml @@ -35,9 +35,7 @@ pt-BR: approve: Aprovar este comentário posts: form: - advanced_options: Opções avançadas toggle_advanced_options: Clique aqui para acessar as configurações de meta tag e menu - save_as_draft: Salvar como rascunho published_at: Data de publicação index: no_items_yet: 'Ainda não há Posts no Blog. Clique em "%{create}" para adicionar o primeiro post.' diff --git a/config/locales/ru.yml b/config/locales/ru.yml index b6d9d0b..52d7030 100644 --- a/config/locales/ru.yml +++ b/config/locales/ru.yml @@ -35,9 +35,7 @@ ru: approve: Принять этот комментарий posts: form: - advanced_options: Дополнительные настройки toggle_advanced_options: 'Нажмите, чтобы получить доступ к настройкам мета-тегов и меню' - save_as_draft: Сохранить как черновик published_at: Дата публикации index: no_items_yet: 'Записи в блоге отстутствуют. Нажмите "%{create}", чтобы добавить первую запись.' diff --git a/config/locales/sk.yml b/config/locales/sk.yml index 7f37f16..b279494 100644 --- a/config/locales/sk.yml +++ b/config/locales/sk.yml @@ -35,9 +35,7 @@ sk: approve: Schváliť komentár posts: form: - advanced_options: Pokročilé nastavenia toggle_advanced_options: Klikni pre prístup k nastaveniam meta tagov a menu - save_as_draft: Uložiť ako koncept published_at: Dátum publikovania custom_url: Vlastná url custom_url_help: Generovať url pre blog článok z tohto textu namiesto názvu blog článku. diff --git a/config/locales/sv.yml b/config/locales/sv.yml index 0950b20..438e998 100644 --- a/config/locales/sv.yml +++ b/config/locales/sv.yml @@ -35,9 +35,7 @@ sv: approve: Godkänn denna kommentar posts: form: - advanced_options: Avancerat toggle_advanced_options: Klicka för att ställa in metataggar och menyinställningar - save_as_draft: Spara som utkast published_at: Publiceringsdatum custom_url: Anpassad URL custom_url_help: Skapa URL för bloggposten med denna text istället för ttieln diff --git a/config/locales/zh-CN.yml b/config/locales/zh-CN.yml index 894140d..b0f0ba1 100644 --- a/config/locales/zh-CN.yml +++ b/config/locales/zh-CN.yml @@ -35,9 +35,7 @@ zh-CN: approve: 批准此评论 posts: form: - advanced_options: 高级选项 toggle_advanced_options: 点击进入标签详解设置和菜单选项 - save_as_draft: 保存为草稿 published_at: 发布日期 index: no_items_yet: '目前尚未发博。 点击 "%{create}" 添加您的第一篇博文。' diff --git a/config/routes.rb b/config/routes.rb index ad8d138..f3467bd 100644 --- a/config/routes.rb +++ b/config/routes.rb @@ -1,5 +1,5 @@ Refinery::Core::Engine.routes.draw do - namespace :blog do + namespace :blog, :path => Refinery::Blog.page_url do root :to => "posts#index" resources :posts, :only => [:show] @@ -12,7 +12,7 @@ Refinery::Core::Engine.routes.draw do namespace :blog, :path => '' do namespace :admin, :path => 'refinery' do - scope :path => 'blog' do + scope :path => Refinery::Blog.page_url do root :to => "posts#index" resources :posts do diff --git a/lib/generators/refinery/blog/templates/config/initializers/refinery/blog.rb.erb b/lib/generators/refinery/blog/templates/config/initializers/refinery/blog.rb.erb index ac340d7..294c258 100644 --- a/lib/generators/refinery/blog/templates/config/initializers/refinery/blog.rb.erb +++ b/lib/generators/refinery/blog/templates/config/initializers/refinery/blog.rb.erb @@ -8,4 +8,6 @@ Refinery::Blog.configure do |config| # config.post_teaser_length = <%= Refinery::Blog.post_teaser_length.inspect %> # config.share_this_key = <%= Refinery::Blog.share_this_key.inspect %> + + # config.page_url = <%= Refinery::Blog.page_url.inspect %> end diff --git a/lib/refinery/blog/configuration.rb b/lib/refinery/blog/configuration.rb index 0f00501..b7598e8 100644 --- a/lib/refinery/blog/configuration.rb +++ b/lib/refinery/blog/configuration.rb @@ -3,12 +3,13 @@ module Refinery include ActiveSupport::Configurable config_accessor :validate_source_url, :comments_per_page, :posts_per_page, - :post_teaser_length, :share_this_key + :post_teaser_length, :share_this_key, :page_url self.validate_source_url = false self.comments_per_page = 10 self.posts_per_page = 10 self.post_teaser_length = 250 self.share_this_key = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" + self.page_url = "/blog" end end diff --git a/spec/factories/blog_posts.rb b/spec/factories/blog_posts.rb index 1ad2bd2..eebad3c 100644 --- a/spec/factories/blog_posts.rb +++ b/spec/factories/blog_posts.rb @@ -5,6 +5,7 @@ FactoryGirl.define do draft false tag_list "chicago, shopping, fun times" published_at Time.now + author { Factory(:refinery_user) } factory :blog_post_draft do draft true diff --git a/spec/models/refinery/blog/category_spec.rb b/spec/models/refinery/blog/category_spec.rb index 9c4a7d3..ad83017 100644 --- a/spec/models/refinery/blog/category_spec.rb +++ b/spec/models/refinery/blog/category_spec.rb @@ -4,6 +4,7 @@ module Refinery module Blog describe Category do let(:category) { FactoryGirl.create(:blog_category) } + let(:refinery_user) { FactoryGirl.create(:refinery_user) } describe "validations" do it "requires title" do @@ -21,8 +22,15 @@ module Refinery end it "returns posts by published_at date in descending order" do - first_post = category.posts.create!({ :title => "Breaking News: Joe Sak is hot stuff you guys!!", :body => "True story.", :published_at => Time.now.yesterday }) - latest_post = category.posts.create!({ :title => "parndt is p. okay", :body => "For a Kiwi.", :published_at => Time.now }) + first_post = category.posts.create!({ :title => "Breaking News: Joe Sak is hot stuff you guys!!", + :body => "True story.", + :published_at => Time.now.yesterday, + :author => refinery_user }) + + latest_post = category.posts.create!({ :title => "parndt is p. okay", + :body => "For a Kiwi.", + :published_at => Time.now, + :author => refinery_user }) category.posts.first.should == latest_post end |