Module: ObfuscateId::InstanceMethods

Defined in:
lib/obfuscate_id.rb

Instance Method Summary collapse

Instance Method Details

#deobfuscate_id(obfuscated_id) ⇒ Object



79
80
81
# File 'lib/obfuscate_id.rb', line 79

def deobfuscate_id(obfuscated_id)
  self.class.deobfuscate_id(obfuscated_id)
end

#reload(options = nil) ⇒ Object

As ActiveRecord::Persistence#reload uses self.id reload without deobfuscating



62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
# File 'lib/obfuscate_id.rb', line 62

def reload(options = nil)
  options = (options || {}).merge(no_obfuscated_id: true)
  clear_aggregation_cache
  clear_association_cache

  fresh_object =
    if options && options[:lock]
      self.class.unscoped { self.class.lock(options[:lock]).find(id, options) }
    else
      self.class.unscoped { self.class.find(id, options) }
    end

  @attributes = fresh_object.instance_variable_get('@attributes')
  @new_record = false
  self
end

#to_paramObject



56
57
58
# File 'lib/obfuscate_id.rb', line 56

def to_param
  ObfuscateId.hide(self.id, self.class.obfuscate_id_spin)
end