zena 1.2.1 → 1.2.2
Sign up to get free protection for your applications and to get access to all the features.
- data/History.txt +38 -1
- data/app/controllers/documents_controller.rb +7 -5
- data/app/controllers/nodes_controller.rb +47 -6
- data/app/controllers/user_sessions_controller.rb +12 -3
- data/app/controllers/virtual_classes_controller.rb +8 -2
- data/app/models/acl.rb +5 -2
- data/app/models/cached_page.rb +5 -5
- data/app/models/column.rb +27 -4
- data/app/models/group.rb +1 -1
- data/app/models/node.rb +106 -24
- data/app/models/note.rb +2 -1
- data/app/models/relation.rb +9 -4
- data/app/models/relation_proxy.rb +2 -2
- data/app/models/role.rb +12 -5
- data/app/models/site.rb +10 -9
- data/app/models/skin.rb +8 -0
- data/app/models/string_hash.rb +65 -0
- data/app/models/text_document.rb +1 -1
- data/app/models/user.rb +2 -0
- data/app/models/virtual_class.rb +43 -10
- data/app/views/comments/create.rjs +1 -32
- data/app/views/comments/edit.rjs +1 -1
- data/app/views/comments/update.rjs +1 -1
- data/app/views/documents/show.rhtml +1 -1
- data/app/views/groups/_form.rhtml +7 -0
- data/app/views/groups/_li.rhtml +1 -1
- data/app/views/nodes/500.html +2 -1
- data/app/views/nodes/destroy.rjs +2 -0
- data/app/views/sites/jobs.erb +2 -3
- data/app/views/templates/document_create_tabs/_file.rhtml +1 -1
- data/app/views/templates/document_create_tabs/_import.rhtml +4 -1
- data/app/views/templates/document_create_tabs/_template.rhtml +3 -0
- data/app/views/templates/document_create_tabs/_text_document.rhtml +3 -0
- data/app/views/versions/custom_tab.rhtml +1 -1
- data/app/views/versions/edit.rhtml +1 -1
- data/bricks/acls/lib/bricks/acls.rb +3 -3
- data/bricks/acls/zena/test/unit/acl_test.rb +15 -0
- data/bricks/fs_skin/lib/bricks/fs_skin.rb +190 -0
- data/bricks/fs_skin/zena/init.rb +1 -0
- data/bricks/fs_skin/zena/migrate/20110702010330_add_fs_skin_to_idx_templates.rb +12 -0
- data/bricks/{static → fs_skin}/zena/skins/blog/Image-edit.zafu +0 -0
- data/bricks/{static → fs_skin}/zena/skins/blog/Image.zafu +0 -0
- data/bricks/{static → fs_skin}/zena/skins/blog/Node-+index.zafu +0 -0
- data/bricks/{static → fs_skin}/zena/skins/blog/Node-+notFound.zafu +0 -0
- data/bricks/{static → fs_skin}/zena/skins/blog/Node-+search.zafu +0 -0
- data/bricks/{static → fs_skin}/zena/skins/blog/Node.zafu +1 -1
- data/bricks/{static → fs_skin}/zena/skins/blog/Post.zafu +0 -0
- data/bricks/{static → fs_skin}/zena/skins/blog/Project--kml.zafu +0 -0
- data/bricks/{static → fs_skin}/zena/skins/blog/Project.zafu +0 -0
- data/bricks/{static → fs_skin}/zena/skins/blog/comments.zafu +0 -0
- data/bricks/{static → fs_skin}/zena/skins/blog/dict.yml +0 -0
- data/bricks/{static → fs_skin}/zena/skins/blog/img/dateBg.jpg +0 -0
- data/bricks/{static → fs_skin}/zena/skins/blog/img/header.png +0 -0
- data/bricks/{static → fs_skin}/zena/skins/blog/img/mapPin.png +0 -0
- data/bricks/{static → fs_skin}/zena/skins/blog/img/menu.gif +0 -0
- data/bricks/{static → fs_skin}/zena/skins/blog/img/menuover.gif +0 -0
- data/bricks/{static → fs_skin}/zena/skins/blog/img/style.css +0 -0
- data/bricks/fs_skin/zena/tasks.rb +26 -0
- data/bricks/{static/zena/test/integration/static_integration_test.rb → fs_skin/zena/test/integration/fs_skin_integration_test.rb} +6 -6
- data/bricks/fs_skin/zena/test/unit/fs_skin_test.rb +33 -0
- data/bricks/grid/lib/bricks/grid.rb +4 -3
- data/bricks/tags/lib/bricks/tags.rb +1 -7
- data/bricks/zena/zena/migrate/20120605091558_add_ssl_login_to_site.rb +7 -0
- data/bricks/zena/zena/migrate/20120630123551_add_auto_publish_to_group.rb +9 -0
- data/config/bricks.yml +3 -3
- data/config/gems.yml +2 -3
- data/lib/tasks/zena.rake +7 -3
- data/lib/zafu.rb +7 -0
- data/lib/zafu/all.rb +21 -0
- data/lib/zafu/compiler.rb +7 -0
- data/lib/zafu/controller_methods.rb +58 -0
- data/lib/zafu/handler.rb +57 -0
- data/lib/zafu/info.rb +4 -0
- data/lib/zafu/markup.rb +309 -0
- data/lib/zafu/mock_helper.rb +42 -0
- data/lib/zafu/node_context.rb +203 -0
- data/lib/zafu/ordered_hash.rb +53 -0
- data/lib/zafu/parser.rb +676 -0
- data/lib/zafu/parsing_rules.rb +382 -0
- data/lib/zafu/process/ajax.rb +530 -0
- data/lib/zafu/process/conditional.rb +92 -0
- data/lib/zafu/process/context.rb +186 -0
- data/lib/zafu/process/forms.rb +143 -0
- data/lib/zafu/process/html.rb +186 -0
- data/lib/zafu/process/ruby_less_processing.rb +321 -0
- data/lib/zafu/security.rb +15 -0
- data/lib/zafu/template.rb +25 -0
- data/lib/zafu/test_helper.rb +19 -0
- data/lib/zafu/view_methods.rb +6 -0
- data/lib/zena.rb +1 -1
- data/lib/zena/acts/enrollable.rb +1 -1
- data/lib/zena/app.rb +4 -17
- data/lib/zena/console.rb +18 -1
- data/lib/zena/core_ext/file_utils.rb +13 -1
- data/lib/zena/core_ext/fixnum.rb +4 -0
- data/lib/zena/core_ext/float.rb +7 -0
- data/lib/zena/deploy.rb +4 -2
- data/lib/zena/deploy/app_init.rhtml +2 -1
- data/lib/zena/deploy/database.rhtml +1 -1
- data/lib/zena/info.rb +1 -1
- data/lib/zena/parser/zazen_rules.rb +4 -4
- data/lib/zena/routes.rb +1 -1
- data/lib/zena/test_controller.rb +1 -1
- data/lib/zena/use.rb +14 -1
- data/lib/zena/use/action.rb +4 -2
- data/lib/zena/use/ajax.rb +86 -38
- data/lib/zena/use/authlogic.rb +16 -1
- data/lib/zena/use/calendar.rb +37 -17
- data/lib/zena/use/conditional.rb +2 -2
- data/lib/zena/use/context.rb +30 -9
- data/lib/zena/use/dates.rb +39 -3
- data/lib/zena/use/display.rb +6 -19
- data/lib/zena/use/forms.rb +100 -79
- data/lib/zena/use/i18n.rb +40 -16
- data/lib/zena/use/query_builder.rb +0 -6
- data/lib/zena/use/query_node.rb +17 -4
- data/lib/zena/use/relations.rb +1 -3
- data/lib/zena/use/rendering.rb +10 -8
- data/lib/zena/use/scope_index.rb +5 -1
- data/lib/zena/use/search.rb +2 -1
- data/lib/zena/use/urls.rb +82 -77
- data/lib/zena/use/workflow.rb +12 -4
- data/lib/zena/use/zafu_safe_definitions.rb +37 -9
- data/lib/zena/use/zafu_templates.rb +49 -20
- data/lib/zena/use/zazen.rb +6 -2
- data/locale/it/LC_MESSAGES/zena.mo +0 -0
- data/locale/it/zena.mo +0 -0
- data/locale/it/zena.po +1982 -0
- data/public/images/arrow_back.png +0 -0
- data/public/images/remove_tag.png +0 -0
- data/public/javascripts/grid.js +800 -199
- data/public/javascripts/window.js +1 -1
- data/public/javascripts/zena.js +130 -21
- data/public/stylesheets/grid.css +11 -2
- data/public/stylesheets/zena.css +2 -1
- data/test/custom_queries/complex.host.yml +5 -0
- data/test/fixtures/files/TestNode.zafu +36 -0
- data/test/functional/nodes_controller_test.rb +18 -1
- data/test/integration/zafu_compiler/action.yml +2 -2
- data/test/integration/zafu_compiler/ajax.yml +44 -26
- data/test/integration/zafu_compiler/asset.yml +12 -2
- data/test/integration/zafu_compiler/basic.yml +0 -16
- data/test/integration/zafu_compiler/calendar.yml +6 -6
- data/test/integration/zafu_compiler/complex_ok.yml +23 -1
- data/test/integration/zafu_compiler/conditional.yml +5 -5
- data/test/integration/zafu_compiler/context.yml +6 -5
- data/test/integration/zafu_compiler/dates.yml +23 -2
- data/test/integration/zafu_compiler/display.yml +46 -2
- data/test/integration/zafu_compiler/errors.yml +2 -2
- data/test/integration/zafu_compiler/eval.yml +35 -7
- data/test/integration/zafu_compiler/forms.yml +47 -13
- data/test/integration/zafu_compiler/i18n.yml +2 -2
- data/test/integration/zafu_compiler/meta.yml +35 -1
- data/test/integration/zafu_compiler/query.yml +23 -4
- data/test/integration/zafu_compiler/relations.yml +10 -6
- data/test/integration/zafu_compiler/roles.yml +4 -4
- data/test/integration/zafu_compiler/rubyless.yml +11 -1
- data/test/integration/zafu_compiler/safe_definitions.yml +23 -5
- data/test/integration/zafu_compiler/security.yml +10 -6
- data/test/integration/zafu_compiler/urls.yml +23 -6
- data/test/integration/zafu_compiler/zafu_attributes.yml +1 -1
- data/test/integration/zafu_compiler/zazen.yml +14 -0
- data/test/selenium/Add/add3.rsel +8 -8
- data/test/selenium/Destroy/0setup.rsel +12 -0
- data/test/selenium/Destroy/destroy1.rsel +16 -0
- data/test/selenium/Edit/edit2.rsel +9 -9
- data/test/selenium/Edit/edit5.rsel +9 -9
- data/test/selenium/Edit/edit6.rsel +9 -9
- data/test/selenium/Form/form4.rsel +17 -0
- data/test/selenium/Toggle/toggle1.rsel +2 -0
- data/test/selenium/Toggle/toggle2.rsel +18 -0
- data/test/sites/zena/columns.yml +3 -0
- data/test/sites/zena/versions.yml +7 -0
- data/test/unit/cached_page_test.rb +13 -13
- data/test/unit/column_test.rb +26 -0
- data/test/unit/node_test.rb +16 -1
- data/test/unit/project_test.rb +6 -1
- data/test/unit/relation_test.rb +1 -1
- data/test/unit/role_test.rb +1 -1
- data/test/unit/string_hash_test.rb +30 -0
- data/test/unit/virtual_class_test.rb +31 -17
- data/test/unit/zafu_markup_test.rb +414 -0
- data/test/unit/zafu_node_context_test.rb +375 -0
- data/test/unit/zafu_ordered_hash_test.rb +69 -0
- data/test/unit/zena/acts/enrollable_test.rb +1 -1
- data/test/unit/zena/parser/zafu_asset.yml +0 -10
- data/test/unit/zena/parser/zazen.yml +1 -1
- data/test/unit/zena/parser_test.rb +1 -72
- data/test/unit/zena/use/dates_test.rb +1 -1
- data/test/unit/zena/use/rendering_test.rb +24 -7
- data/test/unit/zena/use/scope_index_test.rb +17 -0
- data/test/unit/zena/use/zazen_test.rb +2 -1
- data/zena.gemspec +71 -37
- metadata +104 -83
- data/app/views/nodes/destroy.erb +0 -0
- data/bricks/static/lib/bricks/static.rb +0 -151
- data/bricks/static/zena/init.rb +0 -1
- data/bricks/static/zena/migrate/20110702010330_add_static_to_idx_templates.rb +0 -12
- data/bricks/static/zena/test/unit/static_test.rb +0 -33
- data/lib/zena/parser/zafu_rules.rb +0 -244
- data/lib/zena/parser/zafu_tags.rb +0 -198
- data/lib/zena/parser/zena_rules.rb +0 -23
@@ -0,0 +1,69 @@
|
|
1
|
+
require 'test_helper'
|
2
|
+
|
3
|
+
class OrderedHashTest < Test::Unit::TestCase
|
4
|
+
|
5
|
+
context 'An OrderedHash' do
|
6
|
+
setup do
|
7
|
+
@hash = Zafu::OrderedHash.new
|
8
|
+
@hash[:a] = 1
|
9
|
+
@hash[:c] = 2
|
10
|
+
@hash[:b] = 3
|
11
|
+
end
|
12
|
+
|
13
|
+
should 'keep keys in insertion order' do
|
14
|
+
assert_equal [:a, :c, :b], @hash.keys
|
15
|
+
end
|
16
|
+
|
17
|
+
should 'list each in insertion order' do
|
18
|
+
res = []
|
19
|
+
@hash.each do |k, v|
|
20
|
+
res << v
|
21
|
+
end
|
22
|
+
assert_equal [1, 2, 3], res
|
23
|
+
end
|
24
|
+
|
25
|
+
should 'remove entry on delete' do
|
26
|
+
@hash.delete(:c)
|
27
|
+
assert_equal [:a, :b], @hash.keys
|
28
|
+
end
|
29
|
+
|
30
|
+
context 'running through keys' do
|
31
|
+
should 'allow key alteration' do
|
32
|
+
@hash.keys.each do |k|
|
33
|
+
assert k != :d
|
34
|
+
@hash[:d] = 'x'
|
35
|
+
end
|
36
|
+
end
|
37
|
+
end
|
38
|
+
|
39
|
+
context 'running each' do
|
40
|
+
should 'allow key alteration' do
|
41
|
+
@hash.each do |k, v|
|
42
|
+
assert k != :d
|
43
|
+
@hash[:d] = 'x'
|
44
|
+
end
|
45
|
+
end
|
46
|
+
end
|
47
|
+
|
48
|
+
context 'with a duplicate' do
|
49
|
+
setup do
|
50
|
+
@dup = @hash.dup
|
51
|
+
end
|
52
|
+
|
53
|
+
should 'not alter duplicate on set' do
|
54
|
+
@hash[:d] = 4
|
55
|
+
assert_equal [:a, :c, :b], @dup.keys
|
56
|
+
end
|
57
|
+
|
58
|
+
should 'not alter duplicate on change' do
|
59
|
+
@hash[:a] = 10
|
60
|
+
assert_equal 1, @dup[:a]
|
61
|
+
end
|
62
|
+
|
63
|
+
should 'not alter duplicate on delete' do
|
64
|
+
@hash.delete(:a)
|
65
|
+
assert_equal [:a, :c, :b], @dup.keys
|
66
|
+
end
|
67
|
+
end
|
68
|
+
end
|
69
|
+
end
|
@@ -139,7 +139,7 @@ class EnrollableTest < Zena::Unit::TestCase
|
|
139
139
|
assert_kind_of Proc, type[:class]
|
140
140
|
klass = type[:class].call[:class]
|
141
141
|
assert_equal VirtualClass['Section'], klass
|
142
|
-
assert_equal %w{assigned cached_role_ids origin summary text title tz weight}, klass.columns.keys.sort
|
142
|
+
assert_equal %w{assigned cached_role_ids origin settings summary text title tz weight}, klass.columns.keys.sort
|
143
143
|
end
|
144
144
|
end # A safe method returning a sub-class of Node
|
145
145
|
|
@@ -31,13 +31,3 @@ change_script_src:
|
|
31
31
|
<script src='/test_script/functions.js' type='text/javascript'>
|
32
32
|
var = 'hello world!'
|
33
33
|
</script>
|
34
|
-
|
35
|
-
change_style_url:
|
36
|
-
src: |
|
37
|
-
<style>
|
38
|
-
#super { background:url('images/logo.png');}
|
39
|
-
</style>
|
40
|
-
res: |
|
41
|
-
<style>
|
42
|
-
#super { background:url('/test_/images/logo.png');}
|
43
|
-
</style>
|
@@ -215,4 +215,4 @@ wiki_link_partial_url:
|
|
215
215
|
|
216
216
|
make_asset:
|
217
217
|
src: "my email: [email]bob@example.com[/email]."
|
218
|
-
res: "<p>my email: [make_asset asset_tag:|email| content:|bob@example.com| output:|html|].</p>"
|
218
|
+
res: "<p>my email: [make_asset asset_tag:|email| content:|bob@example.com| output:|html|].</p>"
|
@@ -79,11 +79,8 @@ class ParserTest < Test::Unit::TestCase
|
|
79
79
|
class ParserTestHelper < Zena::Parser::DummyHelper
|
80
80
|
include ParserTest::Mock
|
81
81
|
end
|
82
|
-
yamltest :files => [:
|
82
|
+
yamltest :files => [:zazen] #, :options => {:latex => {:module => :zazen, :output => 'latex'}}
|
83
83
|
MODULES = {
|
84
|
-
:zafu => [Zena::Parser::ZafuRules, Zena::Parser::ZafuTags, ZafuTestTags],
|
85
|
-
:zafu_asset => [Zena::Parser::ZafuRules, Zena::Parser::ZafuTags, ZafuTestTags],
|
86
|
-
:zafu_insight => [Zena::Parser::ZafuRules, Zena::Parser::ZafuTags, ZafuTestTags],
|
87
84
|
:zazen => [Zena::Parser::ZazenRules, Zena::Parser::ZazenTags],
|
88
85
|
}
|
89
86
|
@@test_parsers = {}
|
@@ -103,10 +100,6 @@ class ParserTest < Test::Unit::TestCase
|
|
103
100
|
end
|
104
101
|
end
|
105
102
|
|
106
|
-
def test_single
|
107
|
-
yt_do_test('zafu', 'only_hello')
|
108
|
-
end
|
109
|
-
|
110
103
|
def test_zazen_image_no_image
|
111
104
|
file = 'zazen'
|
112
105
|
test = 'image_no_image'
|
@@ -116,69 +109,5 @@ class ParserTest < Test::Unit::TestCase
|
|
116
109
|
assert_equal @@test_strings[file][test]['res'], res
|
117
110
|
end
|
118
111
|
|
119
|
-
def test_all_descendants
|
120
|
-
block = @@test_parsers['zafu'].new(
|
121
|
-
"<r:pages><r:each><b do='test'/></r:each><r:add><p><i do='add_link'/><b do='title'/></p></r:add><b do='title'/></r:pages>",
|
122
|
-
:helper => ParserTestHelper.new(@@test_strings['basic'])
|
123
|
-
)
|
124
|
-
assert_equal ['add', 'add_link', 'each', 'pages', 'test', 'title'], block.all_descendants.keys.sort
|
125
|
-
assert_equal 2, block.all_descendants['title'].size
|
126
|
-
assert_equal ['add_link', 'title'], block.descendant('add').all_descendants.keys.sort
|
127
|
-
end
|
128
|
-
|
129
|
-
def test_descendants
|
130
|
-
block = @@test_parsers['zafu'].new(
|
131
|
-
"<r:pages><r:each><b do='test'/></r:each><r:add><p><i do='add_link'/><b do='title'/></p></r:add><b do='title'/></r:pages>",
|
132
|
-
:helper => ParserTestHelper.new(@@test_strings['basic'])
|
133
|
-
)
|
134
|
-
assert_equal 2, block.descendants('title').size
|
135
|
-
assert_equal ['test'], block.descendants('each')[0].descendants('test').map {|n| n.method}
|
136
|
-
assert_equal [], block.descendants('each')[0].descendants('foo')
|
137
|
-
end
|
138
|
-
|
139
|
-
def test_ancestor
|
140
|
-
block = @@test_parsers['zafu'].new(
|
141
|
-
"<r:pages><r:each><b do='test'/></r:each><r:add><p><i do='add_link'/><b do='title'/></p></r:add><b do='title'/></r:pages>",
|
142
|
-
:helper => ParserTestHelper.new(@@test_strings['basic'])
|
143
|
-
)
|
144
|
-
sub_block = block.descendant('add_link')
|
145
|
-
assert_equal ['void', 'pages', 'add'], sub_block.ancestors.map{|a| a.method}
|
146
|
-
assert_equal sub_block.ancestor('pages'), block.descendant('pages')
|
147
|
-
end
|
148
|
-
|
149
|
-
def test_public_descendants
|
150
|
-
block = @@test_parsers['zafu'].new(
|
151
|
-
"<r:pages><r:each><b do='test'/></r:each><r:add><p><i do='add_link'/><b do='title'/></p></r:add><b do='title'/></r:pages>",
|
152
|
-
:helper => ParserTestHelper.new(@@test_strings['basic'])
|
153
|
-
)
|
154
|
-
block.all_descendants.merge('self'=>[block]).each do |k,blocks|
|
155
|
-
blocks.each do |b|
|
156
|
-
b.send(:remove_instance_variable, :@all_descendants)
|
157
|
-
class << b
|
158
|
-
def public_descendants
|
159
|
-
if ['each'].include?(@method)
|
160
|
-
{}
|
161
|
-
else
|
162
|
-
super
|
163
|
-
end
|
164
|
-
end
|
165
|
-
end
|
166
|
-
end
|
167
|
-
end
|
168
|
-
assert_equal ['add', 'add_link', 'each', 'pages', 'title'], block.all_descendants.keys.sort
|
169
|
-
assert_equal ['test'], block.descendant('each').all_descendants.keys.sort
|
170
|
-
end
|
171
|
-
|
172
|
-
def test_root
|
173
|
-
block = @@test_parsers['zafu'].new(
|
174
|
-
"<r:pages><r:each><b do='test'/></r:each><r:add><p><i do='add_link'/><b do='title'/></p></r:add><b do='title'/></r:pages>",
|
175
|
-
:helper => ParserTestHelper.new(@@test_strings['basic'])
|
176
|
-
)
|
177
|
-
sub_block = block.descendant('add_link')
|
178
|
-
assert_equal 'add_link', sub_block.method
|
179
|
-
assert_equal 'add', sub_block.parent.method
|
180
|
-
assert_equal block, sub_block.root
|
181
|
-
end
|
182
|
-
|
183
112
|
yt_make
|
184
113
|
end
|
@@ -5,7 +5,7 @@ class DatesTest < Zena::View::TestCase
|
|
5
5
|
def test_date_box
|
6
6
|
login(:anon)
|
7
7
|
visiting(:status)
|
8
|
-
assert_match %r{span class="date_box".*img src="\/calendar\/iconCalendar.gif".*input id='datef.*' name='node\[updated_at\]' type='text' value='2006-04-11 00:00'}m, date_box(@node, 'updated_at')
|
8
|
+
assert_match %r{span class="date_box".*img src="\/calendar\/iconCalendar.gif".*input id='datef.*' name='node\[updated_at\]' type='text' value='2006-04-11 00:00'}m, date_box(@node, 'node[updated_at]', :value => @node.updated_at)
|
9
9
|
end
|
10
10
|
|
11
11
|
# see dates.yml
|
@@ -10,11 +10,21 @@ class RenderingTest < Zena::View::TestCase
|
|
10
10
|
context 'resolving template_url' do
|
11
11
|
|
12
12
|
should 'append host and insert lang on template_path_from_template_url' do
|
13
|
-
assert_equal '/test.host/zafu/SKIN/TEMPLATE/en/DOM_ID', template_path_from_template_url('SKIN/TEMPLATE/DOM_ID')
|
13
|
+
assert_equal '/test.host/zafu/SKIN/TEMPLATE/en/DOM_ID.erb', template_path_from_template_url('', 'SKIN/TEMPLATE/DOM_ID', false)
|
14
|
+
end
|
15
|
+
|
16
|
+
should 'build template on template_path_from_template_url' do
|
17
|
+
fullpath = fullpath_from_template_url('wiki skin/Page-changes/_main', false)
|
18
|
+
if File.exist?(fullpath)
|
19
|
+
FileUtils.rm(fullpath)
|
20
|
+
end
|
21
|
+
assert_equal '/test.host/zafu/wiki skin/Page-changes/en/foo.erb', template_path_from_template_url('', 'wiki skin/Page-changes/foo', true)
|
22
|
+
assert File.exist?(fullpath)
|
23
|
+
FileUtils.rm(fullpath)
|
14
24
|
end
|
15
25
|
|
16
26
|
should 'return a fullpath on fullpath_from_template_url' do
|
17
|
-
assert_equal "#{SITES_ROOT}/test.host/zafu/SKIN/TEMPLATE/en/DOM_ID", fullpath_from_template_url('SKIN/TEMPLATE/DOM_ID')
|
27
|
+
assert_equal "#{SITES_ROOT}/test.host/zafu/SKIN/TEMPLATE/en/DOM_ID.erb", fullpath_from_template_url('SKIN/TEMPLATE/DOM_ID', false)
|
18
28
|
end
|
19
29
|
|
20
30
|
should 'return a relative path on admin_layout' do
|
@@ -149,7 +159,7 @@ class RenderingInControllerTest < Zena::Controller::TestCase
|
|
149
159
|
login(:anon)
|
150
160
|
# render page to build template
|
151
161
|
get 'show', :path => ["section#{nodes_zip(:people)}_#{@mode}.html"], :prefix => 'en'
|
152
|
-
assert_equal "<div id='foo'>hello people</div>", @response.body
|
162
|
+
assert_equal "<div id='foo' data-z='12'>hello people</div>", @response.body
|
153
163
|
end
|
154
164
|
|
155
165
|
should 'execute Element update' do
|
@@ -158,7 +168,7 @@ class RenderingInControllerTest < Zena::Controller::TestCase
|
|
158
168
|
:t_url => 'Default skin/Node-ins/foo',
|
159
169
|
:dom_id => 'foo',
|
160
170
|
}
|
161
|
-
assert_equal %Q{Element.replace("foo", "\\u003Cdiv id='foo'\\u003Ehello people\\u003C/div\\u003E");\n}, @response.body
|
171
|
+
assert_equal %Q{Element.replace(\"foo\", \"\\u003Cdiv id='foo' data-z='12'\\u003Ehello people\\u003C/div\\u003E\");\n}, @response.body
|
162
172
|
end
|
163
173
|
|
164
174
|
context 'with insert' do
|
@@ -169,7 +179,7 @@ class RenderingInControllerTest < Zena::Controller::TestCase
|
|
169
179
|
:dom_id => 'foo',
|
170
180
|
:insert => 'bottom',
|
171
181
|
}
|
172
|
-
assert_equal %Q{Zena.insert_inner("foo", "bottom", "\\u003Cdiv id='foo'\\u003Ehello people\\u003C/div\\u003E");\n}, @response.body
|
182
|
+
assert_equal %Q{Zena.insert_inner(\"foo\", \"bottom\", \"\\u003Cdiv id='foo' data-z='12'\\u003Ehello people\\u003C/div\\u003E\");\n}, @response.body
|
173
183
|
end
|
174
184
|
end # with insert
|
175
185
|
end # to update
|
@@ -179,12 +189,12 @@ class RenderingInControllerTest < Zena::Controller::TestCase
|
|
179
189
|
subject do
|
180
190
|
login(:lion)
|
181
191
|
# create template for 'special' mode
|
182
|
-
|
192
|
+
@template = secure(Template) { Template.create(:parent_id => nodes_id(:default), :title => 'Node-bar.zafu', :text => @zafu, :v_status => Zena::Status::Pub) }
|
183
193
|
login(:anon)
|
184
194
|
{:action => 'show', :controller => 'nodes', :path => ["section#{nodes_zip(:people)}_bar.html"], :prefix => 'en'}
|
185
195
|
end
|
186
196
|
|
187
|
-
should 'type and disposition headers' do
|
197
|
+
should 'set type and disposition headers' do
|
188
198
|
@zafu = %q{<r:headers X-Foobar='my thing' Content-Type='text/css' Content-Disposition='attachment; filename=special_#{title}.csv'/>}
|
189
199
|
get_subject
|
190
200
|
assert_response :success
|
@@ -196,6 +206,13 @@ class RenderingInControllerTest < Zena::Controller::TestCase
|
|
196
206
|
assert_equal v, @response.headers[k]
|
197
207
|
end
|
198
208
|
end
|
209
|
+
|
210
|
+
should 'find master template' do
|
211
|
+
@zafu = %q{MASTER_TEMPLATE[<r:master_template do='id'/>]}
|
212
|
+
get_subject
|
213
|
+
assert_response :success
|
214
|
+
assert_equal "MASTER_TEMPLATE[#{@template.zip}]", @response.body
|
215
|
+
end
|
199
216
|
end # Custom rendering options
|
200
217
|
|
201
218
|
end
|
@@ -99,6 +99,23 @@ class ScopeIndexTest < Zena::Unit::TestCase
|
|
99
99
|
end
|
100
100
|
end # deleting a sub node
|
101
101
|
|
102
|
+
context 'deleting a node' do
|
103
|
+
subject do
|
104
|
+
blog = nil
|
105
|
+
assert_difference('IdxProject.count', 1) do
|
106
|
+
blog = secure(Node) { Node.create_node(:parent_id => @project.zip, :v_status => Zena::Status::Pub, :klass => 'Blog', :title => 'Life threat') }
|
107
|
+
end
|
108
|
+
blog
|
109
|
+
end
|
110
|
+
|
111
|
+
should 'rebuild target indexes' do
|
112
|
+
node = subject
|
113
|
+
assert_difference('IdxProject.count', -1) do
|
114
|
+
node.destroy
|
115
|
+
end
|
116
|
+
end
|
117
|
+
end # deleting a sub node
|
118
|
+
|
102
119
|
context 'moving a sub node' do
|
103
120
|
subject do
|
104
121
|
secure(Node) { VirtualClass['Contact'].create_instance(:first_name => 'Friedrich', :name => 'Hölderlin', :parent_id => nodes_id(:zena), :v_status => Zena::Status::Pub) }
|
@@ -28,6 +28,7 @@ class ZazenTest < Zena::View::TestCase
|
|
28
28
|
def test_make_link
|
29
29
|
# * ["":34] creates a link to node 34 with node's title.
|
30
30
|
assert_equal '<p><a href="/en/projects-list/Clean-Water-project">Clean Water project</a></p>', zazen('"":21')
|
31
|
+
assert_equal '<p><a href="/en/projects-list/Clean-Water-project" target="_blank">Clean Water project</a></p>', zazen('"":21', :target => "_blank")
|
31
32
|
# * ["title":34] creates a link to node 34 with the given title.
|
32
33
|
assert_equal '<p><a href="/en/projects-list/Clean-Water-project">hello</a></p>', zazen('"hello":21')
|
33
34
|
# * ["":034] if the node id starts with '0', creates a popup link.
|
@@ -243,7 +244,7 @@ class ZazenTest < Zena::View::TestCase
|
|
243
244
|
|
244
245
|
def test_table_asset
|
245
246
|
login(:tiger)
|
246
|
-
assert_match %r{<table data-a='node\[shopping_list\]'.*class='grid'}m, zazen("This is a table test:\n\n|shopping_list|")
|
247
|
+
assert_match %r{<table id='grid[^']+' data-a='node\[shopping_list\]'.*class='grid'}m, zazen("This is a table test:\n\n|shopping_list|")
|
247
248
|
end
|
248
249
|
|
249
250
|
# only works if recaptcha plugin is installed
|
data/zena.gemspec
CHANGED
@@ -5,11 +5,11 @@
|
|
5
5
|
|
6
6
|
Gem::Specification.new do |s|
|
7
7
|
s.name = %q{zena}
|
8
|
-
s.version = "1.2.
|
8
|
+
s.version = "1.2.2"
|
9
9
|
|
10
10
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
11
11
|
s.authors = ["Gaspard Bucher"]
|
12
|
-
s.date = %q{2012-
|
12
|
+
s.date = %q{2012-08-30}
|
13
13
|
s.default_executable = %q{zena}
|
14
14
|
s.description = %q{zena is a Ruby on Rails CMS (content managment system) with a focus on usability, ease of customization and web 2.0 goodness (application like behaviour).}
|
15
15
|
s.email = %q{gaspard@teti.ch}
|
@@ -86,6 +86,7 @@ Gem::Specification.new do |s|
|
|
86
86
|
"app/models/section.rb",
|
87
87
|
"app/models/site.rb",
|
88
88
|
"app/models/skin.rb",
|
89
|
+
"app/models/string_hash.rb",
|
89
90
|
"app/models/template.rb",
|
90
91
|
"app/models/template_content.rb",
|
91
92
|
"app/models/template_version.rb",
|
@@ -188,7 +189,7 @@ Gem::Specification.new do |s|
|
|
188
189
|
"app/views/nodes/_show_attr.rhtml",
|
189
190
|
"app/views/nodes/clear_order.rjs",
|
190
191
|
"app/views/nodes/create.rjs",
|
191
|
-
"app/views/nodes/destroy.
|
192
|
+
"app/views/nodes/destroy.rjs",
|
192
193
|
"app/views/nodes/drive.rjs",
|
193
194
|
"app/views/nodes/drop.rjs",
|
194
195
|
"app/views/nodes/edit.html.erb",
|
@@ -298,6 +299,29 @@ Gem::Specification.new do |s|
|
|
298
299
|
"bricks/captcha/lib/bricks/captcha.rb",
|
299
300
|
"bricks/captcha/zena/init.rb",
|
300
301
|
"bricks/captcha/zena/test/zafu/captcha.yml",
|
302
|
+
"bricks/fs_skin/lib/bricks/fs_skin.rb",
|
303
|
+
"bricks/fs_skin/zena/init.rb",
|
304
|
+
"bricks/fs_skin/zena/migrate/20110702010330_add_fs_skin_to_idx_templates.rb",
|
305
|
+
"bricks/fs_skin/zena/skins/blog/Image-edit.zafu",
|
306
|
+
"bricks/fs_skin/zena/skins/blog/Image.zafu",
|
307
|
+
"bricks/fs_skin/zena/skins/blog/Node-+index.zafu",
|
308
|
+
"bricks/fs_skin/zena/skins/blog/Node-+notFound.zafu",
|
309
|
+
"bricks/fs_skin/zena/skins/blog/Node-+search.zafu",
|
310
|
+
"bricks/fs_skin/zena/skins/blog/Node.zafu",
|
311
|
+
"bricks/fs_skin/zena/skins/blog/Post.zafu",
|
312
|
+
"bricks/fs_skin/zena/skins/blog/Project--kml.zafu",
|
313
|
+
"bricks/fs_skin/zena/skins/blog/Project.zafu",
|
314
|
+
"bricks/fs_skin/zena/skins/blog/comments.zafu",
|
315
|
+
"bricks/fs_skin/zena/skins/blog/dict.yml",
|
316
|
+
"bricks/fs_skin/zena/skins/blog/img/dateBg.jpg",
|
317
|
+
"bricks/fs_skin/zena/skins/blog/img/header.png",
|
318
|
+
"bricks/fs_skin/zena/skins/blog/img/mapPin.png",
|
319
|
+
"bricks/fs_skin/zena/skins/blog/img/menu.gif",
|
320
|
+
"bricks/fs_skin/zena/skins/blog/img/menuover.gif",
|
321
|
+
"bricks/fs_skin/zena/skins/blog/img/style.css",
|
322
|
+
"bricks/fs_skin/zena/tasks.rb",
|
323
|
+
"bricks/fs_skin/zena/test/integration/fs_skin_integration_test.rb",
|
324
|
+
"bricks/fs_skin/zena/test/unit/fs_skin_test.rb",
|
301
325
|
"bricks/grid/lib/bricks/grid.rb",
|
302
326
|
"bricks/grid/zena/init.rb",
|
303
327
|
"bricks/math/lib/bricks/math.rb",
|
@@ -345,28 +369,6 @@ Gem::Specification.new do |s|
|
|
345
369
|
"bricks/spreadsheet/zena/test/unit/xlsx_test.rb",
|
346
370
|
"bricks/spreadsheet/zena/test/zafu/README",
|
347
371
|
"bricks/spreadsheet/zena/test/zafu/spreadsheet.yml",
|
348
|
-
"bricks/static/lib/bricks/static.rb",
|
349
|
-
"bricks/static/zena/init.rb",
|
350
|
-
"bricks/static/zena/migrate/20110702010330_add_static_to_idx_templates.rb",
|
351
|
-
"bricks/static/zena/skins/blog/Image-edit.zafu",
|
352
|
-
"bricks/static/zena/skins/blog/Image.zafu",
|
353
|
-
"bricks/static/zena/skins/blog/Node-+index.zafu",
|
354
|
-
"bricks/static/zena/skins/blog/Node-+notFound.zafu",
|
355
|
-
"bricks/static/zena/skins/blog/Node-+search.zafu",
|
356
|
-
"bricks/static/zena/skins/blog/Node.zafu",
|
357
|
-
"bricks/static/zena/skins/blog/Post.zafu",
|
358
|
-
"bricks/static/zena/skins/blog/Project--kml.zafu",
|
359
|
-
"bricks/static/zena/skins/blog/Project.zafu",
|
360
|
-
"bricks/static/zena/skins/blog/comments.zafu",
|
361
|
-
"bricks/static/zena/skins/blog/dict.yml",
|
362
|
-
"bricks/static/zena/skins/blog/img/dateBg.jpg",
|
363
|
-
"bricks/static/zena/skins/blog/img/header.png",
|
364
|
-
"bricks/static/zena/skins/blog/img/mapPin.png",
|
365
|
-
"bricks/static/zena/skins/blog/img/menu.gif",
|
366
|
-
"bricks/static/zena/skins/blog/img/menuover.gif",
|
367
|
-
"bricks/static/zena/skins/blog/img/style.css",
|
368
|
-
"bricks/static/zena/test/integration/static_integration_test.rb",
|
369
|
-
"bricks/static/zena/test/unit/static_test.rb",
|
370
372
|
"bricks/tags/README",
|
371
373
|
"bricks/tags/lib/bricks/tags.rb",
|
372
374
|
"bricks/tags/zena/init.rb",
|
@@ -394,6 +396,8 @@ Gem::Specification.new do |s|
|
|
394
396
|
"bricks/zena/zena/migrate/20110710113731_remove_icon_field.rb",
|
395
397
|
"bricks/zena/zena/migrate/20111101103900_add_comment_to_columns.rb",
|
396
398
|
"bricks/zena/zena/migrate/20111214112233_add_comment_to_relations.rb",
|
399
|
+
"bricks/zena/zena/migrate/20120605091558_add_ssl_login_to_site.rb",
|
400
|
+
"bricks/zena/zena/migrate/20120630123551_add_auto_publish_to_group.rb",
|
397
401
|
"config/boot.rb",
|
398
402
|
"config/bricks.yml",
|
399
403
|
"config/database_example.yml",
|
@@ -563,6 +567,28 @@ Gem::Specification.new do |s|
|
|
563
567
|
"lib/tasks/zena.rake",
|
564
568
|
"lib/tasks/zena.rb",
|
565
569
|
"lib/upload_progress_server.rb",
|
570
|
+
"lib/zafu.rb",
|
571
|
+
"lib/zafu/all.rb",
|
572
|
+
"lib/zafu/compiler.rb",
|
573
|
+
"lib/zafu/controller_methods.rb",
|
574
|
+
"lib/zafu/handler.rb",
|
575
|
+
"lib/zafu/info.rb",
|
576
|
+
"lib/zafu/markup.rb",
|
577
|
+
"lib/zafu/mock_helper.rb",
|
578
|
+
"lib/zafu/node_context.rb",
|
579
|
+
"lib/zafu/ordered_hash.rb",
|
580
|
+
"lib/zafu/parser.rb",
|
581
|
+
"lib/zafu/parsing_rules.rb",
|
582
|
+
"lib/zafu/process/ajax.rb",
|
583
|
+
"lib/zafu/process/conditional.rb",
|
584
|
+
"lib/zafu/process/context.rb",
|
585
|
+
"lib/zafu/process/forms.rb",
|
586
|
+
"lib/zafu/process/html.rb",
|
587
|
+
"lib/zafu/process/ruby_less_processing.rb",
|
588
|
+
"lib/zafu/security.rb",
|
589
|
+
"lib/zafu/template.rb",
|
590
|
+
"lib/zafu/test_helper.rb",
|
591
|
+
"lib/zafu/view_methods.rb",
|
566
592
|
"lib/zazen_parser.rb",
|
567
593
|
"lib/zena.rb",
|
568
594
|
"lib/zena/acts/enrollable.rb",
|
@@ -579,6 +605,7 @@ Gem::Specification.new do |s|
|
|
579
605
|
"lib/zena/core_ext/dir.rb",
|
580
606
|
"lib/zena/core_ext/file_utils.rb",
|
581
607
|
"lib/zena/core_ext/fixnum.rb",
|
608
|
+
"lib/zena/core_ext/float.rb",
|
582
609
|
"lib/zena/core_ext/string.rb",
|
583
610
|
"lib/zena/crypto_provider/initial.rb",
|
584
611
|
"lib/zena/db.rb",
|
@@ -608,11 +635,8 @@ Gem::Specification.new do |s|
|
|
608
635
|
"lib/zena/loader/yaml_loader.rb",
|
609
636
|
"lib/zena/migrator.rb",
|
610
637
|
"lib/zena/parser.rb",
|
611
|
-
"lib/zena/parser/zafu_rules.rb",
|
612
|
-
"lib/zena/parser/zafu_tags.rb",
|
613
638
|
"lib/zena/parser/zazen_rules.rb",
|
614
639
|
"lib/zena/parser/zazen_tags.rb",
|
615
|
-
"lib/zena/parser/zena_rules.rb",
|
616
640
|
"lib/zena/refactor/act_as_content.rb",
|
617
641
|
"lib/zena/remote.rb",
|
618
642
|
"lib/zena/remote/connection.rb",
|
@@ -682,6 +706,9 @@ Gem::Specification.new do |s|
|
|
682
706
|
"locale/fr/LC_MESSAGES/zena.mo",
|
683
707
|
"locale/fr/zena.mo",
|
684
708
|
"locale/fr/zena.po",
|
709
|
+
"locale/it/LC_MESSAGES/zena.mo",
|
710
|
+
"locale/it/zena.mo",
|
711
|
+
"locale/it/zena.po",
|
685
712
|
"locale/log.txt",
|
686
713
|
"locale/zena.pot",
|
687
714
|
"misc/zena",
|
@@ -764,6 +791,7 @@ Gem::Specification.new do |s|
|
|
764
791
|
"public/images/application_view_tile.png",
|
765
792
|
"public/images/application_xp.png",
|
766
793
|
"public/images/application_xp_terminal.png",
|
794
|
+
"public/images/arrow_back.png",
|
767
795
|
"public/images/arrow_branch.png",
|
768
796
|
"public/images/arrow_divide.png",
|
769
797
|
"public/images/arrow_down.png",
|
@@ -1500,6 +1528,7 @@ Gem::Specification.new do |s|
|
|
1500
1528
|
"public/images/project.png",
|
1501
1529
|
"public/images/rails.png",
|
1502
1530
|
"public/images/rainbow.png",
|
1531
|
+
"public/images/remove_tag.png",
|
1503
1532
|
"public/images/report.png",
|
1504
1533
|
"public/images/report_add.png",
|
1505
1534
|
"public/images/report_delete.png",
|
@@ -1976,6 +2005,8 @@ Gem::Specification.new do |s|
|
|
1976
2005
|
"test/selenium/Add/add1.rsel",
|
1977
2006
|
"test/selenium/Add/add2.rsel",
|
1978
2007
|
"test/selenium/Add/add3.rsel",
|
2008
|
+
"test/selenium/Destroy/0setup.rsel",
|
2009
|
+
"test/selenium/Destroy/destroy1.rsel",
|
1979
2010
|
"test/selenium/Drop/0setup.rsel",
|
1980
2011
|
"test/selenium/Drop/drop1.rsel",
|
1981
2012
|
"test/selenium/Drop/drop2.rsel",
|
@@ -1996,6 +2027,7 @@ Gem::Specification.new do |s|
|
|
1996
2027
|
"test/selenium/Form/form1.rsel",
|
1997
2028
|
"test/selenium/Form/form2.rsel",
|
1998
2029
|
"test/selenium/Form/form3.rsel",
|
2030
|
+
"test/selenium/Form/form4.rsel",
|
1999
2031
|
"test/selenium/Grid/0setup.rsel",
|
2000
2032
|
"test/selenium/Grid/grid1.rsel",
|
2001
2033
|
"test/selenium/Paginate/0setup.rsel",
|
@@ -2005,6 +2037,7 @@ Gem::Specification.new do |s|
|
|
2005
2037
|
"test/selenium/Swap/swap2.rsel",
|
2006
2038
|
"test/selenium/Toggle/0setup.rsel",
|
2007
2039
|
"test/selenium/Toggle/toggle1.rsel",
|
2040
|
+
"test/selenium/Toggle/toggle2.rsel",
|
2008
2041
|
"test/sites/README",
|
2009
2042
|
"test/sites/complex/columns.yml",
|
2010
2043
|
"test/sites/complex/complex.png",
|
@@ -2072,6 +2105,7 @@ Gem::Specification.new do |s|
|
|
2072
2105
|
"test/unit/section_test.rb",
|
2073
2106
|
"test/unit/site_test.rb",
|
2074
2107
|
"test/unit/skin_test.rb",
|
2108
|
+
"test/unit/string_hash_test.rb",
|
2075
2109
|
"test/unit/template_test.rb",
|
2076
2110
|
"test/unit/template_version_test.rb",
|
2077
2111
|
"test/unit/text_document_content_test.rb",
|
@@ -2081,6 +2115,9 @@ Gem::Specification.new do |s|
|
|
2081
2115
|
"test/unit/version_test.rb",
|
2082
2116
|
"test/unit/virtual_class_test.rb",
|
2083
2117
|
"test/unit/workflow_test.rb",
|
2118
|
+
"test/unit/zafu_markup_test.rb",
|
2119
|
+
"test/unit/zafu_node_context_test.rb",
|
2120
|
+
"test/unit/zafu_ordered_hash_test.rb",
|
2084
2121
|
"test/unit/zena/acts/enrollable_test.rb",
|
2085
2122
|
"test/unit/zena/acts/secure_test.rb",
|
2086
2123
|
"test/unit/zena/acts/serializable_test.rb",
|
@@ -2436,10 +2473,9 @@ Gem::Specification.new do |s|
|
|
2436
2473
|
s.add_runtime_dependency(%q<httparty>, ["= 0.7.8"])
|
2437
2474
|
s.add_runtime_dependency(%q<simple_xlsx_writer>, [">= 0"])
|
2438
2475
|
s.add_runtime_dependency(%q<rubyless>, ["= 0.8.6"])
|
2439
|
-
s.add_runtime_dependency(%q<property>, ["= 2.2
|
2476
|
+
s.add_runtime_dependency(%q<property>, ["= 2.3.2"])
|
2440
2477
|
s.add_runtime_dependency(%q<uuidtools>, ["= 2.0.0"])
|
2441
2478
|
s.add_runtime_dependency(%q<authlogic>, ["= 2.1.3"])
|
2442
|
-
s.add_runtime_dependency(%q<zafu>, ["= 0.8.6"])
|
2443
2479
|
s.add_runtime_dependency(%q<shoulda>, ["= 2.10.3"])
|
2444
2480
|
s.add_runtime_dependency(%q<fast_gettext>, ["~> 0.4.16"])
|
2445
2481
|
s.add_runtime_dependency(%q<syntax>, ["= 1.0.0"])
|
@@ -2455,7 +2491,7 @@ Gem::Specification.new do |s|
|
|
2455
2491
|
s.add_runtime_dependency(%q<differ>, ["= 0.1.2"])
|
2456
2492
|
s.add_runtime_dependency(%q<RedCloth>, ["= 3.0.4"])
|
2457
2493
|
s.add_runtime_dependency(%q<open4>, [">= 0"])
|
2458
|
-
s.add_runtime_dependency(%q<querybuilder>, ["= 1.1.
|
2494
|
+
s.add_runtime_dependency(%q<querybuilder>, ["= 1.1.3"])
|
2459
2495
|
else
|
2460
2496
|
s.add_dependency(%q<ruby-recaptcha>, ["= 1.0.3"])
|
2461
2497
|
s.add_dependency(%q<tzinfo>, [">= 0"])
|
@@ -2463,10 +2499,9 @@ Gem::Specification.new do |s|
|
|
2463
2499
|
s.add_dependency(%q<httparty>, ["= 0.7.8"])
|
2464
2500
|
s.add_dependency(%q<simple_xlsx_writer>, [">= 0"])
|
2465
2501
|
s.add_dependency(%q<rubyless>, ["= 0.8.6"])
|
2466
|
-
s.add_dependency(%q<property>, ["= 2.2
|
2502
|
+
s.add_dependency(%q<property>, ["= 2.3.2"])
|
2467
2503
|
s.add_dependency(%q<uuidtools>, ["= 2.0.0"])
|
2468
2504
|
s.add_dependency(%q<authlogic>, ["= 2.1.3"])
|
2469
|
-
s.add_dependency(%q<zafu>, ["= 0.8.6"])
|
2470
2505
|
s.add_dependency(%q<shoulda>, ["= 2.10.3"])
|
2471
2506
|
s.add_dependency(%q<fast_gettext>, ["~> 0.4.16"])
|
2472
2507
|
s.add_dependency(%q<syntax>, ["= 1.0.0"])
|
@@ -2482,7 +2517,7 @@ Gem::Specification.new do |s|
|
|
2482
2517
|
s.add_dependency(%q<differ>, ["= 0.1.2"])
|
2483
2518
|
s.add_dependency(%q<RedCloth>, ["= 3.0.4"])
|
2484
2519
|
s.add_dependency(%q<open4>, [">= 0"])
|
2485
|
-
s.add_dependency(%q<querybuilder>, ["= 1.1.
|
2520
|
+
s.add_dependency(%q<querybuilder>, ["= 1.1.3"])
|
2486
2521
|
end
|
2487
2522
|
else
|
2488
2523
|
s.add_dependency(%q<ruby-recaptcha>, ["= 1.0.3"])
|
@@ -2491,10 +2526,9 @@ Gem::Specification.new do |s|
|
|
2491
2526
|
s.add_dependency(%q<httparty>, ["= 0.7.8"])
|
2492
2527
|
s.add_dependency(%q<simple_xlsx_writer>, [">= 0"])
|
2493
2528
|
s.add_dependency(%q<rubyless>, ["= 0.8.6"])
|
2494
|
-
s.add_dependency(%q<property>, ["= 2.2
|
2529
|
+
s.add_dependency(%q<property>, ["= 2.3.2"])
|
2495
2530
|
s.add_dependency(%q<uuidtools>, ["= 2.0.0"])
|
2496
2531
|
s.add_dependency(%q<authlogic>, ["= 2.1.3"])
|
2497
|
-
s.add_dependency(%q<zafu>, ["= 0.8.6"])
|
2498
2532
|
s.add_dependency(%q<shoulda>, ["= 2.10.3"])
|
2499
2533
|
s.add_dependency(%q<fast_gettext>, ["~> 0.4.16"])
|
2500
2534
|
s.add_dependency(%q<syntax>, ["= 1.0.0"])
|
@@ -2510,7 +2544,7 @@ Gem::Specification.new do |s|
|
|
2510
2544
|
s.add_dependency(%q<differ>, ["= 0.1.2"])
|
2511
2545
|
s.add_dependency(%q<RedCloth>, ["= 3.0.4"])
|
2512
2546
|
s.add_dependency(%q<open4>, [">= 0"])
|
2513
|
-
s.add_dependency(%q<querybuilder>, ["= 1.1.
|
2547
|
+
s.add_dependency(%q<querybuilder>, ["= 1.1.3"])
|
2514
2548
|
end
|
2515
2549
|
end
|
2516
2550
|
|