Sha256: 88f7157993fc9e1127c8b18ddad55bfafe9669823bee325f675aaa4e2e269a92

Contents?: true

Size: 1.1 KB

Versions: 9

Compression:

Stored size: 1.1 KB

Contents

class Muck::PostsController < Muck::ContentsController
  unloadable

  before_filter :setup_blog
  
  def index
    @posts = @blog.posts.by_newest
    respond_to do |format|
      format.html { render :template => 'posts/index', :layout => 'popup' }
      format.pjs { render :template => 'posts/index', :layout => false }
    end
  end

  def show
    @content = Content.find(params[:id], :scope => Content.contentable_to_scope(@blog)) if @blog
    @content ||= Content.find(params[:id])
    super
  end
  
  def new
    @content = @blog.posts.new()
    @new_content_message = t('muck.blogs.add_post')
    super
  end
  
  protected
    def setup_blog
      @parent = get_parent
      if @parent && !@parent.is_a?(Blog)
        @blog = @parent.blog
        @blog ||= Blog.find(params[:id], :scope => Blog.blogable_to_scope(@parent))
      else
        @blog = @parent # parent found the blog
      end
      @blog ||= Blog.find(params[:id], :scope => MuckContents::GLOBAL_SCOPE)
    end
    
    def has_permission_to_add_content(user, parent, content)
      return true if parent.can_add_content?(user)
      super
    end
end

Version data entries

9 entries across 9 versions & 1 rubygems

Version Path
muck-blogs-0.1.8 app/controllers/muck/posts_controller.rb
muck-blogs-0.1.7 app/controllers/muck/posts_controller.rb
muck-blogs-0.1.6 app/controllers/muck/posts_controller.rb
muck-blogs-0.1.5 app/controllers/muck/posts_controller.rb
muck-blogs-0.1.4 app/controllers/muck/posts_controller.rb
muck-blogs-0.1.1 app/controllers/muck/posts_controller.rb
muck-blogs-0.1.2 app/controllers/muck/posts_controller.rb
muck-blogs-0.1.3 app/controllers/muck/posts_controller.rb
muck-blogs-0.1.0 app/controllers/muck/posts_controller.rb