Class: RailsConnector::BasicObj

Inherits:
Object
  • Object
show all
Defined in:
lib/fiona7/fiona_connector_patches/basic_obj.rb

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.compute_type(type_name) ⇒ Object



34
35
36
37
38
39
40
41
# File 'lib/fiona7/fiona_connector_patches/basic_obj.rb', line 34

def self.compute_type(type_name)
  if Fiona7.mode == :standalone
    fallback_class = self
  else
    fallback_class = ::Obj
  end
  try_type { type_name.constantize } || fallback_class
end

.in_place(type = 'Obj', &block) ⇒ Object



16
17
18
19
20
# File 'lib/fiona7/fiona_connector_patches/basic_obj.rb', line 16

def self.in_place(type='Obj',&block)
  klass = ShadowClasses.fetch(self.name,type)
  klass.class_eval(&block)
  klass
end

.inherited(subclass, *args) ⇒ Object



46
47
48
49
50
51
# File 'lib/fiona7/fiona_connector_patches/basic_obj.rb', line 46

def inherited(subclass,*args)
  super
  if subclass.name == 'Obj' && !::Scrivito.const_defined?('Obj', false)
    ::Scrivito.const_set('Obj', Class.new(::Scrivito::BasicObj))
  end
end

.model_classObject



26
27
28
# File 'lib/fiona7/fiona_connector_patches/basic_obj.rb', line 26

def self.model_class
  self.shadow_class
end

.shadow_classObject



30
31
32
# File 'lib/fiona7/fiona_connector_patches/basic_obj.rb', line 30

def self.shadow_class
  ShadowClasses.const_get(self.name, false)
end

.widget_classObject



22
23
24
# File 'lib/fiona7/fiona_connector_patches/basic_obj.rb', line 22

def self.widget_class
  self.shadow_class
end

Instance Method Details

#permissionsObject

never use cached permissions



12
13
14
# File 'lib/fiona7/fiona_connector_patches/basic_obj.rb', line 12

def permissions
  arel_permissions
end

#scrivito_objObject



6
7
8
# File 'lib/fiona7/fiona_connector_patches/basic_obj.rb', line 6

def scrivito_obj
  Scrivito::Obj.find(self.id)
end