Commit 1a35b393b16b0ea943f2b2c9c8ba58a4839addfa
1 parent
a917f8f8
Exists in
master
and in
29 other branches
ActionItem24: not offering to create a child of a no-child article
git-svn-id: https://svn.colivre.coop.br/svn/noosfero/trunk@1148 3f533792-8f58-4932-b0fe-aaf55b0a4547
Showing
2 changed files
with
29 additions
and
1 deletions
Show diff stats
app/views/cms/view.rhtml
... | ... | @@ -36,7 +36,9 @@ |
36 | 36 | |
37 | 37 | <% if @article %> |
38 | 38 | <% button_bar(:class => 'file-manager-controls') do %> |
39 | - <%= button('new', _('New subitem'), :action => 'new', :parent_id => @article.id) %> | |
39 | + <% if @article.allow_children? %> | |
40 | + <%= button('new', _('New subitem'), :action => 'new', :parent_id => @article.id) %> | |
41 | + <% end %> | |
40 | 42 | <%= button('up', _('Go up one level'), :action => (@article.parent ? 'view' : 'index'), :id => @article.parent) %> |
41 | 43 | <% end %> |
42 | 44 | <% end %> | ... | ... |
test/functional/cms_controller_test.rb
... | ... | @@ -172,7 +172,33 @@ class CmsControllerTest < Test::Unit::TestCase |
172 | 172 | flunk 'pending' |
173 | 173 | end |
174 | 174 | |
175 | + should 'offer to create children' do | |
176 | + Article.any_instance.stubs(:allow_children?).returns(true) | |
177 | + | |
178 | + article = Article.new(:name => 'test') | |
179 | + article.profile = profile | |
180 | + article.save! | |
181 | + | |
182 | + get :view, :profile => profile.identifier, :id => article.id | |
183 | + assert_response :success | |
184 | + assert_template 'view' | |
185 | + assert_tag :tag => 'a', :attributes => { :href => "/myprofile/#{profile.identifier}/cms/new?parent_id=#{article.id}"} | |
186 | + end | |
187 | + | |
175 | 188 | should 'not offer to create children if article does not accept them' do |
189 | + Article.any_instance.stubs(:allow_children?).returns(false) | |
190 | + | |
191 | + article = Article.new(:name => 'test') | |
192 | + article.profile = profile | |
193 | + article.save! | |
194 | + | |
195 | + get :view, :profile => profile.identifier, :id => article.id | |
196 | + assert_response :success | |
197 | + assert_template 'view' | |
198 | + assert_no_tag :tag => 'a', :attributes => { :href => "/myprofile/#{profile.identifier}/cms/new?parent_id=#{article.id}"} | |
199 | + end | |
200 | + | |
201 | + should 'not allow to create children of non-child articles' do | |
176 | 202 | flunk 'pending' |
177 | 203 | end |
178 | 204 | ... | ... |