summaryrefslogtreecommitdiffstats
path: root/db
diff options
context:
space:
mode:
authorJean-Philippe Lang <jp_lang@yahoo.fr>2007-05-13 17:09:56 +0000
committerJean-Philippe Lang <jp_lang@yahoo.fr>2007-05-13 17:09:56 +0000
commitb90e84b9fe252df464d084f0222c65367407a4ba (patch)
tree313fc54f0eb43ebb0d61f33b878c8b5e1af27052 /db
parent75582f80f85528865fa86d93ac57a44337742939 (diff)
downloadredmine-b90e84b9fe252df464d084f0222c65367407a4ba.tar.gz
redmine-b90e84b9fe252df464d084f0222c65367407a4ba.zip
Per project forums added.
Permissions for forums management can be set in "Admin -> Roles & Permissions". Forums can be created on the project settings screen ("Forums" tab). Once a project has a forum, a "Forums" link appears in the project menu. For now, posting messages in forums requires to be logged in. Files can be attached to messages. git-svn-id: http://redmine.rubyforge.org/svn/trunk@529 e93f8b46-1217-0410-a6f0-8f06a7374b81
Diffstat (limited to 'db')
-rw-r--r--db/migrate/045_create_boards.rb18
-rw-r--r--db/migrate/046_create_messages.rb21
-rw-r--r--db/migrate/047_add_boards_permissions.rb13
3 files changed, 52 insertions, 0 deletions
diff --git a/db/migrate/045_create_boards.rb b/db/migrate/045_create_boards.rb
new file mode 100644
index 000000000..b8647c812
--- /dev/null
+++ b/db/migrate/045_create_boards.rb
@@ -0,0 +1,18 @@
+class CreateBoards < ActiveRecord::Migration
+ def self.up
+ create_table :boards do |t|
+ t.column :project_id, :integer, :null => false
+ t.column :name, :string, :default => "", :null => false
+ t.column :description, :string
+ t.column :position, :integer, :default => 1, :null => false
+ t.column :topics_count, :integer, :default => 0, :null => false
+ t.column :messages_count, :integer, :default => 0, :null => false
+ t.column :last_message_id, :integer
+ end
+ add_index :boards, [:project_id], :name => :boards_project_id
+ end
+
+ def self.down
+ drop_table :boards
+ end
+end
diff --git a/db/migrate/046_create_messages.rb b/db/migrate/046_create_messages.rb
new file mode 100644
index 000000000..d99aaf842
--- /dev/null
+++ b/db/migrate/046_create_messages.rb
@@ -0,0 +1,21 @@
+class CreateMessages < ActiveRecord::Migration
+ def self.up
+ create_table :messages do |t|
+ t.column :board_id, :integer, :null => false
+ t.column :parent_id, :integer
+ t.column :subject, :string, :default => "", :null => false
+ t.column :content, :text
+ t.column :author_id, :integer
+ t.column :replies_count, :integer, :default => 0, :null => false
+ t.column :last_reply_id, :integer
+ t.column :created_on, :datetime, :null => false
+ t.column :updated_on, :datetime, :null => false
+ end
+ add_index :messages, [:board_id], :name => :messages_board_id
+ add_index :messages, [:parent_id], :name => :messages_parent_id
+ end
+
+ def self.down
+ drop_table :messages
+ end
+end
diff --git a/db/migrate/047_add_boards_permissions.rb b/db/migrate/047_add_boards_permissions.rb
new file mode 100644
index 000000000..cafdc1eac
--- /dev/null
+++ b/db/migrate/047_add_boards_permissions.rb
@@ -0,0 +1,13 @@
+class AddBoardsPermissions < ActiveRecord::Migration
+ def self.up
+ Permission.create :controller => "boards", :action => "new", :description => "button_add", :sort => 2000, :is_public => false, :mail_option => 0, :mail_enabled => 0
+ Permission.create :controller => "boards", :action => "edit", :description => "button_edit", :sort => 2005, :is_public => false, :mail_option => 0, :mail_enabled => 0
+ Permission.create :controller => "boards", :action => "destroy", :description => "button_delete", :sort => 2010, :is_public => false, :mail_option => 0, :mail_enabled => 0
+ end
+
+ def self.down
+ Permission.find_by_controller_and_action("boards", "new").destroy
+ Permission.find_by_controller_and_action("boards", "edit").destroy
+ Permission.find_by_controller_and_action("boards", "destroy").destroy
+ end
+end