Sha256: 5d43dd5d5a400e6b5069fc50aa68d2d0c279204bc60f37082c2bd5ffa2904520

Contents?: true

Size: 1.06 KB

Versions: 7

Compression:

Stored size: 1.06 KB

Contents

require 'commontator/shared_helper'
require 'commontator/security_transgression'

module Commontator
  module ControllerIncludes
    def self.included(base)
      base.helper Commontator::SharedHelper
    end
    
    protected

    def commontator_set_new_comment(thread, user)
      return if thread.nil? || thread.config.new_comment_style != :t
      new_comment = Comment.new
      new_comment.thread = thread
      new_comment.creator = user
      @new_comment = new_comment if new_comment.can_be_created_by?(user)
    end
    
    def commontator_thread_show(commontable)
      user = Commontator.current_user_proc.call(self)	
      thread = commontable.thread
      raise Commontator::SecurityTransgression unless thread.can_be_read_by?(user)
      thread.mark_as_read_for(user)
      @commontator_page = params[:page] || 1
      @commontator_per_page = params[:per_page] || thread.config.comments_per_page
      @commontator_thread_show = true
      commontator_set_new_comment(thread, user)
    end
  end
end

ActionController::Base.send :include, Commontator::ControllerIncludes

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
commontator-4.10.5 lib/commontator/controller_includes.rb
commontator-4.10.4 lib/commontator/controller_includes.rb
commontator-4.10.3 lib/commontator/controller_includes.rb
commontator-4.10.2 lib/commontator/controller_includes.rb
commontator-4.10.1 lib/commontator/controller_includes.rb
commontator-4.10.0 lib/commontator/controller_includes.rb
commontator-4.9.0 lib/commontator/controller_includes.rb