Project

General



Profile

« Previous | Next » 

Revision 1938

Adds 'Delete wiki pages attachments' permission.

View differences:

trunk/db/migrate/099_add_delete_wiki_pages_attachments_permission.rb
1
class AddDeleteWikiPagesAttachmentsPermission < ActiveRecord::Migration
2
  def self.up
3
	Role.find(:all).each do |r|
4
	  r.add_permission!(:delete_wiki_pages_attachments) if r.has_permission?(:edit_wiki_pages)
5
  	end
6
  end
7

  
8
  def self.down
9
	Role.find(:all).each do |r|
10
	  r.remove_permission!(:delete_wiki_pages_attachments)
11
  	end
12
  end
13
end
0 14

  
trunk/lib/redmine.rb
81 81
    map.permission :delete_wiki_pages, {:wiki => :destroy}, :require => :member
82 82
    map.permission :view_wiki_pages, :wiki => [:index, :special]
83 83
    map.permission :view_wiki_edits, :wiki => [:history, :diff, :annotate]
84
    map.permission :edit_wiki_pages, :wiki => [:edit, :preview, :add_attachment, :destroy_attachment]
84
    map.permission :edit_wiki_pages, :wiki => [:edit, :preview, :add_attachment]
85
    map.permission :delete_wiki_pages_attachments, :wiki => :destroy_attachment
85 86
    map.permission :protect_wiki_pages, {:wiki => :protect}, :require => :member
86 87
  end
87 88
    
trunk/test/fixtures/roles.yml
32 32
    - :view_wiki_pages
33 33
    - :view_wiki_edits
34 34
    - :edit_wiki_pages
35
    - :delete_wiki_pages_attachments
35 36
    - :protect_wiki_pages
36 37
    - :delete_wiki_pages
37 38
    - :rename_wiki_pages
trunk/test/functional/wiki_controller_test.rb
251 251
    assert_response :success
252 252
    assert_template 'edit'    
253 253
  end
254
  
255
  def test_destroy_attachment
256
    @request.session[:user_id] = 2
257
    assert_difference 'Attachment.count', -1 do
258
      post :destroy_attachment, :id => 1, :page => 'Page_with_an_inline_image', :attachment_id => 3
259
    end
260
  end
254 261
end

Also available in: Unified diff