hobo 1.1.0 → 1.3.0.RC

Sign up to get free protection for your applications and to get access to all the features.
Files changed (278) hide show
  1. data/CHANGES.txt +238 -287
  2. data/Rakefile +14 -31
  3. data/VERSION +1 -0
  4. data/{lib/hobo → app/controllers}/dev_controller.rb +6 -6
  5. data/app/controllers/dryml_support_controller.rb +13 -0
  6. data/{rails_generators/hobo_front_controller/templates → app/views/dev}/summary.dryml +7 -10
  7. data/bin/hobo +12 -144
  8. data/config/initializers/inflections.rb +3 -0
  9. data/config/routes.rb +6 -0
  10. data/{doctest → doctests}/hobo/lifecycles.rdoctest +40 -59
  11. data/{doctest → doctests/hobo}/model.rdoctest +33 -40
  12. data/{doctest → doctests/hobo}/multi_model_forms.rdoctest +15 -19
  13. data/{doctest → doctests/hobo}/scopes.rdoctest +27 -41
  14. data/doctests/prepare_testapp.rb +8 -0
  15. data/hobo.gemspec +26 -199
  16. data/lib/generators/hobo/activation_email.rb +11 -0
  17. data/lib/generators/hobo/admin_subsite/admin_subsite_generator.rb +35 -0
  18. data/lib/generators/hobo/admin_subsite/templates/admin.css +20 -0
  19. data/lib/generators/hobo/admin_subsite/templates/admin_tag_injection.erb +10 -0
  20. data/{rails_generators/hobo_admin_site → lib/generators/hobo/admin_subsite}/templates/application.dryml +0 -0
  21. data/{rails_generators/hobo_admin_site/templates/controller.rb → lib/generators/hobo/admin_subsite/templates/controller.rb.erb} +5 -5
  22. data/lib/generators/hobo/admin_subsite/templates/users_index.dryml +7 -0
  23. data/lib/generators/hobo/assets/assets_generator.rb +18 -0
  24. data/{rails_generators/hobo → lib/generators/hobo/assets}/templates/application.css +0 -0
  25. data/lib/generators/hobo/assets/templates/application.dryml.erb +9 -0
  26. data/{rails_generators/hobo → lib/generators/hobo/assets}/templates/dryml-support.js +2 -2
  27. data/lib/generators/hobo/assets/templates/dryml_taglibs_initializer.rb +1 -0
  28. data/lib/generators/hobo/assets/templates/en_injection.yml +19 -0
  29. data/{rails_generators/hobo → lib/generators/hobo/assets}/templates/guest.rb +1 -1
  30. data/lib/generators/hobo/controller.rb +35 -0
  31. data/lib/generators/hobo/controller/controller_generator.rb +6 -0
  32. data/lib/generators/hobo/controller/templates/controller.rb.erb +7 -0
  33. data/{rails_generators/hobo_front_controller → lib/generators/hobo/front_controller}/USAGE +0 -0
  34. data/lib/generators/hobo/front_controller/front_controller_generator.rb +55 -0
  35. data/{rails_generators/hobo_front_controller/templates/controller.rb → lib/generators/hobo/front_controller/templates/controller.rb.erb} +0 -0
  36. data/{rails_generators/hobo_front_controller → lib/generators/hobo/front_controller}/templates/index.dryml +6 -12
  37. data/lib/generators/hobo/i18n/i18n_generator.rb +35 -0
  38. data/lib/generators/hobo/i18n/templates/app.de.yml +30 -0
  39. data/lib/generators/hobo/i18n/templates/app.en.yml +25 -0
  40. data/lib/generators/hobo/i18n/templates/app.es.yml +31 -0
  41. data/lib/generators/hobo/i18n/templates/app.fr.yml +26 -0
  42. data/lib/generators/hobo/i18n/templates/app.it.yml +28 -0
  43. data/lib/generators/hobo/i18n/templates/app.pt-PT.yml +25 -0
  44. data/lib/generators/hobo/i18n/templates/app.ru.yml +24 -0
  45. data/lib/generators/hobo/i18n/templates/hobo.de.yml +204 -0
  46. data/lib/generators/hobo/i18n/templates/hobo.en.yml +195 -0
  47. data/lib/generators/hobo/i18n/templates/hobo.es.yml +202 -0
  48. data/lib/generators/hobo/i18n/templates/hobo.fr.yml +195 -0
  49. data/lib/generators/hobo/i18n/templates/hobo.it.yml +202 -0
  50. data/lib/generators/hobo/i18n/templates/hobo.pt-PT.yml +196 -0
  51. data/lib/generators/hobo/i18n/templates/hobo.ru.yml +200 -0
  52. data/lib/generators/hobo/invite_only.rb +18 -0
  53. data/lib/generators/hobo/model/USAGE +19 -0
  54. data/lib/generators/hobo/model/model_generator.rb +11 -0
  55. data/{rails_generators/hobo_model/templates/model.rb → lib/generators/hobo/model/templates/model_injection.rb.erb} +0 -2
  56. data/{rails_generators/hobo_rapid → lib/generators/hobo/rapid}/USAGE +0 -0
  57. data/lib/generators/hobo/rapid/rapid_generator.rb +24 -0
  58. data/{rails_generators/hobo_rapid → lib/generators/hobo/rapid}/templates/IE7.js +0 -0
  59. data/{rails_generators/hobo_rapid → lib/generators/hobo/rapid}/templates/blank.gif +0 -0
  60. data/{rails_generators/hobo_rapid → lib/generators/hobo/rapid}/templates/hobo-rapid.css +0 -0
  61. data/{rails_generators/hobo_rapid → lib/generators/hobo/rapid}/templates/hobo-rapid.js +65 -65
  62. data/{rails_generators/hobo_rapid → lib/generators/hobo/rapid}/templates/ie7-recalc.js +21 -21
  63. data/{rails_generators/hobo_rapid → lib/generators/hobo/rapid}/templates/lowpro.js +31 -31
  64. data/{rails_generators/hobo_rapid → lib/generators/hobo/rapid}/templates/reset.css +1 -1
  65. data/lib/generators/hobo/rapid/templates/themes/clean-sidemenu/public/images/100-ACD3E6-DBE1E5-H.png +0 -0
  66. data/lib/generators/hobo/rapid/templates/themes/clean-sidemenu/public/images/100-DBE1E5-FCFEF5-H.png +0 -0
  67. data/lib/generators/hobo/rapid/templates/themes/clean-sidemenu/public/images/300-3B5F87-ACD3E6-H.png +0 -0
  68. data/{rails_generators/hobo_rapid/templates/themes/clean → lib/generators/hobo/rapid/templates/themes/clean-sidemenu}/public/images/spinner.gif +0 -0
  69. data/lib/generators/hobo/rapid/templates/themes/clean-sidemenu/public/stylesheets/clean-sidemenu.css +81 -0
  70. data/lib/generators/hobo/rapid/templates/themes/clean-sidemenu/views/clean-sidemenu.dryml +30 -0
  71. data/{rails_generators/hobo_rapid → lib/generators/hobo/rapid}/templates/themes/clean/public/images/101-3B5F87-ACD3E6.png +0 -0
  72. data/{rails_generators/hobo_rapid → lib/generators/hobo/rapid}/templates/themes/clean/public/images/30-3E547A-242E42.png +0 -0
  73. data/{rails_generators/hobo_rapid → lib/generators/hobo/rapid}/templates/themes/clean/public/images/30-DBE1E5-FCFEF5.png +0 -0
  74. data/{rails_generators/hobo_rapid → lib/generators/hobo/rapid}/templates/themes/clean/public/images/300-ACD3E6-fff.png +0 -0
  75. data/{rails_generators/hobo_rapid → lib/generators/hobo/rapid}/templates/themes/clean/public/images/50-ACD3E6-fff.png +0 -0
  76. data/{rails_generators/hobo_rapid → lib/generators/hobo/rapid}/templates/themes/clean/public/images/fieldbg.gif +0 -0
  77. data/{rails_generators/hobo_rapid → lib/generators/hobo/rapid}/templates/themes/clean/public/images/pencil.png +0 -0
  78. data/{rails_generators/hobo_rapid → lib/generators/hobo/rapid}/templates/themes/clean/public/images/small_close.png +0 -0
  79. data/lib/generators/hobo/rapid/templates/themes/clean/public/images/spinner.gif +0 -0
  80. data/{rails_generators/hobo_rapid → lib/generators/hobo/rapid}/templates/themes/clean/public/stylesheets/clean.css +16 -16
  81. data/{rails_generators/hobo_rapid → lib/generators/hobo/rapid}/templates/themes/clean/public/stylesheets/rapid-ui.css +3 -3
  82. data/{rails_generators/hobo_rapid → lib/generators/hobo/rapid}/templates/themes/clean/views/clean.dryml +1 -1
  83. data/lib/generators/hobo/resource/resource_generator.rb +23 -0
  84. data/lib/generators/hobo/routes/USAGE +9 -0
  85. data/lib/generators/hobo/routes/router.rb +115 -0
  86. data/lib/generators/hobo/routes/routes_generator.rb +40 -0
  87. data/lib/generators/hobo/routes/templates/hobo_routes.rb.erb +33 -0
  88. data/lib/generators/hobo/setup_wizard/USAGE +4 -0
  89. data/lib/generators/hobo/setup_wizard/setup_wizard_generator.rb +274 -0
  90. data/lib/generators/hobo/subsite.rb +48 -0
  91. data/lib/generators/hobo/subsite/subsite_generator.rb +16 -0
  92. data/{rails_generators/hobo_subsite → lib/generators/hobo/subsite}/templates/application.dryml +0 -0
  93. data/{rails_generators/hobo_subsite/templates/controller.rb → lib/generators/hobo/subsite/templates/controller.rb.erb} +1 -1
  94. data/lib/generators/hobo/subsite_taglib/subsite_taglib_generator.rb +16 -0
  95. data/{rails_generators/hobo_admin_site/templates/site_taglib.dryml → lib/generators/hobo/subsite_taglib/templates/taglib.dryml.erb} +9 -10
  96. data/lib/generators/hobo/taglib.rb +12 -0
  97. data/lib/generators/hobo/test_framework/test_framework_generator.rb +72 -0
  98. data/lib/generators/hobo/test_options.rb +19 -0
  99. data/{rails_generators/hobo_user_controller → lib/generators/hobo/user_controller}/templates/accept_invitation.dryml +0 -0
  100. data/lib/generators/hobo/user_controller/templates/controller.rb.erb +31 -0
  101. data/lib/generators/hobo/user_controller/user_controller_generator.rb +25 -0
  102. data/lib/generators/hobo/user_mailer/templates/activation.erb +9 -0
  103. data/{rails_generators/hobo_user_model → lib/generators/hobo/user_mailer}/templates/forgot_password.erb +2 -2
  104. data/{rails_generators/hobo_user_model → lib/generators/hobo/user_mailer}/templates/invite.erb +2 -2
  105. data/lib/generators/hobo/user_mailer/templates/mailer.rb.erb +25 -0
  106. data/lib/generators/hobo/user_mailer/user_mailer_generator.rb +33 -0
  107. data/lib/generators/hobo/user_model/USAGE +12 -0
  108. data/{rails_generators/hobo_user_model/templates/model.rb → lib/generators/hobo/user_model/templates/model_injection.rb.erb} +40 -20
  109. data/lib/generators/hobo/user_model/user_model_generator.rb +23 -0
  110. data/lib/generators/hobo/user_resource/user_resource_generator.rb +27 -0
  111. data/lib/hobo.rb +29 -129
  112. data/lib/hobo/controller.rb +37 -47
  113. data/lib/hobo/controller/authentication_support.rb +109 -0
  114. data/lib/hobo/{model_controller.rb → controller/model.rb} +71 -79
  115. data/lib/hobo/{user_controller.rb → controller/user.rb} +59 -49
  116. data/lib/hobo/engine.rb +80 -0
  117. data/lib/hobo/extensions/action_controller/hobo_methods.rb +44 -0
  118. data/lib/hobo/extensions/action_mailer/helper.rb +38 -0
  119. data/lib/{action_view_extensions/helpers → hobo/extensions/action_view}/tag_helper.rb +5 -2
  120. data/lib/hobo/extensions/action_view/translation_helper.rb +25 -0
  121. data/lib/hobo/extensions/active_model/name.rb +16 -0
  122. data/lib/hobo/extensions/active_model/translation.rb +35 -0
  123. data/lib/{active_record/association_collection.rb → hobo/extensions/active_record/associations/collection.rb} +8 -17
  124. data/lib/{active_record/association_proxy.rb → hobo/extensions/active_record/associations/proxy.rb} +6 -7
  125. data/lib/hobo/extensions/active_record/associations/reflection.rb +23 -0
  126. data/lib/hobo/extensions/active_record/associations/scope.rb +35 -0
  127. data/lib/hobo/extensions/active_record/hobo_methods.rb +11 -0
  128. data/lib/hobo/extensions/active_record/permissions.rb +159 -0
  129. data/lib/hobo/extensions/active_record/relation_with_origin.rb +28 -0
  130. data/lib/hobo/extensions/array.rb +27 -0
  131. data/lib/hobo/extensions/enumerable.rb +12 -0
  132. data/lib/hobo/extensions/i18n.rb +17 -0
  133. data/lib/hobo/{hobo_helper.rb → helper.rb} +58 -31
  134. data/lib/hobo/helper/translations.rb +54 -0
  135. data/lib/hobo/helper/translations/normalizer.rb +39 -0
  136. data/lib/hobo/model.rb +61 -95
  137. data/lib/hobo/model/accessible_associations.rb +178 -0
  138. data/lib/hobo/{find_for.rb → model/find_for.rb} +17 -17
  139. data/lib/hobo/model/guest.rb +25 -0
  140. data/lib/hobo/model/include_in_save.rb +55 -0
  141. data/lib/hobo/model/lifecycles.rb +119 -0
  142. data/lib/hobo/model/lifecycles/actions.rb +146 -0
  143. data/lib/hobo/model/lifecycles/creator.rb +74 -0
  144. data/lib/hobo/model/lifecycles/lifecycle.rb +243 -0
  145. data/lib/hobo/model/lifecycles/state.rb +22 -0
  146. data/lib/hobo/model/lifecycles/transition.rb +70 -0
  147. data/lib/hobo/model/permissions.rb +448 -0
  148. data/lib/hobo/model/scopes.rb +38 -0
  149. data/lib/hobo/model/scopes/apply_scopes.rb +21 -0
  150. data/lib/hobo/model/scopes/automatic_scopes.rb +428 -0
  151. data/lib/hobo/model/user_base.rb +184 -0
  152. data/lib/hobo/model/view_hints.rb +123 -0
  153. data/{rapid_generators → lib/hobo/rapid/generators}/rapid/cards.dryml.erb +2 -2
  154. data/{rapid_generators → lib/hobo/rapid/generators}/rapid/forms.dryml.erb +3 -3
  155. data/{rapid_generators → lib/hobo/rapid/generators}/rapid/pages.dryml.erb +38 -51
  156. data/lib/hobo/rapid/helper.rb +166 -0
  157. data/{taglibs → lib/hobo/rapid/taglibs}/rapid.dryml +6 -5
  158. data/{taglibs → lib/hobo/rapid/taglibs}/rapid_core.dryml +286 -118
  159. data/{taglibs → lib/hobo/rapid/taglibs}/rapid_document_tags.dryml +2 -2
  160. data/{taglibs → lib/hobo/rapid/taglibs}/rapid_editing.dryml +45 -45
  161. data/{taglibs → lib/hobo/rapid/taglibs}/rapid_forms.dryml +190 -158
  162. data/{taglibs → lib/hobo/rapid/taglibs}/rapid_generics.dryml +12 -9
  163. data/lib/hobo/rapid/taglibs/rapid_i18n.dryml +107 -0
  164. data/{taglibs → lib/hobo/rapid/taglibs}/rapid_lifecycles.dryml +7 -7
  165. data/{taglibs → lib/hobo/rapid/taglibs}/rapid_navigation.dryml +15 -15
  166. data/{taglibs → lib/hobo/rapid/taglibs}/rapid_pages.dryml +37 -36
  167. data/{taglibs → lib/hobo/rapid/taglibs}/rapid_plus.dryml +107 -43
  168. data/{taglibs → lib/hobo/rapid/taglibs}/rapid_summary.dryml +28 -57
  169. data/{taglibs → lib/hobo/rapid/taglibs}/rapid_support.dryml +9 -9
  170. data/{taglibs → lib/hobo/rapid/taglibs}/rapid_user_pages.dryml +41 -40
  171. data/lib/hobo/routes.rb +31 -0
  172. data/{doctest → test/doctest}/hobo/hobo_helper.rdoctest +11 -11
  173. data/test/irt/generators/admin_subsite.irt +27 -0
  174. data/test/irt/generators/assets.irt +16 -0
  175. data/test/irt/generators/controller.irt +6 -0
  176. data/test/irt/generators/front_controller.irt +30 -0
  177. data/test/irt/generators/helper.rb +31 -0
  178. data/test/irt/generators/model.irt +28 -0
  179. data/test/irt/generators/partials/_account_user_model_tests.rb +21 -0
  180. data/test/irt/generators/partials/_accounts_users_controller_tests.rb +15 -0
  181. data/test/irt/generators/partials/_default_user_model_tests.rb +21 -0
  182. data/test/irt/generators/partials/_default_users_controller_tests.rb +16 -0
  183. data/test/irt/generators/partials/_house_controller_tests.rb +15 -0
  184. data/test/irt/generators/partials/_house_model_tests.rb +18 -0
  185. data/test/irt/generators/partials/_subsite_taglib_admin.rb +4 -0
  186. data/test/irt/generators/partials/_subsite_taglib_admin_invite_only.rb +3 -0
  187. data/test/irt/generators/partials/_subsite_taglib_noopt.rb +4 -0
  188. data/test/irt/generators/partials/_subsite_taglib_variables.rb +27 -0
  189. data/test/irt/generators/partials/_user_mailer_tests.rb +19 -0
  190. data/test/irt/generators/rapid.irt +29 -0
  191. data/test/irt/generators/resource.irt +8 -0
  192. data/test/irt/generators/subsite.irt +52 -0
  193. data/test/irt/generators/subsite_taglib.irt +23 -0
  194. data/test/irt/generators/test_framework.irt +62 -0
  195. data/test/irt/generators/user_controller.irt +10 -0
  196. data/test/irt/generators/user_mailer.irt +20 -0
  197. data/test/irt/generators/user_model.irt +10 -0
  198. data/test/irt/generators/user_resource.irt +14 -0
  199. data/test/irt/readme.txt +7 -0
  200. data/test/permissions/models/models.rb +27 -24
  201. data/test/permissions/test_permissions.rb +104 -104
  202. metadata +239 -217
  203. data/lib/active_record/association_reflection.rb +0 -20
  204. data/lib/active_record/viewhints_validations_interceptor.rb +0 -9
  205. data/lib/hobo/accessible_associations.rb +0 -183
  206. data/lib/hobo/authentication_support.rb +0 -131
  207. data/lib/hobo/generator.rb +0 -26
  208. data/lib/hobo/guest.rb +0 -25
  209. data/lib/hobo/include_in_save.rb +0 -55
  210. data/lib/hobo/lifecycles.rb +0 -137
  211. data/lib/hobo/lifecycles/actions.rb +0 -142
  212. data/lib/hobo/lifecycles/creator.rb +0 -72
  213. data/lib/hobo/lifecycles/lifecycle.rb +0 -249
  214. data/lib/hobo/lifecycles/state.rb +0 -22
  215. data/lib/hobo/lifecycles/transition.rb +0 -70
  216. data/lib/hobo/model_router.rb +0 -290
  217. data/lib/hobo/permissions.rb +0 -451
  218. data/lib/hobo/permissions/associations.rb +0 -175
  219. data/lib/hobo/rapid_helper.rb +0 -157
  220. data/lib/hobo/scopes.rb +0 -43
  221. data/lib/hobo/scopes/apply_scopes.rb +0 -23
  222. data/lib/hobo/scopes/association_proxy_extensions.rb +0 -62
  223. data/lib/hobo/scopes/automatic_scopes.rb +0 -421
  224. data/lib/hobo/scopes/named_scope_extensions.rb +0 -39
  225. data/lib/hobo/tasks/rails.rb +0 -4
  226. data/lib/hobo/translations.rb +0 -93
  227. data/lib/hobo/undefined_access_error.rb +0 -5
  228. data/lib/hobo/user.rb +0 -182
  229. data/lib/hobo/view_hints.rb +0 -115
  230. data/rails/init.rb +0 -10
  231. data/rails_generators/hobo/USAGE +0 -4
  232. data/rails_generators/hobo/hobo_generator.rb +0 -53
  233. data/rails_generators/hobo/templates/application.dryml +0 -1
  234. data/rails_generators/hobo/templates/initializer.rb +0 -2
  235. data/rails_generators/hobo_admin_site/USAGE +0 -16
  236. data/rails_generators/hobo_admin_site/hobo_admin_site_generator.rb +0 -45
  237. data/rails_generators/hobo_admin_site/templates/admin.css +0 -2
  238. data/rails_generators/hobo_admin_site/templates/users_index.dryml +0 -5
  239. data/rails_generators/hobo_front_controller/hobo_front_controller_generator.rb +0 -95
  240. data/rails_generators/hobo_front_controller/templates/functional_test.rb +0 -8
  241. data/rails_generators/hobo_front_controller/templates/helper.rb +0 -2
  242. data/rails_generators/hobo_model/USAGE +0 -25
  243. data/rails_generators/hobo_model/hobo_model_generator.rb +0 -43
  244. data/rails_generators/hobo_model/templates/fixtures.yml +0 -6
  245. data/rails_generators/hobo_model/templates/hints.rb +0 -7
  246. data/rails_generators/hobo_model/templates/unit_test.rb +0 -8
  247. data/rails_generators/hobo_model_controller/USAGE +0 -30
  248. data/rails_generators/hobo_model_controller/hobo_model_controller_generator.rb +0 -46
  249. data/rails_generators/hobo_model_controller/templates/controller.rb +0 -7
  250. data/rails_generators/hobo_model_controller/templates/functional_test.rb +0 -8
  251. data/rails_generators/hobo_model_controller/templates/helper.rb +0 -2
  252. data/rails_generators/hobo_model_resource/USAGE +0 -38
  253. data/rails_generators/hobo_model_resource/hobo_model_resource_generator.rb +0 -73
  254. data/rails_generators/hobo_model_resource/templates/controller.rb +0 -7
  255. data/rails_generators/hobo_model_resource/templates/functional_test.rb +0 -8
  256. data/rails_generators/hobo_model_resource/templates/helper.rb +0 -2
  257. data/rails_generators/hobo_rapid/hobo_rapid_generator.rb +0 -94
  258. data/rails_generators/hobo_subsite/USAGE +0 -16
  259. data/rails_generators/hobo_subsite/hobo_subsite_generator.rb +0 -73
  260. data/rails_generators/hobo_subsite/templates/site_taglib.dryml +0 -13
  261. data/rails_generators/hobo_user_controller/USAGE +0 -34
  262. data/rails_generators/hobo_user_controller/hobo_user_controller_generator.rb +0 -65
  263. data/rails_generators/hobo_user_controller/templates/controller.rb +0 -29
  264. data/rails_generators/hobo_user_controller/templates/functional_test.rb +0 -8
  265. data/rails_generators/hobo_user_controller/templates/helper.rb +0 -2
  266. data/rails_generators/hobo_user_model/USAGE +0 -16
  267. data/rails_generators/hobo_user_model/hobo_user_model_generator.rb +0 -46
  268. data/rails_generators/hobo_user_model/templates/fixtures.yml +0 -19
  269. data/rails_generators/hobo_user_model/templates/mailer.rb +0 -29
  270. data/rails_generators/hobo_user_model/templates/unit_test.rb +0 -8
  271. data/script/destroy +0 -14
  272. data/script/generate +0 -14
  273. data/taglibs/rapid_translations.dryml +0 -36
  274. data/tasks/environments.rake +0 -19
  275. data/tasks/hobo_tasks.rake +0 -58
  276. data/test/generators/test_generator_helper.rb +0 -29
  277. data/test/generators/test_helper.rb +0 -1
  278. data/test/generators/test_hobo_model_controller_generator.rb +0 -56
