Module: Anoubis::Data::Setup
- Included in:
- Anoubis::DataController
- Defined in:
- app/controllers/anoubis/data/setup.rb
Overview
Module setups system parameters for Anoubis::DataController
Block of fields setup functions collapse
-
#setup_fields ⇒ Object
Setups defined fields and places it into attribute self.etc.data.fields.
-
#setup_fields_datetime(key) ⇒ Object
Setups additional parameters for table field with type ‘datetime’ Resulting data placed in self.etc.data.fields (Hash).
-
#setup_fields_float(key) ⇒ Object
Setups additional parameters for table field with type ‘float’ Resulting data placed in self.etc.data.fields (Hash).
Instance Method Summary collapse
-
#setup_frame ⇒ Object
Setups frame data information.
-
#setup_order ⇒ Object
Setups order for current tab.
Instance Method Details
#setup_fields ⇒ Object
Setups defined fields and places it into attribute self.etc.data.fields
61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 |
# File 'app/controllers/anoubis/data/setup.rb', line 61 def setup_fields if !self.etc.data.fields self.etc.data.fields = {} fields = self.fields fields.each_key do |key| if fields[key].key? :edit if self. fields[key][:edit], false fields[key][:editable] = fields[key][:edit] end end self.etc.data.fields[key] = Anoubis::Etc::Field.new(key, self.get_model, fields[key].merge(action: self.etc.action)) end self.setup_order if %w[index export].include? self.etc.action end end |
#setup_fields_datetime(key) ⇒ Object
Setups additional parameters for table field with type ‘datetime’ Resulting data placed in self.etc.data.fields (Hash)
83 84 85 86 |
# File 'app/controllers/anoubis/data/setup.rb', line 83 def setup_fields_datetime (key) self.etc.data.fields[key][:format] = 'full' if !self.etc.data.fields[key].has_key? :format self.etc.data.fields[key][:format] = 'full' if !['full', 'month', 'date', 'datetime'].include? self.etc.data.fields[key][:format] end |
#setup_fields_float(key) ⇒ Object
Setups additional parameters for table field with type ‘float’ Resulting data placed in self.etc.data.fields (Hash)
94 95 96 97 98 |
# File 'app/controllers/anoubis/data/setup.rb', line 94 def setup_fields_float (key) self.etc.data.fields[key][:precision] = 2 if !self.etc.data.fields[key][:precision] self.etc.data.fields[key][:point] = ',' if !self.etc.data.fields[key][:point] self.etc.data.fields[key][:separator] = '' if !self.etc.data.fields[key][:separator] end |
#setup_frame ⇒ Object
Setups frame data information. It loads menu data, sets titles and tabs of the frame.
10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 |
# File 'app/controllers/anoubis/data/setup.rb', line 10 def setup_frame self. if self.etc. self.get_parent_data if self.etc.data.parent self.output.title = self.etc..page_title.sub '%{title}', self.etc.data.parent.sys_title.to_s else self.output.title = self.etc..page_title end self.output.short = self.etc..short_title self.output.mode = self.etc..mode self.output.access = self.etc..access end tabs = self.tabs tabs.each do |key, item| item = self.get_tab key, item self.output.addTab(item) end end |
#setup_order ⇒ Object
Setups order for current tab. Parameters is set into self.etc.tab.sort and self.etc.tab.order attributes.
33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 |
# File 'app/controllers/anoubis/data/setup.rb', line 33 def setup_order sort = nil first = nil self.etc.data.fields.each do |key, field| if field.order first = key if !first first = key if field.order.default if params.key? :sort sort = key if params[:sort] == key.to_s end end end sort = first if !sort if sort self.etc.tab.sort = sort.to_s self.etc.tab.order = self.etc.data.fields[sort].order.order if params.key? :order self.etc.tab.order = :desc if params[:order] == 'desc' self.etc.tab.order = :asc if params[:order] == 'asc' end end end |