Class: Wice::ViewColumn
- Includes:
- ActionView::Helpers::AssetTagHelper, ActionView::Helpers::FormTagHelper, ActionView::Helpers::JavaScriptHelper, ActionView::Helpers::TagHelper
- Defined in:
- lib/view_columns.rb
Overview
:nodoc:
Direct Known Subclasses
ActionViewColumn, ViewColumnCustomDropdown, ViewColumnDatetime, ViewColumnInteger, ViewColumnString
Constant Summary collapse
- FIELDS =
fields defined from the options parameter
[:attribute_name, :column_name, :td_html_attrs, :no_filter, :model_class, :allow_multiple_selection, :in_html, :in_csv, :helper_style, :table_alias, :custom_order, :detach_with_id, :allow_ordering, :auto_reload]
- @@handled_type =
Hash.new
Instance Attribute Summary collapse
-
#cell_rendering_block ⇒ Object
Returns the value of attribute cell_rendering_block.
-
#contains_a_text_input ⇒ Object
readonly
Returns the value of attribute contains_a_text_input.
-
#css_class ⇒ Object
:nodoc:.
-
#custom_filter ⇒ Object
Returns the value of attribute custom_filter.
-
#grid ⇒ Object
Returns the value of attribute grid.
-
#main_table ⇒ Object
Returns the value of attribute main_table.
-
#model_class ⇒ Object
Returns the value of attribute model_class.
-
#table_name ⇒ Object
Returns the value of attribute table_name.
Instance Method Summary collapse
-
#attribute_name_fully_qualified_for_all_but_main_table_columns ⇒ Object
bad name, because for the main table the name is not really ‘fully_qualified’.
-
#auto_reloading_input_with_negation_checkbox? ⇒ Boolean
:nodoc:.
-
#capable_of_hosting_filter_related_icons? ⇒ Boolean
:nodoc:.
-
#config ⇒ Object
:nodoc:.
-
#controller ⇒ Object
:nodoc:.
-
#detachness ⇒ Object
:nodoc:.
-
#filter_shown? ⇒ Boolean
:nodoc:.
-
#filter_shown_in_main_table? ⇒ Boolean
:nodoc:.
-
#form_parameter_name_id_and_query(v) ⇒ Object
:nodoc:.
-
#fully_qualified_attribute_name ⇒ Object
:nodoc:.
-
#has_auto_reloading_calendar? ⇒ Boolean
:nodoc:.
-
#has_auto_reloading_input? ⇒ Boolean
:nodoc:.
-
#has_auto_reloading_select? ⇒ Boolean
:nodoc:.
-
#initialize(block, options, grid_obj, tname, mtable, cfilter, view) ⇒ ViewColumn
constructor
:nodoc:.
-
#render_filter ⇒ Object
:nodoc:.
-
#render_filter_internal(params) ⇒ Object
:nodoc:.
-
#table_alias_or_table_name ⇒ Object
:nodoc:.
-
#yield_declaration_of_column_filter ⇒ Object
:nodoc:.
-
#yield_javascript ⇒ Object
:nodoc:.
Constructor Details
#initialize(block, options, grid_obj, tname, mtable, cfilter, view) ⇒ ViewColumn
:nodoc:
20 21 22 23 24 25 26 27 28 29 30 31 |
# File 'lib/view_columns.rb', line 20 def initialize(block, , grid_obj, tname, mtable, cfilter, view) #:nodoc: self.cell_rendering_block = block self.grid = grid_obj self.table_name = tname self.main_table = mtable self.custom_filter = cfilter @view = view FIELDS.each do |field| self.send(field.to_s + '=', [field]) end end |
Instance Attribute Details
#cell_rendering_block ⇒ Object
Returns the value of attribute cell_rendering_block.
16 17 18 |
# File 'lib/view_columns.rb', line 16 def cell_rendering_block @cell_rendering_block end |
#contains_a_text_input ⇒ Object (readonly)
Returns the value of attribute contains_a_text_input.
18 19 20 |
# File 'lib/view_columns.rb', line 18 def contains_a_text_input @contains_a_text_input end |
#css_class ⇒ Object
:nodoc:
36 37 38 |
# File 'lib/view_columns.rb', line 36 def css_class @css_class end |
#custom_filter ⇒ Object
Returns the value of attribute custom_filter.
16 17 18 |
# File 'lib/view_columns.rb', line 16 def custom_filter @custom_filter end |
#grid ⇒ Object
Returns the value of attribute grid.
16 17 18 |
# File 'lib/view_columns.rb', line 16 def grid @grid end |
#main_table ⇒ Object
Returns the value of attribute main_table.
16 17 18 |
# File 'lib/view_columns.rb', line 16 def main_table @main_table end |
#model_class ⇒ Object
Returns the value of attribute model_class.
16 17 18 |
# File 'lib/view_columns.rb', line 16 def model_class @model_class end |
#table_name ⇒ Object
Returns the value of attribute table_name.
16 17 18 |
# File 'lib/view_columns.rb', line 16 def table_name @table_name end |
Instance Method Details
#attribute_name_fully_qualified_for_all_but_main_table_columns ⇒ Object
bad name, because for the main table the name is not really ‘fully_qualified’
90 91 92 |
# File 'lib/view_columns.rb', line 90 def attribute_name_fully_qualified_for_all_but_main_table_columns #:nodoc: self.main_table ? attribute_name : table_alias_or_table_name + '.' + attribute_name end |
#auto_reloading_input_with_negation_checkbox? ⇒ Boolean
:nodoc:
120 121 122 |
# File 'lib/view_columns.rb', line 120 def auto_reloading_input_with_negation_checkbox? #:nodoc: false end |
#capable_of_hosting_filter_related_icons? ⇒ Boolean
:nodoc:
112 113 114 |
# File 'lib/view_columns.rb', line 112 def #:nodoc: self.attribute_name.blank? && self.column_name.blank? && ! self.filter_shown? end |
#config ⇒ Object
:nodoc:
62 63 64 |
# File 'lib/view_columns.rb', line 62 def config #:nodoc: @view.config end |
#controller ⇒ Object
:nodoc:
66 67 68 |
# File 'lib/view_columns.rb', line 66 def controller #:nodoc: @view.controller end |
#detachness ⇒ Object
:nodoc:
44 45 46 |
# File 'lib/view_columns.rb', line 44 def detachness #:nodoc: (! detach_with_id.blank?).to_s end |
#filter_shown? ⇒ Boolean
:nodoc:
99 100 101 |
# File 'lib/view_columns.rb', line 99 def filter_shown? #:nodoc: self.attribute_name && ! self.no_filter end |
#filter_shown_in_main_table? ⇒ Boolean
:nodoc:
103 104 105 |
# File 'lib/view_columns.rb', line 103 def filter_shown_in_main_table? #:nodoc: filter_shown? && ! self.detach_with_id end |
#form_parameter_name_id_and_query(v) ⇒ Object
:nodoc:
81 82 83 84 85 86 87 |
# File 'lib/view_columns.rb', line 81 def form_parameter_name_id_and_query(v) #:nodoc: query = form_parameter_template(v) query_without_equals_sign = query.sub(/=$/,'') parameter_name = CGI.unescape(query_without_equals_sign) dom_id = id_out_of_name(parameter_name) return query, query_without_equals_sign, parameter_name, dom_id.tr('.', '_') end |
#fully_qualified_attribute_name ⇒ Object
:nodoc:
94 95 96 |
# File 'lib/view_columns.rb', line 94 def fully_qualified_attribute_name #:nodoc: table_alias_or_table_name + '.' + attribute_name end |
#has_auto_reloading_calendar? ⇒ Boolean
:nodoc:
128 129 130 |
# File 'lib/view_columns.rb', line 128 def has_auto_reloading_calendar? #:nodoc: false end |
#has_auto_reloading_input? ⇒ Boolean
:nodoc:
116 117 118 |
# File 'lib/view_columns.rb', line 116 def has_auto_reloading_input? #:nodoc: false end |
#has_auto_reloading_select? ⇒ Boolean
:nodoc:
124 125 126 |
# File 'lib/view_columns.rb', line 124 def has_auto_reloading_select? #:nodoc: false end |
#render_filter ⇒ Object
:nodoc:
71 72 73 74 75 |
# File 'lib/view_columns.rb', line 71 def render_filter #:nodoc: params = @grid.filter_params(self) res = render_filter_internal(params) return (res.is_a?(Array)) ? res : [res, nil] end |
#render_filter_internal(params) ⇒ Object
:nodoc:
77 78 79 |
# File 'lib/view_columns.rb', line 77 def render_filter_internal(params) #:nodoc: '<!-- implement me! -->' end |
#table_alias_or_table_name ⇒ Object
:nodoc:
108 109 110 |
# File 'lib/view_columns.rb', line 108 def table_alias_or_table_name #:nodoc: table_alias || table_name end |
#yield_declaration_of_column_filter ⇒ Object
:nodoc:
40 41 42 |
# File 'lib/view_columns.rb', line 40 def yield_declaration_of_column_filter #:nodoc: nil end |
#yield_javascript ⇒ Object
:nodoc:
48 49 50 51 52 53 54 55 56 57 58 59 |
# File 'lib/view_columns.rb', line 48 def yield_javascript #:nodoc: declaration = yield_declaration_of_column_filter if declaration %!#{@grid.name}.register( { filter_name : "#{self.column_name}", detached : #{detachness}, #{declaration} } ); ! else '' end end |