2 class Element < ElementNestableContent
3 self.abstract_class = true
8 def self.list_opt_for_panel
12 def self.show_opt_for_panel
16 def self.json_opt_for_panel
20 def self.panelize elements_attributes
21 elements_attributes = [elements_attributes] unless elements_attributes.is_a?(Array)
24 elements_attributes.each do |element_attributes|
25 hash[self.to_s.tableize + '_attributes'] ||= {}
26 n = if element_attributes['id']
27 element_attributes['id'].to_s
32 hash[self.to_s.tableize + '_attributes'][n] = element_attributes
53 def extend_element_name
54 self.extend_column ? self.attributes[extend_column] : self.element_name
57 def scenario_template with_engine = false
58 self.path_name(with_engine) + '/scenario'
61 def element_face_template with_engine = false
62 self.path_name(with_engine) + '/element_face'
65 def tag_attributes column = nil, opt = {}
67 r.merge({'data-parent_dom_id' => self.parent.dom_item_id}) if self.editize?
71 def merge_opacity s, opacity
73 'opacity' => opacity.to_f/100,
74 'filter' => "alpha(opacity=#{opacity})"
78 def copy_attributes opt = {}
82 r.delete 't' unless opt[:all]
83 r.delete 'z' unless opt[:all]