Sha256: dc33670a95f6f47d5021f38b0f293f56d5185d728543b512e2409c4124362ffc

Contents?: true

Size: 1.93 KB

Versions: 2

Compression:

Stored size: 1.93 KB

Contents

module MongoidForums
  # Defines a whole bunch of permissions for mongoid_forums
  # Access (most) areas by default
  module DefaultPermissions
    extend ActiveSupport::Concern

    included do
      unless method_defined?(:can_read_mongoid_forums_category?)
        def can_read_mongoid_forums_category?(category)
          true
        end
      end

      unless method_defined?(:can_read_mongoid_forums_forums?)
        def can_read_mongoid_forums_forums?
          true
        end
      end

      unless method_defined?(:can_read_mongoid_forums_forum?)
        def can_read_mongoid_forums_forum?(forum)
          true
        end
      end

      unless method_defined?(:can_create_mongoid_forums_topics?)
        def can_create_mongoid_forums_topics?(forum)
          true
        end
      end

      unless method_defined?(:can_reply_to_mongoid_forums_topic?)
        def can_reply_to_mongoid_forums_topic?(topic)
          true
        end
      end

      unless method_defined?(:can_edit_mongoid_forums_posts?)
        def can_edit_mongoid_forums_posts?(forum)
          true
        end
      end

      unless method_defined?(:can_destroy_mongoid_forums_posts?)
        def can_destroy_mongoid_forums_posts?(forum)
          true
        end
      end

      unless method_defined?(:can_recovery_mongoid_forums_posts?)
        def can_recovery_mongoid_forums_posts?(forum)
          true
        end
      end

      unless method_defined?(:can_show_deleted_mongoid_forums_posts?)
        def can_show_deleted_mongoid_forums_posts?(forum)
          true
        end
      end


      unless method_defined?(:can_read_mongoid_forums_topic?)
        def can_read_mongoid_forums_topic?(topic)
          !topic.hidden? || mongoid_forums_admin?
        end
      end

      unless method_defined?(:can_moderate_mongoid_forums_forum?)
        def can_moderate_mongoid_forums_forum?(forum)
          forum.moderator?(self)
        end
      end
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
ack-mongoid-forums-1.0.6.1 lib/mongoid_forums/default_permissions.rb
ack-mongoid-forums-1.0.6 lib/mongoid_forums/default_permissions.rb