class QuickBase::Misc

Miscellaneous static helper methods

Public Class Methods

arrayToListUser(array) click to toggle source
# File lib/QuickBaseMisc.rb, line 99
def Misc.arrayToListUser(array)
  array.join(";")
end
createBase32ConversionHash() click to toggle source
# File lib/QuickBaseMisc.rb, line 23
def Misc.createBase32ConversionHash
  base32Symbols = {}
  decimal = 0
  ("a".."z").each{|letter|
     unless letter == "l" or letter == "o"
       base32Symbols[decimal.to_s]=letter
       decimal += 1
     end
  }
  (2..9).each{|number|
       base32Symbols[decimal.to_s]=number.to_s
       decimal += 1
  }
  base32Symbols
end
decimalToBase32(decimalNumber) click to toggle source
# File lib/QuickBaseMisc.rb, line 39
def Misc.decimalToBase32(decimalNumber)
  @base32Symbols ||= Misc.createBase32ConversionHash
  base32Num = ""
  decimalNumber = decimalNumber.to_i
  if decimalNumber < 32
    base32Num = @base32Symbols[decimalNumber.to_s]
  else
    power = 10
    power -= 1 while (decimalNumber/(32**power)) < 1
    while decimalNumber > 0
       n = (decimalNumber/(32**power))
       base32Num << @base32Symbols[n.to_s] if @base32Symbols[n.to_s]
       decimalNumber = (decimalNumber-((32**power)*n))
       power -= 1
     end
  end
  base32Num
end
isBase32Number?(string) click to toggle source
# File lib/QuickBaseMisc.rb, line 58
def Misc.isBase32Number?(string)
  ret = true
  if string
    @base32Symbols ||= Misc.createBase32ConversionHash
    base32SymbolsValues = @base32Symbols.values
    stringCopy = string.to_s
    stringCopy.split(//).each{|char|
      if !base32SymbolsValues.include?(char)
        ret = false 
        break
      end  
    }
  else
    ret = false
  end  
  ret
end
isDbidString?(string) click to toggle source
# File lib/QuickBaseMisc.rb, line 76
def Misc.isDbidString?(string) 
  Misc.isBase32Number?(string) 
end
listUserToArray(listUser) click to toggle source
# File lib/QuickBaseMisc.rb, line 95
def Misc.listUserToArray(listUser)
  listUser.split(/;/)
end
ruby19?() click to toggle source
# File lib/QuickBaseMisc.rb, line 19
def Misc.ruby19?
   RUBY_VERSION >= "1.9"
end
save_file(filename, contents, mode="wb") click to toggle source
# File lib/QuickBaseMisc.rb, line 103
def Misc.save_file(filename, contents, mode="wb")
   File.open(filename, mode){|f|
      f.write(contents)
      f.flush
   }
   rescue StandardError => error
   new_filename = filename.gsub(/\W/,"_")
   File.open(new_filename, mode){|f|
      f.write(contents)
      f.flush
   }
end
time_in_milliseconds(time = nil) click to toggle source
# File lib/QuickBaseMisc.rb, line 80
def Misc.time_in_milliseconds(time = nil)
  ret = 0
  time ||= Time.now
  if time.is_a?(Time)
    ret = (time.to_f * 1000).to_i
  elsif time.is_a?(DateTime)
    t = Time.mktime(time.year,time.month,time.day,time.hour,time.min,time.sec,0)
    ret = (t.to_f * 1000).to_i
  elsif time.is_a?(Date)
    t = Time.mktime(time.year,time.month,time.day,0,0,0,0)
    ret = (t.to_f * 1000).to_i
  end  
  ret  
end