wice_grid 3.6.2 → 4.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (332) hide show
  1. checksums.yaml +4 -4
  2. data/.circleci/config.yml +41 -0
  3. data/.circleci/run-build-locally.sh +7 -0
  4. data/.github/ISSUE_TEMPLATE/bug_report.md +32 -0
  5. data/.gitignore +5 -2
  6. data/Appraisals +11 -0
  7. data/CHANGELOG.md +38 -1
  8. data/Gemfile.lock +299 -0
  9. data/README.md +77 -34
  10. data/config/locales/ja.yml +3 -3
  11. data/gemfiles/rails_5.0.gemfile +7 -0
  12. data/gemfiles/rails_5.0.gemfile.lock +291 -0
  13. data/gemfiles/rails_5.1.gemfile +7 -0
  14. data/gemfiles/rails_5.1.gemfile.lock +291 -0
  15. data/gemfiles/rails_5.2.gemfile +7 -0
  16. data/gemfiles/rails_5.2.gemfile.lock +299 -0
  17. data/lib/wice/columns.rb +13 -6
  18. data/lib/wice/columns/column_integer.rb +11 -1
  19. data/lib/wice/columns/column_rails_datetime_helper.rb +3 -2
  20. data/lib/wice/columns/column_range.rb +6 -4
  21. data/lib/wice/grid_renderer.rb +23 -7
  22. data/lib/wice/helpers/bs_calendar_helpers.rb +9 -1
  23. data/lib/wice/helpers/wice_grid_view_helpers.rb +6 -6
  24. data/lib/wice/wice_grid_controller.rb +7 -5
  25. data/lib/wice/wice_grid_core_ext.rb +5 -1
  26. data/lib/wice/wice_grid_misc.rb +1 -1
  27. data/lib/wice_grid.rb +86 -59
  28. data/spec/acceptance_helper.rb +58 -0
  29. data/spec/features/action_column_request_spec.rb +280 -0
  30. data/spec/features/adding_rows_request_spec.rb +21 -0
  31. data/spec/features/all_records_request_spec.rb +18 -0
  32. data/spec/features/auto_reloads2_request_spec.rb +349 -0
  33. data/spec/features/auto_reloads3_request_spec.rb +130 -0
  34. data/spec/features/auto_reloads_request_spec.rb +348 -0
  35. data/spec/features/basics1_request_spec.rb +11 -0
  36. data/spec/features/basics2_request_spec.rb +10 -0
  37. data/spec/features/basics3_request_spec.rb +29 -0
  38. data/spec/features/basics4_request_spec.rb +19 -0
  39. data/spec/features/basics5_request_spec.rb +13 -0
  40. data/spec/features/basics6_request_spec.rb +22 -0
  41. data/spec/features/blockless_column_definition_spec.rb +27 -0
  42. data/spec/features/buttons_request_spec.rb +172 -0
  43. data/spec/features/csv_and_detached_filters_spec.rb +10 -0
  44. data/spec/features/csv_export_request_spec.rb +13 -0
  45. data/spec/features/custom_filter_params_request_spec.rb +29 -0
  46. data/spec/features/custom_filters1_request_spec.rb +155 -0
  47. data/spec/features/custom_filters2_request_spec.rb +53 -0
  48. data/spec/features/custom_filters3_request_spec.rb +50 -0
  49. data/spec/features/custom_filters4_request_spec.rb +13 -0
  50. data/spec/features/custom_ordering_on_calculated_request_spec.rb +30 -0
  51. data/spec/features/custom_ordering_request_spec.rb +36 -0
  52. data/spec/features/custom_ordering_with_arel_request_spec.rb +36 -0
  53. data/spec/features/custom_ordering_with_proc_request_spec.rb +44 -0
  54. data/spec/features/custom_ordering_with_ruby_request_spec.rb +30 -0
  55. data/spec/features/dates_request_spec.rb +56 -0
  56. data/spec/features/detached_filters_spec.rb +10 -0
  57. data/spec/features/detached_filters_two_grids_spec.rb +127 -0
  58. data/spec/features/disable_all_filters_spec.rb +22 -0
  59. data/spec/features/hiding_checkboxes_in_action_column_request_spec.rb +294 -0
  60. data/spec/features/integration_with_application_view_request_spec.rb +43 -0
  61. data/spec/features/integration_with_forms_request_spec.rb +141 -0
  62. data/spec/features/joining_tables_spec.rb +40 -0
  63. data/spec/features/localization_request_spec.rb +24 -0
  64. data/spec/features/many_grids_on_page_request_spec.rb +104 -0
  65. data/spec/features/negation_request_spec.rb +25 -0
  66. data/spec/features/no_records_request_spec.rb +26 -0
  67. data/spec/features/numeric_filters_request_spec.rb +10 -0
  68. data/spec/features/resultset_processings2_request_spec.rb +27 -0
  69. data/spec/features/resultset_processings_request_spec.rb +30 -0
  70. data/spec/features/saved_queries_request_spec.rb +120 -0
  71. data/spec/features/shared.rb +1005 -0
  72. data/spec/features/shared_detached_filters.rb +158 -0
  73. data/spec/features/styling_spec.rb +15 -0
  74. data/spec/features/two_associations_spec.rb +48 -0
  75. data/spec/features/upper_pagination_panel_request_spec.rb +23 -0
  76. data/spec/features/when_filtered_spec.rb +209 -0
  77. data/spec/fixtures/.gitkeep +0 -0
  78. data/spec/fixtures/companies.yml +21 -0
  79. data/spec/fixtures/priorities.yml +31 -0
  80. data/spec/fixtures/project_roles.yml +25 -0
  81. data/spec/fixtures/projects.yml +22 -0
  82. data/spec/fixtures/statuses.yml +55 -0
  83. data/spec/fixtures/tasks.yml +751 -0
  84. data/spec/fixtures/tasks_users.yml +2089 -0
  85. data/spec/fixtures/users.yml +61 -0
  86. data/spec/fixtures/versions.yml +78 -0
  87. data/spec/models/company_spec.rb +6 -0
  88. data/spec/models/priority_spec.rb +6 -0
  89. data/spec/models/project_spec.rb +11 -0
  90. data/spec/models/status_spec.rb +6 -0
  91. data/spec/models/task_spec.rb +12 -0
  92. data/spec/models/user_project_participation_spec.rb +7 -0
  93. data/spec/models/user_spec.rb +12 -0
  94. data/spec/models/version_spec.rb +5 -0
  95. data/spec/rails_helper.rb +15 -0
  96. data/spec/spec_helper.rb +10 -9
  97. data/spec/support/test_app/Rakefile +3 -0
  98. data/spec/support/test_app/app/assets/javascripts/application.js +20 -0
  99. data/spec/support/test_app/app/assets/javascripts/common.js.coffee +6 -0
  100. data/spec/support/test_app/app/assets/javascripts/jquery.ui.datepicker.locales.js +56 -0
  101. data/spec/support/test_app/app/assets/stylesheets/adding_rows.scss +3 -0
  102. data/spec/support/test_app/app/assets/stylesheets/application.scss +46 -0
  103. data/spec/support/test_app/app/assets/stylesheets/csv_and_detached_filters.scss +3 -0
  104. data/spec/support/test_app/app/assets/stylesheets/many_grids_on_page.scss +3 -0
  105. data/spec/support/test_app/app/controllers/action_column_controller.rb +15 -0
  106. data/spec/support/test_app/app/controllers/adding_rows_controller.rb +14 -0
  107. data/spec/support/test_app/app/controllers/all_records_controller.rb +14 -0
  108. data/spec/support/test_app/app/controllers/application_controller.rb +99 -0
  109. data/spec/support/test_app/app/controllers/auto_reloads2_controller.rb +14 -0
  110. data/spec/support/test_app/app/controllers/auto_reloads3_controller.rb +20 -0
  111. data/spec/support/test_app/app/controllers/auto_reloads_controller.rb +14 -0
  112. data/spec/support/test_app/app/controllers/basics1_controller.rb +6 -0
  113. data/spec/support/test_app/app/controllers/basics2_controller.rb +6 -0
  114. data/spec/support/test_app/app/controllers/basics3_controller.rb +6 -0
  115. data/spec/support/test_app/app/controllers/basics4_controller.rb +6 -0
  116. data/spec/support/test_app/app/controllers/basics5_controller.rb +6 -0
  117. data/spec/support/test_app/app/controllers/basics6_controller.rb +11 -0
  118. data/spec/support/test_app/app/controllers/blockless_column_definition_controller.rb +6 -0
  119. data/spec/support/test_app/app/controllers/buttons_controller.rb +6 -0
  120. data/spec/support/test_app/app/controllers/csv_and_detached_filters_controller.rb +13 -0
  121. data/spec/support/test_app/app/controllers/csv_export_controller.rb +28 -0
  122. data/spec/support/test_app/app/controllers/custom_filter_params_controller.rb +6 -0
  123. data/spec/support/test_app/app/controllers/custom_filters1_controller.rb +9 -0
  124. data/spec/support/test_app/app/controllers/custom_filters2_controller.rb +14 -0
  125. data/spec/support/test_app/app/controllers/custom_filters3_controller.rb +12 -0
  126. data/spec/support/test_app/app/controllers/custom_filters4_controller.rb +12 -0
  127. data/spec/support/test_app/app/controllers/custom_ordering_controller.rb +18 -0
  128. data/spec/support/test_app/app/controllers/custom_ordering_on_calculated_controller.rb +6 -0
  129. data/spec/support/test_app/app/controllers/custom_ordering_with_arel_controller.rb +18 -0
  130. data/spec/support/test_app/app/controllers/custom_ordering_with_proc_controller.rb +11 -0
  131. data/spec/support/test_app/app/controllers/custom_ordering_with_ruby_controller.rb +6 -0
  132. data/spec/support/test_app/app/controllers/dates_controller.rb +8 -0
  133. data/spec/support/test_app/app/controllers/detached_filters_controller.rb +6 -0
  134. data/spec/support/test_app/app/controllers/detached_filters_two_grids_controller.rb +7 -0
  135. data/spec/support/test_app/app/controllers/disable_all_filters_controller.rb +6 -0
  136. data/spec/support/test_app/app/controllers/hiding_checkboxes_in_action_column_controller.rb +13 -0
  137. data/spec/support/test_app/app/controllers/home_controller.rb +3 -0
  138. data/spec/support/test_app/app/controllers/integration_with_application_view_controller.rb +16 -0
  139. data/spec/support/test_app/app/controllers/integration_with_forms_controller.rb +11 -0
  140. data/spec/support/test_app/app/controllers/joining_tables_controller.rb +11 -0
  141. data/spec/support/test_app/app/controllers/localization_controller.rb +26 -0
  142. data/spec/support/test_app/app/controllers/many_grids_on_page_controller.rb +7 -0
  143. data/spec/support/test_app/app/controllers/negation_controller.rb +14 -0
  144. data/spec/support/test_app/app/controllers/no_records_controller.rb +8 -0
  145. data/spec/support/test_app/app/controllers/null_values_controller.rb +10 -0
  146. data/spec/support/test_app/app/controllers/numeric_filters_controller.rb +6 -0
  147. data/spec/support/test_app/app/controllers/queries_controller.rb +4 -0
  148. data/spec/support/test_app/app/controllers/resultset_processings2_controller.rb +29 -0
  149. data/spec/support/test_app/app/controllers/resultset_processings_controller.rb +30 -0
  150. data/spec/support/test_app/app/controllers/saved_queries_controller.rb +14 -0
  151. data/spec/support/test_app/app/controllers/styling_controller.rb +7 -0
  152. data/spec/support/test_app/app/controllers/tasks_controller.rb +14 -0
  153. data/spec/support/test_app/app/controllers/two_associations_controller.rb +6 -0
  154. data/spec/support/test_app/app/controllers/upper_pagination_panel_controller.rb +6 -0
  155. data/spec/support/test_app/app/controllers/when_filtered_controller.rb +6 -0
  156. data/spec/support/test_app/app/helpers/application_helper.rb +82 -0
  157. data/spec/support/test_app/app/mailers/.gitkeep +0 -0
  158. data/spec/support/test_app/app/models/.gitkeep +0 -0
  159. data/spec/support/test_app/app/models/company.rb +5 -0
  160. data/spec/support/test_app/app/models/populate.rb +84 -0
  161. data/spec/support/test_app/app/models/priority.rb +10 -0
  162. data/spec/support/test_app/app/models/project.rb +14 -0
  163. data/spec/support/test_app/app/models/project_role.rb +3 -0
  164. data/spec/support/test_app/app/models/status.rb +10 -0
  165. data/spec/support/test_app/app/models/task.rb +11 -0
  166. data/spec/support/test_app/app/models/to_dropdown_mixin.rb +16 -0
  167. data/spec/support/test_app/app/models/user.rb +8 -0
  168. data/spec/support/test_app/app/models/user_project_participation.rb +6 -0
  169. data/spec/support/test_app/app/models/version.rb +6 -0
  170. data/spec/support/test_app/app/views/action_column/_grid.html.erb +35 -0
  171. data/spec/support/test_app/app/views/action_column/index.html.haml +45 -0
  172. data/spec/support/test_app/app/views/adding_rows/_grid.html.erb +58 -0
  173. data/spec/support/test_app/app/views/adding_rows/index.html.haml +37 -0
  174. data/spec/support/test_app/app/views/all_records/_grid.html.erb +30 -0
  175. data/spec/support/test_app/app/views/all_records/index.html.haml +12 -0
  176. data/spec/support/test_app/app/views/auto_reloads/_grid.html.erb +32 -0
  177. data/spec/support/test_app/app/views/auto_reloads/index.html.haml +15 -0
  178. data/spec/support/test_app/app/views/auto_reloads2/_grid.html.erb +32 -0
  179. data/spec/support/test_app/app/views/auto_reloads2/index.html.haml +65 -0
  180. data/spec/support/test_app/app/views/auto_reloads3/_grid.html.erb +25 -0
  181. data/spec/support/test_app/app/views/auto_reloads3/index.html.haml +78 -0
  182. data/spec/support/test_app/app/views/basics1/_grid.html.erb +26 -0
  183. data/spec/support/test_app/app/views/basics1/index.html.haml +13 -0
  184. data/spec/support/test_app/app/views/basics2/_grid.html.erb +27 -0
  185. data/spec/support/test_app/app/views/basics2/index.html.haml +12 -0
  186. data/spec/support/test_app/app/views/basics3/_grid.html.erb +28 -0
  187. data/spec/support/test_app/app/views/basics3/index.html.haml +13 -0
  188. data/spec/support/test_app/app/views/basics4/_grid.html.erb +21 -0
  189. data/spec/support/test_app/app/views/basics4/index.html.haml +12 -0
  190. data/spec/support/test_app/app/views/basics5/_grid.html.erb +19 -0
  191. data/spec/support/test_app/app/views/basics5/index.html.haml +12 -0
  192. data/spec/support/test_app/app/views/basics6/_grid.html.erb +19 -0
  193. data/spec/support/test_app/app/views/basics6/index.html.haml +23 -0
  194. data/spec/support/test_app/app/views/blockless_column_definition/_grid.html.erb +19 -0
  195. data/spec/support/test_app/app/views/blockless_column_definition/index.html.haml +15 -0
  196. data/spec/support/test_app/app/views/buttons/_grid.html.erb +20 -0
  197. data/spec/support/test_app/app/views/buttons/index.html.haml +30 -0
  198. data/spec/support/test_app/app/views/csv_and_detached_filters/_grid.html.erb +23 -0
  199. data/spec/support/test_app/app/views/csv_and_detached_filters/index.html.haml +58 -0
  200. data/spec/support/test_app/app/views/csv_export/_projects_grid.html.erb +17 -0
  201. data/spec/support/test_app/app/views/csv_export/_tasks_grid.html.erb +43 -0
  202. data/spec/support/test_app/app/views/csv_export/index.html.haml +90 -0
  203. data/spec/support/test_app/app/views/custom_filter_params/_grid.html.erb +12 -0
  204. data/spec/support/test_app/app/views/custom_filter_params/index.html.haml +12 -0
  205. data/spec/support/test_app/app/views/custom_filters1/_g1.html.erb +8 -0
  206. data/spec/support/test_app/app/views/custom_filters1/_g2.html.erb +9 -0
  207. data/spec/support/test_app/app/views/custom_filters1/_g3.html.erb +9 -0
  208. data/spec/support/test_app/app/views/custom_filters1/_g4.html.erb +8 -0
  209. data/spec/support/test_app/app/views/custom_filters1/index.html.haml +30 -0
  210. data/spec/support/test_app/app/views/custom_filters2/_grid.html.erb +30 -0
  211. data/spec/support/test_app/app/views/custom_filters2/index.html.haml +41 -0
  212. data/spec/support/test_app/app/views/custom_filters3/_grid.html.erb +18 -0
  213. data/spec/support/test_app/app/views/custom_filters3/index.html.haml +16 -0
  214. data/spec/support/test_app/app/views/custom_filters4/_grid.html.erb +20 -0
  215. data/spec/support/test_app/app/views/custom_filters4/index.html.haml +12 -0
  216. data/spec/support/test_app/app/views/custom_ordering/_grid.html.erb +10 -0
  217. data/spec/support/test_app/app/views/custom_ordering/index.html.haml +24 -0
  218. data/spec/support/test_app/app/views/custom_ordering_on_calculated/_grid.html.erb +14 -0
  219. data/spec/support/test_app/app/views/custom_ordering_on_calculated/index.html.haml +23 -0
  220. data/spec/support/test_app/app/views/custom_ordering_with_arel/_grid.html.erb +10 -0
  221. data/spec/support/test_app/app/views/custom_ordering_with_arel/index.html.haml +24 -0
  222. data/spec/support/test_app/app/views/custom_ordering_with_proc/_grid.html.erb +10 -0
  223. data/spec/support/test_app/app/views/custom_ordering_with_proc/index.html.haml +21 -0
  224. data/spec/support/test_app/app/views/custom_ordering_with_ruby/_grid.html.erb +10 -0
  225. data/spec/support/test_app/app/views/custom_ordering_with_ruby/index.html.haml +23 -0
  226. data/spec/support/test_app/app/views/dates/_grid.html.erb +25 -0
  227. data/spec/support/test_app/app/views/dates/index.html.haml +52 -0
  228. data/spec/support/test_app/app/views/detached_filters/_grid.html.erb +23 -0
  229. data/spec/support/test_app/app/views/detached_filters/index.html.haml +79 -0
  230. data/spec/support/test_app/app/views/detached_filters_two_grids/_grid.html.erb +23 -0
  231. data/spec/support/test_app/app/views/detached_filters_two_grids/index.html.haml +85 -0
  232. data/spec/support/test_app/app/views/disable_all_filters/_grid.html.erb +21 -0
  233. data/spec/support/test_app/app/views/disable_all_filters/index.html.haml +14 -0
  234. data/spec/support/test_app/app/views/hiding_checkboxes_in_action_column/_grid.html.erb +34 -0
  235. data/spec/support/test_app/app/views/hiding_checkboxes_in_action_column/index.html.haml +32 -0
  236. data/spec/support/test_app/app/views/integration_with_application_view/_grid.html.erb +27 -0
  237. data/spec/support/test_app/app/views/integration_with_application_view/index.html.haml +33 -0
  238. data/spec/support/test_app/app/views/integration_with_forms/_grid.html.erb +23 -0
  239. data/spec/support/test_app/app/views/integration_with_forms/index.html.haml +18 -0
  240. data/spec/support/test_app/app/views/joining_tables/_grid.html.erb +23 -0
  241. data/spec/support/test_app/app/views/joining_tables/index.html.haml +26 -0
  242. data/spec/support/test_app/app/views/layouts/application.html.haml +61 -0
  243. data/spec/support/test_app/app/views/localization/_grid.html.erb +36 -0
  244. data/spec/support/test_app/app/views/localization/index.html.haml +20 -0
  245. data/spec/support/test_app/app/views/many_grids_on_page/_tasks_grid1.html.erb +12 -0
  246. data/spec/support/test_app/app/views/many_grids_on_page/_tasks_grid2.html.erb +12 -0
  247. data/spec/support/test_app/app/views/many_grids_on_page/index.html.haml +26 -0
  248. data/spec/support/test_app/app/views/negation/_grid.html.erb +30 -0
  249. data/spec/support/test_app/app/views/negation/index.html.haml +15 -0
  250. data/spec/support/test_app/app/views/no_records/_empty_grid.html.haml +1 -0
  251. data/spec/support/test_app/app/views/no_records/_grid1.html.erb +11 -0
  252. data/spec/support/test_app/app/views/no_records/_grid2.html.erb +9 -0
  253. data/spec/support/test_app/app/views/no_records/_grid3.html.erb +9 -0
  254. data/spec/support/test_app/app/views/no_records/index.html.haml +24 -0
  255. data/spec/support/test_app/app/views/null_values/_grid.html.erb +17 -0
  256. data/spec/support/test_app/app/views/null_values/index.html.haml +21 -0
  257. data/spec/support/test_app/app/views/numeric_filters/_grid.html.erb +19 -0
  258. data/spec/support/test_app/app/views/numeric_filters/index.html.haml +12 -0
  259. data/spec/support/test_app/app/views/resultset_processings/_grid.html.erb +27 -0
  260. data/spec/support/test_app/app/views/resultset_processings/index.html.haml +50 -0
  261. data/spec/support/test_app/app/views/resultset_processings2/_grid.html.erb +27 -0
  262. data/spec/support/test_app/app/views/resultset_processings2/index.html.haml +48 -0
  263. data/spec/support/test_app/app/views/saved_queries/_grid.html.erb +30 -0
  264. data/spec/support/test_app/app/views/saved_queries/index.html.haml +15 -0
  265. data/spec/support/test_app/app/views/styling/_grid1.html.erb +12 -0
  266. data/spec/support/test_app/app/views/styling/_grid2.html.erb +31 -0
  267. data/spec/support/test_app/app/views/styling/index.html.haml +65 -0
  268. data/spec/support/test_app/app/views/tasks/_grid.html.erb +19 -0
  269. data/spec/support/test_app/app/views/tasks/index.html.haml +1 -0
  270. data/spec/support/test_app/app/views/two_associations/_grid.html.erb +13 -0
  271. data/spec/support/test_app/app/views/two_associations/index.html.haml +13 -0
  272. data/spec/support/test_app/app/views/upper_pagination_panel/_grid.html.erb +27 -0
  273. data/spec/support/test_app/app/views/upper_pagination_panel/index.html.haml +14 -0
  274. data/spec/support/test_app/app/views/when_filtered/_grid.html.erb +19 -0
  275. data/spec/support/test_app/app/views/when_filtered/index.html.haml +15 -0
  276. data/spec/support/test_app/bin/rails +4 -0
  277. data/spec/support/test_app/bin/rake +4 -0
  278. data/spec/support/test_app/config.ru +5 -0
  279. data/spec/support/test_app/config/application.rb +70 -0
  280. data/spec/support/test_app/config/boot.rb +7 -0
  281. data/spec/support/test_app/config/database.travis.yml +27 -0
  282. data/spec/support/test_app/config/database.yml +16 -0
  283. data/spec/support/test_app/config/database.yml.mysql +19 -0
  284. data/spec/support/test_app/config/database.yml.postgresql +18 -0
  285. data/spec/support/test_app/config/environment.rb +6 -0
  286. data/spec/support/test_app/config/environments/development.rb +34 -0
  287. data/spec/support/test_app/config/environments/production.rb +66 -0
  288. data/spec/support/test_app/config/environments/test.rb +34 -0
  289. data/spec/support/test_app/config/initializers/backtrace_silencers.rb +8 -0
  290. data/spec/support/test_app/config/initializers/inflections.rb +16 -0
  291. data/spec/support/test_app/config/initializers/mime_types.rb +6 -0
  292. data/spec/support/test_app/config/initializers/secret_token.rb +12 -0
  293. data/spec/support/test_app/config/initializers/session_store.rb +9 -0
  294. data/spec/support/test_app/config/initializers/wice_grid_config.rb +163 -0
  295. data/spec/support/test_app/config/initializers/wrap_parameters.rb +15 -0
  296. data/spec/support/test_app/config/locales/en.yml +5 -0
  297. data/spec/support/test_app/config/locales/wice_grid.yml +550 -0
  298. data/spec/support/test_app/config/puma.rb +15 -0
  299. data/spec/support/test_app/config/routes.rb +125 -0
  300. data/spec/support/test_app/db/migrate/20120224193505_create_tasks.rb +27 -0
  301. data/spec/support/test_app/db/migrate/20120224193517_create_users.rb +12 -0
  302. data/spec/support/test_app/db/migrate/20120224193522_create_projects.rb +14 -0
  303. data/spec/support/test_app/db/migrate/20120224193529_create_priorities.rb +13 -0
  304. data/spec/support/test_app/db/migrate/20120224193537_create_statuses.rb +13 -0
  305. data/spec/support/test_app/db/migrate/20120224193543_create_versions.rb +15 -0
  306. data/spec/support/test_app/db/migrate/20120224193550_create_project_roles.rb +12 -0
  307. data/spec/support/test_app/db/migrate/20120224193610_create_companies.rb +12 -0
  308. data/spec/support/test_app/db/migrate/20120224195351_create_user_project_participations.rb +16 -0
  309. data/spec/support/test_app/db/migrate/20120224195521_add_tasks_users.rb +11 -0
  310. data/spec/support/test_app/db/migrate/20120610091944_create_wice_grid_serialized_queries.rb +14 -0
  311. data/spec/support/test_app/db/schema.rb +139 -0
  312. data/spec/support/test_app/db/seeds.rb +10 -0
  313. data/spec/support/test_app/lib/ar_fixtures.rb +100 -0
  314. data/spec/support/test_app/lib/assets/.gitkeep +0 -0
  315. data/spec/support/test_app/lib/tasks/.gitkeep +0 -0
  316. data/spec/support/test_app/lib/tasks/ar_fixtures.rake +45 -0
  317. data/spec/support/test_app/public/404.html +26 -0
  318. data/spec/support/test_app/public/422.html +26 -0
  319. data/spec/support/test_app/public/500.html +25 -0
  320. data/spec/support/test_app/public/favicon.ico +0 -0
  321. data/spec/support/test_app/public/robots.txt +5 -0
  322. data/spec/wice/grid_output_buffer_spec.rb +2 -2
  323. data/spec/wice/table_column_matrix_spec.rb +1 -1
  324. data/vendor/assets/javascripts/wice_grid_init.js.coffee +16 -4
  325. data/vendor/assets/javascripts/wice_grid_saved_queries_init.js.coffee +1 -0
  326. data/wice_grid.gemspec +29 -9
  327. metadata +606 -62
  328. data/release_notes/RELEASE_NOTES_3.2.pre1.rdoc +0 -81
  329. data/release_notes/RELEASE_NOTES_3.2.pre2.rdoc +0 -6
  330. data/release_notes/RELEASE_NOTES_3.3.0.rdoc +0 -21
  331. data/spec/support/wice_grid_test_config.rb +0 -173
  332. data/test/readme.txt +0 -1
