Added project module concept.

A project module (eg. issue tracking, news, wiki,...) is a set of permissions that can enabled/disabled at project level.
For each project, modules can be enabled on the project settings view ('Modules' tab).
This requires a specific permission: 'Select project modules' (if this permission is turned off, only Redmine administrators can choose which modules a project uses).

When applying this migration, all modules are enabled for all existing projects.

git-svn-id: http://redmine.rubyforge.org/svn/trunk@725 e93f8b46-1217-0410-a6f0-8f06a7374b81
This commit is contained in:
Jean-Philippe Lang committed 2007-09-14 11:34:08 +00:00
1 parent 29348fafb7
commit 21c97c6a13
47 files changed
+513 -244

No files matched your search

+33
View File
@@ -0,0 +1,33 @@
---
enabled_modules_001:
name: issue_tracking
project_id: 1
id: 1
enabled_modules_002:
name: time_tracking
project_id: 1
id: 2
enabled_modules_003:
name: news
project_id: 1
id: 3
enabled_modules_004:
name: documents
project_id: 1
id: 4
enabled_modules_005:
name: files
project_id: 1
id: 5
enabled_modules_006:
name: wiki
project_id: 1
id: 6
enabled_modules_007:
name: repository
project_id: 1
id: 7
enabled_modules_008:
name: boards
project_id: 1
id: 8
+1 -1
View File
@@ -22,7 +22,7 @@ require 'projects_controller'
class ProjectsController; def rescue_action(e) raise e end; end
class ProjectsControllerTest < Test::Unit::TestCase
fixtures :projects, :users, :roles
fixtures :projects, :users, :roles, :enabled_modules
def setup
@controller = ProjectsController.new
+1 -1
View File
@@ -18,7 +18,7 @@
require File.dirname(__FILE__) + '/../test_helper'
class MailHandlerTest < Test::Unit::TestCase
fixtures :users, :projects, :roles, :members, :issues, :trackers, :enumerations
fixtures :users, :projects, :enabled_modules, :roles, :members, :issues, :trackers, :enumerations
FIXTURES_PATH = File.dirname(__FILE__) + '/../fixtures'
CHARSET = "utf-8"
+1 -1
View File
@@ -58,7 +58,7 @@ class WatcherTest < Test::Unit::TestCase
@user.mail_notification = false
@user.save
@issue.reload
assert !@issue.watcher_recipients.include?(@user.mail)
assert @issue.watcher_recipients.include?(@user.mail)
end
def test_unwatch