]> git.openstreetmap.org Git - rails.git/blobdiff - app/controllers/diary_entries_controller.rb
Show all diary comments to administrators
[rails.git] / app / controllers / diary_entries_controller.rb
index 58671652f2c1e2e4c0aafcda866544e62f85fb4a..f827bac3f165a00d1f94313975c291fbcf329979 100644 (file)
@@ -74,6 +74,7 @@ class DiaryEntriesController < ApplicationController
 
   def comment
     @entry = DiaryEntry.find(params[:id])
+    @comments = @entry.visible_comments
     @diary_comment = @entry.comments.build(comment_params)
     @diary_comment.user = current_user
     if @diary_comment.save
@@ -202,6 +203,7 @@ class DiaryEntriesController < ApplicationController
     @entry = @user.diary_entries.visible.where(:id => params[:id]).first
     if @entry
       @title = t "diary_entries.show.title", :user => params[:display_name], :title => @entry.title
+      @comments = current_user&.administrator? ? @entry.comments : @entry.visible_comments
     else
       @title = t "diary_entries.no_such_entry.title", :id => params[:id]
       render :action => "no_such_entry", :status => :not_found
@@ -226,6 +228,12 @@ class DiaryEntriesController < ApplicationController
     redirect_to diary_entry_path(comment.diary_entry.user, comment.diary_entry)
   end
 
+  def unhidecomment
+    comment = DiaryComment.find(params[:comment])
+    comment.update(:visible => true)
+    redirect_to diary_entry_path(comment.diary_entry.user, comment.diary_entry)
+  end
+
   def comments
     @comment_pages, @comments = paginate(:diary_comments,
                                          :conditions => {