fixed the string modification function and added support for a titlecase method
author<mako@atdot.cc> <>
Thu, 12 Oct 2006 14:46:24 +0000 (10:46 -0400)
committer<mako@atdot.cc> <>
Thu, 12 Oct 2006 14:46:24 +0000 (10:46 -0400)
config/environment.rb

index 66e5c62f960f2bd1e11a4211fcd8a0ebb1151555..69addb138a4b17d41a283e4415c1ff2607061814 100644 (file)
@@ -58,13 +58,21 @@ require 'randarray'
 require 'rubyvote'
 
 class String
+  # alternate capitalization method that does not lowercase the rest of
+  # the string -- which is almost never what I want
   def capitalize
     if self.length <= 1
       self.upcase
     else
-      self.split(//)[0].upcase + self..split(//)[1..-1].join("")
+      self.split(//)[0].upcase + self.split(//)[1..-1].join("")
     end
   end
+
+  # capitalize each word in a string unless it is specialcased word
+  def titlecase
+    words = %w{a the in to for an}
+    self.split.collect {|s| words.include?(s) ? s : s.capitalize }.join(" ")
+  end
 end
 
 module LoginEngine

Benjamin Mako Hill || Want to submit a patch?