summaryrefslogtreecommitdiff
path: root/app/services/groups
diff options
context:
space:
mode:
authorZ.J. van de Weg <git@zjvandeweg.nl>2017-03-01 20:34:29 +0100
committerZ.J. van de Weg <git@zjvandeweg.nl>2017-03-02 10:21:29 +0100
commit52c4a7866ed010d8db67e5ca976d8c73d4084784 (patch)
treea1cbb2d3910f9433e23dec22cc0f8c94c2e8675c /app/services/groups
parentf6247600a3f5d500952b0ba32e6915a2d045e392 (diff)
downloadgitlab-ce-52c4a7866ed010d8db67e5ca976d8c73d4084784.tar.gz
Improve UX
Diffstat (limited to 'app/services/groups')
-rw-r--r--app/services/groups/base_service.rb6
-rw-r--r--app/services/groups/create_service.rb12
-rw-r--r--app/services/groups/update_service.rb14
3 files changed, 11 insertions, 21 deletions
diff --git a/app/services/groups/base_service.rb b/app/services/groups/base_service.rb
index 47476aaa05e..a8fa098246a 100644
--- a/app/services/groups/base_service.rb
+++ b/app/services/groups/base_service.rb
@@ -5,11 +5,5 @@ module Groups
def initialize(group, user, params = {})
@group, @current_user, @params = group, user, params.dup
end
-
- private
-
- def create_chat_team?
- @chat_team == true && Gitlab.config.mattermost.enabled
- end
end
end
diff --git a/app/services/groups/create_service.rb b/app/services/groups/create_service.rb
index 4ed2cb7c8af..6ef78c3e677 100644
--- a/app/services/groups/create_service.rb
+++ b/app/services/groups/create_service.rb
@@ -23,7 +23,11 @@ module Groups
@group.name ||= @group.path.dup
if create_chat_team?
- Mattermost::CreateTeamService.new(@group, current_user).execute
+ begin
+ response = Mattermost::CreateTeamService.new(@group, current_user).execute
+
+ @group.build_chat_team(name: response['name'], team_id: response['id'])
+ end
return @group if @group.errors.any?
end
@@ -32,5 +36,11 @@ module Groups
@group.add_owner(current_user)
@group
end
+
+ private
+
+ def create_chat_team?
+ Gitlab.config.mattermost.enabled && @chat_team && group.chat_team.nil?
+ end
end
end
diff --git a/app/services/groups/update_service.rb b/app/services/groups/update_service.rb
index e8ad6d41ed4..4e878ec556a 100644
--- a/app/services/groups/update_service.rb
+++ b/app/services/groups/update_service.rb
@@ -1,8 +1,6 @@
module Groups
class UpdateService < Groups::BaseService
def execute
- @chat_team = params.delete(:create_chat_team)
-
# check that user is allowed to set specified visibility_level
new_visibility = params[:visibility_level]
if new_visibility && new_visibility.to_i != group.visibility_level
@@ -16,12 +14,6 @@ module Groups
group.assign_attributes(params)
- if create_chat_team?
- Mattermost::CreateTeamService.new(group, current_user).execute
-
- return group if group.errors.any?
- end
-
begin
group.save
rescue Gitlab::UpdatePathError => e
@@ -30,11 +22,5 @@ module Groups
false
end
end
-
- private
-
- def create_chat_team?
- super && group.chat_team.nil?
- end
end
end