Sha256: 7e1b8f297a70419beb85677a77297f769bfee806b138e3526bc97606201df5eb

Contents?: true

Size: 396 Bytes

Versions: 23

Compression:

Stored size: 396 Bytes

Contents

# frozen_string_literal: true
require 'set'
module Thredded
  # Excludes pagination routes in addition to the given list of reserved words.
  class FriendlyIdReservedWordsAndPagination
    PAGINATION_PATTERN = /\Apage-\d+\z/i

    def initialize(words = [])
      @words = Set.new(words)
    end

    def include?(slug)
      @words.include?(slug) || slug =~ PAGINATION_PATTERN
    end
  end
end

Version data entries

23 entries across 23 versions & 1 rubygems

Version Path
thredded-0.12.1 app/models/concerns/thredded/friendly_id_reserved_words_and_pagination.rb
thredded-0.12.0 app/models/concerns/thredded/friendly_id_reserved_words_and_pagination.rb
thredded-0.11.1 app/models/concerns/thredded/friendly_id_reserved_words_and_pagination.rb
thredded-0.11.0 app/models/concerns/thredded/friendly_id_reserved_words_and_pagination.rb
thredded-0.10.1 app/models/concerns/thredded/friendly_id_reserved_words_and_pagination.rb
thredded-0.10.0 app/models/concerns/thredded/friendly_id_reserved_words_and_pagination.rb
thredded-0.9.4 app/models/concerns/thredded/friendly_id_reserved_words_and_pagination.rb
thredded-0.9.3 app/models/concerns/thredded/friendly_id_reserved_words_and_pagination.rb
thredded-0.9.2 app/models/concerns/thredded/friendly_id_reserved_words_and_pagination.rb
thredded-0.9.1 app/models/concerns/thredded/friendly_id_reserved_words_and_pagination.rb
thredded-0.8.4 app/models/concerns/thredded/friendly_id_reserved_words_and_pagination.rb
thredded-0.8.2 app/models/concerns/thredded/friendly_id_reserved_words_and_pagination.rb
thredded-0.7.0 app/models/concerns/thredded/friendly_id_reserved_words_and_pagination.rb
thredded-0.6.3 app/models/concerns/thredded/friendly_id_reserved_words_and_pagination.rb
thredded-0.6.2 app/models/concerns/thredded/friendly_id_reserved_words_and_pagination.rb
thredded-0.6.1 app/models/concerns/thredded/friendly_id_reserved_words_and_pagination.rb
thredded-0.6.0 app/models/concerns/thredded/friendly_id_reserved_words_and_pagination.rb
thredded-0.5.1 app/models/concerns/thredded/friendly_id_reserved_words_and_pagination.rb
thredded-0.5.0 app/models/concerns/thredded/friendly_id_reserved_words_and_pagination.rb
thredded-0.4.0 app/models/concerns/thredded/friendly_id_reserved_words_and_pagination.rb