@@ -1,81 +0,0 @@
1
- 1. Support for Prototype has been dropped. No hard feelings, Prototype, no matter what
2
- others say, I liked you :)
3
-
4
- 2. All assets are in the asset pipeline. All javascript is now coffeescript. No more Rails
5
- 2 legacy in the form of obtrusive javascript in the HTML page. The styles file is copied
6
- to the application asset directory by a generate task so that is it easy to modify it to
7
- the application needs. The javascript and images are loaded from the plugin. Read the
8
- Installation section in README for details. Thanks to the asset pipeline taking care of
9
- loading assets for us, methods +include_wice_grid_assets+, +names_of_wice_grid_stylesheets+,
10
- and +names_of_wice_grid_javascripts+ have been removed
11
-
12
- 3. ERB mode has been removed. It had never been used by anyone and is bad style anyway. In
13
- case you have no idea what it was, here's what it was:
14
-
15
- <% grid(@countries_grid, :erb_mode => true) do |g| %>
16
- <% g.column :column_name => 'Name', :attribute_name => 'name' do |country| %>
17
- <b>Name: <%= link_to(country.name, country_path(country)) %></b>
18
- <% end %>
19
- <% end -%>
20
-
21
- 4. WiceGrid is compatible with Twitter Bootstrap out of the box.
22
-
23
- 5. Paths to various images used by WiceGrid have been removed from the configuration file
24
- and are now defined only in the css file. Developers are encouraged to modify
25
- <tt>wice_grid.scss</tt> to use other images and to change the styles in general.
26
-
27
- 6. The markup and css classes that WiceGrid generates have changed, and CSS for older versions
28
- of WiceGrid might not work. Inspect the source code.
29
-
30
- 7. Parameter names in the grid helper have been renamed:
31
- * <tt>:table_html_attrs</tt> becomes <tt>:html</tt>
32
- * <tt>:header_tr_html_attrs</tt> becomes <tt>:header_tr_html</tt>
33
-
34
- 8. Parameter names in column definitions have been renamed:
35
- * <tt>:column_name</tt> becomes <tt>:name</tt>
36
- * <tt>:attribute_name</tt> becomes <tt>:attribute</tt>
37
- * <tt>:model_class</tt> becomes <tt>:model</tt>
38
- * <tt>:allow_ordering</tt> becomes <tt>:ordering</tt>
39
- * <tt>:td_html_attrs</tt> becomes <tt>:html</tt>
40
- * Negation in the parameter name does not contribute to the simplicity of an API, so
41
- <tt>:no_filter</tt> in becomes <tt>:filter</tt>. Consequently, <tt>:no_filter => true</tt>
42
- becomes <tt>:filter => false</tt>
43
- * <tt>:negation_in_filter</tt> becomes <tt>:negation</tt>
44
-
45
-
46
- 9. New configuration parameter <tt>DEFAULT_TABLE_CLASSES</tt> contains CSS classes added to
47
- all WiceGrid tables by default.
48
-
49
- 10. In previous versions of WiceGrid in the jQuery mode DateTime filters used to automatically
50
- fall back on Rails DateTime helpers due to absence of time controls in jQuery DatePicker.
51
- In version 3.2 this behavior has been changed to always use jQuery DatePicker, even with
52
- DateTime filters. Of course it is possible to force Rails DateTime with
53
- <tt>:helper_style => :standard</tt> in the column definition.
54
-
55
- 11. The second variable injected into to <tt>before_row</tt> and <tt>after_row</tt> block,
56
- and the first parameter injected into the <tt>last_row</tt> is the number of columns in
57
- the current grid.
58
-
59
- 12. <tt>:csv_field_separator</tt> is a new parameter for +initialize_grid+ defining the field
60
- separator in CSV files. The default separator is defined by +CSV_FIELD_SEPARATOR+ in the
61
- config file.
62
-
63
- 13. New parameter +:confirm+ for +saved_queries_panel+ which turns on or off the JS confirm
64
- dialogs when deleting saved queries.
65
-
66
- 14. Instead of the old rake task creating a table for serialized queries a generator has been
67
- added which adds a migration file to +db/migrations+.
68
-
69
- 15. Instead of using helpers +submit_grid_javascript+ and +reset_grid_javascript+ to create
70
- external Submit and Reset buttons all you have to do is add a button or any other
71
- clickable HTML element with class +wg-external-submit-button+ or +wg-external-reset-button+,
72
- and attribute +data-grid-name+ whose value is the name of the grid:
73
-
74
- <button class="wg-external-submit-button" data-grid-name="grid">Submit</button>
75
- <button class="wg-external-reset-button" data-grid-name="grid">Reset</button>
76
-
77
-
78
- The same goes for the external CSV export button, only the CSS class is
79
- +wg-external-csv-export-button+:
80
-
81
- <button class="wg-external-csv-export-button" data-grid-name="grid">Export To CSV</button>
@@ -1,6 +0,0 @@
1
- 1. +will_paginate+ is replaced by +kaminari+.
2
- 2. The detached filter API has changed. No more magical invocation of the +grid+ helper two times.
3
- First, +define_grid+ is used in the same way as +grid+, then +grid_filter+,
4
- and then <tt>render_grid(@grid)</tt> to actually output the grid table .
5
- 3. No more polluting core Ruby classes like Hash and Array with methods. All such methods
6
- are now private to the plugin.
@@ -1,21 +0,0 @@
1
- the with_paginated_resultset callback receives an ActiveRelation object, not a lambda
2
-
3
- Wice::Defaults::DATEPICKER_YEAR_RANGE added to the config to define the default year range in Datepicker (https://github.com/leikind/wice_grid/issues/61)
4
-
5
- improvement of the javascript calendar control: if the FROM field is set to a value after TO, TO is set to the value of FROM. Vice versa: if the TO field is set to a value before FROM, FROM is set to the value of TO
6
-
7
- New view helpers filter_and_order_state_as_hash(grid) and filter_state_as_hash(grid)
8
-
9
- <caption> supported
10
-
11
- support for Ruby 2.0
12
-
13
- 2 errors fixed in the Saved Queries UI ( https://github.com/leikind/wice_grid/issues/89 )
14
-
15
- bug fixed: extra_request_parameters not propagating to the pagination panel
16
-
17
- README: made it clear that Datepicker has to be installed separately
18
-
19
- README: made it clear that css is basis and that Twitter Bootstrap is supported
20
-
21
-
@@ -1,173 +0,0 @@
1
- # Default number of rows to show per page.
2
- Wice::Defaults::PER_PAGE = 20
3
-
4
- # Default order direction
5
- Wice::Defaults::ORDER_DIRECTION = 'asc'
6
-
7
- # Default name for a grid. A grid name is the basis for a lot of
8
- # names including parameter names, DOM IDs, etc
9
- # The shorter the name is the shorter the request URI will be.
10
- Wice::Defaults::GRID_NAME = 'grid'
11
-
12
- # If REUSE_LAST_COLUMN_FOR_FILTER_ICONS is true and the last column doesn't have any filter and column name, it will be used
13
- # for filter related icons (filter icon, reset icon, show/hide icon), otherwise an additional table column is added.
14
- Wice::Defaults::REUSE_LAST_COLUMN_FOR_FILTER_ICONS = true
15
-
16
- # The label of the first option of a custom dropdown list meaning 'All items'
17
- Wice::Defaults::CUSTOM_FILTER_ALL_LABEL = '--'
18
-
19
- # A list of classes for the table tag of the grid
20
- Wice::Defaults::DEFAULT_TABLE_CLASSES = ['table', 'table-bordered', 'table-striped']
21
-
22
- # Allow switching between a single and multiple selection modes in custom filters (dropdown boxes)
23
- Wice::Defaults::ALLOW_MULTIPLE_SELECTION = true
24
-
25
- # Show the upper pagination panel by default or not
26
- Wice::Defaults::SHOW_UPPER_PAGINATION_PANEL = false
27
-
28
- # Disabling CSV export by default
29
- Wice::Defaults::ENABLE_EXPORT_TO_CSV = false
30
-
31
- # Default CSV field separator
32
- Wice::Defaults::CSV_FIELD_SEPARATOR = ','
33
-
34
- # Default CSV encoding
35
- Wice::Defaults::CSV_ENCODING = nil
36
-
37
- # The strategy when to show the filter.
38
- # * <tt>:when_filtered</tt> - when the table is the result of filtering
39
- # * <tt>:always</tt> - show the filter always
40
- # * <tt>:no</tt> - never show the filter
41
- Wice::Defaults::SHOW_FILTER = :always
42
-
43
- # A boolean value specifying if a change in a filter triggers reloading of the grid.
44
- Wice::Defaults::AUTO_RELOAD = false
45
-
46
- # SQL operator used for matching strings in string filters.
47
- Wice::Defaults::STRING_MATCHING_OPERATOR = 'LIKE'
48
- # STRING_MATCHING_OPERATOR = 'ILIKE' # Use this for Postgresql case-insensitive matching.
49
-
50
- # Defining one string matching operator globally for the whole application turns is not enough
51
- # when you connect to two databases one of which is MySQL and the other is Postgresql.
52
- # If the key for an adapter is missing it will fall back to Wice::Defaults::STRING_MATCHING_OPERATOR
53
- Wice::Defaults::STRING_MATCHING_OPERATORS = {
54
- 'ActiveRecord::ConnectionAdapters::MysqlAdapter' => 'LIKE',
55
- 'ActiveRecord::ConnectionAdapters::PostgreSQLAdapter' => 'ILIKE'
56
- }
57
-
58
- # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #
59
- # Advanced Filters #
60
-
61
- # Switch of the negation checkbox in all text filters
62
- Wice::Defaults::NEGATION_IN_STRING_FILTERS = false
63
-
64
- # Each WiceGrid filter column is defined in two classes, one used for rendering the filter, the other
65
- # for generating query conditions. All these columns are in lib/wice/columns/*.rb .
66
- # File lib/wice/columns/column_processor_index.rb lists all predefined processors.
67
- # In most cases a processor is chosen automatically based on the DB column type,
68
- # for example, integer columns
69
- # can have two of processors, the default one with one input field, and a processor called "range",
70
- # with 2 input fields. In this case it is possible to specify a processor in the column definition:
71
- #
72
- # g.column filter_type: :range
73
- #
74
- # It is also possible to define you own processors:
75
- #
76
- # Wice::Defaults::ADDITIONAL_COLUMN_PROCESSORS = {
77
- # some_key_identifying_new_column_type: ['AViewColumnProcessorClass', 'ConditionsGeneratorClass'],
78
- # another_key_identifying_new_column_type: ['AnotherViewColumnProcessorClass', 'AnotherConditionsGeneratorClass']
79
- # }
80
- #
81
- # Column processor keys/names should not coincide with the existing keys/names (see lib/wice/columns/column_processor_index.rb)
82
- # the value is a 2-element array with 2 strings, the first should be a name of view processor class inherited from
83
- # Wice::Columns::ViewColumn, the second should be a name of conditions generator class inherited from
84
- # Wice::Columns::ConditionsGeneratorColumn .
85
-
86
- # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #
87
- # Showing All Records #
88
-
89
- # Enable or disable showing all records (non-paginated table)
90
- Wice::Defaults::ALLOW_SHOWING_ALL_RECORDS = true
91
-
92
- # If number of all queries is more than this value, the user will be given a warning message
93
- Wice::Defaults::START_SHOWING_WARNING_FROM = 100
94
-
95
- # Hide the "show all" link if the number of all records is more than...
96
- # Force-resets back to pagination starting from this value.
97
- # Set to nil to always show it
98
- Wice::Defaults::SHOW_ALL_ALLOWED_UP_TO = nil
99
-
100
- #
101
- # set to nil to skip the check
102
- Wice::Defaults::SWITCH_BACK_TO_PAGINATION_FROM = nil
103
-
104
- # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #
105
- # Saving Queries #
106
-
107
- # ActiveRecord model to store queries. Read the documentation for details
108
- # QUERY_STORE_MODEL = 'WiceGridSerializedQuery'
109
- Wice::Defaults::QUERY_STORE_MODEL = 'WiceGridSerializedQuery'
110
-
111
- # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #
112
- # Here go settings related to the calendar helpers #
113
-
114
- # The default style of the date and datetime helper
115
- # * <tt>:calendar</tt> - JS calendar
116
- # * <tt>:html5</tt> - HTML5 date input field
117
- # * <tt>:standard</tt> - standard Rails date and datetime helpers
118
- # * <tt>:bootstrap</tt> - Bootstrap datepicker helper
119
- Wice::Defaults::HELPER_STYLE = :calendar
120
-
121
- # Format of the datetime displayed.
122
- # If you change the format, make sure to check if +DATETIME_PARSER+ can still parse this string.
123
- Wice::Defaults::DATETIME_FORMAT = '%Y-%m-%d %H:%M'
124
-
125
- # Format of the date displayed.
126
- # If you change the format, make sure to check if +DATE_PARSER+ can still parse this string.
127
- Wice::Defaults::DATE_FORMAT = '%Y-%m-%d'
128
-
129
- # Format of the date displayed in jQuery's Datepicker
130
- # If you change the format, make sure to check if +DATE_PARSER+ can still parse this string.
131
- Wice::Defaults::DATE_FORMAT_JQUERY = 'yy-mm-dd'
132
-
133
- # Format of the date displayed in Bootstrap's Datepicker
134
- # If you change the format, make sure to check if +DATE_PARSER+ can still parse this string.
135
- Wice::Defaults::DATE_FORMAT_BOOTSTRAP = 'yyyy-mm-dd'
136
-
137
- # With Calendar helpers enabled the parameter sent is the string displayed. This lambda will be given a date string in the
138
- # format defined by +DATETIME_FORMAT+ and must generate a DateTime object.
139
- # In many cases <tt>Time.zone.parse</tt> is enough, for instance, <tt>%Y-%m-%d</tt>. If you change the format, make sure to check this code
140
- # and modify it if needed.
141
- Wice::Defaults::DATETIME_PARSER = lambda do |datetime_string|
142
- if datetime_string.blank?
143
- nil
144
- elsif Time.zone
145
- Time.zone.parse(datetime_string)
146
- else
147
- Time.parse(datetime_string)
148
- end
149
- end
150
-
151
- # The range of years to display in jQuery Datepicker.
152
- # It can always be changed dynamically with the following javascript:
153
- # $( ".hasDatepicker" ).datepicker( "option", "yearRange", "2000:2042" );
154
- Wice::Defaults::DATEPICKER_YEAR_RANGE = (from = Date.current.year - 10).to_s + ':' + (from + 15).to_s
155
-
156
- # With Calendar helpers enabled the parameter sent is the string displayed. This lambda will be given a date string in the
157
- # format defined by +DATETIME+ and must generate a Date object.
158
- # In many cases <tt>Date.parse</tt> is enough, for instance, <tt>%Y-%m-%d</tt>. If you change the format, make sure to check this code
159
- # and modify it if needed.
160
- Wice::Defaults::DATE_PARSER = lambda do |date_string|
161
- if date_string.blank?
162
- nil
163
- else
164
- begin
165
- Date.parse(date_string)
166
- rescue ArgumentError
167
- nil
168
- end
169
- end
170
- end
171
-
172
- # The name of the page method (should correspond to Kaminari.config.page_method_name)
173
- Wice::Defaults::PAGE_METHOD_NAME = :page
@@ -1 +0,0 @@
1
- integration tests are in a separate application: https://github.com/leikind/wice_grid_testbed