active_scaffold 3.2.17 → 3.2.18

Sign up to get free protection for your applications and to get access to all the features.
Files changed (246) hide show
  1. data/CHANGELOG +5 -1
  2. metadata +17 -261
  3. data/app/assets/images/active_scaffold/add.png +0 -0
  4. data/app/assets/images/active_scaffold/arrow_down.png +0 -0
  5. data/app/assets/images/active_scaffold/arrow_up.png +0 -0
  6. data/app/assets/images/active_scaffold/close.png +0 -0
  7. data/app/assets/images/active_scaffold/close_touch.png +0 -0
  8. data/app/assets/images/active_scaffold/config.png +0 -0
  9. data/app/assets/images/active_scaffold/cross.png +0 -0
  10. data/app/assets/images/active_scaffold/gears.png +0 -0
  11. data/app/assets/images/active_scaffold/indicator-small.gif +0 -0
  12. data/app/assets/images/active_scaffold/indicator.gif +0 -0
  13. data/app/assets/images/active_scaffold/magnifier.png +0 -0
  14. data/app/assets/javascripts/active_scaffold.js.erb +0 -19
  15. data/app/assets/javascripts/jquery/active_scaffold.js +0 -1113
  16. data/app/assets/javascripts/jquery/date_picker_bridge.js.erb +0 -24
  17. data/app/assets/javascripts/jquery/draggable_lists.js +0 -27
  18. data/app/assets/javascripts/jquery/jquery.editinplace.js +0 -743
  19. data/app/assets/javascripts/jquery/tiny_mce_bridge.js +0 -7
  20. data/app/assets/javascripts/prototype/active_scaffold.js +0 -1107
  21. data/app/assets/javascripts/prototype/dhtml_history.js +0 -870
  22. data/app/assets/javascripts/prototype/form_enhancements.js +0 -117
  23. data/app/assets/javascripts/prototype/rico_corner.js +0 -370
  24. data/app/assets/javascripts/prototype/tiny_mce_bridge.js +0 -7
  25. data/app/assets/stylesheets/active_scaffold-ie.css.scss +0 -54
  26. data/app/assets/stylesheets/active_scaffold.css.scss +0 -14
  27. data/app/assets/stylesheets/active_scaffold_colors.css.scss +0 -395
  28. data/app/assets/stylesheets/active_scaffold_extensions.css.erb +0 -2
  29. data/app/assets/stylesheets/active_scaffold_images.css.scss +0 -40
  30. data/app/assets/stylesheets/active_scaffold_layout.css +0 -936
  31. data/app/assets/stylesheets/blue-theme.css +0 -74
  32. data/config/locales/de.yml +0 -125
  33. data/config/locales/en.yml +0 -127
  34. data/config/locales/es.yml +0 -128
  35. data/config/locales/fr.yml +0 -131
  36. data/config/locales/hu.yml +0 -126
  37. data/config/locales/ja.yml +0 -126
  38. data/config/locales/ru.yml +0 -135
  39. data/frontends/default/views/_action_group.html.erb +0 -24
  40. data/frontends/default/views/_add_existing_form.html.erb +0 -30
  41. data/frontends/default/views/_base_form.html.erb +0 -53
  42. data/frontends/default/views/_create_form.html.erb +0 -8
  43. data/frontends/default/views/_create_form_on_list.html.erb +0 -6
  44. data/frontends/default/views/_field_search.html.erb +0 -32
  45. data/frontends/default/views/_form.html.erb +0 -28
  46. data/frontends/default/views/_form_association.html.erb +0 -17
  47. data/frontends/default/views/_form_association_footer.html.erb +0 -47
  48. data/frontends/default/views/_form_attribute.html.erb +0 -23
  49. data/frontends/default/views/_form_hidden_attribute.html.erb +0 -7
  50. data/frontends/default/views/_form_messages.html.erb +0 -5
  51. data/frontends/default/views/_horizontal_subform.html.erb +0 -22
  52. data/frontends/default/views/_horizontal_subform_footer.html.erb +0 -0
  53. data/frontends/default/views/_horizontal_subform_header.html.erb +0 -11
  54. data/frontends/default/views/_horizontal_subform_record.html.erb +0 -43
  55. data/frontends/default/views/_human_conditions.html.erb +0 -1
  56. data/frontends/default/views/_list.html.erb +0 -18
  57. data/frontends/default/views/_list_actions.html.erb +0 -15
  58. data/frontends/default/views/_list_calculations.html.erb +0 -16
  59. data/frontends/default/views/_list_column_headings.html.erb +0 -12
  60. data/frontends/default/views/_list_header.html.erb +0 -10
  61. data/frontends/default/views/_list_inline_adapter.html.erb +0 -21
  62. data/frontends/default/views/_list_messages.html.erb +0 -28
  63. data/frontends/default/views/_list_pagination.html.erb +0 -11
  64. data/frontends/default/views/_list_pagination_links.html.erb +0 -9
  65. data/frontends/default/views/_list_record.html.erb +0 -13
  66. data/frontends/default/views/_list_record_columns.html.erb +0 -8
  67. data/frontends/default/views/_list_with_header.html.erb +0 -36
  68. data/frontends/default/views/_messages.html.erb +0 -10
  69. data/frontends/default/views/_refresh_list.js.erb +0 -1
  70. data/frontends/default/views/_render_field.js.erb +0 -20
  71. data/frontends/default/views/_row.html.erb +0 -1
  72. data/frontends/default/views/_search.html.erb +0 -34
  73. data/frontends/default/views/_search_attribute.html.erb +0 -10
  74. data/frontends/default/views/_show.html.erb +0 -8
  75. data/frontends/default/views/_show_columns.html.erb +0 -15
  76. data/frontends/default/views/_update_actions.html.erb +0 -9
  77. data/frontends/default/views/_update_calculations.js.erb +0 -4
  78. data/frontends/default/views/_update_form.html.erb +0 -6
  79. data/frontends/default/views/_update_messages.js.erb +0 -2
  80. data/frontends/default/views/_vertical_subform.html.erb +0 -12
  81. data/frontends/default/views/_vertical_subform_record.html.erb +0 -43
  82. data/frontends/default/views/action_confirmation.html.erb +0 -13
  83. data/frontends/default/views/add_existing.js.erb +0 -14
  84. data/frontends/default/views/add_existing_form.html.erb +0 -5
  85. data/frontends/default/views/create.html.erb +0 -5
  86. data/frontends/default/views/delete.html.erb +0 -13
  87. data/frontends/default/views/destroy.js.erb +0 -26
  88. data/frontends/default/views/edit_associated.js.erb +0 -12
  89. data/frontends/default/views/field_search.html.erb +0 -5
  90. data/frontends/default/views/form_messages.js.erb +0 -1
  91. data/frontends/default/views/list.html.erb +0 -1
  92. data/frontends/default/views/on_action_update.js.erb +0 -22
  93. data/frontends/default/views/on_create.js.erb +0 -38
  94. data/frontends/default/views/on_mark.js.erb +0 -6
  95. data/frontends/default/views/on_update.js.erb +0 -29
  96. data/frontends/default/views/refresh_list.js.erb +0 -2
  97. data/frontends/default/views/render_field.js.erb +0 -1
  98. data/frontends/default/views/row.js.erb +0 -2
  99. data/frontends/default/views/search.html.erb +0 -5
  100. data/frontends/default/views/show.html.erb +0 -5
  101. data/frontends/default/views/update.html.erb +0 -8
  102. data/frontends/default/views/update_column.js.erb +0 -15
  103. data/frontends/default/views/update_row.js.erb +0 -1
  104. data/lib/active_scaffold.rb +0 -373
  105. data/lib/active_scaffold/actions/common_search.rb +0 -22
  106. data/lib/active_scaffold/actions/core.rb +0 -203
  107. data/lib/active_scaffold/actions/create.rb +0 -139
  108. data/lib/active_scaffold/actions/delete.rb +0 -74
  109. data/lib/active_scaffold/actions/field_search.rb +0 -78
  110. data/lib/active_scaffold/actions/list.rb +0 -208
  111. data/lib/active_scaffold/actions/mark.rb +0 -89
  112. data/lib/active_scaffold/actions/nested.rb +0 -244
  113. data/lib/active_scaffold/actions/search.rb +0 -48
  114. data/lib/active_scaffold/actions/show.rb +0 -61
  115. data/lib/active_scaffold/actions/subform.rb +0 -23
  116. data/lib/active_scaffold/actions/update.rb +0 -156
  117. data/lib/active_scaffold/active_record_permissions.rb +0 -135
  118. data/lib/active_scaffold/attribute_params.rb +0 -200
  119. data/lib/active_scaffold/bridges.rb +0 -61
  120. data/lib/active_scaffold/bridges/ancestry.rb +0 -5
  121. data/lib/active_scaffold/bridges/ancestry/ancestry_bridge.rb +0 -39
  122. data/lib/active_scaffold/bridges/bitfields.rb +0 -6
  123. data/lib/active_scaffold/bridges/bitfields/bitfields_bridge.rb +0 -37
  124. data/lib/active_scaffold/bridges/calendar_date_select.rb +0 -24
  125. data/lib/active_scaffold/bridges/calendar_date_select/as_cds_bridge.rb +0 -66
  126. data/lib/active_scaffold/bridges/cancan.rb +0 -15
  127. data/lib/active_scaffold/bridges/cancan/cancan_bridge.rb +0 -127
  128. data/lib/active_scaffold/bridges/carrierwave.rb +0 -12
  129. data/lib/active_scaffold/bridges/carrierwave/carrierwave_bridge.rb +0 -31
  130. data/lib/active_scaffold/bridges/carrierwave/carrierwave_bridge_helpers.rb +0 -10
  131. data/lib/active_scaffold/bridges/carrierwave/form_ui.rb +0 -45
  132. data/lib/active_scaffold/bridges/carrierwave/list_ui.rb +0 -17
  133. data/lib/active_scaffold/bridges/country_helper.rb +0 -9
  134. data/lib/active_scaffold/bridges/country_helper/country_helper_bridge.rb +0 -358
  135. data/lib/active_scaffold/bridges/date_picker.rb +0 -23
  136. data/lib/active_scaffold/bridges/date_picker/ext.rb +0 -63
  137. data/lib/active_scaffold/bridges/date_picker/helper.rb +0 -180
  138. data/lib/active_scaffold/bridges/dragonfly.rb +0 -9
  139. data/lib/active_scaffold/bridges/dragonfly/dragonfly_bridge.rb +0 -34
  140. data/lib/active_scaffold/bridges/dragonfly/dragonfly_bridge_helpers.rb +0 -10
  141. data/lib/active_scaffold/bridges/dragonfly/form_ui.rb +0 -27
  142. data/lib/active_scaffold/bridges/dragonfly/list_ui.rb +0 -16
  143. data/lib/active_scaffold/bridges/file_column.rb +0 -11
  144. data/lib/active_scaffold/bridges/file_column/as_file_column_bridge.rb +0 -46
  145. data/lib/active_scaffold/bridges/file_column/file_column_helpers.rb +0 -57
  146. data/lib/active_scaffold/bridges/file_column/form_ui.rb +0 -34
  147. data/lib/active_scaffold/bridges/file_column/list_ui.rb +0 -26
  148. data/lib/active_scaffold/bridges/file_column/test/functional/file_column_keep_test.rb +0 -43
  149. data/lib/active_scaffold/bridges/file_column/test/mock_model.rb +0 -9
  150. data/lib/active_scaffold/bridges/file_column/test/test_helper.rb +0 -15
  151. data/lib/active_scaffold/bridges/paperclip.rb +0 -12
  152. data/lib/active_scaffold/bridges/paperclip/form_ui.rb +0 -27
  153. data/lib/active_scaffold/bridges/paperclip/list_ui.rb +0 -16
  154. data/lib/active_scaffold/bridges/paperclip/paperclip_bridge.rb +0 -36
  155. data/lib/active_scaffold/bridges/paperclip/paperclip_bridge_helpers.rb +0 -24
  156. data/lib/active_scaffold/bridges/record_select.rb +0 -11
  157. data/lib/active_scaffold/bridges/record_select/helpers.rb +0 -92
  158. data/lib/active_scaffold/bridges/semantic_attributes.rb +0 -5
  159. data/lib/active_scaffold/bridges/semantic_attributes/column.rb +0 -20
  160. data/lib/active_scaffold/bridges/shared/date_bridge.rb +0 -209
  161. data/lib/active_scaffold/bridges/tiny_mce.rb +0 -17
  162. data/lib/active_scaffold/bridges/tiny_mce/helpers.rb +0 -46
  163. data/lib/active_scaffold/config/base.rb +0 -75
  164. data/lib/active_scaffold/config/core.rb +0 -236
  165. data/lib/active_scaffold/config/create.rb +0 -32
  166. data/lib/active_scaffold/config/delete.rb +0 -32
  167. data/lib/active_scaffold/config/field_search.rb +0 -79
  168. data/lib/active_scaffold/config/form.rb +0 -64
  169. data/lib/active_scaffold/config/list.rb +0 -247
  170. data/lib/active_scaffold/config/mark.rb +0 -30
  171. data/lib/active_scaffold/config/nested.rb +0 -42
  172. data/lib/active_scaffold/config/search.rb +0 -73
  173. data/lib/active_scaffold/config/show.rb +0 -31
  174. data/lib/active_scaffold/config/subform.rb +0 -35
  175. data/lib/active_scaffold/config/update.rb +0 -33
  176. data/lib/active_scaffold/configurable.rb +0 -29
  177. data/lib/active_scaffold/constraints.rb +0 -171
  178. data/lib/active_scaffold/data_structures/action_columns.rb +0 -142
  179. data/lib/active_scaffold/data_structures/action_link.rb +0 -185
  180. data/lib/active_scaffold/data_structures/action_links.rb +0 -191
  181. data/lib/active_scaffold/data_structures/actions.rb +0 -45
  182. data/lib/active_scaffold/data_structures/bridge.rb +0 -22
  183. data/lib/active_scaffold/data_structures/column.rb +0 -401
  184. data/lib/active_scaffold/data_structures/columns.rb +0 -75
  185. data/lib/active_scaffold/data_structures/error_message.rb +0 -24
  186. data/lib/active_scaffold/data_structures/nested_info.rb +0 -171
  187. data/lib/active_scaffold/data_structures/set.rb +0 -61
  188. data/lib/active_scaffold/data_structures/sorting.rb +0 -167
  189. data/lib/active_scaffold/engine.rb +0 -4
  190. data/lib/active_scaffold/extensions/action_controller_rendering.rb +0 -20
  191. data/lib/active_scaffold/extensions/action_controller_rescueing.rb +0 -7
  192. data/lib/active_scaffold/extensions/action_view_rendering.rb +0 -115
  193. data/lib/active_scaffold/extensions/active_record_offset.rb +0 -12
  194. data/lib/active_scaffold/extensions/array.rb +0 -7
  195. data/lib/active_scaffold/extensions/cache_association.rb +0 -16
  196. data/lib/active_scaffold/extensions/localize.rb +0 -10
  197. data/lib/active_scaffold/extensions/name_option_for_datetime.rb +0 -12
  198. data/lib/active_scaffold/extensions/nil_id_in_url_params.rb +0 -7
  199. data/lib/active_scaffold/extensions/paginator_extensions.rb +0 -26
  200. data/lib/active_scaffold/extensions/reverse_associations.rb +0 -64
  201. data/lib/active_scaffold/extensions/routing_mapper.rb +0 -48
  202. data/lib/active_scaffold/extensions/to_label.rb +0 -8
  203. data/lib/active_scaffold/extensions/unsaved_associated.rb +0 -61
  204. data/lib/active_scaffold/extensions/unsaved_record.rb +0 -20
  205. data/lib/active_scaffold/extensions/usa_state.rb +0 -46
  206. data/lib/active_scaffold/finder.rb +0 -399
  207. data/lib/active_scaffold/helpers/association_helpers.rb +0 -42
  208. data/lib/active_scaffold/helpers/controller_helpers.rb +0 -94
  209. data/lib/active_scaffold/helpers/form_column_helpers.rb +0 -322
  210. data/lib/active_scaffold/helpers/human_condition_helpers.rb +0 -64
  211. data/lib/active_scaffold/helpers/id_helpers.rb +0 -131
  212. data/lib/active_scaffold/helpers/list_column_helpers.rb +0 -374
  213. data/lib/active_scaffold/helpers/pagination_helpers.rb +0 -62
  214. data/lib/active_scaffold/helpers/search_column_helpers.rb +0 -257
  215. data/lib/active_scaffold/helpers/show_column_helpers.rb +0 -44
  216. data/lib/active_scaffold/helpers/view_helpers.rb +0 -398
  217. data/lib/active_scaffold/marked_model.rb +0 -38
  218. data/lib/active_scaffold/paginator.rb +0 -136
  219. data/lib/active_scaffold/responds_to_parent.rb +0 -70
  220. data/lib/active_scaffold/tableless.rb +0 -83
  221. data/lib/active_scaffold/version.rb +0 -9
  222. data/lib/active_scaffold_env.rb +0 -13
  223. data/lib/generators/active_scaffold/USAGE +0 -29
  224. data/lib/generators/active_scaffold/active_scaffold_generator.rb +0 -21
  225. data/lib/generators/active_scaffold_controller/USAGE +0 -19
  226. data/lib/generators/active_scaffold_controller/active_scaffold_controller_generator.rb +0 -29
  227. data/lib/generators/active_scaffold_controller/templates/controller.rb +0 -4
  228. data/lib/generators/active_scaffold_controller/templates/helper.rb +0 -2
  229. data/public/blank.html +0 -33
  230. data/shoulda_macros/macros.rb +0 -136
  231. data/vendor/assets/images/ui-bg_diagonals-thick_18_b81900_40x40.png +0 -0
  232. data/vendor/assets/images/ui-bg_diagonals-thick_20_666666_40x40.png +0 -0
  233. data/vendor/assets/images/ui-bg_flat_10_000000_40x100.png +0 -0
  234. data/vendor/assets/images/ui-bg_glass_100_f6f6f6_1x400.png +0 -0
  235. data/vendor/assets/images/ui-bg_glass_100_fdf5ce_1x400.png +0 -0
  236. data/vendor/assets/images/ui-bg_glass_65_ffffff_1x400.png +0 -0
  237. data/vendor/assets/images/ui-bg_gloss-wave_35_f6a828_500x100.png +0 -0
  238. data/vendor/assets/images/ui-bg_highlight-soft_100_eeeeee_1x100.png +0 -0
  239. data/vendor/assets/images/ui-bg_highlight-soft_75_ffe45c_1x100.png +0 -0
  240. data/vendor/assets/images/ui-icons_222222_256x240.png +0 -0
  241. data/vendor/assets/images/ui-icons_228ef1_256x240.png +0 -0
  242. data/vendor/assets/images/ui-icons_ef8c08_256x240.png +0 -0
  243. data/vendor/assets/images/ui-icons_ffd27a_256x240.png +0 -0
  244. data/vendor/assets/images/ui-icons_ffffff_256x240.png +0 -0
  245. data/vendor/assets/javascripts/jquery-ui-timepicker-addon.js +0 -1276
  246. data/vendor/assets/stylesheets/jquery-ui.css +0 -568
