Sha256: 701c40ee44a6b769dc19567c34f40cc95efaa91cd811a86091e60132fc731d95
Contents?: true
Size: 1.27 KB
Versions: 6
Compression:
Stored size: 1.27 KB
Contents
module Lockdown module Helper def syms_from_names(ary) rvalue = [] ary.each{|ar| rvalue << symbolize(ar.name)} rvalue end # # If str_sym is a Symbol (:users), give me back "Users" # If str_sym is a String ("Users"), give me back :users # # Was :to_title_sym for String and :to_title_str for Symbol # def convert_reference_name(str_sym) if str_sym.is_a?(Symbol) titleize(str_sym) else underscore(str_sym).tr(' ','_').to_sym end end def symbolize(str) str.downcase.gsub("admin ","admin__").gsub(" ","_").to_sym end def camelize(str) str.to_s.gsub(/\/(.?)/) { "::" + $1.upcase }.gsub(/(^|_)(.)/) { $2.upcase } end def random_string(len = 10) chars = ("a".."z").to_a + ("A".."Z").to_a + ("0".."9").to_a Array.new(len){||chars[rand(chars.size)]}.join end private def titleize(str) humanize(underscore(str)).gsub(/\b([a-z])/) { $1.capitalize } end def humanize(str) str.to_s.gsub(/_id$/, "").gsub(/_/, " ").capitalize end def underscore(str) str.to_s.gsub(/::/, '/'). gsub(/([A-Z]+)([A-Z][a-z])/,'\1_\2'). gsub(/([a-z\d])([A-Z])/,'\1_\2'). tr("-", "_").downcase end end end
Version data entries
6 entries across 6 versions & 1 rubygems