Sha256: df9e027b120fef799866e0b76d94a9db7970060fc94b6bf9a6c04eb59a87b24d

Contents?: true

Size: 1.72 KB

Versions: 5

Compression:

Stored size: 1.72 KB

Contents

class Spud::Admin::PostsController < Spud::Admin::ApplicationController

	layout 'spud/admin/detail'
	respond_to :html, :xml, :json
	before_filter :find_post, :only => [:show, :edit, :update, :destroy]
	add_breadcrumb 'Blog Posts', :spud_admin_posts_path
	belongs_to_spud_app :blog_posts
	cache_sweeper :spud_post_sweeper, :only => [:create, :update, :destroy]

	def index
		@posts = SpudPost.where(:is_news => false).order('published_at desc').includes(:visible_comments, :spam_comments, :author).paginate(:page => params[:page], :per_page => 15)
		respond_with @posts
	end

	def edit
		@categories = SpudPostCategory.grouped
		respond_with @post
	end

	def update
		@categories = SpudPostCategory.grouped
		params[:spud_post][:spud_site_ids] ||= []
		if @post.update_attributes(params[:spud_post])
			flash[:notice] = 'Post was successfully updated.'
		end
    respond_with @post, :location => spud_admin_posts_path
	end

	def new
		@categories = SpudPostCategory.grouped
		@post = SpudPost.new(:published_at => Time.zone.now, :spud_user_id => current_user.id, :spud_site_ids => [session[:admin_site] || 0])
		respond_with @post
	end

	def create
		@categories = SpudPostCategory.grouped
		params[:spud_post][:spud_site_ids] ||= []
		@post = SpudPost.new(params[:spud_post])
		if @post.save
	    flash[:notice] = 'Post was successfully created.'
		end
    respond_with @post, :location => spud_admin_posts_path
	end

	def destroy
		if @post.destroy
	    flash[:notice] = 'Post was successfully deleted.'
		end
    respond_with @post, :location => spud_admin_posts_path
	end

	private

	def find_post
		@post = SpudPost.find(params[:id])
		if @post.blank?
			flash[:error] = "Post not found!"
			redirect_to spud_admin_posts_path and return false
		end
	end

end

Version data entries

5 entries across 5 versions & 2 rubygems

Version Path
spud_blog-0.9.11 app/controllers/spud/admin/posts_controller.rb
tb_blog-1.0.2 app/controllers/spud/admin/posts_controller.rb
tb_blog-1.0.1 app/controllers/spud/admin/posts_controller.rb
tb_blog-1.0 app/controllers/spud/admin/posts_controller.rb
spud_blog-0.9.10 app/controllers/spud/admin/posts_controller.rb