Class: BlogPostPortlet

Inherits:
Portlet
  • Object
show all
Defined in:
app/portlets/blog_post_portlet.rb

Instance Method Summary collapse

Instance Method Details

#create_commentObject



26
27
28
29
30
31
32
33
34
35
36
# File 'app/portlets/blog_post_portlet.rb', line 26

def create_comment
  params[:blog_comment].merge! :ip => request.remote_ip
  blog_comment = BlogComment.new(params[:blog_comment])
  if blog_comment.valid? && blog_comment.save
    url_for_success
  else
    store_params_in_flash
    store_errors_in_flash(blog_comment.errors)
    url_for_failure
  end
end

#renderObject

render_inline false enable_template_editor false



5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
# File 'app/portlets/blog_post_portlet.rb', line 5

def render
  scope = Blog.find(self.blog_id).posts
  if params[:blog_post_id]
    @blog_post = scope.find(params[:blog_post_id])
  elsif params[:slug]
    if params[:year]
      date = Date.new(params[:year].to_i, params[:month].to_i, params[:day].to_i)
      scope = scope.published_between(date, date + 1.day)
    end
    @blog_post = scope.find_by_slug!(params[:slug])
  else
    raise BlogPost::INCORRECT_PARAMETERS
  end

  pmap = flash[instance_name] || params
  pmap[:blog_comment] ||= {}

  @blog_comment = @blog_post.comments.build pmap[:blog_comment]
  @blog_comment.errors.add_from_hash flash["#{instance_name}_errors"]
end