@@ -1,64 +0,0 @@
1
- module ActiveScaffold::Config
2
- class Form < Base
3
- def initialize(core_config)
4
- super
5
- # start with the ActionLink defined globally
6
- @link = self.class.link.clone unless self.class.link.nil?
7
- @show_unauthorized_columns = self.class.show_unauthorized_columns
8
- @refresh_list = self.class.refresh_list
9
- @persistent = self.class.persistent
10
-
11
- # no global setting here because multipart should only be set for specific forms
12
- @multipart = false
13
- end
14
-
15
- # global level configuration
16
- # --------------------------
17
- # show value of unauthorized columns instead of skip them
18
- class_attribute :show_unauthorized_columns
19
-
20
- # whether the form stays open after an update or not
21
- cattr_accessor :persistent
22
- @@persistent = false
23
-
24
- # whether we should refresh list after update or not
25
- cattr_accessor :refresh_list
26
- @@refresh_list = false
27
-
28
- # instance-level configuration
29
- # ----------------------------
30
-
31
- # show value of unauthorized columns instead of skip them
32
- attr_accessor :show_unauthorized_columns
33
-
34
- # the ActionLink for this action
35
- attr_accessor :link
36
-
37
- # the label for this Form action. used for the header.
38
- attr_writer :label
39
-
40
- # whether the form stays open after a create or not
41
- attr_accessor :persistent
42
-
43
- # whether we should refresh list after create or not
44
- attr_accessor :refresh_list
45
-
46
- # provides access to the list of columns specifically meant for the Form to use
47
- def columns
48
- unless @columns # lazy evaluation
49
- self.columns = @core.columns._inheritable
50
- self.columns.exclude :created_on, :created_at, :updated_on, :updated_at, :as_marked
51
- self.columns.exclude *@core.columns.collect{|c| c.name if c.polymorphic_association?}.compact
52
- end
53
- @columns
54
- end
55
-
56
- public :columns=
57
-
58
- # whether the form should be multipart
59
- attr_writer :multipart
60
- def multipart?
61
- @multipart ? true : false
62
- end
63
- end
64
- end
@@ -1,247 +0,0 @@
1
- module ActiveScaffold::Config
2
- class List < Base
3
- self.crud_type = :read
4
-
5
- def initialize(core_config)
6
- super
7
- # inherit from global scope
8
- # full configuration path is: defaults => global table => local table
9
- @per_page = self.class.per_page
10
- @page_links_inner_window = self.class.page_links_inner_window
11
- @page_links_outer_window = self.class.page_links_outer_window
12
-
13
- # originates here
14
- @sorting = ActiveScaffold::DataStructures::Sorting.new(@core.columns)
15
- @sorting.set_default_sorting(@core.model)
16
-
17
- # inherit from global scope
18
- @empty_field_text = self.class.empty_field_text
19
- @association_join_text = self.class.association_join_text
20
- @pagination = self.class.pagination
21
- @show_search_reset = self.class.show_search_reset
22
- @reset_link = self.class.reset_link.clone
23
- @wrap_tag = self.class.wrap_tag
24
- @always_show_search = self.class.always_show_search
25
- @always_show_create = self.class.always_show_create
26
- end
27
-
28
- # global level configuration
29
- # --------------------------
30
- # how many records to show per page
31
- cattr_accessor :per_page
32
- @@per_page = 15
33
-
34
- # how many page links around current page to show
35
- cattr_accessor :page_links_inner_window
36
- @@page_links_inner_window = 2
37
-
38
- # how many page links around first and last page to show
39
- cattr_accessor :page_links_outer_window
40
- @@page_links_outer_window = 0
41
-
42
- class << self
43
- def page_links_window=(value)
44
- ActiveSupport::Deprecation.warn("Use page_links_inner_window", caller(1))
45
- self.page_links_inner_window = value
46
- end
47
- end
48
-
49
- # what string to use when a field is empty
50
- cattr_accessor :empty_field_text
51
- @@empty_field_text = '-'
52
-
53
- # what string to use to join records from plural associations
54
- cattr_accessor :association_join_text
55
- @@association_join_text = ', '
56
-
57
- # What kind of pagination to use:
58
- # * true: The usual pagination
59
- # * :infinite: Treat the source as having an infinite number of pages (i.e. don't count the records; useful for large tables where counting is slow and we don't really care anyway)
60
- # * false: Disable pagination
61
- cattr_accessor :pagination
62
- @@pagination = true
63
-
64
- # show a link to reset the search next to filtered message
65
- cattr_accessor :show_search_reset
66
- @@show_search_reset = true
67
-
68
- # the ActionLink to reset search
69
- cattr_reader :reset_link
70
- @@reset_link = ActiveScaffold::DataStructures::ActionLink.new('index', :label => :click_to_reset, :type => :collection, :position => false)
71
-
72
- # wrap normal cells (not inplace editable columns or with link) with a tag
73
- # it allows for more css styling
74
- cattr_accessor :wrap_tag
75
- @@wrap_tag = nil
76
-
77
- # Show search form in the list header instead of display the link
78
- cattr_accessor :always_show_search
79
- @@always_show_search = false
80
-
81
- # Show create form in the list header instead of display the link
82
- cattr_accessor :always_show_create
83
- @@always_show_create = false
84
-
85
- # instance-level configuration
86
- # ----------------------------
87
-
88
- # provides access to the list of columns specifically meant for the Table to use
89
- def columns
90
- self.columns = @core.columns._inheritable unless @columns # lazy evaluation
91
- @columns
92
- end
93
-
94
- public :columns=
95
-
96
- # how many rows to show at once
97
- attr_accessor :per_page
98
-
99
- # how many page links around current page to show
100
- attr_accessor :page_links_inner_window
101
-
102
- # how many page links around current page to show
103
- attr_accessor :page_links_outer_window
104
-
105
- def page_links_window=(value)
106
- ActiveSupport::Deprecation.warn("Use page_links_inner_window", caller(1))
107
- self.page_links_inner_window = value
108
- end
109
-
110
- # What kind of pagination to use:
111
- # * true: The usual pagination
112
- # * :infinite: Treat the source as having an infinite number of pages (i.e. don't count the records; useful for large tables where counting is slow and we don't really care anyway)
113
- # * false: Disable pagination
114
- attr_accessor :pagination
115
-
116
- # what string to use when a field is empty
117
- attr_accessor :empty_field_text
118
-
119
- # what string to use to join records from plural associations
120
- attr_accessor :association_join_text
121
-
122
- # show a link to reset the search next to filtered message
123
- attr_accessor :show_search_reset
124
-
125
- # the ActionLink to reset search
126
- attr_reader :reset_link
127
-
128
- # the default sorting. should be an array of hashes of {column_name => direction}, e.g. [{:a => 'desc'}, {:b => 'asc'}]. to just sort on one column, you can simply provide a hash, though, e.g. {:a => 'desc'}.
129
- def sorting=(val)
130
- val = [val] if val.is_a? Hash
131
- sorting.clear
132
- val.each { |clause| sorting.add *Array(clause).first }
133
- end
134
- def sorting
135
- @sorting ||= ActiveScaffold::DataStructures::Sorting.new(@core.columns)
136
- end
137
-
138
- # overwrite the includes used for the count sql query
139
- attr_accessor :count_includes
140
-
141
- # the label for this List action. used for the header.
142
- attr_writer :label
143
- def label
144
- @label ? as_(@label, :count => 2) : @core.label(:count => 2)
145
- end
146
-
147
- attr_writer :no_entries_message
148
- def no_entries_message
149
- @no_entries_message ? @no_entries_message : :no_entries
150
- end
151
-
152
- attr_writer :filtered_message
153
- def filtered_message
154
- @filtered_message ? @filtered_message : :filtered
155
- end
156
-
157
- attr_writer :always_show_search
158
- def always_show_search
159
- @always_show_search && !search_partial.blank?
160
- end
161
-
162
- def search_partial
163
- return "search" if @core.actions.include?(:search)
164
- return "field_search" if @core.actions.include?(:field_search)
165
- end
166
-
167
- # always show create
168
- attr_writer :always_show_create
169
- def always_show_create
170
- @always_show_create && @core.actions.include?(:create)
171
- end
172
-
173
- # if list view is nested hide nested_column
174
- attr_writer :hide_nested_column
175
- def hide_nested_column
176
- @hide_nested_column.nil? ? true : @hide_nested_column
177
- end
178
-
179
- # might be set to open nested_link automatically in view
180
- # conf.nested.add_link(:players)
181
- # conf.list.nested_auto_open = {:players => 2}
182
- # will open nested players view if there are 2 or less records in parent
183
- attr_accessor :nested_auto_open
184
-
185
- # wrap normal cells (not inplace editable columns or with link) with a tag
186
- # it allows for more css styling
187
- attr_accessor :wrap_tag
188
-
189
- class UserSettings < UserSettings
190
- def initialize(conf, storage, params)
191
- super(conf,storage,params)
192
- @sorting = nil
193
- end
194
-
195
- # This label has alread been localized.
196
- def label
197
- @session[:label] ? @session[:label] : @conf.label
198
- end
199
-
200
- def per_page
201
- @session['per_page'] = @params['limit'].to_i if @params.has_key? 'limit'
202
- @session['per_page'] || @conf.per_page
203
- end
204
-
205
- def page
206
- @session['page'] = @params['page'] if @params.has_key? 'page'
207
- @session['page'] || 1
208
- end
209
-
210
- def page=(value = nil)
211
- @session['page'] = value
212
- end
213
-
214
- attr_reader :nested_default_sorting
215
-
216
- def nested_default_sorting=(options)
217
- @nested_default_sorting ||= @conf.sorting.clone
218
- @nested_default_sorting.set_nested_sorting(options[:table_name], options[:default_sorting])
219
- end
220
-
221
- def default_sorting
222
- nested_default_sorting.nil? ? @conf.sorting : nested_default_sorting
223
- end
224
-
225
- def sorting
226
- if @sorting.nil?
227
- # we want to store as little as possible in the session, but we want to return a Sorting data structure. so we recreate it each page load based on session data.
228
- @session['sort'] = [@params['sort'], @params['sort_direction']] if @params['sort'] and @params['sort_direction']
229
- @session['sort'] = nil if @params['sort_direction'] == 'reset'
230
-
231
- if @session['sort']
232
- sorting = @conf.sorting.clone
233
- sorting.set(*@session['sort'])
234
- @sorting = sorting
235
- else
236
- @sorting = default_sorting
237
- end
238
- end
239
- @sorting
240
- end
241
-
242
- def count_includes
243
- @conf.count_includes
244
- end
245
- end
246
- end
247
- end
@@ -1,30 +0,0 @@
1
- module ActiveScaffold::Config
2
- class Mark < Base
3
- self.crud_type = :read
4
-
5
- # What kind of mark all mode to use:
6
- # * :search: de-/mark all records using current search conditions
7
- # * :page: de-/mark all records on current page
8
- cattr_accessor :mark_all_mode
9
- @@mark_all_mode = :search
10
-
11
- attr_accessor :mark_all_mode
12
-
13
- def initialize(core_config)
14
- @core = core_config
15
- @mark_all_mode = self.class.mark_all_mode
16
- @core.model.send(:include, ActiveScaffold::MarkedModel) unless @core.model < ActiveScaffold::MarkedModel
17
- add_mark_column
18
- end
19
-
20
- protected
21
-
22
- def add_mark_column
23
- @core.columns.add :as_marked
24
- @core.columns[:as_marked].label = 'M'
25
- @core.columns[:as_marked].list_ui = :marked
26
- @core.columns[:as_marked].sort = false
27
- @core.list.columns = [:as_marked] + @core.list.columns.names_without_auth_check unless @core.list.columns.include? :as_marked
28
- end
29
- end
30
- end
@@ -1,42 +0,0 @@
1
- module ActiveScaffold::Config
2
- class Nested < Base
3
- self.crud_type = :read
4
-
5
- def initialize(core_config)
6
- super
7
- @label = :add_existing_model
8
- @shallow_delete = self.class.shallow_delete
9
- end
10
-
11
- # global level configuration
12
- # --------------------------
13
- cattr_accessor :shallow_delete
14
- @@shallow_delete = true
15
-
16
- # instance-level configuration
17
- # ----------------------------
18
- attr_accessor :shallow_delete
19
-
20
- # Add a nested ActionLink
21
- def add_link(attribute, options = {})
22
- column = @core.columns[attribute.to_sym]
23
- unless column.nil? || column.association.nil?
24
- options.reverse_merge! :security_method => :nested_authorized?, :label => column.association.klass.model_name.human({:count => column.singular_association? ? 1 : 2, :default => column.association.klass.name.pluralize})
25
- action_group = options.delete(:action_group) || self.action_group
26
- action_link = @core.link_for_association(column, options)
27
- action_link.action ||= :index
28
- @core.action_links.add_to_group(action_link, action_group) unless action_link.nil?
29
- else
30
- # TODO: raise exception
31
- end
32
- end
33
-
34
- def add_scoped_link(named_scope, options = {})
35
- action_link = @core.link_for_association_as_scope(named_scope.to_sym, options)
36
- @core.action_links.add_to_group(action_link, action_group) unless action_link.nil?
37
- end
38
-
39
- # the label for this Nested action. used for the header.
40
- attr_writer :label
41
- end
42
- end
@@ -1,73 +0,0 @@
1
- module ActiveScaffold::Config
2
- class Search < Base
3
- self.crud_type = :read
4
-
5
- def initialize(core_config)
6
- super
7
- @text_search = self.class.text_search
8
- @live = self.class.live?
9
- @split_terms = self.class.split_terms
10
-
11
- # start with the ActionLink defined globally
12
- @link = self.class.link.clone
13
- end
14
-
15
-
16
- # global level configuration
17
- # --------------------------
18
- # the ActionLink for this action
19
- cattr_accessor :link
20
- @@link = ActiveScaffold::DataStructures::ActionLink.new('show_search', :label => :search, :type => :collection, :security_method => :search_authorized?, :ignore_method => :search_ignore?)
21
-
22
- # A flag for how the search should do full-text searching in the database:
23
- # * :full: LIKE %?%
24
- # * :start: LIKE ?%
25
- # * :end: LIKE %?
26
- # * false: LIKE ?
27
- # Default is :full
28
- cattr_accessor :text_search
29
- @@text_search = :full
30
-
31
- # whether submits the search as you type
32
- cattr_writer :live
33
- def self.live?
34
- @@live
35
- end
36
-
37
- cattr_accessor :split_terms
38
- @@split_terms = " "
39
-
40
- # instance-level configuration
41
- # ----------------------------
42
-
43
- # provides access to the list of columns specifically meant for the Search to use
44
- def columns
45
- # we want to delay initializing to the @core.columns set for as long as possible. Too soon and .search_sql will not be available to .searchable?
46
- unless @columns
47
- self.columns = @core.columns.collect{|c| c.name if @core.columns._inheritable.include?(c.name) and c.searchable? and c.column and c.column.text?}.compact
48
- end
49
- @columns
50
- end
51
-
52
- public :columns=
53
-
54
- # A flag for how the search should do full-text searching in the database:
55
- # * :full: LIKE %?%
56
- # * :start: LIKE ?%
57
- # * :end: LIKE %?
58
- # * false: LIKE ?
59
- # Default is :full
60
- attr_accessor :text_search
61
-
62
- attr_accessor :split_terms
63
-
64
- # the ActionLink for this action
65
- attr_accessor :link
66
-
67
- # whether submits the search as you type
68
- attr_writer :live
69
- def live?
70
- @live
71
- end
72
- end
73
- end