hobo 1.3.0.pre19 → 1.3.0.pre20

Sign up to get free protection for your applications and to get access to all the features.
Files changed (44) hide show
  1. data/CHANGES.txt +282 -234
  2. data/VERSION +1 -1
  3. data/lib/generators/hobo/admin_subsite/templates/controller.rb.erb +5 -5
  4. data/lib/generators/hobo/assets/templates/dryml-support.js +2 -2
  5. data/lib/generators/hobo/i18n/templates/hobo.it.yml +1 -1
  6. data/lib/generators/hobo/rapid/templates/hobo-rapid.js +64 -64
  7. data/lib/generators/hobo/rapid/templates/ie7-recalc.js +21 -21
  8. data/lib/generators/hobo/rapid/templates/lowpro.js +31 -31
  9. data/lib/generators/hobo/rapid/templates/reset.css +1 -1
  10. data/lib/generators/hobo/rapid/templates/themes/clean/public/stylesheets/clean.css +15 -15
  11. data/lib/generators/hobo/rapid/templates/themes/clean/public/stylesheets/rapid-ui.css +3 -3
  12. data/lib/generators/hobo/rapid/templates/themes/clean/views/clean.dryml +1 -1
  13. data/lib/generators/hobo/setup_wizard/setup_wizard_generator.rb +15 -14
  14. data/lib/generators/hobo/subsite/templates/controller.rb.erb +1 -1
  15. data/lib/generators/hobo/user_controller/templates/controller.rb.erb +2 -2
  16. data/lib/hobo.rb +1 -0
  17. data/lib/hobo/controller.rb +6 -6
  18. data/lib/hobo/controller/authentication_support.rb +1 -1
  19. data/lib/hobo/controller/model.rb +10 -10
  20. data/lib/hobo/controller/user.rb +6 -6
  21. data/lib/hobo/engine.rb +6 -0
  22. data/lib/hobo/extensions/action_view/translation_helper.rb +20 -0
  23. data/lib/hobo/extensions/active_model/translation.rb +1 -1
  24. data/lib/hobo/extensions/i18n.rb +16 -0
  25. data/lib/hobo/helper.rb +2 -2
  26. data/lib/hobo/helper/translations.rb +61 -80
  27. data/lib/hobo/model/lifecycles/lifecycle.rb +5 -1
  28. data/lib/hobo/model/lifecycles/transition.rb +1 -0
  29. data/lib/hobo/rapid/generators/rapid/cards.dryml.erb +2 -2
  30. data/lib/hobo/rapid/generators/rapid/forms.dryml.erb +2 -2
  31. data/lib/hobo/rapid/generators/rapid/pages.dryml.erb +7 -7
  32. data/lib/hobo/rapid/taglibs/rapid.dryml +1 -1
  33. data/lib/hobo/rapid/taglibs/rapid_core.dryml +8 -8
  34. data/lib/hobo/rapid/taglibs/rapid_document_tags.dryml +2 -2
  35. data/lib/hobo/rapid/taglibs/rapid_forms.dryml +9 -9
  36. data/lib/hobo/rapid/taglibs/rapid_generics.dryml +1 -1
  37. data/lib/hobo/rapid/taglibs/rapid_i18n.dryml +0 -17
  38. data/lib/hobo/rapid/taglibs/rapid_lifecycles.dryml +5 -5
  39. data/lib/hobo/rapid/taglibs/rapid_navigation.dryml +1 -1
  40. data/lib/hobo/rapid/taglibs/rapid_plus.dryml +6 -6
  41. data/lib/hobo/rapid/taglibs/rapid_user_pages.dryml +8 -8
  42. data/test/permissions/test_permissions.rb +103 -103
  43. metadata +15 -14
  44. data/lib/hobo/rapid/taglibs/rapid_translations.dryml +0 -36
