nitro 0.15.0 → 0.16.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/CHANGELOG +218 -0
- data/INSTALL +3 -0
- data/README +4 -2
- data/Rakefile +150 -8
- data/benchmark/bench.rb +1 -1
- data/doc/AUTHORS +2 -8
- data/doc/RELEASES +63 -1
- data/examples/ajax/controller.rb +2 -2
- data/examples/ajax/public/index.xhtml +3 -1
- data/examples/ajax/run.rb +3 -3
- data/examples/blog/README +8 -0
- data/examples/blog/cache/entriesadmintrue +3 -0
- data/examples/blog/run.rb +38 -40
- data/examples/blog/src/blog.rb +2 -1
- data/examples/blog/src/controller.rb +40 -20
- data/examples/blog/src/mailer.rb +2 -2
- data/examples/blog/src/models/blog.rb +2 -1
- data/examples/blog/src/models/content.rb +4 -33
- data/examples/blog/src/views/error.xhtml +1 -1
- data/examples/blog/src/xsl/style.xsl +1 -1
- data/examples/blog/test/tc_blog.rb +43 -0
- data/examples/flash/run.rb +2 -2
- data/examples/no_xsl_blog/lib/blog.rb +1 -1
- data/examples/no_xsl_blog/lib/blog/controller.rb +26 -17
- data/examples/no_xsl_blog/lib/blog/model.rb +3 -3
- data/examples/no_xsl_blog/lib/blog/template.rb +1 -1
- data/examples/no_xsl_blog/lib/content.rb +3 -7
- data/examples/no_xsl_blog/run.rb +34 -34
- data/examples/tiny/public/deep/dir/hello.xhtml +2 -0
- data/examples/tiny/run.rb +2 -2
- data/examples/wee_style/run.rb +5 -3
- data/examples/why_wiki/run.rb +5 -3
- data/install.rb +1 -1
- data/lib/nitro.rb +10 -9
- data/lib/nitro/adapters/cgi.rb +27 -2
- data/lib/nitro/adapters/fastcgi.rb +6 -2
- data/lib/nitro/adapters/webrick.rb +11 -9
- data/lib/nitro/buffering.rb +2 -2
- data/lib/nitro/builders/atom.rb +78 -0
- data/lib/nitro/builders/form.rb +2 -2
- data/lib/nitro/builders/rss.rb +4 -4
- data/lib/nitro/builders/table.rb +2 -2
- data/lib/nitro/builders/xhtml.rb +5 -8
- data/lib/nitro/builders/xml.rb +38 -14
- data/lib/nitro/caching.rb +2 -2
- data/lib/nitro/caching/actions.rb +2 -2
- data/lib/nitro/caching/fragments.rb +2 -2
- data/lib/nitro/caching/invalidation.rb +2 -28
- data/lib/nitro/caching/output.rb +3 -3
- data/lib/nitro/caching/stores.rb +4 -4
- data/lib/nitro/conf.rb +11 -6
- data/lib/nitro/context.rb +2 -2
- data/lib/nitro/controller.rb +12 -7
- data/lib/nitro/cookie.rb +2 -2
- data/lib/nitro/dispatcher.rb +33 -40
- data/lib/nitro/environment.rb +1 -1
- data/lib/nitro/localization.rb +5 -7
- data/lib/nitro/mail.rb +2 -2
- data/lib/nitro/markup.rb +5 -5
- data/lib/nitro/output.rb +2 -2
- data/lib/nitro/part.rb +8 -5
- data/lib/nitro/render.rb +46 -45
- data/lib/nitro/request.rb +7 -6
- data/lib/nitro/response.rb +14 -5
- data/lib/nitro/routing.rb +2 -2
- data/lib/nitro/runner.rb +57 -17
- data/lib/nitro/scaffold.rb +14 -8
- data/lib/nitro/session.rb +7 -4
- data/lib/nitro/session/drb.rb +2 -2
- data/lib/nitro/session/drbserver.rb +2 -2
- data/lib/nitro/session/memory.rb +2 -2
- data/lib/nitro/shaders.rb +8 -7
- data/lib/nitro/simple.rb +4 -1
- data/lib/nitro/template.rb +8 -8
- data/lib/nitro/testing.rb +6 -0
- data/lib/nitro/testing/assertions.rb +102 -0
- data/lib/nitro/testing/context.rb +52 -0
- data/lib/nitro/testing/testcase.rb +55 -0
- data/lib/nitro/ui/pager.rb +3 -3
- data/lib/nitro/ui/popup.rb +8 -13
- data/lib/nitro/ui/tabs.rb +4 -10
- data/lib/nitro/uri.rb +7 -7
- data/proto/doc/README +1 -0
- data/proto/public/cgi.rb +5 -0
- data/proto/run.rb +2 -4
- data/test/nitro/adapters/tc_cgi.rb +1 -1
- data/test/nitro/adapters/tc_webrick.rb +1 -2
- data/test/nitro/builders/tc_atom.rb +26 -0
- data/test/nitro/builders/tc_rss.rb +3 -2
- data/test/nitro/builders/tc_table.rb +1 -1
- data/test/nitro/builders/tc_xhtml.rb +4 -3
- data/test/nitro/builders/tc_xml.rb +7 -7
- data/test/nitro/tc_context.rb +1 -1
- data/test/nitro/tc_controller.rb +5 -3
- data/test/nitro/tc_dispatcher.rb +19 -18
- data/test/nitro/tc_localization.rb +1 -1
- data/test/nitro/tc_mail.rb +1 -1
- data/test/nitro/tc_session.rb +1 -1
- data/test/nitro/tc_template.rb +1 -1
- data/test/nitro/tc_uri.rb +3 -4
- data/test/nitro/ui/tc_pager.rb +7 -7
- data/test/public/blog/inc1.xhtml +2 -0
- data/test/public/blog/inc2.xhtml +1 -0
- data/test/public/blog/list.xhtml +3 -0
- metadata +180 -203
- data/examples/blog/cache/entriesadmin +0 -12
- data/lib/nitro/cluster.rb +0 -218
- data/lib/nitro/component.rb +0 -15
- data/lib/nitro/filters.rb +0 -215
- data/lib/nitro/ui/date-select.rb +0 -69
- data/test/nitro/tc_filters.rb +0 -111
data/lib/nitro/ui/date-select.rb
DELETED
|
@@ -1,69 +0,0 @@
|
|
|
1
|
-
# * George Moschovitis <gm@navel.gr>
|
|
2
|
-
# (c) 2004-2005 Navel, all rights reserved.
|
|
3
|
-
# $Id: select.rb 39 2004-09-29 12:40:53Z elathan $
|
|
4
|
-
|
|
5
|
-
module N; module UI
|
|
6
|
-
|
|
7
|
-
MONTHS_EN = %w{ - January February March April May June July August September October November December }
|
|
8
|
-
MONTHS_EL = %w{ - ���������� ����������� ������� �������� ����� ������� ������� ��������� ����������� ��������� ��������� ���������� }
|
|
9
|
-
|
|
10
|
-
# Generate a component that allows the user to select a day.
|
|
11
|
-
#
|
|
12
|
-
def self.date_select(prefix, day, month, year, yorder = 0, locale = "en")
|
|
13
|
-
str = ""
|
|
14
|
-
months = ("en" == locale ? MONTHS_EN : MONTHS_EL)
|
|
15
|
-
|
|
16
|
-
str << %{
|
|
17
|
-
<select name="#{prefix}day">
|
|
18
|
-
<option value="0">--</option>
|
|
19
|
-
}
|
|
20
|
-
|
|
21
|
-
for i in (1..31)
|
|
22
|
-
if i == day
|
|
23
|
-
str << %{<option value="#{i}" selected="1">#{i}</option>}
|
|
24
|
-
else
|
|
25
|
-
str << %{<option value="#{i}">#{i}</option>}
|
|
26
|
-
end
|
|
27
|
-
end
|
|
28
|
-
|
|
29
|
-
str << %{
|
|
30
|
-
</select>
|
|
31
|
-
|
|
32
|
-
<select name="#{prefix}month">
|
|
33
|
-
<option value="0">-------</option>
|
|
34
|
-
}
|
|
35
|
-
|
|
36
|
-
for i in (1..12)
|
|
37
|
-
if i == month
|
|
38
|
-
str << %{<option value="#{i}" selected="1">#{months[i]}</option>}
|
|
39
|
-
else
|
|
40
|
-
str << %{<option value="#{i}">#{months[i]}</option>}
|
|
41
|
-
end
|
|
42
|
-
end
|
|
43
|
-
|
|
44
|
-
str << %{
|
|
45
|
-
</select>
|
|
46
|
-
|
|
47
|
-
<select name="#{prefix}year">
|
|
48
|
-
<option value="0">--</option>
|
|
49
|
-
}
|
|
50
|
-
|
|
51
|
-
nowyear = Time.now.year
|
|
52
|
-
|
|
53
|
-
for i in (0..60)
|
|
54
|
-
y = yorder < 0 ? nowyear - i : nowyear + i
|
|
55
|
-
if y == year
|
|
56
|
-
str << %{<option value="#{y}" selected="1">#{y}</option>}
|
|
57
|
-
else
|
|
58
|
-
str << %{<option value="#{y}">#{y}</option>}
|
|
59
|
-
end
|
|
60
|
-
end
|
|
61
|
-
|
|
62
|
-
str << %{
|
|
63
|
-
</select>
|
|
64
|
-
}
|
|
65
|
-
|
|
66
|
-
return str
|
|
67
|
-
end
|
|
68
|
-
|
|
69
|
-
end; end
|
data/test/nitro/tc_filters.rb
DELETED
|
@@ -1,111 +0,0 @@
|
|
|
1
|
-
$:.unshift File.join(File.dirname(__FILE__), '..', '..', 'lib')
|
|
2
|
-
|
|
3
|
-
require 'test/unit'
|
|
4
|
-
require 'ostruct'
|
|
5
|
-
|
|
6
|
-
require 'nitro/dispatcher'
|
|
7
|
-
require 'nitro/context'
|
|
8
|
-
require 'nitro/controller'
|
|
9
|
-
require 'nitro/filters'
|
|
10
|
-
|
|
11
|
-
class TestCaseFilters < Test::Unit::TestCase # :nodoc: all
|
|
12
|
-
include N
|
|
13
|
-
|
|
14
|
-
class MyController < Controller
|
|
15
|
-
|
|
16
|
-
attr_accessor :login_f, :pre_f, :post_f
|
|
17
|
-
|
|
18
|
-
before_filter :pre, :only => :login
|
|
19
|
-
after_filter :post, :except => :login
|
|
20
|
-
|
|
21
|
-
def initialize(*args)
|
|
22
|
-
super
|
|
23
|
-
@login_f = @pre_f = @post_f = 0
|
|
24
|
-
end
|
|
25
|
-
|
|
26
|
-
def login
|
|
27
|
-
@login_f = @pre_f + @post_f + 1
|
|
28
|
-
render_nothing
|
|
29
|
-
end
|
|
30
|
-
|
|
31
|
-
def logout
|
|
32
|
-
@login_f = @pre_f + @post_f + 1
|
|
33
|
-
render_nothing
|
|
34
|
-
end
|
|
35
|
-
|
|
36
|
-
private
|
|
37
|
-
|
|
38
|
-
def pre
|
|
39
|
-
@pre_f += 1
|
|
40
|
-
end
|
|
41
|
-
|
|
42
|
-
def post
|
|
43
|
-
@post_f += 1
|
|
44
|
-
end
|
|
45
|
-
end
|
|
46
|
-
|
|
47
|
-
class AnotherController < MyController
|
|
48
|
-
before_filter :more
|
|
49
|
-
|
|
50
|
-
def register
|
|
51
|
-
@login_f = @pre_f + @post_f + 1
|
|
52
|
-
render_nothing
|
|
53
|
-
end
|
|
54
|
-
|
|
55
|
-
private
|
|
56
|
-
|
|
57
|
-
def more
|
|
58
|
-
@a = 2
|
|
59
|
-
end
|
|
60
|
-
end
|
|
61
|
-
|
|
62
|
-
def setup
|
|
63
|
-
@disp = Dispatcher.new(
|
|
64
|
-
'my' => MyController,
|
|
65
|
-
'another' => AnotherController
|
|
66
|
-
)
|
|
67
|
-
@conf = OpenStruct.new
|
|
68
|
-
@conf.dispatcher = @disp
|
|
69
|
-
@ctx = Context.new(@conf)
|
|
70
|
-
@ctx.headers = {}
|
|
71
|
-
@ctx.params = {}
|
|
72
|
-
end
|
|
73
|
-
|
|
74
|
-
def teardown
|
|
75
|
-
@conf = @ctx = nil
|
|
76
|
-
end
|
|
77
|
-
|
|
78
|
-
def test_options
|
|
79
|
-
c = MyController.new(@ctx)
|
|
80
|
-
|
|
81
|
-
c.__xhtml__login
|
|
82
|
-
assert_equal 2, c.login_f
|
|
83
|
-
assert_equal 1, c.pre_f
|
|
84
|
-
assert_equal 0, c.post_f
|
|
85
|
-
|
|
86
|
-
c.__xhtml__logout
|
|
87
|
-
assert_equal 2, c.login_f
|
|
88
|
-
assert_equal 1, c.pre_f
|
|
89
|
-
assert_equal 1, c.post_f
|
|
90
|
-
end
|
|
91
|
-
|
|
92
|
-
def test_inheritable
|
|
93
|
-
c = AnotherController.new(@ctx)
|
|
94
|
-
|
|
95
|
-
c.__xhtml__register
|
|
96
|
-
assert_equal 1, c.login_f
|
|
97
|
-
assert_equal 0, c.pre_f
|
|
98
|
-
assert_equal 1, c.post_f
|
|
99
|
-
|
|
100
|
-
# bug: test filters not propageted.
|
|
101
|
-
|
|
102
|
-
assert_equal 0, Controller.before_filters.size
|
|
103
|
-
assert_equal 1, MyController.before_filters.size
|
|
104
|
-
assert_equal 2, AnotherController.before_filters.size
|
|
105
|
-
|
|
106
|
-
assert_equal 0, Controller.after_filters.size
|
|
107
|
-
assert_equal 1, MyController.after_filters.size
|
|
108
|
-
assert_equal 1, AnotherController.after_filters.size
|
|
109
|
-
end
|
|
110
|
-
|
|
111
|
-
end
|