Class: String

Inherits:
Object
  • Object
show all
Defined in:
lib/broadway/ext.rb,
lib/broadway/ext.rb

Instance Method Summary collapse

Instance Method Details

#nested_parameterize(sep = '-') ⇒ Object



61
62
63
64
65
66
67
68
69
70
71
72
73
# File 'lib/broadway/ext.rb', line 61

def nested_parameterize(sep = '-')
  parameterized_string = self.dup
  # Turn unwanted chars into the seperator
  parameterized_string = parameterized_string.gsub(/'/, "").gsub(/[^a-z0-9\-_\+\/]+/i, sep)
  unless sep.blank?
    re_sep = Regexp.escape(sep)
    # No more than one of the separator in a row.
    parameterized_string.gsub!(/#{re_sep}{2,}/, sep)
    # Remove leading/trailing separator.
    parameterized_string.gsub!(/^#{re_sep}|#{re_sep}$/i, '')
  end
  parameterized_string.downcase
end

#taggify(separator = "-", quoted = false) ⇒ Object



16
17
18
19
20
# File 'lib/broadway/ext.rb', line 16

def taggify(separator = "-", quoted = false)
  result = self.dup.downcase.strip.gsub(/[^a-z0-9\.]/, separator).squeeze(separator)
  result = "\"#{result}\"" if quoted && !(result =~ /\s+/).nil?
  result
end