diff --git a/app/controllers/blog/posts_controller.rb b/app/controllers/blog/posts_controller.rb index 5de6984..eabb742 100644 --- a/app/controllers/blog/posts_controller.rb +++ b/app/controllers/blog/posts_controller.rb @@ -3,41 +3,21 @@ class Blog::PostsController < BlogController before_filter :find_all_blog_posts, :except => [:archive] before_filter :find_blog_post, :only => [:show, :comment, :update_nav] - respond_to :html, :js, :rss if Rails.version >= '3.0.0' - def index - if Rails.version < '3.0.0' - # TODO: respond_to block - else - respond_with (@blog_posts) do |format| - format.html - format.rss - end - end + # TODO: respond_to block end def show @blog_comment = BlogComment.new - if Rails.version < '3.0.0' - # TODO: respond_to block - else - respond_with (@blog_post) do |format| - format.html { present(@page) } - format.js { render :partial => 'post', :layout => false } - end - end + # TODO: respond_to block end def comment if (@blog_comment = @blog_post.comments.create(params[:blog_comment])).valid? if BlogComment::Moderation.enabled? or @blog_comment.ham? begin - if Rails.version < '3.0.0' - Blog::CommentMailer.deliver_notification(@blog_comment, request) - else - Blog::CommentMailer.notification(@blog_comment, request).deliver - end + Blog::CommentMailer.deliver_notification(@blog_comment, request) rescue logger.warn "There was an error delivering a blog comment notification.\n#{$!}\n" end @@ -63,11 +43,7 @@ class Blog::PostsController < BlogController :page => params[:page], :per_page => RefinerySetting.find_or_set(:blog_posts_per_page, 10) }) - if Rails.version < '3.0.0' - # TODO: respond_to block - else - respond_with (@blog_posts) - end + # TODO: respond_to block end protected diff --git a/app/models/blog_comment.rb b/app/models/blog_comment.rb index 63f9731..4d8d5c1 100644 --- a/app/models/blog_comment.rb +++ b/app/models/blog_comment.rb @@ -14,15 +14,9 @@ class BlogComment < ActiveRecord::Base validates_format_of :email, :with => /^([^@\s]+)@((?:[-a-z0-9]+\.)+[a-z]{2,})$/i - if Rails.version < '3.0.0' - named_scope :unmoderated, :conditions => {:state => nil} - named_scope :approved, :conditions => {:state => 'approved'} - named_scope :rejected, :conditions => {:state => 'rejected'} - else - scope :unmoderated, :conditions => {:state => nil} - scope :approved, :conditions => {:state => 'approved'} - scope :rejected, :conditions => {:state => 'rejected'} - end + named_scope :unmoderated, :conditions => {:state => nil} + named_scope :approved, :conditions => {:state => 'approved'} + named_scope :rejected, :conditions => {:state => 'rejected'} def approve! self.update_attribute(:state, 'approved') diff --git a/app/models/blog_post.rb b/app/models/blog_post.rb index b965e5d..fd071a3 100644 --- a/app/models/blog_post.rb +++ b/app/models/blog_post.rb @@ -10,33 +10,14 @@ class BlogPost < ActiveRecord::Base has_friendly_id :title, :use_slug => true - if Rails.version < '3.0.0' - named_scope :by_archive, lambda { |archive_date| {:conditions => ['published_at between ? and ?', archive_date.beginning_of_month, archive_date.end_of_month], :order => "published_at DESC"} } - else - scope :by_archive, lambda { |archive_date| - where(['published_at between ? and ?', archive_date.beginning_of_month, archive_date.end_of_month]).order("published_at DESC") - } - end + named_scope :by_archive, lambda { |archive_date| {:conditions => ['published_at between ? and ?', archive_date.beginning_of_month, archive_date.end_of_month], :order => "published_at DESC"} } - if Rails.version < '3.0.0' - named_scope :all_previous, :conditions => ['published_at <= ?', Time.now.beginning_of_month], :order => "published_at DESC" - else - scope :all_previous, where(['published_at <= ?', Time.now.beginning_of_month]).order("published_at DESC") - end + named_scope :all_previous, :conditions => ['published_at <= ?', Time.now.beginning_of_month], :order => "published_at DESC" - if Rails.version < '3.0.0' - named_scope :live, lambda { {:conditions => ["published_at < ? and draft = ?", Time.now, false], :order => "published_at DESC"} } - else - scope :live, lambda { where( "published_at < ? and draft = ?", Time.now, false).order("published_at DESC") } - end + named_scope :live, lambda { {:conditions => ["published_at < ? and draft = ?", Time.now, false], :order => "published_at DESC"} } - if Rails.version < '3.0.0' - named_scope :previous, lambda { |i| { :conditions => ["published_at < ?", i.published_at], :order => "published_at DESC", :limit => 1 } } - named_scope :next, lambda { |i| { :condtions => ["published_at > ?", i.published_at], :order => "published_at ASC", :limit => 1 } } - else - scope :previous, lambda { |i| where(["published_at < ?", i.published_at]).order("published_at DESC").limit(1) } - scope :next, lambda { |i| where(["published_at > ?", i.published_at]).order("published_at ASC").limit(1) } - end + named_scope :previous, lambda { |i| { :conditions => ["published_at < ?", i.published_at], :order => "published_at DESC", :limit => 1 } } + named_scope :next, lambda { |i| { :condtions => ["published_at > ?", i.published_at], :order => "published_at ASC", :limit => 1 } } def next self.class.next(self).first diff --git a/app/views/admin/blog/categories/_form.html.erb b/app/views/admin/blog/categories/_form.html.erb index 28227ae..286291f 100644 --- a/app/views/admin/blog/categories/_form.html.erb +++ b/app/views/admin/blog/categories/_form.html.erb @@ -1,13 +1,5 @@ <% form_for [:admin, @blog_category] do |f| -%> - <% if Rails.version < '3.0.0'%> - <%= f.error_messages %> - <% else %> - <%= render :partial => "/shared/admin/error_messages", - :locals => { - :object => f.object, - :include_object_name => true - } %> - <% end %> + <%= f.error_messages %>
<%= f.label :title -%> diff --git a/app/views/admin/blog/posts/_form.html.erb b/app/views/admin/blog/posts/_form.html.erb index 5779e4c..8310a72 100644 --- a/app/views/admin/blog/posts/_form.html.erb +++ b/app/views/admin/blog/posts/_form.html.erb @@ -1,13 +1,5 @@ <% form_for [:admin, @blog_post] do |f| -%> - <% if Rails.version < '3.0.0'%> - <%= f.error_messages %> - <% else %> - <%= render :partial => "/shared/admin/error_messages", - :locals => { - :object => f.object, - :include_object_name => true - } %> - <% end %> + <%= f.error_messages %>
<%= f.label :title -%> diff --git a/app/views/blog/posts/show.html.erb b/app/views/blog/posts/show.html.erb index 72916f3..ed154ea 100644 --- a/app/views/blog/posts/show.html.erb +++ b/app/views/blog/posts/show.html.erb @@ -23,26 +23,15 @@

