semantic_navigation 0.2.4 → 0.2.5

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 3d11fbfc574d4f330af86cca8173569f75ee9327
4
- data.tar.gz: 3124611a34e1d5a94174b978b5a2c08a11d48d26
3
+ metadata.gz: bd6f6a9751303b581374662ebe71473c86ff0290
4
+ data.tar.gz: ef442858a1379409014b4054424246846a304538
5
5
  SHA512:
6
- metadata.gz: f79196d81f87f41260903b52c6438b1e5373875074300aaaa6d7781c421b38c0efb45793d6da1c1bde6303767f8e723d98e1ae62207bf3b70e35173e4fa884fb
7
- data.tar.gz: f5592c9a936c43ae524a1ca411e8ddfb0e340336435f9437a77828a2a2711f7e04dc2c0b593dd38be3092fb4387c10293962823c23c46ae7b346c73a8b9cff98
6
+ metadata.gz: 9e19fb51087c03bab87d9aa10e2d0e18a2ab775ccdf8f7cea04bc10e0b6ba08976d1504e5b7f610c51a8497b0a861a1740af2149d91d7ac1d2b58aa46315ae5f
7
+ data.tar.gz: 1c3a323d78b13381fd260c715f91e1e5d13d727d37c464c91906d67dfadb0525a0b76a7368d924b2b952ad55e683f05d8c8533a35a879ff90db0b93ae9d56ef8
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- semantic_navigation (0.2.3)
4
+ semantic_navigation (0.2.5)
5
5
  rails (>= 3.2.0)
6
6
 
7
7
  GEM
@@ -13,6 +13,7 @@ module SemanticNavigation
13
13
  show_link_id false
14
14
 
15
15
  property_for :base, :ico
16
+ style_accessor :node_urls => false
16
17
 
17
18
  private
18
19
 
@@ -28,7 +29,7 @@ module SemanticNavigation
28
29
  content_tag :li, nil, {id: show_id(:leaf, object.id),
29
30
  class: merge_classes(:leaf, object.active, [object.classes,'dropdown'].flatten)
30
31
  }.merge(object.html) do
