Module: TurboChat::Configuration::BlockedWordsSupport
- Included in:
- TurboChat::Configuration
- Defined in:
- lib/turbo_chat/configuration/blocked_words_support.rb
Instance Method Summary collapse
- #effective_blocked_words ⇒ Object
- #effective_blocked_words_action ⇒ Object
- #effective_blocked_words_scramble_chars ⇒ Object
Instance Method Details
#effective_blocked_words ⇒ Object
3 4 5 6 7 8 9 10 11 12 13 14 |
# File 'lib/turbo_chat/configuration/blocked_words_support.rb', line 3 def effective_blocked_words source = blocked_words return [] unless source.respond_to?(:each) source.each_with_object([]) do |value, words| normalized_word = normalize_blocked_word(value) next if normalized_word.blank? next if words.include?(normalized_word) words << normalized_word end end |
#effective_blocked_words_action ⇒ Object
16 17 18 19 20 21 |
# File 'lib/turbo_chat/configuration/blocked_words_support.rb', line 16 def effective_blocked_words_action action = blocked_words_action.to_s.strip.downcase return DEFAULT_BLOCKED_WORDS_ACTION if action.blank? %w[reject scramble].include?(action) ? action : DEFAULT_BLOCKED_WORDS_ACTION end |
#effective_blocked_words_scramble_chars ⇒ Object
23 24 25 26 27 28 29 30 31 32 33 34 35 |
# File 'lib/turbo_chat/configuration/blocked_words_support.rb', line 23 def effective_blocked_words_scramble_chars source = blocked_words_scramble_chars return DEFAULT_BLOCKED_WORDS_SCRAMBLE_CHARS.dup unless source.respond_to?(:each) chars = source.each_with_object([]) do |value, result| normalized_char = value.to_s next if normalized_char.blank? result << normalized_char end chars.presence || DEFAULT_BLOCKED_WORDS_SCRAMBLE_CHARS.dup end |