hobo 1.3.0.pre12 → 1.3.0.pre13
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/Rakefile +1 -2
- data/VERSION +1 -1
- data/doctests/hobo/lifecycles.rdoctest +0 -1
- data/doctests/hobo/model.rdoctest +0 -5
- data/doctests/hobo/multi_model_forms.rdoctest +4 -5
- data/doctests/hobo/scopes.rdoctest +4 -5
- data/doctests/prepare_testapp.rb +2 -1
- data/lib/generators/hobo/basic/basic_generator.rb +5 -4
- data/lib/generators/hobo/basic/templates/dryml_taglibs_initializer.rb +1 -0
- data/lib/generators/hobo/routes/templates/hobo_routes.rb.erb +1 -1
- data/lib/hobo/controller.rb +9 -2
- data/lib/hobo/controller/model.rb +5 -6
- data/lib/hobo/rapid/taglibs/rapid_forms.dryml +1 -1
- data/lib/hobo/rapid/taglibs/rapid_i18n.dryml +1 -1
- metadata +14 -13
data/Rakefile
CHANGED
@@ -36,8 +36,7 @@ Rake::TestTask.new(:test) { |t|
|
|
36
36
|
namespace "test" do
|
37
37
|
desc "Run the doctests"
|
38
38
|
task :doctest do |t|
|
39
|
-
files=Dir['
|
40
|
-
# note, tests in doctest/hobo/ are out of date
|
39
|
+
files=Dir['doctests/**/*.rdoctest'].map {|f| File.expand_path(f)}.join(' ')
|
41
40
|
exit(1) if !system("#{RUBYDOCTEST} #{files}")
|
42
41
|
end
|
43
42
|
end
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
1.3.0.
|
1
|
+
1.3.0.pre13
|
@@ -28,13 +28,12 @@ Contents
|
|
28
28
|
:host => "localhost",
|
29
29
|
:username => mysql_user,
|
30
30
|
:password => mysql_password)
|
31
|
-
>> $:.unshift File.
|
32
|
-
>> $:.unshift File.
|
33
|
-
>> $:.unshift File.
|
31
|
+
>> $:.unshift File.expand_path('../../../../hobo_support/lib', __FILE__)
|
32
|
+
>> $:.unshift File.expand_path('../../../../hobo_fields/lib', __FILE__)
|
33
|
+
>> $:.unshift File.expand_path('../../../../dryml/lib', __FILE__)
|
34
|
+
>> $:.unshift File.expand_path('../../../lib', __FILE__)
|
34
35
|
>> gem 'will_paginate', ">= 3.0.pre"
|
35
36
|
>> require 'will_paginate'
|
36
|
-
>> require 'hobo_support'
|
37
|
-
>> require 'hobo_fields'
|
38
37
|
>> require 'hobo'
|
39
38
|
>> ActiveRecord::Base.logger = ActiveSupport::BufferedLogger.new(StringIO.new(''))
|
40
39
|
>>
|
@@ -67,17 +67,16 @@ We also need to get ActiveRecord set up with a database connection
|
|
67
67
|
Some load path manipulation:
|
68
68
|
{.hidden}
|
69
69
|
|
70
|
-
>> $:.unshift File.
|
71
|
-
>> $:.unshift File.
|
72
|
-
>> $:.unshift File.
|
70
|
+
>> $:.unshift File.expand_path('../../../../hobo_support/lib', __FILE__)
|
71
|
+
>> $:.unshift File.expand_path('../../../../hobo_fields/lib', __FILE__)
|
72
|
+
>> $:.unshift File.expand_path('../../../../dryml/lib', __FILE__)
|
73
|
+
>> $:.unshift File.expand_path('../../../lib', __FILE__)
|
73
74
|
{.hidden}
|
74
75
|
|
75
76
|
And we'll require hobo:
|
76
77
|
{.hidden}
|
77
78
|
|
78
79
|
>> require 'will_paginate'
|
79
|
-
>> require 'hobo_support'
|
80
|
-
>> require 'hobo_fields'
|
81
80
|
>> require 'hobo'
|
82
81
|
{.hidden}
|
83
82
|
|
data/doctests/prepare_testapp.rb
CHANGED
@@ -7,10 +7,11 @@ module Hobo
|
|
7
7
|
end
|
8
8
|
|
9
9
|
def copy_rapid_files
|
10
|
-
template 'application.dryml.erb',
|
11
|
-
copy_file 'application.css',
|
12
|
-
copy_file 'dryml-support.js',
|
13
|
-
copy_file '
|
10
|
+
template 'application.dryml.erb', 'app/views/taglibs/application.dryml'
|
11
|
+
copy_file 'application.css', 'public/stylesheets/application.css'
|
12
|
+
copy_file 'dryml-support.js', 'public/javascripts/dryml-support.js'
|
13
|
+
copy_file 'dryml_taglibs_initializer.rb', 'config/initializers/dryml_taglibs.rb'
|
14
|
+
copy_file 'guest.rb', 'app/models/guest.rb'
|
14
15
|
end
|
15
16
|
|
16
17
|
end
|
@@ -0,0 +1 @@
|
|
1
|
+
Dryml.precompile_taglibs if File.basename($0) != "rake" && Rails.env.production?
|
@@ -17,7 +17,7 @@
|
|
17
17
|
routes = gr == 'lifecycle_routes' ? router.send(gr.to_sym, subsite) : router.send(gr.to_sym) -%>
|
18
18
|
<%- unless routes.empty? -%>
|
19
19
|
|
20
|
-
<%= " " if subsite %><%=
|
20
|
+
<%= " " if subsite %><%= %(# #{gr.humanize} for controller "#{controller.controller_path}") %>
|
21
21
|
<%- end -%>
|
22
22
|
<%- for route in routes -%>
|
23
23
|
<%= " " if subsite %><%= route %>
|
data/lib/hobo/controller.rb
CHANGED
@@ -49,7 +49,7 @@ module Hobo
|
|
49
49
|
|
50
50
|
def redirect_to_with_object_url(destination, *args)
|
51
51
|
if destination.is_one_of?(String, Hash, Symbol)
|
52
|
-
redirect_to_without_object_url(destination)
|
52
|
+
redirect_to_without_object_url(destination, *args)
|
53
53
|
else
|
54
54
|
redirect_to_without_object_url(object_url(destination, *args))
|
55
55
|
end
|
@@ -70,7 +70,14 @@ module Hobo
|
|
70
70
|
|
71
71
|
|
72
72
|
def ajax_update_response(page_path, render_specs, results={})
|
73
|
-
|
73
|
+
if page_path
|
74
|
+
rr = ActionController::Routing::Routes.recognize_path(page_path)
|
75
|
+
identifier = view_context.view_paths.find( rr[:action],
|
76
|
+
rr[:controller],
|
77
|
+
false,
|
78
|
+
view_context.lookup_context.instance_variable_get('@details')).identifier
|
79
|
+
renderer = Dryml.page_renderer(view_context, identifier, [], rr[:controller])
|
80
|
+
end
|
74
81
|
|
75
82
|
render :update do |page|
|
76
83
|
page << "var _update = typeof Hobo == 'undefined' ? Element.update : Hobo.updateElement;"
|
@@ -358,16 +358,15 @@ module Hobo
|
|
358
358
|
@invalid_record = this
|
359
359
|
opt = ActionController::Routing::Routes.recognize_path(params[:page_path])
|
360
360
|
controller = opt[:controller]
|
361
|
-
|
362
|
-
view = default_action if view == Dryml::EMPTY_PAGE
|
361
|
+
action = opt[:action]
|
363
362
|
|
364
363
|
# Hack fix for Bug 477. See also bug 489.
|
365
|
-
if self.class.name == "#{controller.camelize}Controller" &&
|
364
|
+
if self.class.name == "#{controller.camelize}Controller" && action == "index"
|
366
365
|
params['action'] = 'index'
|
367
366
|
self.action_name = 'index'
|
368
367
|
index
|
369
368
|
else
|
370
|
-
render :template => "#{controller}/#{
|
369
|
+
render :template => "#{controller}/#{action}"
|
371
370
|
end
|
372
371
|
else
|
373
372
|
render :action => default_action
|
@@ -452,7 +451,7 @@ module Hobo
|
|
452
451
|
do_pagination = options.delete(:paginate) && finder.respond_to?(:paginate)
|
453
452
|
finder = Array.wrap(options.delete(:scope)).inject(finder) { |a, v| a.send(*Array.wrap(v).flatten) }
|
454
453
|
|
455
|
-
options[:order] =
|
454
|
+
options[:order] = finder.default_order unless options[:order] || finder.try.order_values.present?
|
456
455
|
|
457
456
|
if do_pagination
|
458
457
|
options.reverse_merge!(:page => params[:page] || 1)
|
@@ -735,7 +734,7 @@ module Hobo
|
|
735
734
|
|
736
735
|
def hobo_completions(attribute, finder, options={})
|
737
736
|
options = options.reverse_merge(:limit => 10, :param => :query, :query_scope => "#{attribute}_contains")
|
738
|
-
finder = finder.limit(options[:limit]) unless finder.
|
737
|
+
finder = finder.limit(options[:limit]) unless finder.try.limit_value
|
739
738
|
|
740
739
|
begin
|
741
740
|
finder = finder.send(options[:query_scope], params[options[:param]])
|
@@ -223,7 +223,7 @@ The standard form tag does not have any parameters, nor does it have any default
|
|
223
223
|
page_path = if (request.post? || request.put?) && params[:page_path]
|
224
224
|
params[:page_path]
|
225
225
|
else
|
226
|
-
|
226
|
+
request.fullpath
|
227
227
|
end
|
228
228
|
page_path_hidden = hidden_field_tag("page_path", page_path)
|
229
229
|
end
|
@@ -115,7 +115,7 @@ With the `your` attribute and in the special case the context is a Hobo::Model::
|
|
115
115
|
attrs = {}
|
116
116
|
all_attributes.each_pair{|k,v| attrs[k.to_sym] = v} -%>
|
117
117
|
<% if your && belong_class < Hobo::Model::User && this.kind_of?(Hobo::Model::User) && I18n.locale == :en -%>
|
118
|
-
<your key="&collection" merge-attrs="&{:
|
118
|
+
<your key="&collection" merge-attrs="&{:name=>this.name}.merge(attrs)" capitalize>
|
119
119
|
<%= belong_class.human_attribute_name(collection.to_sym, attrs) %>
|
120
120
|
</your>
|
121
121
|
<% else -%>
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: hobo
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash: -
|
4
|
+
hash: -1637175964
|
5
5
|
prerelease: true
|
6
6
|
segments:
|
7
7
|
- 1
|
8
8
|
- 3
|
9
9
|
- 0
|
10
|
-
-
|
11
|
-
version: 1.3.0.
|
10
|
+
- pre13
|
11
|
+
version: 1.3.0.pre13
|
12
12
|
platform: ruby
|
13
13
|
authors:
|
14
14
|
- Tom Locke
|
@@ -16,7 +16,7 @@ autorequire:
|
|
16
16
|
bindir: bin
|
17
17
|
cert_chain: []
|
18
18
|
|
19
|
-
date: 2010-10-
|
19
|
+
date: 2010-10-20 00:00:00 -04:00
|
20
20
|
default_executable:
|
21
21
|
dependencies:
|
22
22
|
- !ruby/object:Gem::Dependency
|
@@ -59,13 +59,13 @@ dependencies:
|
|
59
59
|
requirements:
|
60
60
|
- - "="
|
61
61
|
- !ruby/object:Gem::Version
|
62
|
-
hash: -
|
62
|
+
hash: -1637175964
|
63
63
|
segments:
|
64
64
|
- 1
|
65
65
|
- 3
|
66
66
|
- 0
|
67
|
-
-
|
68
|
-
version: 1.3.0.
|
67
|
+
- pre13
|
68
|
+
version: 1.3.0.pre13
|
69
69
|
type: :runtime
|
70
70
|
version_requirements: *id003
|
71
71
|
- !ruby/object:Gem::Dependency
|
@@ -76,13 +76,13 @@ dependencies:
|
|
76
76
|
requirements:
|
77
77
|
- - "="
|
78
78
|
- !ruby/object:Gem::Version
|
79
|
-
hash: -
|
79
|
+
hash: -1637175964
|
80
80
|
segments:
|
81
81
|
- 1
|
82
82
|
- 3
|
83
83
|
- 0
|
84
|
-
-
|
85
|
-
version: 1.3.0.
|
84
|
+
- pre13
|
85
|
+
version: 1.3.0.pre13
|
86
86
|
type: :runtime
|
87
87
|
version_requirements: *id004
|
88
88
|
- !ruby/object:Gem::Dependency
|
@@ -93,13 +93,13 @@ dependencies:
|
|
93
93
|
requirements:
|
94
94
|
- - "="
|
95
95
|
- !ruby/object:Gem::Version
|
96
|
-
hash: -
|
96
|
+
hash: -1637175964
|
97
97
|
segments:
|
98
98
|
- 1
|
99
99
|
- 3
|
100
100
|
- 0
|
101
|
-
-
|
102
|
-
version: 1.3.0.
|
101
|
+
- pre13
|
102
|
+
version: 1.3.0.pre13
|
103
103
|
type: :runtime
|
104
104
|
version_requirements: *id005
|
105
105
|
- !ruby/object:Gem::Dependency
|
@@ -181,6 +181,7 @@ files:
|
|
181
181
|
- lib/generators/hobo/basic/templates/application.css
|
182
182
|
- lib/generators/hobo/basic/templates/application.dryml.erb
|
183
183
|
- lib/generators/hobo/basic/templates/dryml-support.js
|
184
|
+
- lib/generators/hobo/basic/templates/dryml_taglibs_initializer.rb
|
184
185
|
- lib/generators/hobo/basic/templates/en_injection.yml
|
185
186
|
- lib/generators/hobo/basic/templates/guest.rb
|
186
187
|
- lib/generators/hobo/controller.rb
|