31
- content_tag(:a, {:href => '#',
32
+ content_tag(:a, {:href => (node_urls ? object.url : "#"),
32
33
  id: show_id(:link, object.id),
33
34
  class: merge_classes(:link, object.active, [object.link_classes,'dropdown-toggle'].flatten),
34
35
  'data-toggle'=> :dropdown
@@ -1,3 +1,3 @@
1
1
  module SemanticNavigation
2
- VERSION = "0.2.4"
2
+ VERSION = "0.2.5"
3
3
  end
@@ -16,292 +16,292 @@ describe SemanticNavigation::Renderers::List do
16
16
  @view_object = ViewObject.new
17
17
  end
18
18
 
19
- # it 'empty ul tag for empty navigation' do
20
-
21
- # @configuration.run do
22
- # navigate :menu do
23
- # end
24
- # end
25
-
26
- # result = @view_object.navigation_for :menu
27
- # result.should == "<ul class=\"list\" id=\"menu\"><\/ul>"
28
- # end
29
-
30
- # it 'one level navigation' do
31
- # @configuration.run do
32
- # navigate :menu do
33
- # item :url1, 'url1', :name => 'url1'
34
- # item :url2, 'url2', :name => 'url2'
35
- # end
36
- # end
37
-
38
- # result = @view_object.navigation_for :menu
39
- # result.should == ["<ul class=\"list\" id=\"menu\">",
40
- # "<li id=\"url1\">",
41
- # "<a href=\"url1\" id=\"url1\">",
42
- # "url1",
43
- # "</a>",
44
- # "</li>",
45
- # "<li id=\"url2\">",
46
- # "<a href=\"url2\" id=\"url2\">",
47
- # "url2",
48
- # "</a>",
49
- # "</li>",
50
- # "</ul>"].join
51
- # end
52
-
53
- # it 'one level navigation with specific menu tag' do
54
- # @configuration.run do
55
-
56
- # register_renderer :my_list, :list
57
-
58
- # styles_for :my_list do
59
- # menu_tag :ol
60
- # end
61
-
62
- # navigate :menu do
63
- # item :url1, 'url1', :name => 'url1'
64
- # item :url2, 'url2', :name => 'url2'
65
- # end
66
- # end
67
-
68
- # result = @view_object.navigation_for :menu, as: :my_list
69
- # result.should == ["<ol class=\"list\" id=\"menu\">",
70
- # "<li id=\"url1\">",
71
- # "<a href=\"url1\" id=\"url1\">",
72
- # "url1",
73
- # "</a>",
74
- # "</li>",
75
- # "<li id=\"url2\">",
76
- # "<a href=\"url2\" id=\"url2\">",
77
- # "url2",
78
- # "</a>",
79
- # "</li>",
80
- # "</ol>"].join
81
- # end
82
-
83
- # it 'one level navigation with specific menu tag' do
84
- # @configuration.run do
85
-
86
- # register_renderer :my_list, :list
87
-
88
- # styles_for :my_list do
89
- # menu_tag :ol
90
- # end
91
-
92
- # navigate :menu do
93
- # item :url1, 'url1', :name => 'url1' do
94
- # item :url2, 'url2', :name => 'url2'
95
- # end
96
- # end
97
- # end
98
-
99
- # result = @view_object.navigation_for :menu, as: :my_list
100
- # result.should == ["<ol class=\"list\" id=\"menu\">",
101
- # "<li id=\"url1\">",
102
- # "<a href=\"url1\" id=\"url1\">",
103
- # "url1",
104
- # "</a>",
105
- # "<ol id=\"url1\">",
106
- # "<li id=\"url2\">",
107
- # "<a href=\"url2\" id=\"url2\">",
108
- # "url2",
109
- # "</a>",
110
- # "</li>",
111
- # "</ol>",
112
- # "</li>",
113
- # "</ol>"].join
114
- # end
115
-
116
- # it 'one multilevel navigation' do
117
- # @configuration.run do
118
- # navigate :menu do
119
- # item :url1, 'url1', :name => 'url1' do
120
- # item :suburl1, 'suburl1', :name => 'suburl1'
121
- # end
122
- # item :url2, 'url2', :name => 'url2' do
123
- # item :suburl2, 'suburl2', :name => 'suburl2'
124
- # end
125
- # end
126
- # end
127
-
128
- # result = @view_object.navigation_for :menu
129
- # result.should == ["<ul class=\"list\" id=\"menu\">",
130
- # "<li id=\"url1\">",
131
- # "<a href=\"url1\" id=\"url1\">",
132
- # "url1",
133
- # "</a>",
134
- # "<ul id=\"url1\">",
135
- # "<li id=\"suburl1\">",
136
- # "<a href=\"suburl1\" id=\"suburl1\">",
137
- # "suburl1",
138
- # "</a>",
139
- # "</li>",
140
- # "</ul>",
141
- # "</li>",
142
- # "<li id=\"url2\">",
143
- # "<a href=\"url2\" id=\"url2\">",
144
- # "url2",
145
- # "</a>",
146
- # "<ul id=\"url2\">",
147
- # "<li id=\"suburl2\">",
148
- # "<a href=\"suburl2\" id=\"suburl2\">",
149
- # "suburl2",
150
- # "</a>",
151
- # "</li>",
152
- # "</ul>",
153
- # "</li>",
154
- # "</ul>"].join
155
- # end
156
-
157
- # it 'only root level' do
158
- # @configuration.run do
159
- # navigate :menu do
160
- # item :url1, 'url1', :name => 'url1' do
161
- # item :suburl1, 'suburl1', :name => 'suburl1'
162
- # end
163
- # item :url2, 'url2', :name => 'url2' do
164
- # item :suburl2, 'suburl2', :name => 'suburl2'
165
- # end
166
- # end
167
- # end
168
-
169
- # result = @view_object.navigation_for :menu, :level => 0
170
- # result.should == ["<ul class=\"list\" id=\"menu\">",
171
- # "<li id=\"url1\">",
172
- # "<a href=\"url1\" id=\"url1\">",
173
- # "url1",
174
- # "</a>",
175
- # "</li>",
176
- # "<li id=\"url2\">",
177
- # "<a href=\"url2\" id=\"url2\">",
178
- # "url2",
179
- # "</a>",
180
- # "</li>",
181
- # "</ul>"].join
182
- # end
183
-
184
- # it 'second level if some item of first level is active' do
185
- # @configuration.run do
186
- # navigate :menu do
187
- # item :url1, 'url1', :name => 'url1' do
188
- # item :suburl1, 'suburl1', :name => 'suburl1'
189
- # end
190
- # item :url2, 'url2', :name => 'url2' do
191
- # item :suburl2, 'suburl2', :name => 'suburl2'
192
- # end
193
- # end
194
- # end
195
-
196
- # @view_object.should_receive(:current_page?).and_return(false, true, false, false)
197
-
198
- # result = @view_object.navigation_for :menu, :level => 1
199
- # result.should == ["<ul class=\"list active\" id=\"menu\">",
200
- # "<li id=\"suburl1\">",
201
- # "<a href=\"suburl1\" id=\"suburl1\">",
202
- # "suburl1",
203
- # "</a>",
204
- # "</li>",
205
- # "</ul>"].join
206
- # end
207
-
208
- # it 'the exact levels' do
209
- # @configuration.run do
210
- # navigate :menu do
211
- # item :url1, 'url1', :name => 'url1' do
212
- # item :suburl1, 'suburl1', :name => 'suburl1' do
213
- # item :subsub1, 'subsub1', :name => 'subsub1'
214
- # end
215
- # end
216
- # item :url2, 'url2', :name => 'url2' do
217
- # item :suburl2, 'suburl2', :name => 'suburl2' do
218
- # item :subsub2, 'subsub2', :name => 'subsub2'
219
- # end
220
- # end
221
- # end
222
- # end
223
-
224
- # result = @view_object.navigation_for :menu, :levels => 0..1
225
- # result.should == ["<ul class=\"list\" id=\"menu\">",
226
- # "<li id=\"url1\">",
227
- # "<a href=\"url1\" id=\"url1\">",
228
- # "url1",
229
- # "</a>",
230
- # "<ul id=\"url1\">",
231
- # "<li id=\"suburl1\">",
232
- # "<a href=\"suburl1\" id=\"suburl1\">",
233
- # "suburl1",
234
- # "</a>",
235
- # "</li>",
236
- # "</ul>",
237
- # "</li>",
238
- # "<li id=\"url2\">",
239
- # "<a href=\"url2\" id=\"url2\">",
240
- # "url2",
241
- # "</a>",
242
- # "<ul id=\"url2\">",
243
- # "<li id=\"suburl2\">",
244
- # "<a href=\"suburl2\" id=\"suburl2\">",
245
- # "suburl2",
246
- # "</a>",
247
- # "</li>",
248
- # "</ul>",
249
- # "</li>",
250
- # "</ul>"].join
251
- # end
252
-
253
- # it 'navigation except some item' do
254
- # @configuration.run do
255
- # navigate :menu do
256
- # item :url1, 'url1', :name => 'url1' do
257
- # item :suburl1, 'suburl1', :name => 'suburl1'
258
- # end
259
- # item :url2, 'url2', :name => 'url2' do
260
- # item :suburl2, 'suburl2', :name => 'suburl2'
261
- # end
262
- # end
263
- # end
264
-
265
- # result = @view_object.navigation_for :menu, :except_for => [:url1]
266
- # result.should == ["<ul class=\"list\" id=\"menu\">",
267
- # "<li id=\"url2\">",
268
- # "<a href=\"url2\" id=\"url2\">",
269
- # "url2",
270
- # "</a>",
271
- # "<ul id=\"url2\">",
272
- # "<li id=\"suburl2\">",
273
- # "<a href=\"suburl2\" id=\"suburl2\">",
274
- # "suburl2",
275
- # "</a>",
276
- # "</li>",
277
- # "</ul>",
278
- # "</li>",
279
- # "</ul>"].join
280
- # end
281
-
282
- # it 'navigation except some items' do
283
- # @configuration.run do
284
- # navigate :menu do
285
- # item :url1, 'url1', :name => 'url1' do
286
- # item :suburl1, 'suburl1', :name => 'suburl1'
287
- # end
288
- # item :url2, 'url2', :name => 'url2' do
289
- # item :suburl2, 'suburl2', :name => 'suburl2'
290
- # end
291
- # end
292
- # end
293
-
294
- # result = @view_object.navigation_for :menu, :except_for => [:suburl1,:url2]
295
- # result.should == ["<ul class=\"list\" id=\"menu\">",
296
- # "<li id=\"url1\">",
297
- # "<a href=\"url1\" id=\"url1\">",
298
- # "url1",
299
- # "</a>",
300
- # "<ul id=\"url1\">",
301
- # "</ul>",
302
- # "</li>",
303
- # "</ul>"].join
304
- # end
19
+ it 'empty ul tag for empty navigation' do
20
+
21
+ @configuration.run do
22
+ navigate :menu do
23
+ end
24
+ end
25
+
26
+ result = @view_object.navigation_for :menu
27
+ result.should == "<ul class=\"list\" id=\"menu\"><\/ul>"
28
+ end
29
+
30
+ it 'one level navigation' do
31
+ @configuration.run do
32
+ navigate :menu do
33
+ item :url1, 'url1', :name => 'url1'
34
+ item :url2, 'url2', :name => 'url2'
35
+ end
36
+ end
37
+
38
+ result = @view_object.navigation_for :menu
39
+ result.should == ["<ul class=\"list\" id=\"menu\">",
40
+ "<li id=\"url1\">",
41
+ "<a href=\"url1\" id=\"url1\">",
42
+ "url1",
43
+ "</a>",
44
+ "</li>",
45
+ "<li id=\"url2\">",
46
+ "<a href=\"url2\" id=\"url2\">",
47
+ "url2",
48
+ "</a>",
49
+ "</li>",
50
+ "</ul>"].join
51
+ end
52
+
53
+ it 'one level navigation with specific menu tag' do
54
+ @configuration.run do
55
+
56
+ register_renderer :my_list, :list
57
+
58
+ styles_for :my_list do
59
+ menu_tag :ol
60
+ end
61
+
62
+ navigate :menu do
63
+ item :url1, 'url1', :name => 'url1'
64
+ item :url2, 'url2', :name => 'url2'
65
+ end
66
+ end
67
+
68
+ result = @view_object.navigation_for :menu, as: :my_list
69
+ result.should == ["<ol class=\"list\" id=\"menu\">",
70
+ "<li id=\"url1\">",
71
+ "<a href=\"url1\" id=\"url1\">",
72
+ "url1",
73
+ "</a>",
74
+ "</li>",
75
+ "<li id=\"url2\">",
76
+ "<a href=\"url2\" id=\"url2\">",
77
+ "url2",
78
+ "</a>",
79
+ "</li>",
80
+ "</ol>"].join
81
+ end
82
+
83
+ it 'one level navigation with specific menu tag' do
84
+ @configuration.run do
85
+
86
+ register_renderer :my_list, :list
87
+
88
+ styles_for :my_list do
89
+ menu_tag :ol
90
+ end
91
+
92
+ navigate :menu do
93
+ item :url1, 'url1', :name => 'url1' do
94
+ item :url2, 'url2', :name => 'url2'
95
+ end
96
+ end
97
+ end
98
+
99
+ result = @view_object.navigation_for :menu, as: :my_list
100
+ result.should == ["<ol class=\"list\" id=\"menu\">",
101
+ "<li id=\"url1\">",
102
+ "<a href=\"url1\" id=\"url1\">",
103
+ "url1",
104
+ "</a>",
105
+ "<ol id=\"url1\">",
106
+ "<li id=\"url2\">",
107
+ "<a href=\"url2\" id=\"url2\">",
108
+ "url2",
109
+ "</a>",
110
+ "</li>",
111
+ "</ol>",
112
+ "</li>",
113
+ "</ol>"].join
114
+ end
115
+
116
+ it 'one multilevel navigation' do
117
+ @configuration.run do
118
+ navigate :menu do
119
+ item :url1, 'url1', :name => 'url1' do
120
+ item :suburl1, 'suburl1', :name => 'suburl1'
121
+ end
122
+ item :url2, 'url2', :name => 'url2' do
123
+ item :suburl2, 'suburl2', :name => 'suburl2'
124
+ end
125
+ end
126
+ end
127
+
128
+ result = @view_object.navigation_for :menu
129
+ result.should == ["<ul class=\"list\" id=\"menu\">",
130
+ "<li id=\"url1\">",
131
+ "<a href=\"url1\" id=\"url1\">",
132
+ "url1",
133
+ "</a>",
134
+ "<ul id=\"url1\">",
135
+ "<li id=\"suburl1\">",
136
+ "<a href=\"suburl1\" id=\"suburl1\">",
137
+ "suburl1",
138
+ "</a>",
139
+ "</li>",
140
+ "</ul>",
141
+ "</li>",
142
+ "<li id=\"url2\">",
143
+ "<a href=\"url2\" id=\"url2\">",
144
+ "url2",
145
+ "</a>",
146
+ "<ul id=\"url2\">",
147
+ "<li id=\"suburl2\">",
148
+ "<a href=\"suburl2\" id=\"suburl2\">",
149
+ "suburl2",
150
+ "</a>",
151
+ "</li>",
152
+ "</ul>",
153
+ "</li>",
154
+ "</ul>"].join
155
+ end
156
+
157
+ it 'only root level' do
158
+ @configuration.run do
159
+ navigate :menu do
160
+ item :url1, 'url1', :name => 'url1' do
161
+ item :suburl1, 'suburl1', :name => 'suburl1'
162
+ end
163
+ item :url2, 'url2', :name => 'url2' do
164
+ item :suburl2, 'suburl2', :name => 'suburl2'
165
+ end
166
+ end
167
+ end
168
+
169
+ result = @view_object.navigation_for :menu, :level => 0
170
+ result.should == ["<ul class=\"list\" id=\"menu\">",
171
+ "<li id=\"url1\">",
172
+ "<a href=\"url1\" id=\"url1\">",
173
+ "url1",
174
+ "</a>",
175
+ "</li>",
176
+ "<li id=\"url2\">",
177
+ "<a href=\"url2\" id=\"url2\">",
178
+ "url2",
179
+ "</a>",
180
+ "</li>",
181
+ "</ul>"].join
182
+ end
183
+
184
+ it 'second level if some item of first level is active' do
185
+ @configuration.run do
186
+ navigate :menu do
187
+ item :url1, 'url1', :name => 'url1' do
188
+ item :suburl1, 'suburl1', :name => 'suburl1'
189
+ end
190
+ item :url2, 'url2', :name => 'url2' do
191
+ item :suburl2, 'suburl2', :name => 'suburl2'
192
+ end
193
+ end
194
+ end
195
+
196
+ @view_object.should_receive(:current_page?).and_return(false, true, false, false)
197
+
198
+ result = @view_object.navigation_for :menu, :level => 1
199
+ result.should == ["<ul class=\"list active\" id=\"menu\">",
200
+ "<li id=\"suburl1\">",
201
+ "<a href=\"suburl1\" id=\"suburl1\">",
202
+ "suburl1",
203
+ "</a>",
204
+ "</li>",
205
+ "</ul>"].join
206
+ end
207
+
208
+ it 'the exact levels' do
209
+ @configuration.run do
210
+ navigate :menu do
211
+ item :url1, 'url1', :name => 'url1' do
212
+ item :suburl1, 'suburl1', :name => 'suburl1' do
213
+ item :subsub1, 'subsub1', :name => 'subsub1'
214
+ end
215
+ end
216
+ item :url2, 'url2', :name => 'url2' do
217
+ item :suburl2, 'suburl2', :name => 'suburl2' do
218
+ item :subsub2, 'subsub2', :name => 'subsub2'
219
+ end
220
+ end
221
+ end
222
+ end
223
+
224
+ result = @view_object.navigation_for :menu, :levels => 0..1
225
+ result.should == ["<ul class=\"list\" id=\"menu\">",
226
+ "<li id=\"url1\">",
227
+ "<a href=\"url1\" id=\"url1\">",
228
+ "url1",
229
+ "</a>",
230
+ "<ul id=\"url1\">",
231
+ "<li id=\"suburl1\">",
232
+ "<a href=\"suburl1\" id=\"suburl1\">",
233
+ "suburl1",
234
+ "</a>",
235
+ "</li>",
236
+ "</ul>",
237
+ "</li>",
238
+ "<li id=\"url2\">",
239
+ "<a href=\"url2\" id=\"url2\">",
240
+ "url2",
241
+ "</a>",
242
+ "<ul id=\"url2\">",
243
+ "<li id=\"suburl2\">",
244
+ "<a href=\"suburl2\" id=\"suburl2\">",
245
+ "suburl2",
246
+ "</a>",
247
+ "</li>",
248
+ "</ul>",
249
+ "</li>",
250
+ "</ul>"].join
251
+ end
252
+
253
+ it 'navigation except some item' do
254
+ @configuration.run do
255
+ navigate :menu do
256
+ item :url1, 'url1', :name => 'url1' do
257
+ item :suburl1, 'suburl1', :name => 'suburl1'
258
+ end
259
+ item :url2, 'url2', :name => 'url2' do
260
+ item :suburl2, 'suburl2', :name => 'suburl2'
261
+ end
262
+ end
263
+ end
264
+
265
+ result = @view_object.navigation_for :menu, :except_for => [:url1]
266
+ result.should == ["<ul class=\"list\" id=\"menu\">",
267
+ "<li id=\"url2\">",
268
+ "<a href=\"url2\" id=\"url2\">",
269
+ "url2",
270
+ "</a>",
271
+ "<ul id=\"url2\">",
272
+ "<li id=\"suburl2\">",
273
+ "<a href=\"suburl2\" id=\"suburl2\">",
274
+ "suburl2",
275
+ "</a>",
276
+ "</li>",
277
+ "</ul>",
278
+ "</li>",
279
+ "</ul>"].join
280
+ end
281
+
282
+ it 'navigation except some items' do
283
+ @configuration.run do
284
+ navigate :menu do
285
+ item :url1, 'url1', :name => 'url1' do
286
+ item :suburl1, 'suburl1', :name => 'suburl1'
287
+ end
288
+ item :url2, 'url2', :name => 'url2' do
289
+ item :suburl2, 'suburl2', :name => 'suburl2'
290
+ end
291
+ end
292
+ end
293
+
294
+ result = @view_object.navigation_for :menu, :except_for => [:suburl1,:url2]
295
+ result.should == ["<ul class=\"list\" id=\"menu\">",
296
+ "<li id=\"url1\">",
297
+ "<a href=\"url1\" id=\"url1\">",
298
+ "url1",
299
+ "</a>",
300
+ "<ul id=\"url1\">",
301
+ "</ul>",
302
+ "</li>",
303
+ "</ul>"].join
304
+ end
305
305
 
306
306
  it 'considers scopes' do
307
307
  allow(@view_object).to receive(:role?).with('manager').and_return false
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: semantic_navigation
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.4
4
+ version: 0.2.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Sergey Gribovski