Commit 7911d32bbb67031c3b8d6b506b22c3b01aaa8135

Authored by Rodrigo Souto
1 parent 99d66a60

Extending hotspot for removing new and upload buttons from article actions

app/views/content_viewer/_article_toolbar.rhtml
@@ -34,11 +34,11 @@ @@ -34,11 +34,11 @@
34 <%= expirable_button @page, :locale, content, url %> 34 <%= expirable_button @page, :locale, content, url %>
35 <% end %> 35 <% end %>
36 36
37 - <%= colorbox_button(:new, label_for_new_article(@page), profile.admin_url.merge(:controller => 'cms', :action => 'new', :parent_id => (@page.folder? ? @page : (@page.parent.nil? ? nil : @page.parent)))) %> 37 + <%= colorbox_button(:new, label_for_new_article(@page), profile.admin_url.merge(:controller => 'cms', :action => 'new', :parent_id => (@page.folder? ? @page : (@page.parent.nil? ? nil : @page.parent)))) if !remove_content_button(:new) %>
38 <% end %> 38 <% end %>
39 39
40 <% if @page.accept_uploads? && @page.allow_create?(user) %> 40 <% if @page.accept_uploads? && @page.allow_create?(user) %>
41 - <%= button('upload-file', _('Upload files'), profile.admin_url.merge(:controller => 'cms', :action => 'upload_files', :parent_id => (@page.folder? ? @page : @page.parent))) %> 41 + <%= button('upload-file', _('Upload files'), profile.admin_url.merge(:controller => 'cms', :action => 'upload_files', :parent_id => (@page.folder? ? @page : @page.parent))) if !remove_content_button(:upload)%>
42 <% end %> 42 <% end %>
43 43
44 <% if !@page.allow_create?(user) && profile.community? && (@page.blog? || @page.parent && @page.parent.blog?) && !remove_content_button(:suggest) %> 44 <% if !@page.allow_create?(user) && profile.community? && (@page.blog? || @page.parent && @page.parent.blog?) && !remove_content_button(:suggest) %>
lib/noosfero/plugin.rb
@@ -353,7 +353,9 @@ class Noosfero::Plugin @@ -353,7 +353,9 @@ class Noosfero::Plugin
353 private 353 private
354 354
355 def content_actions 355 def content_actions
356 - %w[edit delete spread locale suggest home] 356 + #FIXME 'new' and 'upload' only works for content_remove. It should work for
  357 + #content_expire too.
  358 + %w[edit delete spread locale suggest home new upload]
357 end 359 end
358 360
359 end 361 end
plugins/work_assignment/lib/work_assignment_plugin.rb
@@ -16,4 +16,12 @@ class WorkAssignmentPlugin &lt; Noosfero::Plugin @@ -16,4 +16,12 @@ class WorkAssignmentPlugin &lt; Noosfero::Plugin
16 true 16 true
17 end 17 end
18 18
  19 + def content_remove_new(content)
  20 + content.kind_of?(WorkAssignmentPlugin::WorkAssignment)
  21 + end
  22 +
  23 + def content_remove_upload(content)
  24 + !content.profile.members.include?(context.send(:user))
  25 + end
  26 +
19 end 27 end