data/CHANGES.txt CHANGED
@@ -14,44 +14,12 @@ likely to cause conflicts, so it is highly recommended that you have
14
14
  your code backed up and in a change control system such as git or
15
15
  subversion.
16
16
 
17
- === Hobo 1.1 ===
18
-
19
- The biggest change to Hobo 1.1 is that DRYML has been split into it's
20
- own gem and may now be used independently of Hobo or Rails:
21
-
22
- Dryml.render("<html><%= this %>></html>", {:this => something})
23
-
24
- Automatic scopes has gained any\_of\_:
25
-
26
- Person.any_of_friends(Jack, Jill)
27
-
28
- The default password validation has been changed to 6 characters, one
29
- of which must not be lowercase. Luckily, we also made the password
30
- validation easier to change. See
31
- [Bug #638](https://hobo.lighthouseapp.com/projects/8324/tickets/638) for
32
- more information.
33
-
34
- The `input-many`, `name-one` and `sortable-collection` tags have been
35
- updated. See the documentation for more details.
36
-
37
- New tags have been added: `sortable-input-many`, `login-form`.
38
-
39
- Some css class names have been changed. Hobo 1.0 creates class names
40
- with the '[]' characters, which is technically illegal, although
41
- supported by all browsers. However, this does cause problems with
42
- some third party libraries, such as JQuery.
43
-
44
- All code changes may viewed on the [github
45
- log](https://github.com/tablatom/hobo/compare/v1.0.2...v1.0.3)
46
-
47
-
48
17
  === Hobo 1.0.3 ===
49
18
 
50
- This is a security release. All applications that use the reset
51
- password functionality or are on versions of Rails prior to version
52
- 2.3.4 should upgrade.
19
+ This is a security release. All applications that use the reset
20
+ password functionality should upgrade.
53
21
 
54
- To patch the reset password vulnerability, two changes have been made.
22
+ To patch the vulnerability, two changes have been made.
55
23
 
56
24
  First of all, the lifecycle key hash mechanism has been changed.
57
25
  Existing lifecycle keys will become invalid after you upgrade.
@@ -60,28 +28,11 @@ problem for most applications.
60
28
 
61
29
  Secondly, lifecycle keys are now cleared on every transition to avoid
62
30
  replay vulnerabilities. This new behaviour may be avoided by added
63
- the `:keep_key => true` option to a transition.
31
+ the `:dont_clear_key => true` option to a transition.
64
32
 
65
33
  More information about the vulnerability can be viewed on the [bug
66
34
  report](https://hobo.lighthouseapp.com/projects/8324/tickets/666-user-model-secure-links-have-low-security).
67
35
 
68
- Other changes:
69
-
70
- The text input tag (`<textarea>`) has a security hole with versions of
71
- Rails prior to 2.3.4. This release makes these old versions of Rails
72
- safe again, although it is highly recommended that you upgrade to
73
- Rails 2.3.11 because of other security vulnerabilities on earlier versions
74
- of Rails.
75
-
76
- The "include" automatic scope has been aliased to "includes" to
77
- increase future compatibility with Rails 3. Future versions of Hobo
78
- will remove support for "include".
79
-
80
- This release increases compatibility with Ruby v1.9.2.
81
-
82
- Hobo 1.0.2 introduced a major problem with chained scopes. This has
83
- been fixed.
84
-
85
36
  All code changes may viewed on the [github
86
37
  log](https://github.com/tablatom/hobo/compare/v1.0.2...v1.0.3)
87
38
 
@@ -113,7 +64,7 @@ log](http://github.com/tablatom/hobo/tree/v1.0.1) for more details.
113
64
 
114
65
  === Hobo 1.0.0 ===
115
66
 
116
- Drumm-roll! Trumpets! Fanfare!
67
+ Drumm-roll! Trumpets! Fanfare!
117
68
 
118
69
  We did it : )
119
70
 
@@ -146,7 +97,7 @@ callbacks.
146
97
 
147
98
  `x._?.to_s` now returns nil rather than a blank string
148
99
 
149
- [#592](https://hobo.lighthouseapp.com/projects/8324/tickets/592):
100
+ [#592](https://hobo.lighthouseapp.com/projects/8324/tickets/592):
150
101
 
151
102
  If you previously had a snippet such as this:
152
103
 
@@ -365,7 +316,7 @@ Major enhancements:
365
316
 
366
317
  - [Bug 464](https://hobo.lighthouseapp.com/projects/8324/tickets/464-transition-buttons-should-have-a-option-to-link-to-forms-instead-for-transitions-that-take-parameters)
367
318
  The transition-buttons tag now generates buttons that link to the
368
- transition page for transitions that require parameters.
319
+ transition page for transitions that require parameters.
369
320
 
370
321
  - [Bug 532](https://hobo.lighthouseapp.com/projects/8324/tickets/532)
371
322
  In previous versions, you had to add the new HTML5 tags to
@@ -375,7 +326,7 @@ Major enhancements:
375
326
 
376
327
  Major bug fixes:
377
328
 
378
- - [Bug 530](https://hobo.lighthouseapp.com/projects/8324-hobo/tickets/530)
329
+ - [Bug 530](https://hobo.lighthouseapp.com/projects/8324-hobo/tickets/530)
379
330
  is a critical bug for invite-only projects. To incorporate the
380
331
  fix, you must rerun your generators or follow the instructions in
381
332
  the [commit](http://github.com/tablatom/hobo/commit/17247eac8a78f8b36dcc3b9684a3e4ec8da32a23)
@@ -438,7 +389,7 @@ Minor Enhancements:
438
389
  - non-required fields that are marked :unique will now allow nil
439
390
  values.
440
391
 
441
- Minor Bug Fixes
392
+ Minor Bug Fixes
442
393
 
443
394
  - [Bug 540](https://hobo.lighthouseapp.com/projects/8324-hobo/tickets/540)
444
395
  Hobo::Permissions::Associations::HasManyThroughAssociations#create!
@@ -533,15 +484,15 @@ Minor enhancements:
533
484
  validations
534
485
 
535
486
  - [Bug 415](https://hobo.lighthouseapp.com/projects/8324/tickets/415): Visiting sign-up page when logged in gives permission
536
- denied
487
+ denied
537
488
 
538
- - Rapid navigation - added name attribute to `<nav-item>` to make it easier to select the current nav item in some cases (e.g. dynamic nav item text)
489
+ - Rapid navigation - added name attribute to `<nav-item>` to make it easier to select the current nav item in some cases (e.g. dynamic nav item text)
539
490
 
540
491
  - Rapid forms -- added url attribute to `<remote-method-button>`
541
492
 
542
- - HoboSupport - `Enumerable.build_hash` can now be used without a block to build a hash directly from a list of pairs
493
+ - HoboSupport - `Enumerable.build_hash` can now be used without a block to build a hash directly from a list of pairs
494
+
543
495
 
544
-
545
496
  === Hobo 0.8.7 ===
546
497
 
547
498
  I forgot to refresh the Manifest, so this is a brown paper bag release.
@@ -592,9 +543,9 @@ shows the remaining tickets scheduled for 1.0
592
543
  New permission system
593
544
 
594
545
  Various fixes
595
-
546
+
596
547
  Now runs permission checks *before* callbacks, not after
597
-
548
+
598
549
  In the switch to the new permissions system, we changed to running them after all callbacks. This turned
599
550
  out to be wrong. Permissions should only be about what the user tried to change, not other changes
600
551
  triggered by application logic
@@ -607,7 +558,7 @@ Updated hobo command and hobo generator to use the new config.gem style for apps
607
558
  does this automatically
608
559
 
609
560
  Lifecycles fix -- state_name would throw a nil error if there was no state (not returns nil)
610
-
561
+
611
562
  This was causing the :new_key option to fail on a create step
612
563
 
613
564
  Fixes to problems with live-search introduced with the Rails 2.2 upgrade
@@ -626,38 +577,38 @@ BREAKING: New permission system
626
577
  This is the major feature of this release. The big change is that we now use the dirty tracking features
627
578
  of Active Record for update permission, rather than passing that weird 'new' object. We also use the
628
579
  acting_user method throughout, rather than passing the user as an argument.
629
-
580
+
630
581
  See the docs online: http://cookbook.hobocentral.net/manual/permissions
631
582
 
632
583
 
633
584
  Removing special Hobo semantics for association.new which was breaking the Rails API, and added
634
585
  #new_candidate
635
-
586
+
636
587
  association.new_candidate instantiates the record but does not add it to the collection.
637
-
588
+
638
589
  Fix to linkable? helpers when context responds to origin but is not a collection
639
-
590
+
640
591
  POSSIBLY BREAKING: Improved multi-model form support
641
592
 
642
593
  has_many and belongs_to now support the :accessible => true option, which allows mass-asssignment of
643
594
  attributes to work with sub-hashes that correspond to associations. Docs to follow!
644
-
595
+
645
596
  BREAKING: Lifecycle improvements
646
597
 
647
598
  The lifecycle DSL has been tidied up. Various changes to the semantics.
648
-
599
+
649
600
  Lifecycle validations are now supported (e.g. validates_presence_of :foo, :on => :my_transition)
650
-
601
+
651
602
  Also small improvements to the controller layer lifecycles support
652
-
603
+
653
604
  See: http://cookbook.hobocentral.net/manual/lifecycles
654
-
605
+
655
606
  New ViewHints mechanism
656
607
 
657
608
  Classes in app/viewhints are a place to declare things about your models that are view layer concerns.
658
609
  For example, you can give the presenation name for a field if this should be different from the back-end
659
610
  name. You can give "field help" for each field. You can specify which collections are the "children" of a
660
- model from a UI point of view.
611
+ model from a UI point of view.
661
612
 
662
613
  Rapid <select-many> -- removed use of <a-or-an> as it gets some words wrong (e.g. "an user")
663
614
 
@@ -690,7 +641,7 @@ Rapid <input-many> -- added support for disable attribute
690
641
  Fix to <hobo-rapid-javascripts> when forgery protection is disabled
691
642
 
692
643
  User model - validates_presence_of password confirmation, in addition to validates_confirmation_of
693
-
644
+
694
645
  Fixes #310 - thanks to Jaub Suder
695
646
 
696
647
  BREAKING: Rapid page generators -- Renamed 'primary-content' parameter in <show-page> to 'description'
@@ -700,7 +651,7 @@ User controller -- made account action follow the auto_actions declaration
700
651
  Changed hobo->hobofields->hobosupport gem dependency rules to require the exact version
701
652
 
702
653
  User model generator -- Hobo apps now have people log in with their email address by default, and the user
703
- has a 'name' field rather than 'username'.
654
+ has a 'name' field rather than 'username'.
704
655
 
705
656
  Note this will not effect existing apps
706
657
 
@@ -752,7 +703,7 @@ Rapid JavaScripts -- adding custom events to <select-many>
752
703
  Rapid JavaScript -- added option to specify { message: false } on ajaxRequest to disable the spinner
753
704
 
754
705
  Model Controller -- fix to re_render_form when in a subsite
755
-
706
+
756
707
  hobo_model_controller generator -- adding support for generating subsite controllers
757
708
 
758
709
  HoboSupport -- adding remove and remove_all (plus mutating versions with a !) to string - better name for
@@ -766,9 +717,9 @@ Model controller -- fix to index actions on non-paginated formats (was passing w
766
717
  regular find)
767
718
 
768
719
  Migration generator -- adding option: --force-drop-yes-i-really-mean-it-i-know-what-i-am-doing-dammit
769
-
720
+
770
721
  Not really, it's actually just --force-drop
771
-
722
+
772
723
  With this option it won't ask you "drop or rename?" it will just drop
773
724
 
774
725
  HoboFields -- fix to EnumString when values are not valid contant names
@@ -781,7 +732,7 @@ attributes)
781
732
  Rapid -- adding support for 'disabled' attribute to <select-one>
782
733
 
783
734
  Rapid -- added a 'no-edit' attribute to <input> and <field-list>. Gives control over how
784
- non-editable fields are handled.
735
+ non-editable fields are handled.
785
736
 
786
737
  - view: render the current value using the `<view>` tag
787
738
  - disable: render the input as normal, but add HTML's `disabled` attribute
@@ -810,7 +761,7 @@ Rapid -- tweak to behaviour of <name>. Is now more sensible when called on a non
810
761
 
811
762
  Re-organisation and documentation for Rapid Document Tags
812
763
 
813
- BREAKING: Deleted <panel> tag.
764
+ BREAKING: Deleted <panel> tag.
814
765
 
815
766
  Models - fix to overriding of not_found and permission_denied in applicatin controller. Also fix to bug in
816
767
  permission denied
@@ -822,15 +773,15 @@ DRYML -- allow - instead of _ in repeat/if/unless, when not code attribute
822
773
  HoboSupport - re-org of the file layout
823
774
 
824
775
  HoboFields -- new rich type :serialized (HoboFields::SerializedObject)
825
-
776
+
826
777
  example usage: foo :serialized, :class => Array
827
-
778
+
828
779
  Also some fixes to wrapping of rich types that were needed
829
780
 
830
781
  HoboFields -- adding 'declared' callback to rich types. Called whenever a field of that type is declared
831
782
 
832
783
  See HoboFields::HtmlString for an example
833
-
784
+
834
785
  HoboFields -- new types RawHtmlString and RawMarkdownString that are not sanitized. Plus fix to sanitizing
835
786
 
836
787
  DRYML -- new DrymlDoc facility. Starting point for a roll-your-own documentation generator
@@ -875,9 +826,9 @@ Rapid - adding polymorphic <collection-input> tag as a place to define the kind
875
826
  collections of a given model
876
827
 
877
828
  Rapid javascripts -- making non-ajax HTML Editor pluggable
878
-
829
+
879
830
  Plugins assign a function to Hobo.makeHtmlEditor. See hoboyui plugin for an example (github.com/tablatom)
880
-
831
+
881
832
  Adding XSS protection to HoboFields rich types (Sanitizing)
882
833
 
883
834
  Rapid -- new tag <check-many>. Add remove items to a has_many :through by checking the ones you want. Obviously
@@ -903,7 +854,7 @@ this)
903
854
  User pages:
904
855
 
905
856
  Added editing of email address to user's account page
906
-
857
+
907
858
  Got rid of <change-password-form>
908
859
 
909
860
  Rapid plus -- added <preview-with-more> and <gravatar> tags
@@ -1007,7 +958,7 @@ Rapid - fix to <remote-method-button> -- the confirm attribute was incorrectly c
1007
958
 
1008
959
  Rapid -- <select-menu> now supports an array of label/value pairs, like the options_for_select helper
1009
960
 
1010
- Model Controller -- Now remembers the previous page path in the session and uses this to fix a problem with
961
+ Model Controller -- Now remembers the previous page path in the session and uses this to fix a problem with
1011
962
  <after-submit stay-here/> (occured after a validation error)
1012
963
 
1013
964
  New tag <input-all> for situations where you want input for every item in an existing collection (without the +/- buttons that
@@ -1108,7 +1059,7 @@ Hobo users now have an #account_active? method. Used in two places:
1108
1059
 
1109
1060
  - This method rather than the return value of the block passed to hobo_login, is now used to figure out if an
1110
1061
  account is active when logging in.
1111
-
1062
+
1112
1063
  - After signing up, also log the user in iff account_active? is true. This is useful if there is a second step to
1113
1064
  signing up, such as email activation
1114
1065
 
@@ -1133,13 +1084,13 @@ Fix to bug where validations were not happening during lifecycle creates/transit
1133
1084
  Migration generator -- fixed bug with validation of filename input by user
1134
1085
 
1135
1086
  New lifecycle semantics.
1136
-
1087
+
1137
1088
  Lifecycle create and transition actions (blocks) now run *after* the create or transition, and not at all
1138
1089
  if there are validation errors.
1139
-
1090
+
1140
1091
  To create a key, you can no longer call lifecycle.generate_key in the action, as the key timestamp will not
1141
1092
  be saved (record has already been saved)
1142
-
1093
+
1143
1094
  Instead pass :new_key => true as an option to the create or transition, and access it in the block using
1144
1095
  lifecycle.key
1145
1096
 
@@ -1156,7 +1107,7 @@ Fix to bug where validations were not happening during lifecycle creates/transit
1156
1107
 
1157
1108
  New user model method account_active? Default implementation is state == 'active' but this method is intended
1158
1109
  as a hook that can be overridden as required.
1159
-
1110
+
1160
1111
  On signup, the user is only logged in if user has #account_active?
1161
1112
 
1162
1113
  Rapid generators -- fixes for form cancel links
@@ -1173,9 +1124,9 @@ Fix to bug where validations were not happening during lifecycle creates/transit
1173
1124
 
1174
1125
  Rapid generators -- fix for show-page generator, when the 'owner' association that goes with the page's
1175
1126
  collection cannot be found
1176
-
1177
-
1178
-
1127
+
1128
+
1129
+
1179
1130
  === Hobo 0.8 ===
1180
1131
 
1181
1132
  (There's a million changes in this release -- most of the fixes are *not* mentioned)
@@ -1187,12 +1138,12 @@ Hobo can now be used entirely from the gem, and need not be installed in vendor/
1187
1138
  hobo command
1188
1139
 
1189
1140
  Now shows you what it's doing
1190
-
1141
+
1191
1142
  Renamed --create-dbs to --db-create to match the name of the rake task
1192
-
1143
+
1193
1144
 
1194
1145
  DRYML
1195
-
1146
+
1196
1147
  DRYML generators
1197
1148
 
1198
1149
  Hobo now provides a facility to generate DRYML tags on the fly using normal erb based templates. (the generators run
@@ -1204,18 +1155,18 @@ DRYML
1204
1155
 
1205
1156
  <def tag="page" extend-with="app">
1206
1157
  <page-without-app>
1207
-
1158
+
1208
1159
  we now have
1209
-
1160
+
1210
1161
  <extend tag="page">
1211
1162
  <old-page>
1212
-
1163
+
1213
1164
  Also works with polymorphic tags, e.g. <extend tag="card" for="Product">
1214
-
1165
+
1215
1166
  Polymorphic tags: new mechanism for defining polymorphic tags.
1216
-
1167
+
1217
1168
  <def tag="foo" polymorphic> ... "base" definition here ... </def>
1218
-
1169
+
1219
1170
  <def tag="foo" for="Product">
1220
1171
  ... in here you can call <foo> and it's not a recursive call
1221
1172
  but a call to the base definition ...
@@ -1223,30 +1174,30 @@ DRYML
1223
1174
 
1224
1175
  "without" attributes: <page without-live-search> is a shorthand for <page><live-search: replace/>. Doesn't sound like
1225
1176
  much but it's great. You'll like it.
1226
-
1177
+
1227
1178
  <set> now respects the 'if' attribute
1228
1179
 
1229
1180
  Using 'with' and 'field' on a parameter works more sensibly now -- DRYML will never merge with attributes and field
1230
1181
  attributes
1231
-
1182
+
1232
1183
  New semantics for scoped variables.
1233
1184
 
1234
1185
  Scoped variables must be declared at the start of the scope. Assignments and reads always go back to the scope where
1235
1186
  that variable was declared.
1236
-
1187
+
1237
1188
  Fix to <foo:> </foo:> (i.e. one or more whitespace chars) being ignored
1238
1189
 
1239
1190
  Removed feature from add_classes helper that was converting all _ to -. Closes #11
1240
-
1191
+
1241
1192
  param='x' now adds class='x' to the output. Closes #22. Doesn't add a css class if the param name is the same as the tag
1242
1193
  name, or is 'default'
1243
-
1194
+
1244
1195
  Fixes to errors when reporting syntax error : )
1245
-
1196
+
1246
1197
  Now raises an error rather than outputting nonsensical name attributes on form inputs
1247
-
1198
+
1248
1199
  Removed incorrect leading '/' on template paths (e.g. in logs, stack traces)
1249
-
1200
+
1250
1201
  Fix -- was accepting close tags that are a prefix of the start tags, e.g. <foo>...</fo>
1251
1202
 
1252
1203
 
@@ -1261,108 +1212,108 @@ Rapid tag Library
1261
1212
  The standard <page> tag now has just a <content:> parameter. Specific pages might add <content-header:> or
1262
1213
  <content-body:> themselves.
1263
1214
 
1264
- As a result of the switch to generators and the simplified page-layout stuff, there's quite a lot of change in Rapid.
1215
+ As a result of the switch to generators and the simplified page-layout stuff, there's quite a lot of change in Rapid.
1265
1216
 
1266
1217
  <section with-flash-messages> will include the flash messages at the top of the section *unless* they are rendered by a
1267
1218
  sub-section or have been rendered already
1268
1219
 
1269
1220
  Update forms with not render if the user doesn't have permission
1270
-
1221
+
1271
1222
  Removed <nav> tag
1272
-
1223
+
1273
1224
  Changed <a-or-an> to give you 'a hotel' not 'an hotel'
1274
1225
 
1275
1226
  <card> now always renders a link if there is a show action. Closes #54
1276
-
1227
+
1277
1228
  <collection> is no longer a polymorphic tag. Drag and drop support moved into separate tag: <sortable-collection>.
1278
-
1229
+
1279
1230
  Got rid of <collection-preview>
1280
1231
 
1281
1232
  <stylesheet> tag now calls Rails helper stylesheet_link_tag name to construct the link tag. This change was made so that the
1282
1233
  css files are automatically cached using the timestamp mechanism, e.g. application.css?1218209632. The media attribute is now
1283
1234
  'screen' instead of 'all' by default
1284
-
1235
+
1285
1236
  Wrapped the output of <count> in a <span class='count'>
1286
1237
 
1287
1238
  Renamed <name-for-collection> to <collection-name> and added a dasherize parameter
1288
-
1239
+
1289
1240
  <ul> is gone from Rapid and is just a static tag again. Just do <ul><li repeat>
1290
-
1241
+
1291
1242
  New version of IE7.js (http://ie7-js.googlecode.com/svn/trunk/lib/IE7.js rev 29)
1292
-
1243
+
1293
1244
  <with-fields> (and hence <field-list>) now display fields in the order declared in the model
1294
-
1245
+
1295
1246
  <card> and <show-page> no longer include the created_at timestamp
1296
1247
 
1297
1248
  Added labels and titleize attributes to <editor for='HoboFields::EnumString'>
1298
-
1249
+
1299
1250
  Added force (no edit check) attribute to <input>
1300
-
1251
+
1301
1252
  <hidden-form-field> (formerly <hidden-field>) is gone
1302
-
1253
+
1303
1254
  Fix to default label on non-ajax <remote-method-button>
1304
-
1255
+
1305
1256
  Now outputs <span> not <div> to wrap field-with-errors (<div> is invalid)
1306
1257
 
1307
1258
  Added <transition-buttons> and <transition-button> (lifecycles)
1308
1259
 
1309
1260
  Added <dev-user-changer> when in development mode if there is a user model
1310
-
1261
+
1311
1262
  <with-fields> now skips deleted_at by default
1312
-
1263
+
1313
1264
  <name> now properly respects :name => true (in the model)
1314
-
1265
+
1315
1266
  Optimised <count> so that it doesn't hit the DB for already loaded collections
1316
-
1267
+
1317
1268
  Removed <heading> and <sub-heading> and <article>
1318
-
1269
+
1319
1270
  Allowing <def tag=input for=MyModel> to customise inputs for any belongs_to :my_model
1320
-
1271
+
1321
1272
  Changed 'There are no whatsits' message to 'No whatsits to display'
1322
-
1273
+
1323
1274
  Moved to nicedit (nicedit.com) for HTML inputs and editors. Dropped all TinyMCE stuff. It turns out that this change too will
1324
1275
  be temporary, as nicedit is a bit lacking. It seems that the YUI Editor will be the editor of choice, but we'll support it
1325
1276
  with a plugin, rather than make it part of core Hobo.
1326
-
1277
+
1327
1278
  Added default empty message to <table-plus>
1328
-
1279
+
1329
1280
  Rename <belongs-to-menu-editor> to <select-one-editor> and improvements. Removed "View" link.
1330
-
1281
+
1331
1282
  Made <view> fall back on to_s rather than giving up
1332
1283
 
1333
1284
  select-many: disabled options in the select drop down instead of trying to hide them. Fixed a problem in safari where 'choose
1334
1285
  xxx...' would get added by mistake to the list
1335
-
1286
+
1336
1287
  New 'options' attribute for <integer-select-editor>
1337
-
1288
+
1338
1289
  If no <input> tag found, fall back on an input for the COLUMN_TYPE if defined
1339
-
1290
+
1340
1291
 
1341
1292
  Model Controller
1342
1293
 
1343
1294
  The collection actions, e.g. PostController#comments, PostController#new_comment and PostController#create_comment have
1344
1295
  now been moved to the controller that looks after that particular model, e.g. CommentsController#index_for_post,
1345
1296
  CommentsController#new_for_post and CommentsController#create_for_post. The old way was just plain wrong.
1346
-
1297
+
1347
1298
  Named instance var (e.g. @post) is set in body of web methods
1348
-
1299
+
1349
1300
  Factored out redirect code into #redirect_after_submit
1350
-
1301
+
1351
1302
  Ensure default ordering is respected when paginating
1352
-
1303
+
1353
1304
  Fix to checking in superclass for permission_denied and not_found methods
1354
1305
 
1355
1306
 
1356
1307
  Migration generator
1357
1308
 
1358
1309
  Fixed bug with :null setting
1359
-
1310
+
1360
1311
  Ignore sessions table when using the ActiveRecord session store. Closes #187.
1361
-
1312
+
1362
1313
  Fix to loading models that was causing stack overflows (double alias_method_chain)
1363
-
1314
+
1364
1315
  Ignore schema_migrations table
1365
-
1316
+
1366
1317
  Fix to loading of namespaced models
1367
1318
 
1368
1319
  Fix to 'm' option on Windows
@@ -1381,7 +1332,7 @@ Clean theme
1381
1332
  hobo-rapid.js
1382
1333
 
1383
1334
  Hobo.applyEvents is gone - now uses lowpro for all JS events
1384
-
1335
+
1385
1336
  Only do resetForm on success. Add new onSuccess callback to Hobo.ajaxRequest
1386
1337
 
1387
1338
 
@@ -1391,11 +1342,11 @@ Routing
1391
1342
  (See hobo generator, below)
1392
1343
 
1393
1344
  Fixes to lifecycle routes, so that object_url(obj, :signup, :method => 'post') works
1394
-
1345
+
1395
1346
  Clean-up so that :format => false doesn't sneak into route options
1396
-
1347
+
1397
1348
  Better error reporting if DB problems occur during routing
1398
-
1349
+
1399
1350
  Doesn't try to load routes when running script/destroy
1400
1351
 
1401
1352
 
@@ -1430,43 +1381,43 @@ Lifecycles
1430
1381
  Moving default user lifecycle (signup) from Hobo::User into the generated model file (hobo_user_model generator). Closes #148
1431
1382
 
1432
1383
  Fixed problem with lifecycle keys when timezone was not configured. Now raises an error in that case. Closes #146
1433
-
1384
+
1434
1385
  Changing lifecycle action names from signup_page (the form page) and signup (the post action), to signup (the form page) and
1435
1386
  do_signup (th epost action)
1436
1387
 
1437
-
1388
+
1438
1389
  Hobo models
1439
1390
 
1440
1391
  Removed :manged => true option for has_many :through. ActiveRecord now does behaves like this by default.
1441
1392
 
1442
1393
  Adding member_class meta-data when calling find_by_sql. Closes #231.
1443
-
1394
+
1444
1395
  Moved Hobo.models to Hobo::Model.all_models, (also added Hobo::ModelController.all_controllers)
1445
-
1446
- Added #foo_is? for every belongs_to :foo
1447
-
1396
+
1397
+ Added #foo_is? for every belongs_to :foo
1398
+
1448
1399
  record.foo_is?(x) is like record.foo == x but does not force foo to load
1449
-
1400
+
1450
1401
  Have an SEO friendly URL (#to_param) by default on any model with a name attribute
1451
-
1402
+
1452
1403
  Added #acting_user, virtual attribute set to the user that does a user_update, user_save etc.
1453
-
1404
+
1454
1405
  Include virtual attributes (e.g. a #name method) when guessing name, description etc.
1455
1406
 
1456
1407
 
1457
1408
  HoboFields
1458
1409
 
1459
1410
  Removed RedCloth monkey-patch. Not needed (and broken) in RedCloth 4
1460
-
1411
+
1461
1412
  Support :null => true/false on belongs_to
1462
-
1413
+
1463
1414
  Making HoboFields::HtmlString a subclass of HoboFields::Text
1464
-
1415
+
1465
1416
  Adding :decimal as another name for BigDecimal
1466
1417
 
1467
1418
 
1468
1419
  Removing symlink_plugins script now that it turns out there's no need for symlinks
1469
-
1420
+
1470
1421
  Just clone the whole hobo repo to vendor/plugins/hobo
1471
1422
 
1472
1423
 
@@ -1474,27 +1425,27 @@ Removing symlink_plugins script now that it turns out there's no need for symlin
1474
1425
  hobo_user_model generator
1475
1426
 
1476
1427
  Removed permission methods that are never used
1477
-
1428
+
1478
1429
  Replaced set_admin_on_forst_user with the actual code (a one liner) for greater clarity
1479
-
1430
+
1480
1431
  Added forgotton password mailer
1481
-
1432
+
1482
1433
  Adding email address to standard model (for forgotten password email)
1483
-
1434
+
1484
1435
 
1485
1436
 
1486
1437
  Scopes
1487
1438
 
1488
1439
  Goodbye def_scope (Rails now has named_scope). Made automatic scopes work with named_scope
1489
-
1440
+
1490
1441
  apply_scopes now works on other scopes, e.g. User.admin?.apply_scopes(...)
1491
-
1442
+
1492
1443
  Added by_most_recent automatic scope
1493
-
1444
+
1494
1445
  Added is and is_not automatic scopes
1495
-
1446
+
1496
1447
  Made search scope AND terms rather than OR
1497
-
1448
+
1498
1449
 
1499
1450
  Removed dump_fixtures rake task. See lighthouse #51
1500
1451
 
@@ -1503,7 +1454,7 @@ Hobo controller -- adding #call_tag (#render_tag without the render)
1503
1454
 
1504
1455
 
1505
1456
  Symlinked generators now even work when they call each other (hobo_model_resource => hobo_model)
1506
-
1457
+
1507
1458
 
1508
1459
  Hobo support - renamed Enumerable#search to Enumerable#map_and_find. Was clashing with the #search automatic scope
1509
1460
 
@@ -1546,11 +1497,11 @@ Bundles
1546
1497
  Pass the callers options to the Bundle#defaults
1547
1498
 
1548
1499
 
1549
- Hobo Modles --
1500
+ Hobo Modles --
1550
1501
 
1551
1502
  Migration generator -- exit with a warning if there are pending migrations
1552
1503
 
1553
-
1504
+
1554
1505
  Removed tabla theme
1555
1506
 
1556
1507
 
@@ -1578,7 +1529,7 @@ Hobo::HoboHelper -- new hook for customising URLs - base_url_for
1578
1529
  New rake task generate_tag_reference. Creates simple HTML reference
1579
1530
  docs, including any inline documentation comments (found
1580
1531
  immediately above the <def>)
1581
-
1532
+
1582
1533
  ModelController
1583
1534
 
1584
1535
  Made it possible to have a custom #permission_denined and
@@ -1587,7 +1538,7 @@ Hobo::HoboHelper -- new hook for customising URLs - base_url_for
1587
1538
  Improved logic for figuring out redirect after destroy
1588
1539
 
1589
1540
  Fix to bug where we would turn pagination off when we shouldn't
1590
-
1541
+
1591
1542
  We now have a list of mime-types that we *don't* paginate for
1592
1543
  (can be extended)
1593
1544
 
@@ -1618,7 +1569,7 @@ Hobo::HoboHelper -- new hook for customising URLs - base_url_for
1618
1569
 
1619
1570
  Allowing belongs_to and has_one associations to be set by name
1620
1571
  during mass-assignment
1621
-
1572
+
1622
1573
  e.g. person.attributes = { :department => 'Sales' }
1623
1574
 
1624
1575
  Automatic scopes -- give up silently if there's a problem with the DB
@@ -1629,7 +1580,7 @@ Hobo::HoboHelper -- new hook for customising URLs - base_url_for
1629
1580
  Auto-completers are now working again. The tag to use is
1630
1581
  <name-one>. Should be a how-to for this availabe soon.
1631
1582
 
1632
- In-place-edits are working again
1583
+ In-place-edits are working again
1633
1584
 
1634
1585
  New controller method call_dryml_tag (added by DRYML template
1635
1586
  handler). Calls a tag and returns the result as a string.
@@ -1643,7 +1594,7 @@ Hobo::HoboHelper -- new hook for customising URLs - base_url_for
1643
1594
  Refactored the DRYML parser to make it easier to parse DRYML in other contexts
1644
1595
 
1645
1596
  Rapid:
1646
-
1597
+
1647
1598
  Improvements to wording on index-page
1648
1599
 
1649
1600
  Display the users name, not login in the account-nav
@@ -1690,7 +1641,7 @@ contain edited highlights of the commit log.
1690
1641
 
1691
1642
  Moving the part-contexts javascripts from the very end of the
1692
1643
  output, to the end of <body>
1693
-
1644
+
1694
1645
  The script tag must now be output by the <page>, instead of
1695
1646
  being appended automatically by DRYML. This is done in
1696
1647
  <simple-layout/>
@@ -1746,81 +1697,81 @@ contain edited highlights of the commit log.
1746
1697
  Fix to <view for='text'/>
1747
1698
 
1748
1699
  Improvements to <table-plus>
1749
-
1700
+
1750
1701
  Ability to sort by name of 'this' when 'this' is one of the
1751
1702
  fields
1752
-
1703
+
1753
1704
  Keep table headings in when the table is empty
1754
-
1705
+
1755
1706
  Don't include page nav if the collection doesn't support it
1756
1707
 
1757
1708
  Improvements to rapid pages
1758
-
1709
+
1759
1710
  Allowing has_many associations in forms
1760
-
1711
+
1761
1712
  Allowing the primary collection on a show page to be provided by
1762
1713
  an instance variable (so that filtering/searching/pagination are
1763
1714
  supported)
1764
-
1715
+
1765
1716
  Tidy of <show-page>
1766
-
1717
+
1767
1718
  <index-page> -- improved wording
1768
1719
 
1769
1720
  Fixes to <index-page>
1770
1721
 
1771
1722
  <account-nav> make 'logged in as bob' a link to current_user
1772
-
1723
+
1773
1724
  Factored out default <collection> into <base-collection>, and
1774
1725
  fixes to <collection-preview>
1775
-
1726
+
1776
1727
  <base-card> -- add 'edit' link
1777
1728
 
1778
1729
  <base-card> change 'title' param to 'heading' and make it easier
1779
1730
  to provide your own
1780
-
1731
+
1781
1732
  <creation-details> use a div rather than a span
1782
-
1733
+
1783
1734
  Fix to <select-many>
1784
1735
 
1785
1736
  Fix to <select-menu>
1786
-
1737
+
1787
1738
  Fix to <input for='datetime'>
1788
-
1739
+
1789
1740
  Rapid forms: switching to <select-one> and <select-many> naming
1790
-
1741
+
1791
1742
  <form> -- don't include auth token on GET forms
1792
-
1743
+
1793
1744
  Rapid: <belongs-to-menu-editor> -- don't show 'View' link if the
1794
1745
  thing is not linkable
1795
-
1746
+
1796
1747
  Rapid: adding sort attribute to <belongs-to-menu-editor>
1797
1748
 
1798
1749
  Rapid: default 'no-filter' option for filter-menu
1799
-
1750
+
1800
1751
  Rapid: Fix to extraneous whitespace in <you>
1801
-
1752
+
1802
1753
  Rapid: better guess of label on <count>
1803
-
1754
+
1804
1755
  Rapid: Use association name rather than class name in css classes
1805
1756
  on <a> tags (when available)
1806
1757
 
1807
1758
  Rapid: Fix to use of <else> with <a>
1808
-
1759
+
1809
1760
  Removed 'all' method from ScopedProxy - delegates to the model
1810
1761
  class instead
1811
-
1762
+
1812
1763
  Fix to origin_attribute on scoped associations
1813
1764
 
1814
1765
  Fix to with_abc automatic scopes
1815
1766
 
1816
1767
  New automatic scopes 'include' and 'search', and improvements to
1817
1768
  order_by scope
1818
-
1769
+
1819
1770
  Scopes: fix to parameterised scopes on associations
1820
1771
 
1821
1772
  Scopes: new apply_scopes method for models and has_many
1822
1773
  associations
1823
-
1774
+
1824
1775
  Pass a hash of scope-name => scope-arguments (single valur or
1825
1776
  array), the result will be scoped accordingly, but only if the
1826
1777
  first argument to the scope is not blank. It's designed to be
@@ -1831,90 +1782,90 @@ contain edited highlights of the commit log.
1831
1782
  ajax actions
1832
1783
 
1833
1784
  Hobo::ModelController -- Fix to flash message after update
1834
-
1785
+
1835
1786
  Hobo::ModelController -- fix to redirection after submitting a
1836
1787
  form
1837
1788
 
1838
1789
  Hobo::ModelController -- cleaning up sorting and filtering
1839
-
1790
+
1840
1791
  Hobo::ModelController -- make reorder one of the automatic
1841
1792
  :write_only actions if the model has the position_column method
1842
1793
 
1843
1794
  <with-fields> better error reporting
1844
1795
 
1845
1796
  Hobo::ModelController -- adding automatic reorder action
1846
-
1797
+
1847
1798
  Works with acts_as_list and scriptaculous drag and drop
1848
1799
  re-ordering
1849
-
1800
+
1850
1801
  Hobo::Model adding :managed => true option to has_many
1851
-
1802
+
1852
1803
  Only valid with the :through option. Records of the joining
1853
1804
  model will be created and destroyed as required when this record
1854
1805
  is saved, in order to honour the contents of the association at
1855
1806
  save time.
1856
-
1807
+
1857
1808
  Hobo::Model -- adding .user_update
1858
1809
 
1859
1810
  Hobo::Model -- fix to user_find
1860
-
1811
+
1861
1812
  Hobo::HoboHelper -- #map_this (used by repeat) will set this_key
1862
1813
  when iterating over a hash
1863
-
1814
+
1864
1815
  DRYML: made this_field_reflection do a better job of figuring out
1865
1816
  the current reflection
1866
-
1817
+
1867
1818
  DRYML: adding this_key -- gives you the current key when
1868
1819
  <repeat>ing on a hash
1869
-
1820
+
1870
1821
  DRYML: Error message for invalid attributes on parameter tags,
1871
1822
  e.g. <foo: if-'...'>
1872
-
1823
+
1873
1824
  Hobo module - fix to permission checks on unexpected objects
1874
1825
 
1875
1826
  Hobo module -- always return false for can_create? on has_many
1876
1827
  associations that are not 'simple'
1877
-
1828
+
1878
1829
  (i.e. they have conditions)
1879
-
1830
+
1880
1831
  DRYML: Fix for replacing an overridden tag parameter
1881
-
1832
+
1882
1833
  Rapid pages: new submit label on show page (add to collection)
1883
-
1834
+
1884
1835
  Rapid pages: Add param to <show-page>
1885
-
1836
+
1886
1837
  Rapid pages: by default, append app-name to every title, override
1887
1838
  with full-title attribute (<base-page>)
1888
-
1839
+
1889
1840
  Rapid pages: <show-page> -- update primary collection count when
1890
1841
  an item is deleted
1891
-
1842
+
1892
1843
  Rapid pages: fix on <show-page>
1893
-
1844
+
1894
1845
  Rapid pages: make edit link on show-page check if the edit action
1895
1846
  is linkable
1896
-
1847
+
1897
1848
  Rapid forms: adding inputs (just textareas) for textile and
1898
1849
  markdown
1899
-
1850
+
1900
1851
  front_controller generator -- use <collection-preview> in
1901
1852
  index.dryml
1902
-
1853
+
1903
1854
  Rapid generics: adding support for <collection with='&MyModel'/>
1904
1855
 
1905
1856
  Rapid tags: switching to <main-nav> tag, called from simple-layout
1906
-
1857
+
1907
1858
  hobo_model_resource generator -- removing creating of (rails
1908
1859
  style) resource route
1909
1860
 
1910
1861
  Improvements to rapid pages
1911
-
1862
+
1912
1863
  Allowing has_many associations in forms
1913
-
1864
+
1914
1865
  Allowing the primary collection on a show page to be provided by
1915
1866
  an instance variable (so that filtering/searching/pagination are
1916
1867
  supported)
1917
-
1868
+
1918
1869
  Rapid: Fix to use of <else> with <a>
1919
1870
 
1920
1871
  Removed 'all' method from ScopedProxy - delegates to the model
@@ -1956,10 +1907,10 @@ contain edited highlights of the commit log.
1956
1907
 
1957
1908
  Adding support for 'this' psuedo-field to <with-fields> and
1958
1909
  <with-fields-names>
1959
-
1910
+
1960
1911
  In particular, this makes it possible to include the object
1961
1912
  itself in a table plus column
1962
-
1913
+
1963
1914
  Adding a general <view> for ActiveRecord objects (just <a/>)
1964
1915
 
1965
1916
  Allowing lookup of polymorphic tags to include ActiveRecord::Base
@@ -1993,7 +1944,7 @@ Core extentions
1993
1944
 
1994
1945
 
1995
1946
  hobo generator
1996
-
1947
+
1997
1948
  application.dryml now has a generated <app-name> tag
1998
1949
 
1999
1950
 
@@ -2091,7 +2042,7 @@ Hobo helpers
2091
2042
 
2092
2043
  can_view? now utilises some simple cacheing
2093
2044
 
2094
- signup_url now defaults to the
2045
+ signup_url now defaults to the
2095
2046
 
2096
2047
  linkable? no longer accepts an array as parameter
2097
2048
 
@@ -2139,7 +2090,7 @@ DRYML
2139
2090
  the begining and end of the default content.
2140
2091
 
2141
2092
  Note these are all just syntactic sugar for things you can do
2142
- already with <param-content/> and <title: replace> /
2093
+ already with <param-content/> and <title: replace> /
2143
2094
  <title: restore/>
2144
2095
 
2145
2096
  When changing the context with the ':' shorthand, now use dashes,
@@ -2150,7 +2101,7 @@ DRYML
2150
2101
 
2151
2102
  Control attributes <my-tag if> is equivalent to <my-tag if="&this"/>
2152
2103
  (remember these test for blank? / not blank?, not Ruby trueness)
2153
-
2104
+
2154
2105
  this_type now never returns AssociationReflections,
2155
2106
  this_field_reflection does
2156
2107
 
@@ -2166,7 +2117,7 @@ DRYML
2166
2117
 
2167
2118
  Fix: using alias-of with a reserved word was broken
2168
2119
 
2169
-
2120
+
2170
2121
  Hobo models
2171
2122
 
2172
2123
  New method Model.named to find things by name,
@@ -2249,7 +2200,7 @@ Scopes
2249
2200
 
2250
2201
  published
2251
2202
  not_published
2252
-
2203
+
2253
2204
  For the various date/time columns (these must end _at, e.g. pulished_at)
2254
2205
 
2255
2206
  published_before(x)
@@ -2261,7 +2212,7 @@ Scopes
2261
2212
  order_by(field_name) -- add an ORDER BY clause
2262
2213
  limit(n) -- add a LIMIT clause
2263
2214
  recent(n) -- orders by created_at and limits to n records
2264
-
2215
+
2265
2216
 
2266
2217
 
2267
2218
  Hobo model controller
@@ -2295,7 +2246,7 @@ Hobo model controller
2295
2246
 
2296
2247
  Support for scopes on declarative index actions:
2297
2248
 
2298
- index_action :scope => :my_scope
2249
+ index_action :scope => :my_scope
2299
2250
 
2300
2251
  New method filter_by for easily adding filtering to index actions, e.g.
2301
2252
 
@@ -2339,7 +2290,7 @@ Bundles
2339
2290
  selective about which models and controllers they include.
2340
2291
 
2341
2292
  Adding support for: belongs_to :foo, :polymorphic => :optional
2342
-
2293
+
2343
2294
  Magic option names are now available inside the model and controller *instances*
2344
2295
 
2345
2296
  Bundle options with defaults now work with nested option hashes
@@ -2373,7 +2324,7 @@ Rapid tags: general
2373
2324
  collection was obtained
2374
2325
 
2375
2326
  So, unless something has changed:
2376
-
2327
+
2377
2328
  collection.origin.send(collection.origin_attribute) == collection
2378
2329
 
2379
2330
  This API is made available on all association proxies, regular
@@ -2428,12 +2379,12 @@ Rapid tags: forms
2428
2379
  <after-submit> -- can now do
2429
2380
 
2430
2381
  <after-submit go-back> (requires session[:previous_uri])
2431
-
2382
+
2432
2383
  and
2433
2384
 
2434
2385
  <after-submit stay-here>
2435
2386
 
2436
-
2387
+
2437
2388
  Rapid tags: navigation
2438
2389
 
2439
2390
  Now assumes will_paginate style pagination instead of classic_pagination
@@ -2519,7 +2470,7 @@ DRYML
2519
2470
  Rapid
2520
2471
 
2521
2472
  New generic tag <collection>. Used to create type-specific
2522
- renderings of collections. E.g. you can
2473
+ renderings of collections. E.g. you can
2523
2474
 
2524
2475
  <def tag="collection" for="Comment">
2525
2476
 
@@ -2543,7 +2494,7 @@ Rapid pages
2543
2494
 
2544
2495
  Plugins
2545
2496
 
2546
- Changing from hobo_* naming convention to rapid_*
2497
+ Changing from hobo_* naming convention to rapid_*
2547
2498
 
2548
2499
 
2549
2500
 
@@ -2593,7 +2544,7 @@ Hobo models
2593
2544
  (within the "fields do" block)
2594
2545
 
2595
2546
  Can also write
2596
- username :string, :login => true, :validate => false
2547
+ username :string, :login => true, :validate => false
2597
2548
  to disable the automatic login validations (see hobo/lib/hobo/user.rb)
2598
2549
 
2599
2550
  Plus two new ones for fields: :name => true and :description => true.
@@ -2668,7 +2619,7 @@ Hobo user controller
2668
2619
  "Account not available" is now a separate page
2669
2620
  (<account-disabled-page>) instead of just a flash message.
2670
2621
 
2671
- Fixed occasional missing template bug
2622
+ Fixed occasional missing template bug
2672
2623
 
2673
2624
 
2674
2625
 
@@ -2709,7 +2660,7 @@ Hobo helpers
2709
2660
  association, defaults to #this.
2710
2661
 
2711
2662
  New helper #font_models. Returns a list of models that are
2712
- candidates to appear on the default front page and main nav.
2663
+ candidates to appear on the default front page and main nav.
2713
2664
 
2714
2665
  Changes to linkable? Subsite is now a named option (:subsite =>
2715
2666
  "admin"), the target of the links defaults to #this and the action
@@ -2721,7 +2672,7 @@ Hobo routing
2721
2672
  Now automatically updates routes without restarting the server in
2722
2673
  dev mode (yay!)
2723
2674
 
2724
-
2675
+
2725
2676
  Site search -- don't search for records that are not linkable
2726
2677
 
2727
2678
 
@@ -2826,7 +2777,7 @@ DRYML
2826
2777
  New helper 'element'. Use in place of Rails' tag and content_tag
2827
2778
  helper. It dasherizes attributes given as symbols.
2828
2779
 
2829
-
2780
+
2830
2781
  Migration generator
2831
2782
 
2832
2783
  Better support for STI. It no longer wants to generate tables for
@@ -2852,7 +2803,7 @@ Hobo Rapid
2852
2803
 
2853
2804
  Upgraded to latest low_pro.js
2854
2805
 
2855
-
2806
+
2856
2807
  New theme 'Clean'
2857
2808
 
2858
2809
  New helper 'linkable?' can be given a record or class, and tells you
@@ -2883,7 +2834,7 @@ Hobo Rapid
2883
2834
  <theme-stylesheet> now takes a 'name' attribute
2884
2835
 
2885
2836
  <delete-button> takes a 'subsite' attribute
2886
-
2837
+
2887
2838
 
2888
2839
  Rake tasks
2889
2840
 
@@ -2960,7 +2911,7 @@ Change to hobo command:
2960
2911
 
2961
2912
  Migration generator
2962
2913
 
2963
- Automatically ignores non-Hobo models (and associated tables)
2914
+ Automatically ignores non-Hobo models (and associated tables)
2964
2915
 
2965
2916
  Hobo::Migrations.ignore_models is now deprecated.
2966
2917
 
@@ -3048,7 +2999,7 @@ DRYML
3048
2999
  e.g. part_locals="@user". Note that inside the part this creates a
3049
3000
  local variable "user". Don't user @user inside the part. It's just a
3050
3001
  convenience to avoid the need to do <set user="&@user"/>
3051
-
3002
+
3052
3003
  Fix: failure to accumulate CSS class names when merging attributes.
3053
3004
 
3054
3005
  DRYML now gives the type returned by #field_type (when available)
@@ -3097,7 +3048,7 @@ Rich data types
3097
3048
 
3098
3049
  Hobo models
3099
3050
 
3100
- In fields declaration:
3051
+ In fields declaration:
3101
3052
 
3102
3053
  Got rid of weird thing where providing :length meant the type
3103
3054
  defaulted to :string
@@ -3108,7 +3059,7 @@ Hobo models
3108
3059
  were in the model controller. e.g. Dates can be represented as
3109
3060
  Hashes of month, day etc. Chronic will be used to parse dates if
3110
3061
  available. Object references (e.g. belongs_to relationships) can be
3111
- set with "@<typed-id>" as before.
3062
+ set with "@<typed-id>" as before.
3112
3063
 
3113
3064
  "fields do" can optionally be used with a parameter if you don't
3114
3065
  like the instance_eval hackery:
@@ -3158,7 +3109,7 @@ Helpers
3158
3109
 
3159
3110
  #dom_id now returns "" when a dom_id cannot be generated (used to
3160
3111
  raise an error)
3161
-
3112
+
3162
3113
  #map_this now works with ranges (used by DRYML's repeat)
3163
3114
 
3164
3115
  #current_page_url returns request.request_uri without the query string
@@ -3202,7 +3153,7 @@ Model controller
3202
3153
  to have them paginated.
3203
3154
 
3204
3155
  New declaration 'auto_actions' allows you to select which actions
3205
- Hobo provides for you automatically.
3156
+ Hobo provides for you automatically.
3206
3157
 
3207
3158
  # White list
3208
3159
  auto_actions :show, :index
@@ -3245,7 +3196,7 @@ Model controller
3245
3196
  response.
3246
3197
 
3247
3198
  <NotFoundPage> used as the default 404 response.
3248
-
3199
+
3249
3200
 
3250
3201
  User controller
3251
3202
 
@@ -3319,7 +3270,7 @@ Tag library: Rapid forms
3319
3270
 
3320
3271
  New <input> for enum-strings - a select menu.
3321
3272
 
3322
- New <input> for big decimals
3273
+ New <input> for big decimals
3323
3274
 
3324
3275
  <remote_method_button> now supports non ajax remote method calls
3325
3276
  (when no update="..." is given)
@@ -3377,7 +3328,7 @@ namespaced). This will dump the current database into test
3377
3328
  fixtures. The nice part is that it won't overwrite symbolic names
3378
3329
  you've given to rows in your fixtures, so you can round-trip with it:
3379
3330
  rake db:fixtures:load, run up the app and create some new data, rake
3380
- dump_fixtures.
3331
+ dump_fixtures.
3381
3332
 
3382
3333
 
3383
3334
  Migration generator
@@ -3401,7 +3352,7 @@ Hobo users
3401
3352
 
3402
3353
  If the model name is "User", the routes generated are simply:
3403
3354
 
3404
- /login
3355
+ /login
3405
3356
  /logout
3406
3357
  /signup
3407
3358
 
@@ -3474,14 +3425,14 @@ Core extensions
3474
3425
 
3475
3426
  string_or_nil._?.length
3476
3427
 
3477
- is equivalent to
3428
+ is equivalent to
3478
3429
 
3479
3430
  string_or_nil && string_or_nil.length
3480
3431
 
3481
3432
  Hobo extensions to HashWithIndifferentAccess fixed to always return
3482
3433
  indifferent hashes.
3483
3434
 
3484
-
3435
+
3485
3436
  Hobo controller
3486
3437
 
3487
3438
  Fix to #render_tags (problem with part contexts javascript)
@@ -3619,8 +3570,8 @@ Hobo Rapid
3619
3570
  Fix to new link in <ShowCollectionPage>
3620
3571
 
3621
3572
  <image> tag removed from default ajax progress.
3622
-
3623
-
3573
+
3574
+
3624
3575
 
3625
3576
  Dryml
3626
3577
 
@@ -3661,7 +3612,7 @@ Hobo helpers
3661
3612
  Multiple user models
3662
3613
 
3663
3614
  Hobo now supports multiple user models, with independent sign-up /
3664
- log-in/out for each.
3615
+ log-in/out for each.
3665
3616
 
3666
3617
  The controller needs to declare hobo_user_controller instead of
3667
3618
  hobo_model_controller (it still has all the hobo_model_controller
@@ -3749,7 +3700,7 @@ Migration generator
3749
3700
 
3750
3701
  Hobo::Migrations.ignore_tables
3751
3702
 
3752
- To ignore just models, assign an array of the class names to
3703
+ To ignore just models, assign an array of the class names to
3753
3704
 
3754
3705
  Hobo::Migrations.ignore_models
3755
3706
 
@@ -3813,7 +3764,7 @@ DRYML
3813
3764
 
3814
3765
  <def tag="card" for="User"/>...</def>
3815
3766
  <def tag="card" for="BlogPost">...</def>
3816
-
3767
+
3817
3768
  call with <card for_type/>
3818
3769
 
3819
3770
  The actual tag called will be selected according to the type of
@@ -4110,7 +4061,7 @@ DRYML
4110
4061
 
4111
4062
  <def tag="a">
4112
4063
  <def tag="panel">...</def>
4113
-
4064
+
4114
4065
  ... Any call to panel in here, or in the tagbody of the call to
4115
4066
  <a> will get the local definition. Note that local tags are full
4116
4067
  closures and have access to state from the containing tag...
@@ -4131,7 +4082,7 @@ DRYML
4131
4082
  Think of these as the dryml equivalent of the suffix 'if' and 'unless' in Ruby.
4132
4083
 
4133
4084
  If you give the attributes a string, it is treated test for a
4134
- non-blank field, e.g. if="address" is like
4085
+ non-blank field, e.g. if="address" is like
4135
4086
  <if q="&!this.address.blank?">
4136
4087
 
4137
4088
  You can use <else> after tags with these attributes on them.
@@ -4203,7 +4154,7 @@ repository.
4203
4154
 
4204
4155
  DRYML Core Tags
4205
4156
 
4206
- <dynamic_tag/> renamed to <call_tag/>
4157
+ <dynamic_tag/> renamed to <call_tag/>
4207
4158
 
4208
4159
  <display_name/> displays "(not available)" if the context is nil
4209
4160
 
@@ -4221,10 +4172,10 @@ DRYML Core Tags
4221
4172
  DRYML Helpers
4222
4173
 
4223
4174
  #param_name_for will strip a trailing '?' if there is one.
4224
-
4175
+
4225
4176
 
4226
4177
  Hobo Rapid Tags
4227
-
4178
+
4228
4179
  <boolean_field> now also generates a hidden tag with the same name
4229
4180
  and value '0' like the rails helper. This fixes HTMLs broken idea of
4230
4181
  how to handle checkboxes (you get a 0 value if the checkbox is not
@@ -4371,7 +4322,7 @@ Hobo Rapid
4371
4322
  inner-tag 'rapid_javascripts'. e.g. you can do
4372
4323
 
4373
4324
  <page rapid_javascripts.tiny_mce="#true">
4374
-
4325
+
4375
4326
  to enable TinyMCE support.
4376
4327
 
4377
4328
  Removed helper current_user_in?
@@ -4391,7 +4342,7 @@ Hobo Rapid
4391
4342
  object form now has a css class added: either the model class name, or
4392
4343
  "new_<class>"
4393
4344
 
4394
- New tag <remote_method_form> for calling remote methods with parameters, either with a traditional
4345
+ New tag <remote_method_form> for calling remote methods with parameters, either with a traditional
4395
4346
 
4396
4347
 
4397
4348
  Model Extensions
@@ -4455,7 +4406,7 @@ Model controllers
4455
4406
  Removed customisation hooks, create_response,
4456
4407
  invalid_create_response, update_response etc.
4457
4408
 
4458
- New mechanism for customising actions.
4409
+ New mechanism for customising actions.
4459
4410
 
4460
4411
  def create
4461
4412
  hobo_create ...customisation args...
@@ -4492,7 +4443,7 @@ Permission system
4492
4443
  can_edit? now works better with boolean fields
4493
4444
 
4494
4445
  can_call_<method>? renamed to <method>_callable_by?
4495
-
4446
+
4496
4447
 
4497
4448
  DRYML
4498
4449
 
@@ -4658,7 +4609,7 @@ Hobo::Controller
4658
4609
 
4659
4610
  hobo_ajax_reponse will use @this if no page context is passed
4660
4611
 
4661
-
4612
+
4662
4613
  Module defined tags
4663
4614
 
4664
4615
  Can provide a predicate as a block, e.g. to have a different nav bar onced logged in.
@@ -4673,7 +4624,7 @@ Module defined tags
4673
4624
 
4674
4625
  DRYML
4675
4626
 
4676
- Changes to taglib cache system.
4627
+ Changes to taglib cache system.
4677
4628
 
4678
4629
  A list of known HTML tags is defined in lib/hobo/static_tags. These
4679
4630
  are available as an array by calling Hobo.static_tags. Any tags
@@ -4777,7 +4728,7 @@ Hobo Rapid
4777
4728
 
4778
4729
  has_many_editor
4779
4730
  belongs_to_editor
4780
-
4731
+
4781
4732
  string_editor
4782
4733
  textarea_editor
4783
4734
  password_editor
@@ -4810,7 +4761,7 @@ New feature - Composite models
4810
4761
 
4811
4762
  Experimental new feature - mapping tags
4812
4763
 
4813
- New feature - Predicate dispatch modules
4764
+ New feature - Predicate dispatch modules
4814
4765
 
4815
4766
 
4816
4767
  === Release 0.4.3 ===
@@ -5195,7 +5146,7 @@ Model Extensions (hobo_model)
5195
5146
 
5196
5147
  class User < ActiveRecord::Base
5197
5148
  set_default_order "name"
5198
- end
5149
+ end
5199
5150
 
5200
5151
  To use: User.find(:all, :order => :default). Default order is used
5201
5152
  by the hobo_model_controller