@@ -0,0 +1,13 | |||
|
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 |
@@ -81,7 +81,8 Redmine::AccessControl.map do |map| | |||
|
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 |
|
|
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 |
@@ -32,6 +32,7 roles_001: | |||
|
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 |
@@ -251,4 +251,11 class WikiControllerTest < Test::Unit::TestCase | |||
|
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 |
General Comments 0
You need to be logged in to leave comments.
Login now