Module: Virility::Supporter

Included in:
Excitation, Strategy
Defined in:
lib/virility/supporter.rb

Instance Method Summary collapse

Instance Method Details

#camelize(lower_case_and_underscored_word, first_letter_in_uppercase = true) ⇒ Object

Camelize / Underscore



24
25
26
27
28
29
30
# File 'lib/virility/supporter.rb', line 24

def camelize(lower_case_and_underscored_word, first_letter_in_uppercase = true)
  if first_letter_in_uppercase
    lower_case_and_underscored_word.to_s.gsub(/\/(.?)/) { "::" + $1.upcase }.gsub(/(^|_)(.)/) { $2.upcase }
  else
    lower_case_and_underscored_word.first + camelize(lower_case_and_underscored_word)[1..-1]
  end
end

#encode(url) ⇒ Object

URL Encoding / Decoding Methods



8
9
10
# File 'lib/virility/supporter.rb', line 8

def encode url
  CGI.escape url
end

#escaped_urlObject



16
17
18
# File 'lib/virility/supporter.rb', line 16

def escaped_url
  @url
end

#get_class_string(klass) ⇒ Object



50
51
52
# File 'lib/virility/supporter.rb', line 50

def get_class_string(klass)
  File.basename(klass).gsub(/\.rb/,'')
end

#symbolize_for_key(klass) ⇒ Object

Convert Class Name To Appropriate Key Symbol



46
47
48
# File 'lib/virility/supporter.rb', line 46

def symbolize_for_key(klass)
  underscore(klass.class.to_s.gsub(/Virility::/, '')).to_sym
end

#underscore(camel_cased_word) ⇒ Object



32
33
34
35
36
37
38
39
40
# File 'lib/virility/supporter.rb', line 32

def underscore(camel_cased_word)
  word = camel_cased_word.to_s.dup
  word.gsub!(/::/, '/')
  word.gsub!(/([A-Z]+)([A-Z][a-z])/,'\1_\2')
  word.gsub!(/([a-z\d])([A-Z])/,'\1_\2')
  word.tr!("-", "_")
  word.downcase!
  word
end

#urlObject



12
13
14
# File 'lib/virility/supporter.rb', line 12

def url
  CGI.unescape @url
end