Sha256: 4542ca5e6c6c41ba5e91976067f33790850d638910cdfc17d19d52a611ce7e40

Contents?: true

Size: 1.11 KB

Versions: 5

Compression:

Stored size: 1.11 KB

Contents

module Commontator
  class ThreadsController < Commontator::ApplicationController
    skip_before_filter :ensure_user, :only => :show

    before_filter :get_thread
    before_filter :set_commontable_url, :only => :show

    # GET /threads/1
    def show
      commontator_thread_show(@thread.commontable)

      respond_to do |format|
        format.html { redirect_to commontable_url }
        format.js
      end
    end
    
    # PUT /threads/1/close
    def close
      raise SecurityTransgression unless @thread.can_be_edited_by?(@user)

      @thread.errors.add(:base, 'This thread has already been closed.') \
        unless @thread.close(@user)

      respond_to do |format|
        format.html { redirect_to @thread }
        format.js { render :show }
      end
    end
    
    # PUT /threads/1/reopen
    def reopen
      raise SecurityTransgression unless @thread.can_be_edited_by?(@user)

      @thread.errors.add(:base, 'This thread is not closed.') \
        unless @thread.reopen

      respond_to do |format|
        format.html { redirect_to @thread }
        format.js { render :show }
      end
    end
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
commontator-4.2.2 app/controllers/commontator/threads_controller.rb
commontator-4.2.1 app/controllers/commontator/threads_controller.rb
commontator-4.2.0 app/controllers/commontator/threads_controller.rb
commontator-4.1.2 app/controllers/commontator/threads_controller.rb
commontator-4.1.1 app/controllers/commontator/threads_controller.rb