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:
authorGitLab Bot <gitlab-bot@gitlab.com>2021-01-29 00:09:04 +0300
committerGitLab Bot <gitlab-bot@gitlab.com>2021-01-29 00:09:04 +0300
commitc6c346e8c7f0865f0016a458511e9fabfc8b9c1a (patch)
tree5b3a734e945e18c88817935c359c191140a11010 /app/controllers/concerns/membership_actions.rb
parente1b9b92a49eea88ea7c3b101aec0315e64e94678 (diff)
Add latest changes from gitlab-org/gitlab@master
Diffstat (limited to 'app/controllers/concerns/membership_actions.rb')
-rw-r--r--app/controllers/concerns/membership_actions.rb24
1 files changed, 16 insertions, 8 deletions
diff --git a/app/controllers/concerns/membership_actions.rb b/app/controllers/concerns/membership_actions.rb
index 816a93f14c6..9e3625d1b36 100644
--- a/app/controllers/concerns/membership_actions.rb
+++ b/app/controllers/concerns/membership_actions.rb
@@ -18,18 +18,26 @@ module MembershipActions
def update
update_params = params.require(root_params_key).permit(:access_level, :expires_at)
member = membershipable.members_and_requesters.find(params[:id])
- member = Members::UpdateService
+ result = Members::UpdateService
.new(current_user, update_params)
.execute(member)
- if member.expires?
- render json: {
- expires_in: helpers.distance_of_time_in_words_to_now(member.expires_at),
- expires_soon: member.expires_soon?,
- expires_at_formatted: member.expires_at.to_time.in_time_zone.to_s(:medium)
- }
+ member = result[:member]
+
+ member_data = if member.expires?
+ {
+ expires_in: helpers.distance_of_time_in_words_to_now(member.expires_at),
+ expires_soon: member.expires_soon?,
+ expires_at_formatted: member.expires_at.to_time.in_time_zone.to_s(:medium)
+ }
+ else
+ {}
+ end
+
+ if result[:status] == :success
+ render json: member_data
else
- render json: {}
+ render json: { message: result[:message] }, status: :unprocessable_entity
end
end