Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--app/controllers/team_members_controller.rb22
-rw-r--r--app/helpers/projects_helper.rb4
-rw-r--r--app/views/team_members/_form.html.haml8
-rw-r--r--app/views/team_members/_show.html.haml10
-rw-r--r--app/views/team_members/create.js.haml2
-rw-r--r--app/views/team_members/index.html.haml2
-rw-r--r--app/views/team_members/show.html.haml31
-rw-r--r--app/views/team_members/update.js.haml6
8 files changed, 45 insertions, 40 deletions
diff --git a/app/controllers/team_members_controller.rb b/app/controllers/team_members_controller.rb
index 8378a8458ff..2b48e29ed7d 100644
--- a/app/controllers/team_members_controller.rb
+++ b/app/controllers/team_members_controller.rb
@@ -7,12 +7,12 @@ class TeamMembersController < ProjectResourceController
end
def show
- @team_member = project.users_projects.find(params[:id])
- @events = @team_member.user.recent_events.where(:project_id => @project.id).limit(7)
+ @user_project_relation = project.users_projects.find_by_user_id(member)
+ @events = member.recent_events.in_projects(project).limit(7)
end
def new
- @team_member = project.users_projects.new
+ @user_project_relation = project.users_projects.new
end
def create
@@ -28,18 +28,18 @@ class TeamMembersController < ProjectResourceController
end
def update
- @team_member = project.users_projects.find(params[:id])
- @team_member.update_attributes(params[:team_member])
+ @user_project_relation = project.users_projects.find_by_user_id(member)
+ @user_project_relation.update_attributes(params[:team_member])
- unless @team_member.valid?
+ unless @user_project_relation.valid?
flash[:alert] = "User should have at least one role"
end
redirect_to project_team_index_path(@project)
end
def destroy
- @team_member = project.users_projects.find(params[:id])
- @team_member.destroy
+ @user_project_relation = project.users_projects.find_by_user_id(params[:id])
+ @user_project_relation.destroy
respond_to do |format|
format.html { redirect_to project_team_index_path(@project) }
@@ -54,4 +54,10 @@ class TeamMembersController < ProjectResourceController
redirect_to project_team_members_path(project), notice: notice
end
+
+ protected
+
+ def member
+ @member ||= User.find(params[:id])
+ end
end
diff --git a/app/helpers/projects_helper.rb b/app/helpers/projects_helper.rb
index 158925ba6c0..dbd47998eb1 100644
--- a/app/helpers/projects_helper.rb
+++ b/app/helpers/projects_helper.rb
@@ -3,8 +3,8 @@ module ProjectsHelper
@project.users_projects.sort_by(&:project_access).reverse.group_by(&:project_access)
end
- def remove_from_team_message(project, member)
- "You are going to remove #{member.user_name} from #{project.name}. Are you sure?"
+ def remove_from_project_team_message(project, user)
+ "You are going to remove #{user.name} from #{project.name} project team. Are you sure?"
end
def link_to_project project
diff --git a/app/views/team_members/_form.html.haml b/app/views/team_members/_form.html.haml
index a963e462a78..f9ee49dbdeb 100644
--- a/app/views/team_members/_form.html.haml
+++ b/app/views/team_members/_form.html.haml
@@ -1,11 +1,11 @@
%h3.page_title
= "New Team member(s)"
%hr
-= form_for @team_member, as: :team_member, url: project_team_members_path(@project, @team_member) do |f|
- -if @team_member.errors.any?
+= form_for @user_project_relation, as: :team_member, url: project_team_members_path(@project) do |f|
+ -if @user_project_relation.errors.any?
.alert-message.block-message.error
%ul
- - @team_member.errors.full_messages.each do |msg|
+ - @user_project_relation.errors.full_messages.each do |msg|
%li= msg
%h6 1. Choose people you want in the team
@@ -16,7 +16,7 @@
%h6 2. Set access level for them
.clearfix
= f.label :project_access, "Project Access"
- .input= select_tag :project_access, options_for_select(Project.access_options, @team_member.project_access), class: "project-access-select chosen"
+ .input= select_tag :project_access, options_for_select(Project.access_options, @user_project_relation.project_access), class: "project-access-select chosen"
.actions
= f.submit 'Save', class: "btn save-btn"
diff --git a/app/views/team_members/_show.html.haml b/app/views/team_members/_show.html.haml
index 8082f47fca8..52992033805 100644
--- a/app/views/team_members/_show.html.haml
+++ b/app/views/team_members/_show.html.haml
@@ -1,11 +1,11 @@
- user = member.user
- allow_admin = can? current_user, :admin_project, @project
-%li{id: dom_id(member), class: "team_member_row user_#{user.id}"}
+%li{id: dom_id(user), class: "team_member_row user_#{user.id}"}
.row
.span6
- = link_to project_team_member_path(@project, member), title: user.name, class: "dark" do
+ = link_to project_team_member_path(@project, user), title: user.name, class: "dark" do
= image_tag gravatar_icon(user.email, 40), class: "avatar s32"
- = link_to project_team_member_path(@project, member), title: user.name, class: "dark" do
+ = link_to project_team_member_path(@project, user), title: user.name, class: "dark" do
%strong= truncate(user.name, lenght: 40)
%br
%small.cgray= user.email
@@ -13,7 +13,7 @@
.span5.right
- if allow_admin
.left
- = form_for(member, as: :team_member, url: project_team_member_path(@project, member)) do |f|
+ = form_for(member, as: :team_member, url: project_team_member_path(@project, member.user)) do |f|
= f.select :project_access, options_for_select(UsersProject.access_roles, member.project_access), {}, class: "medium project-access-select span2"
.right
- if current_user == user
@@ -23,6 +23,6 @@
- elsif user.blocked
%span.btn.disabled.blocked Blocked
- elsif allow_admin
- = link_to project_team_member_path(project_id: @project, id: member.id), confirm: remove_from_team_message(@project, member), method: :delete, class: "very_small btn danger" do
+ = link_to project_team_member_path(@project, user), confirm: remove_from_project_team_message(@project, user), method: :delete, class: "very_small btn danger" do
%i.icon-minus.icon-white
diff --git a/app/views/team_members/create.js.haml b/app/views/team_members/create.js.haml
index d5ae5d0cc43..b7dff35a269 100644
--- a/app/views/team_members/create.js.haml
+++ b/app/views/team_members/create.js.haml
@@ -1,4 +1,4 @@
-- if @team_member.valid?
+- if @user_project_relation.valid?
:plain
$("#new_team_member").hide("slide", { direction: "right" }, 150, function(){
$("#team-table").show("slide", { direction: "left" }, 150, function() {
diff --git a/app/views/team_members/index.html.haml b/app/views/team_members/index.html.haml
index e413c81bb6c..8ba13939a30 100644
--- a/app/views/team_members/index.html.haml
+++ b/app/views/team_members/index.html.haml
@@ -1,7 +1,7 @@
= render "projects/project_head"
%h3.page_title
Team Members
- (#{@project.users_projects.count})
+ (#{@project.users.count})
%small
Read more about project permissions
%strong= link_to "here", help_permissions_path, class: "vlink"
diff --git a/app/views/team_members/show.html.haml b/app/views/team_members/show.html.haml
index 4008e8bd23e..a6a7152e92a 100644
--- a/app/views/team_members/show.html.haml
+++ b/app/views/team_members/show.html.haml
@@ -1,14 +1,13 @@
- allow_admin = can? current_user, :admin_project, @project
-- user = @team_member.user
.team_member_show
- if can? current_user, :admin_project, @project
- = link_to 'Remove from team', project_team_member_path(project_id: @project, id: @team_member.id), confirm: 'Are you sure?', method: :delete, class: "right btn danger"
+ = link_to 'Remove from team', project_team_member_path(@project, @member), confirm: 'Are you sure?', method: :delete, class: "right btn danger"
.profile_avatar_holder
- = image_tag gravatar_icon(user.email, 60), class: "borders"
+ = image_tag gravatar_icon(@member.email, 60), class: "borders"
%h3.page_title
- = user.name
- %small (@#{user.username})
+ = @member.name
+ %small (@#{@member.username})
%hr
.back_link
@@ -21,34 +20,34 @@
%table.lite
%tr
%td Email
- %td= mail_to user.email
+ %td= mail_to @member.email
%tr
%td Skype
- %td= user.skype
- - unless user.linkedin.blank?
+ %td= @member.skype
+ - unless @member.linkedin.blank?
%tr
%td LinkedIn
- %td= user.linkedin
- - unless user.twitter.blank?
+ %td= @member.linkedin
+ - unless @member.twitter.blank?
%tr
%td Twitter
- %td= user.twitter
- - unless user.bio.blank?
+ %td= @member.twitter
+ - unless @member.bio.blank?
%tr
%td Bio
- %td= user.bio
+ %td= @member.bio
.span6
%table.lite
%tr
%td Member since
- %td= @team_member.created_at.stamp("Aug 21, 2011")
+ %td= @user_project_relation.created_at.stamp("Aug 21, 2011")
%tr
%td
Project Access:
%small (#{link_to "read more", help_permissions_path, class: "vlink"})
%td
- = form_for(@team_member, as: :team_member, url: project_team_member_path(@project, @team_member)) do |f|
- = f.select :project_access, options_for_select(Project.access_options, @team_member.project_access), {}, class: "project-access-select", disabled: !allow_admin
+ = form_for(@user_project_relation, as: :team_member, url: project_team_member_path(@project, @member)) do |f|
+ = f.select :project_access, options_for_select(Project.access_options, @user_project_relation.project_access), {}, class: "project-access-select", disabled: !allow_admin
%hr
= render @events
:javascript
diff --git a/app/views/team_members/update.js.haml b/app/views/team_members/update.js.haml
index 6d7f88160de..c68fe9574a2 100644
--- a/app/views/team_members/update.js.haml
+++ b/app/views/team_members/update.js.haml
@@ -1,6 +1,6 @@
-- if @team_member.valid?
+- if @user_project_relation.valid?
:plain
- $("##{dom_id(@team_member)}").effect("highlight", {color: "#529214"}, 1000);;
+ $("##{dom_id(@user_project_relation)}").effect("highlight", {color: "#529214"}, 1000);;
- else
:plain
- $("##{dom_id(@team_member)}").effect("highlight", {color: "#D12F19"}, 1000);;
+ $("##{dom_id(@user_project_relation)}").effect("highlight", {color: "#D12F19"}, 1000);;