Module: BestInPlace::Utils

Defined in:
lib/best_in_place/utils.rb

Overview

:nodoc:

Class Method Summary collapse

Class Method Details

.build_best_in_place_id(object, field) ⇒ Object



4
5
6
7
8
9
10
11
12
13
14
# File 'lib/best_in_place/utils.rb', line 4

def build_best_in_place_id(object, field)
  case object
    when Symbol, String
      "best_in_place_#{object}_#{field}"
    else
      id = "best_in_place_#{object_to_key(object)}"
      id << "_#{object.id}" if object.persisted?
      id << "_#{field}"
      id
  end
end

.convert_to_model(object) ⇒ Object



20
21
22
# File 'lib/best_in_place/utils.rb', line 20

def convert_to_model(object)
  object.respond_to?(:to_model) ? object.to_model : object
end

.model_name_from_record_or_class(record_or_class) ⇒ Object



24
25
26
# File 'lib/best_in_place/utils.rb', line 24

def model_name_from_record_or_class(record_or_class)
  (record_or_class.is_a?(Class) ? record_or_class : convert_to_model(record_or_class).class).model_name
end

.object_to_key(object) ⇒ Object



16
17
18
# File 'lib/best_in_place/utils.rb', line 16

def object_to_key(object)
  model_name_from_record_or_class(object).param_key
end