<%= t('.comments.add') %>

<% form_for [:blog_post, @blog_comment] do |f| %> - <% if Rails.version < '3.0.0'%> - <%= f.error_messages %> - <% else %> - <%= render :partial => "/shared/admin/error_messages", - :locals => { - :object => f.object, - :include_object_name => true - } %> - <% end %> + <%= f.error_messages %> +
<%= f.label :name %> <%= f.text_field :name %>
<%= f.label :email %> - <% if Rails.version > '3.0.0' %> - <%= f.email_field :email %> - <% else %> - <%= f.text_field :email %> - <% end %> + <%= f.text_field :email %>
<%= f.label :message %> diff --git a/config/routes.rb b/config/routes.rb index 2cb4723..e7b0663 100644 --- a/config/routes.rb +++ b/config/routes.rb @@ -1,75 +1,33 @@ -if Rails.version < '3.0.0' - ActionController::Routing::Routes.draw do |map| - map.namespace(:blog) do |blog| - blog.rss_feed 'feed.rss', :controller => 'posts', :action => 'index', :format => 'rss' - blog.root :controller => "posts", :action => 'index' - blog.post ':id', :controller => "posts", :action => 'show' - blog.category 'categories/:id', :controller => "categories", :action => 'show' - blog.post_blog_comments ':id/comments', :controller => 'posts', :action => 'comment' +ActionController::Routing::Routes.draw do |map| + map.namespace(:blog) do |blog| + blog.rss_feed 'feed.rss', :controller => 'posts', :action => 'index', :format => 'rss' + blog.root :controller => "posts", :action => 'index' + blog.post ':id', :controller => "posts", :action => 'show' + blog.category 'categories/:id', :controller => "categories", :action => 'show' + blog.post_blog_comments ':id/comments', :controller => 'posts', :action => 'comment' - ## what is the rails2 syntax for this? sorry ;__; - # get 'archive/:year/:month', :to => 'posts#archive', :as => 'archive_blog_posts' - end - - map.namespace(:admin, :path_prefix => 'refinery') do |admin| - admin.namespace :blog do |blog| - blog.resources :posts - - blog.resources :categories - - blog.resources :comments, :collection => { - :approved => :get, - :rejected => :get - }, :member => { - :approved => :get, - :rejected => :get - } - - blog.resources :settings, :collection => { - :notification_recipients => [:get, :post], - :moderation => :get - } - end - end + ## TODO: what is the rails2 syntax for this? sorry ;__; + # get 'archive/:year/:month', :to => 'posts#archive', :as => 'archive_blog_posts' end -else - Refinery::Application.routes.draw do - scope(:path => 'blog', :module => 'blog') do - root :to => 'posts#index', :as => 'blog_root' - match 'feed.rss', :to => 'posts#index.rss', :as => 'blog_rss_feed' - match ':id', :to => 'posts#show', :as => 'blog_post' - match 'categories/:id', :to => 'categories#show', :as => 'blog_category' - match ':id/comments', :to => 'posts#comment', :as => 'blog_post_blog_comments' - get 'archive/:year/:month', :to => 'posts#archive', :as => 'archive_blog_posts' - end - scope(:path => 'refinery', :as => 'admin', :module => 'admin') do - scope(:path => 'blog', :as => 'blog', :module => 'blog') do - root :to => 'posts#index' - resources :posts + map.namespace(:admin, :path_prefix => 'refinery') do |admin| + admin.namespace :blog do |blog| + blog.resources :posts - resources :categories + blog.resources :categories - resources :comments do - collection do - get :approved - get :rejected - end - member do - get :approved - get :rejected - end - end + blog.resources :comments, :collection => { + :approved => :get, + :rejected => :get + }, :member => { + :approved => :get, + :rejected => :get + } - resources :settings do - collection do - get :notification_recipients - post :notification_recipients - - get :moderation - end - end - end + blog.resources :settings, :collection => { + :notification_recipients => [:get, :post], + :moderation => :get + } end end end diff --git a/lib/gemspec.rb b/lib/gemspec.rb index 5e3606b..6734af3 100644 --- a/lib/gemspec.rb +++ b/lib/gemspec.rb @@ -17,7 +17,7 @@ Gem::Specification.new do |s| s.homepage = %q{http://refinerycms.com} s.authors = %w(Resolve\\ Digital Neoteric\\ Design) s.require_paths = %w(lib) - s.add_dependency 'refinerycms', '>= 0.9.7.13' + s.add_dependency 'refinerycms', '~> 0.9.7.13' s.add_dependency 'filters_spam', '~> 0.2' s.files = %w( diff --git a/readme.md b/readme.md index 20d6187..1421bb3 100644 --- a/readme.md +++ b/readme.md @@ -1,28 +1,28 @@ -# About +# Refinery CMS Blog - Rails 2 branch Simple blog engine for [Refinery CMS](http://refinerycms.com). It supports posts, categories and comments. +Refinery CMS Blog supports Rails 3 on the [master branch](http://github.com/resolve/refinerycms-blog). + Options: * Comment moderation * [ShareThis.com](http://sharethis.com) support on posts. Set your key in Refinery's settings area to enable this. -# Install +## Install Open up your ``Gemfile`` and add at the bottom this line gem 'refinerycms-blog', '= 1.0.rc16' +Please note 1.0.rc16 is the last version of Refinery CMS Blog to support Rails 2. + Now run ``bundle install`` Next to install the blog plugin run (for Rails 2): ruby script/generate refinerycms_blog -Or, for Rails 3: - - rails generate refinerycms_blog - Finally migrate your database and you're done. - rake db:migrate \ No newline at end of file + rake db:migrate diff --git a/refinerycms-blog.gemspec b/refinerycms-blog.gemspec index 348f27c..c3baaf2 100644 --- a/refinerycms-blog.gemspec +++ b/refinerycms-blog.gemspec @@ -2,13 +2,13 @@ Gem::Specification.new do |s| s.name = %q{refinerycms-blog} s.version = %q{1.0.rc16} s.description = %q{A really straightforward open source Ruby on Rails blog engine designed for integration with RefineryCMS.} - s.date = %q{2010-11-22} + s.date = %q{2010-12-01} s.summary = %q{Ruby on Rails blogging engine for RefineryCMS.} s.email = %q{info@refinerycms.com} s.homepage = %q{http://refinerycms.com} s.authors = %w(Resolve\ Digital Neoteric\ Design) s.require_paths = %w(lib) - s.add_dependency 'refinerycms', '>= 0.9.7.13' + s.add_dependency 'refinerycms', '~> 0.9.7.13' s.add_dependency 'filters_spam', '~> 0.2' s.files = %w( @@ -87,6 +87,13 @@ Gem::Specification.new do |s| config/locales/nb.yml config/locales/nl.yml config/routes.rb + features + features/support + features/support/factories + features/support/factories/blog_categories.rb + features/support/factories/blog_comments.rb + features/support/factories/blog_posts.rb + features/support/paths.rb Gemfile Gemfile.lock generators