Browse Source

Moved controller code to new method Project#add_default_member.

git-svn-id: http://svn.redmine.org/redmine/trunk@13542 e93f8b46-1217-0410-a6f0-8f06a7374b81
tags/3.0.0
Jean-Philippe Lang 9 years ago
parent
commit
4f4a019beb
2 changed files with 10 additions and 4 deletions
  1. 1
    4
      app/controllers/projects_controller.rb
  2. 9
    0
      app/models/project.rb

+ 1
- 4
app/controllers/projects_controller.rb View File

@@ -76,11 +76,8 @@ class ProjectsController < ApplicationController

if validate_parent_id && @project.save
@project.set_allowed_parent!(params[:project]['parent_id']) if params[:project].has_key?('parent_id')
# Add current user as a project member if current user is not admin
unless User.current.admin?
r = Role.givable.find_by_id(Setting.new_project_user_role_id.to_i) || Role.givable.first
m = Member.new(:user => User.current, :roles => [r])
@project.members << m
@project.add_default_member(User.current)
end
respond_to do |format|
format.html {

+ 9
- 0
app/models/project.rb View File

@@ -499,6 +499,15 @@ class Project < ActiveRecord::Base
end
end

# Adds user as a project member with the default role
# Used for when a non-admin user creates a project
def add_default_member(user)
role = Role.givable.find_by_id(Setting.new_project_user_role_id.to_i) || Role.givable.first
member = Member.new(:project => self, :principal => user, :roles => [role])
self.members << member
member
end

# Deletes all project's members
def delete_all_members
me, mr = Member.table_name, MemberRole.table_name

Loading…
Cancel
Save