data/CHANGES.txt CHANGED
@@ -14,9 +14,57 @@ 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.0.3 ===
18
+
19
+ This is a security release. All applications that use the reset
20
+ password functionality should upgrade.
21
+
22
+ To patch the vulnerability, two changes have been made.
23
+
24
+ First of all, the lifecycle key hash mechanism has been changed.
25
+ Existing lifecycle keys will become invalid after you upgrade.
26
+ Lifecycle keys are typically short lived, so this is unlikely to be a
27
+ problem for most applications.
28
+
29
+ Secondly, lifecycle keys are now cleared on every transition to avoid
30
+ replay vulnerabilities. This new behaviour may be avoided by added
31
+ the `:dont_clear_key => true` option to a transition.
32
+
33
+ More information about the vulnerability can be viewed on the [bug
34
+ report](https://hobo.lighthouseapp.com/projects/8324/tickets/666-user-model-secure-links-have-low-security).
35
+
36
+ All code changes may viewed on the [github
37
+ log](https://github.com/tablatom/hobo/compare/v1.0.2...v1.0.3)
38
+
39
+ === Hobo 1.0.2 ===
40
+
41
+ This release is almost identical to 1.0.1 except that it updates the
42
+ version requirements to exclude Rails3. Hobo does not currently work
43
+ with Rails3, although we are working on it.
44
+
45
+ This release silences some warnings produced when running with Rails
46
+ 2.3.10.
47
+
48
+ This release contains preliminary support for Ruby 1.9.2, although you
49
+ may encounter problems if you use Single Type Inheritance (STI)
50
+ models.
51
+
52
+ A few very minor bug fixes have also been included. See the [github
53
+ log](https://github.com/tablatom/hobo/compare/v1.0.1...v1.0.2) for
54
+ more details.
55
+
56
+ === Hobo 1.0.1 ===
57
+
58
+ This version contains two speedups: one fix that reduces the number of
59
+ database accesses by Matt Jones and one that speeds up compilation of
60
+ DRYML by Petteri Räty.
61
+
62
+ This version also contains several bug fixes. See the [github
63
+ log](http://github.com/tablatom/hobo/tree/v1.0.1) for more details.
64
+
17
65
  === Hobo 1.0.0 ===
18
66
 
19
- Drumm-roll! Trumpets! Fanfare!
67
+ Drumm-roll! Trumpets! Fanfare!
20
68
 
21
69
  We did it : )
22
70
 
@@ -49,7 +97,7 @@ callbacks.
49
97
 
50
98
  `x._?.to_s` now returns nil rather than a blank string
51
99
 
52
- [#592](https://hobo.lighthouseapp.com/projects/8324/tickets/592):
100
+ [#592](https://hobo.lighthouseapp.com/projects/8324/tickets/592):
53
101
 
54
102
  If you previously had a snippet such as this:
55
103
 
@@ -268,7 +316,7 @@ Major enhancements:
268
316
 
269
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)
270
318
  The transition-buttons tag now generates buttons that link to the
271
- transition page for transitions that require parameters.
319
+ transition page for transitions that require parameters.
272
320
 
273
321
  - [Bug 532](https://hobo.lighthouseapp.com/projects/8324/tickets/532)
274
322
  In previous versions, you had to add the new HTML5 tags to
@@ -278,7 +326,7 @@ Major enhancements:
278
326
 
279
327
  Major bug fixes:
280
328
 
281
- - [Bug 530](https://hobo.lighthouseapp.com/projects/8324-hobo/tickets/530)
329
+ - [Bug 530](https://hobo.lighthouseapp.com/projects/8324-hobo/tickets/530)
282
330
  is a critical bug for invite-only projects. To incorporate the
283
331
  fix, you must rerun your generators or follow the instructions in
284
332
  the [commit](http://github.com/tablatom/hobo/commit/17247eac8a78f8b36dcc3b9684a3e4ec8da32a23)
@@ -341,7 +389,7 @@ Minor Enhancements:
341
389
  - non-required fields that are marked :unique will now allow nil
342
390
  values.
343
391
 
344
- Minor Bug Fixes
392
+ Minor Bug Fixes
345
393
 
346
394
  - [Bug 540](https://hobo.lighthouseapp.com/projects/8324-hobo/tickets/540)
347
395
  Hobo::Permissions::Associations::HasManyThroughAssociations#create!
@@ -436,15 +484,15 @@ Minor enhancements:
436
484
  validations
437
485
 
438
486
  - [Bug 415](https://hobo.lighthouseapp.com/projects/8324/tickets/415): Visiting sign-up page when logged in gives permission
439
- denied
487
+ denied
440
488
 
441
- - 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)
442
490
 
443
491
  - Rapid forms -- added url attribute to `<remote-method-button>`
444
492
 
445
- - 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
+
446
495
 
447
-
448
496
  === Hobo 0.8.7 ===
449
497
 
450
498
  I forgot to refresh the Manifest, so this is a brown paper bag release.
@@ -495,9 +543,9 @@ shows the remaining tickets scheduled for 1.0
495
543
  New permission system
496
544
 
497
545
  Various fixes
498
-
546
+
499
547
  Now runs permission checks *before* callbacks, not after
500
-
548
+
501
549
  In the switch to the new permissions system, we changed to running them after all callbacks. This turned
502
550
  out to be wrong. Permissions should only be about what the user tried to change, not other changes
503
551
  triggered by application logic
@@ -510,7 +558,7 @@ Updated hobo command and hobo generator to use the new config.gem style for apps
510
558
  does this automatically
511
559
 
512
560
  Lifecycles fix -- state_name would throw a nil error if there was no state (not returns nil)
513
-
561
+
514
562
  This was causing the :new_key option to fail on a create step
515
563
 
516
564
  Fixes to problems with live-search introduced with the Rails 2.2 upgrade
@@ -529,38 +577,38 @@ BREAKING: New permission system
529
577
  This is the major feature of this release. The big change is that we now use the dirty tracking features
530
578
  of Active Record for update permission, rather than passing that weird 'new' object. We also use the
531
579
  acting_user method throughout, rather than passing the user as an argument.
532
-
580
+
533
581
  See the docs online: http://cookbook.hobocentral.net/manual/permissions
534
582
 
535
583
 
536
584
  Removing special Hobo semantics for association.new which was breaking the Rails API, and added
537
585
  #new_candidate
538
-
586
+
539
587
  association.new_candidate instantiates the record but does not add it to the collection.
540
-
588
+
541
589
  Fix to linkable? helpers when context responds to origin but is not a collection
542
-
590
+
543
591
  POSSIBLY BREAKING: Improved multi-model form support
544
592
 
545
593
  has_many and belongs_to now support the :accessible => true option, which allows mass-asssignment of
546
594
  attributes to work with sub-hashes that correspond to associations. Docs to follow!
547
-
595
+
548
596
  BREAKING: Lifecycle improvements
549
597
 
550
598
  The lifecycle DSL has been tidied up. Various changes to the semantics.
551
-
599
+
552
600
  Lifecycle validations are now supported (e.g. validates_presence_of :foo, :on => :my_transition)
553
-
601
+
554
602
  Also small improvements to the controller layer lifecycles support
555
-
603
+
556
604
  See: http://cookbook.hobocentral.net/manual/lifecycles
557
-
605
+
558
606
  New ViewHints mechanism
559
607
 
560
608
  Classes in app/viewhints are a place to declare things about your models that are view layer concerns.
561
609
  For example, you can give the presenation name for a field if this should be different from the back-end
562
610
  name. You can give "field help" for each field. You can specify which collections are the "children" of a
563
- model from a UI point of view.
611
+ model from a UI point of view.
564
612
 
565
613
  Rapid <select-many> -- removed use of <a-or-an> as it gets some words wrong (e.g. "an user")
566
614
 
@@ -593,7 +641,7 @@ Rapid <input-many> -- added support for disable attribute
593
641
  Fix to <hobo-rapid-javascripts> when forgery protection is disabled
594
642
 
595
643
  User model - validates_presence_of password confirmation, in addition to validates_confirmation_of
596
-
644
+
597
645
  Fixes #310 - thanks to Jaub Suder
598
646
 
599
647
  BREAKING: Rapid page generators -- Renamed 'primary-content' parameter in <show-page> to 'description'
@@ -603,7 +651,7 @@ User controller -- made account action follow the auto_actions declaration
603
651
  Changed hobo->hobofields->hobosupport gem dependency rules to require the exact version
604
652
 
605
653
  User model generator -- Hobo apps now have people log in with their email address by default, and the user
606
- has a 'name' field rather than 'username'.
654
+ has a 'name' field rather than 'username'.
607
655
 
608
656
  Note this will not effect existing apps
609
657
 
@@ -655,7 +703,7 @@ Rapid JavaScripts -- adding custom events to <select-many>
655
703
  Rapid JavaScript -- added option to specify { message: false } on ajaxRequest to disable the spinner
656
704
 
657
705
  Model Controller -- fix to re_render_form when in a subsite
658
-
706
+
659
707
  hobo_model_controller generator -- adding support for generating subsite controllers
660
708
 
661
709
  HoboSupport -- adding remove and remove_all (plus mutating versions with a !) to string - better name for
@@ -669,9 +717,9 @@ Model controller -- fix to index actions on non-paginated formats (was passing w
669
717
  regular find)
670
718
 
671
719
  Migration generator -- adding option: --force-drop-yes-i-really-mean-it-i-know-what-i-am-doing-dammit
672
-
720
+
673
721
  Not really, it's actually just --force-drop
674
-
722
+
675
723
  With this option it won't ask you "drop or rename?" it will just drop
676
724
 
677
725
  HoboFields -- fix to EnumString when values are not valid contant names
@@ -684,7 +732,7 @@ attributes)
684
732
  Rapid -- adding support for 'disabled' attribute to <select-one>
685
733
 
686
734
  Rapid -- added a 'no-edit' attribute to <input> and <field-list>. Gives control over how
687
- non-editable fields are handled.
735
+ non-editable fields are handled.
688
736
 
689
737
  - view: render the current value using the `<view>` tag
690
738
  - disable: render the input as normal, but add HTML's `disabled` attribute
@@ -713,7 +761,7 @@ Rapid -- tweak to behaviour of <name>. Is now more sensible when called on a non
713
761
 
714
762
  Re-organisation and documentation for Rapid Document Tags
715
763
 
716
- BREAKING: Deleted <panel> tag.
764
+ BREAKING: Deleted <panel> tag.
717
765
 
718
766
  Models - fix to overriding of not_found and permission_denied in applicatin controller. Also fix to bug in
719
767
  permission denied
@@ -725,15 +773,15 @@ DRYML -- allow - instead of _ in repeat/if/unless, when not code attribute
725
773
  HoboSupport - re-org of the file layout
726
774
 
727
775
  HoboFields -- new rich type :serialized (HoboFields::SerializedObject)
728
-
776
+
729
777
  example usage: foo :serialized, :class => Array
730
-
778
+
731
779
  Also some fixes to wrapping of rich types that were needed
732
780
 
733
781
  HoboFields -- adding 'declared' callback to rich types. Called whenever a field of that type is declared
734
782
 
735
783
  See HoboFields::HtmlString for an example
736
-
784
+
737
785
  HoboFields -- new types RawHtmlString and RawMarkdownString that are not sanitized. Plus fix to sanitizing
738
786
 
739
787
  DRYML -- new DrymlDoc facility. Starting point for a roll-your-own documentation generator
@@ -778,9 +826,9 @@ Rapid - adding polymorphic <collection-input> tag as a place to define the kind
778
826
  collections of a given model
779
827
 
780
828
  Rapid javascripts -- making non-ajax HTML Editor pluggable
781
-
829
+
782
830
  Plugins assign a function to Hobo.makeHtmlEditor. See hoboyui plugin for an example (github.com/tablatom)
783
-
831
+
784
832
  Adding XSS protection to HoboFields rich types (Sanitizing)
785
833
 
786
834
  Rapid -- new tag <check-many>. Add remove items to a has_many :through by checking the ones you want. Obviously
@@ -806,7 +854,7 @@ this)
806
854
  User pages:
807
855
 
808
856
  Added editing of email address to user's account page
809
-
857
+
810
858
  Got rid of <change-password-form>
811
859
 
812
860
  Rapid plus -- added <preview-with-more> and <gravatar> tags
@@ -910,7 +958,7 @@ Rapid - fix to <remote-method-button> -- the confirm attribute was incorrectly c
910
958
 
911
959
  Rapid -- <select-menu> now supports an array of label/value pairs, like the options_for_select helper
912
960
 
913
- 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
914
962
  <after-submit stay-here/> (occured after a validation error)
915
963
 
916
964
  New tag <input-all> for situations where you want input for every item in an existing collection (without the +/- buttons that
@@ -1011,7 +1059,7 @@ Hobo users now have an #account_active? method. Used in two places:
1011
1059
 
1012
1060
  - This method rather than the return value of the block passed to hobo_login, is now used to figure out if an
1013
1061
  account is active when logging in.
1014
-
1062
+
1015
1063
  - After signing up, also log the user in iff account_active? is true. This is useful if there is a second step to
1016
1064
  signing up, such as email activation
1017
1065
 
@@ -1036,13 +1084,13 @@ Fix to bug where validations were not happening during lifecycle creates/transit
1036
1084
  Migration generator -- fixed bug with validation of filename input by user
1037
1085
 
1038
1086
  New lifecycle semantics.
1039
-
1087
+
1040
1088
  Lifecycle create and transition actions (blocks) now run *after* the create or transition, and not at all
1041
1089
  if there are validation errors.
1042
-
1090
+
1043
1091
  To create a key, you can no longer call lifecycle.generate_key in the action, as the key timestamp will not
1044
1092
  be saved (record has already been saved)
1045
-
1093
+
1046
1094
  Instead pass :new_key => true as an option to the create or transition, and access it in the block using
1047
1095
  lifecycle.key
1048
1096
 
@@ -1059,7 +1107,7 @@ Fix to bug where validations were not happening during lifecycle creates/transit
1059
1107
 
1060
1108
  New user model method account_active? Default implementation is state == 'active' but this method is intended
1061
1109
  as a hook that can be overridden as required.
1062
-
1110
+
1063
1111
  On signup, the user is only logged in if user has #account_active?
1064
1112
 
1065
1113
  Rapid generators -- fixes for form cancel links
@@ -1076,9 +1124,9 @@ Fix to bug where validations were not happening during lifecycle creates/transit
1076
1124
 
1077
1125
  Rapid generators -- fix for show-page generator, when the 'owner' association that goes with the page's
1078
1126
  collection cannot be found
1079
-
1080
-
1081
-
1127
+
1128
+
1129
+
1082
1130
  === Hobo 0.8 ===
1083
1131
 
1084
1132
  (There's a million changes in this release -- most of the fixes are *not* mentioned)
@@ -1090,12 +1138,12 @@ Hobo can now be used entirely from the gem, and need not be installed in vendor/
1090
1138
  hobo command
1091
1139
 
1092
1140
  Now shows you what it's doing
1093
-
1141
+
1094
1142
  Renamed --create-dbs to --db-create to match the name of the rake task
1095
-
1143
+
1096
1144
 
1097
1145
  DRYML
1098
-
1146
+
1099
1147
  DRYML generators
1100
1148
 
1101
1149
  Hobo now provides a facility to generate DRYML tags on the fly using normal erb based templates. (the generators run
@@ -1107,18 +1155,18 @@ DRYML
1107
1155
 
1108
1156
  <def tag="page" extend-with="app">
1109
1157
  <page-without-app>
1110
-
1158
+
1111
1159
  we now have
1112
-
1160
+
1113
1161
  <extend tag="page">
1114
1162
  <old-page>
1115
-
1163
+
1116
1164
  Also works with polymorphic tags, e.g. <extend tag="card" for="Product">
1117
-
1165
+
1118
1166
  Polymorphic tags: new mechanism for defining polymorphic tags.
1119
-
1167
+
1120
1168
  <def tag="foo" polymorphic> ... "base" definition here ... </def>
1121
-
1169
+
1122
1170
  <def tag="foo" for="Product">
1123
1171
  ... in here you can call <foo> and it's not a recursive call
1124
1172
  but a call to the base definition ...
@@ -1126,30 +1174,30 @@ DRYML
1126
1174
 
1127
1175
  "without" attributes: <page without-live-search> is a shorthand for <page><live-search: replace/>. Doesn't sound like
1128
1176
  much but it's great. You'll like it.
1129
-
1177
+
1130
1178
  <set> now respects the 'if' attribute
1131
1179
 
1132
1180
  Using 'with' and 'field' on a parameter works more sensibly now -- DRYML will never merge with attributes and field
1133
1181
  attributes
1134
-
1182
+
1135
1183
  New semantics for scoped variables.
1136
1184
 
1137
1185
  Scoped variables must be declared at the start of the scope. Assignments and reads always go back to the scope where
1138
1186
  that variable was declared.
1139
-
1187
+
1140
1188
  Fix to <foo:> </foo:> (i.e. one or more whitespace chars) being ignored
1141
1189
 
1142
1190
  Removed feature from add_classes helper that was converting all _ to -. Closes #11
1143
-
1191
+
1144
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
1145
1193
  name, or is 'default'
1146
-
1194
+
1147
1195
  Fixes to errors when reporting syntax error : )
1148
-
1196
+
1149
1197
  Now raises an error rather than outputting nonsensical name attributes on form inputs
1150
-
1198
+
1151
1199
  Removed incorrect leading '/' on template paths (e.g. in logs, stack traces)
1152
-
1200
+
1153
1201
  Fix -- was accepting close tags that are a prefix of the start tags, e.g. <foo>...</fo>
1154
1202
 
1155
1203
 
@@ -1164,108 +1212,108 @@ Rapid tag Library
1164
1212
  The standard <page> tag now has just a <content:> parameter. Specific pages might add <content-header:> or
1165
1213
  <content-body:> themselves.
1166
1214
 
1167
- 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.
1168
1216
 
1169
1217
  <section with-flash-messages> will include the flash messages at the top of the section *unless* they are rendered by a
1170
1218
  sub-section or have been rendered already
1171
1219
 
1172
1220
  Update forms with not render if the user doesn't have permission
1173
-
1221
+
1174
1222
  Removed <nav> tag
1175
-
1223
+
1176
1224
  Changed <a-or-an> to give you 'a hotel' not 'an hotel'
1177
1225
 
1178
1226
  <card> now always renders a link if there is a show action. Closes #54
1179
-
1227
+
1180
1228
  <collection> is no longer a polymorphic tag. Drag and drop support moved into separate tag: <sortable-collection>.
1181
-
1229
+
1182
1230
  Got rid of <collection-preview>
1183
1231
 
1184
1232
  <stylesheet> tag now calls Rails helper stylesheet_link_tag name to construct the link tag. This change was made so that the
1185
1233
  css files are automatically cached using the timestamp mechanism, e.g. application.css?1218209632. The media attribute is now
1186
1234
  'screen' instead of 'all' by default
1187
-
1235
+
1188
1236
  Wrapped the output of <count> in a <span class='count'>
1189
1237
 
1190
1238
  Renamed <name-for-collection> to <collection-name> and added a dasherize parameter
1191
-
1239
+
1192
1240
  <ul> is gone from Rapid and is just a static tag again. Just do <ul><li repeat>
1193
-
1241
+
1194
1242
  New version of IE7.js (http://ie7-js.googlecode.com/svn/trunk/lib/IE7.js rev 29)
1195
-
1243
+
1196
1244
  <with-fields> (and hence <field-list>) now display fields in the order declared in the model
1197
-
1245
+
1198
1246
  <card> and <show-page> no longer include the created_at timestamp
1199
1247
 
1200
1248
  Added labels and titleize attributes to <editor for='HoboFields::EnumString'>
1201
-
1249
+
1202
1250
  Added force (no edit check) attribute to <input>
1203
-
1251
+
1204
1252
  <hidden-form-field> (formerly <hidden-field>) is gone
1205
-
1253
+
1206
1254
  Fix to default label on non-ajax <remote-method-button>
1207
-
1255
+
1208
1256
  Now outputs <span> not <div> to wrap field-with-errors (<div> is invalid)
1209
1257
 
1210
1258
  Added <transition-buttons> and <transition-button> (lifecycles)
1211
1259
 
1212
1260
  Added <dev-user-changer> when in development mode if there is a user model
1213
-
1261
+
1214
1262
  <with-fields> now skips deleted_at by default
1215
-
1263
+
1216
1264
  <name> now properly respects :name => true (in the model)
1217
-
1265
+
1218
1266
  Optimised <count> so that it doesn't hit the DB for already loaded collections
1219
-
1267
+
1220
1268
  Removed <heading> and <sub-heading> and <article>
1221
-
1269
+
1222
1270
  Allowing <def tag=input for=MyModel> to customise inputs for any belongs_to :my_model
1223
-
1271
+
1224
1272
  Changed 'There are no whatsits' message to 'No whatsits to display'
1225
-
1273
+
1226
1274
  Moved to nicedit (nicedit.com) for HTML inputs and editors. Dropped all TinyMCE stuff. It turns out that this change too will
1227
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
1228
1276
  with a plugin, rather than make it part of core Hobo.
1229
-
1277
+
1230
1278
  Added default empty message to <table-plus>
1231
-
1279
+
1232
1280
  Rename <belongs-to-menu-editor> to <select-one-editor> and improvements. Removed "View" link.
1233
-
1281
+
1234
1282
  Made <view> fall back on to_s rather than giving up
1235
1283
 
1236
1284
  select-many: disabled options in the select drop down instead of trying to hide them. Fixed a problem in safari where 'choose
1237
1285
  xxx...' would get added by mistake to the list
1238
-
1286
+
1239
1287
  New 'options' attribute for <integer-select-editor>
1240
-
1288
+
1241
1289
  If no <input> tag found, fall back on an input for the COLUMN_TYPE if defined
1242
-
1290
+
1243
1291
 
1244
1292
  Model Controller
1245
1293
 
1246
1294
  The collection actions, e.g. PostController#comments, PostController#new_comment and PostController#create_comment have
1247
1295
  now been moved to the controller that looks after that particular model, e.g. CommentsController#index_for_post,
1248
1296
  CommentsController#new_for_post and CommentsController#create_for_post. The old way was just plain wrong.
1249
-
1297
+
1250
1298
  Named instance var (e.g. @post) is set in body of web methods
1251
-
1299
+
1252
1300
  Factored out redirect code into #redirect_after_submit
1253
-
1301
+
1254
1302
  Ensure default ordering is respected when paginating
1255
-
1303
+
1256
1304
  Fix to checking in superclass for permission_denied and not_found methods
1257
1305
 
1258
1306
 
1259
1307
  Migration generator
1260
1308
 
1261
1309
  Fixed bug with :null setting
1262
-
1310
+
1263
1311
  Ignore sessions table when using the ActiveRecord session store. Closes #187.
1264
-
1312
+
1265
1313
  Fix to loading models that was causing stack overflows (double alias_method_chain)
1266
-
1314
+
1267
1315
  Ignore schema_migrations table
1268
-
1316
+
1269
1317
  Fix to loading of namespaced models
1270
1318
 
1271
1319
  Fix to 'm' option on Windows
@@ -1284,7 +1332,7 @@ Clean theme
1284
1332
  hobo-rapid.js
1285
1333
 
1286
1334
  Hobo.applyEvents is gone - now uses lowpro for all JS events
1287
-
1335
+
1288
1336
  Only do resetForm on success. Add new onSuccess callback to Hobo.ajaxRequest
1289
1337
 
1290
1338
 
@@ -1294,11 +1342,11 @@ Routing
1294
1342
  (See hobo generator, below)
1295
1343
 
1296
1344
  Fixes to lifecycle routes, so that object_url(obj, :signup, :method => 'post') works
1297
-
1345
+
1298
1346
  Clean-up so that :format => false doesn't sneak into route options
1299
-
1347
+
1300
1348
  Better error reporting if DB problems occur during routing
1301
-
1349
+
1302
1350
  Doesn't try to load routes when running script/destroy
1303
1351
 
1304
1352
 
@@ -1333,43 +1381,43 @@ Lifecycles
1333
1381
  Moving default user lifecycle (signup) from Hobo::User into the generated model file (hobo_user_model generator). Closes #148
1334
1382
 
1335
1383
  Fixed problem with lifecycle keys when timezone was not configured. Now raises an error in that case. Closes #146
1336
-
1384
+
1337
1385
  Changing lifecycle action names from signup_page (the form page) and signup (the post action), to signup (the form page) and
1338
1386
  do_signup (th epost action)
1339
1387
 
1340
-
1388
+
1341
1389
  Hobo models
1342
1390
 
1343
1391
  Removed :manged => true option for has_many :through. ActiveRecord now does behaves like this by default.
1344
1392
 
1345
1393
  Adding member_class meta-data when calling find_by_sql. Closes #231.
1346
-
1394
+
1347
1395
  Moved Hobo.models to Hobo::Model.all_models, (also added Hobo::ModelController.all_controllers)
1348
-
1349
- Added #foo_is? for every belongs_to :foo
1350
-
1396
+
1397
+ Added #foo_is? for every belongs_to :foo
1398
+
1351
1399
  record.foo_is?(x) is like record.foo == x but does not force foo to load
1352
-
1400
+
1353
1401
  Have an SEO friendly URL (#to_param) by default on any model with a name attribute
1354
-
1402
+
1355
1403
  Added #acting_user, virtual attribute set to the user that does a user_update, user_save etc.
1356
-
1404
+
1357
1405
  Include virtual attributes (e.g. a #name method) when guessing name, description etc.
1358
1406
 
1359
1407
 
1360
1408
  HoboFields
1361
1409
 
1362
1410
  Removed RedCloth monkey-patch. Not needed (and broken) in RedCloth 4
1363
-
1411
+
1364
1412
  Support :null => true/false on belongs_to
1365
-
1413
+
1366
1414
  Making HoboFields::HtmlString a subclass of HoboFields::Text
1367
-
1415
+
1368
1416
  Adding :decimal as another name for BigDecimal
1369
1417
 
1370
1418
 
1371
1419
  Removing symlink_plugins script now that it turns out there's no need for symlinks
1372
-
1420
+
1373
1421
  Just clone the whole hobo repo to vendor/plugins/hobo
1374
1422
 
1375
1423
 
@@ -1377,27 +1425,27 @@ Removing symlink_plugins script now that it turns out there's no need for symlin
1377
1425
  hobo_user_model generator
1378
1426
 
1379
1427
  Removed permission methods that are never used
1380
-
1428
+
1381
1429
  Replaced set_admin_on_forst_user with the actual code (a one liner) for greater clarity
1382
-
1430
+
1383
1431
  Added forgotton password mailer
1384
-
1432
+
1385
1433
  Adding email address to standard model (for forgotten password email)
1386
-
1434
+
1387
1435
 
1388
1436
 
1389
1437
  Scopes
1390
1438
 
1391
1439
  Goodbye def_scope (Rails now has named_scope). Made automatic scopes work with named_scope
1392
-
1440
+
1393
1441
  apply_scopes now works on other scopes, e.g. User.admin?.apply_scopes(...)
1394
-
1442
+
1395
1443
  Added by_most_recent automatic scope
1396
-
1444
+
1397
1445
  Added is and is_not automatic scopes
1398
-
1446
+
1399
1447
  Made search scope AND terms rather than OR
1400
-
1448
+
1401
1449
 
1402
1450
  Removed dump_fixtures rake task. See lighthouse #51
1403
1451
 
@@ -1406,7 +1454,7 @@ Hobo controller -- adding #call_tag (#render_tag without the render)
1406
1454
 
1407
1455
 
1408
1456
  Symlinked generators now even work when they call each other (hobo_model_resource => hobo_model)
1409
-
1457
+
1410
1458
 
1411
1459
  Hobo support - renamed Enumerable#search to Enumerable#map_and_find. Was clashing with the #search automatic scope
1412
1460
 
@@ -1449,11 +1497,11 @@ Bundles
1449
1497
  Pass the callers options to the Bundle#defaults
1450
1498
 
1451
1499
 
1452
- Hobo Modles --
1500
+ Hobo Modles --
1453
1501
 
1454
1502
  Migration generator -- exit with a warning if there are pending migrations
1455
1503
 
1456
-
1504
+
1457
1505
  Removed tabla theme
1458
1506
 
1459
1507
 
@@ -1481,7 +1529,7 @@ Hobo::HoboHelper -- new hook for customising URLs - base_url_for
1481
1529
  New rake task generate_tag_reference. Creates simple HTML reference
1482
1530
  docs, including any inline documentation comments (found
1483
1531
  immediately above the <def>)
1484
-
1532
+
1485
1533
  ModelController
1486
1534
 
1487
1535
  Made it possible to have a custom #permission_denined and
@@ -1490,7 +1538,7 @@ Hobo::HoboHelper -- new hook for customising URLs - base_url_for
1490
1538
  Improved logic for figuring out redirect after destroy
1491
1539
 
1492
1540
  Fix to bug where we would turn pagination off when we shouldn't
1493
-
1541
+
1494
1542
  We now have a list of mime-types that we *don't* paginate for
1495
1543
  (can be extended)
1496
1544
 
@@ -1521,7 +1569,7 @@ Hobo::HoboHelper -- new hook for customising URLs - base_url_for
1521
1569
 
1522
1570
  Allowing belongs_to and has_one associations to be set by name
1523
1571
  during mass-assignment
1524
-
1572
+
1525
1573
  e.g. person.attributes = { :department => 'Sales' }
1526
1574
 
1527
1575
  Automatic scopes -- give up silently if there's a problem with the DB
@@ -1532,7 +1580,7 @@ Hobo::HoboHelper -- new hook for customising URLs - base_url_for
1532
1580
  Auto-completers are now working again. The tag to use is
1533
1581
  <name-one>. Should be a how-to for this availabe soon.
1534
1582
 
1535
- In-place-edits are working again
1583
+ In-place-edits are working again
1536
1584
 
1537
1585
  New controller method call_dryml_tag (added by DRYML template
1538
1586
  handler). Calls a tag and returns the result as a string.
@@ -1546,7 +1594,7 @@ Hobo::HoboHelper -- new hook for customising URLs - base_url_for
1546
1594
  Refactored the DRYML parser to make it easier to parse DRYML in other contexts
1547
1595
 
1548
1596
  Rapid:
1549
-
1597
+
1550
1598
  Improvements to wording on index-page
1551
1599
 
1552
1600
  Display the users name, not login in the account-nav
@@ -1593,7 +1641,7 @@ contain edited highlights of the commit log.
1593
1641
 
1594
1642
  Moving the part-contexts javascripts from the very end of the
1595
1643
  output, to the end of <body>
1596
-
1644
+
1597
1645
  The script tag must now be output by the <page>, instead of
1598
1646
  being appended automatically by DRYML. This is done in
1599
1647
  <simple-layout/>
@@ -1649,81 +1697,81 @@ contain edited highlights of the commit log.
1649
1697
  Fix to <view for='text'/>
1650
1698
 
1651
1699
  Improvements to <table-plus>
1652
-
1700
+
1653
1701
  Ability to sort by name of 'this' when 'this' is one of the
1654
1702
  fields
1655
-
1703
+
1656
1704
  Keep table headings in when the table is empty
1657
-
1705
+
1658
1706
  Don't include page nav if the collection doesn't support it
1659
1707
 
1660
1708
  Improvements to rapid pages
1661
-
1709
+
1662
1710
  Allowing has_many associations in forms
1663
-
1711
+
1664
1712
  Allowing the primary collection on a show page to be provided by
1665
1713
  an instance variable (so that filtering/searching/pagination are
1666
1714
  supported)
1667
-
1715
+
1668
1716
  Tidy of <show-page>
1669
-
1717
+
1670
1718
  <index-page> -- improved wording
1671
1719
 
1672
1720
  Fixes to <index-page>
1673
1721
 
1674
1722
  <account-nav> make 'logged in as bob' a link to current_user
1675
-
1723
+
1676
1724
  Factored out default <collection> into <base-collection>, and
1677
1725
  fixes to <collection-preview>
1678
-
1726
+
1679
1727
  <base-card> -- add 'edit' link
1680
1728
 
1681
1729
  <base-card> change 'title' param to 'heading' and make it easier
1682
1730
  to provide your own
1683
-
1731
+
1684
1732
  <creation-details> use a div rather than a span
1685
-
1733
+
1686
1734
  Fix to <select-many>
1687
1735
 
1688
1736
  Fix to <select-menu>
1689
-
1737
+
1690
1738
  Fix to <input for='datetime'>
1691
-
1739
+
1692
1740
  Rapid forms: switching to <select-one> and <select-many> naming
1693
-
1741
+
1694
1742
  <form> -- don't include auth token on GET forms
1695
-
1743
+
1696
1744
  Rapid: <belongs-to-menu-editor> -- don't show 'View' link if the
1697
1745
  thing is not linkable
1698
-
1746
+
1699
1747
  Rapid: adding sort attribute to <belongs-to-menu-editor>
1700
1748
 
1701
1749
  Rapid: default 'no-filter' option for filter-menu
1702
-
1750
+
1703
1751
  Rapid: Fix to extraneous whitespace in <you>
1704
-
1752
+
1705
1753
  Rapid: better guess of label on <count>
1706
-
1754
+
1707
1755
  Rapid: Use association name rather than class name in css classes
1708
1756
  on <a> tags (when available)
1709
1757
 
1710
1758
  Rapid: Fix to use of <else> with <a>
1711
-
1759
+
1712
1760
  Removed 'all' method from ScopedProxy - delegates to the model
1713
1761
  class instead
1714
-
1762
+
1715
1763
  Fix to origin_attribute on scoped associations
1716
1764
 
1717
1765
  Fix to with_abc automatic scopes
1718
1766
 
1719
1767
  New automatic scopes 'include' and 'search', and improvements to
1720
1768
  order_by scope
1721
-
1769
+
1722
1770
  Scopes: fix to parameterised scopes on associations
1723
1771
 
1724
1772
  Scopes: new apply_scopes method for models and has_many
1725
1773
  associations
1726
-
1774
+
1727
1775
  Pass a hash of scope-name => scope-arguments (single valur or
1728
1776
  array), the result will be scoped accordingly, but only if the
1729
1777
  first argument to the scope is not blank. It's designed to be
@@ -1734,90 +1782,90 @@ contain edited highlights of the commit log.
1734
1782
  ajax actions
1735
1783
 
1736
1784
  Hobo::ModelController -- Fix to flash message after update
1737
-
1785
+
1738
1786
  Hobo::ModelController -- fix to redirection after submitting a
1739
1787
  form
1740
1788
 
1741
1789
  Hobo::ModelController -- cleaning up sorting and filtering
1742
-
1790
+
1743
1791
  Hobo::ModelController -- make reorder one of the automatic
1744
1792
  :write_only actions if the model has the position_column method
1745
1793
 
1746
1794
  <with-fields> better error reporting
1747
1795
 
1748
1796
  Hobo::ModelController -- adding automatic reorder action
1749
-
1797
+
1750
1798
  Works with acts_as_list and scriptaculous drag and drop
1751
1799
  re-ordering
1752
-
1800
+
1753
1801
  Hobo::Model adding :managed => true option to has_many
1754
-
1802
+
1755
1803
  Only valid with the :through option. Records of the joining
1756
1804
  model will be created and destroyed as required when this record
1757
1805
  is saved, in order to honour the contents of the association at
1758
1806
  save time.
1759
-
1807
+
1760
1808
  Hobo::Model -- adding .user_update
1761
1809
 
1762
1810
  Hobo::Model -- fix to user_find
1763
-
1811
+
1764
1812
  Hobo::HoboHelper -- #map_this (used by repeat) will set this_key
1765
1813
  when iterating over a hash
1766
-
1814
+
1767
1815
  DRYML: made this_field_reflection do a better job of figuring out
1768
1816
  the current reflection
1769
-
1817
+
1770
1818
  DRYML: adding this_key -- gives you the current key when
1771
1819
  <repeat>ing on a hash
1772
-
1820
+
1773
1821
  DRYML: Error message for invalid attributes on parameter tags,
1774
1822
  e.g. <foo: if-'...'>
1775
-
1823
+
1776
1824
  Hobo module - fix to permission checks on unexpected objects
1777
1825
 
1778
1826
  Hobo module -- always return false for can_create? on has_many
1779
1827
  associations that are not 'simple'
1780
-
1828
+
1781
1829
  (i.e. they have conditions)
1782
-
1830
+
1783
1831
  DRYML: Fix for replacing an overridden tag parameter
1784
-
1832
+
1785
1833
  Rapid pages: new submit label on show page (add to collection)
1786
-
1834
+
1787
1835
  Rapid pages: Add param to <show-page>
1788
-
1836
+
1789
1837
  Rapid pages: by default, append app-name to every title, override
1790
1838
  with full-title attribute (<base-page>)
1791
-
1839
+
1792
1840
  Rapid pages: <show-page> -- update primary collection count when
1793
1841
  an item is deleted
1794
-
1842
+
1795
1843
  Rapid pages: fix on <show-page>
1796
-
1844
+
1797
1845
  Rapid pages: make edit link on show-page check if the edit action
1798
1846
  is linkable
1799
-
1847
+
1800
1848
  Rapid forms: adding inputs (just textareas) for textile and
1801
1849
  markdown
1802
-
1850
+
1803
1851
  front_controller generator -- use <collection-preview> in
1804
1852
  index.dryml
1805
-
1853
+
1806
1854
  Rapid generics: adding support for <collection with='&MyModel'/>
1807
1855
 
1808
1856
  Rapid tags: switching to <main-nav> tag, called from simple-layout
1809
-
1857
+
1810
1858
  hobo_model_resource generator -- removing creating of (rails
1811
1859
  style) resource route
1812
1860
 
1813
1861
  Improvements to rapid pages
1814
-
1862
+
1815
1863
  Allowing has_many associations in forms
1816
-
1864
+
1817
1865
  Allowing the primary collection on a show page to be provided by
1818
1866
  an instance variable (so that filtering/searching/pagination are
1819
1867
  supported)
1820
-
1868
+
1821
1869
  Rapid: Fix to use of <else> with <a>
1822
1870
 
1823
1871
  Removed 'all' method from ScopedProxy - delegates to the model
@@ -1859,10 +1907,10 @@ contain edited highlights of the commit log.
1859
1907
 
1860
1908
  Adding support for 'this' psuedo-field to <with-fields> and
1861
1909
  <with-fields-names>
1862
-
1910
+
1863
1911
  In particular, this makes it possible to include the object
1864
1912
  itself in a table plus column
1865
-
1913
+
1866
1914
  Adding a general <view> for ActiveRecord objects (just <a/>)
1867
1915
 
1868
1916
  Allowing lookup of polymorphic tags to include ActiveRecord::Base
@@ -1896,7 +1944,7 @@ Core extentions
1896
1944
 
1897
1945
 
1898
1946
  hobo generator
1899
-
1947
+
1900
1948
  application.dryml now has a generated <app-name> tag
1901
1949
 
1902
1950
 
@@ -1994,7 +2042,7 @@ Hobo helpers
1994
2042
 
1995
2043
  can_view? now utilises some simple cacheing
1996
2044
 
1997
- signup_url now defaults to the
2045
+ signup_url now defaults to the
1998
2046
 
1999
2047
  linkable? no longer accepts an array as parameter
2000
2048
 
@@ -2042,7 +2090,7 @@ DRYML
2042
2090
  the begining and end of the default content.
2043
2091
 
2044
2092
  Note these are all just syntactic sugar for things you can do
2045
- already with <param-content/> and <title: replace> /
2093
+ already with <param-content/> and <title: replace> /
2046
2094
  <title: restore/>
2047
2095
 
2048
2096
  When changing the context with the ':' shorthand, now use dashes,
@@ -2053,7 +2101,7 @@ DRYML
2053
2101
 
2054
2102
  Control attributes <my-tag if> is equivalent to <my-tag if="&this"/>
2055
2103
  (remember these test for blank? / not blank?, not Ruby trueness)
2056
-
2104
+
2057
2105
  this_type now never returns AssociationReflections,
2058
2106
  this_field_reflection does
2059
2107
 
@@ -2069,7 +2117,7 @@ DRYML
2069
2117
 
2070
2118
  Fix: using alias-of with a reserved word was broken
2071
2119
 
2072
-
2120
+
2073
2121
  Hobo models
2074
2122
 
2075
2123
  New method Model.named to find things by name,
@@ -2152,7 +2200,7 @@ Scopes
2152
2200
 
2153
2201
  published
2154
2202
  not_published
2155
-
2203
+
2156
2204
  For the various date/time columns (these must end _at, e.g. pulished_at)
2157
2205
 
2158
2206
  published_before(x)
@@ -2164,7 +2212,7 @@ Scopes
2164
2212
  order_by(field_name) -- add an ORDER BY clause
2165
2213
  limit(n) -- add a LIMIT clause
2166
2214
  recent(n) -- orders by created_at and limits to n records
2167
-
2215
+
2168
2216
 
2169
2217
 
2170
2218
  Hobo model controller
@@ -2198,7 +2246,7 @@ Hobo model controller
2198
2246
 
2199
2247
  Support for scopes on declarative index actions:
2200
2248
 
2201
- index_action :scope => :my_scope
2249
+ index_action :scope => :my_scope
2202
2250
 
2203
2251
  New method filter_by for easily adding filtering to index actions, e.g.
2204
2252
 
@@ -2242,7 +2290,7 @@ Bundles
2242
2290
  selective about which models and controllers they include.
2243
2291
 
2244
2292
  Adding support for: belongs_to :foo, :polymorphic => :optional
2245
-
2293
+
2246
2294
  Magic option names are now available inside the model and controller *instances*
2247
2295
 
2248
2296
  Bundle options with defaults now work with nested option hashes
@@ -2276,7 +2324,7 @@ Rapid tags: general
2276
2324
  collection was obtained
2277
2325
 
2278
2326
  So, unless something has changed:
2279
-
2327
+
2280
2328
  collection.origin.send(collection.origin_attribute) == collection
2281
2329
 
2282
2330
  This API is made available on all association proxies, regular
@@ -2331,12 +2379,12 @@ Rapid tags: forms
2331
2379
  <after-submit> -- can now do
2332
2380
 
2333
2381
  <after-submit go-back> (requires session[:previous_uri])
2334
-
2382
+
2335
2383
  and
2336
2384
 
2337
2385
  <after-submit stay-here>
2338
2386
 
2339
-
2387
+
2340
2388
  Rapid tags: navigation
2341
2389
 
2342
2390
  Now assumes will_paginate style pagination instead of classic_pagination
@@ -2422,7 +2470,7 @@ DRYML
2422
2470
  Rapid
2423
2471
 
2424
2472
  New generic tag <collection>. Used to create type-specific
2425
- renderings of collections. E.g. you can
2473
+ renderings of collections. E.g. you can
2426
2474
 
2427
2475
  <def tag="collection" for="Comment">
2428
2476
 
@@ -2446,7 +2494,7 @@ Rapid pages
2446
2494
 
2447
2495
  Plugins
2448
2496
 
2449
- Changing from hobo_* naming convention to rapid_*
2497
+ Changing from hobo_* naming convention to rapid_*
2450
2498
 
2451
2499
 
2452
2500
 
@@ -2496,7 +2544,7 @@ Hobo models
2496
2544
  (within the "fields do" block)
2497
2545
 
2498
2546
  Can also write
2499
- username :string, :login => true, :validate => false
2547
+ username :string, :login => true, :validate => false
2500
2548
  to disable the automatic login validations (see hobo/lib/hobo/user.rb)
2501
2549
 
2502
2550
  Plus two new ones for fields: :name => true and :description => true.
@@ -2571,7 +2619,7 @@ Hobo user controller
2571
2619
  "Account not available" is now a separate page
2572
2620
  (<account-disabled-page>) instead of just a flash message.
2573
2621
 
2574
- Fixed occasional missing template bug
2622
+ Fixed occasional missing template bug
2575
2623
 
2576
2624
 
2577
2625
 
@@ -2612,7 +2660,7 @@ Hobo helpers
2612
2660
  association, defaults to #this.
2613
2661
 
2614
2662
  New helper #font_models. Returns a list of models that are
2615
- candidates to appear on the default front page and main nav.
2663
+ candidates to appear on the default front page and main nav.
2616
2664
 
2617
2665
  Changes to linkable? Subsite is now a named option (:subsite =>
2618
2666
  "admin"), the target of the links defaults to #this and the action
@@ -2624,7 +2672,7 @@ Hobo routing
2624
2672
  Now automatically updates routes without restarting the server in
2625
2673
  dev mode (yay!)
2626
2674
 
2627
-
2675
+
2628
2676
  Site search -- don't search for records that are not linkable
2629
2677
 
2630
2678
 
@@ -2729,7 +2777,7 @@ DRYML
2729
2777
  New helper 'element'. Use in place of Rails' tag and content_tag
2730
2778
  helper. It dasherizes attributes given as symbols.
2731
2779
 
2732
-
2780
+
2733
2781
  Migration generator
2734
2782
 
2735
2783
  Better support for STI. It no longer wants to generate tables for
@@ -2755,7 +2803,7 @@ Hobo Rapid
2755
2803
 
2756
2804
  Upgraded to latest low_pro.js
2757
2805
 
2758
-
2806
+
2759
2807
  New theme 'Clean'
2760
2808
 
2761
2809
  New helper 'linkable?' can be given a record or class, and tells you
@@ -2786,7 +2834,7 @@ Hobo Rapid
2786
2834
  <theme-stylesheet> now takes a 'name' attribute
2787
2835
 
2788
2836
  <delete-button> takes a 'subsite' attribute
2789
-
2837
+
2790
2838
 
2791
2839
  Rake tasks
2792
2840
 
@@ -2863,7 +2911,7 @@ Change to hobo command:
2863
2911
 
2864
2912
  Migration generator
2865
2913
 
2866
- Automatically ignores non-Hobo models (and associated tables)
2914
+ Automatically ignores non-Hobo models (and associated tables)
2867
2915
 
2868
2916
  Hobo::Migrations.ignore_models is now deprecated.
2869
2917
 
@@ -2951,7 +2999,7 @@ DRYML
2951
2999
  e.g. part_locals="@user". Note that inside the part this creates a
2952
3000
  local variable "user". Don't user @user inside the part. It's just a
2953
3001
  convenience to avoid the need to do <set user="&@user"/>
2954
-
3002
+
2955
3003
  Fix: failure to accumulate CSS class names when merging attributes.
2956
3004
 
2957
3005
  DRYML now gives the type returned by #field_type (when available)
@@ -3000,7 +3048,7 @@ Rich data types
3000
3048
 
3001
3049
  Hobo models
3002
3050
 
3003
- In fields declaration:
3051
+ In fields declaration:
3004
3052
 
3005
3053
  Got rid of weird thing where providing :length meant the type
3006
3054
  defaulted to :string
@@ -3011,7 +3059,7 @@ Hobo models
3011
3059
  were in the model controller. e.g. Dates can be represented as
3012
3060
  Hashes of month, day etc. Chronic will be used to parse dates if
3013
3061
  available. Object references (e.g. belongs_to relationships) can be
3014
- set with "@<typed-id>" as before.
3062
+ set with "@<typed-id>" as before.
3015
3063
 
3016
3064
  "fields do" can optionally be used with a parameter if you don't
3017
3065
  like the instance_eval hackery:
@@ -3061,7 +3109,7 @@ Helpers
3061
3109
 
3062
3110
  #dom_id now returns "" when a dom_id cannot be generated (used to
3063
3111
  raise an error)
3064
-
3112
+
3065
3113
  #map_this now works with ranges (used by DRYML's repeat)
3066
3114
 
3067
3115
  #current_page_url returns request.request_uri without the query string
@@ -3105,7 +3153,7 @@ Model controller
3105
3153
  to have them paginated.
3106
3154
 
3107
3155
  New declaration 'auto_actions' allows you to select which actions
3108
- Hobo provides for you automatically.
3156
+ Hobo provides for you automatically.
3109
3157
 
3110
3158
  # White list
3111
3159
  auto_actions :show, :index
@@ -3148,7 +3196,7 @@ Model controller
3148
3196
  response.
3149
3197
 
3150
3198
  <NotFoundPage> used as the default 404 response.
3151
-
3199
+
3152
3200
 
3153
3201
  User controller
3154
3202
 
@@ -3222,7 +3270,7 @@ Tag library: Rapid forms
3222
3270
 
3223
3271
  New <input> for enum-strings - a select menu.
3224
3272
 
3225
- New <input> for big decimals
3273
+ New <input> for big decimals
3226
3274
 
3227
3275
  <remote_method_button> now supports non ajax remote method calls
3228
3276
  (when no update="..." is given)
@@ -3280,7 +3328,7 @@ namespaced). This will dump the current database into test
3280
3328
  fixtures. The nice part is that it won't overwrite symbolic names
3281
3329
  you've given to rows in your fixtures, so you can round-trip with it:
3282
3330
  rake db:fixtures:load, run up the app and create some new data, rake
3283
- dump_fixtures.
3331
+ dump_fixtures.
3284
3332
 
3285
3333
 
3286
3334
  Migration generator
@@ -3304,7 +3352,7 @@ Hobo users
3304
3352
 
3305
3353
  If the model name is "User", the routes generated are simply:
3306
3354
 
3307
- /login
3355
+ /login
3308
3356
  /logout
3309
3357
  /signup
3310
3358
 
@@ -3377,14 +3425,14 @@ Core extensions
3377
3425
 
3378
3426
  string_or_nil._?.length
3379
3427
 
3380
- is equivalent to
3428
+ is equivalent to
3381
3429
 
3382
3430
  string_or_nil && string_or_nil.length
3383
3431
 
3384
3432
  Hobo extensions to HashWithIndifferentAccess fixed to always return
3385
3433
  indifferent hashes.
3386
3434
 
3387
-
3435
+
3388
3436
  Hobo controller
3389
3437
 
3390
3438
  Fix to #render_tags (problem with part contexts javascript)
@@ -3522,8 +3570,8 @@ Hobo Rapid
3522
3570
  Fix to new link in <ShowCollectionPage>
3523
3571
 
3524
3572
  <image> tag removed from default ajax progress.
3525
-
3526
-
3573
+
3574
+
3527
3575
 
3528
3576
  Dryml
3529
3577
 
@@ -3564,7 +3612,7 @@ Hobo helpers
3564
3612
  Multiple user models
3565
3613
 
3566
3614
  Hobo now supports multiple user models, with independent sign-up /
3567
- log-in/out for each.
3615
+ log-in/out for each.
3568
3616
 
3569
3617
  The controller needs to declare hobo_user_controller instead of
3570
3618
  hobo_model_controller (it still has all the hobo_model_controller
@@ -3652,7 +3700,7 @@ Migration generator
3652
3700
 
3653
3701
  Hobo::Migrations.ignore_tables
3654
3702
 
3655
- 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
3656
3704
 
3657
3705
  Hobo::Migrations.ignore_models
3658
3706
 
@@ -3716,7 +3764,7 @@ DRYML
3716
3764
 
3717
3765
  <def tag="card" for="User"/>...</def>
3718
3766
  <def tag="card" for="BlogPost">...</def>
3719
-
3767
+
3720
3768
  call with <card for_type/>
3721
3769
 
3722
3770
  The actual tag called will be selected according to the type of
@@ -4013,7 +4061,7 @@ DRYML
4013
4061
 
4014
4062
  <def tag="a">
4015
4063
  <def tag="panel">...</def>
4016
-
4064
+
4017
4065
  ... Any call to panel in here, or in the tagbody of the call to
4018
4066
  <a> will get the local definition. Note that local tags are full
4019
4067
  closures and have access to state from the containing tag...
@@ -4034,7 +4082,7 @@ DRYML
4034
4082
  Think of these as the dryml equivalent of the suffix 'if' and 'unless' in Ruby.
4035
4083
 
4036
4084
  If you give the attributes a string, it is treated test for a
4037
- non-blank field, e.g. if="address" is like
4085
+ non-blank field, e.g. if="address" is like
4038
4086
  <if q="&!this.address.blank?">
4039
4087
 
4040
4088
  You can use <else> after tags with these attributes on them.
@@ -4106,7 +4154,7 @@ repository.
4106
4154
 
4107
4155
  DRYML Core Tags
4108
4156
 
4109
- <dynamic_tag/> renamed to <call_tag/>
4157
+ <dynamic_tag/> renamed to <call_tag/>
4110
4158
 
4111
4159
  <display_name/> displays "(not available)" if the context is nil
4112
4160
 
@@ -4124,10 +4172,10 @@ DRYML Core Tags
4124
4172
  DRYML Helpers
4125
4173
 
4126
4174
  #param_name_for will strip a trailing '?' if there is one.
4127
-
4175
+
4128
4176
 
4129
4177
  Hobo Rapid Tags
4130
-
4178
+
4131
4179
  <boolean_field> now also generates a hidden tag with the same name
4132
4180
  and value '0' like the rails helper. This fixes HTMLs broken idea of
4133
4181
  how to handle checkboxes (you get a 0 value if the checkbox is not
@@ -4274,7 +4322,7 @@ Hobo Rapid
4274
4322
  inner-tag 'rapid_javascripts'. e.g. you can do
4275
4323
 
4276
4324
  <page rapid_javascripts.tiny_mce="#true">
4277
-
4325
+
4278
4326
  to enable TinyMCE support.
4279
4327
 
4280
4328
  Removed helper current_user_in?
@@ -4294,7 +4342,7 @@ Hobo Rapid
4294
4342
  object form now has a css class added: either the model class name, or
4295
4343
  "new_<class>"
4296
4344
 
4297
- 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
4298
4346
 
4299
4347
 
4300
4348
  Model Extensions
@@ -4358,7 +4406,7 @@ Model controllers
4358
4406
  Removed customisation hooks, create_response,
4359
4407
  invalid_create_response, update_response etc.
4360
4408
 
4361
- New mechanism for customising actions.
4409
+ New mechanism for customising actions.
4362
4410
 
4363
4411
  def create
4364
4412
  hobo_create ...customisation args...
@@ -4395,7 +4443,7 @@ Permission system
4395
4443
  can_edit? now works better with boolean fields
4396
4444
 
4397
4445
  can_call_<method>? renamed to <method>_callable_by?
4398
-
4446
+
4399
4447
 
4400
4448
  DRYML
4401
4449
 
@@ -4561,7 +4609,7 @@ Hobo::Controller
4561
4609
 
4562
4610
  hobo_ajax_reponse will use @this if no page context is passed
4563
4611
 
4564
-
4612
+
4565
4613
  Module defined tags
4566
4614
 
4567
4615
  Can provide a predicate as a block, e.g. to have a different nav bar onced logged in.
@@ -4576,7 +4624,7 @@ Module defined tags
4576
4624
 
4577
4625
  DRYML
4578
4626
 
4579
- Changes to taglib cache system.
4627
+ Changes to taglib cache system.
4580
4628
 
4581
4629
  A list of known HTML tags is defined in lib/hobo/static_tags. These
4582
4630
  are available as an array by calling Hobo.static_tags. Any tags
@@ -4680,7 +4728,7 @@ Hobo Rapid
4680
4728
 
4681
4729
  has_many_editor
4682
4730
  belongs_to_editor
4683
-
4731
+
4684
4732
  string_editor
4685
4733
  textarea_editor
4686
4734
  password_editor
@@ -4713,7 +4761,7 @@ New feature - Composite models
4713
4761
 
4714
4762
  Experimental new feature - mapping tags
4715
4763
 
4716
- New feature - Predicate dispatch modules
4764
+ New feature - Predicate dispatch modules
4717
4765
 
4718
4766
 
4719
4767
  === Release 0.4.3 ===
@@ -5098,7 +5146,7 @@ Model Extensions (hobo_model)
5098
5146
 
5099
5147
  class User < ActiveRecord::Base
5100
5148
  set_default_order "name"
5101
- end
5149
+ end
5102
5150
 
5103
5151
  To use: User.find(:all, :order => :default). Default order is used
5104
5152
  by the hobo_model_controller