diff options
author | Z.J. van de Weg <git@zjvandeweg.nl> | 2017-03-01 20:34:29 +0100 |
---|---|---|
committer | Z.J. van de Weg <git@zjvandeweg.nl> | 2017-03-02 10:21:29 +0100 |
commit | 52c4a7866ed010d8db67e5ca976d8c73d4084784 (patch) | |
tree | a1cbb2d3910f9433e23dec22cc0f8c94c2e8675c /app/services/groups | |
parent | f6247600a3f5d500952b0ba32e6915a2d045e392 (diff) | |
download | gitlab-ce-52c4a7866ed010d8db67e5ca976d8c73d4084784.tar.gz |
Improve UX
Diffstat (limited to 'app/services/groups')
-rw-r--r-- | app/services/groups/base_service.rb | 6 | ||||
-rw-r--r-- | app/services/groups/create_service.rb | 12 | ||||
-rw-r--r-- | app/services/groups/update_service.rb | 14 |
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 |